Don’t Start A MUD

God, it’s been so long since I posted here – work has been busy, and as I said in a previous post I’ve become somewhat involved in an extra-curricular project looking at accessibility in board games.  I don’t know if you knew this, but boardgames are awesome now.  You can check that out that action over at the site Meeple Like Us.  Chip in, if you’re a boardgamer yourself.

So, to get myself back into the habit of this, I thought I’d post an article I wrote for Imaginary Realities, about a year ago.  Since there hasn’t been any sign of another issue of that materializing, I’m going to post it here as a warm-up.


Don’t Start a MUD

So, you want to start a MUD?  That’s great to hear – seriously, there’s nothing our hobby needs more than an influx of bright, enthusiastic and motivated people.  We need newbies who look at text games and say ‘Yes, this is a thing that I want to make part of my world’.   Most of us are world-weary cynics, the passage of years having drained our souls of what animating juices they once possessed.  We’re dried, desiccated corpses going through the motions of life because we know nothing else.  We’re cruel, twisted shells of our once bright past selves.  Life has broken us, and now we’re just going through the motions until the sweet release of the grave.  We need new blood.  Specifically, we need your new blood.  We need your delicious, invigorating blood.

But yeah, don’t start a new MUD.  For the love of all that is good, please don’t start a new MUD.

I should pre-empt the rest of this article with a disclaimer:  If you already know what’s involved in setting up a new MUD, and you know what goes in to developing a game people want to play, then ignore everything I have to say here.  This article is aimed at those who don’t yet know they are teetering on the precipice of a dark abyss from which they can draw no joy or sustenance.  I know this is all going to sound very negative and discouraging, but honestly all I’m trying to do is save you from yourself.

If you’re curious as to whether I’m aiming this article at you, then the answer is yes.  If you’ve ever posted to a MUD related forum saying ‘I’m new to text games, but I want to start my own’, then yes.  If you have a great idea but no idea how to make it a reality, then yes.  If you’ve looked at MUDs and said ‘There aren’t even any graphics, this’ll be easier than making a different game’, then yes.  If you’ve never developed on a text game before but think you’ll pick it up as you go along, then yes.  The rest of you have already looked at the topic of this article and said ‘Screw you, guy’ and moved on – you already know what’s in here, because you’ve had this same conversation already with a dozen or more enthusiastic young guns.   It’s fine, off you go – I know you’re busy.


Okay, now that we’ve got rid of those assholes, let’s talk.

Honestly, I do think it’s great that you’ve decided you have a strong desire to make a MUD.  That’s the absolute first thing you need, because let me tell you buddy – nobody is going to believe in your project except you.  It’s not that we  don’t think you’re up to it, it’s just that we’ve seen ten thousand new MUDs pop up, and 99% of them sink without a trace. You might be the one to roll the hard six and beat those odds, but it’ll be a long time before anyone else is going to put money on you succeeding.  The sad fact is that you most likely won’t.  You’ll start the thing up, post some enthusiastic requests for volunteers, maybe even say you’re open for players[1], and then a few months later you’ll take the thing down because it had just been a ghost-town from start to finish.  Lacking the players, you lacked the motivation to develop.  Lacking the motivation to develop, you lacked the players.  You got eaten by the flesh-rending teeth of a vicious circle of negative reinforcement.

You see, MUDs are deceptive beasts.  You think ‘no graphics, and thus it’s easier to do’, but that’s to ignore the vast amount of complexity that floats below the surface of an online game.  MUDs are icebergs – 90% of what makes them up can’t be seen.  Yes, I know I said earlier they were beasts, but they’re icebergs.  Beasts becoming ice, ice becoming beasts.  Werebergs.    It’s not hard to open up a socket and listen for incoming requests, but doing that robustly and in a way that makes for a satisfying experience is several orders of magnitude more complex.   The sheer depth and complexity of an interesting MUD will dwarf that of even many AAA mainstream titles.  My own MUD, Epitaph, is around 1.4 million lines of code.  Some of that code is trivial – room definitions, config files, and so on.  Some of it is mind-bendingly complex, dealing with asynchronous event handling, AI routines, and complex natural language parsing.   Unless you’re deeply familiar with a MUD engine, no matter how good a programmer you are, your first task is to learn every inch of it because *everything* you want to do takes expertise.  You don’t know it yet, but even the things that sound like they’ll be a breeze to do are going to kick your coding ass until you know every inch and contour of the environment over which you’re claiming Lord and mastery.

Now, I know what you’re thinking – ‘you’re a hateful misanthrope with no friends.  Of course *you* had to learn everything.  I’ll have a team of people who will be with me all the way!’

Seriously, you’re so damn cute I could just pinch your little cheeks.  Do you have a team around you right now?  Take a good hard look at them.  Look at the ones to the left.  Look at the ones to the right.  In a few months, they’ll all be gone.  If you’re lucky, you might find a handful of people over the course of many years that will be willing to lend their time to your efforts.  If you’re coming at this fresh, don’t even count on that – remember, nobody has any reason to believe that your MUD is going to even reach a state that’s worth opening.  If you’ll never open then any time anyone spends developing is going to have only intrinsic value – that’s okay, you can run a whole MUD development team on that. IF you’ve got the right people.

Unless you’ve got a dedicated, self-motivated team around you already, you’re on your own for most of this.  What that means is that you might have collaborators for some of the things that need to be done, but you’d better resign yourself to the fact you’re going to have to do 95% of it yourself.  That percentage will go down as you start to make your bones and prove you’re a safe pair of hands, but expect for a couple of years at least that everything that needs done is your job, and yours alone.  If you don’t do it, it won’t get done.  If you don’t know how to do it, you’d better add ‘learning how to do it’ to your todo list.  Yeah, that thing is already huge – it’s going to be years before you’re taking more things off than you’re putting on.

You might want to throw your idea out to the wider MUD community, such as it is, and call for developers.  You may as well wish for a pet unicorn.  The sad fact is that 95% of MUD recruitment is a waste of time.   Set your standards too high and you’ll get nobody coming along – anyone who has the skills will already be perfectly capable of setting up their own game without also having to hold your hand.  Set it too low and you might get some people online but each and every one of them will be a net drain on your productivity.  In all cases, expect most of them to drift away, either through disillusionment or as a consequence of life’s inexorable attrition.   Mostly though, you need to understand the dynamics of the wider community – there are SO MANY MUDs, and there are SO FEW DEVELOPERS that you need to be offering something spectacular to get anyone worth having to express an interest.   Even then, you better live up to your promise or they’ll throw you aside like a baby’s filled nappy.  You’d better be clear too about what *you’re* bringing to the table.  If you’re asking for developers and writers and your plan is to be the manager, then I wish you the best of luck but nobody worth having is going to buy what you’re selling.  Recruitment is for closers, and ‘management’ is not valuable enough a skill to inspire the troops.  Management is what you’ll be expected to do *alongside* actual contribution.  ABC.  Always Be Contributing.

What happens if you pitch it right between the two?  That’s when you get the wild cards – you have no idea whether they’ll be good or not.  It takes time before a new volunteer to your project is actually contributing – they need to learn the ropes.  Or rather, they’ll need you to *help* them learn the ropes.  Every minute you’re helping someone learn how to contribute is a minute you’re not contributing yourself.  Some people are quick learners and before too long they’re adding things to the game.  In my experience, both on Epitaph and on Discworld where I used to be an admin, the vast majority of people you hire will take more of your time than they will ever save you.  Most will find the task of being a developer is entirely too much work for too little gain.  It looks fun from the outside, but MUD development is about hard graft.  It’s incredibly fulfilling and very creative graft, but make no mistake – this is a time consuming and challenging hobby.  Before people can start contributing they need to be willing to undertake what is essentially a self-directed course of intensive study.  Those that know programming already might have a head-start, but those that don’t are going to have to learn a difficult topic that requires hours and hours and hours of practise.  They’ll also need a mindset that is vanishingly rare if they’re ever going to manage more than putting a few simple objects together – they’ll need to be the kind of person that will spend five hours down a twisty rabbit-hole of code just to find out why their output is one column to the right of where it should be.  That’s a lot to ask of anyone you’re not paying, and when the immensity of the challenge finally dawns upon them they will likely drift away, probably forever.

Let’s say that doesn’t dissuade you – you think ‘Nah, this is nonsense.  I’ll get a MUD engine, stick it up on my own computer, and I’ll be putting together my ideal game world within minutes’.

You’re not wrong.  There are dozens of well packaged MUD engines out there, and if you pick the right one you will indeed be putting together rooms and areas within minutes.  I just hope you’re happy with that, because that’s all you’re going to get to do.  I also hope you’re happy without having any players, because outside of well-themed and heavily developed MUDs, nobody plays a MUD for the areas.  They play it for the experience – for the novelty of new game mechanics and fulfilment of personal power fantasies.   That requires more than just new rooms and areas – it needs coding, and lots of it.   In many ways, the ease of setting up a MUD is unhelpful – it makes it looks easy, but all the stuff you genuinely *want* to do still requires long, hard, gruelling work.  Do you want a new monster that has a special attack that doesn’t already exist?  Learn how to code.  Do you want to add a new spell that turns your character invisible?  Learn how to code.  Do you want to create a ‘palace guard’ system that players can join?  Learn how to code.  Learn how to code otherwise the most you can accomplish is just a respray job.  I often think that ‘newbie friendly’ MUD packages have lost the community more potential MUD enthusiasts than they have ever gained it.

Maybe you’re already a skilled programmer – that’s great!  I hope you’ve already worked on a large legacy project though, because that’s the only way to appreciate the real scale of what you’re undertaking.  You might know, in the abstract, how to write the code to accomplish something – what you also need to know is where you write it, and what it needs to hook into.  MUDs are incredibly interconnected beasts, and a change in one place rarely achieves your goals without the new reality being reflected everywhere else.  What’s most likely to happen is that it works a bit and then everything grinds into a soup of syntax errors and runtiming code.  Now, you can get past that – put your shoulder to the grindstone and push through the pain – it’ll all eventually start to make sense.  It’s just that months of a fruitless, frustrating learning experience is unlikely to be quite what you had in mind when you embarked upon this foolhardy adventure.  You presumably wanted to make a game.  You were a fool – a mad, passionate, impetuous, beautiful fool.

Let’s say though that everything lines up and you’ve got a group of people around you who are willing to help out.  You’ve got a blend of skills that ensures that everything you want to do can be done.  You’ve got a good dynamic, and people log and contribute on a regular basis.   I hope you can keep that going for a few years, because that’s how long it’s going to take to get anything interesting done.

It’s easy to underestimate how much work goes into a MUD, but let me tell you – I started Epitaph in 2009, and despite putting in several years of *very* intensive development across a multi-developer team we didn’t open in 1.0 form until 2013.  That’s four years, and I’d say that was unusually rapid given how heavily modified we were.  Sure, we opened for play-testing earlier than that, but don’t expect to build an audience for a game that is constantly breaking.  Don’t expect to build a player-base when all accomplishment is subject to being revoked over the course of an update.  You’ll get passers-by and rubberneckers.  You won’t get players in the sense that anyone understands it.  Don’t get me wrong – they’ll be worth their weight in gold – every complaint and whine is user feedback you can use to improve what you’re offering.  They’re just not your players.

Four years took us from conception to release, and we’ve been developing it daily ever since.  It’s still not finished – I rarely advertise Epitaph’s existence because even now it’s not in a state that I feel comfortable with for new players.   In 2013, we were playable *enough* to release, but even now we’re still full of bugs and far from where I want us to be.  We’ve come a long was since 2009, but I suspect it’ll be 2016 before Epitaph is in the state I want.  Some of that is down to my own ambitions for the game, but most of it is just down to the fact it’s a metric boatload of work to get anything interesting done.

Do you see those timescales in there?  They are almost geological – that’s the scale of investment you’re going to have to put in.  Just think what you could accomplish in six years – it’s likely more than an online game only a handful of people play.

That’s the other thing, isn’t it?  It’s so hard to get people to play a new game that you’re essentially building it for yourself.  Now, that’s not a bad thing – first and foremost, Epitaph is a game I enjoy to play.  Other players are secondary to that objective.  Some people build ships in bottles, I build post-apocalyptic zombie experiences.  If you’re looking to become the next big hit though, do me a favour and look at the top ten MUDs on your favourite MUD site.  Look at when they were founded (remembering how much more popular MUDs were back then, and how much easier it was to get volunteers).  Now imagine how much dedicated development they’ve had over each of those years.  Now look at what you’re planning to put together – do you think you can compete?  You probably can, if you offer something new and interesting, but you’re always going to be fighting an uphill battle.

Discouraging, yeah?  Well, I did warn you.

So, what can you do?  I really don’t want to put you off becoming involved in MUD development, because we need all the bright and enthusiastic support we can get.  It’s just that the seduction offered by a new MUD is a problem for all of us – people start, become overwhelmed, and leave Mudding forever.  We need to do better in keeping people engaged.

What I recommend then is earning your bones on an existing MUD, at least for a while.  It’s fine to start a new MUD once you know the scale and complexity of the task – I did that, back in 2009.  The key thing is that I was under no illusions as to what I was letting myself in for – I’d been developing on Discworld from the year 1999, and I’d worked at all levels of the MUD (and on other game engines) for a decade.  There was no question mark for me over what I was doing.

Most MUD admins are keen to see people offering some help, although past experience tends to make us a little gun-shy.  Recruitment is difficult, but volunteering is easy.  Find a MUD that has a theme you like.  Play that MUD for a while – no, seriously, play it.  You need to like the game that you develop, and if you aren’t willing to login for fun I certainly won’t trust you to login for work.   Remember that at least to begin with you’re a net drain on productivity – I need to know that you’re going to be a productivity gain in the long run.   Be upfront about what you’re looking to do – I’ve absolutely hired people in the past who said that their end goal was to walk away and start their own game.   Clear communication in that regard not only makes sure that everyone is on the same page, but it also means that you’re more likely to find yourself able to learn the skills you actually need to learn.  It can be an apprenticeship, and admin will often appreciate that they have someone that might alleviate some of the load in areas they wouldn’t have otherwise expected.   Make sure that your contributions to the game belong to you and you can take them to another game when you leave[2] – that gives you a head-start when you branch off on your own.  You’ll probably have to do some re-engineering, redesigning or re-skinning but don’t underestimate how much time you can save by having the bones of a system or area that you can just plunk down in your own fresh game.

If you do this and find nobody wants to take you on under those terms, the worst you’ll do is save a lot of wasted time.  Not just for you, but for those on the MUD that you’re looking to volunteer for.  Remember that it’s easy to think of your volunteered effort as ‘free’ for the developers you’re approaching, but it really isn’t.  It has to be worth it on both sides of the equation.  Keep looking until you find someone who is willing to facilitate your aims – they’re out there, they really are.

Give yourself a few years of time on the backseat before you attempt to take the wheel.  It might seem like you’re just cooling your heels when all you want to do is build your dream game – that’s only because you don’t know what you’re doing.  Time spent preparing is never time wasted.  Not only will this prep time mean that you’ve got sufficient understanding of what you’re getting yourself in to, it’s also time spent learning your way around a community of people that can potentially help.   The state of play when you’re coming at this after a few years of development is massively different – you can point to a body of work and say ‘that’s why you should trust me when I say I can deliver what I’m promising’.  If at the end of those years you don’t have an inspiring portfolio, then remember you would have accomplished much less on your own anyway.

When I left Discworld, I had a pretty hefty resume I could leverage and that was enough to make people interested in helping out.   Much of the code I developed on Discworld was re-purposed for Epitaph. The sum total of my experiences with Discworld told me what I would need to do to the game engine to make it work for what I wanted to do.  All of that experience was invaluable, and had I chosen instead to start my own MUD back in 1999, even when the climate was more favourable, I probably wouldn’t have had a MUD at all to call my own.  It wouldn’t have led to real life successes[3] that helped me progress in my career.  I would have just found something else to do with my time.  Whether that would have been better or worse, I’ll leave as an exercise for the reader.

Don’t start a MUD, buddy.   Don’t put yourself through that.  You’re too important to the hobby for us to watch you grind yourself out of it.


[1] Don’t do that – unless you’ve got something new and original to show people, then you’re not a playable new game.  We’ve seen the stock games before.

[2] Obviously, with the understanding that the original game gets their own, non-revocable licence to use what you produced while there.


Leave a Reply