Hacker News new | comments | ask | show | jobs | submit login
Dwarf Fortress 0.42.01 released (bay12games.com)
330 points by robinhoodexe on Dec 2, 2015 | hide | past | web | favorite | 165 comments

For anyone who is thinking about giving it a spin for the first time, do yourself a favor and don't get this .01 version. Either wait for a few patches or download the far more stable and mature 0.40.24 (http://www.bay12games.com/dwarves/older_versions.html)

Dwarf Fortress is basically a perpetual beta with lots of major bugs as it is, but especially brand new major versions like this one usually have multiple game-breaking bugs, including crashes, corrupted saves, etc. It would be a shame if people willing to give it a try would give it up due to the poor quality of the initial release of a new major version.

Dwarf Fortress is a truly unique game and really worth putting in the effort to learn simply due to the stories it generates as you play.

Here's an example of a story that happened to me. https://www.reddit.com/r/dwarffortress/comments/1mb0cw/the_s... Note this story is in no way embellished by me. Everything described there was actually simulated within the game.

Against my better judgment I downloaded this and started it up. World-gen seems to be crashing more than half the time (but not every time). Then it crashes most of the time in the "Updating World" phase when you try to start a game, before the embark site selection screen. When I did get it to embark, it crashed in the first minute. So, yeah - wait for patches.

What the game actually crashing or was world gen just restarting with a different seed?

World gen works with different parameters and will scrap worlds that are generated with in compatible conditions (e.g. There aren't enough evil biomes to support the minimum number of goblin fortresses).

I mean actually crashing.

This is the kind of story that makes me think that when all human life will have disappeared from Earth, an alien civilization would be able to find artifacts of the world we live in by digging into still-running instances of Dwarf Fortress.


You might even want to go a little further back from 0.40.24 to start out. The game has grown and evolved over time, and some of the recent features raise the price of entry. (These days, for example, you need soap production and a hospital up and running before the beginning of your second year...)

I've never had to produce soap even during extended sieges. The only instance it would have helped in was with a FB that had poisonous blood (and killed half my fortress). I always felt that the medical aspects were a bit too easy.

And too bugged - last I checked, hospital zones still take unlimited amounts of cloth - even stealing it from visiting caravans.

The game looks pretty light on graphics... can't I try it out somewhere online from my browser?

edit: some quick googling led me to this: https://www.rollapp.com/app/dwarffortress

Looks like you can't save but at least I can get a quick idea of how it feels like

It's light on graphics, but not on processing power. There's an immense amount of calculation and simulation going on.

Each cycle calculates ridiculously detailed things like the temperature of the rear left femur of a water buffalo passing through.

Is that an exaggerated example or an actual thing that happens?

No, it's not exaggerated. It doesn't actually go so far as to call it a femur, but it does indeed keep track of the temperature of the left rear upper leg bone, as far as it is distinct from the temperature of the left rear upper leg's muscle, fat, skin or hair layers. After all, if the water buffalo were to stray into the path of a dragon's fiery breath, or a stream of molten lava, then it's vital that it be able to tell you whether the hair has burnt, the fat has melted, etc.

You can turn off temperature in the config file if it takes too much cpu time though, in which case everything just has an assumed temperature, with no heat flowing around to change it.

Pardon me while I pick my jaw off the floor. I had heard stories about the random instances of absolutely obsessive attention to detail when modeling the physics/chemistry of things in the game, but did not expect anything like that.

Out of curiosity, how do details about these things become known if the code is not open sourced? Is it in official documentation somewhere? Is there any sort of list of these ridiculous examples of awesomeness?

Through a combination of playing, reading bug explanations, and modding the game through the raw text files, which define everything from what types of organs a creature has to the different types of cheese that can be made from it's milk.

Since the learning curve is high, the best way to start understanding it is to first learn how to play. From there you can start tinkering with the available mechanics.

This aspect of it is fairly easy to observe from inside the game; the Health screen goes on for three pages of possible symptoms, diagnoses, treatments, etc. This is just an overview, arranged like a spreadsheet with a row for each dwarf (and their pets and livestock) and a column for each symptom and so on.

It also tracks nerves and blood flow in a generalized way; any strike which penetrates or cuts the tissue layers has a chance of damaging the nerves in that body part. Nerve damage may or may not heal with the rest of the wound, and that will cause chronic infirmity or paralysis. Blood loss can cause dizziness or loss of consciousness, etc.

The combat logs are quite thorough, and after your first combat (which includes hunting and sparring) you'll quickly see how each actor is choosing from a "menu" of possibilities that varies from moment to moment. If one combatant loses a hand, they won't be able to strike with it, and nobody else will be able to target it with an attack.

If you then play the Adventurer mode, which is part of the same game but played as an individual character's perspective, you can see those menus reified as actual menus for you to choose from. Some of them are generic: you can swing your sword with or without targeting a specific body part. Others are much more specific. If your weapon gets stuck inside your opponent, you have the option of twisting it to cause pain (and probably more nerve damage).

In one game I played I fought a megabeast which had some kind of contaminated blood. My dwarves won the fight, but tracked the blood all over my fortress. I had them cleaning it up, but couldn't keep on top of it; eventually it was everywhere. A while later I noticed that a significant fraction of my dwarves and animals had rotting wounds on their feet...

The development log (http://www.bay12games.com/dwarves/index.html) and the game data files (which are all just text) also supply a lot of information, but they're not required reading; all of these details are pretty visible in the game. This is one of the things that makes the game so rewarding. Even when you lose a fort you can figure out what happened, and you can figure out how to avoid it or solve it next time.

They simulate the dwarves' individual teeth..

(not sure about water buffalo femurs though, but I wouldn't be surprised)

If you ever wanted to see what an ASCII game with framerate issues would be like, install a copy of DF and load up a big fortress.

This is misleading because in DF usually when talking about frame rates we refer to how fast the game's cycles are progressing (and this can get slow), while your reference to graphics implies frame rate in terms of graphical computation. The game could redraw at 60 fps all the time, it just wouldn't have anything to update until it was done calculations, and that is the bottleneck here.

Why is it misleading? Not every instance of slowdown in a 3d game is because the graphics are too intensive to maintain the framerate, there are instances of insufficient CPU time.

Watch some lets-play videos perhaps?

Not as engaging as the story of Boatmurdered, but amusing nonetheless.

If you like DF stories, check out Bravemule's Matul Remrit or Bronzemurder.

Roomcarnage is the ongoing state of the art


> Before the end of the first month, a weight is lifted off my shoulders. The dwarves will still gain unhappy thoughts when caught in the freakish weather, but compared to some of the procedurally generated horrors I've dealt with in the past, elf blood blizzards look like a fluffy wambler infestation.

> Besides, an active volcano comprised entirely of ice and coated in crimson snowdrifts of frozen gore? Fucking metal. I love this game.

I love Dwarf Fortress.

My #1 recommendation is to play along with a youtube "let's play". Otherwise you get lost pretty fast.

Amazing story. Did you not know she was pregnant when you decided to sacrifice her? Did she have the baby still born? I've never played the game but almost want to now.

By "The dwarf was a mother carrying a child" I believe the OP means that the dwarf was carrying a baby in her arms. Maternal dwarves are rather infamous for carrying their infant children into harrowing situations, e.g. when conscripted into a militia and sent out to slay dragons (though they're just as apt to give birth right there on the battlefield).

This is correct. She was carrying a baby with her - a fact I couldn't immediately see because it was only one dwarf icon walking around. If I had checked her details, I would have seen it. When the high pressure water hit, the baby was basically blasted out of her arms and bashed against the wall... :-(

> It would be a shame if people willing to give it a try would give it up due to the poor quality of the initial release of a new major version.

I appreciate the intent but when, in the same message, you say:

> Dwarf Fortress is basically a perpetual beta with lots of major bugs as it is, but especially brand new major versions like this one usually have multiple game-breaking bugs, including crashes, corrupted saves, etc.

you are actively dissuading everyone from ever trying the game.

I think what he meant is that the game is usually at beta quality - which is to say, it has funky bugs sometimes but it's rare that it corrupts your saves or lights your computer on fire - so this "beta" release is actually closer to another piece of software's alpha level of quality.

I'd call this release an alpha. Either pick up the previous release, which is solidly in stable-beta territory and is only not an RC because DF's features list is approximately as long as the equator, or wait a bit until this alpha reaches beta status again.

Is there a beta vs alpha scheme for the versions that would designate a good "starters" release?

Go with the previous version before this release, 40.24

While getting a handle of the basics of the game you really won't miss out on any of the new features in the latest version. They're at a somewhat more advanced level and you'll be spending your time trying to figure out the menus and how to not die of starvation and thirst, and less concerned with what instrument bards should play.

This story is the most I've ever heard about DF. I'm suddenly incredibly curious about what this game is all about. Thanks for sharing.

I remember the overpopulation of Mothmen. It was terror.

This comment, while interesting and helpful, would be enough to keep me away from DF forever. Game-breaking bugs? Ain't nobody got time for that.

I already know about DF so I know I'm not interested in games like that, but man, I'm glad I never tried to pick it up.

Anyone who would be kept away by a warning about crashes because he “ain’t got time” would also be kept away by simply trying to play Dwarf Fortress for 10 minutes. It’s not a game for the faint hearted or impatient.

Hey you can read it however you like, but I find an expectation from an established player that the current released version is bug-ridden and may corrupt your save to be... scary. How many saves must he have had corrupted in the past? That's just not cool, man.

If you're not the kind of person who can take flaws like crashes or game-stopping frame-rate issues and work them into your gameplay, DF is not the game for you. It isn't a friendly game. It can take hours just to figure out how to do core game tasks. "Don't do this thing that crashes the game" is just another task to learn.

I can't say as I remember ever having a save get corrupted on me, though I suspect it must've happened to someone at some time.

Usually the bugs are strange, hilarious or both. For example, here are some issues that have been fixed:

Werebeast arrives, attacks livestock and dwarves but is not attacked by dwarves while in its werebeast form. Necromancers afraid of/killed by their own undead Dwarves with permanent injuries inevitably spiral into depression Moody dwarves claim workshops outside their burrow, haul infinite number of items, never start construction Lye in wood barrels can't be used for making soap Haulers carry (heavy) full bin to pickup single item (lighter) Happy thoughts do not affect stress levels; Dwarves slowly spiral into depression Dwarf misses completely unrelated dwarf Bogeymen attack elf/dwarf sites while sleeping in them Brewing stack of >6 plants produces a stack of >30 booze, which doesn't fit in a barrel Tantruming dwarves perform dozens of fistfights/throws in a second DOES_NOT_EXIST does not remove creatures from embark list Large grazers (elephants and giraffes) can't eat fast enough to keep from starving

It's one of those games where bugs just add to the charm, if you like that sort of game. It's an ant farm that you're only sort of partially in control of even when it's running perfectly.

DF is not a game like you might be thinking of a game, like Call of Duty, Warcraft, etc.

It's a distant grandfather of Minecraft, but complex and detailed in ways that make emacs look straightforward.

It's a lot of fun, but it's not a 'game'. :-)

I mean it's free and written by 2 people, you can only expect so much.

It's actually written entirely by one person; Zach is just an idea man.

> It's actually written entirely by one person; Zach is just an idea man.

At some point when you've mastered basic code writing, ideas become the hardest part. This is especially true in game design, but also true even in solving business problems.

It made me want to play. Not the bugs but the story. To have an experience like that with characters in a game is special...

There are enough players and fans that "got time for that", testing releases for stability so you don't have to.

A pity you've chosen to miss out, as the depth of simulation in DF truly is astounding.

this is to games as jazz is to music.

you have more fun developing DF than playing.

That's apt.

Does anyone know enough about how this game works internally to know if alternative interfaces and presentations are possible?

I'm blind, and have wanted to play this game ever since I heard of it years ago. I used to play console-based roguelikes, and while they were a bit slow to interact with, RLs were a refreshing tactical change from text-based IF.

Reading lots of DF stories would suggest that there's some sort of internal eventbus-style system by which the characters themselves interpret their surroundings, and if you could hook into that, you could describe the world textually to some extent. You might even add audio cues for certain events to increase the non-visual fidelity of the UI.

I see in some of the below comments that there's a text-based mode. Might give that a try to see if it's playable on the same scale as Nethack/Angband were for me.

As for audio cues, I do know there is a system called SoundSense which does exactly what you suggest: http://df.zweistein.cz/soundsense/

Sweet, I will check that out. Thanks!

Answering my own question:

Google led me to an 8-page forum thread on the subject. Checking it out now, and spinning up a Vagrant VM to play with the Linux version's text mode (it segfaults for me under Windows, unfortunately.)

The interface that most of the visualizers work with is DFHack [1]. DFHack is a third party, open source utility that can access the memory of the game. It also has access to the interface system as well as the map contents.

[1] http://dwarffortresswiki.org/index.php/DF2014:Utilities#DFHa...

how did you worked out the maze map of nethack?

An old 90s-era laptop with a monochrome display whose brightness I could turn down to 0, a screen reader that let me arrow around all the tiles, and a bunch of long boring high school classes where teachers thought I was such a diligent student, always taking such great notes.


You need to tell us more about this. It sounds like an extraordinary story!

There's a Roguelike Radio episode called "Designing for the Visually Impaired" where they play an excerpt from a blind player playing a game of ADOM (IIRC, could also have been DCSS).


They also touch on games that have been developed especially for blind player, without graphics only audio.

This is why text-based games are king. One dot release and we're seeing a mountain of new features.

I've always dreamed of getting together a big budget to make a text adventure (e.g. Zork) of incredible scope, both in depth and "interactibility" -- a complex object typologies system, bring in learning chat bots for NPCs, and a system where users can add new objects, rooms and descriptions while they play, a complete object relational system (so it can tell "on", from "next to", from "above"), a very complete state system and so on.

Perhaps an "adjectives system", so it knows a huge amount of adjectives relating to any one object, and can generate simple novel sentences about that object on repeat views.

I think that at some point someone will be crazy enough to do it, and it's going to be most excellent.

Fun to note DF is a massive voxel simulation that displays a 2D slice as ascii. There's some neat third party visualizers that can hook into it's memory to show more. http://i.imgur.com/PTj1QpL.jpg

Wow. I'd definitely play it with that UI.

I often wonder why games almost never have swappable (or even just scriptable) UI-s that could allow player to use shorthands through UI drudgery.

> Wow. I'd definitely play it with that UI.

You may want to take a look at Gnomoria (http://gnomoria.com), which is basically "DF clone with sensible voxel graphics". For example: http://images.akamai.steamusercontent.com/ugc/45067176442464...

It's not a scriptable interface, but it is much saner than DF's, with a limited set of consistent hotkeys/toolbars/panels.

Gnomoria is to Dwarf Fortress as Nano is to Vim. It's much easier to learn to play and fun, but it's about 1/10 the magnitude.

For many popular roguelike games different tilesets are common. Search for "dwarf fortress tileset".

I'd recommend installing the Lazy Newb Pack instead. It has all the tools and tileset you need preconfigured:


Now that's what I needed to try this game. Last time I tried, I spent hours and hours downloading tools and never ever got to play the actual game!

Also read some introductions. Some tips like "no aquifer" for your first settlement really ease it.


DF badly needs that for the key combinations. They're complete nonsense, and in all the time I've spent playing, I've always needed a cheat-sheet for even the things I didn't do all that rarely.

But I'm guessing that's not trivial to implement if you haven't already started doing it that way, and for something like Dwarf Fortress, it would probably be a lot of effort for not a significant amount of result - after all, everyone's already got their cheat sheet...

Nitpick: It's not ASCII. It's simple 2D bitmaps. You can't play DF in a character console.

You can, actually. I'm pretty sure the text output mode should still work.

I wouldn't recommend it, because it's noticeably slower than the SDL or OpenGL renderers, but you can.

I usually play it on a tty, partly because silly decisions, but also I can ssh into a my system that has it installed. I haven't seen a 'noticeable' slow down, but then again most of my forts barely make it to 80 dwarves.

Hmmm.... that's always been my chief complaint about DF - that it isn't text/console based ...

I don't want to run DF on my local system - I want my DF world running on a server in a rack somewhere and I connect over screen/SSH when I need to.

Is that a sane use-case with recent DF releases ?

From my experience a few releases ago, the game is completely playable in text mode, over SSH. Like others have said, it's a little slower. I think some key combinations work differently too.

Huh, I didn't know that, thanks. But still, the DF that most people recognize as DF is not an ASCII/text game, even though it looks kinda like it.

I believe it was originally displaying extended ASCII in a nCurses console, and switched to bitmaps with SDL. The majority of the world is still visualized by those character codes and two colors, but entities can be assigned arbitrary sprites http://i.imgur.com/zuMdqbv.jpg

Actually it was the other way around. It was originally a graphical game which deliberately used a set of bit-mapped tiles drawn from the CP437 (not ASCII!) font found on many old computers. It later grew the option to add in extra graphics, so that a dwarf or a cat is a picture of a dwarf or a cat rather than a colorized letter. In this mode it's actually an OpenGL game, although it doesn't do much with the hardware.

A release or two back it gained a true console mode which you can play on a real terminal.

> One dot release and we're seeing a mountain of new features.

A "dot release" (who really cares about numbering schemes?) that took ten months and included a number of incremental and ultimately minor features--yes, they sound very cool, but having played it last night they don't change the way the game plays all that much. I like games like this quite a lot, but this is the same cheetodusting that makes people take Linux-on-the-desktop people with all the unseriousness they demand.

>A "dot release" (who really cares about numbering schemes?)

DF numbers its releases differently than most software. The developers made a list of features ("core components") they would like to implement and the version number increases for each one finished.

So a "dot release" for DF means a significant new subsystem was added. v0.42.1 translates to 42 core components implemented, 1 minor release. The leading 0 means "less than 100 core components finished".

Yeah, I know. The poster to whom I was responding was gleeing about a "dot release" having a bunch of features, and that that's something only a "text-based game" (and DF isn't a text-based game, unless your text-based games normally support tilesets or the IBM upper-ASCII set and run inside of SDL) can do. Which is trivially untrue, both in terms of pumping up the impact of the DF release and downplaying what others do.

Honestly, I'm kind of done with DF until it's more of a game, precisely because of these rabbit holes. I respect what they're doing, but aside from the first "oh, what's new?!" moments, the same core issues with the actual game persist. The "significant subsystems" don't make it play any better, so we're in ant-farm territory and not in a great way.

Well the main attraction is the stories it creates and what you create in game. So I'd say to play Craft the World if you want a DF-like with more direction to it, but DF itself is irreplaceable if you want to do things like attacking Hell with minecarts full of whales for the added mass (and therefore, momentum).

DF is more about the crazy stories that happen when you're, say, draining the ocean to set up those whale traps. Or building a roof over the world, pumping it full of magma, and rigging trapdoors to allow your Orbital Magma Cannon to fry any spot on the surface.

"Well", it's not a complaint about direction, it's more that the ability to create interesting stories hasn't expanded a lot in a long time. Early on in my time with DF, I really enjoyed the exploration, mastering the subsystems involved and developing cool stories out of both my successes and mistakes--but then the mistakes stopped happening because the game ended and it became a time sink rather than a growing and evolving challenge. I have built most of the stupid dwarf tricks (I have an embarrassingly large attempt at a CPU lying around somewhere) because of the lack of breadth to the stories that can be told, but eventually, I very much hit the end of the interesting and challenging things and reached the point of "this would take a dozen hours to do and wouldn't be fun." It's not much fun if you can't fail, and the mastery ceiling of DF is much lower than most people think it is; the self-imposed challenges are artificial ones, and while mechanically they can be interesting, I do not find them fulfilling when I know how it's all supposed to work.

(Minecraft would have this problem if not for the tremendous mod support, Forge, etc. that enables you to make what you want of it. Crash Landing is still one of my favorite things in games--not because of the use of HQM, but rather just the profoundly different environment and options for exploring the same rules in a very different milieu.)

Ah, gotcha.

I haven't played in a while so I'm out of touch as far as figuring out what changes are significant.

I looked over their development page (http://bay12games.com/dwarves/dev.html) and can't figure out if what's listed as upcoming (job prioritization? taverns? non-player artifcats?) will be major as far game play.

They do list work related to "starting scenarios for your fortresses" which touches a bunch of other subsystems - maybe that will be a large and noticeable change.

Can you explain what you mean? Cheeto dust is bright orange goop that sticks to your fingers. I don’t understand how it relates to “ultimately minor” new game features or “unserious Linux people”.

I figured it'd be obvious in context, but if you've never had somebody way, way too into something and trying to pump up its importance get all spittle-flecked and food-spewy (literal Cheetos, in the case I most vividly recall) at you in person...well, I envy you. =)

"cheetodusting" -- I don't believe I've ever seen that verb before.

> this is the same cheetodusting that makes people take Linux-on-the-desktop people with all the unseriousness they demand.

FWIW I've been running a Linux-only desktop for over sixteen years. I honestly think that it's pretty close to being usable by nearly anyone, and I don't think that's an unserious opinion. It's certainly usable by — and useful to — anyone technical, and that's not an unserious opinion.

The gameplay hasn't really "changed" much at all since its first release, it just keeps getting deeper and deeper (something something z-axis joke), so I don't really understand this complaint. It's the best interactive lore generator ever conceived and this release only adds to that.

I highly recommend looking into Inform7, effectively a text adventure IDE (though the community tends to call it "interactive fiction").

The language is a bit odd, and attempts to "read like English", but it provides so much scaffolding I feel like it's worth it.

I used to play around with Inform 6 when I was starting to program. It was an interesting step up from QBasic, and they had a really great tutorial that stepped you through writing a William Tell based story.

I never could get the hang of Inform 7, the syntax is just too free-form, and I couldn't work out how to get things right.

How would this be substantively different from Muds?

Right, yes, some of these features were added to various MUDs with some amount of success.

The big difference I'm arguing for is scope, and engineering.

If you have NPC chat bots that can learn, and an adjectives and typologies system for object, combine them so that chat bots can talk about objects adjectives and typologies. That sort of thing, really engineer the hell out of it.

In the end it would all be a massive NLP problem. As major advances in NLP happen the possibilities for MUDs is massive.

Some of the more modern MUDs are pretty advanced. I was reading a bunch of stuff by the GodWars 2 guy and he has some pretty cool features (eg the areas are very dynamic).

Not the same scope as DF, of course, but still surprisingly fancy. There's still a lot of room for more, though :) I'd personally love to see or make something like what you describe too...

I even started tinkering with my own home grown little MUD server written in Clojure, where I had intended to try out some fancy ideas... but lost interest because it would take a huge time investment and I'd be the only player in a multiplayer environment - maybe a single player game like you say would be better after all.

It is single player or SUD.

Case in point--I just got back into DragonRealms last night for the first time in over a decade now that they have a F2P option.

I thought I'd just spend an hour playing around in The Crossing and killing some rats with my warrior mage, and that turned into three hours where I mostly was trying to remember where things were and running branches back and forth to Mags to make some starter scratch.

But in those three hours I felt infinitely more addicted and immersed than I did in playing many more hours of Elder Scrolls Online, WoW, etc. While I need to find some ways of tweaking the Stormfront client more, there is truly something to be said from requiring imagination to enjoy the game.

There were attempts at implementing some of what you suggested - here's one: https://www.guncho.com/

So Guncho interfaces a mud server to inform7 runtimes? I used inform7's function dispatching as the basis for a python MUD engine, fun stuff - https://github.com/selfsame/mud.tilde.town

It is not what you wish for interactibility, but you might enjoy http://seltani.net/

Making it a text game instead of minecraft-like would limit the audience and save next to nothing in development time IMHO.

At the very beginning of Zork you are wandering through the forest. At one point, after branching around for a while you hear a bird singing above.

If you say 'climb the tree' you read "You are about ten feet above the ground nestled among some large branches. The nearest branch above you is beyond your reach."

If you 'climb higher' you see "On the branch is a small birds nest. "

If you look in the nest, "In the bird's nest is a large egg encrusted with precious jewels, apparently scavenged somewhere by a childless songbird. The egg is covered with fine gold inlay and ornamented in lapis lazuli and mother-of-pearl. Unlike most eggs, this one is hinged and has a delicate looking clasp holding it closed. The egg appears extremely fragile."

If you open the egg roughly, "There is a golden clockwork canary nestled in the egg. It seems to have recently had a bad experience. The mountings for its jewel-like eyes are empty, and its silver beak is crumpled. Through a cracked crystal window below its left wing you can see the remains of intricate machinery. It is not clear what result winding it would have, as the mainspring appears sprung."

If you wind it, "There is an unpleasant grinding noise from inside the canary."

If you open the egg gently, "The canary chirps, slightly off key, an aria from a forgotten opera. From out of the greenery flies a lovely song bird. It perches on a limb just over your head and opens its beak to sing. As it does so, a beautiful brass bauble drops from its mouth, bounces off the top of your head, and lands glimmering in the grass. As the canary winds down, the song bird flies away."

When I found that as a 7 year old, sitting in the dark after everyone in my family had gone to bed, peering into the screen of my 286, I knew that text adventures are the only game worth making.

Check out 80 days if you haven't already. https://play.google.com/store/apps/details?id=com.inkle.eigh... It has lots of wonderful text.

Inkle is an amazing dev studio. If you liked 80 days, you have to give their Sorcery! series a shot.


Dwarf Fortress is a truly special endeavor. The gameplay is unique and engrossing. And completely maddening, in a the best way. The quirky bitmap graphics are mesmerizing. Each time you start a new game, it's a new world with new areas to explore and new chances to make your kingdom last longer than the last one. But the music! Amazing! Honestly the music is my favorite part.

In a lot of ways DF is similar to the early days Minecraft. It was just "special". You can get lost in it for hours on end.

Girlfriend - "You want to go out tonight?" Me - "Nah I'm good. I am just going to play Dwarf Fortress for 10 hours..." Girlfriend - "Well I am going to go to Dim Sum Garden!" Me "Iiee decisions, decisions!"

If you'd like to learn to play the game, it's not easy. I've created a multipart video tutorial to help you sort of find your feet, learn a few of the keybinds, and get a checklist of things you need. It also talks about how to get better graphics and an isometric view.


Enjoy all the fun. Dwarf Fortress is one of the only single player games that has held my attention consistently over the years. I suspect you might find it engaging as well.

If memory serves, there's even an O'Reilly Press book on this -- "Getting Started with Dwarf Fortress" or thereabouts. (And it's for two major releases ago!)

I have a copy of the book. It was pretty good when it came out and the author promised to update the digital version as the game changed.

I have referred to this book, and very much enjoyed it. Some people prefer a video start just to hear the thought process out loud, so I made one available.

Just wanted to say I really enjoyed watching this and that you're very good at doing tutorials. Thanks!

I have some other DF content on that channel if you are interested.

I admire the forever project, and the dedication of the brothers. I've played the game way too much in the past, but I grew increasingly frustrated with the single threaded model combined with their disinterest in fixing it.

Building an expansive fortress and number of dwarfs is a lot of fun (honestly, probably the most fun I've had with a game since Dungeon Keeper and Settlers way back) but then FPS starts dropping and you find yourself doing dumb things to counteract that. The fun bits fade away and it gets tedious.

To me, DF is best looked at and enjoyed as an amazing art project and an inspiration for other game devs.

The real problem is the creator's stubbornness in not including others in his effort. Even if he doesn't want to release the source he should put some effort into making components pluggable so that others can do the boring work of, say, refactoring the UI.

Its a conceptual continuity issue. Like claiming the Mona Lisa would have been a better painting if the painter abstracted the girl out so Bob Ross could paint the trees in the background.

Yeah, well, the original developer never got the frame rate high enough for Mona Lisa to ever actually be playable.

:( though I can't quite prove you wrong this is a sad way of looking at things. I believe that the creators of DF could easily maintain the creative integrity of the project and at the same time include others in the more technical platform specific stuff.

Edit: Actually, my evidence is dwarf therapist. I don't think i could play the game without it and it is evidence of two things: 1) the default interface is broken in some serious ways, 2) the game is so good that people will go to really _insane_ lengths to mod it to make it playable.

The community is in fact participating, but the creators are making it more difficult than it needs to be with all the source closing.

To be fair, from what I understand the code was written in such a way that a very large portion of it would have to be rewritten in order for DF to be multi threaded. It's a shame it wasn't designed with multi threading as an idea in the first place, but I don't think multi core was a big thing back then.

Somewhat true, though first release was 2006 and it was pretty clear everything was going multi-core by then.

But regardless, its their pool and they choose how they want to operate it. We're fortunate that they share it with everyone because it is a very cool project, but that doesn't mean we can't take note that it falls under the weight of itself fairly quickly in practice.

They weren't really professional programmers though, from what I gather? Tarn was a professional mathematician. And the code base was started earlier than 2006.

There's some mods out there that try and help with fps by simplifying certain systems in the game, such as reducing the amount of material and plant types, things like that. I know Masterwork mod does this.

>First time playing dorf

>Make a nice, tidy fort, everything is going great

>Out of booze and it’s winter

>”Oh well, the farm’s still working” >suddenly

>”Urist McFarmer has gone berserk!” >and, soon after

>”New migrants have arrived.”

>there are like 3 children with them

>they are on the entrance, where there’s a gigantic moat and a bridge

>Urist McFarmer is on the other side

>he pulls the lever to the bridge

>all of the children are on the bridge

>they fall down

>they are all still alive, they fell like 12 z-levels though

>the moat is almost completely red

>they’re crawling around, everything is broken oh god

>Urist McFarmer is finally put down by one of the miners

>children aren’t even starving or dehydrating, they’re just crawling there

>have to lock up the non-important people in a room so that they don’t diminish the food reserves

>the nobles are sad now, the miasma is getting to them

>dump the corpses in the moat, including urist mcfarmer

>the children are puking and still crawling, not even starving or dehydrating, just endless agony

>the migrants are still on the other side, they die too

>the only people left alive are a few miners and a farmer

>and the children

>they never die

via http://dfstories.com/

>children aren’t even starving or dehydrating, they’re just crawling there

>dump the corpses in the moat, including urist mcfarmer

>the children are puking and still crawling, not even starving or dehydrating, just endless agony

As morbid as it may be, I think I may have pieced together why the children didn't starve...

It is unfortunate that a game as famous as Dwarf Fortress only makes so little in money: http://www.bay12forums.com/smf/index.php?topic=152358.0

I seem to recall a profile of the game and it's creators that said it's mostly by choice.

Found it: they were offered 300K just to license the name.

  He has refused a programming job at a major developer 
  (he asked that I keep its name off the record) and 
  turned down a $300,000 offer from another company to 
  license the Dwarf Fortress name, fearing that the 
  proposed sum wouldn’t sufficiently offset the long-term 
  donations drop that would likely result.

A one-off 300K isn't a lot for two people to live on if it would cut off their donation stream completely, and if you've been doing this for 10 years it may not be easy to find a job.

Serious question. Why would it not be easy?

Because once an employer sees you're the Dwarf Fortress developer, they'll turn down your application because you have more important things to do.

There are still a lot of employers who see time spent on your own venture as a gap in employment history. I mean, I guess it literally is, since you aren't an "employee". But they completely discount any applicable experience during that time.

The founder Tarn Adams has a Ph.D. in Mathematics from Stanford, so I don't think any of his potential employers will mind that he spent his time working on a fantasy economic simulator of this scope.

I think it's indicative of the value of the property that just the name alone is worth 300K. If they were interested in commercializing the game I suspect they would be able to make a lot more.

They could almost certainly make a lot more money if they were willing to compromise even a little in the direction of usability.

They aren't, though, so they're making a conscious decision to forgo that money in order to keep their vision (as maddeningly abstruse as it is) intact. In that respect Dwarf Fortress is a lot more like an art project than a commercial game.

Yeah, that's pretty much it.

For a comparison, Gnomoria (http://gnomoria.com), which is an unapologetic DF clone but with basic graphics and first-party modding support, sells for $8 a pop on Steam and has 2,000 reviews despite still being in "Early Access" status.

I can't find a reference right now, but I believe Toady has turned down large offerings from Notch, among others. He seems to believe that too much money would take away from what he's doing.

I think it's best to think of Toady like a crazy man building a cathedral down the road, single-handedly, using only tools he made himself. We can only sit and watch in awe and appreciation as the cathedral takes shape. And support him on Patreon, I suppose. :)

I'm sure they could pull piles of cash in from a kickstarter if they wanted to.

If you understand Today's lifestyle, that's more than enough. And people always donate. December is usually a big month for that.

Wow, just that. They must trully love their job.

I'm pretty sure many people would gladly take a ~$5k per month job doing something they love with no boss.

Less would take a ~$2500 per month job (it’s two people).

That's roughly first year school teacher income level, or parish priest stipend level. I think Tarn was a grad student before he got his doctorate, and $2500 would not be a pay cut; assuming that grad students loved their field at least once upon a time.

Per capita median personal income in the USA is right around that level, so 50% of the population earns less, while being statistically unlikely to love their job. If half the country hates their lower paying job, they have little to complain about in a relative sense.

I seem to remember them saying Zach did mostly other things nowadays, but I can't find a link.

$30k per year each is still pretty good tbh

The only thing that is frustrating for me about DF (well ex-game frustration, not in-game) is that getting visualizations and interface changes in is gated by Toady. I dearly wish that this part could be taken over by the open source community; it would let him keep writing the simulator, and we would get some amazing VR-friendly worlds on top of the simulator.

I know that he doesn't want to support an open developer community because he, you know, wants to write his simulator and make it even more incredibly awesome than it is, but if only there were a way to get that code unlinked and into an API, it would make millions of people very happy.

I tried to play this game, and I think that the interface is a complete bottleneck. Once you have more than 12 dwarves, which you are completely intended to do, it's tedious and difficult to access them, organize them, and generally, the interface to the simulator you have is like drinking through a straw. I think the fun would be massively improved with making it easier to interact with the simulator.

Check out Dwarf Therapist. It is what makes the game accessible IMHO.

I've heard this suggestion before, and I may have even attempted to install it at one point, but this is exactly my point. To really have a good gameplay experience one must turn to community-made tools. But the game is not open source, and really, it's kind of a fundamental user experience problem with the game. Seems like it might be worth putting into the actual game.

I'm hoping that in 10-20 years, the devs have a change of heart about the importance of the user interface, or they open source the code so the community can really step in, and then I'll give it another shot :-)

If you are on HN, it's quite likely you will find the issues trivial to overcome. The support tools really are ridiculously good now, and you'll find that the cost of running them is ideological, while the pay off is magical, if not inspirational.

Minecraft came after notch got irritated with DF. The entire dwarf-lite genre is inspired from wanting to do DF better.

Now DF has been improving it's adventure more gaming, something which had been vestigial for 90% of the dwarf fortress Dev cycle.

Take a look at the kisat dur thread (Dwarven martial arts) on the bay12games forum.

Go for it, you can always put it down and come back later.

Yeah, I know a lot of people that use DFHack too, but that always seemed a little "cheat"-y to me. Therapist makes managing the labors of the dwarves (the most intensive thing in the game, really) a lot easier. I use Therapist with the regular ASCII tileset and I love it.

Summary of the maddening complexity of Dwarf Fortress: http://dwarffortresswiki.org/images/4/40/FunComic.png

Also, for those that aren't in on the joke:

In Dwarf Fortress lingo, "Fun" is a euphemism for losing. As in, Dwarf Fortress is a lot of Fun.

I don't think so. Because at the end the Df guy has lots of fun. I think it is just intended that once you get over the many many deaths, you will find the fun.

I understand, I just don't think the comic was referring to that.

Home of the best bug tracker ticket titles evar:

"Lye in wood barrels can't be used for making soap"

"Dwarves upset from not seeing family not in fort"

"Zombies start conversation with necromancer adventurer who tries to sleep in their house"

People who really 'got into' DF- What age were you when it clicked?

Eight years ago, at 22.

20. I tried it earlier, but I just couldn't figure out the interface.

29. :-)

Anyone else compare every other game they play to Dwarf Fortress? The only game I've ever played that even comes close (IMHO) is The Long Dark, and that's only because I know the studio pours their heart and soul into the game.

So glad this is still going. I hope development never stops!

I've seen some mods that make Minecraft beautiful, I wonder if the same can be done for DF?

There are some GUIs for it... but I think the complexity is so high it would be a lot of work ;)

The Lazy Newb Pack is a start, it has artwork that makes the game much more accessible.

Word to those who want to begin their DF journey: counter to what you might expect for a text-based game, DF can chew a lot of CPU cycles. I always pick small world size and very short world history at worldgen, bc the larger/longer worlds have a lot more stuff for the game to keep track of and can slow it down, IME.

Strike the earth!

There has been a lot of articles about emacs on HN recently, so now I wonder why Dwarf Fortress is not an emacs mode ;-)

What language is Dwarf Fortress written in?

It is closed source, isn't it? I assume it is, like ADOM, to keep the secrets. Though there is an obvious solution: you could separate the game data from the engine, and open-source the engine, for public benefit and participation.

It's written in C++.

There are no secrets to keep; it's not like an RPG where the ending can be spoiled. Well, not really any secrets, anyway. Anyone who lives in a country where Tolkien ever published a book will have some ideas about what to expect.

It's really just about creative control. He has let people help in limited ways in the past though. There were some improvements to the way it uses the OpenGL API and to the way it renders fonts (it can now use TrueType fonts for most purely-textual elements) that were contributed by a fan. he later stated that although it was a good improvement to the game, it wasn't an unalloyed good. The changes _worked_, but he no longer understood that part of the code very well.

Yep, it's closed source. I dream of a day where they open-source it, but IIRC the creator has turned down various monetary offers so as to retain complete control of the game, so it seems unlikely that he'd ever release the code.

Is Dwarf Fortress open source?

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