Cataclysm-DDA icon indicating copy to clipboard operation
Cataclysm-DDA copied to clipboard

[Experimental] some "Rural Roads" replaced with "% nether-chewed field"

Open AcidAntOnAMinefield opened this issue 1 year ago • 2 comments
trafficstars

Describe the bug

Updated the game and reloaded my save. Noticed some rural roads near rural houses have been replaced with an % called "nether-chewed field" after an error related to "rural roads".

Attach save file

N/A

Steps to reproduce

Use 4 or 5 day old build.

Start a new game with a new character.

Reveal Map and ensure you have a few good amount of rural roads and rural houses within sight. (Teleport to several of them so they register in your map memory too I guess?)

Save and Quit.

Update to "experimental build 2024-03-24-0121"

Reload the game

Enjoy the several error screens related to rural roads before you can get into the world.

Open map and observe the rural roads and spot "%"s near them.

Expected behavior

Random Nether Terrain should not replace existing terrain.

Screenshots

image

Versions and configuration

Linux

Experimental Build cf9267f (Refer to Screenshot)

Additional context

///I didn't test this but I wouldn't be surprised if even generating a new playthrough using the specified build would already lead to this by default. ////

Just did the above out of sheer curiosity and it seems the bug only occurs with saves from different builds and only with specific rural roads.

Having random black spots of terrain is an eyesore tbh.

AcidAntOnAMinefield avatar Mar 24 '24 07:03 AcidAntOnAMinefield

Very likely caused by https://github.com/CleverRaven/Cataclysm-DDA/pull/72431, as this PR changed rural connections. I didn't try to reproduce before/after as I didn't have a prior backup from my current save.

andrewhr avatar Mar 24 '24 13:03 andrewhr

/confirmed I have updated the game after not updating it for a bit and now I get errors when loading a save created in the previous version:

 ERROR : src/generic_factory.h:513 [int_id<T> generic_factory<T>::convert(const string_id<T>&, const int_id<T>&, bool) const [with T = oter_t]] invalid overmap terrain id "dirt_road_3way_east"
 ERROR : src/savegame.cpp:445 [void overmap::unserialize(const JsonObject&)] Loaded invalid oter_id 'cabin_liam_driveway_north'
 ERROR : src/savegame.cpp:445 [void overmap::unserialize(const JsonObject&)] Loaded invalid oter_id 'dirt_road_3way_forest_east'
 ERROR : src/savegame.cpp:445 [void overmap::unserialize(const JsonObject&)] Loaded invalid oter_id 'dirt_road_3way_forest_north'
 ERROR : src/savegame.cpp:445 [void overmap::unserialize(const JsonObject&)] Loaded invalid oter_id 'dirt_road_3way_forest_south'
 ERROR : src/savegame.cpp:445 [void overmap::unserialize(const JsonObject&)] Loaded invalid oter_id 'dirt_road_3way_forest_west'

I think I spotted some mistakes in obsolete_overmap_terrain.json https://github.com/CleverRaven/Cataclysm-DDA/pull/72431. Will fix

hexagonrecursion avatar Mar 24 '24 17:03 hexagonrecursion