View Issue Details

IDProjectCategoryView StatusLast Update
0001340Dwarf FortressPathfindingpublic2020-09-17 14:22
ReporterJiri Petru Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status newResolutionopen 
Product Version0.31.03 
Summary0001340: Walling off HFS kills FPS
DescriptionThis is apparently an old issue, but I felt it should be represented in the bug tracker :)

When you release the HFS buggers and wall them off, the FPS drops waaaay too low. Once you open the way again, the FPS shoots back up.

Footkerchief says "HFS has a tendency to spam path requests like crazy, even after you wall them off -- that's a bug that goes back to 40d and earlier," and links to several older bug reports back on the forums, here: http://www.bay12games.com/forum/index.php?topic=34311.msg1180616#msg1180616
TagsHFS, pathfinding

Relationships

related to 0000891 resolveduser6 New HFS pathing troubles; ends up in a pathing "freeze" 
related to 0000797 confirmeduser6 Animals/pets repeatedly try to find path through pet-locked/"tightly closed" doors, causing lag 
related to 0003164 confirmeduser6 Severe lag during sieges due to buildingdestroyer pathfinding 
related to 0001655 acknowledgedToady One Demons always path to top levels of tube 
related to 0004779 new FPS different on different z-levels 

Activities

Jiri Petru

2010-04-19 13:25

reporter   ~0004262

Last edited: 2010-04-19 13:25

By the way, what is the policy for reposting known old bugs to the bug tracker? Is it generally encouraged, or frowned upon? Feel free to close this report if the latter.

user6

2010-04-19 13:39

  ~0004264

Last edited: 2010-04-19 13:40

Encouraged, AFAIK. I think the original plan was to get all the old-but-not-obsolete bugs into the tracker ASAP, but with all the scary new bugs that need fixing, it's unlikely Toady will find time for transferring the old ones. Plus, it's usually not obvious whether they're still around, so it's good to get confirmation.

king doom

2010-04-19 14:24

reporter   ~0004266

This is a known bug, and can be triggered by plenty of things. I've done it myself with a caravan and a totally walled off depot. In the end I had to mod everything on the map but dwarves to only be able to breathe underwater, so they all died and stopped trying to find a non existent path fifty million times per second.

Jiri Petru

2010-11-18 16:38

reporter   ~0013993

May I suggest stickying this bug?

Sorry for being obnoxious, but it is a very common and gamebreaking bug, only a little less bad than a crash. The FPS drops so low the game becomes almost unplayable.

user6

2010-11-18 18:21

  ~0013997

I added a relationship to stickied bug 0000797, which is probably a worse offender (there are a lot of path-spam bugs).

Jiri Petru

2010-11-19 06:08

reporter   ~0014012

Thanks, that should be enough to make this report visible.

Jiri Petru

2011-01-03 15:31

reporter   ~0014780

Last edited: 2011-01-03 15:32

This seems to be caused by the BUILDINGDESTROYER tag, which most probably never stops pathing.

How to "fix" this issue, courtesy of SirPenguin from SomethingAwful (Gemclod is the name of the fortress):

1. Go into your init file and change the [COMPRESSED_SAVES:YES] to [COMPRESSED_SAVES:NO]
2. Start the fort, then simply save and quit again
3. Download DF World Tinker (http://www.bay12forums.com/smf/index.php?topic=67059.0)
4. Put that in your DF folder
5. Run World Tinker. First parameter, put in "GemClod". Second, put in "export". Third, put in "file.txt"
6. A file by the name of file.txt is generated in your DF folder. This contains all the raws of the active save file, which you normally cannot change
7. Open the file, and hit Control F "demon" to find the first demon
8. If you are Pozzo, or an overseer doing this, try to do this fast or without looking! You WILL spoil demon types, their syndromes, etc. etc.
9. If using Notepad, select Edit then Replace...
10. Find What: [BUILDINGDESTROYER:2] Replace with: (leave blank)
11. Now simply hit "Replace" until it says it cannot find any more instances of the tag
12. After you're done, save file.txt and close it
13. Open World Tinker again. First parameter, "GemClod". Second, "forceimport". Third, "file.txt"
14. "go", and it'll import your modified raws

Repeat steps 9-14 with any other tag we deem beneficial. I found removing [LIKES_FIGHTING] seemed to add some performance, as my FPS rose to the 20s and then back to 16/17 when I removed it. But then it hovered around 15/16 again, so who knows.

Xolroc

2015-05-06 15:44

reporter   ~0032652

Last edited: 2015-05-06 15:50

I can confirm this still happens in version 40.24. Going to try Jiri Petru's fix now, hopefully it will still work.

Edit: No, apparently the program Jiri said to use hasn't been updated to support 40.24. Anyone know of another way to modify demons?

NW_Kohaku

2015-05-23 21:31

reporter   ~0032714

I had this happen in an extremely noticeable fashion when I had a miner wall himself off thanks to channeling straight down and not completing an exit tunnel before he wanted to go on break. I had 100 (max) FPS (first Winter), which cratered to around 15 just having this one miner try to path to either his room or the dining hall.

It may be relevant that he could hypothetically have tried pathing a climbing expedition up 100z of channel, but decided against it, only to consider it again multiple times per frame.

neverending_cavein

2020-09-17 14:22

reporter   ~0040740

I had this happen in 0.47.04, except that I didn't dig into the adamantine and then wall it off; I carved fortifications. And I didn't just get low FPS; DF froze for a few minutes and wouldn't respond to input during that time. The freeze started when the demons flew over to an adamantine spire (not the one that I carved fortifications in).

Add Note

Note

Issue History

Date Modified Username Field Change
2010-04-19 13:24 Jiri Petru New Issue
2010-04-19 13:25 Jiri Petru Note Added: 0004262
2010-04-19 13:25 Jiri Petru Note Edited: 0004262
2010-04-19 13:25 Jiri Petru Note Edited: 0004262
2010-04-19 13:39 user6 Note Added: 0004264
2010-04-19 13:40 user6 Note Edited: 0004264
2010-04-19 13:40 user6 Relationship added related to 0000891
2010-04-19 14:24 king doom Note Added: 0004266
2010-04-19 14:42 Kennel Tag Attached: HFS
2010-04-19 14:42 Kennel Tag Attached: pathfinding
2010-11-18 16:38 Jiri Petru Note Added: 0013993
2010-11-18 18:20 user6 Relationship added related to 0000797
2010-11-18 18:21 user6 Note Added: 0013997
2010-11-19 06:08 Jiri Petru Note Added: 0014012
2011-01-03 15:31 Jiri Petru Note Added: 0014780
2011-01-03 15:31 Jiri Petru Note Edited: 0014780
2011-01-03 15:32 Jiri Petru Note Edited: 0014780
2013-09-22 17:35 user6 Relationship added related to 0003164
2014-01-27 08:14 user6 Relationship added related to 0001655
2014-01-27 08:32 user6 Relationship added related to 0004779
2015-05-06 15:44 Xolroc Note Added: 0032652
2015-05-06 15:50 Xolroc Note Edited: 0032652
2015-05-23 21:31 NW_Kohaku Note Added: 0032714
2020-09-17 14:22 neverending_cavein Note Added: 0040740