Jump to content
  • Advertisement
Sign in to follow this  

leveling system math

This topic is 3717 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

working on a leveling system and basically this is what i want: a max of level 100 experience should be at around 1 million points when they reach max level (subject to change) if a player attacks a character at the exact same level, it should take about 10 victories to level up. experience points earned from battles will always be static (if a wild boar give 10 exp at level 5, it will also give 10 exp at level 50, 75, 100, etc) instead the amount of experience required to level up should increase at a pretty standard pace. at this point i'm just trying different formulas and plugging in numbers by trial and error. i would love to get any advice on formulas that could help. would appreciate any help i can get. thanks.

Share this post


Link to post
Share on other sites
Advertisement
You're probably going to need to add some additional constraints on your system. With your current conditions, you can use a system with 10,000 xp per level and every single enemy in the game giving 1000 xp.

Share this post


Link to post
Share on other sites
not every character will give the same amount of experience. the 10 victories rule is just a starting point. so if i'm at level 40 and i attack a character at level 40 also, it would be about 10 times of doing that before leveling up. if i attack someone at a lower level, it would be more, and fewer if attacking a character at a higher level. i don't know if i'm explaining that right.

since i've posted, i realized that 100 cubed is 1 million. so i'm playing around with the numbers where the total experience required to level up is whatever level they're at cubed: level two would be 8 experience, 10 would be 1000, 47 would be 103,823.

right now i'm experimenting with that and taking the difference in required experience, dividing it by 10 and plotting it on a graph. hopefully i can come up with some formula with that data but if there is an easier way to do it, i'm all ears.

Share this post


Link to post
Share on other sites
If you drop the requirement that the end point be a specific xp total, then you can just adjust the steepness of the curve to be whatever you want. You've decided that at level n you need to kill x (in this case 10) level n enemies to reach level n+1. So how many level n-1 enemies do you want to kill? Let's say you want to kill y level n-1 enemies to level. Then the total xp needed for to gain a level at level n is:

xp(n) = xp(n-1) * y / x

You can adjust the y / x ratio to determine the steepness of the curve, this should be somewhat related to how difficult a level n enemy is relative to a level n - 1 enemy is or people will go for enemies either above or below n (depending on if the curve is too steep or too shallow).

Here is an example curve where y / x = 2.0 (you need to kill twice as many level n-1 enemies vs level n enemies to level).

Level xp to level xp per enemy
1 100 10
2 200 20
3 400 40
4 800 80
5 1600 160
6 3200 320
7 6400 640
8 12800 1280
...


You could also make the curve non-linear, where the ratio y / x changes as you go up in levels. Again, you want to map this to the progression curve of the difficulty. One way to do this is to look at the time it takes to kill enemies of level n and level n-1, the ratio of the time should be similar to the xp ratio. Chance of death multiplied by the death penalty (in time lost due to death) should also be factored in.

Note that if a kill is always worth the same amount of xp, you can't create a "sweet spot" in the middle. The best you can do is smooth the difficulty/reward relationship so that all spots are equal (killing level n-1 enemies and killing level n enemies are equally good choices for the player). If you don't get the balance right then players will gravitate to optimum points, which will tend to be fixed.


Share this post


Link to post
Share on other sites
that definitely gives me a few angles to think about. cool!

for n-1 i think i'd prlly want it to be like 20% more, not twice as many. so i might try x/y = 0.2 if i'm understanding correctly.

for the most part, i would rather the scale be based on a curve than a straight line. prlly will just bust out the ol' TI graphing calculator and try a few different things.

thanks so much for the input.

Share this post


Link to post
Share on other sites
Quote:
Original post by jjkiesch
for n-1 i think i'd prlly want it to be like 20% more, not twice as many. so i might try x/y = 0.2 if i'm understanding correctly.


Actually x/y = 0.2 would require 5x more level n-1 enemies than level n enemies. You would actually want y/x = 1.20 or about x/y = 0.8.

I agree that 2x per level is probably too high, I just chose it as an example to be easy to understand. You want to look at how much more difficult to kill an enemy is compared to an enemy of the previous level. If you can come up with a numeric way to represent their relative challenge, then you can drive the xp curve from that.

You don't even need to make the curve continuous. For example, lets say every five levels (just as an example) players and monsters get a new ability which makes them more powerful. Then every time that happens, you would want the xp / monster to go up by a larger amount to reflect the added challenge.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!