Writing Mob Programs and Building Areas for a Text Game
We still remember the first mobile we ever created. It was a grumpy innkeeper in a village that existed only in our imagination, and when a player typed greet innkeeper and he grunted back a scripted reply, something clicked. That tiny moment of cause and effect, written in a few lines of mobprog code, is what hooked us on building for MUD games. Area building remains one of the most rewarding corners of retro online gaming: you write rooms, populate them with mobiles, wire up quests, and then watch real players stumble through your world in ways you never predicted. In this guide we will walk through mob programming and area design for text-based RPGs, from choosing a codebase to playtesting your creations with the UK MUD community.
Why Mob Programs Matter in MUD Games

Mobiles — mobs for short — are the non-player characters that give a MUD its pulse. Without them, a world is just a set of empty rooms with descriptions. Mobs hand out quests, guard treasure, start fights, spread rumours and sell supplies. In text-based RPG design, they are simultaneously the storytellers, the difficulty curve and the reward dispenser. Get them right and your zone feels alive; get them wrong and players either walk through unchallenged or die before they can type flee.
Long-running UK MUDs show how much mileage mobs can deliver. Discworld MUD, a UK-based text-based RPG, has been running since 1991, and its mobiles range from cheeky street urchins in Ankh-Morpork to the Patrician’s clerks who respond to a bewildering range of player commands. MUME (Multi-Users in Middle-earth), founded in 1992 and with a strong UK player base, leans on mobs for atmosphere and danger in equal measure — orc patrols, wandering merchants and NPCs that react to the shifting politics of its world. Neither game would have lasted decades on room descriptions alone.
The role of mobs in text-based RPG storytelling
Mobs carry narrative weight that static text cannot. A guard who remembers you were caught stealing last week, a ferryman who only appears at dusk, a blacksmith whose dialogue changes after you deliver his lost hammer — these are all achievable with triggers and variables. When we build, we treat each mobile as a small character with a motivation, not a hit point sack with a name. That mindset separates forgettable zones from ones players return to.
Balancing challenge and reward for UK players
Balance is where most new builders trip. A mob that hits too hard punishes exploration; one that drops legendary loot for no effort breaks the economy. We aim for a gentle curve within each zone: low-risk mobs near the entrance, tougher encounters deeper in, and a boss or quest-giver at the climax. Because UK players often log in during evenings after work or study, we also avoid designs that demand hours of uninterrupted grinding — short, satisfying loops tend to land better.
Getting Started with Mob Programming
Mob programming sounds intimidating until you realise most of it boils down to triggers: when X happens, do Y. You will spend your first week learning the syntax of your chosen codebase, and the rest of your building career refining the logic. The good news is that the tooling has matured over three decades, and there are friendly communities ready to help.
Choosing a codebase: CircleMUD vs ROM vs SMAUG
CircleMUD and ROM are popular codebases for building MUD games, and both remain sensible starting points. Here is how we think about the choice:
- CircleMUD — clean, well-documented and beginner-friendly. Its OLC (online creation) tools let you build rooms and mobs without leaving the game, which is ideal for newcomers.
- ROM — a derivative of Merc with a large legacy of areas and snippets. Mobprog support is solid, and there is decades of forum wisdom to draw on.
- SMAUG — richer feature set including its own scripting language, but a steeper learning curve. Worth it if you want complex, stateful mobs.
Whichever you pick, learn the in-game OLC commands first. Typing medit or aedit and seeing your changes live is far more motivating than editing flat files offline.
Writing your first mobprog: triggers and variables
Start with a greeting trigger. Something like: when a player enters the room, if they have not met this mob before, say a line of dialogue and set a variable so the greeting does not repeat. From there, layer in responses to keywords, a simple quest flag, and a combat behaviour. Variables are your friends — they let a single mob remember a player’s progress without any database work. Keep your first programs short, test them obsessively, and resist the urge to write a fifty-line script before you have confirmed the basics work.
Designing Areas for Interactive Fiction
An area is more than a grid of rooms. It is a place with a mood, a history and a reason for existing. In interactive fiction, the player’s only window into your world is text, so every description has to earn its place. We like to draft an area’s story on paper first: who lived here, what went wrong, what the player is meant to feel on arrival.
Mapping and room descriptions that immerse players
Draw your map before you build it. A simple grid on paper prevents the classic nightmare of asymmetrical exits and rooms that lead nowhere. When writing descriptions, favour concrete sensory detail over purple prose: the smell of wet stone, a cracked bell half-buried in nettles, the sound of gulls beyond the harbour wall. Vary sentence length. Avoid repeating the same opening phrase across a zone — players notice, and it flattens the atmosphere fast.
Puzzles and quests rooted in British folklore
Some of our favourite zones draw on local legend. A quest to return a stolen stone to a standing circle on the Yorkshire moors; a smugglers’ cave on the Cornish coast where the tide timer matters; a knocker in a Cornish tin mine who must be placated before the shaft can be entered. British folklore gives you ready-made hooks — boggarts, selkies, the Green Man, highwaymen — and players respond to them because they feel grounded rather than generic. Classic text adventures such as those from the 8-bit era used the same trick, and it still works.
Testing and Balancing Your Creations
Nothing humbles a builder like watching a real player break their zone in ninety seconds. That is exactly why we playtest early and often. Use administrative commands like stat to inspect a mob’s hit points, damage and armour class, and goto to jump straight to any room for a quick check. Then invite others in.
Common pitfalls: overpowered mobs and dead-end rooms
The two mistakes we see most often are mobs that hit far above their level and rooms that trap players with no obvious exit. Both are easy to fix once spotted, but painful for the player who finds them first. Other frequent issues include:
- Mobs that aggro on sight in a newbie zone.
- Quest items that can be picked up by the wrong player and lost.
- Exits that are hidden with no in-room hint.
- Rewards that dwarf the effort required.
Gathering feedback from the UK MUD community
Telnet gaming remains a core way to access retro online games, and many UK players are veterans who will happily tell you exactly what is wrong with your zone. Run a Telnet gaming session with a few trusted testers, watch where they get stuck, and note every question they ask out loud — those questions are usually gaps in your descriptions. Feedback from experienced builders is worth more than any amount of solo testing.
Tools and Resources for Retro Online Games
You do not need much to start building, but a few tools make life considerably easier.
Client software for testing and building
Tintin++ is a scriptable Telnet client beloved by builders and players alike, ideal for automating repetitive test commands. Mushclient offers a gentler graphical interface with plugin support, and remains a popular choice on Windows. Both let you log sessions, which is invaluable when reviewing how a playtest actually unfolded.
Where to share your work: forums and conventions
MudBytes is the long-standing hub for codebase discussion, area releases and mobprog questions. Beyond forums, the UK hosts retro gaming events like the Retro Computer Festival in Cambridge, where you will find people who grew up on text adventures and still care about them. Meeting builders face to face, or at least in a busy Discord, keeps the craft alive.
FAQ
Do I need to know how to code to write mob programs?
Not much. Basic logic — if this, then that — is enough to start. Mobprog syntax is forgiving, and most builders learn by copying examples from their codebase’s documentation and tweaking them.
Which codebase is best for a complete beginner?
CircleMUD is usually the gentlest introduction thanks to its clear documentation and built-in OLC tools. ROM is a fine second choice once you are comfortable.
How long does it take to build a playable area?
A small zone of ten to fifteen rooms with a handful of mobs and one quest can be built and tested in a weekend. Polished, balanced areas take longer — expect several rounds of feedback.
Can I build for an existing MUD rather than starting my own?
Yes, and we recommend it. Many long-running MUDs actively recruit builders, which gives you an established player base to test with and experienced staff to learn from.
Is Telnet gaming still worth learning in an era of graphical games?
Absolutely. Telnet clients like Tintin++ and Mushclient are lightweight, scriptable and still the standard way to connect to MUD games. For builders, they are essential testing tools.
Building for text games is a craft best shared. The mobs and areas we are proudest of were shaped by other people’s feedback, and the UK MUD scene — from Discworld MUD’s long-running community to the builders swapping snippets on MudBytes — is generous with its time. Write your first mobprog this week, put it in front of real players, and let the community help you sharpen it. That is how a hobby becomes a world.

