经常使用什么分数/级别功能?


9

在许多游戏中,达到特定分数后就会提高水平,而比起初更难达到更高的水平。

我怀疑这是例如《魔兽世界》中使用的某种指数函数。

有人知道为此目的有一个好的指数函数吗?



Answers:


11

没有标准,实际上也没有任何理由。人们似乎喜欢指数级增长,因为它使他们感到自己越来越强大,每次面临的挑战都成比例地增加,但实际上,只有当您收集积分的方式也没有按比例改变时,这才是正确的。如果每次胜利的经历与每次经历的增长率相同,那么上升的意义就很小了-它们都可以保持不变。

此外,这意味着您不能在不知道如何增加经验的情况下选择功能来实现您的体验曲线。那是基于您想要的体验类型的游戏设计决策,而不是我们可以为您提供的决策。

不过,要回答您的问题:您在其他地方看到的函数类型就是这样,它是一个带有比例因子的平凡多项式:

threshold_for_next_level = x * current_level y

典型值可能是x = 1000,y = 1.5。例如:

level 1 = 1000
level 2 = 2828
level 3 = 5196
...
level 10 = 31623
etc.

如果希望斜率更陡,则增加y。如果您希望数字更大,则增加x。

您可能需要舍入数字,在这种情况下,只要将最终结果四舍五入为2或3个有效数字,或者最接近的千位数即可。

请记住,这些值孤立地没有意义。如果从15级到16级需要15000点经验,则必须确保游戏设计使其对于15级角色在常规游戏中可以累积15000点经验值是切实可行的。在测试后仅调整曲线是没有意义的,因为这通常太耗时-您必须以与您的游戏给出的奖项相匹配的曲线开始,以适合您的预期设计的方式进行。


4

Moria / Angband(及其所有衍生产品(包括-值得一提的-Diablo))的系统基础是将怪物等级与玩家等级相匹配,以查看您的收入,并且每等级的XP要求会不断提高。

在《暗黑破坏神》中,您可以杀死的怪物数量达到最佳水平,在正面和负面的5个等级之内。看起来像这样(如果不正确,抱歉,暗黑破坏神粉丝):

XP Gain = monsterBaseXP * (5-|(characterLevel-monsterLevel)|) / 5
(where result cannot drop below 0)

角色级别16的示例:怪物A的等级:16.获得100%怪物基础XP。怪物B的等级:13。获得怪物基础XP的40%。怪物C的等级:20。获得怪物基础XP的20%。怪物D的等级:23。获得怪物基础经验值的0%。

Angband(我更喜欢的模型)中,它是这样的:

XP Gain = monsterBaseXP * monsterLevel / characterLevel.

因此,如果您在5级时杀死了50级怪物,那么获得的XP是10级角色杀死同一只怪物的经验值的10倍。我喜欢这个,它是高风险,高回报的。我为此失去了成千上万个Angband角色。但是成功的人是传奇人物。我想我曾经从1级立即达到29级;)同样,杀死50级角色的50级角色获得的经验值是杀死1级角色时获得的XP的1/10。此外,由于基本XP也会上升,这意味着杀死低级怪兽仍然可以为您带来一定的回报,但是下降得太远,变得毫无意义。

在这两款游戏中,他们在所需的XP上额外使用乘数(以递增的比例),但是,此数值与给定的最佳怪物XP的比率确实会逐渐变陡。

这种想法最简单的形式是执行以下操作。确定多少个与您同等等级的怪物,您必须杀死每个等级才能等级(忽略任务奖励等)。假设100-与您的水平无关。假设玩家杀死与自己同等等级的怪物,她将获得1XP。

使用类似Angband的公式根据怪物的等级奖励增加和减少,您的水平表是线性的:

1: 100xp
2: 200xp
3: 300xp

...等等。我发现这是最简单的出发点-进行适当的调整,包括让您心满意足的怪物基础经验值,关卡截止点等。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.