• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • ✅ The POLL for Hive's Texturing Contest #33 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!

Hero Experience Table is Bugged?

Level 8
Joined
Jun 13, 2010
Messages
344
I am messing around with making a custom experience table.

Level 2 requires 1000 experience
Level 3 requires 2000 experience (3000 in total)
Level 4 requires 3000 experience (6000 in total)
Etc...

When I follow the formula:
Experience required = "Previous value" * "Previous value factor" + "Level" * "Level factor" + "Constant factor"

I fill these out:
Experience required = 1000 x 1 + 2 x 1000 + 0
Experience required = 1000 + 2000
Experience required = 3000


So to become level 2, it requires 1000 xp, but to become level 3 it requires 3000, not 2000 xp.

Obviously because the Hero is level 2 and multiplies with the level factor 2 of 1000 = 2000 (and plus 1000 gives 3000 in total).

So the experience required for levels look like this:
Level 1: 1000
Level 2: 3000
Level 3: 4000
Level 4: 5000
Etc...

Now the weird part begins: If i change the level factor from 1000 to 500, it looks like this

Experience Required = 1000 x 1 + 2 x 500 + 0
Experience Required = 1000 + 1000
Experience Required = 2000


BUT my Hero, which is level 2 in game requires 1500 xp now and not 2000.

So the experience required now looks like this:
Level 1: 1000
Level 2: 1500 <--- Shouldn't it be 2000? (and for level 3 2500, level 4 3000)
Level 3: 2000
Level 4: 2500
Etc...

So now it only requires 500 more per level and not the level x 500 per level.

Also when i put the default experience in:

Experience required = 200 x 1 + 2 x 100 + 0
Experience required = 200 + 200
Experience required = 400


BUT the Hero in game at level 2 requires 300 exp to level up to level 3, not 400.

The following levels from 3 to 4 etc follows the Experience table with no problems.

Only from level 2 to 3 does this. What is going on? Am I missing something?

I thought I could fix it by just adding the constant:
Experience required = 1000 x 1 + 2 x 0 + 1000
Experience required = 1000 + 1000
Experience required = 2000


Nope, now I need 1000 for each level, not a rising extra 1000 per level.

I also started to just mess around putting in random values:
Experience required = 1000 x 1 + 2 x 100 + 0
Experience required = 1000 + 200
Experience required = 1200


No, experience to reach from level 2 to 3 is not 1200, it is 300. What.
 
Last edited:
Level 26
Joined
Sep 26, 2009
Messages
2,439
I didn't check all your calculations, I just checked the first two (level factor 1000 and 500) and saw the error you make.
The 'level' variable is not current level, but next/target level.

Constants:
  • Constant factor: 0
  • Level factor: 1000
  • Prev. Value Factor: 1
  • Table: 1000
Formula: required_xp = prev_val * prev_val_factor + level * level_factor + const_factor
XP required for:
  • level 2: 1000 (from table)
  • level 3: 1000 * 1 + 3 * 1000 + 0 = 1000 + 3000 + 0 = 4000
  • level 4: 4000 * 1 + 4 * 1000 + 0 = 4000 + 4000 + 0 = 8000
  • level 5: 8000 * 1 + 5 * 1000 + 0 = 8000 + 5000 + 0 = 13000
You may notice that with this formula the level factor 500 will also work out.
 
Level 8
Joined
Jun 13, 2010
Messages
344
I didn't check all your calculations, I just checked the first two (level factor 1000 and 500) and saw the error you make.
Oh I see I made a mistype by saying required experience for level 1. What I mean is required experience for advancing FROM level 1 onto the next level and same for the other levels.

So the experience required for levels look like this:
Level 1: 1000
Level 2: 3000
Level 3: 4000
Level 4: 5000
Etc...
Instead like this:
Level 1 ---> 2: 1000
Level 2 ---> 3: 3000
Level 3 ---> 4: 4000

Why is there a gap of an additional 1000 xp required from level 2 to 3?
 
Level 26
Joined
Sep 26, 2009
Messages
2,439
To get from level 2 to level 3 the hero must acquire 3000 exp because 3 * 1000 is 3000.
The total exp required to get from level 1 to level 3 is 4000, because total required exp to get to level 2 was 1000 + the calculated 3000 for level 3 sum up to 4000.
 
Top