ID:273845
 
Can someone teach me how one would approach in creating a leveling formula for an RPG Game which will enable decent and stable leveling?
Soo, any help guys?Bump*
A parabolic or exponential function would work, depending on the curve you want you'll have to make the equation yourself :P
In response to KingCold999
So a graph can tell us how we can want the leveling to go?
In response to Gr1m d4 r34p3r
Yup, as you're basically looking for a function which takes 'level' (an integer) and yields the amount of experience required for getting to it. So, if you don't have any specific values in mind, you can think of how the experience increase will 'look'. For example, maybe it starts slightly slow, increasing dramatically in the mid-level range, and then becomes relatively stable near the end-game (for impatient players who want the high-level content fast?). In any case, finding a good formula is simply a matter of understanding the content distribution of your game.
In response to Toadfish
Hmm,I sort of understand, the only thing is though, I'm still in Geometry level for school. Don't we need to understand Algebra II(Algebra) in order to be able to visualize graphs?
In response to Gr1m d4 r34p3r
Simple algebra is really quite easy. A lot of games use a very basic formula, something like:

y = x + x*z

y = the players level

x = the current xp to get your next level

z = the modifier, how much you want the experience to go up by.


Heres an example:

The player is lvl 1, and requires 100 experience to get to level 2. They now have 100 experience, you level them up and do all the nifty stuff that they like to see when advancing in a game.

Now that the player is level 2, say you want the player to get another 150 xp to hit lvl 3, so they need a total of 250 xp.

The new XP ammount = The old plus (the old * 1.5)

XP ammount = 250

And for the third level, do it again, we get 375(that's adding half the previous total to the new total)


It's algebra, but it's not hard at all. Here's an example in DM

var/XP = 100

proc/levelUP()
var/OldXP = XP
var/NewXP = OldXP +(OldXP*1.5)
XP = NewXP


There are many different ways you could go about doing it, but I hope this helps.


Also, you can always change the modifier at different points through your leveling cycle. Say you want the player to progress faster through levels until 20, so we use 1.5, then 21-40 you want a bit slower, we up the modifier to 2, then you want. Then when the player is approching the last leg of the game, you want him to level up a lot slower, you could change the modifier up to 3.


This is all up to you, but thats a pretty simple way without making huge lists of checks to see what level a player should be.
In response to Jotdaniel
Ohhh I see. Really simple huh. Alright thanks. I understand. Thank youuu!
In response to Gr1m d4 r34p3r
I did bad math. You wouldn't get 275 for the third level, you would get 250 plus 275, 525.