1

我在这里从另一个问题中找到了一个公式,该公式根据他们拥有的总经验值计算成员的经验水平。接下来我需要做的是找出会员下一个级别所需的exp数量。基本上,如果会员是 5 级,那么会员需要多少总经验才能达到 6 级?

$experience = 18714;

$level = pow(($experience / 1000), (7/10));  

echo floor($level); // This would output "7"

更新

<?php

$experience = 18714;

$level = floor(pow(($experience / 1000), (7/10)));

echo 'Current Level: '.$level.'<br>';

$experience = pow($level, 10/7) * 1000;

echo 'Next Level: '.($level + 1).' ( '.$experience.' required )';

?>

上面的代码实际上会输出以下内容

Current Level: 7
Next Level: 8 ( 16116.952067582 required )

就我最初的问题而言,我认为这是不正确的……尽管它确实找到了会员当前级别所需的 exp。如果成员是 7 级并且有 18714 exp,那么 8 级需要的 exp 比 7 级少就没有多大意义。

4

1 回答 1

1

You can reverse the formula:

enter image description here

enter image description here

Therefore

function getExpLevel($level) {
    return pow($level, 10/7) * 1000;
}

To calculate experience from level 5 to level 6. You can calculate as the following.

echo getExpLevel(6) - getExpLevel(5);

To calculate reminding experience to get to next level

echo getExpLevel($level + 1) - $experience;
于 2013-08-30T01:05:00.047 回答