Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Der Befehl "update" unterscheidet sich vom Befehl "publish" zum Veröffentlichen einer Erweiterung in einigen Punkten:

  • Der Schalter [i]-changenote[/i] (Änderungshinweis) wird für alle Updates benötigt. Schreibe -changenote "" wenn du keine Beschreibung bereitstellen möchtest. Du kannst auch die Änderungshinweise auf der Workshop-Seite nach dem Aktualisieren editieren.
  • Das Workshop-Tool erwartet, dass du die Versionsnummer erhöht hast. Wenn du die Versionsnummer in deiner content.xml absichtlich unverändert lassen möchtest, nutze den Schalter [i]-minor[/i].
  • Für gewöhnlich lässt ein Update den Titel und die Beschreibung im Workshop unverändert. Um die Attribute name (Name) und description (Beschreibung) von der content.xml dennoch zum Steam Workshop hochzuladen, nutze den Schalter "-namedesc up" (ohne Anführungsstriche).
  • Die Änderung der Vorschaudatei ist optional. Wenn du die Vorschaudatei ändern möchtest, ohne neue Inhalte hochzuladen, nutze den Befehl updatepreview statt update.
  • Es ist möglich, den Ordnernamen der Erweiterung zu ändern. Wichtig: Stelle sicher, dass du dies nicht versehentlich tust, z.B. indem du von einem anderen Ordner aus hochlädst! Das Workshop-Tool zeigt vor dem Hochladen den alten und neuen Ordnernamen an. Bitte überprüfe diese Ausgabe sorgfältig.
  • Nach dem Hochladen werden einige XML-Attribute zurück in die content.xml geschrieben, wie beim Veröffentlichen, aber das sync-Attribut wird dabei nicht hinzugefügt oder geändert. Hast du also nach der Veröffentlichung Updates aktiviert, werden diese jetzt nicht deaktiviert.

Wenn X Rebirth eine Erweiterung installiert, überprüft es die heruntergeladene content.xml nach einer vorausgesetzten Spielversion. Wenn die Erweiterung eine höhere als die zurzeit installierte Spielversion benötigt, wird der Download (mit einer Warnung) verworfen und stattdessen weiterhin die bereits installierten Dateien genutzt. Änderst du als Workshop-Autor also die benötigte Spielversion, wird dies nicht das Spiel von anderen kaputt machen. Solche Sicherheitsüberprüfungen gibt es jedoch nicht, wenn du die "dependencies" von anderen Workshop-Erweiterungen und ihrer Versionen änderst – das Update wird dann trotzdem heruntergeladen und installiert.

Mehrere Spielversionen unterstützen

Unter Umständen möchtest du vielleicht verschiedene Dateien für verschiedene Spielversionen in der gleichen Workshop-Erweiterung bereitstellen. Das ist nützlich, wenn Egosoft eine neue Beta-Version des Spiels bereitstellt und du deine Mod für diese Beta anpassen möchtest, ohne dass alle Spieler der öffentlichen Version deiner Mod von diesem Update beeinflusst werden. Zum Beispiel könnte eine neue Beta-Version neue Funktionen einführen, die du in deiner Mod nutzen möchtest oder deine Mod könnte inkompatibel werden und muss angepasst werden. Du kannst die Betaphase nutzen, um die notwendigen Änderungen vorzunehmen und kannst damit beide Versionen, öffentliche und Beta, gleichzeitig unterstützen.

Und so funktioniert es: Wie in der Dokumentation zum Katalog-Tool beschrieben, wird das Spiel in deinem Erweiterungsordner nach einem Versionskatalog suchen, der deiner aktuellen Spielversion entspricht, z.B. würde die Spiel-Version 1.50 nach ext_v150.cat suchen. Existiert dieser Katalog, wird er genutzt, um die anderen Kataloge deiner Erweiterung zu überschreiben (im Normallfall nur ext_01.cat).

Wenn du das Katalog-Tool nicht manuell nutzt, kann das Workshop-Tool die ganze Arbeit für dich übernehmen. Angenommen du hast eine Erweiterung, die mit der aktuellen Version von X Rebirth (sagen wir mal 1.50) funktioniert und es gibt eine Beta für X Rebirth (sagen wir mal Version 2.00). Du möchtest nun Änderungen an deiner Erweiterung vornehmen, um sie für v2.00 vorzubereiten. Dann gehst du wie folgt vor:

  • Du erstellst einen Unterordner mit dem Namen "v150" für Spielversion 1.50.
  • Du kopiert *alles* aus deinem bestehenden Erweiterungsordner in diesen Ordner (mit Ausnahme der content.xml und früheren Versions-Ordnern, wie "v140"). Dies ist der Inhalt, den Spieler in Spielversion 1.50 sehen werden.
  • In deinem normalen Erweiterungs-Ordner nimmst du die Änderungen für Version 2.00 vor.
  • Setze die benötigte Spielversion von X Rebirth in der content.xml auf 1.50, nicht 2.00, da diese Datei ebenfalls in Version 1.50 genutzt wird. (Wenn du Spielversionen älter als 1.50 erlaubst, dann solltest du auch Versions-Ordner für diese bereitstellen.)
  • Wenn du bereit bist, das Update hochzuladen, nutze das Workshop-Tool mit -buildvcat statt -buildcat. Es ist prinzipiell der gleiche Schalter, aber -buildvcat sucht auch nach solchen Versions-Ordnern. Es wird v150 finden und einen diff-Katalog ext_v150.cat/dat erstellen. Dieser wird nur Dateien enthalten, die vom 2.00-Inhalt abweichen.
  • Beide Kataloge ext_01 (mit dem 2.00-Inhalt) und ext_v150 werden hochgeladen und den Spielern bereitgestellt. Spieler der Version 1.50 werden den 1.50-Inhalt sehen und Spieler der Beta-Version 2.00 den neuen Inhalt (da ext_v150 nicht geladen wird).
  • Sobald Version 2.00 für alle Spieler veröffentlicht wurde, kannst du den v150-Ordner entfernen und die benötigte Spielversion in der content.xml auf "200" setzen, es sei denn, du möchtest die Unterstützung für Spieler beibehalten, die die Spielupdates deaktiviert haben, die Workshop-Updates aber aktiviert haben.

 

Wenn du vorhast, alle deine Kataloge und die Versions-Kataloge manuell zu erstellen, sei dir bewusst, dass du sie mit jedem Update neu erstellen musst – die Versions-Kataloge müssen stets ein "diff" zur jeweils aktuellen Version sein.