Absprache mit @arn-c0de vor der Umsetzung — Simulation/Definitions/ ist geteiltes Terrain.
Was wir vorhaben
SimBuildingDefinition.PrerequisiteRole ist heute ein einzelnes Feld. Das Design nennt für sechs von neun Rollen Mehrfachvoraussetzungen. Wir wollen daraus eine Bitmaske über UnitRole machen.
Warum das dich betrifft
PrerequisiteRole geht in DefinitionsHash64 ein:
hash.WriteUInt8((byte)def.PrerequisiteRole)
Eine Formatänderung bewegt damit den Definitions-Hash — und den vergleicht der Relay serverseitig (RelayServerCore). Nach dieser Änderung passen alte und neue Builds nicht mehr zusammen, bis beide Seiten neu gebaut sind.
Praktisch heißt das: Wir legen das Paket vor den VPS-Rollout, solange der Relay nur lokal läuft. Und wir sagen dir das Merge-Fenster vorher an, damit du deinen Build zum selben Zeitpunkt neu ziehst.
Was wir von dir brauchen
Nur eine Rückmeldung, ob du an WeaponDefinition oder UnitDefinition in derselben Datei gerade etwas Offenes hast. Wenn ja, mergen wir nacheinander statt gleichzeitig.
Absprache mit @arn-c0de vor der Umsetzung —
Simulation/Definitions/ist geteiltes Terrain.Was wir vorhaben
SimBuildingDefinition.PrerequisiteRoleist heute ein einzelnes Feld. Das Design nennt für sechs von neun Rollen Mehrfachvoraussetzungen. Wir wollen daraus eine Bitmaske überUnitRolemachen.Warum das dich betrifft
PrerequisiteRolegeht inDefinitionsHash64ein:Eine Formatänderung bewegt damit den Definitions-Hash — und den vergleicht der Relay serverseitig (
RelayServerCore). Nach dieser Änderung passen alte und neue Builds nicht mehr zusammen, bis beide Seiten neu gebaut sind.Praktisch heißt das: Wir legen das Paket vor den VPS-Rollout, solange der Relay nur lokal läuft. Und wir sagen dir das Merge-Fenster vorher an, damit du deinen Build zum selben Zeitpunkt neu ziehst.
Was wir von dir brauchen
Nur eine Rückmeldung, ob du an
WeaponDefinitionoderUnitDefinitionin derselben Datei gerade etwas Offenes hast. Wenn ja, mergen wir nacheinander statt gleichzeitig.