7

【数值框架】战斗公式:伤害公式选择

 3 years ago
source link: https://gameinstitute.qq.com/community/detail/133439
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【数值框架】战斗公式:伤害公式选择

发表于2020-06-22
评论1 3.8k浏览

想免费获取内部独家PPT资料库?观看行业大牛直播?点击加入腾讯游戏学院游戏策划行业精英群

361498939

还是之前一贯的风格,一次只讲一件事,讲明白了也好啊,这次就说伤害公式的选择。

伤害公式的选择

【减法公式】伤害=攻击[攻]-防御[守]

【乘法公式】伤害=攻击[攻]×(1-免伤[守])   

关于减法公式的优点只需要记住一点,这也是唯一的优点——理解成本低

别看只有这一个优点,却至关重要,理解成本的高低直接决定了属性策略门槛的高低。

在伤害公式的选择上,我个人会优先考虑减法公式,只有在数值环境较为复杂的情况下才会使用乘法公式。

我将伤害公式的应用环境分为了3类:1.明确减法环境 2.明确乘法环境 3.灵活选择环境

一、明确减法环境

在以下游戏类型中,直接选用减法公式即可:

1.游戏策略对属性计算要求比较高的游戏类型,明确使用减法公式。

  • 以战棋、集换式卡牌类为主:这类游戏对属性计算要求比较高,所以降低计算成本是重中之重。

【举例1】战棋:火焰纹章

  • 亚洲人的数学水平虽然比较高,但是为了迎合欧美市场尽量让数值小一些
  • 为简化计算甚至增加了数值变化的显示
XlNBKFTJUa34xYzX1UIK.png

【举例2】集换式卡牌:游戏王

  • 这类游戏需要为移植桌游做准备,甚至是从桌游移植过来的,所以数值要小,或者尽量是整数。
ySqQOuRlKFtuqNIwQXa4.png

2.偏休闲的游戏类型,明确使用减法公式。

  • 这类用户偏休闲,玩游戏只是为了打发时间,所以能投入的注意力有限,在玩法策略层面就不要选择"算数"这种枯燥的策略了。
  • 这里要特殊说明一下,休闲类的游戏如果可以,最好连防御属性都不要有,如果必须有,也尽量使用减法公式,以减轻玩家的理解负担。

二、明确乘法环境

减法公式本身还是有一定的局限性,在以下情况中,明确不能用使用减法公式,只能使用乘法公式:

1.战斗模型存在数量差异的游戏类型

  • 以RTS、SLG为主:在这类游戏中,存在战力差异较大的战斗单位模型,如使用减法公式会出现防御收益混乱的问题。

【举例】SLG:剑与家园

CWVpnp3kOkXa0IHCRBG8.jpg
  • 战力差异较大:1个龙龟为1个编组,8个火箭炮同样组成一个编组,1个龙龟的属性是1个火箭炮的n倍。

【解释】防御收益混乱

  • 这是由于在减法公式中防御[己]的收益由攻击[敌]决定,当场上存在攻击100和1000两个单位时,防御面对这两个单位的收益是完全不一样的。
  • 鉴于有很多新人,在这里我就费一些时间,把减法公式的防御收益详细的从头推导一遍,如果已经了解的可以直接跳过这部分。

【推导】减法公式防御收益推导

1.定义函数

属性:血量(HP)、攻击(ATK)、防御(DEF)、攻击速度(AS)固定为1秒攻击1次

计算用量:有效血量(EHP)、每秒有效输出(DPS)

2.推导计算战力

  • 这里要多说一嘴,战力分为两种:1.计算战力 2.显示战力
    • 计算战力:是策划计算的时候使用的,用于衡量在标准情况下双方的胜负情况。
    • 显示战力:是显示给玩家的,主要衡量养成水平,顺便体现胜负概率,这个后面会开章节专门讲。
  • 胜利条件:击杀时间<被击杀时间
    • 击杀时间 = EHP[敌]/DPS[己]
    • 被击杀时间 = EHP[己]/DPS[敌]
    • EHP[敌]/DPS[己] < EHP[己]/DPS[敌]  →  EHP[敌]×DPS[敌] < EHP[己]×DPS[己]
    • 只要EHP[己]×DPS[己]大于敌方就会获得胜利,所以以此做为计算战力
  • 计算战力 = EHP[己]×DPS[己]
    • DPS[己] = ATK[己]
    • EHP[己] = HP[己]/(1-免伤率[己])=HP[己]/(1-DEF[己]/ATK[敌])
    • 计算战力 = (ATK[己]×HP[己])/(1-DEF[己]/ATK[敌])
  • 减法公式中,EHP是由己方的DEF和敌方的ATK共同算出来的,所以在防御一定的情况下,收益会随敌方的ATK变动而变动

【举例】假设:ATK[己]=100、HP[己]=1000、DEF[己]=50

  • 由图可知,当ATK[敌]越大时,己方的计算战力越低。
RM6Xjz7VZTo5ROZzsP9g.png

2.养成较深且对GVG平衡要求比较高的游戏类型

  • 以MMORPG为主:
    • GVG平衡:团队竞技时希望每个玩家都能发挥一定的作用,但是在减法公式下低战力玩家的价值会被进一步缩减,甚至趋近于0,原理同上
    • 职业模型:减法公式下职业模型搭建更具困难,这源于MMO游戏的深度养成,绝大多数情况下都并非标准模型战斗,就会导致模型收益混乱的问题

【举例】魔兽世界

  • 如果使用减法公式,低战力玩家极容易出现破不了高战玩家防御的情况,导致输出为0
UPkfeFcok3nq4XsORHqy.jpeg

3.对自由养成要求比较高的游戏类型

  • 自由养成过多就会破坏减法公式中的模型属性比例,导致模型被破坏。
  • 对于单机游戏来说其实还好,不存在玩家之间比较的平衡问题,但是网络游戏就要慎重考虑了。

  PS(自由养成):玩家可以选择镶嵌全身攻击宝石或者防御宝石,而不是特性位置只能镶嵌指定宝石,这类养成统称为自由养成。

【举例】王者荣耀

  • 在MOBA类游戏中玩家可以选择性出攻击装备或者防御装备,为了保证属性的收益稳定,显然乘法公式更适合这类游戏
K7WdWIZoa86t4uUyLCu5.png

三、灵活选择环境

  • 除去以上两种应用环境,剩下的情况建议优先选择减法公式,毕竟相较之下理解更为容易
  • 当然,如果自身对乘法公式更为熟悉,选择乘法也不是不可以,灵活选择即可

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK