Many probs.

Posted by Edasich on Wed 22 Dec 2004 07:37 AM — 17 posts, 71,707 views.

#0
Okay, first, im not used to smaug, i've only coded Lp and a few custom. And it was awhile ago so i forgot basic coding commands, like how to access files from within the game. So could someone give me the basics really quick? Plus heres a few things i need help with
1:How can i make it so their are infinite number of levels, imms dont have a set level they are just giving builder/immortal tags. and the privlages.

2.How can I change stat maxes

3.anyway to implement multiclassing?

4.I have my comp set up as a server, but when i give my friend ip/port/name ect. it wont let him join? anyone got an idea as to why?

Thx for the help. I'll probly be posting alot more :D
#1
Hehe, forgot some stuff

Also want to know how to get rid of bludgeion/short blades/ that sort of stuff, and instead add skills like sword/hand to hand/ mace/axe/dagger and such.

uhm..i think thats all. thx again :)
#2
Quote:

1:How can i make it so their are infinite number of levels, imms dont have a set level they are just giving builder/immortal tags. and the privlages.

2.How can I change stat maxes

3.anyway to implement multiclassing?


1- Yes, but this is a bit more tricky because "immortality" is determined by Max_Level - 15, with Max_level being the highest immortal. I can explain more on this later. (late for work)

2- Yes, definately. Grep around for max_stats.

3- Visit Samson's site, he has a nice multiclassing snippet on there that will give you a good way to go.

"Also want to know how to get rid of bludgeion/short blades/ that sort of stuff, and instead add skills like sword/hand to hand/ mace/axe/dagger and such. "

Look at const.c for that.

sorry I couldnt be more percise, late already!
Canada #3
There is am inheirent problem with creating an infiniate level smaug, in that the levels are ingrained in the mud everywhere, it would be very, very difficult to do. As for having imms ignore levels and use jobs to assign commands, what I did was add a field for flags, and have each command with the same flags. If the immortal has any of the flags on the command, they have access to the command.

As for people not connecting, do you have this through a router?
Amended on Wed 22 Dec 2004 04:39 PM by Greven
#4
Ya, its running through a cable connection router
thx for all the help so far too
Canada #5
Make sure that in your router settings, you have forwarded the connecting port to the server computer. Also make sure that you permit that port through on any firewalls your running, and make sure your using your external(the routers) IP, no your LAN IP.
Australia Forum Administrator #6
Have a search of this forum before posting lots of questions. A lot are already answered, so that saves you time, the answer is there already. For example, the "can't connect" problem comes up quite frequently. Try searching for "router" or "firewall".

As for infinite levels, you could probably quite easily add an "imm flag" rather than testing a level number.
#7
Okay, does Smaug run only on the Cygwin when it comes to coding, or does it code like an LP and do self compiling?
Canada #8
Smaug is not self compiling, no, you have to compile it after every change you make. Nick has a great guide to that available on this site.
USA #9
How would a MUD go about "compiling itself"? Unless you mean that it's fully scripted?

To answer your other question, SMAUG runs on nearly any Unix-based environment (as far as I know) and there are a few Win32 ports. In fact, I believe the stock SMAUG 1.4 comes with some Windows-port stuff in it. I also think Nick's version here has a Win32 port.
#10
Okay,i figured out most of the coding, but i cant find the src file. where can i get it?
USA #11
You figured out the coding without the source files...?
#12
When i said i figured it out i mean now i know how to code, before i was confused on that part, now i got that down, but what i need is the src folder, becasue apparently the smaug d/l i got dident have it. where can i get it?
Australia Forum Administrator #13
Try http://www.gammon.com.au/downloads/dlsmaug.htm as a starting point.
Australia Forum Administrator #14
Quote:

How would a MUD go about "compiling itself"? Unless you mean that it's fully scripted?


According to the first web page I found when Googling LPMUD:

Quote:

LPmuds are basically just an interpreter with a small runtime environment in it. The runtime environment takes care of some things like file access and network communications, and that is about it. All other aspects of the game are programmed in the interpreted language LPC (in real usually byte-compiled).


However I was under the impression the MUD did actually call the C compiler to compile itself on-the-fly. Maybe it does both.
USA #15
Quote:
According to the first web page I found when Googling LPMUD:
Huh... should've known better than to google for 'lpmud self-compiling'. :-)
Quote:
However I was under the impression the MUD did actually call the C compiler to compile itself on-the-fly. Maybe it does both.
Is this actually workable? I suppose you could do it using techniques similar to copyover, but it would still require a restart of sorts - as I understand it from that webpage you cited, LPMud prides itself on not requiring interruptions like that. Given that excerpt, it seems to be scripted and re-bytecoded after modification.

Besides, I wouldn't call that 'self-compiling', because it is not after all doing the compiling. :-) (that is the nit-pickiness in me coming out)
Australia Forum Administrator #16
I haven't tried it myself, but I imagine it would be possible to compile a subset (like some commands) and put them into a library. Then you could reload the library. Since the server presumably would wait until the library wasn't in use (by itself) that could work pretty well.

As for self-compiling, I agree you could argue it isn't a compiler, but if it causes itself to be compiled, rather than having a programming type "make" then you could argue that it self-compiled.