rbfishcss

rbfishcss

0 het aantal abonnees

Activiteit

rbfishcss rbfishcss heb gereageerd op een opmerking over een mod
Mb944

A lot of great mods coming out

@MrHunter0815 thanks to claude*

rbfishcss rbfishcss reageerde een mod

User beware, this mod breaks purchase of all pallets from the store that aren't part of the mod. Log will generate "attempt to call missing method 'getAnimationExists' of table" and game locks up.

rbfishcss rbfishcss beoordeeld als een mod
rbfishcss rbfishcss heb gereageerd op een opmerking over een mod
Michalob

Great mod, just to let you know when i set the region to UK it always reverts back to Germany the default when I reload the game. Just to add its sometime random.

@Sinterra Something still feels off, I was able to reproduce it once, and then i saved and exited, reloaded and it was set correctly. Very strange

rbfishcss rbfishcss heb gereageerd op een opmerking over een mod
Michalob

Great mod, just to let you know when i set the region to UK it always reverts back to Germany the default when I reload the game. Just to add its sometime random.

@Sinterra @Sherman200 This bug still persists on the latest version (v1.4.0.6). 

1. Set region to not schleswig-holstein, save game. Exit game, re-load save, region setting is reverted back to schleswig-holstein. Super annoying.

Also the weather forecast still doesn't persist between saves.

rbfishcss rbfishcss heb gereageerd op een opmerking over een mod
Michalob

Great mod, just to let you know when i set the region to UK it always reverts back to Germany the default when I reload the game. Just to add its sometime random.

@Sinterra Ok I will have to test on the latest version, I will report back when i do so. Thanks.

rbfishcss rbfishcss heb gereageerd op een opmerking over een mod
Michalob

Great mod, just to let you know when i set the region to UK it always reverts back to Germany the default when I reload the game. Just to add its sometime random.

@Michalob that bug has been in the mod for as long as the mod has been around, never seems to get fixed annoyingly. Are you on the latest version?

rbfishcss rbfishcss reageerde een mod

Interesting, i'll keep my eye on this. Do you have a github for issues?

rbfishcss rbfishcss reageerde een mod

looks ridiculous

rbfishcss rbfishcss reageerde een mod

Betreff: 1.4.0.27 – Region/Land-Auswahl wird bei neuem Spielstand zurückgesetzt

Hallo Sherman,

kurzer Fehlerbericht zu 1.4.0.27.

Datei: rwsmSavegameSync.lua
Funktion: RWSM112StateManager.loadState()

Symptom
Bei einem neuen Spielstand wird die Land/Region-Auswahl (z.B. Polen/Mitte) kurz nach dem Setzen automatisch wieder auf den Standard (Deutschland/Nord) zurückgesetzt, noch bevor überhaupt gespeichert wird. Der nächste reguläre Spielstand schreibt dadurch den Standardwert statt der gewählten Einstellung. Bei einem bereits einmal gespeicherten Spielstand tritt das Problem nicht auf.

Ursache
loadState() ruft weather.loadSettings() nur auf, wenn rwsmState_v2.xml bereits existiert:

    if not fileExists(path) then
        RWSM112StateManager.loaded = true
        RWSM112StateManager.existingStateLoaded = false
        RWSM112StateManager.saveBlocked = false
        RWSM112StateManager.saveBlockReason = nil
        RWSM112StateManager.stateRevision = 0
        do end
        return
    end

Bei einem neuen Spielstand existiert die Datei noch nicht, der Zweig kehrt zurück ohne weather.loadSettings() aufzurufen. RWSM53WeatherSystem.loaded bleibt false.

In rainstarWeatherSystem.lua sorgt update(dt) eigentlich für genau diesen Fall (Speicherpfad bei loadMap noch nicht bereit) mit einem Retry:

    if not RWSM53WeatherSystem.loaded then
        RWSM53WeatherSystem.loadSettings()
    end

Das läuft alle ~500ms. Da loaded nie gesetzt wurde, feuert dieser Retry kurz nachdem die Region geändert wurde erneut. WS.loadSettings() in rwsmGlobalClimateExtension.lua setzt locationMode/regionIndex/stateIndex/configRevision dabei bedingungslos auf die Defaults zurück, bevor rainstarWeather.xml gelesen wird - die bei einem neuen Spielstand ebenfalls noch nicht existiert. Der Reset bleibt also stehen, und der nächste Spielstand schreibt ihn fest.

Vorschlag
weather.loadSettings() auch im "Datei existiert nicht"-Zweig aufrufen:

    if not fileExists(path) then
        RWSM112StateManager.loaded = true
        RWSM112StateManager.existingStateLoaded = false
        RWSM112StateManager.saveBlocked = false
        RWSM112StateManager.saveBlockReason = nil
        RWSM112StateManager.stateRevision = 0
        if RWSM53WeatherSystem ~= nil and RWSM53WeatherSystem.loadSettings ~= nil then
            RWSM53WeatherSystem.loadSettings()
        end
        return
    end

Damit wird loaded schon beim ersten Durchlauf korrekt gesetzt (auf Defaults, da ja nichts zu laden ist), und der Retry in update() greift nicht mehr ein, nachdem die Region geändert wurde.

Getestet auf 1.4.0.27, neuer Spielstand, Wechsel Deutschland -> Polen/Mitte.

Viele Grüße