试图找到(猜测)游戏公式



您好,我正在尝试查找某个系统(游戏(的公式,并希望获得一些帮助。

我会尽量不过多地进入游戏的背景,但有时有必要更好地了解情况。

这是一个有点长的文本,但请耐心等待! 这个游戏已经存在了12年,从来没有人试图破译它(或者至少公布了结果(

我敢肯定游戏大部分是在C++完成的,如果有帮助的话......

事实:

1(它是未知顺序的百分比和平面值的混合

2(我不知道实际的基值是多少,很可能存在其他无形的奖金

3(找到所有的奖金是无关紧要的,只找到一个供公众使用的工作算法

4(我可以收集无限量的示例方程

5(我有10个装备槽+1个武器槽,每件装备可以有一定的%加成,武器可以有一定的平价加成


现在我假设一般公式是

(baseValue + flatBonuses)*(sumOfAllPercentageBonuses/100 + 1) =finalTotal

公式示例:

在这里遇到的主要问题是,当我删除所有装备+武器时,似乎我看到的数字实际上并不是基本值,因此为什么:

2170 是我可以看到移除所有设备的最低值

(2170)*(1.22) = 2543 is false

但我认为可以安全地假设 2170 接近实际基本伤害,因为它比上述 22% 增加了 17%

该武器很可能对其平坦值有一个修饰符:

309 这是武器平伤害

 2170 + 309*weaponModifier = 2685

另一种武器:

2170 + 34*weaponModifier = 2226

考虑到 2170 应该接近实际基础伤害,而使用 2170 的武器修改器给出大约 1.6 左右,我们可以假设武器修改器是 1.6,误差幅度低。

并且百分比可能实际上没有求和:

再次,从2170年开始:

  • 用 1 台设备给 22% 我达到 2543 最终价值
  • 与 2 台设备各占 22%,我实现了 2993 的最终价值

应用一般假设公式直观地实现的最高值:

设备:

  • 4x22%

  • 1x19%

  • 1x159%

  • 1x105%

总计 379%

  • 1x494(武器(

    (实际基础巴鲁 + 其他平底加成 + 494*武器修正器(*(4.79( = 12,908

我不要求任何人为我做艰苦的工作,但我不是数学家。我已经尝试了 2 个小时,没有任何结果,如果有人有任何想法,我将不胜感激!感谢您的阅读。

如果有人对其他信息或屏幕截图感兴趣,请询问。

可以提出几个假设。假设您有两种奖金,平价和百分比,因此分别是加法奖金和乘法奖金。让b作为基值,a加法加成,m乘法 - 以你定义的方式,因此需要乘以(m+1)

  • 法加成可以在乘法之前应用,正如您所期望的那样(a+b) * (m+1)
  • 相反的b*(m+1) + a
  • 两者(例如之前的力量加成,之后的伤害加成((a+b) * (m+1) + a'
  • 可以添加几个乘法加成b * (1+m+m')
  • 几个乘法加成可以成倍: b * (1+m) * (1+m')

棘手的部分是有许多参数,上述任何组合都可能是有效的。即使或者你的技能如你所说"达到极限"(因此在整个实验中保持不变(,它们仍然可能通过修改或思考值来发挥作用,比如p思考因子,b * (1+pm)b * p(1+m)

我的建议如下:

  • 对于每种设备,请尝试找出它是乘法或累加的。
    • 尝试找到没有特殊物品的装备(没有"附魔"的额外奖励或其他东西(。让我们v注意每个实验的价值。
    • 您至少需要 2 件设备,这些设备与您获得的装备相似,x具有不同的值。实验越多,你必须弄清楚以下哪个定律是常数(或线性x,如果你不除以它*(。
      • 如果这件设备的加成是累加的,那么(v - b) / x是恒定的。
      • 如果这件装备的加成是乘法的,那么v / (b * (1+x))是恒定的。
      • 如果这件装备的加成是在将 1 加到 m 之前进行思考,那么(v / b - 1) / x是恒定的。
  • 现在你对每种不同的设备都有一个法律,试着把它们混合起来。让我们b v1v2不同设备的基值(分别(并v注意新实验的值。
    • 如果奖金加起来,v = b + (v1 - b) + (v2 - b)(这适用于两个加法定律,或在乘法定律之后应用的加法定律(
    • 如果奖金乘以,则v1 / b = v2 / v1,例如 2543/2170 ~= 2993/2543 ~= 1.17(这适用于两个乘法定律,或在加法定律之后应用的乘法定律(

等等。基本上,尝试探索组合获得值的可能性空间,看看它意味着什么(即尝试预测值(,然后进行实验,直到得到正确的模型。请记住,一旦您有几个项目,奖金的应用顺序就很重要。只要您一次添加一个项目,您应该没问题。


*不要忘记您的输出值是整数,因此公式输出的四舍五入值。我建议每次都尽可能多地绘制,并尝试绘制每条曲线(v-b) = f(x)v/b = f( (1+x) )(v/b - 1) = f(x),并查看 - 或拟合模型 - 看看哪个是线性的。如果有某种思考,那就是这条线的斜率。

相关内容

  • 没有找到相关文章

最新更新