Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0011048Dwarf FortressDwarf Mode -- Jobs, Eating/Drinkingpublic2019-03-03 08:532019-03-10 22:50
ReporterTheCrazyHamsteR 
Assigned ToLoci 
PrioritynormalSeverityminorReproducibilitysometimes
StatusconfirmedResolutionopen 
PlatformOSOS Version
Product Version0.44.12 
Target VersionFixed in Version 
Summary0011048: New residents carried to hospital during first drink
Description"Urist McDwarf cancels Drink: Job item lost or destroyed."

When I started to investigate what's going on, I noticed the dwarves spill booze when they are carried to hospital while having a drink.
Steps To ReproduceHave a hospital zone, some mugs, and some barrels of booze, then wait for your dwarves to get thirsty.
Additional InformationDrinking dwarves will be carried to the hospital regardless of whether you have mugs, but they will spill the drink only if drinking from a mug.

The reason of being brought to hospital likely has something to do with the inebriation syndrome.
TagsNo tags attached.
Attached Files

- Relationships
related to 0010115resolvedLoci "cancels Drink: Job item lost or destroyed." 

-  Notes
(0039268)
Loci (manager)
2019-03-03 15:03

Inebriation cause unconsciousness, and unconsciousness causes spilled drinks and trips to the hospital. To my knowledge, this behavior is intentional.
(0039270)
TheCrazyHamsteR (reporter)
2019-03-06 02:12

The dwarf didn't fall unconscious, and even if, the interruption message would be "Urist McDwarf cancels Drink: Unconscious".

The dwarf was grabbed while still drinking, and the interruption happened exactly at that moment. Being grabbed while drinking from barrel gave no interruption at all. The dwarf showed no syndrome symptoms and immediately walked away after being delivered to the hospital.
(0039271)
PatrikLundell (reporter)
2019-03-07 02:07

There are two similar cases:
1. The intended one, which is where a tavern keeper (or tavern performer) shoves booze down a patron's throat, and the patron goes unconscious due to alcohol poisoning, which also spills the booze (that's been drunk?) on the floor as the cup falls together with the patron. This is the case of the report referenced as a "duplicate".
2. "Initiation rites": This is presumably a bug. More or less every newly accepted resident suffers from the cancellation message when drinking for the first time (including outside of a tavern, i.e. on their own), they're grabbed by the arm and marched to the hospital, after which both parties leave immediately. This bug has been discussed in the forum, but I don't know if there's any prior bug report for this case.
(0039275)
Loci (manager)
2019-03-09 07:56

Please upload a save demonstrating this problem to DFFD ( http://dffd.bay12games.com/ [^] ) and post a link to it here.
(0039279)
PatrikLundell (reporter)
2019-03-10 03:29

Save: http://dffd.bay12games.com/file.php?id=14294 [^]

"11 Merc Drink Spiller" cancelled drink, and the save was made immediately after the announcement was seen. Continuing from there "Farmer 1" marches Drink Spiller off to the hospital, and both leave immediately. Drink Spiller has the "Drink" job active throughout the process.

There are also Drink Destroyer 2 - 5 in the save, and all of those were accepted after Drink Spiller, so they're presumably going to drink in the not too distant future. I've never seen the spilling itself, only the results after the announcement, and haven't bothered too much as the bug is fairly benign (an annoying announcement, a unit of lost booze, some lost dorf time, and possibly a "help other" thought).

The save is a PSV world DFHacked during world gen to make all glaciers evil, a specific plain biome neutral, and all surface biomes to contain all flora and fauna legal to them.
Goblin raws have been changed to have them starting on glaciers only, bananas to yield wood (to get them to appear at all [separate bug report]), Gremlins to be Kobold sized (so they can be given clothes while waiting for citizen application, to avoid them going bonkers). All attack triggers have been lowered, number of dwarf civs lowered, and max elven site size increased (in a failed attempt to raise elven pop to a level where they send out visitors in reasonable numbers). DFHack has been active. I may have missed some modification in the list above, but I don't expect anything done to have any bearing on this bug.

It can be noted that there's a tame ogre and a tame goblin in the fortress. Both arrived as such, presumably from a conquered goblin site, and are reported in a separate bug report. Similarly, there are a fair number of bugged visitors on the surface. They're members of various performance troupes who weren't present when those performance troupes applied for residence (again, a separate bug report). The fortress is effectively dead (continued only to catch this bug), as it will crash as soon as any militia is created (e.g. to do something about the undead giant chameleon on the surface) due to the bug that corrupts equipment when raids are made (an impressive effort has been made to identify crash saves suffering from this bug).
(0039280)
Loci (manager)
2019-03-10 11:18
edited on: 2019-03-10 12:06

Thank you for the save. When I view "Drink Spiller", his job is "Mercenary" for the trip to the hospital, and his wounds screen shows impaired lung function (another intentional effect of inebriation). I'm still of the opinion that the spilling of goblets when interrupted while drinking is intended behavior.

However, that doesn't explain why this problem is only experienced with new residents, or why the [SYN_NO_HOSPITAL] token is being ignored in this case.

*edit: I watched "Drink Destroyer 2" start drinking. The "Recover Wounded" job was generated after "Drink Destroyer 2" was contaminated with something (probably tears from crying), but no lung impairment was evident at that point. The drink-spilling occurred when the rescuing dwarf grabbed the drinker. Also, the "Drink" job was initially removed, but it reappeared during the trip to the hospital.

(0039283)
PatrikLundell (reporter)
2019-03-10 22:50

Thanks for looking at the issue. It can be noted that I have no poisoners, so all of these events take place in the drinks stockpile, rather than in the tavern, although I've seen it mentioned in the past that dorfs can drink themselves to unconsciousness by self serving.

I agree the issue isn't the drink spilling itself, but rather the odd rescue interruption that causes the spilling.

I haven't taken a closer look at rescue tasks, so I don't know if it's normal that the rescued dorf is marched to the hospital rather than carried, as I'd expect, i.e. being in the inventory of the rescuer.

- Issue History
Date Modified Username Field Change
2019-03-03 08:53 TheCrazyHamsteR New Issue
2019-03-03 15:03 Loci Note Added: 0039268
2019-03-03 15:03 Loci Relationship added duplicate of 0010115
2019-03-03 15:03 Loci Status new => resolved
2019-03-03 15:03 Loci Resolution open => duplicate
2019-03-03 15:03 Loci Assigned To => Loci
2019-03-06 02:12 TheCrazyHamsteR Note Added: 0039270
2019-03-06 02:12 TheCrazyHamsteR Status resolved => needs feedback
2019-03-06 02:12 TheCrazyHamsteR Resolution duplicate => reopened
2019-03-07 02:07 PatrikLundell Note Added: 0039271
2019-03-09 07:53 Loci Reproducibility always => sometimes
2019-03-09 07:53 Loci Status needs feedback => acknowledged
2019-03-09 07:53 Loci Resolution reopened => open
2019-03-09 07:53 Loci Summary Spilling booze => New residents carried to hospital during first drink
2019-03-09 07:54 Loci Relationship replaced related to 0010115
2019-03-09 07:56 Loci Note Added: 0039275
2019-03-09 07:56 Loci Status acknowledged => needs feedback
2019-03-10 03:29 PatrikLundell Note Added: 0039279
2019-03-10 11:18 Loci Note Added: 0039280
2019-03-10 11:18 Loci Status needs feedback => confirmed
2019-03-10 12:01 Loci Note Edited: 0039280 View Revisions
2019-03-10 12:06 Loci Note Edited: 0039280 View Revisions
2019-03-10 22:50 PatrikLundell Note Added: 0039283


Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker