PVP进阶RO知识点-伤害计算(纯PVP源码向,慎入)

更新时间2023/8/34205 浏览冒险攻略
一. 前言
本攻略涉及到源码解读,非新手向,且只针对PVP内容,计算规则PVE均不适用。
RO发展至今,已经有太多的增伤、减伤系统,而且PVP里面还加入了复杂的PVP修正,修正里面又有“压缩”的乘算修正和直接“增减”式的加算修正,伤害计算系统可以说是主打一个复杂。授人以鱼不如授人以渔,这篇文章将从源码角度彻底揭示伤害计算的各项细节,提高玩家对伤害计算的认知,在配装以及配卡方面,争取都能自己做出判断。讲解的同时也会遵循由浅入深的原则,尽量让所有人都能看得懂。
horizontal linehorizontal line
二. 伤害计算
2.1. 伤害计算公式
在常规理解中,最简单的伤害计算应该是这样的(如下式)
攻击力×技能倍率=伤害
如果加入一项增伤/减伤,那公式无非就变得稍微复杂一点(如下式),为了方便理解,我会把攻击力以黄色底纹标出,倍率以绿色底纹标出,而伤害增减项目,则以蓝色底纹标出。
攻击力×(1+增伤量)×(1-减伤量技能倍率=伤害
如果游戏设计者为了增加玩家内卷程度,一般会把增伤项和减伤项结合在一起,形成一对所谓的穿刺对应关系,公式就会变成这样(如下式)
攻击力×(1+增伤量-减伤量)×技能倍率=伤害
可是,我们的RO游戏中不止一个“攻击力”,RO游戏设定下,攻击力的种类一共有3中。分别是:
装备攻击:来自装备、存入、Buff、被动,神碑等方式增加的攻击
素质攻击:单纯由素质点带来的攻击力
精炼攻击:武器精炼以及工会精炼得到的攻击
这三种攻击中,装备攻击数值最高,一般来说素质攻击和精炼攻击较低一点。是而且其受到的伤害增减项目不一样。所以公式就变得相当复杂了(如下式)
{[装备攻击×(1+增伤量-减伤量)]+[素质攻击×(1+增伤量-减伤量)]+[精炼攻击×(1+增伤量-减伤量)]}×技能倍率=伤害
解读一下公式呢,其实就是各项攻击受到的伤害增减项目的乘算改变之后,加起来,然后乘以技能倍率,得到伤害,很容易理解。
但是有些伤害增减项目是可以同时影响两项或者三项攻击的,因此这些减伤项在公式中可以进行一个乘法分配律[a×(b±c)=a×b±a×c]的优化(如下式)。
{[装备攻击×(1+增伤量-减伤量)+素质攻击]×(1+增伤量-减伤量)+精炼攻击(1+增伤量-减伤量)×技能倍率=伤害
上面这个公式,就是RO计算伤害的最终公式规则:各项攻击受到的伤害增减项目的乘算改变之后加起来,然后乘以技能倍率,得到伤害,很简单了。
horizontal linehorizontal line
2.2. 各项攻击受何种伤害增减项目影响
攻击类型
TapTap
精炼概括一下重点就是:物理装备攻击部分受到体型影响,而精炼和素质部分无元素、无体型概念,而魔法则是不受体型影响,且所有魔法攻击均受元素影响
horizontal linehorizontal line
2.3. PVP里面伤害增减项目单项计算方法
前面为了方便大家理解,具体增减项的计算我都是以(1+增伤量-减伤量)的形式表达的,其实吧,完全不是单纯的加减这么简单的事,数学难度将再次升级!咱们一个个看。
horizontal linehorizontal line
2.3.1. 体型结算
源码:
TapTap
翻译成人话:体型结算=1+我方体型增伤-敌方体型减伤;体型结算最小值为0.15
解读:当敌方体型减伤大于我方85%的时候达到体型减伤最大值,减伤最大值为85%
大家记住这个公式,因为,这是最简单的,目前还是(1+增伤量-减伤量)的形式
horizontal linehorizontal line
2.3.2. 元素结算
源码:
TapTap
大家可以发现元素的源码突然就多了很多,不再是简单的加减计算,里面甚至有一个Sin三角函数,遇到这种公式,看似复杂,实际上我们一句一句读就好,请看下面源码人话翻译:
PVP修正=0.2;
x=敌方元素防御-我方元素攻击;(我这里把B换成x,方便后续讲解)
限制-1<x<1;(这里人话翻译一下,意思就是你的元素攻击超过别人100%的部分,就无效了;同理,别人元素防御超过你元素攻击100%的部分,也无效)
元素结算=1-x-0.3(1-sin(xπ/2))-0.2;(这一步可能有点点跳跃,元素结算是1-x,最后两句合并后就是这样)
使用这个公式绘制一下减伤曲线:
TapTap
解读:可以看出公式很复杂,但是绘制曲线之后,会变得很直观,最重要的结论就是:
1. 图中的这个点,它的意义是:当你的元素减伤超过进攻方元素增伤58.9%时,你能获得元素结算的最大减伤量85%,再往后做的元素减伤就是无效的,牢记元素58.9%
2. x=0的时候y值不是1,而是0.5,它的意义是:当你元素增伤和元素减伤持平,完全抵消时,并不是无事发生,进攻方打不出100%的伤害,而是只能打出50%的伤害,这就是所谓的“PVP修正”,元素的修正有50%
horizontal linehorizontal line
2.3.3. 种族结算
源码见下图:
TapTap
翻译成人话:跟元素大差不差,但是有点小区别,具体解析看下面:
PVP修正=0;
x=敌方种族减伤-我方种族增伤;(我这里把B换成x,方便后续讲解)
限制-1<x<1;(这里人话翻译一下,意思就是你的种族增伤超过别人100%的部分,就无效了;同理,别人种族减伤超过你种族增伤100%的部分,也无效)
种族结算=1-x-0.4(1-sin(xπ/2));(跟元素同理)
使用这个公式绘制一下减伤曲线:
TapTap
曲线解读:
1. 图中的这个点,它的意义是:当你的种族减伤超过进攻方种族增伤83.6%时,你能获得种族结算的最大减伤量85%,再往后做的种族减伤就是无效的,牢记种族83.6%
2. x=0的时候y值不是1,而是0.6,它的意义是:当你种族增伤和种族减伤持平,打不出100%的伤害,而是只能打出60%的伤害,种族的修正有40%
horizontal linehorizontal line
2.3.4.物免减伤
源码见下图:
TapTap
翻译成人话:主体计算方式和元素一模一样,就是最初的属性内卷里面,物穿除了面板部分之外,还有0.9%*12,共计10.8的隐藏精炼穿刺,后面的公式其实是和元素一毛一样的直接照搬元素的公式就好:
x=1-(1+0.108+我方物穿-敌方物免)*技能减伤;(我这里把B换成x,方便后续讲解,后面还有个技能减伤,不是面板的那个技减,这里是各种技能释放的减伤,比如钢心、能量护盾这种所以这一类技能都是通过倍数缩小物免系数来减伤的)
PVP修正=0.2;
限制-1<x<1;
物免减伤=1-x-0.3(1-sin(xπ/2))-0.2
绘制曲线:我在绘制时去掉精炼的10.8隐藏穿刺,可以更直观体现出面板需求
TapTap
曲线解读:
1. 图中的这个点,它的意义是:当你的物伤减免超过进攻方物理穿刺69.8%时,你能获得物免结算的最大减伤量85%,再往后做的物伤减免就是无效的,牢记物免69.8%
2. x=0的时候y值不是1,而是0.55,它的意义是:当你物理穿刺和物伤减免持平,打不出100%的伤害,而是只能打出55%的伤害,物免的修正有45%(其实修正是50%,只不过我把隐藏穿刺融进去了,方便大家观看)
horizontal linehorizontal line
2.3.5. 魔免减伤
源码见下图:
TapTap
翻译成人话:主体计算方式和种族一模一样,就是最初的属性内卷里面,魔穿除了面板部分之外,还有0.9%*12,共计10.8的隐藏精炼穿刺,后面的公式其实是和种族一毛一样的直接照搬种族的公式就好:
x=1-(1+0.108+我方魔穿-敌方魔免)*技能减伤;(我这里把B换成x,方便后续讲解,后面还有个技能减伤,不是面板的那个技减,这里是各种技能释放的减伤,比如钢心、疾风步这种所以这一类技能都是通过倍数缩小魔免系数来减伤的)
PVP修正=0.2;
限制-1<x<1;
魔免减伤=1-x-0.4(1-sin(xπ/2))
绘制曲线:绘制时去掉精炼的10.8隐藏穿刺,更直观体现出面板需求
TapTap
曲线解读:
1. 图中的这个点,它的意义是:当你的魔伤减免超过进攻方魔法穿刺94.4%时,你能获得魔免结算的最大减伤量85%,再往后做的魔伤减免就是无效的,牢记魔免94.4%。哭死,不记也行的,超过94要求太高了,不愧是高人一等的魔法。这也是魔免收益不高的主要原因
2. x=0的时候y值不是1,而是0.64,它的意义是:当你魔法穿刺和魔伤减免持平,打不出100%的伤害,而是只能打出64%的伤害,魔免的修正有36%(其实修正是40%,只不过我把隐藏穿刺融进去了,方便大家观看)
horizontal linehorizontal line
2.3.6.技能增减
源码见下图:
TapTap
翻译成人话:技减主体计算方式和种族一模一样,直接照搬种族的公式就好:
x=敌方技减-我方技增;
限制-1<x<1;
技能结算=1-x-0.4(1-sin(xπ/2))
绘制曲线:
TapTap
曲线解读:
1. 图中的这个点,它的意义是:当你的技减超过进攻方技能增83.6%时,你能获得技能结算的最大减伤量85%,再往后做的技能减伤就是无效的
2. x=0的时候y值不是1,而是0.6,它的意义是:当你魔法穿刺和魔伤减免持平,打不出100%的伤害,而是只能打出60%的伤害,这就是最近增加的40%技减PVP修正
horizontal linehorizontal line
2.3.7. 物理防御减伤
源码见下图:
TapTap
翻译成人话:防御减伤源码很多对理解无帮助的信息,所以我直接用红色框框画出重点内容,然后对重点内容进行解读帮助理解:
PVP环境中,限定防御%在-1~1之间(解读:看到这句所以大家注意,防御有自我限制,就算你做10000000%的防御%,最后PVP中用于减伤的部分也只有100%
PVP防御%=面板防御%+0.5×[1-sin(面板防御%×π/2)]
把PVP防御百分比收益画个图
TapTap
图片解释:主要有两个点,1. x(面板防御%)=0时,y(PVP防御%)=0.5,意思是你就算没有防御%,PVP也有50%修正。2. x(面板防御%)=1时,y(PVP防御%)=1。意思是你做100%防御,PVP也只有100%防御,到防御%上限了。
PVP修正=0.2
最终防御=防御力×(1+ PVP防御%-忽视物防+0.2)+体质×(1+1+体质百分比%)
最终防御不小于0
(解读:在这条源码之前,都是讲挨打方自己的防御计算,到这一条,就是正式有进攻方的破防加入了,可以看出,进攻方只要达到220,就可以彻底无视敌方防御%。但还没完,后面还跟了个尾巴,体质*2的防御,所以完全破开”防御要比220稍高一点,需要更多的破防把“防御力×(1+ PVP防御%-忽视物防+0.2)”变成负数,抵消体质*2带来的防御,这样才叫完全破开)
把最终防御再画个图,这里我假设基础防御是5000,防御百分比是100%,体质是400,给大家看看以破防和最终防御的关系。
TapTap
图片解释:其实就是跟前面公式解读内容差不多,只不过图片可能更直观,破防达到220%的时候,敌方防御%会被完全破掉,但是此时仍然存在体质*2的防御,因此需要继续做破防,把敌方防御%变成负数,抵消体质*2的防御,才能真正把防御破完。具体这个数字那就是不确定的了,公式里面我设置的防御是基础5000,百分比100%,所需要的破防就是236%,总之需要比220高一点点
防御减伤1=(4000+最终防御)/(4000+最终防御×10)
防御减伤2=1/(1+6×最终防御/敌方面板物攻)
防御减伤系数取防御减伤1和防御减伤2中数值更高的那个(其实就是更有利于进攻的那个)
把防御减伤-最终防御再画个图,直观看一下防御减伤到底咋样,由于防御减伤是量筒不同的计算下,取更高值,因此我把两个图画在一起,其中敌方攻击力我设置4万(后面只会比4万更高)
TapTap
TapTap
图片解读:可以看出,在10000防御~20000防御甚至更高的尺度下,都是第二种计算系数更高,以后攻击力越来越高,这个趋势会更加明显。物理这块,如果物攻有40000,就算0破防,让别人有10000防御没被破开,减伤也只有60%。很难达到别的减伤那样85%水平(为忽可怜默哀)。攻击力越高,防御带来的减伤越小。更别说别人还会做破防了。
防御是真的麻烦,最难写的一个,望大家看的舒服。
horizontal linehorizontal line
三. 结语
有人可能会说
TapTap
诶你还别说,就是这些数学公式能让我们知道怎么有效率的花钱,同时也能知道自己的终极搭配是什么,能更加有方向的设计配装。
由于时间关系,我暂时就更新这些项目,后面我再持续更新关于防御减伤、以及一些特殊技能(舍命、心灵真伤、生物爆炸等特殊伤害的计算)先到这里吧
评论116
只看作者
最热
TapTap
写下你的想法...
小船
在资源有限,任何一个属性都不溢出的情况下。从数学角度:
防御侧,建议主堆一项到接近溢出的水平,再去堆其他属性。
攻击测,建议均衡发展,争取每个乘区的净值都基本相近。
实操不好控制,因为不知道对面的数值,没法一套装备包打天下。需要根据对手切装备卡片。
诺诺妮娅
有后续,有后续,攻略得一步步来,你说的这一步,我已经实操了。做了个庞大的Excel用于计算的。还特地搜集了一些大佬的属性的
小船
6啊,这游戏这么凉了,还有这么真爱的攻略
全部 8 条回复
玩ro就是死路一条(**喵喵)
大佬你这边给出的元素减伤是58.9%,但是 我在另一个的大佬的帖子 他给出的是70%。我该信谁????
网页链接
诺诺妮娅
信我,因为后续有更新
玩ro就是死路一条(**喵喵)
大佬牛逼!这篇文章 没当攻略区第一名。我再也不看攻略了。
有没有条件像这个大佬一样,给每个阶段出一份 收益图。
全部 7 条回复
阿宝
不得攻略区第一以后就不上tap了
User366797654
说实话只有公式是无法知道提升方向的,真正高价值的是当前各主要职业的攻防数据
玩ro就是死路一条(**喵喵)
游戏是数据构成的。攻防数据 完全可以 靠 人工计算 得出。
全部 6 条回复
波比
ro的核心公式就是边际递减,也可以说木桶原理,因为边际递减,哪怕同一张卡,对于不同人之间收益都不会一样,但公式更多影响的是自身,知道怎么biu自己最低的那块木板,但在pvp上,了解公式收益未必就是高,因为你不知道对手的基底build是怎样的,外加减免上限已经从90降到85,在不清楚对手堆叠的进攻属性下,很容易让自己投资的防御资源溢出浪费
玩ro就是死路一条(**喵喵)
要不是我玩过PVP,就被你唬住了捏~~~防御资源很难溢出。举个简单的例子。一个状态全开140%穿刺的达纳托斯,你物减得超过210%物减 才能溢出。不管是 元素减 物魔减 还是 技减 体型减 都非常难溢出。重要的是了解公式,清楚知道 在面对哪个职业时 ,堆哪个减免 是“有收益的”和堆那个 减免是 “最有收益的”。一个减免属性 越是堆到 “极值” 堆到“极限” 收益就是越高的。
波比
如果按照你的理论,我246的物免溢出了多少?那么多字你就看到最后4个,论断章取义碰瓷的,舅服你了捏~~~~[表情_捂脸哭][表情_捂脸哭]
全部 6 条回复
鸽騎
好帖,没想到魔免要堆到顶竟然这么高
诺诺妮娅
唉,高人一等的魔法,是这样的,告诉你一个更可怕的消息,以前魔免减伤上限只有80%
鸽騎
现在大蛇的普攻增伤好像挺多的,你认为对抗大蛇的输出堆普攻减免有没效果?或者堆哪个属性会比较好?
全部 4 条回复
关于风的味道
能不能在每个属性加一下攻击方数值的临界值,辛苦了
诺诺妮娅
是指增伤上限?还是说对方做属性收益上限?
关于风的味道
对于有修正的数值,比如元素那里,能不能标注一下攻击方的元素增伤要超过防守方多少数值,才能达到100%的伤害,我这没电脑,算不出来😅
全部 4 条回复
温柔旧约
大佬。有个疑问,如果加入法术暴击的因素,那么在是不是应该在满足你上面所说高过对方技免,属性减免,魔免之后再考虑?法爆属性是不是最没用的属性?
诺诺妮娅
emmm,穿刺达标先,法爆这种打脆皮嘎嘎凶,打肉容易刮
温柔旧约
请问大佬,穿刺和破防如何取舍?pvp的话优先满足220破防还是110穿刺呢?
全部 3 条回复
爬坑4年载
请教一些问题,ro的pvp里伤害增减伤害是线性的么,比如说我做输出是极限追求一个好,还是水桶战术好。另外你的文章减伤有极限,比如物免,大于穿刺70%就能打到85%减伤极限,那么如果我穿刺很难突破70%以内,是不是应该完全放弃这一项,面对200物免的人,0-130穿刺,是没有区别的?
诺诺妮娅
第一个问题:不是线性
第二个文字:打200物免,0-130穿刺,一毛一样。理论上达不到,是不用管穿刺,但是你都被别人有一项减伤85%。伤害很难上去。所以这种情况,你已经等于被别人防住了。
爬坑4年载
新职业白星是各种属性都吃的杂食者,但基础很低,穿刺全身怼才120-130,但放弃穿刺怼其他的就会很高。属性减伤有上限,增伤有吗?
全部 4 条回复
z k、
破防怎么计算呢
诺诺妮娅
后面在补充吧,破防比较随意
诺诺妮娅
补充了物防的,魔防再慢慢来
全部 3 条回复
大盾
大佬您好,我想请问一下现在ro里的格挡是否跟敏捷有关系,还是各个职业的格挡都各不相同,因为老版本骑士的格挡就能受到敏捷的影响
诺诺妮娅
达达辉煌弟骑士的格挡有关,十字军和拉丝无关
大盾
谢谢大佬
64
117
116