Top Mud Sites Forum Return to TopMudSites.com
Go Back   Top Mud Sites Forum > Mud Development and Administration > MUD Coding
Click here to Register

Reply
 
Thread Tools
Old 02-04-2004, 01:34 PM   #1
Sammie
New Member
 
Join Date: Feb 2004
Posts: 3
Sammie is on a distinguished road
I want to start out by thanking any of you that take time to answer this thread - your opinions are most valued and appreciated.

Yes, I'm going to do my own mud. Not to try and revolutionize the gaming world, mind you, but for my own personal enjoyment. I’ve been a strong RPer for years, an Immortal and a Builder, and I guess I’m just tired of seeing my work and creativity becoming “not mine”, if you know what I mean. I don’t have delusions that this game will ever go live – I just want to do this to do it, mainly to see if I can, and secondly to try in implement ideas that I have.

I’ve done a bit of research on the web and as a result, here is where I stand:

I have my mother’s old computer, and have a secured a copy of Red Hat 9.0 to load on it. I’ve purchased and have under one arm a book named “How to Code C / C++”, and under the other “MUD Game Programming”. I’ve also looked into a T1 connection and MudHosting. (FYI – I just found out that many cable internet companies have basic cable connections that are running at the equivalent of a T1.)

Now, I’m choosing to go with C because for starters, I hear it is the easiest and most common.

Here is my major question though: what codebase should I choose? I’m leaning more towards Rom, because of the wealth of information on the net, including snippets and such. I’m not good enough to write a darn thing from scratch – I need something easily altered, and something that can theoretically become very, very unique.

I’m adamant about the game being skill based – I abhor the thought of players engaging in hack-n-slash to get levels and become more powerful. I’m also WAY into crafting – from weaving to woodworking, cooking to cosmetology – I want players to be able to create all kinds of marvelous items, and express their own personal creativity. I don’t like people having rooms that say, “There is an ornate wrought iron bed here, dressed with red satin sheets and pillows”. Uh uh – if you want that you’re going to have to MAKE the stuff.

I also want to implement OLC – that way, my friends can log in and create that dark, gloomy sunken ship or fairytale forest they’ve always dreamed of.

So, all in all, opinions? Should I, or can I, just go with Rom?

Oh, another question – I don’t really understand all the logistics of this project yet – is there a way to let my friends remotely log into the host machine and work with the code themselves? I’m not the only one that wants to learn to program.

Once again, thank you in advance for your assistance!
Sammie is offline   Reply With Quote
Old 02-04-2004, 02:20 PM   #2
Jazuela
Senior Member
 
Join Date: Apr 2002
Location: New England
Posts: 849
Jazuela will become famous soon enoughJazuela will become famous soon enough
For skill-based (rather than level-based), with tons o'tools for builders, a code that allows you to create new tools for builders and "storyteller" types, I can't say enough good things about lambdaMOO. It includes functions for levels, but they can be disabled. It includes functions for a bunch of things, all of which can be either disabled or tweaked or re-written to your own specifications.

The codebase itself is extremely versatile, and from a builder's perspective it's as seamless as anything I've ever encountered. You can have your buddies play around with it "live" without requiring a shell separate from the game, because the code allows you to have the entire game save itself invisibly on a cycle (once every 5 minutes, once every 50 minutes, it's up to you).

Since it's object oriented code, many of the "objects" in the game can remain "virtual' until someone interacts with it. Such as directional exits - east is simply the letter "e" in the room description's "obvious exits list" until someone types "e." THEN the exit object jumps out of the database and becomes functional. As soon as you get to the room on the other side, "e" becomes virtual again, thus saving tons of room in the game. Container objects can be coded to allow only certain types of things, or even specific objects only - such as, anything flagged as a "skin" object. That way, people can have a skinning pouch, with dozens of skins in it, without taking up massive amounts of data in the game. The only time that pouch takes up space is when someone tries to look in it or pull something out of it or put something inside.

It's like this exquisite web of interactive arrays, all interconnected with each other.

If you're gonna be catching up on C and C++, you'll probably find lambdaMOO not too difficult to handle.

The primary drawback is that lambdaMOO's website stopped updating a few years ago and I don't think there's currently any support on it. But it has an awesome manual that spells out pretty much everything you need to know, and I'm sure there must be folks here who work with the codebase who can help you out. I've only used it from the builder's side of things, but I can say in all confidence that it is a dream-code for a builder.
Jazuela is offline   Reply With Quote
Old 02-04-2004, 02:25 PM   #3
visko
Member
 
Join Date: May 2002
Posts: 98
visko is on a distinguished road
Send a message via ICQ to visko Send a message via AIM to visko
Look a little more closely at your cable and DSL providers: you'll notice that they're advertising ASYNCHRONOUS bandwidth, which means that the upload and download rates and caps will be different. Cable usually is sold as up to 3Mb down, 128k up which means if you use your home machine as a server, you'll have 128k worth of upload to give your players. If you're serious about this not becoming a big game, that's probably plenty; text bandwidth of the MUDder type isn't all that much.

C is a nice programming language; generally speaking it is relatively simple (common place of contention is that pointers are hard to understand; stick with it, they become intuitive after a while). What you'll find is that while a language is simple, transferring an idea into code is a horse of a different breed.

There are a ton of snippets out for ROM, some of them worthwhile, some of them not. If your game is based more on RP and world-creation rather than built-in code to add functionality (such as a redeveloped combat or clan system, revolutionary design in world construction from the code level, etc) then Rom26 has OLC built in, there are probably snippets for crafting and the like (I know nothing about these things, but like I said, snippets are in abundance), and once you've got a fair approximation of the code you want, start building.

As for having other people log in remotely, you'll have to learn a little about networking and its basic principles. If you get Cable, and you can make sure that nobody else is going to put a computer on your network, hook your linux computer up to the cable box directly and you should have very few problems (figuring out your IP address so you can make it available to people, knowing how to check it so when it changes you can keep them up to date, etc. is crucial); but this is an undertaking not to be done lightly.

The simplest way is to find someone who'll code in what you want, buy hosting from Kyndig, Wolfpaw, Betterbox and the like, and make it simple for yourself. But if you're an aspiring network/linux/server administration junkie like myself, then the do-it-yourself method becomes more fun. Nothing is free in this undertaking, and the tradeoff is usually some money or a lot of time.

-Visko
visko is offline   Reply With Quote
Old 02-05-2004, 10:59 AM   #4
erdos
 
Posts: n/a
This goes not just to you but to everyone.

Avoid snippets.

Avoid snippets.

"But what about the ultra cool one that lets yo--" Avoid snippets.

Anything in the snippet community, you can program yourself from scratch, thus 1. customizing it to your liking, 2. avoiding the stupid bugs which are *inevitable* in snippets (many of which would get failing grades in a very basic introduction to C in Smallville Community College), and 3. keeps your mud from screaming "unoriginal, useless pile of steaming rotten phlegm" to every single person who logs on
  Reply With Quote
Old 02-05-2004, 12:21 PM   #5
visko
Member
 
Join Date: May 2002
Posts: 98
visko is on a distinguished road
Send a message via ICQ to visko Send a message via AIM to visko
All well and good. But there are those who never took the C course in Smallville, and therefore never even had a chance to fail it.

Admittedly, most snippets are pretty terrible; still, unless you can find a pretty decent programmer who wants to work on YOUR SPECIFIC MUD (enjoy trying; I do all my own work after 5 years of fighting with others), find code, install it (maybe not patch it, maybe by hand), and pray you don't have to call in the calvary if things break.

While doing this BACK UP YOUR MUD BEFORE EVERY NEW SNIPPET. I can't stress this enough, things WILL go bad with one patch or another. Do it.

-VIsko
visko is offline   Reply With Quote
Old 02-05-2004, 12:37 PM   #6
Sammie
New Member
 
Join Date: Feb 2004
Posts: 3
Sammie is on a distinguished road
Jazeula – Thank you for the suggestion, I’m searching for links on lambdaMOO and have found many. I’ll definitely look into it.

Visko – I appreciate all your advice – I assume I’m going to learn more and more as I go on, I know I’ve learned a lot in just the past few weeks. Also, I can’t seem to find any information on Rom26? I’m a dolt, I admit. Is there somewhere specific I should look?

Erdos – I’ve read many places that some snippets are wonderful, and others are just a load of maliciousness that are specifically designed to crash games. Unfortunately, I’m going to have to use many of them, until I get to the point where I can look at one and basically use it as a pattern. This is my little project, for fun, and I highly doubt I’ll ever find a decent programmer willing to work on this, so I’m pretty much on my own. And yes – back up, back up, back up!

Again, I truly thank you all for your suggestions, and I’m taking them all to heart.
Sammie is offline   Reply With Quote
Old 02-05-2004, 01:28 PM   #7
Jazuela
Senior Member
 
Join Date: Apr 2002
Location: New England
Posts: 849
Jazuela will become famous soon enoughJazuela will become famous soon enough





Those are going to be the most useful links for you if you decide to go the lambdaMOO route. The codebase was put together by a man named Pavel Curtis, begun during an internship as a student at Xerox in Palo Alto, California back around 1990. The last gives an awesome history of the codebase, plus some excellent links for further research. Sourceforge is the primary source for the actual codebase download, and the xerox link has some technical reference stuff in it.
Jazuela is offline   Reply With Quote
Old 02-07-2004, 05:12 AM   #8
visko
Member
 
Join Date: May 2002
Posts: 98
visko is on a distinguished road
Send a message via ICQ to visko Send a message via AIM to visko
I'm not sure where extensive documentation on the code base is, except in its own doc subfolder; I walked into the project blind at age 14 or so, and learned C, MUDs, and linux on the fly as I devled deeper into administration.

ftp.game.org is the ftp site where you can find just about any code base (a lot of diku derivatives there), and then reading everything in /doc should enlighten you a bit more. (I admit to having read a total of say 50 lines of documentation so far; I just read the code, and did so back when I was starting as well.)

Hope this helps,
-Visko
visko is offline   Reply With Quote
Old 02-07-2004, 05:31 AM   #9
Jherlen
Member
 
Join Date: Jul 2002
Posts: 47
Jherlen is on a distinguished road
Speaking from personal experience, levels are pretty deeply meshed into ROM, and to do the game completely without them you'd have to change large parts of the fight code, and other areas too. I'm not saying it's impossible (we did it), but that makes sure its something you're up to doing.

An easier solution might be to remove level from PCs, but keep it as a field for mobiles - this way its easy to tweak a mob's difficulty from the builder side, and the players won't notice anything themselves.

Also, if you do go with ROM, be prepared to break out the bug spray. The first couple weeks that we ran Advent, all we did was spend time fixing stock bugs and OLC bugs. There's a lot of them. Luckily there's a number of good resource sites out there to help you out.

Good luck! If you do decide to go with a ROM base and need help with anything, let me know. I was in the same position you are a while back.

- J
Jherlen is offline   Reply With Quote
Old 02-07-2004, 02:55 PM   #10
tresspassor
Member
 
Join Date: Jun 2002
Location: Minneapolis
Posts: 45
tresspassor is on a distinguished road
I agree, but the only exception to this in my opinion is utils.

If you are going to be working in MOO there aren't that many snippets available, most of the MOOs I have seen have been built completly from scratch so the idea of snippets doesn't mesh well.

But utilities (math utils, gopher utils, xml utils, http utils, vector utils) can make programming easier. But you would most likely find them in a snippet category.

Some docs









tresspassor is offline   Reply With Quote
Reply


Thread Tools


Advice please? - Similar Threads
Thread Thread Starter Forum Replies Last Post
Need some advice Milar Legal Issues 10 08-17-2004 11:04 PM
Need just a bit of advice Sammie MUD Builders and Areas 0 02-04-2004 12:43 PM
need advice for vehicles sosojni MUD Coding 5 07-02-2003 04:55 PM
Looking for Advice Qira Newbie Help 3 07-19-2002 11:58 PM
Need advice ? ask away ! kvirk Tavern of the Blue Hand 4 05-06-2002 03:40 PM

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off

All times are GMT -4. The time now is 04:28 AM.


Powered by vBulletin® Version 3.6.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Style based on a design by Essilor
Copyright Top Mud Sites.com 2022