计算需要增加的金额,以获得特定上限之间的目标值



我正在尝试创建一种可以使用的方法,该方法可以计算出我的游戏机会。

例如: 当玩家达到25级时,某个东西就会解锁,一旦他们达到225级(这个技能的最高等级(,我需要它来说明事件发生的几率为25%。

我需要一种方法,这样我就可以插入所需的级别、最大级别、当前级别和最大机会,并计算他们当前的技能,这需要是一个常数变量,但变量本身在 25 级,然后在 25 级等于 225%

我试过使用

maxChance * (currentLevel - requiredLevel) / maxLevel - requiredLevel

但是这种方法给了25%的机会在224级,而它应该在225。

我认为由于变量是 200 个数字,它可以提供一个很好的用户友好值,但它似乎停在 224。

注意:我使用百分比作为小数,因此 .25 = 25%。此外,我的解释可能看起来很复杂,因为我自己很困惑,如果需要,我可以尝试更好地解释这一点。

请注意,您有 201(不仅仅是 200(个数字:在 25 级,机会从 0 增加到 X。然后在随后的 200 个级别中的每一个级别,它再次递增 X。所以你需要

X * 201 = maxChance

或者,使用requiredLevelmaxLevel

X * (1 + maxLevel - requiredLevel) = maxChance

因此

X = maxChance / (1 + maxLevel - requiredLevel)

那么对于currentLevel来说,机会是

chance = max(currentLevel + 1 - requiredLevel, 0) * maxChance / (1 + maxLevel - requiredLevel)
= max(currentLevel + 1 - 25, 0) * 0.25 / 201

最新更新