So I've been looking around at different codebases. And I want to see what the community has found as far as barebones muds, that don't include a combat system or class system.
So I've been looking around at different codebases. And I want to see what the community has found as far as barebones muds, that don't include a combat system or class system.
Suggestions anyone?
Usually I pick up a copy of miniboa when I want to start my tinkering. It's about as barebones as you get, written in Python. Any specific language you're looking for?
I've written in a bit of everything from C/C++, C#, Java, Python, and Ruby. So I'm looking for as many suggestions are possible so I can see what works best for me.
Off the top of my head, Teensymud, NakedMUD, SocketMUD, Evennia, PlainText, any Tiny like MOO, MUCK, MUX, PennMUSH, Rhost, etcetera….I wouldn't be surprised if there weren't 100s of these out there. I'll second Miniboa, that's a great choice. It's been ported to Python 3 as well.
Are you looking for something modern, or just examples, or…?
Well, looking for something that is modern and has a good community. I've looked into tbamud and it has a great community. But I'm just trying to find as many choices are possible.
Generally speaking, barebones and great community aren't very compatible. The reason being, when a community forms around a codebase, it gets stuff added to it, and then it isn't barebones anymore.
One of the reasons I always suggest LPMUD's is that the entire game is written in LPC. You never have to recompile or change the driver (unless it's to upgrade versions for bugfixes). Being able to write code for anything, and let your builders do the same, gives you a lot of freedom to experiment that you just don't get with systems where the game is part of the driver and only exposes events to the scripting language.
Just for your research, I'd probably suggest Gurbalib for DGD if you want a persistent world (IE: if a user drops something in the mud, 6 months later he can still find it if nobody else has). If you want a more traditional reset-based system, you have to choose between an older unfinished mudlib that doesn't have much to rip out (lima), or a more polished system that has a lot of things you'll need to remove or change (dead souls), both for the FluffOS driver.
In any case, the main selling point is never having to hardcode things into the driver and having much more control over things at the game level. It is a bit of a steep learning curve, since you not only are learning the LPC language, but also the runtime environment.
For a general idea of how things feel though, read the tutorial/guide for the Epitaph MUD, by Drakkos. It's aimed at his own staff, but it's quite good general HOWTO material.
I'm biased, but Evennia is is barebones in that it's just the core (no default combat system, economy, etc.), but contains a number of optional contrib sub-modules. It also has an active mailing list and around 30 people in #evennia on FreeNode during US business hours.
I find that Python in particular is just an incredible fit for MUDs. I imagine Ruby would be very similar. You'll never get me going back to a codebase that relies on in-game scripting…
Suggestions anyone?