Re: OLC, MOBs, and classes

From: John Evans (evansj@HI-LINE.NET)
Date: 04/08/98


On Wed, 8 Apr 1998, Brian wrote:

> After hunting through the mailing list archives and turning up nothing
> (mostly cause it's been timing out on me the past week), I thought I could
> ask here...
>
> I'm wondering if anyone has changed their code from the spec_assign format
> of assigning classes to MOBs, into a method where you can add a class to a
> MOB through OLC.

I still use special procedures, but I do NOT view a mob with a class as
being special. That, at least on my MUD, is _normal_. I added an extra
int into the .mob files and just used the existing class variable in
char_data.

This took TONS of code to make the mob classes work right.

[checks filesize]

mobact.c in BPL12: 5,743 bytes
mobact.c in my mud: 71,655 bytes

mobact.c went from being the third smallest file to the 3rd largest file.
There is also tons of code scattered around to make the mob-thieves sneak
when walking around, mob-thieves backstab (when they have a pointy
weapon) when attack instead of just hitting, and all sorts of other
goodies.

Hell... Mobs will even cure themselves when not in combat if they are
down a small percentage of HP, and will cast things like bless, armor,
sanctuary and other goodies on themselves when not fighting. Of course,
when they are fighting, they cast, kick, bash, and do all that other fun
stuff that the players get to do. Yes, their abilities even get more
powerful as they increase in level, just like players do!

Well... I'm rambling now, but I guess I just wanted to say that making
mobs more like players is lots of work, but it is well worth it!

John Evans <evansj@hi-line.net>  --  http://www.hi-line.net/~evansj/

Any sufficiently advanced technology is indistinguishable from magic.
--Arthur C. Clarke


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/15/00 PST