> Greetings,
> The gods on my mud have been mulling over the hack/slash concept and
> trying our bests to make the mud still just as fun, but far less
> hack/slash. An idea I came up with and am about to commit myself to would
> be lessening experience given by mobs each time a character kills that
> mob. Not only does this make _sense_, but it would fix our problem.
> My current code design is to create a plr_mob directory, under lib, that
> will keep a track of mobs that the player has killed and the number. Each
> time a mob is killed and gain_exp() is called, it will do various lookups
> from the file, similiar to objects.
You might want to double check, i know that this was a hot
discussion item about a year and say 8 months ago. There's quite a few
muds that actually have this implemented, limiting at around 100 mobs
types that it remembere at one time ...(counting..)...
wouldn't put it in a file and read each time.. just make an array
of say 100 maybe, based on your max vnum, but array of structs like:
struct this_struct {
int vnum; /* mob vnum */
int numtime; /* number of times it was killed */
struct this_struct *next;
}
and just hash to an appropiate array upon checkup, throw
your collisions at the end, and write another function to go through and
clear out anything that is _x_ levels below the current player (or per
level, or something.. you're not going to care if he killed 3 million
fidos at level 290..)
Easy, and throw it in player specials saved (requiring a pfile
conversion or wipe...less you've got ascii *yay ascii*)
PjD
+------------------------------------------------------------+
| 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