Hallo zusammen,
ich sitze gerade während meiner Klausuren-Pause an dem (hoffentlich) bis auf weiteres letztem Stück Software, das das AddOn für die nächste Stufe (Renaissance) vorbereiten und mir helfen soll, die Alpha etwas besser zu entbuggen als es bisher der Fall war.
Dazu ist allerdings eine folgenschwere Entscheidung zu treffen: Wie ist mit der Kompatibilität von TC-/AddOn-Maps umzugehen?
Vorweg: Wie vermutlich bekannt ist, hat jede Einheit und jede Technologie im Spiel eine bestimmte, feste ID. Solange die gleich bleiben, funktionieren Maps auch in gemoddeten Spielversionen. Wenn einige dieser IDs aber verschoben oder überschrieben werden, ist es meist auch mit der Kompatibilität von Maps dahin.
Warum betrifft das das AddOn? Nun, es wird eine große Menge von Objekten im Spiel geändert, um das neue Zeitalter und die neuen Einheiten zu realisieren. Der Technologiebaum wird weitgehend umgestaltet. Bisher wurde darauf geachtet, dass ältere Maps immer noch mit dem AddOn funktionieren; nachdem ich nun aber bei den Programmierarbeiten auf die Hürde gestoßen bin, dass sich das effiziente und fehlerfreie Hinzufügen und Einbetten neuer Einheiten als schwierig erweist, da die DAT-Datei so arg verworren ist, möchte ich eine Diskussion über die weitere Handhabung dieses Themas einleiten.
Es geht um folgende Idee: Mein Programm ändert nicht wie ursprünglich geplant nur bestimmte Orte in der DAT und lässt alles weitestgehend so, wie es seit ES-Zeiten war, sondern sortiert sämtliche Einheiten, Gebäude und Technologien so um, dass der Programmieraufwand und damit auch die Buganfälligkeit minimal werden. Das würde aber offenbar automatisch die Kompatibilität zu mit früheren Versionen erstellten Szenarien killen, heißt: Eine TC-Map läuft nicht auf der Beta, und eine Beta-Map läuft nicht auf der Gamma. Wir machen uns darüber Gedanken, da hoffentlich so manch einer mit dem Beta-Release die neuen Einheiten und Eye-Candys wird ausprobieren wollen , und es schade wäre, wenn dann niemand mit der Final-Version (Gamma) diese Maps wird spielen können. Ich überlegte auch schon bereits, das Beta-Zwischenrelease zu überspringen und direkt die Gamma fertigzubauen, aber das wird vermutlich an mangelnder Zeit seitens Barbarossa und mir sowie noch nicht hinreichend fertiggestellter Gamma-Grafiken scheitern.
Nun also die beiden Möglichkeiten, die wir haben:
1. Abwärtskompatibel: TC-Maps sollen in allen AddOn-Stufen funktionieren; Beta-Maps (Renaissance) sollen in der Gamma Version (finales Release, Renaissance+Schiffsänderungen) funktionieren
2. Release-konsistent reicht: Solange etwaige spätere Bugfix-Patches die Kompatibilität von Maps nicht stören, ist alles okay
Argumente für Möglichkeit 1:
Je nachdem, welche Variante die meiste Zustimmung findet (besonders unter den alteingesessenen Mappern hier ), werde ich diese umsetzen oder nicht. Was den höheren Aufwand betrifft, da macht euch keine großen Sorgen - wenns dem allgemeinen Wunsch entsprecht, ist das für mich kein Problem.
Wenns Fragen gibt oder euch noch Argumente einfallen, oder ihr nur eure Meinung sagen wollt - ich freue mich über jeden Post!
ich sitze gerade während meiner Klausuren-Pause an dem (hoffentlich) bis auf weiteres letztem Stück Software, das das AddOn für die nächste Stufe (Renaissance) vorbereiten und mir helfen soll, die Alpha etwas besser zu entbuggen als es bisher der Fall war.
Dazu ist allerdings eine folgenschwere Entscheidung zu treffen: Wie ist mit der Kompatibilität von TC-/AddOn-Maps umzugehen?
Vorweg: Wie vermutlich bekannt ist, hat jede Einheit und jede Technologie im Spiel eine bestimmte, feste ID. Solange die gleich bleiben, funktionieren Maps auch in gemoddeten Spielversionen. Wenn einige dieser IDs aber verschoben oder überschrieben werden, ist es meist auch mit der Kompatibilität von Maps dahin.
Warum betrifft das das AddOn? Nun, es wird eine große Menge von Objekten im Spiel geändert, um das neue Zeitalter und die neuen Einheiten zu realisieren. Der Technologiebaum wird weitgehend umgestaltet. Bisher wurde darauf geachtet, dass ältere Maps immer noch mit dem AddOn funktionieren; nachdem ich nun aber bei den Programmierarbeiten auf die Hürde gestoßen bin, dass sich das effiziente und fehlerfreie Hinzufügen und Einbetten neuer Einheiten als schwierig erweist, da die DAT-Datei so arg verworren ist, möchte ich eine Diskussion über die weitere Handhabung dieses Themas einleiten.
Es geht um folgende Idee: Mein Programm ändert nicht wie ursprünglich geplant nur bestimmte Orte in der DAT und lässt alles weitestgehend so, wie es seit ES-Zeiten war, sondern sortiert sämtliche Einheiten, Gebäude und Technologien so um, dass der Programmieraufwand und damit auch die Buganfälligkeit minimal werden. Das würde aber offenbar automatisch die Kompatibilität zu mit früheren Versionen erstellten Szenarien killen, heißt: Eine TC-Map läuft nicht auf der Beta, und eine Beta-Map läuft nicht auf der Gamma. Wir machen uns darüber Gedanken, da hoffentlich so manch einer mit dem Beta-Release die neuen Einheiten und Eye-Candys wird ausprobieren wollen , und es schade wäre, wenn dann niemand mit der Final-Version (Gamma) diese Maps wird spielen können. Ich überlegte auch schon bereits, das Beta-Zwischenrelease zu überspringen und direkt die Gamma fertigzubauen, aber das wird vermutlich an mangelnder Zeit seitens Barbarossa und mir sowie noch nicht hinreichend fertiggestellter Gamma-Grafiken scheitern.
Nun also die beiden Möglichkeiten, die wir haben:
1. Abwärtskompatibel: TC-Maps sollen in allen AddOn-Stufen funktionieren; Beta-Maps (Renaissance) sollen in der Gamma Version (finales Release, Renaissance+Schiffsänderungen) funktionieren
2. Release-konsistent reicht: Solange etwaige spätere Bugfix-Patches die Kompatibilität von Maps nicht stören, ist alles okay
Argumente für Möglichkeit 1:
- In einer AddOn-Version läuft alles.
- Ältere TC-Maps können direkt im AddOn geöffnet und überarbeitet werden - also ein guter Ansatz für Remakes.
- Einige im Spiel hardgecodete (= fest in die EXE einprogrammierte) IDs könnten nicht mehr richtig funktionieren (abschwächbar: Die hardgecodeten IDs halten sich in Grenzen, die meisten sind längst bekannt; die schwer verschiebbaren könnte man notfalls auch beibehalten).
- Es lässt sich mit vorhandenen Bibliotheken gern ein kleines Konvertierungsprogramm nachreichen, das alte Maps automatisch auf das neue AddOn upgradet.
- Ob die Beta-Änderungen (und aufwärts) mit älteren Maps überhaupt kompatibel sein können, ist noch nicht sicher; es werden viele Standard-Dinge geändert (allein schon die Civ-Boni...), sodass trotz weitgehender ID-Gleichheit keine sichere Funktionalität garantiert werden kann.
- Die neuen Einheiten können bei Möglichkeit 1 von keiner KI entwickelt werden (abschwächbar: Das Verschieben/Löschen einiger sowieso nie verwendeten Nonsens-Einheiten könnte genug Platz schaffen).
- Es gibt ohnehin für jede AddOn-Stufe einen eigenen Scenario-Ordner, sodass die Stufen unabhängig voneinander gespielt werden können.
- Hoher Programmieraufwand bei Möglichkeit 1.
- Geringer Programmieraufwand, da einfache und effiziente Algorithmen eingesetzt werden können, sobald die große Datenmenge einmal konvertiert ist.
- Struktur-bedingte Bugs können nahezu ausgeschlossen werden (Sachen wie "Kloster entwickelt auf einmal Milizsoldaten" oder ähnliches )
Je nachdem, welche Variante die meiste Zustimmung findet (besonders unter den alteingesessenen Mappern hier ), werde ich diese umsetzen oder nicht. Was den höheren Aufwand betrifft, da macht euch keine großen Sorgen - wenns dem allgemeinen Wunsch entsprecht, ist das für mich kein Problem.
Wenns Fragen gibt oder euch noch Argumente einfallen, oder ihr nur eure Meinung sagen wollt - ich freue mich über jeden Post!