首次发表于知乎
1. 简介
虽然本文单单提到了价值,但需要强调的是,价值并不是万能的,它是一个可以方便调整体验的工具,是一个展示项目哪些部分需要调整的展示。价值对整体游戏体验的调整需要多方面的配合才能达到预期的效果。而且有需求才会有价值,如果把价值放在需求之前,就是本末倒置,只会降低项目的上限。
价值并不是孤立存在的东西,它必须有规律可循。英雄联盟经过多次调整,初始金币定为500,多兰之戒价格定为400,多兰之剑价格定为450。之所以初始金币定为500,是为了让玩家在前期购买起始装备后,能够充分利用初始金币,降低起始装备和物品的选择难度。有些玩家出门不带药品,希望省下药品钱,快速买一件装备。为此,血瓶价格也进行了调整,以及大量装备和物品价值调整。多兰之戒比多兰之剑少50金的原因是因为并不是所有中路法师释放技能都会消耗法力,多两个血瓶对于前期不消耗法力的中路法师更有帮助。
猩红死神是一名不消耗法力的中路法师
数值的设定需要机制的配合。角色明明有30%的暴击率,但是运气不好的时候,砍了100刀,一次都没暴击。为了解决这个问题,有些游戏设置了特殊的机制。比如战斗开始后,随机排列1到10,作为判断第1到第10刀哪一刀是暴击的标准,然后选择数值≤3的为暴击,但是要做到这一点,必须10刀全部砍完,才能进行下一波排序。有些游戏则采用其他方式——将第一刀的暴击率设定为11.89%,如果没有暴击,则将下一刀的暴击率提升到原来的两倍,为23.78%,直到发生暴击。若发生暴击,则下一刀的暴击率恢复为11.89%,从而整体保持30%的暴击率。
奇迹可能不会发生
并不是所有数值设定都是有效的。比如《Elden Ring》,死亡时会掉落所有金币。最初的设计本意是作为战斗失败的惩罚。但由于战斗容忍度较低,玩家经常来不及捡起上次死亡掉落的金币就再次死亡,然后金币全部没了。于是老玩家就学会了刷金币的技巧。他们也会在进入副本前把金币全部用完。进入副本后,捡起地上的物品,能躲就躲,然后直接冲向BOSS房,让死亡掉落金币的惩罚失效。
当玩家在 Elden Circle 中死亡时,所有灵魂都会掉落。
数值设定可以运用到游戏开发的各个环节。假设一款商业游戏预计每年导入100万流量,预期付费率为5%;预期大R占比5%,付费率为80%;中R占比15%,付费率为15%;小R占比80%,付费率为5%;预期年流水1000万,则单个大R的付费金额=(1000万年流水×大R付费率)÷(100万流量×付费率5%×大R占比5%)=3200,这就是单个大R用户一年内预期在游戏中消费的数学期望。对应中R=200,小R=12.5。这些数字决定了游戏要设定的付费深度,以及各类充值活动的定价。比如不少游戏针对小R用户推出了10元首充活动(部分游戏推出了1元首充活动,点击充值界面后提示最低充值10元),针对中R用户则推出了148、168、198等优惠活动。
不同程度的充电
虽然游戏行业有专门的数值策划师,但这并不意味着其他策划师就不需要懂数值。数值也是设计的一部分。懂数值设计可以让策划师对设计的思考更加精准,提升整体的思维和设计能力。游戏行业经常会产生一些拼凑的游戏,其中一个原因就是策划师在设计的时候各司其职,每个模块单独看还不错,但拼凑在一起就变得非常碎片化。
学数字需要很好的逻辑思维能力,数学知识,对于精度要求不高的游戏,初中高中的知识就可以解决大部分问题,对于像MOBA这种精度要求极高的游戏,需要有大学数学和思维,重点是思维。数学公式、公式特征,需要什么就去查什么。工具方面,Excel可以解决大部分问题,常用的Excel函数记住,方便使用,其他函数,需要什么就去查什么。
Excel 是数值规划的必备工具
对于想做数值规划的同学,尽量学会使用VBA,可以模拟战斗过程,输出过程数据,调整技能数值变得很简单。而且如果日常游戏中熟悉使用按键精灵,那么学习VBA也不是什么难事。数值规划本身就是一个极其枯燥的工作,经常需要根据实际需求的变化大范围的调整数值,每天看着表格很容易让你长出复眼,看东西时看到好几个分身。
对于战斗策划来说,大型游戏中战斗策划的工作量要比数值策划大很多,所以一般不负责数值。其实在设计的时候战斗策划应该屏蔽掉自己的数学思维,从好玩的角度开始设计。但是战斗策划应该知道这个项目的数值策划能干什么。如果战斗策划设计了100个技能,数值策划只能搞定其中的20个余下,那么除去技术研发能力,这个项目最后只能出20个技能。如果项目开始没有数值策划,中途插上一个数值策划,经常会遇到这种情况,如果因为技术原因去掉10个,那么最后只能出10个技能。其实也有大型公司战斗策划也负责数值,但是按照1+1>3的原则:
对于一个小公司来说,根本就没有什么价值,真的不值得继续留在这个公司。
全文约16000字,涉及大量公式和计算,特别是战斗平衡计算部分,看懂这篇文章需要有一定的数学基础。
2. 基本概念与机制
2.1 轮次
指对立双方中一方完成攻击的最小时间单位。它可以是回合制游戏中的1轮,或实时战斗中的1秒。
一场战斗的总回合数是指双方同时死亡所需的回合数,或者一方击杀另一方所需的回合数。通常作为衡量一个职业是否平衡的标准。假设两个职业 A 和 B 在战斗,A 击败 B 需要 20 回合,而 B 击败 A 只需 10 回合。这意味着战斗过程中,B 一定会击败 A。这种情况下,A 和 B 两个职业是不平衡的。
2.2 数学期望
用来描述一组波动数据的真实情况。期望值=“每个数据发生的概率×数据本身”加上总和。
数学期望
比如某款游戏每天有100人在线,其中10人在线20分钟,40人在线50分钟,40人在线80分钟,10人在线100分钟,对于这组100人的数据,其每人每天在线时长的实际值为:
如果预期在线时间数据与64分钟相差不大,且在线时间分布图形集中,则说明玩家在线时间符合预期。如果64分钟与预期在线时间不符,或者在线时间图形离散,则说明在线时间不符合预期,需要调整游戏设置。
2.3 经验设定数据
指与游戏体验直接相关的数值设定,比如一场战斗持续多长时间,击杀一只怪物需要多少次攻击。经验设定数据在数值计算中是自变量,而因变量则由这些自变量衍生而来。有些自变量会根据因变量的值与预期值的差异进行调整。
思考哪些数据是开始游戏数值计算前最重要的部分就是思考哪些数据是经验设定数据。就拿moba游戏的“在线时间”为例,就是英雄回城的频率。英雄回城是为了更换装备和补充物资,所以会影响装备的价格,而装备的价格会影响一局在线获得的金币数量。这个金币数量和在线时间会影响一局在线总共打几波兵,每波兵能获得多少金币,以及打野在野区能打多少野怪,每只野怪能获得多少金币。在线时间和技能篮消耗也会影响英雄的法力上限和法力恢复速度。
在大多数情况下,游戏中一个因变量需要多个自变量来推导。而当因变量不符合预期时,你应该频繁地回头修改自变量。这涉及到一个原则——数值经验和数值平衡是根据游戏运营中的各种数据来调整的。你永远无法精确计算,因为玩家会以各种你无法预测的方式打破预期。
2.4 技能冷却
技能释放后会进入冷却时间,冷却时间结束前无法释放技能。
实时战斗中,技能冷却从什么时候开始计算?这直接影响到规定时间内技能可以释放的次数。以一个用刀砍的技能为例,技能动作分为挥刀前、击中瞬间、挥刀后三个部分,击中瞬间时间=0。设挥刀前时间为A,挥刀后时间为B,技能冷却时间为C,A+B≤C,战斗时间为D,D≥A+B,则计算技能可以释放的次数:
A=挥动前时间,B=挥动后时间,C=技能冷却时间
从以上三种情况可以看出,若冷却时间从预挥杆开始计算,则规定时间内的技能攻击次数最多。
大家可能注意到了为什么我用的是“≈”而不是“=”。比如,如果D=60秒,C=58秒,那么你可以在第59秒再次使用技能,但如果A=2,B=2,也就是A+B=4,那么技能在第59秒开始释放,但战斗在预挥击结束前就停止了。这类似于《土地之率》中的概念,技能已经准备好,但未成功释放。
因此对于技能预挥动就开始计算冷却的情况,精确计算释放次数的函数表达式应该是:
如果(DC≤0,1,如果(D-(A+B)-向下舍入(D÷C,0)*C<0,向下舍入(D÷C,0),向上舍入(D÷C,0))
其中,if、rounddown、roundup都是Excel中的函数,另外两种情况的具体表达方式大家可以自己想想。
2.5 最大值和最小值
最大值与最小值是数值平衡计算过程中极其常见的概念,常常用于计算和调整不稳定的数据。
数学中区间内的最大值与最小值
以BUFF技能为例,两支部队AB互相战斗,A为远程B为近战,B可以开启增伤BUFF,A战斗的同时逃跑,B要追着A输出伤害。这就意味着当B开启增伤BUFF时,由于B并未追上A,所以B的技能伤害并不能全部享受到增伤BUFF带来的收益。假设B的增伤BUFF持续时间为25秒,战斗时长为30秒,B追上A总共用时10秒,那么技能享受增伤BUFF的最大持续时间为30-10=20秒,最小持续时间为25-10=15秒。最大时长代表增伤BUFF持续时间内有一部分用来追人,最小时长代表激活增伤BUFF后才开始追击。
在战斗平衡计算过程中,如果以最大技能收益来计算数值,则表示实际战斗容忍度很低。如果以最小技能收益来计算数值,则表示实际战斗容忍度很高。
3.实战演练
数值构建过程根据是否进行大规模调整,分为框架构建和数值调整两个阶段。框架构建阶段以人工填充数值为主,涉及数值微调,主要目标是构建框架;数值调整阶段是在框架构建之后,根据各因变量的期望,对自变量进行整体的大规模综合调整。
这里我们以即时战斗类游戏为例,以英雄联盟中的职业为例,演示框架搭建阶段,涉及一些数值调整思路。内容主要涉及职业属性、装备属性、战斗平衡等。下方所有表格中,红色文字为可手动调整的自变量。
3.1 定义属性和公式
第一步是定义游戏中有哪些属性。这里我们设置以下属性:
第二步,定义计算公式。计算公式的定义涉及到游戏中有多少个属性系统。本游戏中只设置了三个系统——角色系统、装备系统、技能系统。其他类型的系统可以参考装备系统的数值设计思路自行设计。设置公式如下:
游戏内的伤害公式及系数设置
其中暴击率、物理减免、魔法减免、命中率均为隐含值,不会在游戏中直接显示,必须通过其他显式值进行换算。其中暴击率和命中率是纯随机的,机制上没有做任何伪随机处理。
第三步,定义攻击判定流程,技能CD从预挥杆开始算起,游戏中攻击判定结果有三种:
这里我们采用的是分步判断法,即先判断是否命中,再判断是否暴击。那么真实暴击概率=命中率×暴击率。对于分步判断法来说,判断优先级越靠后,其真实发生概率的偏差越大。
另一种攻击判定方式是圆桌论,这个方式在网上讨论的比较多,有优缺点,目前主流游戏多采用复合判定方式。
3.2 定义标准字符属性
为各个属性类型赋值,作为标准角色的1级裸奔属性。
C18 至 K18 为设置的第一级标准字符条纹属性
然后设定每一级各属性的成长率,将等级上限设为30级,每10级进行一次等级突破,设定接下来10级各属性的成长率高于之前10级。有下表。
不同等级角色的等级成长系数
然后根据第1级时各属性的数值,以及各属性的成长率,计算下一级的属性值。以健康为例,公式为:
获取1~30级的标准人体属性,如下图:
各等级标准角色属性
这里要注意的是,虽然数值规划师这里采用的是百分比增长,但是在系统制作的时候,如果要显示下一级属性,下一级属性增加了多少,那么就必须以固定数值的形式来显示。
3.3 定义标准人体设备属性
装备设定有白、绿、蓝、紫、橙五种品质,由游戏中的怪物掉落,等级分别为1、10、20、30级。将各属性依次取出,按照品质、等级增加属性的原则分配属性成长系数。
装备上各属性成长系数
以蓝色品质3级装备的生命值为例,其生命值属性=标准人类3级生命值属性×蓝色装备1级生命值属性成长系数(因为有10级,所以3级装备采用1级属性成长系数)
装备属性成长系数调整:
计算完之后,分别取出1级、10级、20级、30级装备的属性,这就是标准人类装备的总属性。
标准角色各品质各等级装备总属性
这里要注意10级、20级、30级装备的属性,要按照人物等级突破后的属性来计算。因为玩家是穿着10级装备去打11级怪物,所以11级怪物的属性会按照人物等级突破10级后的属性标准来计算。
若你为装备再增加一项强化设定,一共是10星强化,那么每强化1星之后,就需要设定装备属性的成长系数,然后乘以装备原有的属性。
如果装备有精炼设定,则先计算装备的总属性,然后取出精炼的属性,计算掉落重量和精炼费用,类似抽奖。
3.4 定义标准设备类型和属性
装备类型设置为武器、头部、肩部、衣服、腰带、裤子、鞋子、腕带1、腕带2、戒指1、戒指2,共计11种装备。将9种属性分配给装备,以保证每种属性下的装备数量大致相等。得到如下所示的表格。
装备分类及装备属性设置
然后将各项属性分配到不同的装备上,保证每件装备在属性分配上都具有一定的优势,从而保证每件装备的收藏吸引力。
装备上各属性占比
然后根据标准人的装备属性以及装备上属性占比,计算出不同装备的具体属性。例如,一件绿色10级武器的物理攻击属性值=标准人的绿色10级装备的物理攻击属性×武器上物理攻击属性占比。这样就能计算出不同类型的装备的具体属性值。
标准角色不同部位的装备属性值
3.5 职业设定及各职业属性
以标准人类为基础,游戏中拥有两种定位截然不同的职业:炼金术士和暗夜猎人。
其中炼金师生命值最高,以魔法伤害为主;暗夜猎手输出最高,以物理伤害为主。根据各职业特点,炼金师和暗夜猎手的属性系数以标准人物属性为准设定。如下图所示:
属性系数及其值
ABCDE代表属性程度,炼金术士防御高,所以生命值是A,暗夜猎人物攻最高,所以物攻是B。然后手动给ABCDE赋值,最后换算成各个职业相对于标准角色的属性系数。属性系数也可以手动填写,比如炼金术士的生命值系数可以手动填写为2。综合计算数值后,要根据预期的因变量调整系数。
然后用每个属性的属性系数乘以标准人对应属性的属性值,得到各个职业在不同层级的职业属性值。
炼金术士和暗夜猎人的属性
3.6 各职业装备属性
根据标准人类装备属性和各职业属性系数计算出各职业装备总属性。以炼金师10级蓝装健康值为例,其价值=标准人类10级蓝装健康值×炼金师健康属性系数。暗夜猎手和炼金师装备总属性如下图所示:
炼金师和暗夜猎手装备各品质及等级总属性
然后根据不同装备部件的属性分布和属性占比,得到每个职业不同品质、不同部件、不同等级的装备属性。
3.7 各职业属性总结
用角色各职业属性+各职业同等级装备总属性,即可得出各职业不同等级的总属性。因为装备分不同品质,所以在穿戴不同品质的装备时,需要使用不同品质的装备,分别加到角色属性中,才能得出各职业的总属性。
炼金术士和暗夜猎人穿着蓝色装备时的总属性
之所以用X级人物属性+X级装备总属性游戏搭建,是因为游戏的设计就是为了让玩家穿戴同等级的装备,为了让玩家以此为目标进行游戏,怪物的属性设计也要以这个标准来计算。
比如10级怪物的属性应该按照人物等级10+10级装备的属性来计算,人物等级属性应该取人物突破前的属性还是取人物突破后的属性,取决于你想让玩家先击杀掉落突破材料的10级怪物还是先击杀掉落装备的10级怪物。如果预期设定是先击杀掉落突破材料的10级怪物,那么玩家击杀这个怪物的时候,人物属性处于非突破状态,并且玩家穿着1级装备,这种情况下,怪物属性应该按照未突破的10级人物属性来计算,1级装备属性应该按照品质来取,取决于你想让怪物强到什么程度。
此时就应该进行一些参数和系数的调整,方法是把各个属性的总值取出来,做成折线图,检查折线图的走势是否符合预期。以物理防御和魔法防御为例,分别转换成物理减免和魔法减免,然后做成折线图:
当炼金术士穿戴蓝色装备时,体力减少曲线发生变化
折线图的趋势应满足以下几点:
如果折线图不符合以上两个预期,就调整缩减公式,人物防御属性成长系数,装备防御属性成长系数,甚至在缩减公式中增加分段函数。特别是以后要计算数值的话,分段函数会经常用到。分段函数的好处有两点:
3.8 专业玩法与专业技能设定
炼金术士和暗夜猎手两个职业的玩法是分开设定的,技能也是根据玩法设计的。这里我们直接引用《英雄联盟》中炼金术士和暗夜猎手的技能设定,按照下图进行修改。
炼金术士和暗夜猎人的职业玩法以及技能设定
根据技能的特点,给每个技能的参数赋值,这些数值都是自变量,在职业对抗的演练中,如果最终演练出来的数值不符合预期,就可以调整这些自变量。这些自变量也严格遵循一定的数值标准,比如大招的CD一定是最长的,如果调整自变量值之后,大招的CD不是最长的,那么调整就是错误的。
炼金术士技能初始值
暗夜猎人技能初始值
移动速度两个职业都设置一样,1格/秒。上图中暗夜猎手的射程和位移都是秒,也就是需要多长时间才能跑完这么远的距离。1.5秒就是1格/秒的移动速度,需要1.5秒才能跑完这段距离。实际折算成格子后就是1.5格。
技能等级设定为4级,每10级技能等级增加1级,也就是说当角色等级为1、10、20、30时,技能等级分别为1、2、3、4。
根据技能等级,手动设置每个技能等级的数值,这里的属性值会根据职业对抗结果进行调整,数值如下
炼金术士各等级技能属性
暗夜猎手各等级技能属性
在实际的游戏设计过程中,技能值经常会进行调整,上线后往往会对技能值进行全面调整。技能机制也会根据实际需要进行调整。例如《英雄联盟》中的机器人在加速技能后游戏搭建,会有一个短时间内降低自身移动速度的debuff。技能中加入这个机制是因为原本的技能值太小,很难提升技能等级。为了增加技能值,在技能机制中加入相应的削弱。
四、职业对抗及数值平衡计算
有了各职业的总属性和技能值,就可以模拟职业对抗了,模拟的目的是为了调整数值,模拟时分别选择各职业10级、20级、30级进行二对二战斗,装备品质为蓝色。
对抗时,先用炼金术士VS炼金术士,再用暗夜猎手VS暗夜猎手,这样会得到两个回合数,因为炼金术士防御力最强,暗夜猎手伤害力最高,所以得到的回合数就是整个游戏二对二对抗的最大回合数和最小回合数,对应的暗夜猎手VS炼金术士的回合数应该在这个最大和最小值之间。
4.1 炼金术士 vs 炼金术士
炼金术士的玩法和技能
炼金术士的战斗特点分析:
调用并计算炼金术士开启【疯狂药水】前后的数据,如下
炼金术士【疯狂药剂】激活前后的数据
战斗中各个技能的数据计算思路如下:
疯狂药水
毒气
强力粘合剂
越过肩膀
正常攻击次数
整体健康
预期损失值
最终计算出的数据如下:
10级时,炼金术士vs穿着蓝色装备的炼金术士
20级时,炼金术士vs穿着蓝色装备的炼金术士
30级时,炼金术士vs穿着蓝色装备的炼金术士
从以上数据我们可以看出,【毒气】的伤害占到了总伤害的60%以上。战斗时间随着炼金师等级的提高而减少,但变化并不大,符合炼金师的玩法设定。不过需要注意的是,这里引用的数据最终会根据炼金师和暗夜猎手的战斗数据最终结果进行调整。
4.2 暗夜猎手 VS 暗夜猎手
暗夜猎手玩法及技能
暗夜猎手战斗特点分析:
调用并计算暗夜猎手开启【杀戮时间】前后的数据,如下:
暗夜猎手【杀戮时间】激活前后数据
战斗中各个技能的数据计算思路如下:
消磨时间
击退巨箭
滚动箭
普通攻击
暗夜猎手
预期损失值
最终计算出的数据如下:
10级时,暗夜猎手 vs. 穿着蓝色装备的暗夜猎手
20级时,暗夜猎手 vs. 穿着蓝色装备的暗夜猎手
30级时,暗夜猎手vs. 穿着蓝色装备的暗夜猎手
从以上数据我们可以看出,普通攻击+暗夜猎手的伤害加起来大概占到了总伤害的60%,符合玩法设定。20级战斗中,生命值/总伤害预期值=0.92,相差0.08,也就是说战斗在10多秒内就结束了。
4.3 炼金术士 VS 暗夜猎手
分析战斗特点:
我们先来看追问问题:
追逐图
申请问题1:
问题1:A需要多长时间才能赶上B?
问题2:如果B不动,A需要多长时间才能追上B?
问题3:比较以上两种情况下B的普通攻击次数。
对于问题 1:
对于问题 2:
对于问题 3:
暗夜猎手VS炼金师,由于双方的移动速度都是1格/秒,增加移动速度之后,炼金师的移动速度大于1格/秒,所以暗夜猎手的站立和普攻最多。
暗夜猎手与炼金术士在战斗中的属性如下:
炼金术士和暗夜猎手战斗属性
分别计算炼金术士和暗夜猎手的技能数据:
一般数据:
暗夜猎手-杀戮时刻
暗夜猎手-击退巨箭
暗夜猎手-翻滚之箭
暗夜猎手-普通攻击
暗夜猎手-暗夜猎手
炼金术士 - 疯狂药水
炼金术士-追击距离
炼金术士 - 追上之前所花的时间
炼金术士 - 最大药水伤害时间
炼金术士 - 毒气
炼金术士-强力粘合剂
炼金术士 - 过肩投掷
炼金术士-普通攻击
炼金术士 - 全面健康
最终计算数据如下:
10级暗夜猎人与炼金术士身穿蓝色装备的战斗数据
20级暗夜猎人与炼金术士身穿蓝色装备的战斗数据
30级暗夜猎人与炼金术士身穿蓝色装备的战斗数据
上面提到了,最终的战斗平衡是为了保证炼金师和暗夜猎手战斗时,无论装备品质如何都能保持平衡,这里的平衡允许一定比例的误差,暗夜猎手和身穿橙色装备的炼金师战斗数据如下:
10级暗夜猎人与炼金术士身穿橙色装备的战斗数据
20级暗夜猎人与炼金术士身穿橙色装备的战斗数据
30级暗夜猎人与炼金术士身穿橙色装备的战斗数据
从上图可以看出,20级暗夜猎手和身穿橙装的炼金师的对战数据在平衡性上出现了非常小的误差。这个小误差不需要修改,因为实际战斗过程中的操作误差可以让这个小误差变得跟不存在一样。这个误差意味着现阶段暗夜猎手比炼金师强一点。如果想要修正这个误差,就调整暗夜猎手20级橙装的属性,降低其有效生命值。
暗夜猎手与炼金师穿戴紫色装备的战斗数据如下:
10级暗夜猎人与炼金术士身穿紫色装备的战斗数据
20级暗夜猎人与炼金术士身穿紫色装备的战斗数据
30级暗夜猎人与炼金术士身穿紫色装备的战斗数据
暗夜猎手与炼金师穿着绿色装备的战斗数据如下:
10级暗夜猎人与炼金术士身穿绿色装备的战斗数据
20级暗夜猎人与炼金术士身穿绿色装备的战斗数据
30级暗夜猎人与炼金术士身穿绿色装备的战斗数据
从上面的数据我们可以看出,战斗时长20秒时,暗夜猎人的“生命/总伤害预期值”=0.862,炼金术士的“生命/总伤害预期值”=0.994。看上去误差较大,需要修改。但是观察战斗时长19秒时的数据,如下图所示,双方的“生命/总伤害预期值”均大于1,说明此时双方都还活着,只是下一秒的超额伤害程度不同,所以不需要修改。
30级暗夜猎人与身穿绿色装备的炼金师19秒数据
暗夜猎手与身穿白色装备的炼金师的战斗数据如下:
10级暗夜猎人与炼金术士身穿白色装备的战斗数据
20级暗夜猎人与炼金术士身穿白色装备的战斗数据
30级暗夜猎人与炼金术士身穿白色装备的战斗数据
从上面的数据我们可以看出,30级暗夜猎手和身穿白色装备的炼金师战斗时,在战斗的第13秒,暗夜猎手的“生命/总伤害预期值”=0.992,说明此时暗夜猎手已经死亡,而炼金师的“生命/总伤害预期值”=1.188,说明在第13秒还活着。再看第12秒的战斗数据,第12秒双方都还活着。这就意味着30级炼金师身穿白色装备时,其战斗能力要强于暗夜猎手。此时我们需要对炼金师的30级白色装备的属性进行调整,降低其装备的有效生命值。
30级暗夜猎人、炼金师身穿白色装备第12秒的数据。
最后根据伤害比例计算出各个技能的法力消耗。
本文到此结束。
相关阅读:
(1)
(2)