Which codebase should I use?

 
Post new topic   Reply to topic    mudlab.org Forum Index -> Newbie
View previous topic :: View next topic  
Author Message
HijacT



Joined: 25 Oct 2005
Posts: 9

PostPosted: Tue Oct 25, 2005 8:42 am    Post subject: Which codebase should I use? Reply with quote

Just wanted an opinion on which codebase to work with. I didn't want to program a mud from scratch but I wanted to modify a currently stable version. I have narrowed it down to Circlemud, ROM, MERC, and Smaug. I compiled circlemud fine no probs in windows but there were a few things i wanted in a codebase that was "stock." I wanted something that had a flexible race/classes system and a standardized zone system... Not to mention items and the ability to reference separate instances of the same type of items as 1.map, 2.map, etc... I definitely would prefer this codebase to run off of windows, but cygwin is a possibility. Does it matter which flavor of unix you use? (As in any linux distro would work?) I wanted to run in windows because I was going to pick up a copy of Visual C++ 2005 Express edition (which should be out in about 2 weeks.) I am more familiar in C, but I am working on C++. In your opinion, which codebase would be suitable for me?
Back to top
View user's profile Send private message
Author Message
Sandi



Joined: 13 May 2005
Posts: 94
Location: Boston

PostPosted: Tue Oct 25, 2005 1:09 pm    Post subject: Reply with quote

Let's start with Linux is Linux, and while there are many, many distro's out now, I think it's safe to say you can run a MUD in any of the major ones without unusual problems.

Also, Diku is Diku, and as the codebases you are considering are all Diku derivitives, there's little difference between them "under the hood", and if you want 'get 2.item', you can have it with a little work in any of them. Same with races and classes, they are essentially all the same in that regard, any flexibility will come from your own enhancements.

My personal view is, it's better to rent server space ($10/mo.) and learn how to run a MUD in it's native environmemt than deal with the "run it in Windows" learning curve. I did the Cygwin thing for a while

To get started, I'd recommmend "QuickMUD", a ROM derivitive with the most common snippets already added:
http://www.flugh.com/quickmud/

Or, for Windows, Nick Gammon's ROM port. And Gammon's Area Editor is worth every penny:
http://www.gammon.com.au/muds.htm

As a coder, you may prefer something cleaner than ROM, but ROM has more to offer in the way of public snippets, and areas, and the ROM mail list is still active and helpful. If you use QuickMUD or Nick's port, you'll still want to read the ROM FAQ:
http://www.hypercube.org/tess/rom/


Anyway, good luck with your project, and I'm sure you'll get other responses.

Sandi
Back to top
View user's profile Send private message Visit poster's website
Author Message
Cornelius



Joined: 13 May 2005
Posts: 42
Location: Florida

PostPosted: Wed Oct 26, 2005 2:55 pm    Post subject: Reply with quote

as someone who cut his coding teeth on quickmud I have to say as a learning tool for someone just starting out it was very good. I tried (to no avail) to learn mudcoding on circlemud for two years before picking up quickmud where I was able to become a very good hack mudcoder in only a few months. That being said quickmud is very nice to hackcoders as it seems its native language and the more I worked with it the more disgusted I became with it. Then when I wanted to grow up I moved on to a more sophisticated codebase- NakedMUD- which is currently kicking my butt. So if you want to use your codebase as a learning tool yes I suggest quickmud very highly, but if you are ready for something more, it's my personal opinion that circlemud is the more sophisticated of the dikurivitives (the opinion of a hackcoder take it for what its worth). Also with some CWG distributions you get OasisOLC+DG scripts which should be considered indespensible for any dikuist.
Back to top
View user's profile Send private message AIM Address
Author Message
HijacT



Joined: 25 Oct 2005
Posts: 9

PostPosted: Thu Nov 17, 2005 8:16 am    Post subject: Reply with quote

Wow thanks for the tip. I picked up Visual C++ 2005 Express Edition and have been trying to figure it out presently. I tried compiling QuickMud but its having a problem opening winsock.h -- That and a million other errors saying stuff is declared deprecated. I don't care about the deprecated stuff but does someone know about winsock.h? BTW Visual C++ is free on the Microsoft site pick up a copy.
Back to top
View user's profile Send private message
Author Message
Tyche



Joined: 13 May 2005
Posts: 176
Location: Ohio, USA

PostPosted: Thu Nov 17, 2005 5:18 pm    Post subject: Reply with quote

HijacT wrote:
I picked up Visual C++ 2005 Express Edition and have been trying to figure it out presently. I tried compiling QuickMud but its having a problem opening winsock.h -- That and a million other errors saying stuff is declared deprecated.


You need to install the Platform SDK as well. IIRC, the VC++ toolkits only include the compiler, the RTL and STL headers and libraries. You may also need to run both the vcvars32.bat and the setenv.cmd to set up your environment variables correctly.
Back to top
View user's profile Send private message Visit poster's website
Author Message
HijacT



Joined: 25 Oct 2005
Posts: 9

PostPosted: Thu Nov 17, 2005 11:58 pm    Post subject: Reply with quote

Cool, picked up the SDK and now only 2 errors....

1>Compiling...
1>comm.c
1>c:\_mudz\quickmud\work\quickmud\src\comm.c(52) : fatal error C1083: Cannot open include file: 'winsock.h': No such file or directory
1>nanny.c
1>c:\_mudz\quickmud\work\quickmud\src\nanny.c(42) : fatal error C1083: Cannot open include file: 'winsock.h': No such file or directory

Same errors as before. I am not exactly sure what the problem is...
Back to top
View user's profile Send private message
Author Message
Tyche



Joined: 13 May 2005
Posts: 176
Location: Ohio, USA

PostPosted: Fri Nov 18, 2005 1:48 am    Post subject: Reply with quote

HijacT wrote:
Cool, picked up the SDK and now only 2 errors....

1>Compiling...
1>comm.c
1>c:\_mudz\quickmud\work\quickmud\src\comm.c(52) : fatal error C1083: Cannot open include file: 'winsock.h': No such file or directory
1>nanny.c
1>c:\_mudz\quickmud\work\quickmud\src\nanny.c(42) : fatal error C1083: Cannot open include file: 'winsock.h': No such file or directory

Same errors as before. I am not exactly sure what the problem is...


Your environment variables aren't set correctly or are overriden in the makefile.

Just for giggles here are mine (yours can and may vary):
Code:

INCLUDE=C:\Program Files\Microsoft Visual C++ Toolkit 2003\include;C:\Program Files\Microsoft Platform SDK\Include;C:\PROGRA~1\IBM\SQLLIB\INCLUDE;C:\PROGRA~1\IB
M\SQLLIB\LIB
LIB=C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib;C:\Program Files\Microsoft Platform SDK\Lib;C:\APPS\FSC\PCOBOL32;C:\PROGRA~1\IBM\SQLLIB\LIB


These are setup by running the vcvars32 and setenv scripts. When you install Platform SDK it creates a bunch of shortcuts for different platforms/envorinments. When you click on them it opens a command shell and runs setenv.cmd with certain parameters to set your environment variables. Optionally you could set them up as permanently if you don't have other development systems. You can also specify them in your makefiles as parameters of the compiler and linker invocation.

All this and much more is in the documentation.
Back to top
View user's profile Send private message Visit poster's website
Author Message
HijacT



Joined: 25 Oct 2005
Posts: 9

PostPosted: Sun Nov 27, 2005 8:59 am    Post subject: Reply with quote

Thanks for the tip. I am up and running now. So far the only problem is that it isn't saving characters after the initial login. Some other things though:
All the documentation refers to Merc 2.1 while the web site saids its a ROM codebase. Kind of confusing. Unfortunately that Gammon area editor doesn't work, the header saids #AREADATA not #AREA .... anyways its kind of confusing. I can't really find any place that has information specifically about QuickMUD, and there are enough differences between this version and basic ROM to cause problems. Anyone know of a way to make the gammon area editor to work and have the area files to work with QuickMUD? ANy help would be really great.
Back to top
View user's profile Send private message
Author Message
Tyche



Joined: 13 May 2005
Posts: 176
Location: Ohio, USA

PostPosted: Sun Nov 27, 2005 10:14 am    Post subject: Reply with quote

Hmm. A couple of possibilities. IIRC, you need to be level 2 to save in ROM. Also some distributions are tarred-zipped with empty directories. If you used Winzip to extract it won't create empty directories, like log or players. So it's quite possible you cannot save until creating the directory.

Rom24 doc and building guides
www.hypercube.org/tess/rom/faq/
http://lunar.betterbox.net/olc.html
http://rrp.rom.org/


Don't know anything about the Gammon area editor. I do know that OLC uses #AREADATA while ROM w/o OLC uses #AREA. There's a forum at his site where you can ask. http://www.gammon.com.au/scripts/forum.php?bbsection_id=2
Back to top
View user's profile Send private message Visit poster's website
Author Message
Sandi



Joined: 13 May 2005
Posts: 94
Location: Boston

PostPosted: Sun Nov 27, 2005 11:43 pm    Post subject: Reply with quote

ROM is a derivitive of the Merc codebase, which in turn is a derivitive
of DikuMUD. The Merc guys did a very good job of documenting the basics,
so the ROM team left those docs in place and updated them as needed.

As far as converting the .are files, it's been a while, but as I recall
it goes like this -

Make:

#AREADATA
Credits {r< 25- 45> {bChipper {gAvalon {x~
Name Avalon~
Filename avalonch.are~
Builders Chipper~
VNUMs 21000 21099
Security 9
End


look like:

#AREA
avalonch.are~
Avalon~
{25 45} Chipper Avalon~
21000 21099


Next, you want to search for 0 0 0 0 0 and "mark all". Then delete the
marked lines. I use TextPad for this.

If you see a section called #MOBPROGS, cut the whole thing, including
the #0 terminator, and save it somewhere. You'll want to paste it back
in when you'redone editing.

It should load in Area Editor now. If not, just remove whatever lines it
complains about (I might be forgetting a section).


I believe the OLC will convert it back.

HTH,
Sandi
Back to top
View user's profile Send private message Visit poster's website
Author Message
Lazarus



Joined: 03 Jan 2007
Posts: 4
Location: Oklahoma

PostPosted: Wed Jan 03, 2007 10:28 pm    Post subject: Reply with quote

I highly recommend taking a look at the CWG (circle with goodies) stuff. http://cwg.lazuras.org You have to register, but they have 4 distrobutions now. Including CircleMUd 3.5 which they took over.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    mudlab.org Forum Index -> Newbie All times are GMT
Page 1 of 1

 
Jump to:  
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

Powered by phpBB © 2001, 2002 phpBB Group
BBTech Template by © 2003-04 MDesign