Interview with Tarn Adams (July 21st, 2010)
Nerd Theater has had a number of interviews with 17th century celebrities and
creatures of mythology over the years, but this marks our first interview
that didn't require dangerous amounts of methamphetamine and/or a Ouija
board!
Tarn Adams and his brother Zach created and continue to update the epic
game Dwarf Fortress from Bay
12 Games. Alex invited Tarn to the Nerd Theater International Headquarters
(currently occupied by several cats and a hamper) for the opportunity of a
lifetime. After learning that Tarn is, in fact, not a dwarf, it was decided that an e-mail
interview would take place rather than a 72-hour reenactment of Alex's
favorite Dwarf Fortress game in full costume and make-up.
The Interview
First, the big question that I'm pretty sure is obligatory:
where are you at in the DF development? I don't have any specifics, just
anything you'd like to say about where the project is in terms of bugs,
features so on and so forth.
I'm currently cleaning up a mess of bugs that accumulated
during the 19 month dry spell. We're slowly switching gears over to new
developments now, which'll involve making adventure mode into a game, in
part. We'll have to see how that turns out. I'm pretty excited about the
possibilities.
I have seen a quote that says DF uses as much processing
power as a modern 3D game. Is this something that you are trying to fix or
plan to fix? Some people might be put off by an ASCII game that eats up the
same kind of power as Call of Duty. Is that something you think about in
terms of marketing the game as it gets closer to a commercial release?
It's a mix of something to fix and something that comes
out of the simulation. DF isn't doing the same things as Call of Duty, and
Call of Duty isn't doing the same things as DF -- I'm sure their people are
more competent than I am, which is where the fixing comes in, but there will
always remain the key point that as many items/dwarves/map tiles as you
have, you can add more, until your computer maxes out some resource. The
game will always be able to stretch a computer as far as it can be stretched
(at least a 32 bit OS, he he he). Even a simple game with some scaling
quantity can do that, though, so the processing power requirement can come
up anywhere. I imagine more professional people would limit the game to
fewer dwarves and smaller maps, to the point that the computer could always
run it smoothly, once they had done their best, in order to hide the
remaining limitations and defects, but I've tended to let that stuff float.
My default horizontal map size has been creeping smaller as it gets deeper
in height, anyway.
That leads me to my next question: do you have plans
concerning DF as a commercial product? Have you thought about programs like
Steam, Xbox LIVE Marketplace, or Greenhouse games to distribute it? Pricing is
something that is a big issue today with games like Farmville raking in the
money one dollar at a time, and major console releases regularly charge $60.00
and up. I know some people would gladly pay full price for a game like DF,
while some might be turned off by a text-based game at any price.
There are no plans to release DF in any way other than the
way it is currently being released. Ultimately, I think that is probably
losing us a lot of money, but there are a couple of things -- first, the game
is rough around the edges and is in ongoing development, and second, I just
personally don't want to sell things. I think there are a few games that
sell "check out the daily developments" licenses or something, so I guess
that model can work out. That leaves me with one reason, I suppose. If DF
continues to attract interest at the current levels, that'll be fine, since
we are doing all right. I'm not really sure what would end up happening if
it dries up. It seems inevitable, and I wouldn't rule out selling some other
games at that point or something. Giving away games is a matter of
preference and convenience for me, and I'm able to do it that way right
now.
I've read that you started with Basic and picked up C as
you got older. C++ has a quite a few issues, but it's the de-facto language
for any serious game development. How do you feel about C++ as a game
development platform? Do you feel that it's the only language that is able to
handle DF? I know that C# is a powerful language and open source. Have you ever thought
about translating DF to a different platform or, at this point, would it be
inconceivable to port?
I can't really comment, since I have little experience
outside of C/C++ now. I don't even remember much BASIC. I'm sure other
languages could handle DF. I have no reason to move DF to some other
language, or rather, there might be some compelling reason, but it wouldn't
outweigh my lack of experience and the likely considerable amount of time
needed to get the job done. The only reason it would happen is if way down
the line, C++ is no longer supported by whatever weird 4D spaceship operating
systems we are running in our thermo-regulated pollution pods.
Heres one just for the programmer crowd: Do you use an IDE
or just a text editor and compiler? If you use a text editor, I have to ask:
Vim or Emacs?
I'm on MSVC Express. I'm not sure which one, since it
keeps changing. 2008 maybe, with 2010 or whatever they are on now
upcomingish. I'm comfortable with the debugger.
How was learning C++ for you? I am at least halfway
competent in Python and C++ makes my head spin. I'm pretty sure you smarter
then me anyway, but was it difficult to learn C++?
Learning the basics wasn't so bad, although my shit is
trash, so I wouldn't want to say I've accomplished anything at all. I don't
think there's a single part of DF where a CS guy would look at it and go "ah,
yes, that's elegant", at least among the parts written by me. I'm good with
learning and abstractions and that sort of thing, so I'm not usually confused
by the things I have to pick up, but I'm generally writing the games too
impatiently to go back and study techniques with an appreciation for
programming as its own deal or to mindfully construct some algorithm that
handles a situation cleverly, and programming isn't something I enjoy for its
own sake.
Your game shares a lot in common with some of the open
source games out there today, but as far as I can tell, it's not an open
source project; you are making a game by yourself. In another interview, I
read that you worry about control of the project. Is this why DF is not an
open source project or was it a decision right from the start that this would
be your project alone? Its quite a task to make a game like DF largely by
yourself, and I know you have help, but have you ever thought about opening up
parts of the game?
DF is partially open source (under a BSD-style license) --
the SDL stuff written by Baughn and B. Helyer and others is available with
the Linux version, and that includes the display, input and audio code.
They've contributed a significant amount of material, and it is usable by
anyone. The rest is closed. It's simply a matter of financial security. I
have absolutely no idea how we would fare if the game were open source, and
it's not a risk I'm willing to take lightly.
Here's one I've wanted to ask a developer like you: is it
just me or are modern games crap? I know you don't make time for Halo or other
modern popular games, but are you aware of them at all? Do you think that the
loss of learning curves and the simplification of games is making our culture
diluted now that mom and dad can play games?
I'm not inclined to play many of the games produced by
large studios, but it's not like I like all of the independent games, since
many of them are just as derivative or uninteresting. There are lots of good
games though. Over the last... I don't know, I've gotten a chance to play
some of the modern console games. Some of them were fun. None of them drew
me in like my very favorite computer games, but between like and dislike, I
liked some of them. I've had fun with some independent games as well.
Looking at the overall sweep of things, compared to, say, the mid to late 80s
and early 90s on the PC, well, it's hard to compare... there are a ton of
games available these days, and lots of them are neat. There are lots of
ideas being tried, and even if there are lots of cynical games that don't
bring anything new to the table, you can find all kinds of things, more so
than at any other time, as far as I remember. At the same time, I feel like
the pace of innovation back when I was growing up extrapolated to an arc of
development in game complexity and procedural generation and what have you
that should have led to games which made the best parts of DF obsolete ten
years ago, and I can't help but feel disappointed. My brother and I are
making games in part because nobody ever made our dream games. It might be
like that for lots of people that write them. Well, we've been making them
practically as long as we've been playing them, but the lack of games was
certainly a driving force, especially starting with the early/mid 90s and
onward. It's pretty blurry by now though, he he he.
Since you've said that you don't play the pop games, do you
keep up with any of the other indy games out there (that seem to keep eating
all my time)? In particular have you taken a look at Minecraft, another game Three Panel Soul gave
some attention to?
I haven't played Minecraft, though it has a thread on my forum and people
really enjoy it there. I think my not jumping in probably has to do with
the social aspect. Or did it have a single player mode? I don't recall.
The developer mentioned adding a DF level importer for it. I don't know if
he actually did that or not. It does make me feel a little weird to play a
game which he said was partially DF-inspired. I'm not sure why.
As for other independent games, I played a bunch of games for the IGF,
which was a lot of fun (Star Guard, Miegakure, Cogs, I remember off the top
of my head)... a bunch of flash games... Spelunky and Aquaria... what
else have I played recently... Solium Infernum... Among the
non-independent ones... the Katauri Interactive King's Bounty games were
fun... Demons' Souls was entertaining for a while... I had never played
any of the 3D platformers, so playing Super Mario Galaxy was fun.
I'm back to nothing now. Elemental should be a game I enjoy, but I have no
idea how it'll be or if I'm going to get it. It'll depend on what I hear.
I liked Shadow of the Colossus and Ico, so I'm also waiting for the Last
Guardian, but I was also sort of torn on both of those in the end, since
they are linear and puzzley, but the overall experience still recommends
them highly.
Right now we are seeing large developers swallow up
everyone, including smaller indy developers. Have you gotten any interest from
a major publisher, or even the aforementioned Steam or Greenhouse
Games?
Yeah, we've been approached with different ideas. Nothing
has come of it, and I think our overall situation is such that nothing
probably ever will. It would take a deal which is insanely bad for them to
make it worth our while, and vice versa, as far as I can tell.
How did you feel about Three Panel Soul "exposing" your
game to people like me? I imagine they must have sent quite a few people to
your game. Was that a good thing or did it make your servers more expensive to
maintain?
We've had growing pains with server crashes and server
moves and dying forums and whatever else, but it's all good. The more people
that play the game the better. The increase in donations tends to more than
cover the expenses, though we're still a very small operation, even among
independent games that are "making it", as far as I can tell, so I'm sure
there are lots of scaling effects I haven't experienced.
I've seen so much positive press when I google Dwarf
Fortress. Has anyone ever actually published something negative about your
game? Any really good quotes your remember?
Ha ha, even the most positive articles will have something
in there about how the interface sucks or that the game "isn't for everyone".
I've seen negative blogs but I don't remember any "official" negative
articles. That could just be the nature of our release process though.
Dwarf Fortress doesn't get a lot of full-fledged reviews, partially because
it isn't really billed or released as a complete game and so it resists that
kind of final-seeming judgment with a score and all that. Publications that
don't care about it just ignore it. People that are pulling for the game to
stick around tend to talk about it and even fight hard in some cases to get a
piece in about it. There could also be a higher frequency of DF-inclined
people in game journalism in general than the overall population of video
game players, since they play a lot of games and DF isn't user friendly. In
any case, if we tried to sell Dwarf Fortress, and it had a one-off release
online and/or in a box somewhere that we somehow magically financed, and it
was high profile enough to receive typical press treatment, I'm sure there
would be a ton of negative reviews. It's a very unpolished game that doesn't
appeal to very many people. That's not to say I don't like it, he he he --
it's just a niche game.
I just have to ask: do you play in ASCII mode or do you use
something like the Mayday tile set? I'm pretty sure if you say Mayday, Matt
from Three Panel Soul might hang himself.
I play with ASCII, yeah. I've been with that for 8 years
now, so it's hard for me to consider what I'd want to be on ideally, if I
could choose anything. If a similar game came along with completely
different graphics, I wouldn't insist on playing it in ASCII if there were
some buried option to do so. I usually stick with defaults in that
department, whatever the game. I change difficulty settings, but I hardly
ever look for mods.
You probably hear this a lot, but why is your game so damn
hard?
A lot of people complain that it is too easy once they
learn how to play it, so it might just be the obtuse interface, bugs and lack
of usable instructions that contribute to the difficulty, he he he.
Do you use Linux or Windows? I assume Windows, for some
reason. Is cross-platform support something you feel is very important now
that it's becoming more and more common to see people use Linux as their main
OS?
I'm on Windows. People appreciate cross platform support,
but they also want it to be done well, so I'm not sure if I'd be able to keep
it up without the help I'm receiving from Baughn and others. Emulators are
good enough now that it isn't 100% crucial though, if you don't have the
resources.
You said you're switching to new developments. Can we tease
out any more clues? Any plans to make new races playable, or even introduce
procedural races? I know you have the to-do list, but is there
anything in particular we can all look forward to in the near future?
The posted plans are the plans pretty much. We're going
to focus on doing things on that list, but we're also not saying much about
the order we'll be doing them in, because we don't know. Some depend on
others, but there's also a lot of freedom there, and it's good to have the
flexibility. I like to let people know what's going on, but there's a
balance to be struck.
You mentioned the limit of a 32-bit OS. Does DF use the
extra threads and the increased capacity of a 64-bit multi-core CPU and
OS?
There's a graphics thread in the SDL version, but yeah, it
only uses the CPU power of one processor in general, which is another
limitation. The limit regarding 32/64 bit is that DF is compiled for 32 bit
operating systems, so it can only address so much memory. There will be
growing pains there, but it should be more easily upgradable than the
threading.
Have you ever had a Computer Science guy take a look at
your code, or been tempted to let a "trained" programmer clean up some of the
messier parts? We happen to have a guy on staff that's in the middle of a CS
PhD...
Nah, I haven't given the code to anybody or even uploaded
it anywhere online in my private server space. I've made mistakes and
released parts I didn't intend in the past, but in general I'm pretty
paranoid about it.
What do you think of our comic, and do you mind that we
will probably use you in a comic to explain why our god-awful web page got an
interview? I promise, we will only embarrass our characters. You'll play the
Dean Martin to our Jerry Lewis.
Zach and I read a bunch of them, and we thought it was
funny. The stuff we laughed at were mostly the same ones over which we're
not linking the site, he he he. We don't mind if we show up.
Lastly, is there anything you'd like to say to the people
who play your game, or anything that you would like to say as long as you are
on an offensive web comic? Hell, give us a script and we'll make whatever
offensive comic you want and no one has to know.
Well, nothing they don't already know. I hope people
enjoy the game! I wonder about a script... nah, I'm no good at it. I used
to write some of the ASCII Art rewards for the donors, but it'd mostly just
be about dwarves stealing each other's booze or mindless violence involving
vermin in the mushroom fields. Zach does much more epic rewards.
Thanks again for your time. I hope my questions didn't
waste too much of it!
Sure, no problem. It was fun.