News for hackers. Stuff that matters.
Re:How Dwarf Fortress is built by mabbo on Thursday July 29, 2021 @01:21PM (#27998894)
> What’s your favorite bug and what caused it?

> A: It’s probably boring for me to say, but I just can’t beat the drunken cat bug... That was the one where the cats were showing up dead all over the tavern floor, and it turned out they were ingesting spilled alcohol when they cleaned their paws.

I think that bug explains very well just how deeply complex Dwarf Fortress really is. Drinks can be spilled. Some drinks have alcohol. If cats step in something it sticks to their paws. Cats clean their paws, causing them to ingest what's on them. Enough alcohol will kill a cat. Put together: dead drunken cats.

Re:How Dwarf Fortress is built by devenvdev on Thursday July 29, 2021 @05:40PM (#28001834)
Other amusing DF bugs:

Dwarfs trying to clean their inner organs (dwarf wounded, doctor closes the wound, dirt stay inside)

Undying children in the moat water (for years... just swimming there...)

Killer carps (there was a long time during which carps were really overpowered because constant swimming was buffing them up really good, dwarfs getting close to water sources were eaten by carps)

Catplosions (Tarn loves cats, cats reproduce, too many cats kills DF performance)

Re:How Dwarf Fortress is built by kd0amg on Thursday July 29, 2021 @06:26PM (#28002225)
Catplosions (Tarn loves cats, cats reproduce, too many cats kills DF performance)

This was a particularly insidious one because the usual strategy of culling excess livestock doesn't work out when applied to dwarfs' pets (pets can't be designated for slaughter, and other means of making pets die will make their owners upset). With most animals, you can avoid the pet adoption issue by just not marking them as available for adoption, so you wouldn't have to worry about a dogsplosion, sheepsplosion, etc. Cats do not become pets through that system. Instead, a cat adopts a dwarf.

Re:How Dwarf Fortress is built by a1369209993 on Thursday July 29, 2021 @08:20PM (#28003104)
Note that the obvious strategy of not having any cats at all doesn't work well because cats are the most/only easily-available HUNTS_VERMIN creature, so you need some around to protect your food stockpiles.

A somewhat effective solution is to use male cats for stockpile protection, and keep female cats caged (which IIRC stops both adoption and breeding) and only let one out at time (cage any resulting (female) kittens immediately). There's not (yet) any simulation of evolutionary pressure to adopt a owner quickly, so you can just prefer kittens that do so for the next breeder when the current one dies of old age.

Gelding (neutering) the male cats also works, but is less sustainable if you don't have a reliable source of replacement cats from migrants or trade caravans for when the current ones die of old age. Spaying is not supported AFAIK.

You can also just remove the ADOPTS_OWNER token via raws editing.

Re:How Dwarf Fortress is built by ethbr0 on Friday July 30, 2021 @12:06PM (#28009450)
I. M.> John, the kind of control you're attempting simply is… it's not possible. If there is one thing the history of evolution has taught us it's that life will not be contained. Life breaks free, it expands to new territories and crashes through barriers, painfully, maybe even dangerously, but, uh… well, there it is.

H. W.> You're implying that a group composed entirely of female animals will… breed?

I. M.> No. I'm, I'm simply saying that life, uh… finds a way.

Re:How Dwarf Fortress is built by bombcar on Thursday July 29, 2021 @06:36PM (#28002312)
Verily, the dwarf would pick up a cat to take it to the slaughterhouse, the cat would adopt the nearest dwarf (the one carrying it) and then the dwarf would slaughter the cat.

And get sad because his pet died. And then eventually start tantruming and a tantrum spiral would begin.

Re:How Dwarf Fortress is built by alpaca128 on Friday July 30, 2021 @05:43AM (#28006212)
> And then eventually start tantruming

It's so crazy when you try to make dwarves feel great all the time and then the simulation comes up with some completely insane causal chain that messes up everything.

I once tried to isolate a miasma problem with a wall. Which works fine, unless the dwarf tasked with building the wall decides he needs a break, sleeps on the floor and then gets grumpy because he just slept on a hard surface in a smelly area.

Re:How Dwarf Fortress is built by bombcar on Friday July 30, 2021 @09:27AM (#28007715)
This is why I always spent an inordinate amount of effort on my dining hall - get that thing fancy enough and the dwarves could endure quite a bit before they flipped.
Re:How Dwarf Fortress is built by peterlk on Thursday July 29, 2021 @11:21PM (#28004084)
Since no one else has mentioned it, I feel compelled to mention thermonuclear catsplosions.

My understanding of the legend is that a player began experiencing a catsplosion, and wanted to find a way to get rid of the cats. So he started tinkering with the game a bit, and eventually tried setting the blood temperature to a very high number. This killed the cats, but also had the unfortunate side effect of setting them on fire. And the cats were multiplying faster than they were dying, so there was a massive, expanding fireball of burning cats.

If this legend is wrong, I'd love to hear another version.

http://dwarffortresswiki.org/index.php/DF2014:Catsplosion

Re:How Dwarf Fortress is built by 22c on Thursday July 29, 2021 @09:11PM (#28003391)
>Killer carps

TIL this was a bug and how it was a bug! Wow! Back when I played DF it really seemed like it was simply accepted folklore that the carps in DF were really strong and the common advice was don't build your base too close to rivers. Having not played in a long while, I had always thought this was intended.

Re:How Dwarf Fortress is built by ethbr0 on Friday July 30, 2021 @12:11PM (#28009496)
I had a roommate in college who loved to play World of Warcraft.

At some point, we got into a discussion over art style and realism. He made an observation that still sticks with me.

"The style sets expectations. When something breaks a real world law of nature or logic because of a bug, it doesn't feel as jarring, because the style is already cartoon-y."

It made me think about just how malleable expectations are with regards to game systems. Train a player to expect realism, and breaches become infuriating. Train a player to expect the unexpected, and the unexpected becomes intriguing and fun.

(More modern tip of the hat to Fortnite)

Re:How Dwarf Fortress is built by setr on Saturday July 31, 2021 @04:09AM (#28016336)
I think it’s more about internal consistency. If a world hasn’t said something about it (or hasn’t shown a derivation of it — e.g. gravity presumably exists, because all objects shown have been affected by it), then you’re free to do whatever (e.g. introduce magic as a mechanism). But once done, it must continue to hold true — else the rules are bullshit, and we expect nothing to behave in a manner that isn’t arbitrary.

Even fortnite has a kind of logic to it, haphazard as they may be (though it’s also so loosely defined, that I find it completely uninteresting — it’s a dumpster fire of cosmetic items with no real theme or nuance; this is because its more a modern shopping mall [ an arbitrary context for social groups ] than a game system).

It’s why simpsons can revert (nearly) all damages every episode (that’s simply the rule of the world), but if it tried to violate that rule and persisted those changes in any meaningful way, it would feel like complete nonsense. (They do however do it for self-referential jokes and such, but these aren’t persistence so much as temporary anomalies) At best, they’re allowed to forget something exists altogether.

Re:How Dwarf Fortress is built by rfrey on Thursday July 29, 2021 @10:31PM (#28003819)
> Catplosions

Sounds like the answer is more taverns.

Re:How Dwarf Fortress is built by actuallyalys on Friday July 30, 2021 @12:52AM (#28004599)
> Dwarfs trying to clean their inner organs (dwarf wounded, doctor closes the wound, dirt stay inside)

I'm curious if the fix was to just remove the dirt from the simulation or if Tarn actually went ahead and simulated infections (or more realistically, used an existing infection mechanic).

Re:How Dwarf Fortress is built by fogihujy on Friday July 30, 2021 @01:05AM (#28004666)
DF does simulate infections. It often kills dwarves months after being wounded, if they dont get their wounds properly cleaned (with soap).
Re:How Dwarf Fortress is built by egypturnash on Friday July 30, 2021 @12:49PM (#28009871)
I live in a city with a lot of stray cats and lemme tell you, "catsplosion" is pretty realistic. We narrowly averted one by getting the ones that live under our house fixed.
Re:How Dwarf Fortress is built by pavel_lishin on Thursday July 29, 2021 @03:06PM (#28000136)
Reminds me a little bit of something strange I saw in Rimworld - all of my dogs were developing liver cirrhosis!

It turns out that my dogs weren't alcoholics - it just happened to be that beer was the only food source they had zoned access to, so they were drinking it out of hungry desperation, and while it gave them enough calories to live on, it also gave them cirrhosis.

Re:How Dwarf Fortress is built by smoldesu on Thursday July 29, 2021 @07:24PM (#28002746)
One time a raider broke into my animal pen and started attacking my animals, but got shot down by a turret before they could cause any lasting damage. I didn't pay it any mind, but that raider had brought in a good chunk of Yayo (the game's cocaine analogue) that had scattered around in the pen when he died. By morning I had a herd of inebriated megasloths hunting down my colonists en-masse.
Re:How Dwarf Fortress is built by OrsonSmelles on Thursday July 29, 2021 @04:57PM (#28001405)
Yeah, I've definitely accidentally created packs of booze hounds that way. Definitely a head-scratcher before you get what's going on.
Re:How Dwarf Fortress is built by publicola1990 on Thursday July 29, 2021 @10:39PM (#28003873)
In reality, the beer might have killed the dogs, since the hops in the beer is toxic to dogs.
Re:How Dwarf Fortress is built by addingnumbers on Friday July 30, 2021 @12:10PM (#28009489)
Hops outside of beer is toxic to dogs, it causes malignant hyperthermia. It's a problem for brewers who leave their hops where the dog can get at them (usually spent hops in the trash or a compost heap).

Beer brewed from hops doesn't cause hyperthermia, it's harmful to dogs because they experience the same effects of ethanol poisoning that humans do (e.g. cirrhosis), at much smaller doses.

Re:How Dwarf Fortress is built by ericschn on Thursday July 29, 2021 @01:46PM (#27999215)
The beginning of this video https://youtu.be/VAhHkJQ3KgY has Tarn Adams speaking about this bug.
Re:How Dwarf Fortress is built by mabbo on Thursday July 29, 2021 @01:49PM (#27999262)
This is my favourite bug story I have ever heard. And told so well.
Re:How Dwarf Fortress is built by Agentlien on Friday July 30, 2021 @01:10AM (#28004699)
I love that video. I tend to link it when I want to explain Dwarf Fortress to someone.
Re:How Dwarf Fortress is built by partomniscient on Thursday July 29, 2021 @02:21PM (#27999694)
10 years ago, there was this article about another unexpected behaviour:

https://www.nytimes.com/2011/07/24/magazine/the-brilliance-o...

Re:How Dwarf Fortress is built by ygra on Thursday July 29, 2021 @05:30PM (#28001731)
Noita also had a fun one during early development: deer drowning in their own urine.

And now that I dug up the Reddit AmA thread (https://old.reddit.com/r/Games/comments/d7cqjz/we_are_nolla_...), there's a comment there about the drunken dead cats ...

Re:How Dwarf Fortress is built by b0rsuk on Friday July 30, 2021 @01:11AM (#28004702)
Noita simulations are better told as animated gifs.
Re:How Dwarf Fortress is built by AnIdiotOnTheNet on Thursday July 29, 2021 @01:36PM (#27999073)
Unfortunately it remains unexplained (by the article) why this is considered a bug. It would be unethical to test, but this seems like perfectly cromulent behavior one might actually see in real life.
Re:How Dwarf Fortress is built by alexander-litty on Thursday July 29, 2021 @03:34PM (#28000422)
Liquid items are funny in the game.

When you look at an item listing and you see something like “Mead”, that is truly all the item is —- it isn’t a cup of mead, it’s just a vague amount of the liquid mead itself, as if your hand was the only thing keeping it from hitting the ground.

But there are containers that can hold your liquid. You have mugs and goblets that hold one quantity of “Mead”, giving the impression that one count of mead is like a generic serving size. You also have barrels and pots that hold stacks of “Mead”.

Creatures are kind of like walking containers and have their own detailed inventories. Among the things you’d expect to find like armor, weapons, and books, you might also find a “coating of tears” on a crying dwarf, or perhaps a “spattering of blood” on a murderous elf.

They’re not just static inventories for the fun of a story, creatures do interact with them and use them. Dwarves covered in a vomit item will (hopefully) put any available soap in their inventory and use it to clean themselves in water, for example.

Cats are simple and just clean themselves with no water or soap needed. The catch with them is that they ingest whatever they have cleaned off of them.

So, putting all this together: The problem was that cats pick up a whole “serving size” of alcohol and proceed to clean themselves, ingesting the entire serving. The bug surrounds the vagueness of liquid sizes.

And it was fixed accordingly! Cats are still vulnerable to the effects of self-cleaned alcohol, but the strength is now proportional.

https://www.bay12games.com/dwarves/mantisbt/view.php?id=9195...

Re:How Dwarf Fortress is built by db48x on Thursday July 29, 2021 @03:47PM (#28000557)
My favorite feature in Dwarf Fortress is that all eyelids automatically clean their associated eyeball, just so that players don’t post about how their dwarves have vomit on their eyeballs.
Re:How Dwarf Fortress is built by PeterisP on Thursday July 29, 2021 @05:09PM (#28001535)
Ahh, so if a dwarf would have a missing eyelid because of combat or some mining accident, then they could have vomit on their eyeballs.
Re:How Dwarf Fortress is built by db48x on Friday July 30, 2021 @01:09AM (#28004684)
Yes! And the next time they cleaned themselves, they would use soap on that eyeball, if it was available.
Re:How Dwarf Fortress is built by paavohtl on Thursday July 29, 2021 @01:39PM (#27999122)
IIRC the actual bug was that cats licking their paws made them consume an entire tankard's worth of beer with each lick, which made them drunk (and dead) with just a few licks.
Re:How Dwarf Fortress is built by Arrath on Thursday July 29, 2021 @02:08PM (#27999539)
Yeah this is what I recall being the case as well.
Re:How Dwarf Fortress is built by MikeTheGreat on Thursday July 29, 2021 @03:10PM (#28000173)
My experiences with cats (at least in my own life) is that cats prefer not walk into an area with a sticky floor if they can avoid it.

Clearly there's a bug here where the cat will keep wandering around on the sticky floor, and then keep consuming the alcohol off it's paws.

The obvious fix is to add a feature wherein different creatures have preferences about where they go next, and then use that to have the cats avoid the bar floor if they can.

As a bonus you can include stuff like "Cats don't like hanging out in crowded areas" so that they'll also stay out of the main hall when the army is gathering to muster forth, etc.

(/s, but only slightly :) )

Re:How Dwarf Fortress is built by Filligree on Thursday July 29, 2021 @03:20PM (#28000274)
No need for the /s. This is precisely the level of simulation Toady is hoping for, and there are many equivalent examples already.
Re:How Dwarf Fortress is built by db48x on Thursday July 29, 2021 @03:50PM (#28000593)
Good suggestion. It would occasionally be nice if the _dwarves_ would avoid stepping in things and tracking it all over the place. The only reason that the cats were in the tavern in the first place is that pets follow their owner* around.
Re:How Dwarf Fortress is built by philipov on Saturday July 31, 2021 @04:58PM (#28021504)
The * refers to the fact that cats are the owners, and dwarves are their pets. A truly accurate understanding of how cats work.
Re:How Dwarf Fortress is built by queuebert on Thursday July 29, 2021 @03:51PM (#28000630)
And this is how you get 700k lines of code.
Re:How Dwarf Fortress is built by shrimpx on Thursday July 29, 2021 @03:59PM (#28000722)
The bug was a numerical error that would cause cats to drink something like the equivalent of a pint of beer for every lick, and therefore die prematurely. He talks about it in this video:

https://www.youtube.com/watch?v=VAhHkJQ3KgY

Re:How Dwarf Fortress is built by yung_steezy on Thursday July 29, 2021 @01:52PM (#27999302)
I agree these types of features really embiggen the game
Re:How Dwarf Fortress is built by beamatronic on Thursday July 29, 2021 @04:41PM (#28001232)
They're perfectly cromulent features.
Re:How Dwarf Fortress is built by ant6n on Friday July 30, 2021 @12:30AM (#28004457)
careful, its unpossible not to get downvoted with these kinds of jokes (err, low effort comments).
Re:How Dwarf Fortress is built by spoonjim on Thursday July 29, 2021 @02:36PM (#27999865)
Cats in bars don’t die of alcohol poisoning regardless of the amount of beer spilled on the floor.
Re:How Dwarf Fortress is built by Filligree on Thursday July 29, 2021 @03:21PM (#28000292)
The actual bug here was a mistake in handling of liquid volume. The cats were ingesting a tankard’s with with each lick, and they’re smaller than dwarves, so that killed them.
Re:How Dwarf Fortress is built by praptak on Thursday July 29, 2021 @04:46PM (#28001292)
I read about a cat who used to visit a pub and learned to lick beer from under taps. The cat got banned from the pub for its own good but I don't believe it was anywhere close to poisoning.
Re:How Dwarf Fortress is built by kingofclams on Thursday July 29, 2021 @07:17PM (#28002672)
Do you have a source for this?
Re:How Dwarf Fortress is built by praptak on Friday July 30, 2021 @09:05AM (#28007493)
No, I read this a long time ago in a paper press article and I cannot dig up anything electronic.
Re:How Dwarf Fortress is built by AndyMcConachie on Thursday July 29, 2021 @02:59PM (#28000059)
One of my favorite Twitter users.

https://twitter.com/DwarfFortBugs

It's just funny Dwarf Fortress bugs.

Re:How Dwarf Fortress is built by cpeterso on Thursday July 29, 2021 @03:50PM (#28000603)
A similar Twitter account publishing funny bug fix notes from other games:

https://twitter.com/TheStrangeLog/

Re:How Dwarf Fortress is built by suzzer99 on Thursday July 29, 2021 @03:47PM (#28000549)
LOL - 5386: Imprisoned Vampire Elected Mayor
Re:How Dwarf Fortress is built by a1369209993 on Thursday July 29, 2021 @10:27PM (#28003786)
> Imprisoned Vampire Elected Mayor

That's not even (necessarily) a bug: whether convicts can win/hold elected positions is a aspect of applicable law (albeit a weird one), vampires (IIRC) have high social stats and skills and so are well-postioned to win elections in general, and dwarves (and for that matter humans) don't necessarily update their opinion of someone just because they were convicted of a crime (especially if they don't hear about the conviction, which (knowledge transmission) I recall was added to the game modeling at some point). So this is like a headline "Bob Smith Convicted of Murder; Wins Mayoral Election Anyway", which seems weird-but-possible in real life.

Re:How Dwarf Fortress is built by seanhunter on Friday July 30, 2021 @01:13AM (#28004708)
Yeah exactly. Also top tip is if you actually catch a vampire in DF a known thing is to imprison them in a room with all your switch levers in and a desk and chair so you can make them your accountant. They don't kill anyone that way and can do useful work.
Re:How Dwarf Fortress is built by VectorLock on Friday July 30, 2021 @12:40AM (#28004521)
Space Station 13 is another game with a lot of serendipitous emergent gameplay but with a slightly less steep (but still insane) learning curve and multiplayer antagonist fun.
Re:How Dwarf Fortress is built by Psyonic on Thursday July 29, 2021 @07:20PM (#28002707)
I don't know much about Dwarf Fortress, but why is that a bug? It sounds like it follows reasonably well from the behavior in the game.
Re:How Dwarf Fortress is built by resonious on Thursday July 29, 2021 @09:36PM (#28003523)
It sounds like the actual bug was about quantity. Walking on the tavern floor resulted in 1 entire serving of beer on the paws, and cleaning resulted in ingesting that serving.
Re:How Dwarf Fortress is built by markus_zhang on Thursday July 29, 2021 @01:37PM (#27999086)
Not sure what's in the code, but I think each cat (which is some sort of entity by itself) is composed by body parts, which at the lowest level owns a bunch of attributes/components. Would that make sense?
Re:How Dwarf Fortress is built by pixl97 on Thursday July 29, 2021 @02:20PM (#27999690)
The bug in this case was the minimum alcohol value a cat could like from its paws was above the cats LD100, so if they licked their feet when soaked in beer they would die.
Re:How Dwarf Fortress is built by markus_zhang on Thursday July 29, 2021 @02:40PM (#27999905)
Ah, that's interesting, so it's actually a bug. But yeah it shows the sophisticated system underneath.
Re:How Dwarf Fortress is built by Abishek_Muthian on Friday July 30, 2021 @03:53AM (#28005556)
>Enough alcohol will kill a cat

That's what intrigues me, Not played the game but this must because there were a list of things which could get the cat killed right? Then how come this is an unexpected bug?

Re:How Dwarf Fortress is built by L-four on Friday July 30, 2021 @04:05AM (#28005627)
The bug was the volume ingested when the cat cleaned it's self, was incorrectly calculated to be a whole standard drink.
Re:How Dwarf Fortress is built by Abishek_Muthian on Friday July 30, 2021 @08:47AM (#28007361)
Oh wow, that makes sense. Thanks.
Re:How Dwarf Fortress is built by 7373737373 on Thursday July 29, 2021 @02:16PM (#27999637)
I wish there was a description of how this works technically
Re:How Dwarf Fortress is built by mabbo on Thursday July 29, 2021 @02:17PM (#27999647)
ericschn below has a link to a video of Tarn explaining it. It's wonderful.
Re:How Dwarf Fortress is built by quickthrower2 on Thursday July 29, 2021 @11:17PM (#28004065)
Sounds like it’s not a bug but working as intended
Re:How Dwarf Fortress is built by azernik on Friday July 30, 2021 @12:23AM (#28004423)
The bug was the quantity. Cats that walk around in a place with spilled beer will indeed lick themselves clean, but the amount of beer ingested is tiny.

Imagine getting drunk by licking beer residue off your hands.