From 3e4861b54bbd8ff0b76c9d60110a3ee50487a29b Mon Sep 17 00:00:00 2001 From: Kelly Kinkade Date: Fri, 6 Jan 2023 21:24:01 -0600 Subject: [PATCH 1/2] fix persistence for changed file structure `data/save` -> `save` --- library/modules/Persistence.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/modules/Persistence.cpp b/library/modules/Persistence.cpp index 05afa77ed..975ba0bea 100644 --- a/library/modules/Persistence.cpp +++ b/library/modules/Persistence.cpp @@ -387,7 +387,7 @@ static std::string filterSaveFileName(std::string s) static std::string getSaveFilePath(const std::string &world, const std::string &name) { - return "data/save/" + world + "/dfhack-" + filterSaveFileName(name) + ".dat"; + return "save/" + world + "/dfhack-" + filterSaveFileName(name) + ".dat"; } #if defined(__GNUC__) && __GNUC__ < 5 From 51bb5589dee14093748215808b1b48e4903a5b7b Mon Sep 17 00:00:00 2001 From: Kelly Kinkade Date: Fri, 6 Jan 2023 21:55:42 -0600 Subject: [PATCH 2/2] change order of state change event processing this will cause persistent data storage to load _before_ `SC_WORLD_LOADED` events are sent to scripts and plugins --- library/Core.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/library/Core.cpp b/library/Core.cpp index d54218b5c..abcba2e78 100644 --- a/library/Core.cpp +++ b/library/Core.cpp @@ -2197,6 +2197,11 @@ void Core::onStateChange(color_ostream &out, state_change_event event) std::cerr << "loaded map in prerelease build" << std::endl; } + if (event == SC_WORLD_LOADED) + { + doLoadData(out); + } + EventManager::onStateChange(out, event); buildings_onStateChange(out, event); @@ -2211,10 +2216,6 @@ void Core::onStateChange(color_ostream &out, state_change_event event) { Persistence::Internal::clear(); } - if (event == SC_WORLD_LOADED) - { - doLoadData(out); - } } void Core::doSaveData(color_ostream &out)