游戏开发论坛

 找回密码
 立即注册
搜索
查看: 24742|回复: 9

[原创] 新手数值学习心得 - 归纳,总结,疑问!

  [复制链接]

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20356
QQ
发表于 2014-11-13 14:40:36 | 显示全部楼层 |阅读模式
GameRes发布,文/艾尔菲斯,原帖与作者讨论

一、伤害判定逻辑与平均伤害

伤害判定逻辑是游戏如何确定玩家某一行为的结果的计算,举个例子,玩家操作角色攻击怪物,是出现未命中、闪避、暴击还是别的情况(具体有哪些每种游戏都不同),平均伤害则是在该逻辑模型下计算出伤害的期望值。伤害判定逻辑通常采用两种模型,瀑布概率模型与圆桌概率模型。

瀑布模型会按照优先级的顺序对每种情况进行独立判断,而圆桌概率模型则将所有情况放在一起,只进行一次判断。这两种概率算法各有各的适用范畴。瀑布概率适合各概率间相互影响较小,概率发生有先后优先级顺序的概率系统;圆桌概率适合各概率间相互影响较大,各概率间无次序或重量均等的概率系统。

下面通过一个例子对两种模型下进行平均伤害的计算,观察其中的不同。设一个角色跟怪物对战,单次攻击的结果有如下情形:攻击未命中、怪物闪避、怪物招架、命中并且出现暴击,攻击命中造成普通伤害,设攻击的未命中率 = a,闪避率 = b,招架率 = c,暴击率 = d,暴击伤害为普通攻击伤害的一倍,普通攻击伤害 = D,招架与闪避都不会造成伤害。

瀑布模型下的判定优先级为,未命中->闪避->格挡->暴击->普攻。单次攻击伤害的期望如下:

QQ20141113-1.jpg

在圆桌模型下的各种情况判定优先级相同,单次攻击伤害的期望如下:

QQ20141113-2.jpg

可以看出在不同的判定模型下,游戏的平均伤害计算结果是不同的。许多游戏在设计数值时,都会采用“生存时间”来测算角色的战斗力强弱,根据“生存时间”引申出有效生命与有效攻击两个概念。

QQ20141113-3.jpg

EHP可以表示一切防御类型的属性带来的效果集合,EDPS可以表示一切攻击类属性带来的效果集合,读过青木公的《公式是怎样炼成》文的都应该对此不陌生,在文中青木公用了如下公式:

QQ20141113-4.jpg

青木公通篇强调了采用圆桌模型作为游戏的伤害判定逻辑模型,通过有效生命与有效攻击来推导公式中的各个常数参数,但是青木公随后的文档更新中否定了这一推导:

20110831 Version 1.2 重要更新:

作者最近在整理自己现在项目(猎天)的战斗公式,彻底改用了圆桌机制来计算各种率值。
在整理的过程中,发现了文档模型思路存在一个大错误,以及极大的不完美。
错误在于,我在原文中提到,文档中的模型是圆桌模型.
这里大错特错了,文档中所调用的实际上是一个"先ROLL命中与暴击",然后ROLL"闪避招架"的模型.
这真的不是圆桌模型......我错了.作者自己也记不清为啥当时会称之为圆桌模型了......


下面我们青木公重新推导验证一下:

结合公式(1)、公式(2)、公式(3)推导如下:

QQ20141113-1.jpg

在将我们在开头举得例子采用先ROLL命中与暴击,在ROLL闪避与招架这种混合了圆桌模型与瀑布模型的判定方式来计算平均伤害:

QQ20141113-2.jpg

将未命中率 = a,命中率 = 1-a,带入上述公式中,使用中文表达为:

QQ20141113-3.jpg

比较公式(5)与公式(4),发现其表达是一致的,由此可见,《公式是怎样炼成的》中的推导采用的战斗伤害判定模型是瀑布模型与圆桌模型的混合使用,并非纯粹的采用圆桌模型的算法。那么我们是否可以得出一个简单的结论:

当项目的数值设计采用的有效生命(EHP)与有效伤害(EDPS)来推导公式中的各个系数与对应属性的价值时,那么这个模型从原理上来讲就不会是纯粹意义上的圆桌模型!

青木公在随后的更新中也提到了这一点,但是没有给出具体的解决方案,而是给出了一个大概思路:

在圆桌模型下,EDPS和EHP抽象不出来了......现在的EDPS里面需要考察对方的防御,EHP里面需要考察对方的攻击.
所以作者自己又修改了模型,在此给一个新的计算各种属性价值的思路:

1.使用生存时间作为关键值(这是核心改变)

生存时间=MHP*f(攻强,暴击,命中,护甲,招架,闪避)

2.如上所示,我以MHP属性作为价值标准

3.求攻击类属性(攻强,暴击,命中)的A值

公式变形为MHP=生存时间/f(攻强,暴击,命中,护甲,招架,闪避)

以攻强为例.
将MHP对攻强求导,若导数为1,则攻强的价值等于MHP的价值,求导的过程中可以解出A值.
原因在这里不证明了,大家可以自己推导.

4.求防御类属性(护甲,招架,闪避)的A值与C值

仍然使用生存时间=MHP*f(攻强,暴击,命中,护甲,招架,闪避)这个公式.

以护甲为例.
求C值的思路不变,尝试让生存时间与护甲成正比.

代入C值后,表达式可以简化为

生存时间=MHP*(护甲+A*F(lvl))*B

B是由计算得到的常数了.

易知,若MHP=护甲+A*F(lvl),则护甲与MHP价值相等,所以A=?MHP-?护甲.

对于以上的这套推导流程,请恕笔者水平有限,目前还没有研究清楚,不过笔者对其有自己的一套理解,在此列出,欢迎吐槽与指正!

1.首先按照圆桌模型列出平均伤害的公式:

平均伤害 = F(攻击强度,命中强度,暴击强度,护甲,闪避强度,招架强度)

2. 将上述公式分别对攻击强度,命中强度,暴击强度,护甲,闪避强度,招架强度求导数。

3. 令F’(攻击强度)=F’(命中强度)=F’(暴击强度)= - F’(护甲)= - F’(闪避强度)=-F’(招架强度),求解出全部的公式系数即可。

道理用文字说明可能会更加直接,导数的意义是自变量增加一个单位,应变量的变化值,应用到上述式子中则表示攻击强度,命中强度,暴击强度,护甲强度,闪避强度,招架强度每增加一个单位,平均伤害的变化;令所有进攻类属性的导数相同,代表进攻类属性的价值全部相同;令全部防御类属性导数相同且是进攻类的负数,代表了其效果相反但是价值相同。

二、各种攻防公式的探讨

常见的攻防公式有3种,减法,乘法,与除法。

减法公式:dmg = atk – def
乘法公式:dmg = atk *(1-减伤比)  减伤比 = F(def)
除法公式:dmg = atk *atk/(atk + def)


这三种方式各有特点及适用范围,乘法公式与除法公式可以概括为:伤害 = 攻击力 * (1-减伤比),区别在于乘法公式中的减伤比只跟防御方的属性相关,而在除法公式中,减伤比 = F(atk,def),其值与攻击方的属性与防御方的属性都相关;而看似最简单最直观的减法公式则最是麻烦,每次攻击造成的伤害不能通过减伤比来表示,因为其伤害减免与攻击的次数相关。下面通过设置两个单位A与B之间对战来查看这三种公式的影响:

先看乘法公式,依然采用双方对战,存活时间的长短来验证

QQ20141113-1.jpg

假设A获胜,则A生存时间 大于 B生存时间。

QQ20141113-3.jpg

通过观察发现上述公式左边全部是单位A的属性数值,右边全部是单位B的属性数值,我们就可以通过EHP*ATK 来表示一个单位的战斗力大小,当然其属性可以不仅仅包括HP,ATK,减伤比这三种属性,可以扩展许多其他的属性,例如将全部防御类属性集合表示为EHP,所有攻击类属性全部表示为EDPS

EHP = F(护甲,闪避,招架)
EDPS = G(攻强,暴击,命中)


但是有一点十分关键,那就是这些属性一定是互相独立的,一定要符合乘法公式的要求,护甲就是带了伤害减免的,跟对方的攻强没有关系,闪避只和自身的闪避值相关,跟对方的命中没有关系!

在减法公式情况下,同样是A与B对打。

A生存时间=HPA/(ATKB-DEFA)
B生存时间=HPB/(ATKA-DEFB)


依然假设A获胜 推出:

HPA×ATKA – HPA×DEFB > HPB×ATKB – HPB×DEFA

由以上公式可以看出,双方的属性混合在一起,我们无法通过数学方法将双方的属性分离到公式的两侧,这也就意味着单位A的战斗力强弱会根据对手不同而不同!

除法公式

QQ20141113-1.jpg

依然假设A获胜推出

QQ20141113-2.jpg

情况与减法公式的情形相同,依然无法将双方属性分离。

总结一下,在涉及战斗力属性价值的设计时,战斗公式采用何种方式有很大的影响,减法公式与除法公式都会因为双方属性参数无法分离导致复杂程度提升,无法通过数学方式解决战斗力计算以及属性价值的问题,而乘法公式如果我们回避掉伤害判定逻辑这一考量(第一节的讲解),是可以通过数学计算出来的。为此我们又可以得出一个结论:

在种类繁多的公式中,概括的讲只有两种,一种公式应用后导致玩家的战斗力只与玩家自身的属性相关,另一种公式应用后会导致玩家的战斗力根据对手的不同而不同!

注:这里说的战斗力是根据生存时间计算出的实际战斗力,体现角色的强弱,与给玩家看的战斗力数值不是一回事。

三、属性价值与战斗力计算总结

说说闲话吧,最初开始研究数值,主要是因为战斗力计算的公式,现在的页游与手游,都不可避免的有关于战斗力表现,战斗力将纷乱的战斗属性标准化,用统一的数值来衡量其硬件标准!最早期的日式RPG游戏中,大都通过等级来衡量强弱,所以说等级就是最早期的战斗力,随着游戏的发展与演变,影响游戏中角色强弱的属性参数越来越多,越来的越复杂,等级这一标准也就越来越不准确,就连大家耳熟能详的WOW不也先后有大脚GS评分与装备等级这些概念么。页游手游面向的玩家类型更加light,也就更加需要简单直观的引导,显然你告诉玩家装备这件装备提升了多少闪避数值,提升了多少暴击数值,都不如直接告诉玩家我的战力提高了多少更加有效!

属性价值与战斗力计算有什么关系么,当然,可以说计算属性价值与计算战斗力是一回事,战斗力的计算过程就是分析战斗公式中每一种属性对于战斗胜负强弱的影响,也就是计算该属性的价值,然后通过战斗的模型将这些属性转换成战斗力这一标准数值。在理想的情况,假设我们可以精确的计算出每一种属性的价值,并建立战斗力的模型,那么之后各种职业的数值平衡,关卡设计将是多么愉悦的事情啊!可惜这仅仅只能存在幻想中,现在的游戏的复杂程度已经不亚于现实生活,其对于数值建模的要求甚至超过了经济学与统计学的范畴,想要精确控制无异于痴人说梦,那我们这群人天天在这吵来吵去的是为什么呀,既然无法模拟,干脆凭着感觉瞎填得了,反正数值基本靠调…(不可否认,确实有人这么干的)。我认为尽量接近游戏中的实际情况进行建模,不光是作为数值设计人员应该追求的目标,更加重要的是在之后游戏测试出现与预期不符合的情况时,我们能更加快速的定位问题所在,修改,调试模型,你在设计时的模型越符合游戏实际,那么后期的调整就越方便越准确。好了,以上都是吐槽,本节我想与大家讨论的问题其实在学习《公式是怎样炼成的》与《MMO游戏数值建模》遇到的问题以及如何思考解决这些问题的,相信也有不少新人与我一样也有这些问题,在此希望能给新人们解惑,同时如果有疑问或者不对的地方欢迎讨论与指正。

建议在阅读《公式是怎样炼成的》一文时能结合明澈流风的《MMO游戏数值建模》中的战斗相关的章节,《公式是怎样炼成的》中更多的时理论与公式推导,采用了先设计属性价值在反推公式参数的方式,而《MMO游戏数值建模》中采取了不同的方式,更多的是通过不断调整公式的参数来模拟,引用《公式是怎样炼成的》的话“理论上,由战斗公式也可以先拍公式系数,然后反推相关的属性价值”,《MMO游戏数值建模》采取了后一种,不过其并没有去推导这些属性的价值。

下面我们来逐步分析这两篇文章。

3.1《公式是怎样炼成的》

新人初读《公式是怎样炼成的》时很容易陷入复杂的公式推导之中,其中还有一些推导不存在严格意义上的数学证明,更会增加学习的难度。在笔者看来重要的是搞清楚作者到底要表达什么。

笔者认为《公式是怎样炼成的》通篇繁杂的公式推导就是干了两件事,第一件事是首先拍出了战斗属性强度值到其影响率的转化公式,然后通过计算推导出这些公式中的常数参数;第二件事则是通过上一步计算出的完整公式推导出战斗属性强度的等级增量Δy。

在整个推导过程中的依据则是如下几条:

1 标准人物在不同的等级时的平砍节奏相同;
2 属性的价值稳定,解决边界问题!
3 假定所有的战斗属性的价值相同


先来看第一条,标准人物在不同的等级时的平砍节奏相同,引申出人物的属性成长曲线f(lvl)不会对平砍节奏产生影响,可以通过简单的数学推导证明,在这里通过护甲强度与免伤率的公式来作为例子来推导:

QQ20141113-1.jpg

从公式可以看出,免伤率与属性成长曲线f(lvl)没有关系,其他的命中,闪避等读者可以自行推导证明,最后笔者采用一个通用的公式来总结这一结论:

QQ20141113-3.jpg

因此平砍节奏不会变化,读者可以结合《MMO游戏数值建模》中excel表格中的最大模型这一页来验证,其表述的十分清楚!

2属性的价值稳定,解决边界问题!

很遗憾在整个文章并没有看到关于此问题的表述,在《公式是怎样炼成的》的开头部分是这样定义边界效应的“所谓边际效应,指的是,某属性在自身数值越大时价值越大,导致玩家的最优策略成为了,要么往死里堆这个属性,要么干脆一点也不堆的现象”事实上的边际效应却正好相反,看一下百度百科的定义“是指其他投入固定不变时,连续地增加某一种投入,所新增的产出或收益反而会逐渐减少。也就是说,当增加的投入超过某一水平之后,新增的每一个单位投入换来的产出量会下降。”也就是说实际上的边际效应应该是某属性在自身数值越大时价值越小,导致玩家在这一属性达标后去追求其他属性,依然通过护甲免伤公式来做例子来表述:免伤率 = 护甲强度/(护甲强度 + A)

该函数的曲线大家可以自行画下,可以明显的看出免伤率的值开始变化快,后来变化趋于缓和,无限接近1,非常符合边际效应。因此我将作者青木公的边际效应解释为“当属性积累到一定程度时会发生质的的改变,从而破坏游戏的模型”,这样的例子很好举,闪避率超过百分之百,免伤率超过百分之百,在减法计算伤害中的防御过高导致无法破防,圆桌模型发生溢出,导致某一判定永远不出现出现(boss碾压攻击)等等。我们设计的游戏模型,应当是避免此类问题的发生,在拍参数时确保你的标准模型与最大模型中不会出现此类问题,别的办法请恕笔者水平有限,也欢迎大神们给予好的解决方法!

3 强行设定各个战斗属性的价值相同

《公式是怎样炼成的》整个流程是通过强行假定所有的战斗属性的价值相同,在来推导每个公式的参数。笔者最开始看的版本是不包含后边注释的,当时看的一头雾水,反复琢磨了许久才弄清楚,在这里不的不提一下,青木公在属性价值推导过程中书写顺序有些许不合理,导致读者阅读时存在小障碍,在此笔者按照自己理解的思路从新梳理一下,有不足之处还请见谅,还是先贴上青木公的对属性价值推导的注释
问过我这个问题的朋友太多了,我不得不单独提出来说一下.

是关于

EHP'(AC)=价值(AC)/价值(EHP)=价值(MHP)/价值(EHP)

这个式子.

首先,导数本身的意义在于,自变量每变化一单位,因变量会相应变化导数个单位.

对于EHP'(AC)来说,其意义就是,AC每变化一单位时,所引起的EHP的变化单位数

而对于我的模型来说,这就是AC相对于EHP的价值.

所以表述成了 EHP'(AC)=价值(AC)/价值(EHP)

而后面一个等式能成立则是因为在之前已经假定了AC和MHP的价值相等......

实际上,整篇文章,就是基于"属性价值相等"这个前提下来对公式参数的推导......

下面是笔者的推导过程:

首先推导出有效生命与有效攻击之间的价值关系:

QQ20141113-1.jpg

上边的公式可以算出EHP的价值与EDPS的价值之间的比例关系。下面继续推导出EHP有效生命与各个防御类属性价值的关系,以MHP作为标准

QQ20141113-2.jpg

因为在设计之初已经假定所有的价值相同,即:

QQ20141113-3.jpg

根据上面的公式就可以推导出所有防御类属性的强度转换公式的常数参数,其中涉及一些数学技巧。

下面推导出V(MHP)与所有攻击类属性的价值比值,这样一来所有战斗属性的价值全部与最大生命值MHP对应起来,以攻强DPS为例

QQ20141113-4.jpg

理论上我们只需要拍出MHP的相关数值,即可以确定其余的数值,对这些公式推导还存在疑问的同学可以阅读《属性价值逻辑推演》一文,其模型与《公式是怎样炼成的》一致,公式推导的更加详细,在一个地方有个小的书写错误,但是不影响阅读,大家可以看一下,加深对于整个属性价值的理解。

存疑

仅看上面那一堆乱七八糟的推导过程,可能误认为这是十分高大上的玩意儿,推导论证多么严密,其实这其中有许多坑爹的假定,比如一切的起点V(EHP)与V(MHP)的比例关系,

V(EHP) = V(MHP)*(1-减伤比)*(1-闪避率-招架率)

仔细观察会发现,MHP的价值应为每个人物实际情况衡量,也就是说上式中的减伤比不等于0.35,闪避率与招架率也绝不是我们拿脑袋拍出的值,而是人物在不同的情况下对应的实际数值,但是在简单模型或平衡性考量并不需要高度精确的情况下,按照我们设定的标准模型情况来考量就可以了,按照实际情况会使其变得复杂,复杂到根本不知道肿么搞!

3.2《游戏数值建模》

此文涵盖很多方面,可以当成是一个项目的数值规划文档,也就给了我们这些策划新手学习的机会!在明澈流风大大的这篇文中,设计了游戏数值的多个方面,战斗系统,经济系统,生活系统。我依然只研究其战斗系统的数值设计,在word文档中,涉及到的理论比较少,将其当成是大纲阅读即可,要研究数值当然是直接着手于excel文档更加有效了。明澈流风大大的excel表格做的十分高大上,各种切页一共有几十个,新手可能会头昏,没有关系,耐下性子仔细阅读,会发现脉络十分的清晰。

首先看一下“属性一览”切页,在该页明澈流风列出了游戏中的所有战斗相关的属性,明澈流风列出了5级属性100多条,笔者在此将划分为两类,一类是属性强度值,第二类时属性强度转化率。

属性强度公式均为:

y = f(lvl) * C

相当于《公式是怎样炼成的》中的

属性强度值y = 属性强度增量Δy * f(lvl)

属性强度转化率公式则有两种:

Y=C×X/(f(Lv)×A),线性趋势函数
Y=C×X/(X+f(Lv)×A),曲线趋势函数


以上两个公式也同《公式是怎样炼成的》一样。

然后跳转到“属性分类”切页中,在该页中用脑袋拍出了闪避,暴击,破防等模型特征参数的最大值。

接下来进入“战斗公式”切页之中,查看具体的伤害转化公式与属性强度转化率公式,看到这里相信细心的读者又有些醉了,那就是很多公式中有了攻方的f(lvl)与守方的f(lvl)的描述,在我们之前讨论所有公式中,f(lvl)都只是一方的属性,这究竟是怎么一会儿事呢?答案是在设计时将双方的等级差距也考虑进了战斗模型,这种设计很常见,比如在打怪获取经验的时候,怪的级别比自身级别越高获取的经验越多(不考虑越级打怪的bug),wow中低等级玩家对高等级玩家使用技能时都是抵抗或者未命中的情况。我们关心的是加入这一参数后对战斗模型会产生什么影响,这点我们可以不用操心,因为平衡的考量都是建立在相同成长阶段的基础上的,即双方的f(lvl)相同,都是一个值,到底是谁的也就无所谓了,这也是为什么在《公式是怎样炼成的》中没有涉及这一点的原因,《公式是怎样炼成的》的推导是完全建立在两个标准人物在相同的成长阶段情况下互相战斗。读者在设计公式时,可以按照自己的思路来设计双方的等级差带来的影响,比如命中率 = (自身参数计算出来的)*(攻方f(lvl)/守方f(lvl))等,随便举得例子别当真。

最大模型”切页中将所有的属性强度成长公式与属性强度转化率公式涉及的所有参数全部“调试”了出来,为什么要用调试二字,因为实在是没什么理论,只要保证人物的每个f(lvl)成长等级下各个属性的最大值符合在“属性分类”切页中的模型特征参数的最大值即可。

接下来进入“属性分配”切页中,该页中做的工作是人为拿脑袋拍出“最大模型”中的这些属性是如何分配的,装备占多少,裸体占多少,宝石占多少等等,然后再一层层的分配下去!

讲到这里忍不住要吐槽一下武学的分配,在明澈流风的设计中,武学是作为多职业的实现方式,可以说是游戏的主要玩法的体现,但是直接用脑袋拍出每种武学的分配比例真的大丈夫?通篇没有一点涉及职业平衡啊,有木有!吭、吭,总体来说该篇文档是一份很好的excel数值建模的教学范例,很有学习的价值!

4考虑多种职业平衡时的数值设计

《公式是怎样炼成的》与《MMO游戏数值建模》中均没有涉及多职业平衡的数值设计,笔者认为平衡是个很复杂的问题,有时候更多是感受上的,哪怕你数值做的再好,只要玩家感受到不平衡依然是失败的,而许多游戏根本没有平衡性可言,照样活的好好的!废话不多说了,在此推荐《MMO游戏数值框架概述(偏模拟方向)》一文,该文中有一章节讲解了多职业的平衡的数值设计问题。

归纳起来有如下几步:

1 差异化职业模型,就是你要设计的这个职业的特色是什么,其属性强弱分布!
2 建立各个职业的最大模型,将这些职业的模型特征参数拍出来!
3 反复调试测试模型的参数,配置平衡,这一步最坑爹,不断通过生存时间A ≈生存时间B调节职业的特征参数。
4 根据每个职业模型建立起对应的属性价值体系
5 分别建立成长数值模型

5 技能设计
洗洗睡吧…

(完)

0

主题

302

帖子

1148

积分

金牌会员

Rank: 6Rank: 6

积分
1148
发表于 2014-11-14 10:44:01 | 显示全部楼层
看到大篇幅的公式有点晕...需要么

点评

知道我们码字多不容易吗。。。哈哈  发表于 2014-11-14 15:52

10

主题

258

帖子

710

积分

高级会员

Rank: 4

积分
710
发表于 2014-11-14 11:31:24 | 显示全部楼层
好帖,收藏了

0

主题

37

帖子

118

积分

注册会员

Rank: 2

积分
118
QQ
发表于 2014-11-14 15:45:23 | 显示全部楼层
好帖,收藏了

0

主题

8

帖子

44

积分

注册会员

Rank: 2

积分
44
发表于 2014-11-14 18:11:25 | 显示全部楼层
其实更希望能看到经济系统的数值设计....

26

主题

607

帖子

2276

积分

金牌会员

Rank: 6Rank: 6

积分
2276
发表于 2014-11-18 19:53:59 | 显示全部楼层
这不是之前有个人上传的文档里面的内容么

0

主题

38

帖子

124

积分

注册会员

Rank: 2

积分
124
发表于 2014-11-18 20:30:28 | 显示全部楼层
说一句个人看法:
演算模型应该建立在伤害公式的基础之上,不然大把的推演略空。特别是属性的价值(好奇一下,没有伤害公式模型的时候,推演属性价值公式是否有实际意义值得商榷)

0

主题

302

帖子

1148

积分

金牌会员

Rank: 6Rank: 6

积分
1148
发表于 2014-11-19 15:01:09 | 显示全部楼层
kingcat55 发表于 2014-11-14 10:44
看到大篇幅的公式有点晕...需要么

一个公式符号都没错啊...厉害  

0

主题

1

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2015-3-2 11:46:30 | 显示全部楼层
当命中和闪避不是相互独立,而是互相影响的,要怎么计算属性价值呢。比如命中率=攻方命中/(攻方命中+守方闪避)。

1

主题

6

帖子

44

积分

注册会员

Rank: 2

积分
44
QQ
发表于 2018-7-16 14:56:23 | 显示全部楼层
乘法公式中的存活时间表达式写错了吧,HPA和DEFA不应该是一个在分子一个在分母,应该都在分子上。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-3-29 17:59

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表