Eintragsdetails ansehen

IDProjektKategorieSichtbarkeitZuletzt aktualisiert
0001204EresseaGeneralöffentlich2008-03-17 18:36
Reportertrickert Bearbeitung durchEnno  
PrioritätnormalSchweregradFeature-WunschReproduzierbarN/A
Status geschlossenLösungwird nicht behoben 
Zusammenfassung0001204: 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).

TagsKeine Tags zugeordnet.
Partei
Spiel
Report

Notizen / Dateien

Fiete

Fiete

2007-06-28 15:57

Reporter   ~0002765

Das unterstütze ich sehr. Allerdings gäbe es das sicher schon, wenn nicht irgendetwas wichtiges dagegen gesprochen hätte..(?) Fiete

Enno

Enno

2007-06-28 23:46

Administrator   ~0002767

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.

darcduck

darcduck

2007-07-06 01:35

Reporter   ~0002795

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?

Enno

Enno

2007-07-07 18:50

Administrator   ~0002802

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.

trickert

trickert

2007-07-07 20:32

Reporter   ~0002803

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.

trickert

trickert

2007-07-08 10:10

Reporter   ~0002804

Argh, ich meinte MD5 oder höher). Ich sollte so spät nicht mehr arbeiten ;-(

darcduck

darcduck

2007-07-08 14:18

Reporter   ~0002805

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.

Enno

Enno

2008-02-05 08:38

Administrator   ~0003248

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.

Eintrags-Historie

Ä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