Dwarf Fortress uses tiles; tiles that are images of ASCII characters no less! I see this as counter-intuitive. I thought the idea of using ASCII characters instead of graphics is so you could run in terms and have a huge performance gain. With this in mind, why is the default tileset not more "pretty" and "friendly"?

  • 2
    Because ASCII graphics are awesome :)
    – Wipqozn
    Commented Jun 16, 2011 at 15:53
  • 1
    But its not "real" ascii. If it was, it would be so much more powerful! I see tons of advantages with using "real" ascii, for some see Anto's answer.
    – mxmissile
    Commented Jun 16, 2011 at 15:54
  • 4
    This feels more like a rant than an honest question Commented Jun 16, 2011 at 16:48
  • 2
    I dunno. Pictures of ASCII graphics seems in-line with a game where dwarves will carve a relief of an image of cheese.
    – Grace Note
    Commented Jun 16, 2011 at 16:53
  • 2
    I know it's an old question but i just wanna say that ascii ar still available on linux (maybe mac i don't know) by setting [PRINT_MODE:TEXT] in the init file, in this way it run in a terminal (and can run through SSH :p)
    – eephyne
    Commented Jan 15, 2013 at 6:45

4 Answers 4


I don't know why this choice was made for Dwarf Fortress, but I can highlight a few possible reasons:

  • It'a retro, gives you nostalgic vibes and all that.
  • It stimulates your fantasy to actually imagine what the world could be like
  • The author maybe didn't know how to draw those graphics
  • The author maybe just wanted it like that. His game, his choices.

In case real ASCII had been used, the following advantages would have existed as well (though this is not the case):

  • It is, in some cases, easier to program
  • The creator just wasn't familiar with the right tools
  • Works on older hardware, doesn't require a graphical screen and should be more performant

As far as I know, they are working on bringing out new tile-engines (with "real" graphics).

  • 1
    Good answer and all, but not exactly... well, you might want to read the question again. The question says that they do not use ASCII. They use images of ASCII characters.
    – Aeo
    Commented Jun 16, 2011 at 15:54
  • @Aeo I made the same mistake. The OP may wish to refine his title actually.
    – Wipqozn
    Commented Jun 16, 2011 at 15:58
  • @Aeo: Oops, didn't see that. Edited my post.
    – Anto
    Commented Jun 16, 2011 at 15:59
  • Ah, excellent! Now I can upvote you with confidence :)
    – Aeo
    Commented Jun 16, 2011 at 16:10
  • 3
    Rendering speed... An ASCII console window is not going to be able to utilize graphics hardware, so rendering tiles that look like ASCII symbols would allow for a high speed game and more to be going on than straight up console window.
    – James
    Commented Jun 16, 2011 at 17:28

Using images instead of ASCII allows for GPU acceleration for the drawing, which offloads work from the CPU to the GPU, freeing more cycles from the CPU which allows it to process things in the game faster.

It also allows for tilepacks which make DF look much better.

Try doing this with ASCII

enter image description here

  • 1
    @Hobo And now you see why I just added this as a comment to the accepted answer ;)
    – James
    Commented Jun 16, 2011 at 21:07
  • I tried using a graphics pack once and just couldn't get use to it. I had to revert back to ASCII!
    – Russell
    Commented Mar 19, 2012 at 15:51

There are really three questions here.

Why does it look like ASCII?

  • It's retro and therefore funny.
  • The game is an homage to roguelikes (nethack, moria, rogue), which really were ASCII.

Why isn't it really ASCII?

  • It used to be.
  • Using actual characters puts you at the mercy of the console driver for how it decides to draw them.
  • The Toady One wanted visually-impaired players to be able to change the size of the tiles, which using real ASCII wouldn't allow.
  • Possibly he also wanted a wider selection of accented letters, which the traditional console code page (Unicode page 437, if you're curious) doesn't have very many of.
  • Using graphics that look like ASCII allows players to switch the tileset to something they like better.

Given the above answers, Why does it STILL look like ASCII?

  • The Toady One didn't want to confuse existing players by introducing a new impenetrable interface, when the switchover to graphical tiles happened.
  • It's still retro and therefore funny.
  • It's still an homage to roguelikes. Adventure mode just wouldn't feel right with graphics (unless you believe in playing the new graphical versions of nethack, in which case you are a heathen).

Plus, I dare you to try to make a 16x16 pixel tile that depicts a relief of an image of cheese, or a relief of a dwarf cowering in fear and an elephant laughing. Go on, I'll wait.

  • I concur: animating ascii in the console is a pain in the butt. graphic card acceleration means framerate = animation! At the moment i'm writing a game for the console, but i'm trying to partion it well enough that in the end, the display won't matter so much. yay oop.
    – Ape-inago
    Commented Jun 21, 2011 at 21:24

Ain't no one can tell you for sure but the original dev(s), however, looking at it from a programmer perspective, I can only draw a few theories...

  1. They wanted to have the ASCII look and feel. After all, ASCII is where it all started at, no? Perhaps they started pure ASCII and realized others may not agree. So they went with images to...
  2. Make the game more easily skinable. An image set can be swapped in and out easily enough, but you are going to be pretty hard pressed to swap out some ASCII I'd imagine.
  3. Perhaps, in whatever language they programmed it in, the dev(s) were more comfortable using the image libraries vs. figuring out how to get ASCII to work.

Again, these are just theories, but that's my thoughts on it. Haven't played DF, but certainly heard enough about it.

  • 1
    Heathen! How dare you not play DF, how dare you!!! Download it now, open it up, generate a world, embark, create a fortress, get addicted!
    – Russell
    Commented Mar 19, 2012 at 15:53

Not the answer you're looking for? Browse other questions tagged .