Hey there. I plan on starting up a new mud, and have been playing around with various code for the past day or two. I don't know any C, but have taken classes in Java and Visual Basic, and hope to pick up C relatively quickly - Hope being the keyword there. I am looking for as close to a barebones mud to base everything off of as I can, as I would like to make my own original races, classes, skills, etc... but need a mud to base it off of due to my limited knowledge of C. I like the look and feel of ROM 2.4, but need something with more built-in commands...ESPECIALLY editors. I would also like to stray away from anything with blinding colors. Any suggestions would be greatly appreciated, so thanks in advance!
Starting a New MUD - Base suggestions?
Posted by Scruffy on Sat 02 Jul 2005 01:47 AM — 31 posts, 122,241 views.
Well I'd suggest SocketMUD, but you want classes and races, etc. I've played, built, and coded on all 3 major codebases (Circlemud, Rom, and Smaug) and I feel that by far Smaug is my "favorite". There is also SmaugFUSS being worked on (Fixed Up Smaug Source) at smaugfuss.org
[EDIT - 11 March 2008] - The Smaug FUSS site is now http://www.smaugmuds.org/
[EDIT - 11 March 2008] - The Smaug FUSS site is now http://www.smaugmuds.org/
Why Smaug? Pro's and Con's for any suggestions greatly appreciated :)
Sorry but it's been a while and I really can't list everything off the top of my head right now. First of all, while coding in Circlemud, I noticed that the exit checks to the exit struct were case sensitive. So building an exit North would crash the MUD. Also Circlemud keeps binary player files, so you are unable to edit them at all. (in the shell)
As for Rom, I'll have to get back to you on that...
And yeah, Smaug has some issues I don't like such as starting stats are based on your characters name.
But overall, I prefer (and use) Smaug today. I'll post here if I come across more.
As for Rom, I'll have to get back to you on that...
And yeah, Smaug has some issues I don't like such as starting stats are based on your characters name.
But overall, I prefer (and use) Smaug today. I'll post here if I come across more.
Many are relatively easy to set up, and SMAUG is just about as easy as they come (or so I've found). I work mainly with SWR, a SMAUG derivitive. If you want to avoid the little quirks and annoyances you can, like Zeno suggested, use SocketMUD as it happens to be very well suited for starting bare minimum. However, it leaves you to do a lot yourself, like actually code in classes, races, etc. And you would probably want some form of hashing, which most codebases already provide, but which SocketMUD does not.
So in my quest to try various code bases before beginning, I decided to play around a bit with ROM 2.4 because a mud I used to enjoy a lot was based off of it and I am somewhat familiar with the base commands and overall look & feel. I'm currently trying to install OLC though on Slackware linux and having a hell of a time here during compile, and am hoping someone will be able to help me with this. I'll try to be as specific as possible...
I'm running Rom 2.4b6 from http://www.cmc.net/~rtaylor/rom/Rom24b6.tar.gz and attempting to install Ivan's OLC 2.1 from http://www.mudmagic.com/codes/dl/1499 . Following the readme, I copy patch.olc over into the src directory and run patch < patch.olc
(Stripping trailing CRs from patch.)
patching file Makefile
(Stripping trailing CRs from patch.)
patching file Makefile.linux
(Stripping trailing CRs from patch.)
patching file Makefile.normal
(Stripping trailing CRs from patch.)
does that for each and every line...different file names on each line of course.
so i hope for the best and continue on, copying all .c and .h files over to src and then typing make in Konsole after renaming my makefile to makefile.old and renaming makefile.linux to makefile
gcc -c -Wall -O -g -DFIRST_BOOT act_comm.c
gcc -c -Wall -O -g -DFIRST_BOOT act_enter.c
gcc -c -Wall -O -g -DFIRST_BOOT act_info.c
act_info.c: In function `do_look':
act_info.c:1123: warning: suggest explicit braces to avoid ambiguous `else'
act_info.c:1132: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT act_move.c
gcc -c -Wall -O -g -DFIRST_BOOT act_obj.c
act_obj.c: In function `do_put':
act_obj.c:424: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c:462: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c: In function `get_cost':
act_obj.c:2496: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT act_wiz.c
gcc -c -Wall -O -g -DFIRST_BOOT alias.c
gcc -c -Wall -O -g -DFIRST_BOOT ban.c
gcc -c -Wall -O -g -DFIRST_BOOT comm.c
comm.c: In function `process_output':
comm.c:1256: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT const.c
gcc -c -Wall -O -g -DFIRST_BOOT db.c
db.c: In function `boot_db':
db.c:424: warning: implicit declaration of function `save_groups'
db.c: In function `assign_area_vnum':
db.c:584: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT db2.c
gcc -c -Wall -O -g -DFIRST_BOOT effects.c
gcc -c -Wall -O -g -DFIRST_BOOT fight.c
fight.c: In function `one_hit':
fight.c:579: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT flags.c
gcc -c -Wall -O -g -DFIRST_BOOT handler.c
handler.c: In function `reset_char':
handler.c:521: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `get_max_train':
handler.c:725: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `unequip_char':
handler.c:1608: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT healer.c
gcc -c -Wall -O -g -DFIRST_BOOT interp.c
gcc -c -Wall -O -g -DFIRST_BOOT note.c
gcc -c -Wall -O -g -DFIRST_BOOT lookup.c
gcc -c -Wall -O -g -DFIRST_BOOT magic.c
magic.c: In function `obj_cast_spell':
magic.c:643: warning: suggest explicit braces to avoid ambiguous `else'
magic.c: In function `spell_earthquake':
magic.c:2203: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT magic2.c
gcc -c -Wall -O -g -DFIRST_BOOT music.c
gcc -c -Wall -O -g -DFIRST_BOOT recycle.c
gcc -c -Wall -O -g -DFIRST_BOOT save.c
gcc -c -Wall -O -g -DFIRST_BOOT scan.c
gcc -c -Wall -O -g -DFIRST_BOOT skills.c
gcc -c -Wall -O -g -DFIRST_BOOT special.c
gcc -c -Wall -O -g -DFIRST_BOOT tables.c
gcc -c -Wall -O -g -DFIRST_BOOT update.c
gcc -c -Wall -O -g -DFIRST_BOOT mob_cmds.c
gcc -c -Wall -O -g -DFIRST_BOOT mob_prog.c
gcc -c -Wall -O -g -DFIRST_BOOT olc.c
I'm running Rom 2.4b6 from http://www.cmc.net/~rtaylor/rom/Rom24b6.tar.gz and attempting to install Ivan's OLC 2.1 from http://www.mudmagic.com/codes/dl/1499 . Following the readme, I copy patch.olc over into the src directory and run patch < patch.olc
(Stripping trailing CRs from patch.)
patching file Makefile
(Stripping trailing CRs from patch.)
patching file Makefile.linux
(Stripping trailing CRs from patch.)
patching file Makefile.normal
(Stripping trailing CRs from patch.)
does that for each and every line...different file names on each line of course.
so i hope for the best and continue on, copying all .c and .h files over to src and then typing make in Konsole after renaming my makefile to makefile.old and renaming makefile.linux to makefile
gcc -c -Wall -O -g -DFIRST_BOOT act_comm.c
gcc -c -Wall -O -g -DFIRST_BOOT act_enter.c
gcc -c -Wall -O -g -DFIRST_BOOT act_info.c
act_info.c: In function `do_look':
act_info.c:1123: warning: suggest explicit braces to avoid ambiguous `else'
act_info.c:1132: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT act_move.c
gcc -c -Wall -O -g -DFIRST_BOOT act_obj.c
act_obj.c: In function `do_put':
act_obj.c:424: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c:462: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c: In function `get_cost':
act_obj.c:2496: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT act_wiz.c
gcc -c -Wall -O -g -DFIRST_BOOT alias.c
gcc -c -Wall -O -g -DFIRST_BOOT ban.c
gcc -c -Wall -O -g -DFIRST_BOOT comm.c
comm.c: In function `process_output':
comm.c:1256: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT const.c
gcc -c -Wall -O -g -DFIRST_BOOT db.c
db.c: In function `boot_db':
db.c:424: warning: implicit declaration of function `save_groups'
db.c: In function `assign_area_vnum':
db.c:584: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT db2.c
gcc -c -Wall -O -g -DFIRST_BOOT effects.c
gcc -c -Wall -O -g -DFIRST_BOOT fight.c
fight.c: In function `one_hit':
fight.c:579: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT flags.c
gcc -c -Wall -O -g -DFIRST_BOOT handler.c
handler.c: In function `reset_char':
handler.c:521: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `get_max_train':
handler.c:725: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `unequip_char':
handler.c:1608: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT healer.c
gcc -c -Wall -O -g -DFIRST_BOOT interp.c
gcc -c -Wall -O -g -DFIRST_BOOT note.c
gcc -c -Wall -O -g -DFIRST_BOOT lookup.c
gcc -c -Wall -O -g -DFIRST_BOOT magic.c
magic.c: In function `obj_cast_spell':
magic.c:643: warning: suggest explicit braces to avoid ambiguous `else'
magic.c: In function `spell_earthquake':
magic.c:2203: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g -DFIRST_BOOT magic2.c
gcc -c -Wall -O -g -DFIRST_BOOT music.c
gcc -c -Wall -O -g -DFIRST_BOOT recycle.c
gcc -c -Wall -O -g -DFIRST_BOOT save.c
gcc -c -Wall -O -g -DFIRST_BOOT scan.c
gcc -c -Wall -O -g -DFIRST_BOOT skills.c
gcc -c -Wall -O -g -DFIRST_BOOT special.c
gcc -c -Wall -O -g -DFIRST_BOOT tables.c
gcc -c -Wall -O -g -DFIRST_BOOT update.c
gcc -c -Wall -O -g -DFIRST_BOOT mob_cmds.c
gcc -c -Wall -O -g -DFIRST_BOOT mob_prog.c
gcc -c -Wall -O -g -DFIRST_BOOT olc.c
gcc -c -Wall -O -g -DFIRST_BOOT olc_act.c
gcc -c -Wall -O -g -DFIRST_BOOT olc_save.c
gcc -c -Wall -O -g -DFIRST_BOOT bit.c
bit.c: In function `flag_string':
bit.c:165: warning: operation on `toggle' may be undefined
gcc -c -Wall -O -g -DFIRST_BOOT mem.c
gcc -c -Wall -O -g -DFIRST_BOOT string.c
gcc -c -Wall -O -g -DFIRST_BOOT pedit.c
gcc -c -Wall -O -g -DFIRST_BOOT hedit.c
gcc -c -Wall -O -g -DFIRST_BOOT cmdedit.c
cmdedit.c: In function `do_cmdedit':
cmdedit.c:184: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT raedit.c
raedit.c: In function `do_raedit':
raedit.c:105: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT skedit.c
skedit.c: In function `do_skedit':
skedit.c:255: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT sedit.c
gcc -c -Wall -O -g -DFIRST_BOOT gedit.c
gedit.c: In function `save_groups':
gedit.c:107: warning: passing arg 2 of `save_group' discards qualifiers from pointer target type
gedit.c: In function `do_gedit':
gedit.c:213: warning: assignment discards qualifiers from pointer target type
gedit.c: In function `gedit_list':
gedit.c:412: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT tablesave.c
tablesave.c: In function `grabar_tabla_comandos':
tablesave.c:571: warning: assignment discards qualifiers from pointer target type
tablesave.c:576: warning: assignment discards qualifiers from pointer target type
tablesave.c: In function `grabar_razas':
tablesave.c:809: warning: assignment discards qualifiers from pointer target type
tablesave.c:814: warning: assignment discards qualifiers from pointer target type
tablesave.c:820: warning: passing arg 4 of `save_struct' discards qualifiers from pointer target type
tablesave.c: In function `grabar_skills':
tablesave.c:877: warning: passing arg 4 of `save_struct' discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT screen.c
screen.c: In function `UpdateOLCScreen':
screen.c:658: warning: operation on `i' may be undefined
screen.c:658: warning: operation on `i' may be undefined
rm -f rom
gcc -O -g -o rom act_comm.o act_enter.o act_info.o act_move.o act_obj.o act_wiz.o alias.o ban.o comm.o const.o db.o db2.o effects.o fight.o flags.o handler.o healer.o interp.o note.o lookup.o magic.o magic2.o music.o recycle.o save.o scan.o skills.o special.o tables.o update.o mob_cmds.o mob_prog.o olc.o olc_act.o olc_save.o bit.o mem.o string.o pedit.o hedit.o cmdedit.o raedit.o skedit.o sedit.ogedit.o tablesave.o screen.o -lcrypt
is the result... i know the ambiguous errors or nothing, but the other ones worry me...Though I don't know how to fix those. It claims to ignore all warnings though, so I go on...
added dummy object from included limbo.are after
#25
gate portal~
a shimmering gate~
A shimmering black gate rises from the ground, leading to parts unknown.~
shadow~
portal GOT 0
0 0 0 0 0
0 0 0 P
#0
in current one and copy over olc.hlp. create the data and data/progs directories, go to areas and type startup &. appears to start with a [1] 2090 . continuing readme, I kill the process and get [1]+ Terminated startup, remove -DFIRST_BOOT in the makefile, delete all .o files, and type make again. Somewhat clean compile.
gcc -c -Wall -O -g -DFIRST_BOOT olc_save.c
gcc -c -Wall -O -g -DFIRST_BOOT bit.c
bit.c: In function `flag_string':
bit.c:165: warning: operation on `toggle' may be undefined
gcc -c -Wall -O -g -DFIRST_BOOT mem.c
gcc -c -Wall -O -g -DFIRST_BOOT string.c
gcc -c -Wall -O -g -DFIRST_BOOT pedit.c
gcc -c -Wall -O -g -DFIRST_BOOT hedit.c
gcc -c -Wall -O -g -DFIRST_BOOT cmdedit.c
cmdedit.c: In function `do_cmdedit':
cmdedit.c:184: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT raedit.c
raedit.c: In function `do_raedit':
raedit.c:105: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT skedit.c
skedit.c: In function `do_skedit':
skedit.c:255: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT sedit.c
gcc -c -Wall -O -g -DFIRST_BOOT gedit.c
gedit.c: In function `save_groups':
gedit.c:107: warning: passing arg 2 of `save_group' discards qualifiers from pointer target type
gedit.c: In function `do_gedit':
gedit.c:213: warning: assignment discards qualifiers from pointer target type
gedit.c: In function `gedit_list':
gedit.c:412: warning: assignment discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT tablesave.c
tablesave.c: In function `grabar_tabla_comandos':
tablesave.c:571: warning: assignment discards qualifiers from pointer target type
tablesave.c:576: warning: assignment discards qualifiers from pointer target type
tablesave.c: In function `grabar_razas':
tablesave.c:809: warning: assignment discards qualifiers from pointer target type
tablesave.c:814: warning: assignment discards qualifiers from pointer target type
tablesave.c:820: warning: passing arg 4 of `save_struct' discards qualifiers from pointer target type
tablesave.c: In function `grabar_skills':
tablesave.c:877: warning: passing arg 4 of `save_struct' discards qualifiers from pointer target type
gcc -c -Wall -O -g -DFIRST_BOOT screen.c
screen.c: In function `UpdateOLCScreen':
screen.c:658: warning: operation on `i' may be undefined
screen.c:658: warning: operation on `i' may be undefined
rm -f rom
gcc -O -g -o rom act_comm.o act_enter.o act_info.o act_move.o act_obj.o act_wiz.o alias.o ban.o comm.o const.o db.o db2.o effects.o fight.o flags.o handler.o healer.o interp.o note.o lookup.o magic.o magic2.o music.o recycle.o save.o scan.o skills.o special.o tables.o update.o mob_cmds.o mob_prog.o olc.o olc_act.o olc_save.o bit.o mem.o string.o pedit.o hedit.o cmdedit.o raedit.o skedit.o sedit.ogedit.o tablesave.o screen.o -lcrypt
is the result... i know the ambiguous errors or nothing, but the other ones worry me...Though I don't know how to fix those. It claims to ignore all warnings though, so I go on...
added dummy object from included limbo.are after
#25
gate portal~
a shimmering gate~
A shimmering black gate rises from the ground, leading to parts unknown.~
shadow~
portal GOT 0
0 0 0 0 0
0 0 0 P
#0
in current one and copy over olc.hlp. create the data and data/progs directories, go to areas and type startup &. appears to start with a [1] 2090 . continuing readme, I kill the process and get [1]+ Terminated startup, remove -DFIRST_BOOT in the makefile, delete all .o files, and type make again. Somewhat clean compile.
ugh...copy paste mishap. Would someone please delete the random letter and number one above this?
Going on....
gcc -c -Wall -O -g act_comm.c
gcc -c -Wall -O -g act_enter.c
gcc -c -Wall -O -g act_info.c
act_info.c: In function `do_look':
act_info.c:1123: warning: suggest explicit braces to avoid ambiguous `else'
act_info.c:1132: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g act_move.c
gcc -c -Wall -O -g act_obj.c
act_obj.c: In function `do_put':
act_obj.c:424: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c:462: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c: In function `get_cost':
act_obj.c:2496: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g act_wiz.c
gcc -c -Wall -O -g alias.c
gcc -c -Wall -O -g ban.c
gcc -c -Wall -O -g comm.c
comm.c: In function `process_output':
comm.c:1256: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g const.c
gcc -c -Wall -O -g db.c
db.c: In function `assign_area_vnum':
db.c:584: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g db2.c
gcc -c -Wall -O -g effects.c
gcc -c -Wall -O -g fight.c
fight.c: In function `one_hit':
fight.c:579: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g flags.c
gcc -c -Wall -O -g handler.c
handler.c: In function `reset_char':
handler.c:521: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `get_max_train':
handler.c:725: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `unequip_char':
handler.c:1608: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g healer.c
gcc -c -Wall -O -g interp.c
gcc -c -Wall -O -g note.c
gcc -c -Wall -O -g lookup.c
gcc -c -Wall -O -g magic.c
magic.c: In function `obj_cast_spell':
magic.c:643: warning: suggest explicit braces to avoid ambiguous `else'
magic.c: In function `spell_earthquake':
magic.c:2203: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g magic2.c
gcc -c -Wall -O -g music.c
gcc -c -Wall -O -g recycle.c
gcc -c -Wall -O -g save.c
gcc -c -Wall -O -g scan.c
gcc -c -Wall -O -g skills.c
gcc -c -Wall -O -g special.c
gcc -c -Wall -O -g tables.c
gcc -c -Wall -O -g update.c
gcc -c -Wall -O -g mob_cmds.c
gcc -c -Wall -O -g mob_prog.c
gcc -c -Wall -O -g olc.c
gcc -c -Wall -O -g olc_act.c
gcc -c -Wall -O -g olc_save.c
gcc -c -Wall -O -g bit.c
bit.c: In function `flag_string':
bit.c:165: warning: operation on `toggle' may be undefined
gcc -c -Wall -O -g mem.c
gcc -c -Wall -O -g string.c
gcc -c -Wall -O -g pedit.c
gcc -c -Wall -O -g hedit.c
gcc -c -Wall -O -g cmdedit.c
gcc -c -Wall -O -g raedit.c
gcc -c -Wall -O -g skedit.c
gcc -c -Wall -O -g sedit.c
gcc -c -Wall -O -g gedit.c
gcc -c -Wall -O -g tablesave.c
gcc -c -Wall -O -g screen.c
screen.c: In function `UpdateOLCScreen':
screen.c:658: warning: operation on `i' may be undefined
screen.c:658: warning: operation on `i' may be undefined
rm -f rom
gcc -O -g -o rom act_comm.o act_enter.o act_info.o act_move.o act_obj.o act_wiz.o alias.o ban.o comm.o const.o db.o db2.o effects.o fight.o flags.o handler.o healer.o interp.o note.o lookup.o magic.o magic2.o music.o recycle.o save.o scan.o skills.o special.o tables.o update.o mob_cmds.o mob_prog.o olc.o olc_act.o olc_save.o bit.o mem.o string.o pedit.o hedit.o cmdedit.o raedit.o skedit.o sedit.ogedit.o tablesave.o screen.o -lcrypt
so i go back to areas, type startup & to reload the mud..appears to load. Attempt to connect to it in telnet, trying port 9000, and the connection's refused...Port forwarding's set up right on my router because I was able to connect fine before adding this patch. I'm extremely sorry this is such an insanely long post, but I have been trying to get this up and running for the past two days and am finally throwing in the towel and asking for assistance.
Going on....
gcc -c -Wall -O -g act_comm.c
gcc -c -Wall -O -g act_enter.c
gcc -c -Wall -O -g act_info.c
act_info.c: In function `do_look':
act_info.c:1123: warning: suggest explicit braces to avoid ambiguous `else'
act_info.c:1132: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g act_move.c
gcc -c -Wall -O -g act_obj.c
act_obj.c: In function `do_put':
act_obj.c:424: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c:462: warning: suggest explicit braces to avoid ambiguous `else'
act_obj.c: In function `get_cost':
act_obj.c:2496: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g act_wiz.c
gcc -c -Wall -O -g alias.c
gcc -c -Wall -O -g ban.c
gcc -c -Wall -O -g comm.c
comm.c: In function `process_output':
comm.c:1256: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g const.c
gcc -c -Wall -O -g db.c
db.c: In function `assign_area_vnum':
db.c:584: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g db2.c
gcc -c -Wall -O -g effects.c
gcc -c -Wall -O -g fight.c
fight.c: In function `one_hit':
fight.c:579: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g flags.c
gcc -c -Wall -O -g handler.c
handler.c: In function `reset_char':
handler.c:521: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `get_max_train':
handler.c:725: warning: suggest explicit braces to avoid ambiguous `else'
handler.c: In function `unequip_char':
handler.c:1608: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g healer.c
gcc -c -Wall -O -g interp.c
gcc -c -Wall -O -g note.c
gcc -c -Wall -O -g lookup.c
gcc -c -Wall -O -g magic.c
magic.c: In function `obj_cast_spell':
magic.c:643: warning: suggest explicit braces to avoid ambiguous `else'
magic.c: In function `spell_earthquake':
magic.c:2203: warning: suggest explicit braces to avoid ambiguous `else'
gcc -c -Wall -O -g magic2.c
gcc -c -Wall -O -g music.c
gcc -c -Wall -O -g recycle.c
gcc -c -Wall -O -g save.c
gcc -c -Wall -O -g scan.c
gcc -c -Wall -O -g skills.c
gcc -c -Wall -O -g special.c
gcc -c -Wall -O -g tables.c
gcc -c -Wall -O -g update.c
gcc -c -Wall -O -g mob_cmds.c
gcc -c -Wall -O -g mob_prog.c
gcc -c -Wall -O -g olc.c
gcc -c -Wall -O -g olc_act.c
gcc -c -Wall -O -g olc_save.c
gcc -c -Wall -O -g bit.c
bit.c: In function `flag_string':
bit.c:165: warning: operation on `toggle' may be undefined
gcc -c -Wall -O -g mem.c
gcc -c -Wall -O -g string.c
gcc -c -Wall -O -g pedit.c
gcc -c -Wall -O -g hedit.c
gcc -c -Wall -O -g cmdedit.c
gcc -c -Wall -O -g raedit.c
gcc -c -Wall -O -g skedit.c
gcc -c -Wall -O -g sedit.c
gcc -c -Wall -O -g gedit.c
gcc -c -Wall -O -g tablesave.c
gcc -c -Wall -O -g screen.c
screen.c: In function `UpdateOLCScreen':
screen.c:658: warning: operation on `i' may be undefined
screen.c:658: warning: operation on `i' may be undefined
rm -f rom
gcc -O -g -o rom act_comm.o act_enter.o act_info.o act_move.o act_obj.o act_wiz.o alias.o ban.o comm.o const.o db.o db2.o effects.o fight.o flags.o handler.o healer.o interp.o note.o lookup.o magic.o magic2.o music.o recycle.o save.o scan.o skills.o special.o tables.o update.o mob_cmds.o mob_prog.o olc.o olc_act.o olc_save.o bit.o mem.o string.o pedit.o hedit.o cmdedit.o raedit.o skedit.o sedit.ogedit.o tablesave.o screen.o -lcrypt
so i go back to areas, type startup & to reload the mud..appears to load. Attempt to connect to it in telnet, trying port 9000, and the connection's refused...Port forwarding's set up right on my router because I was able to connect fine before adding this patch. I'm extremely sorry this is such an insanely long post, but I have been trying to get this up and running for the past two days and am finally throwing in the towel and asking for assistance.
You can always delete your own posts. So the mud did successfully compile? Can you tell me what the main problem is right now? You can't connect? Make sure you're connecting to localhost.
tried localhost, and still get Connection refused. I'm not sure what exactly is happening here...if the problem is from any of those errors I had seen during compilation or if OCL 2.1 is just too buggy or I have a bad download of something?
The delete button should be right next to edit. If not, it's fine.
It's been years since I used Rom, but I think those warnings are normal. This is why I prefer Smaug. There is a project SmaugFUSS, but I mentioned that already.
I have no experience with running a mud on my own computer. Make sure it is running on that port. Paste what "ps ux" shows here.
It's been years since I used Rom, but I think those warnings are normal. This is why I prefer Smaug. There is a project SmaugFUSS, but I mentioned that already.
I have no experience with running a mud on my own computer. Make sure it is running on that port. Paste what "ps ux" shows here.
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
dave 134 0.0 0.1 2740 1644 tty1 Ss 13:41 0:00 -bash
dave 150 0.0 0.1 2368 1252 tty1 S+ 13:41 0:00 /bin/sh /usr/X11R
dave 162 0.0 0.0 2216 640 tty1 S+ 13:41 0:00 xinit /usr/X11R6/
dave 167 0.0 0.1 2360 1200 tty1 S 13:41 0:00 /bin/sh /usr/X11R
dave 168 0.0 0.1 2376 1268 tty1 S 13:41 0:00 /bin/sh /opt/kde/
dave 190 0.0 1.2 23824 11224 ? Ss 13:41 0:00 kdeinit Running..
dave 193 0.0 1.1 23116 10540 ? S 13:41 0:01 kdeinit: dcopserv
dave 195 0.0 1.3 25488 12340 ? S 13:41 0:00 kdeinit: klaunche
dave 198 0.0 1.8 28976 17184 ? S 13:41 0:01 kdeinit: kded
dave 207 0.0 0.9 12840 8240 ? S 13:41 0:01 artsd -F 10 -S 40
dave 209 0.0 1.8 32620 16776 ? S 13:41 0:00 kdeinit: knotify
dave 219 0.0 0.0 1392 336 tty1 S 13:41 0:00 kwrapper ksmserve
dave 221 0.0 1.4 24444 12836 ? S 13:41 0:00 kdeinit: ksmserve
dave 222 0.1 1.6 25920 14892 ? S 13:41 0:07 kdeinit: kwin -se
dave 223 0.0 0.9 12840 8240 ? S 13:41 0:00 artsd -F 10 -S 40
dave 226 0.0 1.4 24824 13192 ? S 13:41 0:01 kdeinit: khotkeys
dave 228 0.0 1.7 26956 16032 ? S 13:41 0:01 kdeinit: kdesktop
dave 231 0.1 1.9 28164 17560 ? S 13:41 0:10 kdeinit: kicker
dave 233 0.0 1.5 25164 14160 ? S 13:41 0:00 kdeinit: klipper
dave 236 1.4 4.6 52240 42136 ? S 13:41 1:29 kdeinit: konquero
dave 381 0.0 1.7 28536 15936 ? S 13:41 0:00 korgac --miniicon
dave 478 0.0 1.6 26256 14948 ? S 13:44 0:00 kdeinit: kio_uise
dave 726 0.0 2.1 30560 19636 ? S 13:55 0:02 kdeinit: kwrite /
dave 737 0.3 3.1 40368 28304 ? Ss 13:56 0:16 konqueror file:/h
dave 1573 0.1 2.9 38632 27036 ? Ss 14:30 0:03 konqueror file:/h
dave 1805 0.0 1.3 25304 11932 ? S 14:40 0:00 kdeinit: kio_file
dave 1885 0.0 2.0 30248 18824 ? S 14:48 0:00 kdeinit: kwrite /
dave 1887 0.0 1.8 28180 16296 ? R 14:49 0:01 kdeinit: konsole
dave 1888 0.0 0.1 2752 1680 pts/1 Ss 14:49 0:00 -bash
dave 2085 0.0 2.0 30376 18952 ? S 14:57 0:01 kdeinit: kwrite /
dave 2244 0.0 0.1 2804 1244 pts/1 S 15:06 0:00 /bin/csh ./startu
dave 2359 0.0 1.3 29492 12356 ? S 15:12 0:00 kdeinit: kio_http
dave 2367 0.0 1.3 29492 12356 ? S 15:12 0:00 kdeinit: kio_http
dave 2485 0.0 1.3 29492 12356 ? S 15:22 0:00 kdeinit: kio_http
dave 2486 0.0 1.3 29492 12356 ? S 15:22 0:00 kdeinit: kio_http
dave 2506 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2507 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2508 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2509 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2510 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2511 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2512 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2514 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2534 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2535 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2536 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2537 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2538 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2550 0.3 0.1 2412 1356 ? S 15:27 0:00 ispell -a -S -C
dave 2554 0.0 0.0 2152 636 pts/1 S 15:27 0:00 sleep 15
dave 2557 0.0 0.0 2408 844 pts/1 R+ 15:27 0:00 ps ux
dave@scruffy:~/Rom24/area$
ip is 66.168.59.95 , and the port should be 9000. Just double checked my startup file and it looks like that's what it should be...
# Set the port number.
set port = 9000
if ( "$1" != "" ) set port="$1"
dave 134 0.0 0.1 2740 1644 tty1 Ss 13:41 0:00 -bash
dave 150 0.0 0.1 2368 1252 tty1 S+ 13:41 0:00 /bin/sh /usr/X11R
dave 162 0.0 0.0 2216 640 tty1 S+ 13:41 0:00 xinit /usr/X11R6/
dave 167 0.0 0.1 2360 1200 tty1 S 13:41 0:00 /bin/sh /usr/X11R
dave 168 0.0 0.1 2376 1268 tty1 S 13:41 0:00 /bin/sh /opt/kde/
dave 190 0.0 1.2 23824 11224 ? Ss 13:41 0:00 kdeinit Running..
dave 193 0.0 1.1 23116 10540 ? S 13:41 0:01 kdeinit: dcopserv
dave 195 0.0 1.3 25488 12340 ? S 13:41 0:00 kdeinit: klaunche
dave 198 0.0 1.8 28976 17184 ? S 13:41 0:01 kdeinit: kded
dave 207 0.0 0.9 12840 8240 ? S 13:41 0:01 artsd -F 10 -S 40
dave 209 0.0 1.8 32620 16776 ? S 13:41 0:00 kdeinit: knotify
dave 219 0.0 0.0 1392 336 tty1 S 13:41 0:00 kwrapper ksmserve
dave 221 0.0 1.4 24444 12836 ? S 13:41 0:00 kdeinit: ksmserve
dave 222 0.1 1.6 25920 14892 ? S 13:41 0:07 kdeinit: kwin -se
dave 223 0.0 0.9 12840 8240 ? S 13:41 0:00 artsd -F 10 -S 40
dave 226 0.0 1.4 24824 13192 ? S 13:41 0:01 kdeinit: khotkeys
dave 228 0.0 1.7 26956 16032 ? S 13:41 0:01 kdeinit: kdesktop
dave 231 0.1 1.9 28164 17560 ? S 13:41 0:10 kdeinit: kicker
dave 233 0.0 1.5 25164 14160 ? S 13:41 0:00 kdeinit: klipper
dave 236 1.4 4.6 52240 42136 ? S 13:41 1:29 kdeinit: konquero
dave 381 0.0 1.7 28536 15936 ? S 13:41 0:00 korgac --miniicon
dave 478 0.0 1.6 26256 14948 ? S 13:44 0:00 kdeinit: kio_uise
dave 726 0.0 2.1 30560 19636 ? S 13:55 0:02 kdeinit: kwrite /
dave 737 0.3 3.1 40368 28304 ? Ss 13:56 0:16 konqueror file:/h
dave 1573 0.1 2.9 38632 27036 ? Ss 14:30 0:03 konqueror file:/h
dave 1805 0.0 1.3 25304 11932 ? S 14:40 0:00 kdeinit: kio_file
dave 1885 0.0 2.0 30248 18824 ? S 14:48 0:00 kdeinit: kwrite /
dave 1887 0.0 1.8 28180 16296 ? R 14:49 0:01 kdeinit: konsole
dave 1888 0.0 0.1 2752 1680 pts/1 Ss 14:49 0:00 -bash
dave 2085 0.0 2.0 30376 18952 ? S 14:57 0:01 kdeinit: kwrite /
dave 2244 0.0 0.1 2804 1244 pts/1 S 15:06 0:00 /bin/csh ./startu
dave 2359 0.0 1.3 29492 12356 ? S 15:12 0:00 kdeinit: kio_http
dave 2367 0.0 1.3 29492 12356 ? S 15:12 0:00 kdeinit: kio_http
dave 2485 0.0 1.3 29492 12356 ? S 15:22 0:00 kdeinit: kio_http
dave 2486 0.0 1.3 29492 12356 ? S 15:22 0:00 kdeinit: kio_http
dave 2506 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2507 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2508 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2509 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2510 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2511 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2512 0.0 1.3 29404 12236 ? S 15:24 0:00 kdeinit: kio_http
dave 2514 0.0 1.3 29404 12232 ? S 15:24 0:00 kdeinit: kio_http
dave 2534 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2535 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2536 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2537 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2538 0.0 1.3 31452 12236 ? S 15:26 0:00 kdeinit: kio_http
dave 2550 0.3 0.1 2412 1356 ? S 15:27 0:00 ispell -a -S -C
dave 2554 0.0 0.0 2152 636 pts/1 S 15:27 0:00 sleep 15
dave 2557 0.0 0.0 2408 844 pts/1 R+ 15:27 0:00 ps ux
dave@scruffy:~/Rom24/area$
ip is 66.168.59.95 , and the port should be 9000. Just double checked my startup file and it looks like that's what it should be...
# Set the port number.
set port = 9000
if ( "$1" != "" ) set port="$1"
I beleive that this line:
dave 2554 0.0 0.0 2152 636 pts/1 S 15:27 0:00 sleep 15
means that the startup script is running, but the mud is not, likely a crash. I would suggest try booting in gdb to see what happens.
dave 2554 0.0 0.0 2152 636 pts/1 S 15:27 0:00 sleep 15
means that the startup script is running, but the mud is not, likely a crash. I would suggest try booting in gdb to see what happens.
I'm not familiar with gdb. What would I have to do to do this?
Check Nick's fantastic GDB tutorial:
http://www.gammon.com.au/forum/bbshowpost.php?bbsubject_id=3653
The gist of how to boot:
go to your area directory(does rom have an area? no entirely sure actually) and type
gdb ../src/<executable>
run <port>
http://www.gammon.com.au/forum/bbshowpost.php?bbsubject_id=3653
The gist of how to boot:
go to your area directory(does rom have an area? no entirely sure actually) and type
gdb ../src/<executable>
run <port>
not sure if this helps you or not. If I had to take a guess (assuming it was the rom i was supposed to use for the source), I'd say it's Ivan's patch after all...it was originally written in spanish. But how to fix this?...
dave@scruffy:~/Rom24$ cd area
dave@scruffy:~/Rom24/area$ gdb ../src/rom
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-slackware-linux"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /home/dave/Rom24/src/rom
Sat Jul 2 15:42:27 2005 :: Creating skill table of length 151, size 7852
cargar_tabla_razas: No such file or directory
load_tabla_comandos : No such file or directory
../data/socials: No such file or directory
Program exited with code 01.
(gdb)
dave@scruffy:~/Rom24$ cd area
dave@scruffy:~/Rom24/area$ gdb ../src/rom
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-slackware-linux"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /home/dave/Rom24/src/rom
Sat Jul 2 15:42:27 2005 :: Creating skill table of length 151, size 7852
cargar_tabla_razas: No such file or directory
load_tabla_comandos : No such file or directory
../data/socials: No such file or directory
Program exited with code 01.
(gdb)
You should try to run gdb in the same place that the startup script tries to run the mud. If it changes to another directory, go to that directory and see if it works. The other to make sure is that the files it is trying to load is in the proper directory, from that code socials should be in the data directory.
My startup file
-----------------------------------
#!/bin/csh
# Written by Furey.
# With additions from Tony and Alander.
# Set the port number.
set port = 9000
if ( "$1" != "" ) set port="$1"
# Change to area directory.
cd ../area
# Set limits.
if ( -e shutdown.txt ) rm -f shutdown.txt
while ( 1 )
# If you want to have logs in a different directory,
# change the 'set logfile' line to reflect the directory name.
set index = 1000
while ( 1 )
set logfile = ../log/$index.log
if ( ! -e $logfile ) break
@ index++
end
# Run rom.
../src/rom $port >&! $logfile
# Restart, giving old connections a chance to die.
if ( -e shutdown.txt ) then
rm -f shutdown.txt
exit 0
endif
sleep 15
end
-----------------------------------
I was already running from /area. If those files are in fact missing, I have absolutely no idea where to obtain them either...Going to try recompiling it as if it were the first boot again, and see if that helps. Any other suggestions welcome :) . And on a side note, I would like to add that I am highly impressed at how fast responses are here. It's highly appreciated.
-----------------------------------
#!/bin/csh
# Written by Furey.
# With additions from Tony and Alander.
# Set the port number.
set port = 9000
if ( "$1" != "" ) set port="$1"
# Change to area directory.
cd ../area
# Set limits.
if ( -e shutdown.txt ) rm -f shutdown.txt
while ( 1 )
# If you want to have logs in a different directory,
# change the 'set logfile' line to reflect the directory name.
set index = 1000
while ( 1 )
set logfile = ../log/$index.log
if ( ! -e $logfile ) break
@ index++
end
# Run rom.
../src/rom $port >&! $logfile
# Restart, giving old connections a chance to die.
if ( -e shutdown.txt ) then
rm -f shutdown.txt
exit 0
endif
sleep 15
end
-----------------------------------
I was already running from /area. If those files are in fact missing, I have absolutely no idea where to obtain them either...Going to try recompiling it as if it were the first boot again, and see if that helps. Any other suggestions welcome :) . And on a side note, I would like to add that I am highly impressed at how fast responses are here. It's highly appreciated.
Alright guys. Got something different here...tried it this time after compiling while my make file had the -DFIRST_BOOT in it again and got...
dave@scruffy:~/Rom24/area$ gdb ../src/rom
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-slackware-linux"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /home/dave/Rom24/src/rom
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 10525:1 -> 10535:3 -> 10534.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 3458:2 -> 3472:0 -> 10401.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 8705:4 -> 8706:5 -> 8708.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 8717:2 -> 8719:0 -> 8718.
Err: obj an elemental rod of earthquake (9217) -- 7, mob a small rock (9217) --3
Err: obj elemental wand of wind and air (9218) -- 27, mob an alchemist (9234) -- 13
Err: obj an ice staff (9216) -- 25, mob a puddle (9214) -- 8
Err: obj an icicle (9227) -- 28, mob the Ice Bandit (9228) -- 24
Err: obj elemental wand of fire (9215) -- 16, mob a flame (9215) -- 4
Err: obj elemental wand of fire (9215) -- 16, mob a flame (9215) -- 4
Err: obj elemental wand of wind and air (9218) -- 27, mob a small spark (9218) -- 4
Err: obj elemental wand of wind and air (9218) -- 27, mob an eddie (9225) -- 2
Err: obj an ice staff (9216) -- 25, mob a baby rainbow dragon (9235) -- 16
Err: obj a wet noodle (8010) -- 5, mob a Futsie (8002) -- 17
dave@scruffy:~/Rom24/area$ gdb ../src/rom
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-slackware-linux"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /home/dave/Rom24/src/rom
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 10525:1 -> 10535:3 -> 10534.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 3458:2 -> 3472:0 -> 10401.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 8705:4 -> 8706:5 -> 8708.
Sat Jul 2 16:07:02 2005 :: [*****] BUG: Fix_exits: 8717:2 -> 8719:0 -> 8718.
Err: obj an elemental rod of earthquake (9217) -- 7, mob a small rock (9217) --3
Err: obj elemental wand of wind and air (9218) -- 27, mob an alchemist (9234) -- 13
Err: obj an ice staff (9216) -- 25, mob a puddle (9214) -- 8
Err: obj an icicle (9227) -- 28, mob the Ice Bandit (9228) -- 24
Err: obj elemental wand of fire (9215) -- 16, mob a flame (9215) -- 4
Err: obj elemental wand of fire (9215) -- 16, mob a flame (9215) -- 4
Err: obj elemental wand of wind and air (9218) -- 27, mob a small spark (9218) -- 4
Err: obj elemental wand of wind and air (9218) -- 27, mob an eddie (9225) -- 2
Err: obj an ice staff (9216) -- 25, mob a baby rainbow dragon (9235) -- 16
Err: obj a wet noodle (8010) -- 5, mob a Futsie (8002) -- 17
I couldn't tell you exactly what the errors mean, I've never used ROM before, but you could try grepping the source files for "Err: obj " and see if anything relevany comes up. If you can checl the code that produces that error, you could at least narrow down what circumstances existed to create those error.
BTW, if you have the original, non-patched source, did that boot ok with this file set up?
BTW, if you have the original, non-patched source, did that boot ok with this file set up?
Those errors should cause the mud to crash. What else is after that?
Booted fine before the patch. And as for what's after that, the answer is nothing...just blank lines if I hit enter.
Then you've really got 3 options: Forget about the patch as it is in its current form and go with the stock code, try to hunt do through the code WHY its not booting by setting break points and grepping error message to fix what the patch messed up, or try another codebase that has OLC building code in it already(*cough*smaugfuss*cough*). If you want to go with the second and track it down, I would read over the GDB tutorial and see if you can make any headway. We're always here if you come across any snags.
I know you guys are strongly pushing here for Smaug, but I guess you can just call me that stubborn b**t*rd that likes rom 2.4. I ended up downloading and compiling the most basic stripped down version of QuickMUD that I could find and through looking at the code have been modifying it all night. I would like to thank each one of you for your time spent trying to help me. It was and continues to be greatly appreciated. I just have one question...I'm adding a patch by hand for skill and group editing and am having a slight problem...in the readme, it told me to add ', 0' to the end of each skill and group.
{
"rom basics", {0, 0, 0, 0},
{"scrolls", "staves", "wands", "recall"}, 0
}
{
"mage basics", {0, -1, -1, -1},
{"dagger"}, 0
}
{
"cleric basics", {-1, 0, -1, -1},
{"mace"}, 0
}
I'm not really sure where to add that ,0 in there though. Where it's at right now is what I assumed would be right by looking at it... Also, when I try doing a make, I'm getting
const.c:1790: error: parse error before '{' token
const.c:1791: warning: missing braces around initializer
const.c:1791: warning: (near initialization for `group_table[1].rating')
const.c:1793: error: parse error before numeric constant
(1793 starts at the { before mage basics ).
I'm guessing this is being caused just by my not knowing where to shove that extra ,0 . Any help would be greatly appreciated. Again, this is for adding the skedit and gredit commands.
{
"rom basics", {0, 0, 0, 0},
{"scrolls", "staves", "wands", "recall"}, 0
}
{
"mage basics", {0, -1, -1, -1},
{"dagger"}, 0
}
{
"cleric basics", {-1, 0, -1, -1},
{"mace"}, 0
}
I'm not really sure where to add that ,0 in there though. Where it's at right now is what I assumed would be right by looking at it... Also, when I try doing a make, I'm getting
const.c:1790: error: parse error before '{' token
const.c:1791: warning: missing braces around initializer
const.c:1791: warning: (near initialization for `group_table[1].rating')
const.c:1793: error: parse error before numeric constant
(1793 starts at the { before mage basics ).
I'm guessing this is being caused just by my not knowing where to shove that extra ,0 . Any help would be greatly appreciated. Again, this is for adding the skedit and gredit commands.
I'm pretty sure it'd have to be in the brackets. Like this:
{"mace", 0}
I would sugest using FirstMud as far as rom derivs go, it will in the long run save you hours and hours of changing all thos e little things that will annoy you about stock rom and its being actively developed. I remember putting ivans olc into a stock rom, there are a number of realy buggy versions of it out there, if i remember you want something like version 2.6, 2.7 was last mabe, and it was bugged to hell, working on memory, please correct me if im wrong.
cargar_tabla_razas: No such file or directory
load_tabla_comandos : No such file or directory
loading race table
loading commands table
Its assuming you have changed ROM to use commands and race files.
cargar_tabla_razas: No such file or directory
load_tabla_comandos : No such file or directory
loading race table
loading commands table
Its assuming you have changed ROM to use commands and race files.
Thanks! Ya...Every version of OLC that I've tried has blown my stock Rom up. I've tried 2.0, 2.1, 1.9 (i think...having a hard time remembering now), and just recently tried 1.81...None of which worked, so I have something that's buggy.... I've tried running QuickMUD because it already has built in OLC but I would prefer something almost completely stripped down of all races and classes with yet making it possible to add new races and classes (items as well for that matter, getting rid of all old stock items). QuickMUD Advanced 1.1 came somewhat close for me, although I don't care too much for some things in it...I'll give the one you mentioned a try though. What version would you recommend based on what I've said above, and where can I find it?
***EDIT***
Alright. So I'm trying version 3.9b, downloaded from mudmagic, and was incredibly impressed while it was compiling. It appears to have many of the features that I am looking for already built in, and looked like a remarkably clean compile - well written. Until....
telnet.c: In function `int telopt_unknown(DESCRIPTOR_DATA*, unsigned char,
unsigned char, bool)':
telnet.c:212: warning: comparison is always true due to limited range of data
type
telnet.c:225: warning: comparison is always true due to limited range of data
type
telnet.c:232: warning: comparison is always true due to limited range of data
type
make: *** [telnet.o] Error 1
bash-3.00$
Here's the segment in question
/* telopt_unknown handles all the negotiation commands that the mud server
doesn't understand
*/
int telopt_unknown(DESCRIPTOR_DATA * d, unsigned char c, unsigned char t,
bool quiet)
{
char buf[MAX_STRING_LENGTH];
char cmd[MAX_INPUT_LENGTH];
char opt[MAX_INPUT_LENGTH];
char rev;
char len = 1;
if (c == '\n' || c == '\r' || c == '\0')
return 0;
/*line 212 is next line*/
if (TELCMD_OK(c))
{
sprintf(cmd, "%s", TELCMD(c));
if (c == IAC)
len = 1; /* IAC IAC */
else if (c >= SB)
len = 2; /* IAC DONT/DO/WONT/WILL/SB ?? */
else
len = 1; /* IAC ?? */
}
if (!quiet)
{
/*line 225 is next line*/
if (TELCMD_OK(c))
sprintf(cmd, "%s", TELCMD(c));
else
sprintf(cmd, "[%u]", c);
if (TELOPT_OK(t))
sprintf(opt, "%s", TELOPT(t));
/*line 232*/ else if (TELCMD_OK(t))
sprintf(opt, "%s", TELCMD(t));
else if (t == 85)
sprintf(opt, "COMPRESS-1");
else if (t == 86)
sprintf(opt, "COMPRESS-2");
else
sprintf(opt, "[%u]", t);
switch ((unsigned char) c)
{
case WILL:
rev = WONT;
break;
case WONT:
rev = DONT;
break;
case DONT:
rev = WONT;
break;
case DO:
rev = DONT;
break;
default:
rev = c;
break;
}
sprintf(buf, "%c%c%c", IAC, rev, t);
write_to_descriptor(d, buf, 0);
}
return len;
}
***EDIT***
Alright. So I'm trying version 3.9b, downloaded from mudmagic, and was incredibly impressed while it was compiling. It appears to have many of the features that I am looking for already built in, and looked like a remarkably clean compile - well written. Until....
telnet.c: In function `int telopt_unknown(DESCRIPTOR_DATA*, unsigned char,
unsigned char, bool)':
telnet.c:212: warning: comparison is always true due to limited range of data
type
telnet.c:225: warning: comparison is always true due to limited range of data
type
telnet.c:232: warning: comparison is always true due to limited range of data
type
make: *** [telnet.o] Error 1
bash-3.00$
Here's the segment in question
/* telopt_unknown handles all the negotiation commands that the mud server
doesn't understand
*/
int telopt_unknown(DESCRIPTOR_DATA * d, unsigned char c, unsigned char t,
bool quiet)
{
char buf[MAX_STRING_LENGTH];
char cmd[MAX_INPUT_LENGTH];
char opt[MAX_INPUT_LENGTH];
char rev;
char len = 1;
if (c == '\n' || c == '\r' || c == '\0')
return 0;
/*line 212 is next line*/
if (TELCMD_OK(c))
{
sprintf(cmd, "%s", TELCMD(c));
if (c == IAC)
len = 1; /* IAC IAC */
else if (c >= SB)
len = 2; /* IAC DONT/DO/WONT/WILL/SB ?? */
else
len = 1; /* IAC ?? */
}
if (!quiet)
{
/*line 225 is next line*/
if (TELCMD_OK(c))
sprintf(cmd, "%s", TELCMD(c));
else
sprintf(cmd, "[%u]", c);
if (TELOPT_OK(t))
sprintf(opt, "%s", TELOPT(t));
/*line 232*/ else if (TELCMD_OK(t))
sprintf(opt, "%s", TELCMD(t));
else if (t == 85)
sprintf(opt, "COMPRESS-1");
else if (t == 86)
sprintf(opt, "COMPRESS-2");
else
sprintf(opt, "[%u]", t);
switch ((unsigned char) c)
{
case WILL:
rev = WONT;
break;
case WONT:
rev = DONT;
break;
case DONT:
rev = WONT;
break;
case DO:
rev = DONT;
break;
default:
rev = c;
break;
}
sprintf(buf, "%c%c%c", IAC, rev, t);
write_to_descriptor(d, buf, 0);
}
return len;
}
Could you paste a copy of the TELCMD_OK macro?
Where would I find that macro?
probably in on of the .h files included in the code, couldn't tell you. try grepping it in *.h files.
http://sourceforge.net/projects/firstmud latest version is 4.5.4 and should compile clean out of the box, well it does on my puter.