Cataclysm-dda: Game Freeze upon approaching of base.

Created on 8 Mar 2020  路  4Comments  路  Source: CleverRaven/Cataclysm-DDA

Describe the bug

When approaching the base to the east the game freezes. Not a crash, and no inputs are possible.

Steps To Reproduce

  1. Approach the base in the east of the current player location.
  2. When approaching from the west or south the NPC gets put in stasis first and the game enters debug mode. When approaching from the north the game simply freezes.
  3. When the NPC gets put into stasis they can be woken up with no problem, but getting closer to the building freezes the game. Teleportation into the building leads to an immediate freeze.

Expected behavior

That the game process continuous on as normal.

Versions and configuration

  • Game Version: 0.D-12917-gdccc2bf [64-bit]
  • Graphics Version: Tiles
  • Mods loaded: [
    Dark Days Ahead [dda],
    Disable NPC Needs [no_npc_food],
    Magiclysm [magiclysm],
    Garden Pots [growable-pots],
    Makeshift Items Mod [makeshift],
    Medieval and Historic Classes and Shields [Medieval_Stuff],
    More Survival Tools [More_Survival_Tools],
    Alternative Map Key [alt_map_key],
    Mutant NPCs [mutant_npcs],
    My Sweet Cataclysm [my_sweet_cataclysm],
    More Locations [more_locations],
    Folding Parts pack [deoxymod],
    Sleep Deprivation [sleepdeprivation],
    Stats Through Skills [StatsThroughSkills],
    SpeedyDex [speedydex]
    ]

Additional context

The .zip file is too big (45 MB) I put it into dropbox. https://www.dropbox.com/s/0bse6jyrewdt49f/Nauvoo-zip.zip?dl=0

(S1 - Need confirmation) <Crash / Freeze>

Most helpful comment

This is not really in zone::has() but that makes it much worse.

Its actually the fact those NPCs have a HUGE amount of moves stored up from the last time they were in reality bubble, like over a million, each, and they have the TIDY_UP activity, which scans every map tile in a radius of 60 tiles, and it dosnt stop if nothing is found, it uses up 100 moves, and then scans again, and again, so thats like 3600 tiles * 3 NPCs * 100,000 = a lot.

They dont stop recycling the activity until their moves hit zero.

The fix im working on is to convert the activity code to seperate out the scanning part a bit more, so if they scan once, if nothings there, they dont start the activity.

All 4 comments

There appears to be an infinite loop in zone_manager::has.

Disabling all zones got rid of the freeze.

This is still a bug that can be reproduced, and it is a valid bug report.

This is not really in zone::has() but that makes it much worse.

Its actually the fact those NPCs have a HUGE amount of moves stored up from the last time they were in reality bubble, like over a million, each, and they have the TIDY_UP activity, which scans every map tile in a radius of 60 tiles, and it dosnt stop if nothing is found, it uses up 100 moves, and then scans again, and again, so thats like 3600 tiles * 3 NPCs * 100,000 = a lot.

They dont stop recycling the activity until their moves hit zero.

The fix im working on is to convert the activity code to seperate out the scanning part a bit more, so if they scan once, if nothings there, they dont start the activity.

Was this page helpful?
0 / 5 - 0 ratings