summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/date.cpp6
-rw-r--r--src/openttd.cpp7
2 files changed, 7 insertions, 6 deletions
diff --git a/src/date.cpp b/src/date.cpp
index 9122b21c8..944e40bc4 100644
--- a/src/date.cpp
+++ b/src/date.cpp
@@ -218,12 +218,6 @@ static void OnNewYear()
*/
static void OnNewMonth()
{
- if (_debug_desync_level > 2) {
- char name[MAX_PATH];
- snprintf(name, lengthof(name), "dmp_cmds_%08x_%08x.sav", _settings_game.game_creation.generation_seed, _date);
- SaveOrLoad(name, SL_SAVE, AUTOSAVE_DIR);
- }
-
if (_settings_client.gui.autosave != 0 && (_cur_month % _autosave_months[_settings_client.gui.autosave]) == 0) {
_do_autosave = true;
RedrawAutosave();
diff --git a/src/openttd.cpp b/src/openttd.cpp
index 77677dd33..86d239819 100644
--- a/src/openttd.cpp
+++ b/src/openttd.cpp
@@ -1206,6 +1206,13 @@ void StateGameLoop()
} else {
CheckCaches();
+ if (_debug_desync_level > 2 && _date_fract == 0 && (_date & 0x1F) == 0) {
+ /* Save the desync savegame if needed. */
+ char name[MAX_PATH];
+ snprintf(name, lengthof(name), "dmp_cmds_%08x_%08x.sav", _settings_game.game_creation.generation_seed, _date);
+ SaveOrLoad(name, SL_SAVE, AUTOSAVE_DIR);
+ }
+
/* All these actions has to be done from OWNER_NONE
* for multiplayer compatibility */
CompanyID old_company = _current_company;