> >
> > > 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