GoMud is a fresh take on a classic idea – a lightweight, modern multi-user game engine that’s easy to set up, customize, and build on. Started by Dylan Squires (aka “Volte6”), the project aims for simplicity and ease-of-use without sacrificing polish.
Many MUD codebases are loaded with features but weighed down by complexity. Others never quite make it past the experimental stage.
GoMud strikes a balance, offering a quick, frustration-free way to spin up a new game while leaving ample room for expansion and creative experimentation.
In today’s interview, Dylan shares why he built GoMud, how it differs from traditional MUD engines, and some unexpected lessons learned along the way – including what happens when a simple playtest goes hilariously wrong. 😂
Meet Dylan Squires: from woodworking to worldbuilding
Dylan Squires, known online as Volte6, lives in the greater Los Angeles area, where he splits his free time between woodworking and gaming.
When he’s not coding GoMud, he enjoys sketching out woodworking projects in CAD software, then bringing them to life with the help of an automated cutting machine called a CNC router. He jokes that woodworking helps balance out the staggering 6,000+ hours he’s sunk into Rocket League – which he admits is “way too much, probably.”
The common thread between Dylan’s hobbies is the satisfaction of taking something from idea to reality, piece by piece.
Woodworking gives him tangible results: real items he can hold and use. GoMud offers that same rewarding process in digital form, allowing him to design new systems and build features that can be used by others to create their own unique worlds.
Dylan’s first multi-user dungeon
Dylan’s first encounter with multiplayer text adventures came in the early ’90s, before there was much of a web. A friend introduced him to a local bulletin-board system (BBS), a dial-up hub where people gathered to chat and play games together.
“I played a variety of online games that resembled MUDs as we know them on the MajorBBS platform – Crossroads of the Elements, Mutants!, Swords of Chaos, Tele-Arena,” Dylan recalled.
These games had the hallmarks of classic MUDs: monsters to slay, new areas to discover, and experience points to earn.
When MajorMUD appeared on the scene, something clicked. “This is really where I came to understand what a MUD was,” Dylan said.
By the time the internet was widely available, Dylan was already hooked. He kept Telnet sessions open in the background at his first customer-service job, staying connected to friends and distant worlds alike.
How many of us have had a session in the background while at our first desk jobs or at school? 😁 If you’re guilty, drop us a comment at the end of this post!
GoMud: fast setup, open source

Dylan describes GoMud as a fast, modern, and easy-to-use MUD engine meant to help builders quickly set up their own worlds.
To achieve this, he chose the Go programming language, which was designed at Google in 2007 to make programming more efficient.
“Go is incredibly fast to build, and very easy to get started. It compiles simply for many architectures and operating systems, and pretty much everyone I have seen attempts to get it up and running does so with little to no difficulty,” said Dylan. “It just works.”
But ease-of-use isn’t the only thing setting GoMud apart.
Dylan was frustrated by older MUD engines that were powerful but visually inconsistent. He addressed this with GoMud by creating a full style library where each visual element – menus, keywords, tables, etc. – uses a unified color palette that can be customized to suit any game.

Another small-but-significant feature is command auto-completion. Players can type partial commands, hit the tab key, and GoMud will cycle through available options.
For example, typing ge
and hitting tab might give you the option for get
. Accepting that and hitting tab again then cycles through the things you can get, such as objects on the ground or in a container – get knife
, get gold
, etc.
“It’s funny how little things like this seem uninteresting until you use them,” Dylan said, “and then you wonder how you lived without it.”
Lastly, GoMud ships with a built-in web client that includes an automapper and message window. This means it also comes with its own pre-built website that you can customize, rather than having to write one from scratch.

“My goal is to give GoMud features and the experience that I really always wanted to see in a MUD, and hopefully help others by letting them springboard off of the work put in to run their own world,” said Dylan.
Accessibility: an ongoing process
Originally, GoMud started as a small project meant for Dylan and his friends, and he admits that accessibility wasn’t a core focus in the beginning.
But as more people began to test and use GoMud, it became clear that better support for screen reader users was needed.
Now, when creating an account, players can indicate if they’re using a screen reader. Doing this activates simplified layouts across the game, converting menus, status screens, and shop listings into straightforward text that’s easy for screen readers to interpret.
GoMud will also filters out ASCII art, such as decorative borders and characters.
“It’s not yet perfect,” Dylan acknowledged, “but since we have the core foundation in place, each time we discover something that needs to be improved in this regard we can simply make that change within the architecture that’s already defined.”

Dylan’s role: guiding the project
When Dylan first began working on GoMud, he didn’t imagine himself leading an open-source community. But as more people became interested, his role evolved into something of a community organizer, main coder, and mentor rolled into one.
“I find myself in the position of sort of defining the direction of development and change in GoMud, as well as being the primary coder implementing core changes,” Dylan explained.
Over time, as more developers and users joined the project, Dylan started focusing on helping others navigate GoMud’s codebase. Different contributors brought unique ideas and feature requests, and Dylan’s familiarity with the underlying system helped him support those efforts.
“A big part of my job is helping them achieve those changes,” he said, “since I have a fuller understanding of the codebase as it exists, and what challenges or roadblocks exist that need to be surmounted.”
His approach to managing GoMud’s growth is straightforward: figure out what’s missing, listen to user requests, and then help turn those ideas into reality. Dylan described this as his most important task – making sure GoMud continues to reflect the community’s needs, not just his own.
Starting up your own copy of GoMud
So, you might be wondering: is GoMud really as easy to get started with as Dylan claims?
I managed to get it up and running in about 10 minutes on my laptop, including downloading and installing Go for the first time.
Okay, most of those 10 minutes were just me fixing permissions on the folder where I needed to install Go and fumbling through some port issues. No fault of Go or of GoMud.
By default, GoMud tries to use the standard port 80 for its website, but port 80 is restricted on Linux systems unless you’re root. So when I fired up the server, I hit a permission error right away.
I had to cancel out of the program, kill the stuck port bindings, update the HttpPort:
setting in the config file, and try again.
(In a production setting, you’d probably use something like Nginx as a reverse proxy to handle port 80 properly. But for testing on a laptop, just changing the port to 8080 will do the trick.)
If all of this sounds like tech jargon to you, don’t sweat it – GoMud has help guides for getting started and a Discord channel where you can ask questions and get help if you run into trouble.

Lessons learned: start simple, embrace chaos, and know when to stop
Dylan didn’t set out to build GoMud with a perfect blueprint.
“It was thrown together,” he admitted, describing those early days when it was just him and a handful of friends. But the upside of that approach was clear: real feedback arrived fast.
One memorable example came from a playtest Dylan arranged. Players were given various items to test, and one player tried out a seemingly innocent pinecone grenade.
The resulting wildfire quickly spiraled out of control, spreading room-to-room, engulfing the entire starting town.
“When players would respawn and join the town square, they would find themselves in an all-consuming inferno all over again, ultimately dying,” said Dylan. “And then, it was discovered the wildfire could be started in the afterlife, so then they were just burning eternally in the afterlife…”
“It was a funny bug,” he recalled, “but it showed that players will find ways to break your code that you’re not going to think of.”

And it would have taken Dylan a lot longer to get there if he had let himself get caught up in trying to design the “perfect” game engine.
“I think GoMud is a pretty good lesson, or affirmation that you don’t need to perfect solution to start building something,” he said. “Focus on providing value instead of the perfect architecture. Design is definitely a fun and engaging activity – but if you want to get out of your head and into a realm where you can get a feedback loop from real people, you’ve just got to start coding.”
From experiences like the one above, Dylan took away two main lessons:
- Start simple, then refine. Building something playable, even if imperfect, is more valuable than planning endlessly for a flawless design. Big changes can always come later, guided by actual user feedback.
- Lead by example. Releasing a codebase publicly means continuing to maintain and improve it yourself. Dylan emphasizes that running an open-source project isn’t about handing off tasks -it’s about demonstrating commitment and helping others step up as contributors.
“When starting an open source project, you’ve still got to be willing to put in the work to improve the code, not just expect others to come along and do the work for you,” he said. “I think it’s important to lead by example, and help lift others up in growing into contributors, and not just abdicating responsibility.”
Balancing good enough and perfect
Speaking of which, every game engine (and game) eventually reaches the moment when big ideas collide with limited hours. For Dylan and GoMud, that moment arrived with admin tools.
While the in-game building commands are extensive, he realized a web-based tool would be quite helpful for admins. He began prototyping a full web editor, but then hit pause when he realized how quickly it could consume his available dev time.
“Picking and choosing what to focus on, or how far to take a feature before walking away, is sometimes hard,” he admitted. He settled on a read-only web viewer for now, saving the full editor for a future contributor who wants to own it.
“It’s always a balance of good enough versus perfect while there is so much to get done,” Dylan said.

What’s next for GoMud
Now that GoMud has a stable foundation and a small but active community, Dylan is focused on making it more versatile without making it more complex.
“If someone shows up and says there’s something GoMud does, or doesn’t do, that is preventing them from achieving their goals with it, we jump on that first and try to address the need. A hypothetical user in the future is a lot less of a driver than a real user now,” he explained.
Outside of that, one priority is GMCP support. GMCP is a communication protocol that gives external MUD clients real-time information about what’s happening in the game. It’s nothing new or groundbreaking, but it helps with things like client-side mapping and cleaner status displays.
Another focus is modularity. Dylan wants to make it easier for developers to drop in new systems or extend existing ones without digging through core code. The goal is to let builders try new ideas, add mechanics, or tweak the interface without having to fork the engine entirely.
Small quality-of-life improvements also happen regularly, often driven by questions or requests from the GoMud Discord.
Resources and acknowledgements
GoMud is fully open-source, and contributions are welcome. For those just getting started, the GitHub repository includes how-to guides and example content, as well as a handy discussion area.
In the GoMud community Discord, builders can share ideas, report bugs, or ask questions.
If you’d like to try it without downloading and installing it first, you can check out the demo site and web client at gomud [dot] net.
Dylan notes that community feedback has already played a big role, shaping everything from small interface tweaks to major system changes.
“GoMud (and I) have benefited greatly from support in the Discord channel,” he said, expressing his gratitude for the people who have engaged with the project. “Programming something over a long period of time without feedback from people can be a lonely and frustrating endeavor, so that sort of community really helps.”
A big thank you to Dylan, AKA Volte6, for taking the time to share his experiences building and testing GoMud! I had fun testing out different settings and getting familiar with the starting town.
If you’d like to watch someone actively build a MUD engine using Go, Dylan recommends checking out Mongoose Studios on YouTube or Twitch. You can follow along and ask questions on the spot.
Leave a Comment