New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Save game corruption #28133

Closed
Astrobia opened this Issue Feb 8, 2019 · 5 comments

Comments

Projects
None yet
4 participants
@Astrobia
Copy link

Astrobia commented Feb 8, 2019

Describe the bug
Save game JSONs become corrupted during the save process.

To Reproduce
Unclear, this is the second time I've had this happen (first time was mid last year). The things in common were I had found a spiral stone item in a mansion, I saved while inside the mansion, I quicksaved before I saved and exited. I've added a link to the savegame at the end of the report.

Expected behavior
The game should save and load without various files becoming unreadable.

Screenshots
When trying to load the game I get this error message:
image
followed by several similar messages for all the other files that became corrupted (mostly map files but also the uistate.json)

The corrupt jsons look like this when trying to open them in Notepad++
image
Which I suspect makes them completely unsalvagable.

If I choose the ignore the errors the game loads, but the area around me has been reset... Or perhaps I should say rerolled. The mansion I am in has been repaired to its original state and being refilled with new random loot. The various furniture I've built and my stockpiles of items have been deleted. Which is perhaps to be expected given the game can't load those arrays. What is interesting is my characters map memory still remembers the mansion as I left it.

image

If I approach these windows I had previously boarded up I will discover them returned to their original map state:

image

Probably not diagnostically relevant but shows how this issue affects ongoing gameplay.

Versions and configuration(please complete the following information):

  • OS: Windows 10
  • Game Version: 0.C-37221-ga9b8568
  • Graphics version: Tiles
  • Mods loaded "no_npc_food", "filthy_morale", "Tolerate_This", "craftgp", "realguns", "growable-pots", "makeshift", "Medieval_Stuff", "More_Survival_Tools", "nw_pack", "modular_turrets", "Salvaged_Robots", "alt_map_key", "national_guard_camp", "more_locations", "FujiStruct", "mapgen_demo", "oa_additional_buildings_mod", "Urban_Development", "boats", "deoxymod",
    "blazemod", "Tanks", "StatsThroughSkills"

Additional context
I've seen similar reports already closed for various reasons so I think it's important to point out a few details. First, I do not use a launcher of any kind. Second, I started this save a week ago and have not updated version since. Third: This save was started or a completely fresh install. This is an issue caused by the vanilla game and/or the mods that ship with it.

The main issue for my continuing with this save is the destruction of stockpiles of collected items and the possibility that will happen again. It's worth noting I had not really set up permanent camp in the mansion (it's not my main base) and the items hoarded there are just items from within and around the mansion itself I was grouping together to pick up with a trolly later. There weren't any ridiculously large piles with stupid numbers of items likely to cause a memory issue.

Heres the full log file:
21:37:43.402 : Starting log. 21:37:43.402 INFO : Cataclysm DDA version 0.C-37221-ga9b8568 21:37:43.427 INFO : Number of render drivers on your system: 4 21:37:43.427 INFO : Render driver: 0/direct3d 21:37:43.427 INFO : Render driver: 1/direct3d11 21:37:43.427 INFO : Render driver: 2/opengl 21:37:43.427 INFO : Render driver: 3/software 21:37:43.433 INFO : Language is set to: 'en' 21:37:44.313 INFO : SDL version used during compile is 2.0.5 21:37:44.313 INFO : SDL version used during linking and in runtime is 2.0.5 21:37:44.475 INFO : Active renderer: 0/direct3d 21:37:44.871 INFO : USE_COLOR_MODULATED_TEXTURES is set to 1 21:37:44.872 INFO : generate_alt_rect_texture() = FAIL. alt_rect_tex_enabled = 1 21:37:45.105 WARNING : opendir [./mods/] failed with "No such file or directory". 21:37:54.500 ERROR : (error message will follow backtrace) (@0x555af2[cataclysm-tiles.exe+0x155af2]), (@0x555e54[cataclysm-tiles.exe+0x155e54]), (@0x5566c4[cataclysm-tiles.exe+0x1566c4]), (IMG_LoadWEBP_RW+0x111fa2@0xda3002[cataclysm-tiles.exe+0x9a3002]), (@0x484280[cataclysm-tiles.exe+0x84280]), (@0x48448b[cataclysm-tiles.exe+0x8448b]), (@0x446dcc[cataclysm-tiles.exe+0x46dcc]), (@0x5e1476[cataclysm-tiles.exe+0x1e1476]), (@0x61425f[cataclysm-tiles.exe+0x21425f]), (@0x752935[cataclysm-tiles.exe+0x352935]), (@0x754798[cataclysm-tiles.exe+0x354798]), (IMG_LoadWEBP_RW+0x49ce22@0x112de82[cataclysm-tiles.exe+0xd2de82]), (@0x4013e2[cataclysm-tiles.exe+0x13e2]), (BaseThreadInitThunk+0x24@0x75d362c4[KERNEL32.DLL+0x162c4]), (RtlSubscribeWnfStateChangeNotification+0x439@0x77420609[ntdll.dll+0x60609]), (RtlSubscribeWnfStateChangeNotification+0x404@0x774205d4[ntdll.dll+0x605d4]), Backtrace emission took 0 seconds. src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/artifacts.gsav": line 1:1: tried to start array, but found ' 21:47:18.663 ERROR : (error message will follow backtrace) (@0x555af2[cataclysm-tiles.exe+0x155af2]), (@0x555e54[cataclysm-tiles.exe+0x155e54]), (@0x50ca98[cataclysm-tiles.exe+0x10ca98]), (@0x50cad6[cataclysm-tiles.exe+0x10cad6]), (@0x51286d[cataclysm-tiles.exe+0x11286d]), (IMG_LoadWEBP_RW+0x121d77@0xdb2dd7[cataclysm-tiles.exe+0x9b2dd7]), (@0x788b45[cataclysm-tiles.exe+0x388b45]), (@0x78b2b2[cataclysm-tiles.exe+0x38b2b2]), (IMG_LoadWEBP_RW+0x182547@0xe135a7[cataclysm-tiles.exe+0xa135a7]), (@0x78eee1[cataclysm-tiles.exe+0x38eee1]), (@0x659c76[cataclysm-tiles.exe+0x259c76]), (@0x65b1e4[cataclysm-tiles.exe+0x25b1e4]), (@0x65b550[cataclysm-tiles.exe+0x25b550]), (@0x5c9d42[cataclysm-tiles.exe+0x1c9d42]), (@0x5e0ad7[cataclysm-tiles.exe+0x1e0ad7]), (@0x5e14d7[cataclysm-tiles.exe+0x1e14d7]), (@0x61425f[cataclysm-tiles.exe+0x21425f]), (@0x752935[cataclysm-tiles.exe+0x352935]), (@0x754798[cataclysm-tiles.exe+0x354798]), (IMG_LoadWEBP_RW+0x49ce22@0x112de82[cataclysm-tiles.exe+0xd2de82]), (@0x4013e2[cataclysm-tiles.exe+0x13e2]), (BaseThreadInitThunk+0x24@0x75d362c4[KERNEL32.DLL+0x162c4]), (RtlSubscribeWnfStateChangeNotification+0x439@0x77420609[ntdll.dll+0x60609]), (RtlSubscribeWnfStateChangeNotification+0x404@0x774205d4[ntdll.dll+0x605d4]), Backtrace emission took 0 seconds. couldn't parse color: c_black_light_red 21:47:18.664 ERROR : couldn't parse color: c_magenta_light_cyan 21:47:18.849 ERROR : couldn't parse color: c_yellow 21:47:19.521 WARNING : opendir [./save/Sea Island/mods] failed with "No such file or directory". 21:47:24.148 INFO : Loaded tileset: retrodays 21:47:27.126 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.180.0.map": line 1:1: tried to start array, but found ' 21:52:48.306 ERROR : (error message will follow backtrace) (@0x555af2[cataclysm-tiles.exe+0x155af2]), (@0x555e54[cataclysm-tiles.exe+0x155e54]), (@0x5566c4[cataclysm-tiles.exe+0x1566c4]), (IMG_LoadWEBP_RW+0x111fa2@0xda3002[cataclysm-tiles.exe+0x9a3002]), (@0x484280[cataclysm-tiles.exe+0x84280]), (@0x48448b[cataclysm-tiles.exe+0x8448b]), (@0x7857fa[cataclysm-tiles.exe+0x3857fa]), (@0x785af0[cataclysm-tiles.exe+0x385af0]), (@0x785bdb[cataclysm-tiles.exe+0x385bdb]), (@0x77686d[cataclysm-tiles.exe+0x37686d]), (@0x7775e4[cataclysm-tiles.exe+0x3775e4]), (@0x77769b[cataclysm-tiles.exe+0x37769b]), (@0x5c9e1a[cataclysm-tiles.exe+0x1c9e1a]), (@0xa1fb2c[cataclysm-tiles.exe+0x61fb2c]), (IMG_LoadWEBP_RW+0x36c6ad@0xffd70d[cataclysm-tiles.exe+0xbfd70d]), (@0x484130[cataclysm-tiles.exe+0x84130]), (@0x61606f[cataclysm-tiles.exe+0x21606f]), (@0x752966[cataclysm-tiles.exe+0x352966]), (@0x754798[cataclysm-tiles.exe+0x354798]), (IMG_LoadWEBP_RW+0x49ce22@0x112de82[cataclysm-tiles.exe+0xd2de82]), (@0x4013e2[cataclysm-tiles.exe+0x13e2]), (BaseThreadInitThunk+0x24@0x75d362c4[KERNEL32.DLL+0x162c4]), (RtlSubscribeWnfStateChangeNotification+0x439@0x77420609[ntdll.dll+0x60609]), (RtlSubscribeWnfStateChangeNotification+0x404@0x774205d4[ntdll.dll+0x605d4]), Backtrace emission took 0 seconds. src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.181.0.map": line 1:1: tried to start array, but found ' 21:52:55.450 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.182.0.map": line 1:1: tried to start array, but found ' 21:52:56.091 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.183.0.map": line 1:1: tried to start array, but found ' 21:52:56.618 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.184.0.map": line 1:1: tried to start array, but found ' 21:52:56.851 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/236.185.0.map": line 1:1: tried to start array, but found ' 21:52:57.104 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.180.0.map": line 1:1: tried to start array, but found ' 21:52:57.361 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/237.181.-1.map": line 1:1: tried to start array, but found ' 21:52:57.512 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.181.0.map": line 1:1: tried to start array, but found ' 21:52:58.324 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/237.181.1.map": line 1:1: tried to start array, but found ' 21:52:58.745 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/237.182.-1.map": line 1:1: tried to start array, but found ' 21:53:01.267 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.182.0.map": line 1:1: tried to start array, but found ' 21:53:01.602 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/237.182.1.map": line 1:1: tried to start array, but found ' 21:53:01.849 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/237.183.-1.map": line 1:1: tried to start array, but found ' 21:53:02.078 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.183.0.map": line 1:1: tried to start array, but found ' 21:53:02.333 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/237.183.1.map": line 1:1: tried to start array, but found ' 21:53:02.595 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.184.0.map": line 1:1: tried to start array, but found ' 21:53:02.810 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/237.185.0.map": line 1:1: tried to start array, but found ' 21:53:03.210 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.180.0.map": line 1:1: tried to start array, but found ' 21:53:03.233 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/238.181.-1.map": line 1:1: tried to start array, but found ' 21:53:03.408 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.181.0.map": line 1:1: tried to start array, but found ' 21:53:03.556 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/238.181.1.map": line 1:1: tried to start array, but found ' 21:53:03.794 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/238.182.-1.map": line 1:1: tried to start array, but found ' 21:53:03.866 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.182.0.map": line 1:1: tried to start array, but found ' 21:53:04.084 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/238.182.1.map": line 1:1: tried to start array, but found ' 21:53:04.570 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/238.183.-1.map": line 1:1: tried to start array, but found ' 21:53:04.586 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.183.0.map": line 1:1: tried to start array, but found ' 21:53:04.620 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/238.183.1.map": line 1:1: tried to start array, but found ' 21:53:04.811 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.184.0.map": line 1:1: tried to start array, but found ' 21:53:05.009 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/238.185.0.map": line 1:1: tried to start array, but found ' 21:53:05.287 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.180.0.map": line 1:1: tried to start array, but found ' 21:53:05.335 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/239.181.-1.map": line 1:1: tried to start array, but found ' 21:53:05.512 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.181.0.map": line 1:1: tried to start array, but found ' 21:53:05.695 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/239.181.1.map": line 1:1: tried to start array, but found ' 21:53:05.927 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/239.182.-1.map": line 1:1: tried to start array, but found ' 21:53:06.135 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.182.0.map": line 1:1: tried to start array, but found ' 21:53:06.303 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/239.182.1.map": line 1:1: tried to start array, but found ' 21:53:06.536 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.-1/239.183.-1.map": line 1:1: tried to start array, but found ' 21:53:06.649 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.183.0.map": line 1:1: tried to start array, but found ' 21:53:06.849 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.1/239.183.1.map": line 1:1: tried to start array, but found ' 21:53:07.011 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.184.0.map": line 1:1: tried to start array, but found ' 21:53:07.177 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/239.185.0.map": line 1:1: tried to start array, but found ' 21:53:07.376 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.180.0.map": line 1:1: tried to start array, but found ' 21:53:07.549 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.181.0.map": line 1:1: tried to start array, but found ' 21:53:07.720 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.182.0.map": line 1:1: tried to start array, but found ' 21:53:07.881 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.183.0.map": line 1:1: tried to start array, but found ' 21:53:08.089 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.184.0.map": line 1:1: tried to start array, but found ' 21:53:08.270 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/240.185.0.map": line 1:1: tried to start array, but found ' 21:53:08.471 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.180.0.map": line 1:1: tried to start array, but found ' 21:53:08.610 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.181.0.map": line 1:1: tried to start array, but found ' 21:53:08.801 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.182.0.map": line 1:1: tried to start array, but found ' 21:53:08.974 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.183.0.map": line 1:1: tried to start array, but found ' 21:53:09.194 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.184.0.map": line 1:1: tried to start array, but found ' 21:53:09.396 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/maps/7.5.0/241.185.0.map": line 1:1: tried to start array, but found ' 21:53:09.780 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/#QXN0cm9u.apu.json": line 1:1: tried to start array, but found ' 21:53:09.784 ERROR : safemode::load: line 1:1: tried to start array, but found ' 21:53:09.790 ERROR : src/cata_utility.cpp:436 [bool read_from_file(const string&, const std::function<void(std::basic_istream<char>&)>&)] Failed to read from "./save/Sea Island/uistate.json": line 1:1: tried to start object, but found ' 21:53:44.136 : Log shutdown.

And here is the savegame:
Sea Island.zip

@ZhilkinSerg

This comment has been minimized.

Copy link
Contributor

ZhilkinSerg commented Feb 8, 2019

I really doubt we can do anything here - it is probably an environmental issue.

@Astrobia

This comment has been minimized.

Copy link
Author

Astrobia commented Feb 8, 2019

Entirely possible. Though a quick search shows I'm not the only person to experience it... Across different environments. Also doesn't mean there is nothing that can be done about this issue. Since the files are corrupted during the save all the system needs to do is check the first character of every file after is saves it to see if it's readable and not exit if the save wasn't successful. The resulting alert might also make it more apparent what circumstances are responsible for contributing to a failed save.

@ZhilkinSerg

This comment has been minimized.

Copy link
Contributor

ZhilkinSerg commented Feb 9, 2019

I mean we can not do anything with the already corrupted savegame.

Savegame validation totally makes sense, but it would require some efforts to change current save system - validation probably won't change much right now.

@Astrobia

This comment has been minimized.

Copy link
Author

Astrobia commented Feb 9, 2019

Oh of course not. The data in the files is toast. I have no expectations of recovering the save. Just hoping to prevent it in the future. Ideally, by finding out what's causing it and resolving that (The fact it's happened twice in a year both times around mansion maps makes me suspicious there's something going on around those). But given, it's an ironman save system and maintaining multiple backup saves kind of goes against the permadeath vibe, a verification system could go a long way, especially if new issues causing save corruption pop up in the future.

@kevingranade

This comment has been minimized.

Copy link
Member

kevingranade commented Feb 13, 2019

"it is probably an environmental issue." means it most likely is a result of something happening outside the game. I.e. filesystem corruption, disk error, process killed during save process.

None of these scenarios are anything we can fix from within the game.

If there is a cause within the game, this issue doesn't point to it, so there's also nothing to be done about it unless we get a better reproduction case.

A final note, backing up your saves isn't contradictory to ironman play, just don't restore based on in-game events.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment