Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That was also my thought. How does the world behave 100 hours into the simulation? If half the town residents have managed to get themselves killed by guards and some of the shopkeepers are gone, it's a bad outcome. Complex sims have emergent behaviors that are hard to tune.

The other thing is a bit more subtle. It's a big open world and all NPCs need to be active continuously for that sim to work. So you have a big N to squeeze into a tight per frame CPU budget. Also, things like path planning or object interaction only work if some information like object positions and pathfinding maps are kept in memory the whole time for the entire world. This sounds very challenging on a 2005 era PC.




One of the classic emergent behaviors (which I loved) that came from Dwarf Fortress was the cats dying of alcohol poisoning.

There was a patch note years and years ago about a bugfix that had to happen because all the cats were mysteriously dying in people's fortresses -- it was tracked down to the fact that cats would walk through the taverns, in which visitors would be drinking and occasionally spilling alcohol (There was a feature that had been added at one point for spilled liquids to form pools which could get on entities passing through, like getting mud on you by walking through a large puddle).

The cats also had a piece of functionality where they could self clean by licking after they became dirty with something, and would ingest some amount of it due to using their tongue to clean themselves.

The cats' fur would become damp with the alcohol as they stepped through the spills, and the cats self cleaning meant they would regularly get extremely drunk and die from the alcohol poisoning trying to clean themselves. Not intended at all, but two completely different systems colliding in an emergent behavior of interest.

I also always loved the behavior of undead zones. In them, any dead creature could be revived by dark magic in the area. It leads to the question though, what counts as a dead creature? Well, it would be anything with a tag indicating that it came from something that died. This does in fact include small bones though, or hair from a butchered animal. Fortresses in these areas would have quite the casualty rate trying to butcher a pack mule as its hair would come to life and kill the butcher.


The thing about Oblivion that the simulation tends to run up against is that hitpoints and death are an abstraction: a real human would die much more easily from the injuries that get inflicted, but also a real human would avoid a lot of problems in the first place (and have families that would take over their shop, and live in cities with more than twenty people hanging around). You run into trouble when one part of the simulation is taking things as symbolic while another part is taking it as literal. If you want it all to be literal you've got to be willing to go super deep into the emergent simulation.


>That was also my thought. How does the world behave 100 hours into the simulation? If half the town residents have managed to get themselves killed by guards and some of the shopkeepers are gone, it's a bad outcome. Complex sims have emergent behaviors that are hard to tune.

Thats why its a management sim. Dwarves take care of themselves up to a point, and that point is making adjustments to their environment to meet needs. Generally speaking the more successful you are, the deeper dwarves will reach to find needs and wants that arent fulfilled.

100 hours in you have hit population cap, and have dwarves demanding bigger and bigger churches and guildhalls.

I used to rely heavily on the "Danger room" concept, where spears are thrust up and down training dwarves in dodging. The issue is that dwarves will quite often carry their young with them, even while in the military. So you quickly end up with splattered babies, which sets off a depressive spiral in the fort.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: