Eintragsdetails ansehen
| ID | Projekt | Kategorie | Sichtbarkeit | Meldungsdatum | Zuletzt aktualisiert |
|---|---|---|---|---|---|
| 0001204 | Eressea | General | öffentlich | 2007-06-26 20:55 | 2008-03-17 18:36 |
| Reporter | trickert | Bearbeitung durch | Enno | ||
| Priorität | normal | Schweregrad | Feature-Wunsch | Reproduzierbar | N/A |
| Status | geschlossen | Lösung | wird nicht behoben | ||
| Zusammenfassung | 0001204: Eindeutige Regions ID | ||||
| Beschreibung | Ich hätte gerne im CR Report eine eindeutige ID bei jeder Region, so wie es das für Einheiten und Parteien auch gibt. Diese ID identifiziert eine Region eindeutig in der gesamten Eressea-Welt und kann niemals geändert werden. Es repräsentiert aber keinerlei Koordinaten. Diese ID würde beim Mergen von Reports hilfreich sein (sowohl bei Magellan als auch anderen automatisierten Reportauswertungen). Prinzipiell funktioniert die Identifikation einer Region auf Basis der umgebenden Regionen und Bezeichnungen. Aber die Wahrscheinlichkeit eines fehlerhaften Merge steigt mit der Differenz zwischen dem Alter der Reports und der Zahl der umbenannten Regionen. Wir benötigen diese ID dann, wenn wir eine Statistik erstellen wollen, die weiter in die Vergangenheit reicht als der letzte Report (zum Beispiel die Entwicklung der Baum oder Bauernbestände in den letzten 10 Wochen). | ||||
| Tags | Keine Tags zugeordnet. | ||||
| Partei | |||||
| Spiel | |||||
| Report | |||||
|
Das unterstütze ich sehr. Allerdings gäbe es das sicher schon, wenn nicht irgendetwas wichtiges dagegen gesprochen hätte..(?) Fiete |
|
|
Der Server hat so eine ID nicht - alle Regionen sind an globalen Koordinaten identifiziert. Deshalb ist es nicht leicht, eine zu erzeugen die von einer Session zur nächsten gleich bleibt. Ich denke aber mal drüber nach. |
|
|
Die Koordinaten über irgendeinen Algorithmus in die ID umrechnen sollte man aber vermeiden, das lädt zum rumprobieren ein, und irgendwann hat man den Schlüssel raus und kann jede beliebige Region ohne Probleme zuordnen. Also nur wenn jede Region die ID speichert, macht es Sinn. Ich finde aber gerade die Mergealgorithmen sehr interessant. Gerade der Astralraum hat es mir da angetan. Wenn da jetzt überall eine ID dran wäre, wo wäre dann noch der Spass am rausfinden des Layouts? |
|
|
Das Problem ist, dass eine fortlaufend vergebene ID auch irgendwie Koordinaten repraesentiert. Die einzig wahre Loesung ist da, eine neue ID zufaellig zu erzeugen, mit zu speichern, usw. Und es muss schon ein integer sein. Ausserdem muessen sie eindeutig sein, ich brauche also zusaetzlich noch eine lookup-struktur dafuer. |
|
|
Da der Server nur Regionskoordinaten kennt und der Server nicht um eine weitere Information erweitern soll, bleibt meiner Meinung nach nur die Berechnung einer eindeutigen ID aus den Koordinaten. Hier bietet sich vielleicht die Checksummenberechnung an. Normalerweise kann man einen hinreichend getesteten Algorithmus nicht zurückrechnen (siehe Base64 oder höher) Einziges Problem ist die Sicherung der Eindeutigkeit. Die Checksumme muss einen sehr großen Wertebereich besitzen, um eine Eindeutigkeit zu erreichen (obwohl sie theoretisch nicht existiert). Da dem einzelnen Spieler oder einer Gruppe nicht die realen Koordinaten bekannt sind, kann er den Algorithmus nicht umkehren. Ich gestehe aber - ich bin kein absoluter Sicherheitsexperte. |
|
|
Argh, ich meinte MD5 oder höher). Ich sollte so spät nicht mehr arbeiten ;-( |
|
|
Mal eine Alternative zur eindeutigen Identifizierung der Regionen, denn soweit ich das verstehe geht es ja ums Mergen von eigenen Reporten: a) Eine eindeutige ID für den gewählen Ursprung - die darf dann meintwegen auch MD5 lang sein. Bei Regionen wäre das für das gewünschte Ergebniss zuviel Daten für zu wenig Resultat. b) Für jedes 100% verbündete Volk bekommt man das Delta zu dessen Ursprung und dessen MD5-ID. Der erleichtert Kartenmergen unter Verbündeten auf jeden Fall. c) Wie bei Temp Einheiten ein Tag in Block Report, welches das Delta zum alten Ursprung angibt. Bei all diesen Betrachtungen würde ich den Astralraum oder andere (Quest)Ebenen ausnehmen. Mit den obengenannten Ids spart man sich nicht das Koordinaten umrechnen, aber man spart sich in den meisten Fällen das Ermitteln der Verschiebung. |
|
|
Ich glaube nicht, dass es eine vertretbare Loesung fuer das Problem gibt. Diskussion dazu gerne auf einer Mailingliste, aber den Bug schliesse ich erstmal, solange da kein echter Task draus wird. |
|
| Änderungsdatum | Benutzername | Feld | Änderung |
|---|---|---|---|
| 2007-06-26 20:55 | trickert | Neuer Eintrag | |
| 2007-06-28 15:57 | Fiete | Notiz hinzugefügt: 0002765 | |
| 2007-06-28 23:46 | Enno | Notiz hinzugefügt: 0002767 | |
| 2007-07-06 01:35 | darcduck | Notiz hinzugefügt: 0002795 | |
| 2007-07-07 18:50 | Enno | Notiz hinzugefügt: 0002802 | |
| 2007-07-07 20:32 | trickert | Notiz hinzugefügt: 0002803 | |
| 2007-07-08 10:10 | trickert | Notiz hinzugefügt: 0002804 | |
| 2007-07-08 14:18 | darcduck | Notiz hinzugefügt: 0002805 | |
| 2008-02-05 08:38 | Enno | Status | neu => erledigt |
| 2008-02-05 08:38 | Enno | Lösung | offen => wird nicht behoben |
| 2008-02-05 08:38 | Enno | Bearbeitung durch | => Enno |
| 2008-02-05 08:38 | Enno | Notiz hinzugefügt: 0003248 | |
| 2008-03-17 18:36 | Xolgrim | Status | erledigt => geschlossen |