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

Math 试图找到(猜测)游戏公式,math,game-engine,formula,linear-algebra,Math,Game Engine,Formula,Linear Algebra,您好,我正试图找到一个特定的系统(游戏)的公式,并希望得到一些帮助 我会尽量避免过多地进入游戏的背景,但有时这对于更好地理解情况是必要的 这是一个有点长的文本,但请容忍我!这个游戏已经存在了12年,没有人试图破解它(或者至少公布了结果) 我敢肯定,游戏主要是在C++中完成的,如果这有帮助的话 事实: 1) 它是未知顺序的百分比和单位值的混合 2) 我不知道实际的基本价值是多少,很可能还有其他无形的奖金存在 3) 找到所有的奖金是无关紧要的,只是找到一个工作算法供公众使用 4) 我可以收集不定数量

您好,我正试图找到一个特定的系统(游戏)的公式,并希望得到一些帮助

我会尽量避免过多地进入游戏的背景,但有时这对于更好地理解情况是必要的

这是一个有点长的文本,但请容忍我!这个游戏已经存在了12年,没有人试图破解它(或者至少公布了结果)

我敢肯定,游戏主要是在C++中完成的,如果这有帮助的话

事实:

1) 它是未知顺序的百分比和单位值的混合

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

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

4) 我可以收集不定数量的例子方程

5) 我有10个装备槽+1个武器槽,每个装备可以有一定的%加成,武器可以有一定的单位加成


现在我假设一般公式是

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

方程式示例:

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

2170是移除所有设备时我能看到的最低值

但我认为假设2170接近实际的基础伤害是安全的,因为它比所说的22%增加了17%

武器最有可能对其单位值进行修改:

309这是武器平面伤害

 2170 + 309*weaponModifier = 2685
另一个武器:

2170 + 34*weaponModifier = 2226
考虑到2170应该接近实际的基础伤害,并且使用2170的武器修改器给出大约1.6ish,我们可以假设武器修改器是1.6,误差很小

有可能这些百分比实际上并没有加起来:

同样,从2170年开始:

  • 1台设备各占22%,我获得2543个最终值
  • 两台设备各占22%,我实现了2993个最终值

应用一般假设公式目视获得的最高值:

设备:

  • 4x22%

  • 1x19%

  • 1x159%

  • 1x105%

总数379%

  • 1x494(武器)

    (实际基数+其他单位奖金+494*武器修改器)*(4.79)=12908

我不是要求任何人为我做艰苦的工作,但我不是数学家。我已经尝试了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)

我的建议如下:

  • 对于每种设备,试着找出它是乘法的还是加法的。
    • 试着找到没有附加特殊物品的装备(没有“附魔”额外奖励或其他东西)。让我们注意每个实验的值
    • 您将需要至少两件设备,尽可能地相似,具有不同的值
      x
      。实验越多,你就越需要找出以下哪条定律是常数(或者在
      x
      中是线性的,如果你不除以它*)。
      • 如果这件设备的奖金是加成的,那么
        (v-b)/x
        是常数
      • 如果这件设备的奖金是乘法的,那么
        v/(b*(1+x))
        是常数
      • 如果这件装备的奖励是在将1加到m之前进行深思熟虑,那么
        (v/b-1)/x
        是常数
  • 现在你对每一种不同的设备都有了一条法则,试着把它们混合起来。让我们注意
    b
    基本值
    v1
    v2
    不同设备的值(分别),以及
    v
    新实验的值。
    • 如果奖金加起来,
      v=b+(v1-b)+(v2-b)
      (这适用于两个加法定律,或者在乘法定律之后应用加法定律)
    • 如果奖金相乘,
      v1/b=v2/v1
      ,例如2543/2170~=2993/2543~=1.17(这适用于两个乘法定律,或在加法定律之后应用的乘法定律)
等等。基本上,尝试探索组合获得值的可能性空间,看看它意味着什么(即尝试预测值),然后进行实验,直到得到正确的模型。当你有几个项目时,记住奖金的发放顺序很重要。只要你一次添加一个项目,你就可以了


*不要忘记输出值是int,因此公式输出的值是四舍五入的。我建议每次都尽量多吃
2170 + 34*weaponModifier = 2226