
Dwarf Fortress and the Terrible, Horrible, No Good, Very Bad Interface - smacktoward
https://www.rockpapershotgun.com/2017/02/07/dwarf-fortress-how-to-stockpiles/
======
dexwiz
Dwarf Fortress is a developer game. Last I checked, you need mods to get any
graphics beyond basic ascii characters. Practically everything is a keyboard
shortcut that needs to be memorized. It makes the player feel like they're an
operator from the Matrix trilogy.

It's interesting that by completely ignoring UI/UX the developers (2 brothers)
have managed to create one of the most in depth worlds imaginable. This makes
it completely unaccessible to the wider world, but beloved by the core
audience and respected by any nerd that tried to read through a tutorial. It's
found success in being the antithesis of a AAA game, which is usually
beautiful but shallow.

I wonder if there could ever be another Dwarf fortress? Or if the target
audience is too small to support another game.

~~~
VonGuard
I would not quite call it a developer game, just more like a very involved and
deep simulation. The barrier to new players is steep, but there are lots of
easy-to-use third party tools to make the game more friendly [1].

It's certainly an extremely daunting game, and the interface is ridiculous and
makes no sense. Like anything worth doing, it takes practice.

If you're too intimidated by Dwarf Fortress, try RimWorld [2]. It's the same
idea, but with a GUI. And if you really want to learn to play Dwarf Fortress,
the Lazy Newbs pack linked to below is a great way to start. I'd recommend
turning off invasions and aquifers in the opening menu. Other than that, there
are plenty of how-to videos and wikis out there. I won't favor one with a
link. Google can help with that.

There will never be another game quite like Dwarf Fortress. But there will be
a lot of games that learn from it and expand on its ideals. Tarn and Zack are
incredible people, and if you send them a donation, they will mail you a hand-
drawn image of a dwarf doing whatever you ask.[3]

[1] [http://lazynewbpack.com/](http://lazynewbpack.com/) [2]
[https://rimworldgame.com/](https://rimworldgame.com/) [3]
[http://www.bay12games.com/support.html](http://www.bay12games.com/support.html)

~~~
ethbro
DISCLAIMER: Do _not_ turn off aquifers. It will make your digging far less
Fun.

~~~
outworlder
Did you mean !FUN! ?

------
caconym_
You can get a good feel for how ridiculously complex the simulation of Dwarf
Fortress is just by reading the bugs:
[http://www.bay12games.com/dwarves/mantisbt/view.php?id=9195](http://www.bay12games.com/dwarves/mantisbt/view.php?id=9195)

Cats were walking through spilled beer, licking it off their fur (as cats do),
and dying of alcohol poisoning.

~~~
patmcguire
The best bug was an old one where carps would get stronger from swimming,
which, living in water, they did constantly, thus making them invincible
murder fish.

~~~
phaedrus
IIRC this was exacerbated by the fact that their bite was coded as (or similar
to) a "punch" which actually would not have been so bad, except (1) a dwarf
hit by it had a 50/50 chance of falling into water and (2) carp appeared in
packs...

~~~
intended
the bug was exacerbated by carp having teeth, thus giving them a bite. except
they were able to bite across the water tile and onto the shore, thus engaging
combat.

this resulted in death because dwarves, as a rule, dont know how to swim
unless trained.

------
gnidan
Dwarf Fortress is _definitely_ a developer game. I love how the game allows
you to creatively stand-up industries of scale.

For instance, (shamelessly plugging), the game has minecarts, which transport
goods point-to-point, following some track.

To avoid having to lay track for each route separately, I devised a system of
logic components that will allow routes to share track, via automated routing:

[http://dwarffortresswiki.org/index.php/User:Gnidan#Minecart_...](http://dwarffortresswiki.org/index.php/User:Gnidan#Minecart_Routing)

The routing system uses synchronization primitives to ensure that each shared
track segment is only occupied by at most one minecart at a time. Using this
guarantee, I have my system switch track exits accordingly, so each minecart
in transit gets sent to the right place.

GIF for anyone who might be interested:
[https://i.imgur.com/nC3dfLK.gif](https://i.imgur.com/nC3dfLK.gif)

And the save file:
[http://dffd.bay12games.com/file.php?id=11721](http://dffd.bay12games.com/file.php?id=11721)

------
jfoutz
IMHO, the interface of dwarf fortress enhances the medieval fantasy
experience. Each little detail has to be managed in it's own arcane way. It's
the UI equivalent of the vice chancellor explaining to a cooper that buckets
and barrels should be stored in separate locations. The cooper would of course
go on a long tirade about how his father, and his father's father stored
things this way, and that worked flawlessly for them.

Perhaps i just let my imagination run a little wild while i wait for those
little 'g' s to come and try to kill my guys.

The UI is terrible. The UI is part of the charm. You get the experience Tarn
wants, not the experience you want. Art is not required to be accessible. (it
often is, and that's often good) but some experiences can't be handed to you
in a gift wrapped package. There is no royal road.

~~~
logfromblammo
Hmph. You're not _really_ having fun until you're having _!!XxXFunXxX!!_.

------
piptastic
If you like Dwarf Fortress, but hate the interface, you may want to try out
Rimworld.
[http://store.steampowered.com/app/294100/](http://store.steampowered.com/app/294100/)

It has a similar playstyle, but with graphics and a UI that isn't too bad. Not
the best UI, but not bad at all.

~~~
caconym_
Rimworld is great. The interface always kept me away from DF, but I had some
good times with Rimworld even though it's significantly less complex (no
Z-levels, for instance).

The first time I played it, I ended up with a Donner party-esque situation in
which my medicine had run out, everyone was dying from infected wounds
inflicted by raider attacks, and the few colonists still on their feet were
fully occupied feeding the spoiled remains of the dead to the barely-living.
Colonists were dying faster than the survivors could dig graves for them. It
was brutal.

------
waiseristy
After you spend some time in DF, the interface isn't bad at all. Actions are
separated into semi-logical sections, you get a feel for what keys navigate
what menus ect. Tools like dwarf therapist and dfhack alleviate the worst of
the UI problems. The real problem with DF is in its performance. Any fort more
than a few hours old will grind to a halt as 100+ dwarfs pathing algorithms
compete for a single thread. Fluids further impact performance, and if you get
invaded? Have fun with 10-15 FPS until you give up. It's extremely
disappointing as these late game interactions are usually the most fun.

~~~
schmichael
I have played hundreds of hours of DF over many years and the interface is
still awful. There are aspects of the UI I enjoy as a vim user. At best it can
feel a lot like composing vim commands.

However at worst it's as this article outlines: obtuse, inscrutable, and
lacking in consistency. Stockpiles are bad, but probably not even the worst
interface. There are many aspects to job orders and militia management I still
don't fully understand how to manage today.

------
pavel_lishin
That's one of the more egregious problems, but there's also things like the
fact that placing a bed down and placing a workshop down has completely
unrelated keys; manufacturing two different types of objects, ditto. I haven't
played the recent versions, but organizing a military is something that's
hideously difficult, and most of the guides for organizing your dwarves duties
- the tasks they're allowed to perform, according to their skillsets - is best
done with a third-party program that reads and edits memory directly. (You can
do it in game, but you better have a notepad so you can record your dwarves'
skills, and then use that data to actually assign them tasks.)

I used to play pretty regularly for a long while, and I still kept a notes.txt
file with all of the various key combinations required to do the most basic of
tasks.

If your profession is UX/UI design, you are probably going to take weeks off
your life with the raised blood pressure this game will cause you.

~~~
MrMember
The in-game job management interface effectively becomes unusable once your
fortress reaches a certain size. It requires a third party program to manage
jobs without wanting to tear your hair out.

~~~
Natsu
Odd, I never really felt that way, I just put certain jobs on repeat and kept
huge stockpiles of food, booze, etc. The quantum stockpiles of stone help,
though.

------
pavel_lishin
(Second comment, because it's a different topic.)

I've found that Kerbal Space Program seems to occupy that same gaming niche
for me, of a game that's more of a simulator without defined goals, that
rewards both planning and the realization that all of your finely laid plans
can go to hell in one second - sometimes because of a wrong microdecision you
made, and sometimes because that's just how that universe operates.

But with much better controls, and you can fly cool jet planes if you want to.

~~~
goda90
For me, Factorio fills the planning game niche really well. If you don't plan
right, you'll find your factory grinding to a halt as your resources are
trickling in instead of flowing efficiently. "Refactoring" doesn't feel like
the worst chore in the world, rather you can quickly tear things down and
redesign much quicker than a lot of strategy games.

------
Eric_WVGG
Sad to see so many apologists for bad interface, but I didn't expect any
better. "It's an amazing game" and "It's for developers" are not excuses for
poor UI.

Complexity is not any more of an excuse than the inconsistent order of
arguments or use of underscores in PHP is defensible.

Reminds me of an argument I once had with my brother-in-law, a psychologist,
over academic writing. He argued that the obtuse, frequently unreadable style
was simply "how they're done." Good writing is simple and logical — every
academic would benefit from a semester of journalism, where deliberately bad
writing isn't tolerated.

------
cannonpr
To be honest, most people play dwarf fortress with considerably plugin
assistance, including the much needed Dwarf therapist. However I feel like the
complaining over the interface is really unnecessary, any interface would
struggle with the level of depth that the game exposes. I feel like most would
struggle to come up with a sensible interface for such a game...

~~~
pavel_lishin
> _any interface would struggle with the level of depth that the game exposes_

But there are plugins that make doing certain tasks much, _much_ easier. So a
reasonable interface _can_ be made.

DF's interface doesn't struggle, it lays down and moans.

~~~
crooked-v
For an example, Dungeon Crawl Stone Soup is a game that took the complexity of
content-filled roguelikes (commands for every key on the keyboard, multiple
mode-switches for many commands, layered tileset mapping, etc) and added a
beautiful and easy-to-understand and accessible mouse-driven UI and graphical
tileset to it, _without_ harming pure-keyboard accessibility.

It's completely possible, it just takes some effort.

~~~
jerrycruncher
As someone who has played far too much Stone Soup (going back to when it was
called Linley's Dungeon Crawl), and bounced, hard, off of Dwarf Fortress a
number of times, I think that you're understating how much simpler,
conceptually, Crawl is.

DF is many, many orders of magnitude more complex than Crawl. Many.

~~~
crooked-v
DF's _gameplay_ is more complex, but the interface is (or easily could be)
functionally identical to Crawl's. Status area that shows the currently
selected thing, menu with commands and submenus, viewport with layered
graphical tiles, overlay dialogs for large menus.

------
danielvf
The best part about this article is that the author left all the quality
levels disabled. After all that work, the stockpile still won't accept any
goods.

------
xuejie
I'm just curious: am I the only one thinking that Dwarf Fortress actually has
acceptable(if not good) UI? In most cases the screen will hint you what keys
you can press to perform action. Yes I admin the UI is not so good whatsoever
and in certain cases it's confusing, but it really is a question which you are
comparing it to.

For example in roguelikes such as Nethack, there's no hint on the screen at
all and you will have to go to a specific long help page to read about it. The
result is: you will have to first memorize a lot of commands to be able to
play the game.

If I'm programming using vim, I certainly agree that memorizing all those
commands will boost my productivity and I'm willing to do so. But for fun
time, I'm not sure if I want to memorize those many commands first to have
some leisure time.

~~~
Zandikar
I would say it has good UX, but not good UI. There is a difference.

~~~
xuejie
Yeah of course, I agree

------
epaga
As I do whenever Dwarf Fortress comes up, let me retell the tragic story of
Môsom.

Remember that nothing in this story is embellished. It all happened within the
simulation. Dwarf Fortress is at the very least the best story generator game
of all time.

I needed to tap a source of water to create a nice waterfall in my dining
room. Everything was prepared: the waterfall would fall through the dining
room, and then a channel under the dining room led off the side of the map
through a fortification. All I needed to do was open the wall of the tunnel
which was touching my water source.

Feeling too lazy to channel in from above (and slightly evil), I decided to go
ahead and sacrifice a dwarf for the effort. I had the dwarf wall itself in and
then open the wall. Two seconds later multiple bad things were revealed about
this decision:

\- The dwarf was actually a mother carrying her child under her arm

\- The water was under high pressure.

\- I had forgotten to make a floodgate to stop the water if needed.

The water shot out of the wall, instantly killing the baby and smashing the
mom against the wall of the tunnel. She was dragged along by the water, fell
down the waterfall and was pushed up against the fortification on the edge of
the level with two broken legs and a bruised spleen. The baby's corpse was
caught under the waterfall right underneath the dining room and wasn't going
anywhere. The mother kept trying to run upstream but was unable to.

I felt pretty bad at this point. But thinking there was not much I would be
able to do since the mother would certainly die soon anyways, I just tried to
quiet my bad conscience and focus on other things, awaiting the inevitable
message the mother had died.

A day later the baby's corpse started to fill my dining room up with miasma,
making me have to wall out the waterfall to keep my dwarves from vomiting.
Quite poetic justice, really: the stench of death was on my waterfall.

I was still waiting for the message that the mom had died.

It didn't come.

After a week of game time or so I looked to see what she was doing and my jaw
hit the floor. She was FISHING. The mom was fishing to stay alive while
drinking the water. She was in an obviously really bad mood having witnessed
death and the decomposition of her child. But she was barely staying sane
because she was being "comforted by a lovely waterfall".

That did it for me. I finally decided to launch a rescue mission to save her.
Not 2 seconds after I had given the command to dig a tunnel to where she was,
she went insane and died of thirst shortly after. I was too late. _sniff_

Her name was Môsom.

~~~
RugnirViking
I love these stories. DF is truly my favorite game.

------
AcerbicZero
I gave up on DF, and get my crazy colony simulator needs met by Rimworld
now....but I did get addicted to LCS for awhile, which is another horrible
interface attached to a gem of a game, made by the DF devs.

~~~
RugnirViking
I have not heard of this game. can you link me to it?

------
imode
I've always wondered how Dwarf Fortress stores its three-dimensional world...
anybody have any information on that? considering the size of the worlds
involved, I'd imagine some interesting methods are in play to keep the worlds
at a suitable size.

Dwarf Fortress is kind of this interesting standard of complexity over
interface design. prioritizing depth over a pretty UI seems to really do
wonders in development..

------
jogjayr
I've made 3 separate attempts to get into DF: read tutorials, watched Youtube
videos, the whole shebang. The incomprehensible UI drove me away every time.

Having said that, I love that something like DF exists, even if I can never
enjoy it. I think the world is better off for it, in some small way.

------
VLM
That was a refreshing article in that far too many historical articles were
along the lines of "If only it had pretty art and maybe some celebrity voices
then it would be awesome". Those articles are very annoying.

Note that not all of DF is as obscure as the example in the article. I've
never tried doing what the author tried and I salute the author for bravery in
trying it. Most activities in DF are fairly straightforward.

This article did remind me that I haven't sent the brothers some $$ in awhile,
if you send them $$ they send you hand drawn art vaguely inspired by DF.

[http://www.bay12games.com/support.html](http://www.bay12games.com/support.html)

------
robohamburger
I think the UI is the least of the game's problems. It seems like each release
Toady introduces more bugs and game design problems than solutions.

It is still worth playing for the weird level of detail and depth but I have a
hard time having as much fun as I once had.

I recommend rimworld if you just want to have fun, though it doesn't quite
have the level of emergent shenanigans happening in it yet.

~~~
pavel_lishin
I haven't played in awhile; what sorts of new bugs and design problems have
cropped up?

I used to read the blog posts regularly, but I don't really care about the
art-and-history simulator, or the single-player mode, so I stopped keeping up
with it.

------
zer00eyz
Dwarf fortress has a UI that is on par with learning regex. If you can master
dwarf fortresses interface, then you can learn linux, regex, sed and awk.

That having been said, the game is amazing, and has a valuable lesson
involved: "loosing is fun".

~~~
qwertyuiop924
That's total and absolute nonsense.

Speaking as a linux user with a good bit of experience with sed, awk, and
regex, DF is _way_ worse.

~~~
norea-armozel
Yeah, I'm going to confirm that it was easier for me to install and run my
first Linux distro (Slackware) back in '99 than it was to play Dwarf Fortress.
Seriously, anyone who can get a fortress to last a year in-game amazes me.

~~~
slackstation
As someone who also first installed Debian in 98 from a single floppy disk
netboot image, a memorized FTP site domain, a cable modem connection and a
whole night of hoping, I wholeheartedly agree, Dwarf Fortress is way, way
harder.

Every year I pick it up and play it for a bit just show myself that I can do
it.

These days, I watch streams of people playing the game on Youtube or I play
Rimworld if I'm in the mood for actually playing something myself.

I've never been able to have the patience to get to one of the really
interesting kinds of fortresses that have steam-powered defenses that tunnel
hordes of enemies strategically through your base only have them burned to
death.

Also, the game is single threaded so there's a very linear limit of how many
dwarves and interesting emergent things can happen in your fortress.

God, I miss playing that game. When it's good, it's the best there.

I've wanted to learn Rust for the express purpose of making a faster, multi-
threaded DF-like game.

~~~
qwertyuiop924
Yeah.

You know, I wonder if we could use dfhack and LD_PRELOAD to force df to do
some multithreading.

------
patmcguire
Does the author play console games? This is about average for a PS4 menu.

------
fapjacks
I can't decide if this guy is being serious or just deadpan. It's very well-
executed if it's just a deadpan delivery of a typical gamer -- who is used to
mashing no more than six different buttons -- trying DF for the first time.
Well, maybe the fortieth or fiftieth time, if he's a really quick learner.

