Making Dungeon Crawl Stone Soup with 253 cooks and no head chef

Brogue was created by one person. Rogue was created by two. Dwarf Fortress? Two people. Caves of Qud – three people. Desktop Dungeons: five. Dungeon Crawl Stone Soup has had two hundred and fifty three contributors. Of these, fifty have been core developers. In the sixteen-year history of Dungeon Crawl Stone Soup, there has never been a lead. No design lead, no engineering lead, no art lead, no producer.

I spoke with David Ploog (dpeg) and Corin Buchanan-Howland (Lasty), two of the most prominent developers on the team, about how and why they make a game with such a sprawl of people. How many are working on the game right now? “That’s impossible to answer, I’m afraid,” David told me, laughing. Corin said, “almost certainly less than twenty, almost certainly more than five.”

Dungeon Crawl Stone Soup, which everyone refers to as Crawl, is one of the most popular and long-lived traditional roguelikes out there. It has an ASCII version, which most of the developers use, and a tiles version, which most of the players use. The goal of the game is to gather between three and fifteen runes, retrieve the Orb of Zot, and ascend to the surface as the demons of hell chase after you.

Players select their character from twenty-six species and twenty five backgrounds (classes) at the beginning of the game, and they choose to worship one of twenty-three gods somewhere along the way. The game has traditional randomly generated level layouts, but it’s also filled with vaults, which are hand-crafted areas or floors that are scattered throughout the dungeon. The game is structured around twenty-two different branches which each have different enemies and level design patterns. It’s endlessly replayable and it’s tremendous fun. You can watch live games of Crawl here.

In 2002, David Ploog, who is a mathematician living in Berlin, worked his way onto the two-person Crawl development team by mapping hundreds of vaults in his free time. He was particularly focused on entry vaults, which are the rooms that the player first spawns in. “For these to be fun, you don’t need ten, you need thousands,” he told me. “[Entry vaults] are so visible to the player, because they die so often. I would come home from university, and every day I would make ten new entry vaults. After a while, I sat there and– you need a new idea, a concept for a level, and I had nothing. I even resorted to silly things, like there’s one entry level where you have all the Tetris pieces.”

“So I asked myself, what is it that makes Crawl so good and NetHack so bad?” (For the record, NetHack is great). He then wrote a design manifesto, which, like every other part of the game’s development, is freely available for everyone to see. This document has been a sort of North Star for Crawl’s design direction. “I had no idea back then how important this piece of paper would become.” Highlights of the design philosophy include: challenging and randomized skill-driven gameplay, meaningful decisions, no grinding or save-scumming, a painless interface, and newbie support. On the forums, players often quote from the design document when arguing about design decisions.

“The second most important thing I did, besides the design document, was opening up the dev team. This was very useful for me, because I had so many ideas, but I didn’t code, so I needed a coder. Fifteen years later, the team has grown.”

Corin Buchanan-Howland, a software engineer in the US, joined the team like many others did. “I was a player at the time. I contributed some very light work, and then I decided to put together a god just for the heck of it. After we got the god into [the game], and people were happy with it, they extended an offer to me to join the dev team.”

Corin’s first god is named Ru. Ru is the god of sacrifice. When Ru judges you ready, he offers a choice between three sacrifices you can make to achieve greater power. Sample sacrifices include: “Sacrifice Eye,” “Sacrifice Words,” and “Sacrifice Love.” Once you have made enough sacrifices to become Transcendent, you can summon an apocalypse, dealing heavy damage and inflicting harmful status effects to all enemies in sight. Ru is a very cool god.

The number one most important qualification that the developers discuss when deciding if they should add someone to the official dev team isn’t their design, art, or coding prowess. It’s their social skills. Corin: “One of the first things that will take you out of consideration is if you’re not someone who’s pleasant to work with. And so, though we are all very heterogenous in terms of our feelings about what designs are good, and about what features should be in the game, that doesn’t prevent us from working together. Because we’re just a relatively easy-going group of people.”

David and Corin both made it clear that there are no leads on the team. There is no one who gets the final say. This element of their development process is utterly unique. Neither David, Corin, I, nor anyone else I’ve talked to, knows of another game that was developed this way.

Here’s how it works: someone on the development team has an idea that they want to pursue. Maybe it’s adding more types of demonspawn, or creating a new species. Maybe it’s AI improvement or balance changes. They discuss their idea with their other developers on the ##crawl-dev IRC, which is open for anyone to see or join. Sometimes, they post a design document on the development wiki, detailing the changes that they want to make. For big things, there is an email list. Those emails are also visible to everyone. Some conversations happen on the Tavern, which is the official Crawl forum, but most them happen on the IRC, where the feedback is more immediate.

Design disagreements are inevitable on any team. On a typical game development team, there’s a clear way deal with this. Maybe the idea is worth pursuing, or maybe it doesn’t fit with the overall vision for the game. The lead designer, or the manager of the relevant design team, makes the final call. But with no lead designer, creative director or vision holder, the path forward is less clear.

One of the first conflicts that David remembers was centered around specific layout considerations when adding new gods. At that time, there were twelve gods, and all of them had altars where you could choose to begin worshiping them in the ecumenical temple. A designer from the original crawl team, Erik Piper, thought that new gods should also appear in the temple — that the temple should present players with all possible decisions. David, however, was not on board.

“I was against having all of them, because I had drawn too many temple maps, and we would have to change them every time we added a god. I had so many god ideas!” For two releases they couldn’t work out the issue, so they didn’t add new temple gods. “Later on, I convinced Erik that it could be cool to have overflow altars which appear somewhere between dungeon 2 and dungeon 10. You would find all of the temple gods, but not necessarily in the temple. I think this was actually better for gameplay.” It created new interesting decisions for the player: worship Vehemut, whose altar is right here, or hold out for Sif Muna’s altar?

As the team grew, David worried about the precedent set by other games in the genre. “In NetHack they have this model where if somebody [on the team] objects to something, it will not happen. So every person can veto every change. And in the end you could see that NetHack was dead, much less from having no releases – even when they had a few releases the changes that would appear were miniscule. Minor and minor. And they did improve, but they wouldn’t do anything radical. I was very much afraid that in Crawl, something like this could happen.

“I try very hard to always shift in the direction of more changes. Because if you try something and it doesn’t work – and this happens from time to time – you can revert. But if you don’t even try, you are stuck. We have to try radical things.”

The most important part of this – what I see as the skeleton key to the entire process – is the ability and willingness to cut content. Corin told me: “being open to removal is especially important in an organization that is leaderless. Because it means that just because something gets in doesn’t mean that it stays in. If we always just grew the game, even with the best of intentions it would metastasize into something horrible, and we’d need to start imposing rules about who can make decisions and stuff like that. But if we allow people to remove things, they can just quietly go: ‘well, maybe I don’t like this now, but let’s see how it plays out.’ There’s never a point when the discussion is over forever.”

Crawl always has two major versions: the latest stable version (right now it’s 0.19), and Trunk, which is the newest build that is the most subject to change. In Trunk there may be major balance problems or bold changes that aren’t necessarily fully realized. It isn’t too hard to convince your fellow developers to let an idea make it to Trunk, and when people can play with it, it’s usually much clearer if the idea works.

Even when something makes it out of Trunk, however, it’s not immune to the axe. Pakellas, the god of invention, was added in 0.18 only to be removed in 0.19. Recent builds have cut more and more levels from each branch; In in 0.20, Corin intends to trim the core game, cutting Lair to 4 levels (from 6), Lair branches to 3 levels (from 4), and Depth and Vaults to 3-4 levels each (from 5).

Cutting content is, unsurprisingly, not something that most players are excited about. Even the least controversial changes have players up in arms. In 0.15, the encumbered status effect, along with item weight in general, was removed to near universal praise. But a few players were very upset. “It doesn’t matter what we remove – somebody felt that that was the best part of the game. Invariably.” said Corin, laughing.

“It’s a bit like how you raise children,” said David, to more laughter. “Hear me out! In a long-term project like Crawl, we as a dev team shape our players. You see? [When we remove things,] the usual suspects will be annoyed, and somebody will say, ‘that’s it! I quit!’ As a dev team, you get the point across that removal is an option. When they’ve seen this for a few versions, they say ‘okay, they remove things, but they also add things, and in the long run we will be fine.’ [There are some] players who are somehow more devout than even us, and they demand removals. It can happen that on a given day there are 10 topics [on the forum] that say ‘remove this’ and ‘remove that.’ In this sense, shaping our players has worked really well, and we’re a little bit afraid of the creature that we’ve raised… I don’t know what that says about my real children.”

What about personal conflicts, another inevitability of any sort of long term artistic collaboration? “I’ve only had one other dev who I’ve really had a personal conflict with,” says Corin. “And my strategy for personal conflict is always just to address it right away. And so I brought it up with that person in IM immediately. And we talked it out, and then we talked it out another time and another time. Every time we talked about it, it would go away for a while. I can’t say that it’s fully resolved at this point, but… you know. These things are a work in progress. Nobody is perfect. There’s gonna be conflict and that’s just a part of life. By and large, we are a group of people who can disagree without actually hating each other. And I think that’s really important. David adds, “let me try to quantify it. Of all the people who have dropped out of core development over the years, I can only think of one who did so over a question like this. I think that this is reasonable. We’re in a really good situation.”

It helps that Crawl is totally free. There isn’t even a way to donate to the developers. Money is a major source of conflict and by removing it from the equation, the Crawl team ensures that the people who are working on the game are doing so because they want to, not because they need to. There are no sticky questions of how to divvy up donations, and no need to measure how much each person has contributed to the team.

Crawl feels like a quilt being made by hundreds of people. When an auteur or even a team with a creative director make a game, everything is stitched together with a cohesive whole in mind. But with Crawl, there are people all around the edges, making things that are strange and personal. The gods, the monsters, the branches, the backgrounds, and so many other parts of the game are inventive, surprising, refreshing – and that’s because they’re made by 253 pairs of hands. There are so many ideas here. It’s spectacular.

I asked Corin and David what most excited them about the future. Corin’s current projects (“Oh my god, I have a list as long as my arm!”) include a sizable rework of ranged combat, increasing its damage but making ammunition much scarcer. Wu Jian, the Council God, was just added to Trunk. Desolation of Salt is being upgraded from a small portal to a full-sized branch. Someone’s reworking the swamp worms. David is focused on making the game harder. “It’s too easy,” he told me four different times.

Dungeon Crawl Stone Soup is an extremely difficult and extremely unique game. No other team could have made it. You can and should download it here.

19 Comments

  1. Kaeoschassis says:

    Yeah, think I’m gonna have to go back to Crawl at some point…
    It’s not like I stopped playing over any specific devteam decision or, say, because they axe a lot of stuff. It’s just that for a long while I felt like the overall direction the game was going was not one I enjoyed.

    Reading this made me realise that maybe I can open my mind to that direction a little more – there’s room in my life for many kinds of games.

    • tanith says:

      I just play it on and off.

      Sometimes I get in the mood to play a bit of Crawl. Luckily it’s really easy because you can play on one of the online sites, like this one.
      link to underhound.eu:8080

      At some point I ragequit but a few months later I usually really feel like playing Crawl again. It has been like this for years.

  2. CherryPhosphate says:

    >In the sixteen-year history of Dungeon Crawl Stone Soup, there has never been a lead. No design lead, no engineering lead, no art lead, no producer.

    This is technically correct – but Crawl Stone Soup is a continuation of a one man roguelike called Linley’s Dungeon Crawl from 4 years prior to it. The whole minimalist / meaningful choice design ethos and overall structure are inherited directly from there.

    link to en.wikipedia.org

    Anyway awesome little game. As it happens I’ve just returned to it for another bout myself – pleased to find it is now on Android too where it is surprisingly playable using an onscreen kb overlay.

    20 years of play and I’ve only ascended with the orb once (at least only once legitimately, I did save scum a run way way back in my immoral youth)

    • Yglorba says:

      I was going to say. The game has been maintained by a large team since then, but the core structure and basic concept was put together by Linley Henzell; the game is still very close to his original vision.

    • gammafunk says:

      It is true that Linley Henzell was the original creator and lead development for many versions. However by the time he stepped down from development in v3.30 (early 1999), there was a group of people doing with dev. Some of these (e.g. Brent Ross) would be involved all the up to the last 4.0 release, and Brent’s code rewriting was important for the first DCSS release.

      For the story of how greensnark and others helped create DCSS, I strongly recommend the wonderful write-up he made:

      link to crawl.develz.org

      Darshan is still involved with DCSS today, and maintains the the amazing Sequell IRC bot/server system we use to keep track of players’ onlines games.

  3. Premium User Badge

    Waltorious says:

    Great to see an article about my favorite roguelike here on RPS! It was also a really interesting read, since I don’t actually hang around the forums or IRC so I only had a vague sense of how the dev team worked.

    I can’t recommend this one highly enough. It strips away unnecessary complications without harming the core challenge, making it the “oldschool” roguelike that is most friendly to new players. The different gods are awesome and really change how you play, adding to an already massive variety in approach when challenging the Dungeon. And the game keeps evolving. Sometimes I feel I’ve had enough and take a break, but I always come back to try out some different characters or see how the new additions/deletions in the latest release shake things up.

    And as the article says, it’s completely free, so why not check it out?

  4. Drakedude says:

    Really, really needs to improve the early levels replayabiilty.

    “No grind” is a bit of a myth. If it’s not orks, it’s literal sheep. Judging by it’s continuing nuisance a decade later, priorities wouldn’t hurt.

    Personal wish, but i would like a little more story with my dungeon crawl. The game has all the ingredients; specialised characters, unique skill-sets, stylish equipment; but the lack of worldbuilding and AI impaling themself on my sword just undoes that. This game could be on another level if it just thought about what the kobolds do when they’re off-duty, and you can do that without bloating the game.

    • Premium User Badge

      Waltorious says:

      To me, the game doesn’t feel like “grind” because, even if I am fighting lots of monsters, I am still exploring and progressing through the dungeon. There’s no point at which I have to stop and just fight over and over again in a “safe” location; in fact, that’s impossible, and some of the hardest choices can be which extremely dangerous place to venture next (since staying put is not an option). But, I can understand wanting more variety in enemies in the early game. The devs have been slowly tweaking enemies and removing ones that are too similar, and I think standard sheep were actually removed recently. But there’s still a ways to go before the enemies (especially in the early game) feel varied enough.

      As for more story, I can see your point, but I kind of like how vague the premise of Dungeon Crawl is. I know nothing of the surface world, or why so many adventurers try to wade through the Dungeon, so I’m free to imagine my motives. I do agree that more character to the Dungeon and its denizens would make it more interesting, though. But I feel that would require a pretty major change to how Dungeon floors are generated (they have no resemblance to real places as they are) and enemy AI. Maybe something like that will go in someday! As it is, my interest in the game is in its systems and challenge, which are fairly abstract.

      By the way, if you want more story in a roguelike, you should check out Caves of Qud, which is currently in Early Access on Steam (there’s an old freeware version too). Probably my next favorite after Dungeon Crawl, even though it’s still unfinished (but regularly updated). Really strong worldbuilding, and there are even quest lines to follow for an authored story (as well as a huge world to freely explore).

    • Premium User Badge

      Harlander says:

      If you want a bit of story in your classical roguelike, you might find ADOM to be to your taste.

  5. frightlever says:

    Ahhh, that makes sense.

    link to en.wikipedia.org

    “Stone Soup” being a way for many people to each contribute what little they have towards making a broth that will feed them all.

    For some reason when I saw it mentioned I assumed DCSS was the one with Japanese devs, but I Googled and that’s Elona+.

  6. Snargelfargen says:

    The brilliant thing about this game is that there is a solution to just about any death. There is always something that can be done to avoid or get out of a risky situation. Just slow down, think, and you will find it. Playing DCSS is like a zen exercise, where most deaths are a result of the player’s impatience (excepting the learning period for new players. You will die lots in the start).

    Despite this being my favourite game, I’ve stopped playing trunk some time ago when they removed the “resist mutation” property. Even if it didn’t work all that well, I liked having that safety blanket, and mutations come in tremendous bunches almost unavoidably in some situations. Mutations can be fun and hilarious, but I think it’s too much of a good thing at the moment.

  7. Michael Fogg says:

    Which will take me closer to Rogue Valhalla – this or Tales of Maj’eyal?

    • Premium User Badge

      Waltorious says:

      I’ve only played a little of Tales of Maj’eyal, and it was a while ago so I don’t know about the latest updates. But here’s my take:

      ToMe seemed to take a lot of design ideas from MMOs (I’ve actually never played an MMO, but judging from what I’ve read about them). Characters have skills with cooldowns, and there’s lots of choice of skills from a tree as you level up. Combat therefore feels really involved, with lots of tactics beyond “bump into enemy”. Different areas are heavily leveled, so you can wander to the wrong places and get hopelessly outclassed if you haven’t leveled up enough. Different classes have different starting areas, and more are unlocked as you play. Everything’s connected on a persistent overworld map, but individual locations have randomly generated maps each time. I had a few problems with it: area maps have boring, repetitive layouts, in most areas there are swarms of enemies that pose no threat at all followed by a super tough boss, starting again after dying meant a lot of repetition through the same areas (although permadeath is optional). I never got very far though, so I don’t know how things improve later.

      Dungeon Crawl is simpler in many ways but I feel it has really cut out the annoying parts. It’s just you versus the dungeon, it’s engaging right from the start even after dying with a previous character, and it’s remarkably fair — most deaths are avoidable, you’ll never face certain death from impossible higher-level enemies like you can in ToMe. I don’t feel like I have to trudge through starting areas before it will get interesting.

      So it depends on what you want. If you think skill trees and involved combat plus a wider world with more story sounds cool, check out ToMe (and they may have fixed or addressed my complaints by now). If you want a more traditional dungeon crawl with tons of character options that’s been refined over many years to offer a stiff but fair challenge, go for Dungeon Crawl. Might be worth just trying both and see which you like better.

      Edit: forgot to add: ToMe has a really friendly interface with lots of nice menus. Dungeon Crawl has a pretty good interface, especially in the rules version, but it does retain a number of keyboard commands from the early days of roguelikes which may make it harder to learn in the beginning.

      • Premium User Badge

        Waltorious says:

        Argh ran out of edit time. Meant “tiles version”, not “rules version” (autocorrect).

  8. April March says:

    (NetHack is bad. Compared to Crawl, at least.)

  9. regret-index says:

    As one of the Crawl devs most openly critical of Crawl the sheer polite optimism in this article makes me cackle to myself. No central authorities or planning, the overhead sword of removal, and little incentive or solidarity amongst devs also readily means the excuses of action and inaction (and everybody focusing on their own pet projects) brushes aside meager attempts at consensus. The playerbase is perpetually fractured in opinion with little self-awareness while omnipresent automation and artificial character combo length results in overplaying the game until one gets sick of it and calls for idiosyncratic removal. The inherent design maximalism of classical roguelike structures has made removal barely break even versus addition, while leaving large sections of the codebase to rot until specialist devs happen to take enough of an interest. So on and so forth. It’s a design dumping ground, and the fact that it has a better design philosophy than the rest of the classical canon (read: any design philosophy beyond cruelty and jokes) ends up bringing in and burning out newcomers devs in quite the cycle.

    We dropped two devs and had two retire for a while over design decisions, for the record.

  10. bisonbison says:

    Loved this article. I was super into crawl for a year or so b/c I could play it between patients at the public health clinic I worked at. The online servers were one of the few things not caught by the content filters.

    The transparency of the dev process was always really intriguing to me, and it made me feel like I, as a player, could do something, just by posting on the forums or trying to clean up the game wiki (which, unfortunately, is gated by a registration process and focused on last stable release, meaning no one ever actually feels like updating the articles because by the time changes make it out of trunk they’re old news).

    My claim to fame: I came up with the name Ru for the god described in the article.

  11. aliksy says:

    Crawl is by far my favorite roguelike. It helps that it has no load times, and you can get to the interesting parts pretty quickly. The convenience of autoexplore, auto-travel, and ctrl+f to search for items are huge plusses.