我正在开发一个游戏,我不想要一个满级的数组,这些数据最有可能在迭代它们以查找用户级别时增加页面负载.我需要一个算法来独立完成这项工作,只需要用户的体验.这是因为我希望最大级别大约为1,000,并且需要花费一些时间才能完成的数组.
在一些帮助下,我为每个级别之间的差异提出了以下算法:
difference = difference + (difference / 7)
Run Code Online (Sandbox Code Playgroud)
并且它在较低级别上运行良好,但是这个图表是级别1-141,正如您所看到的,它非常容易直到大约一半,然后它开始拍摄并继续拍摄,直到它到达积分1,500,000,000经验是250级,这还不够好.

所以,我的问题是,您认为在每个级别之间做出差异的更好方法是什么?欢迎任何建议,我将测试所有算法.
谢谢.
首先,是线性系统。
Level = Experience / 1000
Run Code Online (Sandbox Code Playgroud)
每1,000个经验相当于一个级别。要使升级速度变慢,您需要降低获得经验的速度。这具有使超级轻松的活动在以后成为零体验的额外好处,因此您无法通过杀死老鼠来使其成为史诗级游戏。
然后有各种递减收益曲线。例如:
Level = (Experience/1000)^(1/scale)
Run Code Online (Sandbox Code Playgroud)
对于等级1,比例为2(sqrt曲线),则需要1,000个经验。对于两个,您需要四千。三,九千。每个级别变得越来越难。如果缩小比例,难度增加的速度会降低(坡度变陡)。
我建议自己构建函数,而不是构建一阶导数(就像您尝试做的那样)。在集成之前,这将使您对图形有更好的了解。