DFHack / dfhack

Memory hacking library for Dwarf Fortress and a set of tools that use it
Other
1.86k stars 470 forks source link

open-legends: Map Regeneration + Reveal of all tiles + Fire clay appearing and expanding on surface + Human merchants arriving in Autumn #805

Closed Coinneas closed 5 years ago

Coinneas commented 8 years ago

(Essentially, on a certain date the game glitches massively, as described in the title).

This game-breaking bug is currently under discussion on Mantis, and I (and the others involved) believe it to be related to DFHack. See below for more information:

http://www.bay12games.com/dwarves/mantisbt/view.php?id=9052#bugnotes

lethosor commented 8 years ago

What DFHack tools are you using/have you used?

Coinneas commented 8 years ago

I (and the others with the issue) have simply been using the Lazy Newb Pack and the default DFhack included in it. In my case, in the save that got glitched, I had used the open-legends command. I had also used the command within the stocks menu that allows you to see the status of bedrooms.

fricy commented 8 years ago

I don't know if it's relevant or not: I had the HFS unleashed at my last embark while using reveal. I checked the map for aquifers, plotted a way past it, and accidentally unpaused without running unreveal, and ran the game for a short time. I got a collapsed message, and fps was ruined at once. I quit the game without saving, so no idea about save corruption, and I don't remember the tiles changing as described. Other command I used at that session was prospect. 42.04-alpha2

ixuz commented 8 years ago

This issue have occurred for me twice now. I'm using Dwarf Fortress 40_24 Starter Pack r20. During my fortress gameplay have exported legends to xml using the ingame DFHack open-legends command.

lethosor commented 8 years ago

Since the only reports of this so far seem to be related to open-legends, I'll add a warning to that script. It might also be possible to prevent it from being used on saves that have changed after being loaded, or force DF to quit when exiting legends mode to prevent issues (which would still be more convenient than trying to get to legends mode in an existing game in vanilla DF).

sv-esk commented 8 years ago

Steps to reproduce:

  1. Run open-legends
  2. Hit d (export detailed map)
  3. Exit legends mode (it is not necessary to actually export something)
  4. Wait. It will explode when cur_season_tick becomes a multiple of 2000

Game clears world.world_data.region_details on LEGENDS_EXPORT_DETAILED_MAP key press and then uses that vector when it generates detailed map for export. Wrong region_details is an actual reason of massive game glitch.

region_details contents shold be moved to some safe place right after loading legends screen and moved back right before exiting legends mode.

lethosor commented 6 years ago

Repeating https://github.com/DFHack/lethosor-scripts/pull/3#issuecomment-195966083:

It also updates resident counts, inhabitants, cavein_flags[7] and some hf and site links(hf_site_link_home_site_realization_buildingst), (creates realizations)

And I think there may be other things as well that were mentioned on IRC. I'm not sure we can handle everything, so a strong warning is probably the best we can do.

sharlin073 commented 5 years ago

Just had a similar event. and reloaded savefile to see if this I can reproduce this. In my case, all tiles revealed, map regenerated, all construction(walls, floors) disappeared, goblins appeared everywhere on the surface (dwarves are stuck by regenerated blocks) in 44.12 LNPr4.

Edit : Yeah I can reproduce it. and some bards and poets also appear. seems like all dead historical figures are regenerating! I'm uploading it. anyone knows how to save this savefile?

http://dffd.bay12games.com/file.php?id=14184