Seml 坐标分布测定的花式玩法
 
Notifications
Clear all

Seml 坐标分布测定的花式玩法


水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

Seml 坐标分布测定真力大无穷也,以本帖存放笔者使用的方法以及测定的数据。

9 Replies
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

一、撑杆

撑杆数据已经在《白昼单冰守全场二则——DE. 春离与 PE. 海浪》和《FE. 纪念柯林版 FE20 二十炮》里记载过( https://forum.pvz1.com/postid/9195/https://forum.pvz1.com/postid/9196/ ),这里为了可读性复制粘贴过来。

Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

a) 17 s 级冰波撑杆炮伤

Leon 曾算得撑杆跳 9 普啃 8 炮无伤的极限波长为 1671(cv48158754)。这里给出由 Seml 坐标分布测试算得的长于这一波长的撑杆炮伤期望值,场景为每条路都长期存在 9 普 8 炮,每波 5 杆。

从 1472 起,每 8 cs 都有新的期望炮伤增加,而每一个 8k cs 新增的期望炮伤等于 (8k - 1) cs 时刻撑杆到达 590 坐标的累积概率乘 4(一次啃食的伤害)乘 5(每波撑杆的数量)。由期望的线性性,每一个 8k cs 的累积期望炮伤就是从 1472 到 8k cs 每个 8m cs 的新增期望炮伤之和。测试使用的 Seml 脚本如下。

scene:PE
types:pole
repeat:200000
targetPos:590
protect:19' 29' 59' 69'

w 0 1537

测得的到达率-炮伤数据如下。

image

对应成常用波长则是 1672 波撑杆炮伤 0.00002,1685 波撑杆炮伤 0.001,1711 波撑杆炮伤 0.11,1738 波撑杆炮伤 1.52。这也印证了这种长度的冰波下炮伤来源主要是梯丑而非撑杆。

Reply
1 Reply
水花七炮
(@shui-hua-qi-pao)
Joined: 4 years ago

复合运算
Posts: 149

以上数据为 1 冰。下面补充 11 冰、12 冰、96 冰的数据。测试脚本同上,最后一行分别改为了 wave 10 1537、wave 11 1537、wave 95 1537。

image
image
image
Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

b) 过炮撑杆炮伤

空炸收过炮撑杆的操作在柯林版 FE20 被广泛使用,这里测定其炮伤。方法同我在《DE. 春离与 PE. 海浪》里给出的,略,只给出 Seml 脚本与最终数据。

scene:PE
types:pole
repeat:200000
targetPos:430
protect:18 28 58 68

w 1202
image

最早的 225 P 332 D 的全场炮伤是 13.5,原阵用了四次,算得 2F 前置炮炮伤为 13.5*4=54。

此外,还有一种常见的操作为热过渡收过炮撑杆,在铃仙版 FE18 等阵中被用到。这里也给出其炮伤。

scene:PE
types:pole
repeat:200000
targetPos:430
protect:18 28 58 68

w 659 1202
image

炮等效 58 冰时,有最快巨人时热过渡最早时机为 433,这种情况下单波全场前置炮炮伤为 1.84。

Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

二、海豚

完美冰下,海豚在有水路八列植物时在 1184 之后的坐标分布分为两层:一层为 499 或 500,代表已经跳过炮;另一层为 593 以上,代表还在跳炮中或者未跳炮。这里给出一个 1 冰 1207 cs 时的数据作为示例。

scene:PE
types:dolp
repeat:200000
protect:38 48

w 0 1207
image

《二些无所谓的琐事》告诉我们,激活炮炸实的话是收不了已经跳过炮的海豚的。这一点有关的阵型为集萃 #30 非拦截守全 9 炮:原阵用了 11 个 1407 冰波,也就是有 55 只有潜在威胁的海豚,所有激活炮都能够炸实的概率只有 (1-0.007697)^55 = 0.654,也就是说有 34.6% 的可能 2F 至少有一个 1407 波需要半边炸虚激活,事实上原阵的脚本就是波波双边炸虚激活的。此外,用《一、撑杆》同样的方法测得每波水路两门炮的总炮伤为 0.084,11 波的总水路炮伤即为 0.084*11 = 0.92,符合原阵简介下“1407冰波海豚有极小炮损”的描述。

Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

三、跳跳

与 Seml 跳跳测定不同,Seml 坐标分布的跳跳是会与垫材、炮炸等交互的,因此适用很多更复杂的情况。一个例子是卡相位两炮收前院上行跳跳,以渐强的无冰瓜十六炮( https://tieba.baidu.com/p/7387341155 )为例:原阵为差 110 的两炮相位收跳跳,Seml 脚本如下。

scene:DE
types:pogo
repeat:20000

w 601
PP 249 24 9
P 359 2 9

测得跳跳存活率为 0.00%,也就是说这一操作确实能够全收跳跳。如果把延迟缩短到 107,则不再能够全收跳跳,Seml 脚本如下。

scene:DE
types:pogo
repeat:20000

w 601
PP 252 24 9
P 359 2 9

测得跳跳存活率为 0.22%,无法全收跳跳。值得注意的是,跳跳的存活率是量子化的,因为游戏中只有 3200 种跳跳僵尸;因此,最小的正跳跳存活率为 1/3200 = 0.03125%,而测出来 0.00% 的存活率可以认为即是严谨的不会漏跳跳。

除去炮炸以外,还有一种可以测定的操作为垫材垫跳跳。例如纯二十炮( https://www.bilibili.com/video/BV1n54y1V7Tq ),长波的操作见下。

scene:PE
types:pogo
repeat:20000

w 752
C 170~250 1 9
PP 552 25 8.375

测得跳跳存活率为 0.00%,因此能够严谨全收跳跳。

Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

四、分离

有一种需求是“分离一部分 x < x_0 的僵尸后查看剩余僵尸的最快坐标”。由于 Seml 坐标分布可以与炮炸交互,这也可以测定这种需求。例如,要想知道 I3Pd 后无垫扶梯不啃 8 炮的极限波长,可以写 Seml 脚本如下。

scene:PE
types:ladd
repeat:200000
targetPos:629

w 10 1800
PP 579 25 9

测得时刻 min 为 1244,对应 1248 啃炮,极限波长为 1447。不过,Seml 在这种场景的随机误差较大,例如也测出过时刻 min 为 1248 的数据,对应的极限波长长了 8 cs;如果多次测定得出的时刻 min 数据不吻合,宜认为此方法并不绝对严谨。此外,也可以测定小丑的数据,Seml 脚本如下。

scene:PE
types:jack
repeat:200000
targetPos:689

w 10 1800
PP 579 25 9

测得时刻 min 为 992,两次测定的结果吻合,可以认为数据较为可靠。这对应 I3Pd 无垫小丑不炸 8 炮的极限波长为 1301。

Reply
1 Reply
水花七炮
(@shui-hua-qi-pao)
Joined: 4 years ago

复合运算
Posts: 149

打假本层楼。由于通常真正的极端值是无法测定的,Seml 坐标测定的时刻 min 不能作为严谨的硬极限波长使用,而若讨论软波长则这里的时刻 min 也并没有意义,有意义的反而是各个时刻的到达率,所以这种数据仅能作为参考。作为参考,一次 repeat:200000 的小丑完美冰无垫到达炸 8 炮的位置的时刻 min 为 945,比二些无所谓的琐事中给出的 929 足足晚了十几 cs。

Reply
水花七炮
Posts: 149
Topic starter
(@shui-hua-qi-pao)
复合运算
Joined: 4 years ago

五、总结

Seml 坐标分布测定力大无穷,其结合了 Seml 模拟真实游戏的优势和惊人的效率,可以在有实战意义的分段行进、分离、有垫坐标测定等较复杂场景中使用(相对于分布计算器等较局限在单段坐标测定的坐标测定工具),同时能够快速给出大样本的数据(相对于 Overwatch 等较慢的工具),有很大的实战意义。例如,本文《一、撑杆》中的数据靠朴素数学假设和计算会给出偏差巨大的结果,而 Overwatch 甚至难以测出任何撑杆炮伤,但 Seml 坐标分布测定能够简便快捷地得到高质量的数据,足以证明其很大的实用价值。

完。

Reply
Scroll to Top
en_USEnglish
Powered by TranslatePress »