 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Sat Sep 29, 2007 11:40 pm Post subject: Noob Mudbuilder looking for a Head Start |
|
|
Sorry if the topic subject title sounds a bit cheesy, I want to explain myself a bit better.
I've been toying with the idea of starting a Mud of my own (whether it's for public use or just for personal experimentation is not important at this point, I guess). I have several ideas I want to try out such as:
-Turn based, lightning fast (coded & stat based) combat (not an oxymoron )
-Dynamically created NPCs (NPC allies for individual PCs?)
-Player invisibility (ability to share a room without seeing each other, NOT stealth)
Etc, etc, but I digress.
As I was reading about codebases (I've been checking a few over the last couple of years) I became sort of enamored with ones such as MOO. But I've seen a fairly large roadblock, namely the absolute and total lack of any kind of decent MOO coding resources/sample codes. I've also noted that MOO has several disadvantages compared to MUDs, such as:
-Inability to customize the prompt (without server patching and recompiling)
-Very rigid parser: verbs are defined very exactly, generally with a single object in mind. As far as I've noticed, you can't code a MOO that uses a verb such as "take all balls except the red and white" or "wear goggles, helmet and all leather".
-Queuing problems: commands are ALWAYS executed as soon as typed, and errors result, for example, from saying ">go north" and ">get sword" very fast because even if you manage to queue the action, the second action will fail because the sword is not in the FIRST room
-Object database: if I made a store that sells "elven plate mail" objects, the MOO would need to replicate the object N times (or inherit, etc) making the database larger and larger, even if you recycle you keep using up object IDs for potentially very volatile objects - if people die, sell them or just plain discard them... Or even mobs, that die and spawn, maybe even the same mob a random number of times. I'm not sure how MUDs handle this in comparison.
And others.
So what experiences do people here have with different MU* servers? What would be a good one to start with? Is MOO as bad as I've seen for coding things with actual game mechanics as opposed to "social muds"? I've seen people praise LPMUD, about how flexible it is. Would you even consider programming a decent combat system or a hack & slash in MOO? (i've seen it done, for example in HellMOO... with the "bugs" I've noted above)
I hope this makes sense to someone, and that I'm making clear enough what the question or questions are. Thanks for the help and for your patience.
EDIT: It seems I should have posted this in the Newbie forum. Sorry about that. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
ide
Joined: 21 Feb 2006 Posts: 105 Location: Seattle
|
Posted: Sun Sep 30, 2007 4:20 pm Post subject: |
|
|
Yeah, maybe a mod could move this over to Newbie. But anyway..
Do you have an idea of what language you want to use? Because that would narrow your options down at least a little bit.
I wouldn't recommend MOO for what I think you'd like to do. But if you really are into MOO, it might be your best choice, because maintaining a passion for what you're doing is a huge part of finishing any mud project. There are a few MOO developers who read MudConnector, so if you posted over there in the Staff Wanted forum you'd probably get some hits.
If you want to go more along the DIKU-like route, maybe picking up NakedMUD or SocketMUD (or RocketMUD for that matter) and putting your systems on top of that would be a good way to go?
I don't have a lot of experience with LPs; Dead Souls has an active community, but there are a lot of systems already built into DS, so it doesn't sound like what you're looking for. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Sun Sep 30, 2007 6:09 pm Post subject: |
|
|
I've tried registering to mudconnect, but they refuse my email (all of them, free and commercial mail providers).
The thing about MOO, is that you can't really find much of an active community. I've played with the MOO and more or less understand the language, etc, I suppose that wanting to make a "standard" (read: combat based) MUD seems a bit forced because of some hard coded limitations (parser, prompt, etc).
It seems also that MOOs put the entire database in memory, which probably would be a drawback if I wanted to rent server space.
I don't know much about DIKU, except that you hardcode your "game" into the source code itself, which isn't necessarily a bad thing. The difference with LPMUD is that the driver (read: server app) and the actual game code are separate, just like a java machine and the java applets are separate. Apparently, from the user perspective, there's no net difference.
I am most familiar programming in C/C++, as I'm a professional developer, but I don't mind learning new languages. I've learned stuff like Inform and TADS when I wanted to make interactive fiction, so even specialized languages shouldn't be a problem. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
Atyreus

Joined: 15 Jun 2005 Posts: 5
|
Posted: Sun Sep 30, 2007 6:21 pm Post subject: |
|
|
You might want to take a look at ColdC/Genesis. It does suffer the same lack of resources that you seem to have found with MOO (and perhaps does it one better, useful ColdC documentation is pretty limited).
It doesn't have many of the other problems you cite with MOO however. One of the great things about ColdC is that it makes very few assumptions about the sort of server you want to run (it doesn't even assume that you necessarily want to run a MU*). The prompt, command parsing, and command queuing are all handled at the core (lib) level rather than by the server code.
ColdC does use an object database, but as your mud is likely not going to use up 4 billion objects, using up your object IDs really isn't an issue. And you can create code at the core level to reuse more volatile objects (I do this with certain things like login objects and coin objects which would otherwise often have fairly short life spans).
ColdC will give you even more flexibility than you will get from any (non-DGD) LP lib/server set-up. Of course, this can also be a disadvantage. The same lack of assumptions that make ColdC so flexible also mean you will have a lot more work to do just to bootstrap a mud that will accept connections and allow you to start coding from within the core (though a couple of bare bones cores are available). |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
ide
Joined: 21 Feb 2006 Posts: 105 Location: Seattle
|
Posted: Sun Sep 30, 2007 7:08 pm Post subject: |
|
|
Well, that's pretty weird about MudConnector. I just signed up a new account with a gmail address and it worked fine for me.
I've also heard good things about ColdC but have never seen it in action. What Atyreus didn't mention is that his mud (listed in the new additions at TMS) has some pretty interesting features listed, so when it opens for beta you might want to check out the gameplay. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Sun Sep 30, 2007 11:16 pm Post subject: |
|
|
"The internet address you are using is not allowed to register new member accounts. If you feel this is in error please contact the site administrator."
This is the message I get from mudconnect.com. I've contacted them and got no reply. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
ide
Joined: 21 Feb 2006 Posts: 105 Location: Seattle
|
Posted: Sun Sep 30, 2007 11:58 pm Post subject: |
|
|
Just off the cuff here, could this be that TMC is blocking your IP or something of that sort? I feel like this is pretty unlikely -- is that message plainly related to the email field in the input form?
edit: You know, I could easily register for you. TMC assigns you a password randomly that it sends to an email address that you provide. I'd just need an email address and a username.
double edit: and a real name as well. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
Tyche
Joined: 13 May 2005 Posts: 176 Location: Ohio, USA
|
Posted: Mon Oct 01, 2007 2:52 am Post subject: |
|
|
Atyreus wrote: | You might want to take a look at ColdC/Genesis. |
Ditto.
Or you might want to look at muds written in other HLLs.
Ruby and Python come to mind. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Mon Oct 01, 2007 2:58 pm Post subject: |
|
|
Interesting, so Genesis is considered to be the more "official" version of LPMUD? I've been trying MudOS, and managed to compile (it has tons of warnings, you literally have to run MAKE twice because the first run aborts because of excessive warnings). I've been trying to get a hold of Foundation II mudlib but it seems to be gone with the wind.
ColdC looks cool, basically a MUD that is kinda like MOO (programming-wise)?
I'm not such a big fan of Python. I once tried learning it, but never quite felt right. I also hate being forced to use indentation as part of my code, instead of just a cosmetic thing. I've heard lots about Ruby, seems better than Python and is getting very popular.
I suppose I just want to code in C, I'm going to take a look at this Genesis thing.
And thanks ide for the help with mudconnect, I honestly don't know what they were thinking with IP banning an entire country's major ISP. |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
cratylus
Joined: 06 Nov 2006 Posts: 4
|
Posted: Mon Oct 08, 2007 5:23 pm Post subject: |
|
|
GrooveTiger wrote: | Interesting, so Genesis is considered to be the more "official" version of LPMUD? I've been trying MudOS, and managed to compile (it has tons of warnings, you literally have to run MAKE twice because the first run aborts because of excessive warnings). I've been trying to get a hold of Foundation II mudlib but it seems to be gone with the wind. |
Genesis is the name of the original LPmud, but it is
hard to say that its codebase is the "official" LP. The history
of LPmuds is such that the fairest thing you could say is
that the CD lib and driver (what Genesis runs) is one of various
development branches of LP since Lars Pensjo released the
original codebase. You could with some confidence say that
other lib/drivers are "official" LP, so I'd tend to shy away from
an attempt to establish a single one as the canonical reference.
Personally I didn't care for F2's licensing, but if you really
want to use it, you can get it here:
http://lpmuds.net/files/foundation/
Some fixed up libs and bundled drivers are available here:
http://lpmuds.net/downloads.html
I suggest giving them a spin, unless you're really determined
to stick with Foundation.
-Crat |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Mon Oct 08, 2007 9:36 pm Post subject: |
|
|
I wouldn't say I want to "stick" with any particular mudlib. In fact, just that I have to obey somebody else's license is a big turnoff for me, and would probably push me to make a mudlib from scratch. Even if I never intend to charge for playing a mud (never mind that the marketing possibilities are a bit, how to say it... tiny?) I don't like being told that I can't
But that's all academic, in the end I'll just use whatever.
If anything, I want to check as many mudlibs, and the less complex they are the better, mostly to understand how they work in general, what mechanism they use for storing objects, rooms, for solving player commands, whatever. So far all I've found they have in common is that master file... other than that, almost no two mudlibs are the same even in the most basic stuff
I'm probably going to leave the whole coding part a bit on hold, to do some brainstorming about the actual game play experience. I guess I should first decide on game mechanics before actually programming them, I suppose writing "fake" game logs of what I'd like it to look like is as good method as any. But that is probably for another forum, like design  |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
Tyche
Joined: 13 May 2005 Posts: 176 Location: Ohio, USA
|
Posted: Tue Oct 09, 2007 5:44 am Post subject: |
|
|
GrooveTiger wrote: | Interesting, so Genesis is considered to be the more "official" version of LPMUD?
...
ColdC looks cool, basically a MUD that is kinda like MOO (programming-wise)? |
Just to be clear "Genesis" happens to be both the name of the ColdC server project and and an LPMud server project. They are unrelated projects. ColdC borrows a lot of ideas from both MOO and COOL (sometimes called MOO2).
I've collected a number of corelibs here:
ftp://sourcery.dyndns.org/archive/servers/tiny/cold/genesis/databases |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
Author |
Message |
GrooveTiger
Joined: 29 Sep 2007 Posts: 13 Location: Peru
|
Posted: Tue Oct 09, 2007 7:52 am Post subject: |
|
|
Tyche wrote: | GrooveTiger wrote: | Interesting, so Genesis is considered to be the more "official" version of LPMUD?
...
ColdC looks cool, basically a MUD that is kinda like MOO (programming-wise)? |
Just to be clear "Genesis" happens to be both the name of the ColdC server project and and an LPMud server project. They are unrelated projects. ColdC borrows a lot of ideas from both MOO and COOL (sometimes called MOO2). |
Thanks, I sort of noticed that a few hours after I made that reply, a bit of a big coincidence that got me confused at first, but I'm good now  |
|
Back to top |
|
 |
|
 |
 |
 |
 |
 |
 |
 |
 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
 |
 |
 |
 |
|
 |