0

职业专栏
关闭生成文章|
lingxuanxiao 关注 发布时间: 2017-04-14 最后更新: 2017-03-23 16570 7
打印
分享
倒序查看
lingxuanxiao 14 实名认证 认证玩家 1# 最后更新 2017-03-23
更多 回复(7)
本帖最后由 lingxuanxiao 于 2017-03-23 16:24 编辑

对花间技能改动带来的会心需求的一个非正式讨论


花千树 苏西寂


3月20日,剑网三官方YY8030召开了策划交流会,公布了日月凌空版本技能调整的初步方案。在方案说明中,策划对花间PVE进行了巨大的改动,包括快雪流的回归,对焚玉、踏歌、雪中行等重要奇穴进行了修改等。可以说,改动几乎重新调整了花间的输出循环。那么,这次调整会对花间带来多大的影响呢?我们不妨简单展望一下。
我们先来看一下有哪些技能改动:


1. 调换了第三层奇穴青歌和第四层奇穴列宿的位置
2. 焚玉调整为:【玉石俱焚】吞噬伤害效果,使【阳明指】【快雪时晴】伤害提高20%,持续5秒,每额外吞噬一个效果,持续时间增加5秒
3. 踏歌调整为:【快雪时晴】命中有自身持续伤害效果的目标,每次伤害有50%几率使下一次伤害立即生效
4. 清流调整为:【玉石俱焚】施展后使自身混元内功基础攻击力提高15%,持续18秒
5. 雪中行调整为:【阳明指】【快雪时晴】会心后刷新目标身上的所有混元持续伤害效果


可以说策划这次技能改动的核心是建立了以吞Dot和刷Dot为核心的玉石俱焚—快雪时晴输出流派。然而,注意到,焚玉奇穴需要通过玉石俱焚吞噬伤害效果生效,也就是说,我们需要保证在每个循环阶段结束的时候主目标身上的三个Dot至少各剩余1跳,否则就需要在循环中额外的进行补Dot的操作。补Dot的操作不仅增加了我们操作的复杂度,降低了操作手感,同时也降低了我们的DPS。因此,如何搭配合适的会心,以至于能够让我们:

1. 尽可能的保证在一个循环中不断Dot
2. 在一个循环结束的时候尽可能的保证让Dot的剩余跳数在某个值以上

注意到,如果只考虑Dot剩余跳数的话,按照玉石快雪流的机制描述,快雪每一跳都有50%的概率吞掉一跳Dot,会心后刷新Dot。也就是说,如果快雪触发了上述效果,会在Dot生效前直接改变Dot的跳数。需要注意的是,通常情况下,改变Dot跳数的行为同时附带刷新Dot距离下一跳的生效时间。进而,在假定会心几率为φ的情况下,我们有连续n次快雪均不刷新Dot下一跳生效时间的概率为:((1-φ)/2)^n. 进而,考虑到青歌快雪每跳10帧,在计算梦歌奇穴下满加速需要249加速等级,大约对应雪河衣服给出的加速数值(具体参见加速宝典和配装器),此时各技能生效时间如下:

1.5s(24帧)模版的技能(阳明指、钟林毓秀、兰摧玉折、技能公共CD)变为1.3125s(21帧)
3s(48帧)模版的技能(Dot生效间隔)变为2.6875s(43帧)
0.625s(10帧)模版的技能(快雪时晴每跳)变为0.5s(8帧)

注意到,玉石快雪流的输出依然是以技能循环为主,循环开始阶段使用玉石俱焚吞噬三种Dot并补足三种Dot,而后通过快雪时晴不断的对Dot进行刷新或使其生效,直到下一个技能循环。取一个玉石俱焚的CD时间作为单个循环时间长度的下限,取焚玉Buff或清流Buff持续时间作为单个循环时间长度的上限。需要注意的是,本次技能改动并未改动第八层奇穴,也就是说,旋落(玉石俱焚CD每吞噬一个持续伤害效果CD减少1.5s)和雪弃(单目标情况下快雪时晴伤害提高20%)仍然存在冲突。假定所有的玉石都吞噬了三个Dot,进而在选择旋落的情况下,一个玉石俱焚的CD时间是12.5s(200帧),选择雪弃的情况下,一个玉石俱焚的CD时间是17s(272帧),焚玉持续时间为15s(240帧),清流持续时间为18s(288帧)。

考虑一个正常的循环过程中,玉石俱焚、兰摧玉折、商阳指、阳明指四个技能固定需要占去循环开始的84帧,因此可以留给快雪的时间分别为116帧\~156帧(旋落玉石,保焚玉)和188帧\~204帧(雪弃玉石,只保清流),考虑到快雪每跳需要8帧的时间,因此一个循环中快雪的跳数最少为15跳(旋落玉石),最多为25跳(清流)。同时,注意到在一个Dot生效间隔(43帧)中,至少可以打5跳快雪,进一步考虑到弹指奇穴的效果以及帽子鞋子的附魔和五彩石,快雪的实际会心几率至少为13%,在一个Dot生效间隔内,快雪没有刷新Dot的生效间隔的概率至多为0.0156。因此,我们可以近似地忽略Dot随时间流逝的丢失掉的跳数,将某次快雪命中目标后目标身上余下的Dot跳数视作一个齐次马氏链(在此情况下快雪命中目标后目标身上余下的Dot跳数仅由命中瞬间目标身上余下的Dot跳数决定,这显然是一个马氏过程)。

对于万花而言,三个Dot效果均为3s生效,共7跳(含秘籍)的基本模型,因此该马氏链的状态空间为S = {0, 1, 2, 3, 4, 5, 6, 7}。注意到快雪命中目标后会进行两次判定,一次是是否使下一跳Dot立即生效,另一次是是否刷新Dot跳数,二者的先后顺序也会影响余下Dot跳数的变化规律。假定会心率为φ,在生效优先的情况下,该马氏链的转移矩阵为:

P = ┌ 1    0       0       0       0       0       0       0       ┐
    | 1/2  (1-φ)/2 0       0       0       0       0       φ/2     |
    | 0    (1-φ)/2 (1-φ)/2 0       0       0       0       φ       |
    | 0    0       (1-φ)/2 (1-φ)/2 0       0       0       φ       |
    | 0    0       0       (1-φ)/2 (1-φ)/2 0       0       φ       |
    | 0    0       0       0       (1-φ)/2 (1-φ)/2 0       φ       |
    | 0    0       0       0       0       (1-φ)/2 (1-φ)/2 φ       |
    └ 0    0       0       0       0       0       (1-φ)/2 (1+φ)/2 ┘
        
而在刷新优先的情况下,该马氏链的转移矩阵为:

P = ┌ 1       0       0       0       0       0       0     0   ┐
    | (1-φ)/2 (1-φ)/2 0       0       0       0       φ/2   φ/2 |
    | 0       (1-φ)/2 (1-φ)/2 0       0       0       φ/2   φ/2 |
    | 0       0       (1-φ)/2 (1-φ)/2 0       0       φ/2   φ/2 |
    | 0       0       0       (1-φ)/2 (1-φ)/2 0       φ/2   φ/2 |
    | 0       0       0       0       (1-φ)/2 (1-φ)/2 φ/2   φ/2 |
    | 0       0       0       0       0       (1-φ)/2 1/2   φ/2 |
    └ 0       0       0       0       0       0       1/2   1/2 ┘
        
至此,问题演变为了给定转移矩阵的情况下,求马氏链的N步转移矩阵。由Chapman-Kolmogorov方程,我们有N步转移矩阵P(N) = P(1)^N。

另一方面,注意到在一个循环开始的时候,三个Dot的时间轴是不齐的,其中有的Dot会提前跳一次伤害,也就是说,该马氏链的初始分布设定为Φ = (0, 0, 0, 0, 0, 0, 1, 0)较为合理。即在此情况下才能尽可能保证在一个循环的过程中不断Dot。

基于上述理论,我们可以给出一个循环中断Dot的概率p(6→0) = P(n)(6→0) = P^n(6→0),其中n是一个循环中快雪时晴的跳数。

基于此,我们编写了求一个循环后主目标身上Dot剩余跳数的分布的函数(源代码参见附录部分)。计算了在15跳(旋落玉石CD)和24跳(玉石CD)情况下中断Dot的概率,如下图所示。注意到,给定会心等级情况下,影响断Dot概率的主要因素仍然是输出循环的长度(究竟是15跳快雪还是24跳快雪)而不是刷新与吞噬的判定顺序,但是这种差异随着会心的提高而减小。技能实际会心几率(计算包括奇穴与秘籍在内的所有增益效果)达到30%时,选择旋落玉石基本上可以保证循环完整结束,达到35%时,选择普通玉石基本上可以保证循环完整结束,达到50%甚至更高时,是否选择旋落已经不再重要,基本都可以保障循环的完整性。

以上就是讨论的主要内容。从上述结论中,我们似乎可以得到一个耐人寻味的推论:第八层奇穴选择旋落可以带来完整的焚玉覆盖,更加灵活的玉石(因为CD相比增益持续时间更短,可以更加灵活的选择释放玉石的时机)和尽量保证循环完整的情况下更低的会心需求,而选择雪弃则可以带来更高的快雪时晴技能本身的伤害(但是具体选择哪个更高我也不知道Orz,感觉上是雪弃。。。吧。。。但是会心不够断Dot产生的补Dot损失也要算,有兴趣的同门自己算着玩吧反正我是不想算了)。当然,我们可以展(Y)望(Y),如果数值设计得当,在该技改模型下,第八层奇穴旋落/雪弃的选择有可能会催生出玉石快雪流下基于两种不同输出思路(通过优质玉石吞噬Dot还是通过快雪时晴本身)而产生的两个细分流派和各自的配装方式。(不管你信不信反正我不信,我觉得多半是策划没想好怎么处理旋落和雪弃的关系,把青歌和束发放到一起也是,虽然这样解放了风烟翠从而让花间真正实现了近距离三目标以下的0损失转火,但是。。。我还是觉得是策划没完整对玉石快雪流进行一个足够精致的设计。另外,技改后花间对于会心的需求变得更重了,毕竟阳明流会心影响的主要还是输出,但是玉石快雪流会心已经以一个可见的概率影响到了循环,然而在奇穴/秘籍中对快雪的会心加成相较于阳明少了至少15%,所以。。。我们变得比以前更吃会心。。。了。。。【以及讲道理策划是故意的吧,加上清流。。。是引导我们穿无体会心精简的节奏么】)


附:循环结束后Dot剩余跳数分布计算函数,Dot_effect是先生效模型,Dot_renew是先刷新模型,x传入会心几率(小数而非百分数),Hits传入一个循环中有多少跳快雪,Begin传入打第一跳快雪之前Dot还余下多少跳,函数返回分布列,依次为余下0跳~余下7跳的概率,计算平台是R。


  1. Dot_effect = function(x, Hits, Begin = 6){
  2.   P = matrix(0, 8, 8)
  3.   for(i in 3:7){P[i, i-1] = (1-x)/2; P[i, i] = (1-x)/2; P[i, 8] = x}
  4.   P[1, 1] = 1
  5.   P[8, 7] = (1-x)/2; P[8, 8] = (1+x)/2
  6.   P[2, 1] = 0.5; P[2, 2] = (1-x)/2; P[2, 8] = x/2
  7.   Q = P; P = diag(8)
  8.   for(i in 1:Hits){P = P %*% Q}
  9.   return(P[Begin+1, ])
  10. }

  11. Dot_renew = function(x, Hits, Begin = 6){
  12.   P = matrix(0, 8, 8)
  13.   for(i in 2:6){P[i, i-1] = (1-x)/2; P[i, i] = (1-x)/2; P[i, 7] = x/2; P[i, 8] = x/2}
  14.   P[1, 1] = 1
  15.   P[7, 6] = (1-x)/2; P[7, 7] = 1/2; P[7, 8] = x/2
  16.   P[8, 7] = 1/2; P[8, 8] = 1/2
  17.   Q = P; P = diag(8)
  18.   for(i in 1:Hits){P = P %*% Q}
  19.   return(P[Begin+1, ])
  20. }
复制代码


最后吐槽一下某度

讲道理这些内容都能“涉及敏感话题和敏感人物”的话我的毕业论文就不要写了。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册  

x

评分

参与人数 2米币 +100 水晶 +5 收起 理由
lqf96811 + 100 太厉害了
浮烟 + 5 感谢分享!

查看全部评分

点击开关回复楼层
heehawhee 11 3# 发布于 2017-03-24
更多 回复
感谢LZ!刚回归看到花间PVE如此颓势真是不是滋味,还好策划有点良心。。。。
TILAMISUMQ 10 4# 发布于 2017-03-24
更多 回复
尊的谢谢楼主,我已经pve没门票一个赛季了
kagome212 13 5# 发布于 2017-03-24
更多 回复
看的一脸懵逼。。给数据流大大献花
PEIMA 12 6# 发布于 2017-04-08
更多 回复
虽然我看不明白。但是好厉害的样子
萌新新 11 8# 发布于 2017-04-14
更多 回复
大佬~请问方便留一下联系方式么~萌新求拜师~
没有更多了
请先登录

试一试@用户名 立即召唤神龙 小伙伴会收到通知喔:)无需加好友即可通知到

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则


您当前使用的浏览器版本过低,网站部分功能可能失效,请更换合适的浏览器。了解更多