4
\$\begingroup\$

I want to make an RPG game and I would like an advice on how should I create my level-experience formula. I saw this formula http://rsdo.net/rsdonline/guides/Experience%20formula.html#PHP and I created a formula myself and I want to ask you which would be better.

    RuneScape rates                     My rates

    Level 2 - 83 xp                     Level 2 - 35
    Level 3 - 174 xp                    Level 3 - 84
    Level 4 - 276 xp                    Level 4 - 150
    Level 5 - 388 xp                    Level 5 - 238
    Level 10 - 1,154 xp                 Level 10 - 1,087
    Level 100 - 14,391,160 xp           Level 100 - 311,017

As you can see at level 100 RuneScape's xp is very big and my level 100 is equal with RuneScape's Level 61. Is it better if the xp grows very fast at one point or depends on how I make my game?

\$\endgroup\$

closed as primarily opinion-based by Nicol Bolas, Josh Jul 22 '13 at 20:54

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

9
\$\begingroup\$

You're better off trying to balance leveling as a function of time, rather than experience points, since experience points are meaningless outside the context of a particular game.

Take your example. If it takes 100 times as long to earn experience in your game, you effectively end up with 2x as long a level grind to get to level 100 compared to Runescape. This is an example of comparing apples to oranges.

Now, you seem to have a quite nice scale going on. Players usually need to level up quickly early on and then see their progress slowed down progressively.

What I would do is figure out how long you want a player to grind between every level (or perhaps group a few levels together) and tweak the XP gained in the corresponding zones of your game to match that.

So, let's say you want levels 1-10 to take 1 hour total and that killing a monster there takes an average of 1 min, the level 1-10 leveling zone of your game should have monsters that yield and average of 18 XP (1087 XP/60 minutes ~= 18 XP/minute).

At that point, it's really a question of how fast you want your game to feel at different stages. Many games have very long leveling grinds because that's where the content is and others have very fast leveling grinds because the endgame is the most important part.

\$\endgroup\$
  • \$\begingroup\$ A good point here: You often intentionally want leveling to be different speeds: At the beginning, you want to familiarize the player with how leveling works, and you want to introduce new abilities step-by-step, so you want faster leveling. You also don't want them to drop your game before they've seen its good parts. Towards the end, you can challenge players, as they know the game's systems by heart. You sometimes also want to slow them down so it takes a while before they totally run out of content. \$\endgroup\$ – uliwitness Jun 26 '16 at 18:02
0
\$\begingroup\$

The Runescape formula for exp needed to level up is:

PREVIOUS Level Xp + PREVIOUS Level Xp * 10%

There are more formulas for leveling subskills so it instead of playing with hard to understand formulas, you could always make a system that makes the process of levelling up (less exp / hour) instead of making a higher experience bar.

http://runescape.wikia.com/wiki/Combat_level

The question you must ask yourself is - How much experience per hour will the player get. In Runescape you can easily/cheaply/effortlessly get 250,000 xp/h while cooking, where leveling up the Slayer skill is far more time consuming ~~ 30,000 xp/h.

The system you choose will be best if you can match the experience gained with your system, leveling up cooking with Runescape style in your system to gain level 100 will take roughly a few hours.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.