Dwarf Fortress – randomly generated, persistent fantasy world
bay12games.com
bay12games.com
If anyone has any resources or links to articles, either definitive from the DW developer, or conjecture based on exploration and research, I'd love to learn more about how DF works.
There's not much published about the internals because the creators keep it to themselves.
For the un-initiated: Yes, Dwarf Fortress is a brutal game.
Here's a video telling a very famous story about tracking down a bug that involved alcoholic cats https://www.youtube.com/watch?v=VAhHkJQ3KgY
There was also a recent article about Dwarf Fortress published to the Stack Overflow blog https://stackoverflow.blog/2021/12/31/700000-lines-of-code-2...
Edit: There's really a decent amount of stuff out there, they've been making the game for almost 20 years now. So here is a talk that tries to explain DF to an audience, and does talk a little about the simulation.
https://www.youtube.com/watch?v=ykLm2o_cX9w
I adore DF and am one of those folks who enjoys playing, not just watching videos on youtube. If you do want to give it a go, make sure you find an "Intro to DF" type video and follow it. It's a big learning curve but I love the game so much, and knowing the story of it's creation over time makes me love it even more. It is truly a labor of love by two brothers who have chosen to make it their life's work.
Honestly if someone don't mind spending few bucks waiting for Steam release and incoming slew of tutorials might be a better option.
And if you do mind, well,free ascii version will eventually get the new UI too
The player is responsible for some aspects of keeping their game running efficiently.
See: https://dwarffortresswiki.org/index.php/DF2014:Maximizing_fr...
If you're intimidated by ASCII visuals, consider wishlisting the graphics release, scheduled for Dec 6, 2022: https://store.steampowered.com/app/975370/Dwarf_Fortress/
Why did Tarn need to put out a paid release?
(I think I know / I kinda remember, but hey - there's no better place to tell us why we should be helping a fellow geek)
It's probably true that if word got out that Tarn or Zack needed medical care, the donations would flow like water, but it's understandable wanting to prepare.
It bring up a lot of criticism of healthcare in the US which I don't quite understand. Yes, healthcare is expensive in the US, especially without insurance. It has been for a while, so dont be surprised when not having a regular income nor insurance puts you in a bad spot. It was poor planning as much as it is expensive healthcare.
It basically amounts to one day realizing "oh shit, $35,000/year and no health insurance isn't enough money. This is the fault of the United States."
This isn't the fault of the United States - the US has made a choice in how the game works and they weren't playing by the rules laid out for them to follow. The expected course was for them to work in some job that robs them of their free time to produce a work of this caliber and if they had done so they'd be just fine... and we wouldn't have dwarf fortress.
Beyond that, the United States doesn't owe people who make art in exchange for donations anything extra. We can argue about the merits of different healthcare systems but the point remains that they realized their plan was poor so they changed course - the United States inflicted no damage on them.
Providing correct healthcare to all definitely is a duty of any modern rich country. If Cuba can manage it so should the US. You are trying to hide how poor your healthcare system is under a thin political veneer.
It goes along with the whole "civilisation started when one human helped bind and heal the broken femur of another human", a quote which may or may not be able to be attributed to Margaret Mead.
The only thing that's usually considered otherwise is long-term stupid decisions such as smoking, etc.
They used to personally make a crayon drawing for each person who donated. They stopped in 2020, but I made sure to get one of the final ones before then: http://www.bay12games.com/support.html
My $10 was a small price to pay for all the hours of fun I got. (I'll surely buy the Steam version too though.)
So, this has been a game that's always fascinated me, though when trying to play myself I nope out within minutes.
On one hand, graphics might get me there -- and yet, even to me, it feels kinda wrong :)
I call ONI my "dollhouse."
It's such a sleeper compared to similar games. The art and sound effects really elevate it. Klei has such a unique art style and it's really shown off. Also has a much more interesting "survival" curve than most; you'll be presented with many many hours of challenges trying to get a sustainable base, without cheap tricks like ever-escalating interruptions based on quantitative progress (looking at you, Rimworld.)
Dwarf fortress is the first thing since MUDing that's really scratched the imagination itch in quite that way and, as someone who has worked in game development themselves, I think it's something that is only possible if you keep to the lowest tech. If you use words or abstract symbols then each player will fill in the details themselves, usually in their head but sometimes in artwork (see Kruggsmash as an approachable example here[1]) which can be extremely fulfilling.
I hope to see the non-ASCII version work as a gateway drug to get more people into the imagination of what they're building. And I hope this didn't come off as ranty or judgemental - each person enjoys games in different ways... but low detail art has a way of really spurring the imagination on!
So you begin to do other things, mega projects are a common one.
In one of the last times I played, some invader had broken through my defenses and killed a couple of highly respected dwarves (one of whom was a skilled fighter), but finally came face to face with a young girl dwarf who confronted him in one of the dining halls and, though she lost a leg, managed to kill him (eventually recovering to grow up to be a skilled craftsdwarf). I had a some statues made of her, and most of them came out depicting the heroic deed in different levels of detail (so of course the best one was put up in that dining hall).
There's also a sort-of-exploit related to this, where if there's a stranger in your fortress whom you suspect of having a nefarious background, you can commission artwork of them and sometimes it will reveal malicious traits about them if you examine it. The artists always seem to have perfect knowledge of their subjects.
ASCII version will get the new UI Soon™
Personally I don't think the new look they're going with will be problem with imagination for me - the new look adds just enough detail that you can spot dwarf by their look alone but there is still plenty of space to imagine how exactly the described things look
Most days I preferred ONI due having to go way out of your way to commit war crimes, whereas in Rimworld it's just clicking a couple buttons.
Long story short it got upgraded from Emacs to IntelliJ IDEA.
Also most of the DF complexity comes organically during gameplay and not all at once - if all you do is set up food source and some bedrooms you already buy yourself a lot of time to fuck around. The discoverability of systems should also be much better
Or to put it another way, if I'm pretending to manage a fortress, losing because I was too focused on expansion and didn't stock enough food and ammunition to survive a siege can be fun. Losing because I was fully prepared but forgot how to tell my minions to raise the drawbridge and man the walls is just frustrating.
But yes, the new version has an entirely redone UI to greatly organize and simplify things.
The updates here: https://steamcommunity.com/app/975370 go into more details - there's even a tutorial!
https://steamcommunity.com/games/975370/announcements/detail...
But controls, controls are ridiculous. I can't just enjoy it. And I play very hard games, indie games, Ultima Online which you need to script own things to play properly. But DF is another beast.
Like, instead of going "select bed, make bedroom, repeat 40 times", you can just make rooms, put beds, doors, etc, then just select whole area and it will make a bedroom out of each of those rooms.
camera controls are normal WASD now, most of the things can be done with mouse, there are tabs on panels and hyperlinks in legend browser and thousand other little things.
It will be coming eventually to free ASCII version too
http://www.bay12games.com/dwarves/mantisbt/view.php?id=8410
Bug title: "0008410: Crash due to zero-size weasel"
<3
in my experience, the hints at the bottom row are pretty good reminders of how to navigate the menus.
i advise you to use a keyboard with numpad, otherwise it is a mess iirc
Endlessly fiddling with Dwarf Therapist is not a rewarding use of anyone's time.
I think they're adding a similar feature to the premium release.
I agree that it isn't actually that bad, and there is (was?) a form of logic to it and it eventually became second nature.
> [..] We also have the Classic ASCII mode to support, and we are also working on Mac and Linux builds.
https://store.steampowered.com/news/app/975370/view/30990438...
I suspect that at some point things will begin to settle down and merge.
It doesn't have as much polish as Fortress mode, but it can be quite fun if you like the nethack style of "die early, die awesome, die often".
BTW made a lot of changes to the early game of Minecraft to make survival significantly more difficult, so you would wind up respawning often. At first this feels ridiculously unfair, but there's a magical thing that starts to happen the longer you play - you begin to stumble upon old bases, little caches of early game treasure (maybe just as simple as some tools or a few pieces of food).
Lots of the design of BTW was to encourage you to build - for example, certain materials like stone or packed dirt would make "roads", on which you would travel slightly faster (and critically, using up less hunger).
Over time, you would have a small network of hidey holes with roads or signposts leading back to larger bases. It gave your world a sense of history and was extremely rewarding over time - each death allowing you to claw out a small bit of advantage and control over the world.
BTW started out largely as a technology mod, letting you automate things and build better gear. So when these early game changes were introduced, they felt mean, and unnecessary, and frustrating. But anyone who could stick with it long enough would find themselves handsomely rewarded, both in in game power of creation and also in the experience of slowly conquering challenges through the things you built.
BTW's creator, who went by the handle FlowerChild, has long since left the mod community, but I remember him fondly. I learned a lot about game design from his posts outlining the decisions he made in designing the mod.
There is still a community around the mod, I think they've even carried on with the development. The period of my life where BTW was the thing for me is behind me, but I look back on it with a lot of good memories.
As a grey-haired developer who got excited about "DOS Extenders" that allowed 32-bit mode, seeing a text-mode game written as a native 64-bit application is bizarrely anachronistic.
I get a similar feeling from text-mode GUI frameworks for Rust, which allow multi-threading and 64-bit but are essentially clones of Borland Turbo Vision, where you had to be mindful to keep lists smaller than 64KB: https://github.com/gyscos/cursive
https://store.steampowered.com/app/975370/Dwarf_Fortress/
Graphical+UI/controls rewrite in few weeks!
https://store.steampowered.com/app/949790/Rogue_Bit/
It's a modern game about hacking internals of an 8-bit computer by walking a single bit through it's memory.
Visually it looks like an ASCII roguelike game, but it's actually a niche puzzle game for people who like machine language, assembly and computer internals.
Namely "The deepest, most intricate simulation of a world that's ever been created?"
For more modern DF storytelling I would encourage you to check out Kruggsmash on YouTube, in particular his Scorchfountain series: https://youtube.com/playlist?list=PLXX7Rp0iXj0l998LmVC6xIRHj...
Krugg gives due reverence to the generated descriptions of his dwarves and their world and incorporates them into his emergent storytelling and illustration in a very elegant way.
Here's my personal DF tileset - https://github.com/Hezkore/dwarf-fortress-assets
My game will have more granular demand (not just vague "you need more commercial zones"). The player will see the interior of buildings and will be able to watch their sims live their lives.
Im working on getting version 0.2 release by Q1 2023. The game is isometric now! Working on releasing a new vlog to show it off.
I developed a new path finding algorithm to build big cities. Here's an old version of the game path finding 1,000,000 units to their own unique destinations:
https://www.youtube.com/watch?v=x0HCnQqF5K4
Subreddit:
Now, because with all the talk about AI agents I was thinking about the environments, and that's when I remembered this. It very much can be inspiring, even if it's not strictly relevant technology-wise.
And once you have parameters you like, you can try different seeds.
https://dwarffortresswiki.org/index.php/DF2014:World_generat...
https://dwarffortresswiki.org/index.php/DF2014:Advanced_worl...
Also, people will post seeds and world parameters for "good worlds" they've found: https://dwarffortresswiki.org/index.php/DF2014:Worldgen_exam...
It's amusing what people consider "necessities" and "absolutely not" in embark spots; some people will never touch an aquifer, others it's not even something to look at.
And it is not "just" randomly generated. For example, the rivers flow where there are rocky paths in the terrain
Rocky paths are there because during worldgen game simulated erosion.
Erosion is made by simulated rainfall
Simulated rainfall depends in winds and location of a given terrain.
And only at the start of that chain there is "random generation".
> I guess I want more editorial choice in the level design.
Then tell your dwarves to build what you want, you can make pretty grand scale things in it.
TLDR: Code was added that allowed substances to accumulate on fur. Cats lick their fur to clean themselves. Due to the calculation used for intoxication and body weight, cats kept getting lethally drunk from walking through spilled beer and licking it off of their feet.
This level of detail leads to tons of emergent game play and stories.
The level of detail is amazing.
And because whip hit only with tiny end, it pretty much went thru any armour
https://www.bay12games.com/dwarves/mantisbt/view.php?id=2712
> fish and all other creatures are coded similar to Dwarfs for level progression, so training a skill not only improves the skill but also the relevant physical stats. Well, Carps have swimming as a skill. And they are always swimming. So within minutes of spawning every carp was a dwarf-sized mass of angry muscle and razor sharp teeth.
But when I got there I didn't really know what to do inside the sandbox.
This is because, in the event I make it over the threshold, it is ENTIRELY possible that it will become an obsession, and I don't have time for that.
There's probably some reason for it though? Anyone know?
I eventually got kind of tired of investing so much effort into a fortress that would just randomly fall apart. People say that's part of the fun but I dunno... I found that aspect a bit annoying. It also ran really poorly for me in late game and that kind of put me off too.
Great concept, the ascii is less of a problem than you'd think, but overall just a bit too much effort to keep wanting to come back for more.
DF is not hard if you follow the quickstart guide.
I did "actually played it", think the biggest thing I did was a lava cannon that flooded the area aboveground when invasion game, that was "interesting" build...
Having to relearn everything on interface stopped me from picking it up again, and from what I watched new UI look so much more user friendly
I don't allow myself to play DF any more. It's just too good.
It's getting toward that time again, I wonder how it runs on an M1.
Then I play DF for a month or so and remember just how intricate and IMPOSSIBLE it is to understand completely.
What an amazing game.
not the lame knock-off that is rimworld.