Level tabel exponentiële groei

Wiskunde is niet alleen een vak op school. Kom je ergens in de praktijk (bijvoorbeeld tijdens je werk) een wiskundig probleem tegen dan kun je hier om hulp vragen.
Plaats reactie
ZeroSorry
Nieuw lid
Nieuw lid
Berichten: 1
Lid geworden op: 25 jan 2014, 19:19

Level tabel exponentiële groei

Bericht door ZeroSorry » 25 jan 2014, 19:27

Hallo allemaal,

Ik ben samen met een vriend bezig om een private server van een spel op te zetten. Nu willen we deze high rate maken wat wil zeggen dat je sneller dan in de normale server leveled. Het aantal experience dat je nodig hebt om een level up te gaan willen we hetzelfde behouden als in de officiële server.

Maar we willen graag het experience dat je ontvangt van een monster te verslaan verhogen. Het aantal experience dat je ontvangt van een monster ligt aan het level dat het monster is.

Voorbeeld:

Een monster van level 20 geeft 35 experience points.
Een monster van level 45 geeft 320 epxperience points.

Zo te zien is dit een exponentiële groei. We zaten zelf te denken aan een formule zoals:



B is normaal gesproken de startwaarde van de grafiek. Het laagst mogelijke level monster is level 3 en geeft 5 experience points.

Daarom dacht ik aan deze formule:



Dit schijnt toch niet helemaal te kloppen of wel?

Hebben jullie misschien suggesties en/of oplossingen? We zijn best wel gedreven om dit snel af te krijgen dus alle hulp is welkom!

Met vriendelijke groeten,

ZeroSorry (Jesse)

arie
Moderator
Moderator
Berichten: 3917
Lid geworden op: 09 mei 2008, 09:19

Re: Level tabel exponentiële groei

Bericht door arie » 25 jan 2014, 21:24

Stel je functie:

waarbij
p(l) = je punten (= experience points) afhankelijk van level l
l = level
b, g, c: constanten die we willen bepalen

Je hebt 3 combinaties van p(l) en l gegeven:
l = 3 => p(3) = 5
l = 20 => p(20) = 35
l = 45 => p(45) = 320

Vul deze waarden in in je vergelijking en los de constanten op.
Ik kom dan uit op:
b = 7.2925289548746;
g = 1.0879939690572;
c = -4.391990100683;
ofwel:
P(L) = 7.2925289548746 * 1.0879939690572^L - 4.391990100683;

Noot:
Het nadeel van zo'n functie is dat alle andere waarden voor p afhankelijk van l vastliggen.
Als het aantal levels niet te groot is, kan je de p-waarden per level ook in een array (=tabel) coderen. Per level kan je dan de gewenste p-waarde zelf bepalen.

Plaats reactie