I would suggest you go sniffing around for the Forgotten Lands Code base.
It should contain the following files:
engine.c
engine.h
englogic.c
enginit.c
engmobs.c
engprecall.c
eng_procs.h
In this code it defines a whole system of figuring out which spell/skill a mob
should use. Including fight/peace sections, and whether or not to heal itself.
Since you had the skill to take apart mobprogs (ugh) I am assuming you can
figure out a way to imp this stuff. Start looking for the code at the mud
connector. It is a Diku -> Silly code base i think.
--Angus
P.S. if you can't find it let me know and i will just put it up on the circle
site. Great code base for ideas.
______________________________ Forward Header __________________________________
Subject: MOB classes & algorithms
Author: INTERNET:CIRCLE@POST.QUEENSU.CA at CSERVE
Date: 5/4/98 10:31 AM
When I was mortal, I got bored after few weeks of playing, because the
game was too easy, and it was easy because the mobiles were really
stupid. When I became a GrGod and a coder, I wanted to change this and
after I found the mobprogs patch, I spent a lot of time fixing all the
terrible bugs and improving it. But the mobprogs are a bit slow (
486dx33 :( ) and they have some other disadvantages, so I've decided to
implement mobclasses.
My idea is every class will have its own fight abilities ( dragon
breaths, fire spells, etc. ) and it will choose what it will do depending
on the situation ( not just switch( number() ), but "intelligent"
decision ), and maybe class_leader, which will control a group of mobiles
and will decide what to do ( mob A, heal mob B; mob C, rescue mob D;
everyone retreat, etc ), or maybe it's going to be a mob_leader flag
instead, I've not fully decided yet.
The problem I have is that this will need a lot of code ( complicated
of course, lot of if's, arrays, etc. ... anyone has a better idea ? )
and I'd like to know if someone knows where I can find similar pieces of
code. I have several code bases ( DG, SMAUG, MERC ), but only in DG
source are some interesting functions implementing "smart" mobs ( some
of them look good, but the mobiles still don't help much each other ).
Can someone tell me where I can find such functions ? Or do I have to
write it all myself ?
L.Lunak
l.lunak@sh.cvut.cz
PS: I apologize for my bad English.
+------------------------------------------------------------+
| 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