PBeM-Spiele
Aktuelle Zeit: 28.03.2024 11:29

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Vorlage und Magellan Nightly Build
BeitragVerfasst: 24.02.2014 13:29 
Offline
Mitglied
Mitglied
Benutzeravatar

Registriert: 28.07.2003 10:05
Beiträge: 109
Wohnort: Wildeshausen
Hai!

Ich bin neulich mal auf den nightly build von Magellan umgestiegen (vorher hatte ich 2.0.5 verwendet). So weit so gut - einige schöne Neuerungen!

Mir ist jetzt aber aufgefallen, dass Magellan im Gesamt-CR (ich füge den aktuellen Report immer zu einem Gesamt-CR hinzu) Blocks der Form ALTEINHEIT anlegt. Diese enthalten die Daten zu einer Einheit aus der Vorgängerrunde.

Meine Befehle erzeuge ich mit Vorlage. Vorlage spuckt jetzt natürlich Fehlermeldungen bzgl. des unbekannten Blocks aus. Ich weiss, dass man das in der eressea-user.cfg unterdrücken kann ... könnte ... können müsste, denn mit den Blöcken der Form LETZTEPREISE mache ich das bereits seit Urzeiten.

Der entsprechende Eintrag in der eressea-user.cfg von Vorlage hat die Form
Code:
[CRHierarchy]
"LETZTEPREISE", 0, 0, 0, 0
"ALTEINHEIT", 0, 0, 0, 0


Nur, leider bekomme ich immer noch entsprechende Fehlermeldungen. Da es kein Vorlage-Forum (mehr) zu geben scheint, deshalb hier mal die Frage: Kann mir jemand verraten, was die Bedeutung der vier Nullen in obigem Konfigurationseintrag ist? Ich vermute mal, dass man damit steuern kann, auf was sich der entsprechende Block im CR bezieht, aber das ist nur eine Vermutung und ich habe keine Ahnung, was ich da wo eintragen könnte.

Gruß,
Thorsten


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 05.03.2014 01:14 
Offline
Forumjunkie
Forumjunkie
Benutzeravatar

Registriert: 04.01.2005 01:23
Beiträge: 290
Wohnort: Berlin
Moin,
ich habe zwar die doku gefunden (http://www.gulrak.de/vorlage/doku/), aber darin leider keinerlei Hinweis.

Und der letzte Stand von gulrak war, dass er den Code nicht veröffentlichen konnte. (Quelle: http://www.gulrak.de/eressea/tools.html)

Somit sieht dat ziemlich mies aus und ich habe keine weiteren Ideen dazu.
Sry + Gruß

_________________
Bild


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 05.03.2014 04:07 
Offline
PBEM-Gott
PBEM-Gott
Benutzeravatar

Registriert: 23.02.2002 19:29
Beiträge: 2152
Wohnort: Vestfold, Norwegen
Titel: Eressea Spielleiter
Fiete hat geschrieben:
Und der letzte Stand von gulrak war, dass er den Code nicht veröffentlichen konnte.


Das ist m.W. immer noch Stand der Dinge, weshalb es offenbar eine Menge anderer Tools gibt, die ähnliche Funktionalität haben, deren Autoren aber (leider) auch keinen Code publizieren. Ich fände es toll, wenn da mehr Mut zur Öffentlichkeit bestünde.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 05.03.2014 12:35 
Offline
Frischling
Frischling
Benutzeravatar

Registriert: 21.12.2004 00:59
Beiträge: 24
Wohnort: Hamburg, Germany
Also, das ist jetzt alles nicht direkt frisch in meinem Hirn, aber die für Eressea zuletzt gelieferte eressea.cfg enthält:

Code:
[CRHierarchy]
"VERSION", 0,0,0,0, "ISLAND"
"REGION", 0,0,0,0, "LETZTEPREISE"
"ISLAND", 1,0,0,1, "nummer"
"LETZTEPREISE", 0,0,0,0


Und ein flüchtiger Blick in den Code sagt mir, das auch ein LETZTEPREISE-Eintrag wie im Beispiel von Thoran1 ohne die passende REGION-Zeile nicht reichen sollte.
Um eine Hierarchie der Blöcke erstellen zu können, muss Vorlage den umgebenden Block, also den Parent kennen. Die Einträge bedeuten dabei:

Code:
"<PARENT>", <hasUniqueId>,<reserved>,<reserved>,<numberOfKeys>[, "<keyName1>" [, ...]][,"<CHILD>"]


Wobei es notwendig ist, unbekannte Blöcke einem bekannten Block zuzuordnen. 'hasUniqueId' gibt mit 1 an, ob die ID des Objektes global eindeutig ist (Einheiten haben so eine zum Beispiel), die beiden folgenden Felder sind ungenutzt und sollten 0 sein, 'numberOfKeys' gibt an, wie viele Teile die ID des Blocks hat (in der Regel 0 oder 1, bis auf Regionen) und dahinter werden für alle Key-Bestandteile die Namen aufgelistet unter denen die Keys als Attribut am erzeugten Objekt erreichbar sein sollen. Für fest verdratete Objekte (EINHEIT, REGION, etc.) braucht man keine realen Parameter in die Nummernfelder eintragen, die kann man eh nicht übersteuern. Darum reicht in der Config auch das

Code:
"REGION", 0,0,0,0, "LETZTEPREISE"


ohne auf die Keys einzugehen. CHILD ist dann der Name des Subblocks.

Da ich nicht weiss was ALTEINHEIT genau für einen Aufbau hat (ist es ein kompletter EINHEIT-Block mit allen potentiellen Unterblöcken?), kann ich nicht sagen ob zum Beispiel

Code:
"REGION", 0, 0, 0, 0, "ALTEINHEIT"
"ALTEINHEIT", 1,0,0,1, "nummer"


ausreicht, ich vermute mal, der gehört zu einer Region, oder liegt der ganz oben in "VERSION"?

Wenn das mit den Infos nicht hinhaut und jemand bereit ist mir einen CR und im Idealfall notwendige Config/Skripte zum Vorlage-Lauf mit solchen Blöcken zu schicken, kann ich mal einen Blick drauf werfen, was man da machen kann.


Zuletzt geändert von Gulrak am 05.03.2014 13:04, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 05.03.2014 13:01 
Offline
Frischling
Frischling
Benutzeravatar

Registriert: 21.12.2004 00:59
Beiträge: 24
Wohnort: Hamburg, Germany
Enno hat geschrieben:
Fiete hat geschrieben:
Und der letzte Stand von gulrak war, dass er den Code nicht veröffentlichen konnte.


Das ist m.W. immer noch Stand der Dinge, weshalb es offenbar eine Menge anderer Tools gibt, die ähnliche Funktionalität haben, deren Autoren aber (leider) auch keinen Code publizieren. Ich fände es toll, wenn da mehr Mut zur Öffentlichkeit bestünde.


Ja, das gilt leider nach wie vor, und ist keine Frage der Zeit die das her ist, sondern müsste durch Neuimplementation der lizenzrechtlich "Closed-Source-kontaminierten" Anteile gelöst werden. Ich gebe aber zu, das die Motivation für ein grossflächiges Refactoring/Redesign an Vorlage zur Zeit nicht so groß ist, was vor allem an der zur Verfügung stehenden Zeit liegt, aber wohl auch daran, das ich nicht mehr spiele.

Und ja, ich würde das heute auch nicht ohne eine Open-Source-Lizenz entwickeln, aber das war damals in mehrfacher Hinsicht ein wilder Ritt, als Vorlage vor 15 Jahren entstanden ist. :wink:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 06.03.2014 12:41 
Offline
Mitglied
Mitglied
Benutzeravatar

Registriert: 28.07.2003 10:05
Beiträge: 109
Wohnort: Wildeshausen
Hai!
Schön, dass Du, obwohl nicht mehr spielend, hier noch mitliest. Das finde ich wirklich gut!
Gulrak hat geschrieben:
Also, das ist jetzt alles nicht direkt frisch in meinem Hirn, aber die für Eressea zuletzt gelieferte eressea.cfg enthält:
Code:
[CRHierarchy]
"VERSION", 0,0,0,0, "ISLAND"
"REGION", 0,0,0,0, "LETZTEPREISE"
"ISLAND", 1,0,0,1, "nummer"
"LETZTEPREISE", 0,0,0,0

Und ein flüchtiger Blick in den Code sagt mir, das auch ein LETZTEPREISE-Eintrag wie im Beispiel von Thoran1 ohne die passende REGION-Zeile nicht reichen sollte.

Womit Du durchaus recht hast, denn ich hatte übersehen, dass es ja einen CRHierarchy auch noch in der eressea.cfg gibt und nicht nur in der eressea-user.cfg :oops:
Gulrak hat geschrieben:
Um eine Hierarchie der Blöcke erstellen zu können, muss Vorlage den umgebenden Block, also den Parent kennen. Die Einträge bedeuten dabei:
Code:
"<PARENT>", <hasUniqueId>,<reserved>,<reserved>,<numberOfKeys>[, "<keyName1>" [, ...]][,"<CHILD>"]

Das war genau der Hinweis, den ich gesucht hatte. Vielen Dank dafür!
Eine Anmerkung allerdings noch dazu: Nach einigem Herumprobieren habe ich noch herausgefunden, dass man maximal einen Eintrag pro PARENT haben sollte. Die zu ignorierenden CHILD-Blöcke könne alle am Ende (durch Kommata getrennt) aufgeführt werden und nicht nur einer, wie es obige Syntaxbeschreibung andeutet.
Gulrak hat geschrieben:
Da ich nicht weiss was ALTEINHEIT genau für einen Aufbau hat (ist es ein kompletter EINHEIT-Block mit allen potentiellen Unterblöcken?), kann ich nicht sagen ob zum Beispiel
Code:
"REGION", 0, 0, 0, 0, "ALTEINHEIT"
"ALTEINHEIT", 1,0,0,1, "nummer"

ausreicht, ich vermute mal, der gehört zu einer Region, oder liegt der ganz oben in "VERSION"?

Der liegt auf der selben Ebene wie ein EINHEIT-Block und hat die entsprechende Struktur. Er wurde von Magellan eingeführt, um Veränderungen gegenüber der Vorwoche nachverfolgen zu können - insbesondere dann, wenn Reports verschiedener Parteien zusammengefügt werden. Er wird aber eben auch bei Einparteienreports, die man über die Zeit zu einem Gesamtreport hinzufügt, angelegt.
Gulrak hat geschrieben:
Wenn das mit den Infos nicht hinhaut und jemand bereit ist mir einen CR und im Idealfall notwendige Config/Skripte zum Vorlage-Lauf mit solchen Blöcken zu schicken, kann ich mal einen Blick drauf werfen, was man da machen kann.

Nicht nötig. Ich habe jetzt folgenden Eintrag in meiner eressea-user.cfg, der bisher alles ohne weitere Fehler schluckt. Da ich jetzt ja dank Deiner Hilfe auch weiss, wie der Eintrag aufgebaut ist, kann ich mir den auch erweitern, sollte da noch was fehlen.
Code:
[CRHierarchy]
; "<PARENT>", <hasUniqueId>, <reserved>, <reserved>, <numberOfKeys>[, "<keyName1>" [, ...]]{, "<CHILD>"}
"VERSION"     , 0, 0, 0, 0, "ISLAND"
"ISLAND"      , 1, 0, 0, 1, "islandnumber"
"REGION"      , 0, 0, 0, 0, "ALTEINHEIT", "LETZTEPREISE"
"ALTEINHEIT"  , 1, 0, 0, 1, "unitnumber", "COMMANDS", "EFFECTS", "GEGENSTAENDE", "TALENTE"
"COMMANDS"    , 0, 0, 0, 0
"EFFECTS"     , 0, 0, 0, 0
"GEGENSTAENDE", 0, 0, 0, 0
"LETZTEPREISE", 0, 0, 0, 0

Gruß,
Thorsten


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: 06.03.2014 16:56 
Offline
Frischling
Frischling
Benutzeravatar

Registriert: 21.12.2004 00:59
Beiträge: 24
Wohnort: Hamburg, Germany
Thoran1 hat geschrieben:
Hai!
Schön, dass Du, obwohl nicht mehr spielend, hier noch mitliest. Das finde ich wirklich gut!


Ich muss gestehen, das ich nicht wirklich aktiv mitlese, aber Fiete war so nett mich direkt zu kontaktieren und auf den Thread aufmerksam zu machen. Danke dafür!

Ansonsten freu ich mich einfach, das Vorlage auch heute noch nützlich ist, also helfe ich gerne wenn ich kann.

Thoran1 hat geschrieben:
Gulrak hat geschrieben:
Um eine Hierarchie der Blöcke erstellen zu können, muss Vorlage den umgebenden Block, also den Parent kennen. Die Einträge bedeuten dabei:
Code:
"<PARENT>", <hasUniqueId>,<reserved>,<reserved>,<numberOfKeys>[, "<keyName1>" [, ...]][,"<CHILD>"]

Das war genau der Hinweis, den ich gesucht hatte. Vielen Dank dafür!
Eine Anmerkung allerdings noch dazu: Nach einigem Herumprobieren habe ich noch herausgefunden, dass man maximal einen Eintrag pro PARENT haben sollte. Die zu ignorierenden CHILD-Blöcke könne alle am Ende (durch Kommata getrennt) aufgeführt werden und nicht nur einer, wie es obige Syntaxbeschreibung andeutet.


Da hast Du völlig recht, in der Tat kann man sowohl mehrere Key-Namen als auch mehrere Subblöcke auflisten (und muss das pro Parent auch, statt einen Parent mehrfach aufzulisten). Ich schau mal, ob ich ohne grosse Mühe einen Weg finde, das in die Online-Doku einzupflegen, damit der nächste der das Problem hat dort Hilfe findet.

Thoran1 hat geschrieben:
Ich habe jetzt folgenden Eintrag in meiner eressea-user.cfg, der bisher alles ohne weitere Fehler schluckt. Da ich jetzt ja dank Deiner Hilfe auch weiss, wie der Eintrag aufgebaut ist, kann ich mir den auch erweitern, sollte da noch was fehlen.
Code:
[CRHierarchy]
; "<PARENT>", <hasUniqueId>, <reserved>, <reserved>, <numberOfKeys>[, "<keyName1>" [, ...]]{, "<CHILD>"}
"VERSION"     , 0, 0, 0, 0, "ISLAND"
"ISLAND"      , 1, 0, 0, 1, "islandnumber"
"REGION"      , 0, 0, 0, 0, "ALTEINHEIT", "LETZTEPREISE"
"ALTEINHEIT"  , 1, 0, 0, 1, "unitnumber", "COMMANDS", "EFFECTS", "GEGENSTAENDE", "TALENTE"
"COMMANDS"    , 0, 0, 0, 0
"EFFECTS"     , 0, 0, 0, 0
"GEGENSTAENDE", 0, 0, 0, 0
"LETZTEPREISE", 0, 0, 0, 0



Super, freut mich, das das Problem sich auf dem Wege ohne neue Vorlage-Version lösen lies. Ich hätte im Moment durchaus Probleme, ein neues Release zu bauen (aber keine Angst, das Source-Repository existiert nach wie vor, nichts ist verloren, meine Entwicklungsumgebungen sind nur nicht mehr so 100%ig kompatibel dazu... :wink:


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 61 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
Webhosting by sunrise design ohg