Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0011825Dwarf FortressAdventure Mode -- Combatpublic2021-11-27 15:042021-11-27 15:04
Assigned To 
PlatformOSOS Version
Product Version0.47.05 
Target VersionFixed in Version 
Summary0011825: Raising Dead during large combat causes 10-60 minute lag
DescriptionI have an adventurer who is a necromancer trying to rule the world, and whenever I fight large amounts of npcs with my undead horde (e.g. sieging a city's keep), the game slows to a crawl between combat steps, which is annoying but tenable. HOWEVER, when I raise dead in the middle of said combat (say 0000048:0000050 undead, some re-raised and some newer victims) the game halts for 10-60 minutes on the move after the raise dead, and before any time steps occur visually. The game goes unresponsive and seemingly crashes, but without fail will come become responsive again if I let it sit long enough.
Steps To Reproduce1. Adventure mode
2. Become necromancer
3. Bring 50-100 undead to a large dense population of non-undead npcs
4. Let them fight until a large number/all the undead have been struck down and a large amount of npcs remain
5. Raise dead on all the parts/bodies you can see
6. Do any move that causes time to progress
Additional InformationI've also noticed when adventure mode undead are struck down and re-raised, the companion count sometimes goes up, and many undead parts/bodies will be on the companion list twice, which might be related to the problem. I'm sure lots of things are being recalculated when npcs spot new entities and when new entities get added to the simulation, and this problem feels like an exponential or quadratic scaling performance issue with number of entities
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2021-11-27 15:04 brubsby New Issue

Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker