Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001917Dwarf FortressGeneralpublic2010-05-16 23:082010-06-09 07:56
Assigned ToToady One 
Platform64-bit Ubuntu/64-bit Windows 7OSOS Version
Product Version0.31.04 
Target VersionFixed in Version0.31.06 
Summary0001917: Repeatable 31.04/31.03 crash on load - hospital related
DescriptionEdit: Encasing the hospital in obsidian/otherwise interrupting the medical dwarves seems to halt the crash.
One timestep after this game is loaded, it crashes. The save was originally generated on 31.03 (under wine on 64-bit Linux). It still crashes on 31.04 (Linux native).
Steps To ReproduceLoad save. Unpause or advance one timestep.
Additional Information [^]

I've tried removing all zones, canceling all jobs, unappointing all nobles, and disbanding the military. In an alternate save I killed the mayor. None of these prevent the crash.
TagsNo tags attached.
Attached Files

- Relationships
child of 0001828resolvedToady One Crash when doctor cleans patient with almost-depleted bar of soap (size goes negative?) 

-  Notes
Footkerchief (manager)
2010-05-16 23:12

Have you re-saved the game in 31.04, or is it still a 31.03 save? If it's still a 31.03 save, does it crash in 31.03 as well?
Logical2u (manager)
2010-05-17 04:28
edited on: 2010-05-17 04:37

I'm getting the crash in 31.03. I'd really like to link it to one of the other "one frame crashes" I've looked at, but now that I've seen the hospital crashes, part of me is starting to think that not all crashes can be stopped in one frame - you need a few frames to get dwarves to remove the beds the buggy dwarves are sleeping on.

Right, I think the crash IS related to your hospital. I opened up DF hack, and spawned magma and water on your hospital beds, which cancelled some of the hospital jobs - I was able to get it to advance 1 frame. I then unpaused it, and it ran for a little bit without any further crashes.

Edit: You don't need to kill any dwarves to get the game to work. Just spawn 7/7 squares of water over most of your hospital zone. This will interrupt your doctors and their work which is causing the crash. I just used magma to obsidianize the dwarves because I thought just water wouldn't work.

Creidieki (reporter)
2010-05-17 09:47

It's still a 31.03 save, sorry for being unclear. Let me know if you'd like me to load it in 31.04, save it immediately, and upload that version too.

Logical2u, thank you very much for the workaround. I'll try that today. I was really hoping I could continue this fortress.
Footkerchief (manager)
2010-05-17 09:52

It's still a 31.03 save, sorry for being unclear. Let me know if you'd like me to load it in 31.04, save it immediately, and upload that version too.

Nah, won't be necessary, especially since Logical2u pinned it down. Thanks though!
se5a (reporter)
2010-05-31 04:06
edited on: 2010-05-31 04:18

I have an repeatable crash issue too. I'll try messing with the hospital and see if that fixes it when I next get a chance to play.

mine is completely 31.04 - world creation everything.

actually I'll quickly upload a save, then if someone is board enough they can check it out. [^]

run for about ~5min.

zergl (reporter)
2010-06-03 11:02
edited on: 2010-06-03 12:04

The original report's crash can also be prevented/postponed by forbidding all soap in the hospital area.

Forbidding the bar of rhesus macaque soap used in the first clean wound job from the left prevents the one-step crash, crashing a few steps later. Forbidding the cat soap used a few beds to the right keeps it from crashing until the rhesus macaque soap in the hospital container is picked up, carried to a patient and used.
Forbidding all soap apparently prevents the crash altogether.

The low amount of soap shown in the hospital zone inventory screen also seems to point towards my "negative amounts of soap" theory which I postulated in one of the other soap crash bug reports.

See: [^]

(Yes, I'm trying to consolidate all the soap-crash healthcare bugs in case anyone wonders.)

edit: Forbidding a certain bar of Horse Soap also prevents the crash in se5a's save.
edit: There appears to be another bar causing this crash as it happens a bit later after forbidding the first culprit.
edit: Yeah, forbidding the next bar of soap used in cleaning a patient again postpones the crash until the next clean patient job caused a crash. I saw the doctor in question walk up to a patient with a bar of soap immediately before the crash, so I chalk this crashing issue up as soap induced.
final edit (I think): Forbidding all soap in the hospital zone keeps se5a's savegame running for quite some time (I called it a day after several minutes of nothing happening).

se5a (reporter)
2010-06-04 05:53

Thanks for that Zergl - I tried removing the hospital zone from that save and it seemed to run longer, but still crashed eventually. normal dwarfs will use soap to clean themselves wont they? I guess that could be causing the crash further on.
the game does also have a goblin archer flying around on a giant cave swallow. my next test was going to be to kill that by spawning magma on it or something. but this soap thing sounds more promising.
zergl (reporter)
2010-06-04 09:26

"I tried removing the hospital zone from that save and it seemed to run longer, but still crashed eventually. normal dwarfs will use soap to clean themselves wont they?"

Medical dorfs will still use it to clean wounds outside of hospital areas as long as they have access to soap, if I remember correctly. Removing the hospital zone probably just cancels the current clean patient jobs and possibly retasks them with different bars, postponing the crash, but nothing prevents the bars from being used to clean self or a patient later on.
And yeah, ordinary dorfs will use any bar of soap not in a hospital zone to clean self, so they might be responsible as well for later crashes, but I know of at least one reported crash where a clean patient job outside of a hospital zone was the culprit.

My suggestion for a workaround would be to occasionally dump and atom smash all bars of soap (possibly using the hospital zone's inventory screen to sort through the individual bar's sizes with some micromanagement to only dump the almost used up bars) and cooking up a new batch, assuming that my theory about negative soap bar size is indeed the actual cause of the crash and not just a coincidence or side effect.
se5a (reporter)
2010-06-04 14:33

is it possible to see the size of a bar of soap?
Toady One (administrator)
2010-06-06 02:13

I fixed the save from 0001828 that had the small bar of soap, so going with the small bar located by zergl, I'm going to go ahead and mark this one as resolved for 0.31.06.

- Issue History
Date Modified Username Field Change
2010-05-16 23:08 Creidieki New Issue
2010-05-16 23:12 Footkerchief Note Added: 0006852
2010-05-17 04:28 Logical2u Note Added: 0006875
2010-05-17 04:29 Logical2u Platform 64-bit Ubuntu => 64-bit Ubuntu/64-bit Windows 7
2010-05-17 04:29 Logical2u Summary Repeatable 31.04 crash on load => Repeatable 31.04/31.03 crash on load - hospital related
2010-05-17 04:29 Logical2u Description Updated View Revisions
2010-05-17 04:30 Logical2u Relationship added related to 0001264
2010-05-17 04:37 Logical2u Note Edited: 0006875 View Revisions
2010-05-17 09:47 Creidieki Note Added: 0006888
2010-05-17 09:52 Footkerchief Note Added: 0006889
2010-05-31 04:06 se5a Note Added: 0007510
2010-05-31 04:18 se5a Note Edited: 0007510 View Revisions
2010-06-01 06:27 Ametsala Issue Monitored: Ametsala
2010-06-03 11:02 zergl Note Added: 0007615
2010-06-03 11:02 zergl Issue Monitored: zergl
2010-06-03 11:26 Footkerchief Relationship added child of 0001828
2010-06-03 11:26 Footkerchief Relationship deleted related to 0001264
2010-06-03 11:48 zergl Note Edited: 0007615 View Revisions
2010-06-03 11:50 zergl Note Edited: 0007615 View Revisions
2010-06-03 11:57 zergl Note Edited: 0007615 View Revisions
2010-06-03 12:04 zergl Note Edited: 0007615 View Revisions
2010-06-03 14:07 zergl Issue End Monitor: zergl
2010-06-04 05:53 se5a Note Added: 0007652
2010-06-04 09:26 zergl Note Added: 0007655
2010-06-04 14:33 se5a Note Added: 0007679
2010-06-06 02:13 Toady One Note Added: 0007773
2010-06-06 02:13 Toady One Status new => resolved
2010-06-06 02:13 Toady One Fixed in Version => 0.31.06
2010-06-06 02:13 Toady One Resolution open => fixed
2010-06-06 02:13 Toady One Assigned To => Toady One
2010-06-06 09:02 Footkerchief Resolution fixed => duplicate
2010-06-09 06:45 Toady One Status resolved => closed
2010-06-09 07:56 Footkerchief Status closed => resolved

Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker