oHPS
模拟器实验的核心在于为每个手法设计AI与技能轴(因为人类连续多次操作难以完全复刻),而这需要一种“对比手法优劣”的方式。
模拟器中提供了稳定的伤害能力,所以仅用“有效HPS”往往难以区分手法的上限,因为“治疗的上限就是伤害”,等于说只要没有重伤,大家的治疗数值就都差不多,那就完全不可比了。
而解决的方式也很简单,只要把过量的部分也计算进去即可。
一个直观的例子是:假设治疗时机和目标相同,对于两个人,一个人能奶50000,一个人能奶100000,而副本伤害只有30000,那两者的有效部分都是30000,没有差别;但是,如果计算过量的部分,后者就比前者高了。而假设高难度副本伤害是80000,那么后者可以通过而前者会失败,就说明这两者确实有差距。
也就是说,oHPS是一种“反映上限”的方式。它可以体现固定时间内的治疗潜力。
在具体处理上,oHPS还有一些其它细节:
- 对于减伤,oHPS会把“减伤生效的部分”计入统计。这是很关键的:减伤避免的实际掉血,同样减轻了治疗负担。它当然应该被计入统计。
- 对于化解,oHPS会尝试把“实际生效的化解值”计入统计。如果盾值没有生效,那么就不计入统计了。
- 对于治疗吸收,oHPS会正常计算吸收的治疗量——其实完全没有任何差别,因为oHPS本来就统计过量。
- 对于龙葵,benchmark会计入实际产生的化解;自苦的产生和到期目前不另记负分或返还,其治疗吸收在血线中结算。
- 对于“梅花三弄导致的盾值填充”,oHPS只记录每次实际新增的原生盾值中被消耗的部分——实际上,如果梅花三弄被填充,那这些“填充用的过量治疗”已经被oHPS统计一次了,直接按这些来源计算就行了。
总之,oHPS的意图在于:不重不漏地计算所有收益。这会是我们的两大实验指标之一。
M50
oHPS的缺陷在于:它把治疗当成了纯粹刷治疗量,而不是保证不出现重伤。为了提高oHPS,玩家可能会对着满血的团队消耗资源以防止“空转cd”,或者把所有爆发开在一起从而“提高叠乘收益”,这很显然是不利于通关的。
为了解决这个问题,我们使用一套略微复杂的方式:
第一步:在模拟器中选取12个随机种子,重复相同的实验12次。在不同的种子下,技能是否会心、多目标技能选取的方式都会有所不同。
第二步:固定每个人的伤害、施法和选目时间线,对受测者及其宠物的普通治疗和治疗系数护盾乘以K;固定治疗、减伤和伤害保持原值。
第三步:遍历预先设定的倍率网格,找到从该点到网格上限都能通过的最低K值。生存场景要求全员不重伤;血池场景则要求达到规定的终局血量。
第四步:将12个K值从小到大排列,取第6个值作为M50,表示至少半数样本达到的持续通过门槛。M50越低,所需的治疗强度越低。
M50的思路来源于:即使伤害环境的压力不足,区分治疗手法的优劣依然是有意义的,因为更好的治疗手法可以“在更低的治疗强度下通过”,这显然是一个收益点。因此,找“系数K”的过程,实际上就是在看一个手法的“治疗强度下限”在什么地方。
这里采用12个独立随机种子。按K值排序后,第3至第10顺位构成中位数的95%置信区间,实际最低覆盖率约为96.14%。
需要注意的是,实验中用的benchmark是一种“极限测试”,它的目的不是通关,而是对不同手法/配装/奇穴/心法进行比较。M50是一个经验中更能找出“最大潜能”的方式,它既要求进行无上限地调优,又鼓励进行有风险但有收益的选择。
一个最常见的误区是“因为治疗心法不接受风险,所以要100%的成功率”:首先,即使零失败,要以95%的单侧置信下界确认成功率至少为95%,也需要59次独立实验,计算成本明显增加;其次,这会导致选出一些“过于保守”的方案,“多目标但非全团”类的技能收益大打折扣;最后,实战中多心法配合还会改变风险分布。绝对不能把M50理解为“最优手法只要保证一半情况不团灭就行了”,因为M50衡量的是调整治疗倍率后的门槛,原倍率下的通过情况应看倍率1的结果。
M50可以调优出“更贴合实际、更有团队贡献的手法”,但是其数值本身不直观,并且与战斗相关性很大,也很难做有效的对比。因此,我们的研究中会以M50作为“选择手法的依据”,而衡量的方式则是oHPS为主,M50为辅。
模拟器benchmark介绍
模拟器中定义了一些“单奶”的场景,这可以作为benchmark,用来衡量特定手法的表现。
这些benchmark包含的场景比较全面,所以对于“在一些场景有额外优势”的手法,也有机会表现出来。接下来我们会依次介绍这些场景。
需要注意的是:这些场景的benchmark模式中,角色血量为0时不会重伤,而是继续按负血计算,这是为了避免提前重伤中断实验,同时便于在固定事件上测试M50。
每个benchmark同时也是BOSS,对玩家来说也可以当成是检验自己能力的方式。下面的链接可以进入模拟器,体验对应的伤害模型。当前进入大厅后仍需手动选择场景;链接已预留场景标识,供模拟器更新后自动选择。
对于进阶玩家,想要复现实验的话,就需要用到模拟器的本地模式。在这种场景下,可以用AI来复刻benchmark中的结果,从而验证AI的操作是否有问题;也可以按照手册,复现实验结果,甚至发现更好的手法。
以下入口对应当前登记的13个benchmark。苍生50级内测房间可选择Benchmark难度;普通体验可选单人或Solo。尚未上线的场景随模拟器版本开放。
池清川
池清川的模型为“更低的血量上限”和“伤害按时间递增”。
这是一个以游戏中原本模型为基础的BOSS(伤害有所调整),实际上,整个130级副本中,可以说只有池清川才有治疗压力,这也是对其复刻的原因。
这两个特点其实都很值得展开:
更低的血量上限
实际上,在“治疗压力”相同的情况下,血量上限降低其实也意味着伤害更低,但其难点变得完全不同。这其中的核心在于“治疗定数”的改变(前面的章节中有所提到)。
低血量上限意味着治疗定数更低,这时意味着更低的容错与反应时间,每个技能前后1-2秒的差别就足以改变结果。
与之对应,如果治疗定数更高,则考验将转为“运营”,玩家需要组合手中的资源以达到最大收益,而操作细节则影响没有那么大。
这两者各有难点,而池清川选择了前者。
伤害按时间递增
也被称作“软狂暴”。对于玩家来说,需要“留资源应对后面”,而在前期使用小技能稳住团血。
在普通单人模式中,战斗时长还取决于DPS,更好的治疗排轴能为后段争取时间;这里的benchmark则固定为72秒,便于比较。
许灵素
许灵素的模型是“间隔时间的AOE+DOT”和“血量较低时触发伤害加深”。
后者是一个很适合出现在游戏中的伤害模型,但也少有出现。这实际上是在要求在“快速奶满消耗资源并改变手法”和“接受更高伤害的DOT”之间进行选择。
司徒一一
司徒一一分为两个阶段,前半部分会“选择血量较高的若干人造成伤害”,后半部分会“选择血量较低的若干人造成伤害”。这两阶段分成了两个不同的benchmark,而玩家的挑战则需要连续进行。
“选择血量较高的若干人造成伤害”是一个鼓励玩家尽可能多刷血,无须担心目标分配不均的模型,游戏中几乎没有出现过。这个模型下的治疗溢出会很少,当然伤害也很高,可以体验“团血崩溃”的应对方式。
“选择血量较少的若干人造成伤害”则比较微妙,更偏向单加模型。并且,这个模型下一定程度的“控血”是有必要的,这样可以保证目标不切换。
庄方宜
庄方宜是一个压力更大、时间更长的模型,且明显更依赖排轴。其P3有一个“血量越少则受治疗越高”的模型,对一些团队大加的安排有额外收益。
在benchmark中,移除了“P1转P2的血量检测”。
演武机关
演武机关把不同治疗压力拆成独立课题,当前有8个benchmark。这些场景尽量选择了一些游戏中常见的环境。
这些环境本身是作为“新手教学”而设计的,详见对应的章节。这里也不对其做展开介绍。
登录后参与讨论,也可以选中文字发起划线评论。
登录