Re: killing same mobs EXP gain limitation

From: Rasdan (rasdan@PEAK.ORG)
Date: 08/26/97


> >
> > > If you just keep an array with mobs and number_of_kills per each mob,
> > > playerbase will become ~10 kb larger per each player. :(
> >
Or you could just set it up so that it compares relative levels between
the mob and the character, something like this:

float xp_level_change[] =
  { 1.5, 1.4, 1.3, 1.2, 1.1, 1.0, 0.9, 0.8, 0.7, 0.6, 0.5 };

Then just before the gain_exp call in fight.c (damage I believe), just do
this:
  if ((GET_LEVEL(vict) - GET_LEVEL(ch)) > 10)
    xp_diff = 0;
  /* Do this 10 more times to figure out level difference */

  then do exp = xp_diff * gain;

  gain_exp(ch, exp);

Keep in mind you may need to add these variables to damage, As I'm not
sure what the exact variables in use in stock circle are, I use all
these vars.

Rasdan


=--=--=--=--=--=--=--=--=--=--=
  I have done so much,
  with so little,                         James C. Thomas Jr.
  for so long,                                 Rasdan
  That I can do anything                Head Coder of Finality!
  with nothing.
=--=--=--=--=--=--=--=--=--=--=
Finality is based upon CircleMUD 3.0, check us out:
                   finality.mudservices.com 5555


     +------------------------------------------------------------+
     | 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/08/00 PST