crescendo吧 关注:122贴子:1,799
  • 11回复贴,共1

FE18守全的前生今世

取消只看楼主收藏回复

既然完结了那就做个简单的总结


IP属地:美国1楼2021-07-18 03:43回复
    超多炮阵向来是,如果单看最终结果,那么往往无比简单、清晰、易懂——然而要得到这个结果,走的路却总是曲折不堪的。
    【史前】
    也不知道从哪里说起,简单起见,我接手前的所有历史都笼统地称”史前“吧。
    最早的FE24有三个版本。第一个是极限版,打双核P6,作者码字帝。之后冰冰首发了一个双冰非极限版——简单来说就是连续两次ice2。然后是码字帝的一个“广为流传”的ice3版,其实这和之前冰冰的版本并无本质区别,只是在数据不精确的时代,没有有力方法论证两次ice2是否严谨。事实上当时连一次解冻二次解冻都还没完全搞明白。
    进入冰·惠时代,工作重点似乎被放在了攻克其他场地的最多炮上,FE则成了阿卡林似的存在——除了一个用单冰C6u变奏优化经济的FE24外,没再有什么产出。当然,这也有可能是受技术限制,没能解出22炮守全。不妨再提一句,胡后来打的FE24,几乎和当年这个单冰C6u是没什么区别的,只是加了BPSD免去一个樱桃而已,这个节奏其实是早已有之。而现在我们也知道,连续PDc需要以炮损兑换砸率,且有热过渡分离导致刷新的问题,并非FE24的优解——但这是后话了。
    过了无数年,大概19年柯林打过一个FE20炮守全,节奏是C8u,似乎有炮损,或者是有什么其他问题,我也记不清了。20炮解这个并不难,不提也罢。


    IP属地:美国2楼2021-07-18 03:53
    回复
      【接手】
      今年年初,FE18守全有两个主要版本,具体细节如下。
      1. 柯林版间C7u,减速波后连续两次精舞,精舞有伤,且最后一个加速波有砸率。需要位移铲种,从而也就需要玉米当垫材。不要小瞧这一点,因为间C7u每一波都是弱压制,也就是说冰波总有加速波巨人残留,因为要垫梯子不可能秒铲,但它如果出个黄油?别想拦截了,下次录制见。
      2. QED版邻C7u,减速PDD凑波长,冰波拉到了1714之长;这也很好理解,200+1714+601+601+359 = 3475,这样的话最后一个加速波精舞正好接上。但问题同样很明显:1. 减速PDD波并不能拖这么久;2. 即便是极红,晚冰分离再加炸海豚分离炮是非常有可能意外刷新的。另外连续加速波里,下半场用了连续PDc,在当时还没有智能脚本的环境下,可以认为同样是有砸率。


      IP属地:美国3楼2021-07-18 04:00
      回复
        其实除此之外,还有一些比较小众的版本,比如珍宝的大海之类的,但那个实在是比较迷……最后一个加速波用到了664,甚至还是个非定态激活,但虽然用了664冰波却拖得特别长(疑似因为没有使用减速PDD)。关于砸率、炮损等方面,我实在没有仔细研究过,也无法评价了,但应该是不怎么稳定的,大概跟上面两个版本差不多。


        IP属地:美国4楼2021-07-18 04:06
        回复
          【转机】
          第一个转机是今年4/10,也就是我打的FE大海。其实现在看来,即使以一般标准衡量,这个解的节操也并不能称之为很高——比如1685的减速PDD波只有一组垫材,要前后垫两次,靠智能脚本减小炮损;以及减速PDD+海豚分离,导致的意外刷新问题只能锁波长解决;包括第二循环的第一冰波有砸率等。
          然而瑕不掩瑜,这个解确实又有不少扎扎实实的突破的地方。首先是确立了“复用片段”的概念——当然,当时还没这么清晰,但是类似“第一冰波的激活炮是最难复用”的思想已经有了。既然难复用,那就拉满最后一个加速波的激活时机,越晚越好。于是你就得到了195垫舞王,388激活的办法。这个东西算是我首创的没啥问题,或者说至少我是第一个广泛使用的。精舞的359虽然已经很晚了,但是事实证明388或者说392(需要使用普通垫材),才是真正的极限。由此,可以逆推得到第二冰波只需要拖到1685,那么1714冰波带来的炮损问题就很大程度上缓解了。
          同时,为了消除连续PDc的砸率,我当时把第二加速波直接排成了PSD——在这个运算量稀缺的阵,似乎这样的做法很奢侈,然而事实证明是可以做到的。一共18门炮,第一冰波PPDDDD用6门,第二冰波B+PPDD用5门,剩下7门,配上核武+樱桃,一共10个运算量,正好是PPDD | PPSSDD两波。当然,现在这样数是轻松,实际要弄出来又是废了不少功夫。但无论如何,至少PDc砸率的问题也被解决了。
          另外,在这个过程中也发现了一个意外的事情,也就是蓝冰作为垫材使用。当时我还没有意识到加速波接冰波时必须垫两次,如果加速波不垫只在冰波垫则必定会被砸;但是我发现因为2路是分离炮,垫材释放时机特别晚,如果加速波不垫则冰波必然会砸。但是由于4个垫才都用在前面垫舞王了,最后一个加速波已垫无可垫。几乎绝望的情况下,发现卡槽里就带着一个天然的垫才——也就是蓝冰。蓝冰放在2路,完美解决了2路巨人砸炮的问题(当然,其他几路实际上是放羊了,233)


          IP属地:美国5楼2021-07-18 04:16
          回复
            【切换】
            尽管有不少亮眼的地方,但整体而言这个邻C7u解的完成度并不高——虽然和QED解相比的话,冰波缩短了许多,砸炮问题也得到了一定改善,但这还远远不够。单就第二冰波不得不用锁定波长这个作弊功能,就已无法令人满意,毕竟极红的密度已经是非常弱了,连极红都会意外刷新的东西可想而知是有多不稳定。
            此时,QED跟我说FE18还有另一个间C7u的铲种解,没有意外刷新的问题。这也就是上面提到的柯林间C7u版。同时,QED跟我说柯林应该已经把所有的参数7解都试过了——现在想想这句话也太不靠谱了(
            研究完那个视频,我意识到的第一件事情是:这个节奏不需要铲种。理由也很简单:前面邻C7u是PD|PSD|PD,你这里打的是PD|PD|PD(前两个PD里夹杂一个冰波),显然少用了两炮,那么正好用来造成错位复用缩短冰波波长,怎么会需要铲种呢?换句话说,考虑炮的奇偶性,冰波炸海豚炮是1炮,和樱桃正好成对,那么位移铲种多出来的这一炮显然是没用的。
            事实证明这个铲种还真是没用的……根本就不需要铲。于是4月15我发布了一个间C7u的视频,里面主要做了两处优化:1. 把铲种去了,樱桃用辣椒保护;2. 加速波精舞改成无伤。
            后者非常简单,只要你知道4cs和8cs结算一次啃食的那个机制,马上就能弄懂,此处不作赘述。


            IP属地:美国6楼2021-07-18 04:24
            回复
              【探索】
              到这里我明白了一件事,那就是相信别人还不如相信自己,别人的东西真的不一定靠谱。
              过了几天,我意识到由于冰波3路炸实了2路巨人,所以不会留下残留三血红。因此,可以直接在之后的波次用2路樱桃,作为精舞的P使用,不会带来任何问题。于是辣椒就这样被去掉了,多余的卡槽数量从4变为5。
              此处还有一个小插曲。其实之前几个月,小e就一直在说关于炮拦下行小鬼判定范围极大的事情。事实证明也确实如此,虽然无法广泛运用,但像这里,3路B炸的2路巨人投的小鬼,用1路的激活炮拦,就符合这个场景。完美冰下,海豚最早跳炮是1185,那么如果B要炸实,就要1184生效。为了后一波精舞无伤,减速波要拖到1637,也就是1437激活,1437-1185 = 252,好像怎么看都无法拦截吧…… 然而,它的确是能的(实际上最多可以delay264)。这就叫不算不知道, 一算吓一跳。实际上柯林版里用的是一个很晚的有伤的B时机,估计是怕拦截不到,其实是大可不必。


              IP属地:美国7楼2021-07-18 04:31
              回复
                【困惑】
                至此,FE18守全的绝大部分问题都已经解决了。
                用简单的话来说:
                1. 彻底放弃邻C7u,只有间C7u有前途
                2. 无需铲种,无需辣椒,冰波炸海豚炮没有炮损,精舞也没有炮损
                但还有一小片乌云,那就是砸率。
                当时的垫材逻辑是冰波过后,第一个加速波359激活,360放垫才,之后第二个加速波同样是精舞,359激活,此处510放垫才。通过连续精舞,保证撑杆在本波就被消灭,从而实现更自由的垫材方式。
                当然,这只是设想而已。事实也很残酷:冰波的巨人在第二加速波才被消灭,而期间只被垫过一次。好巧不巧,第二加速波也是个精舞,359这个超晚的激活时机就导致巨人不可避免会砸炮。
                到底如何解决这个问题?其实当时并没有想到办法,但想到了一个折衷之策。既然精舞会砸,那么改成PDc不就行了?复用炮的D大概432恢复,那么就308激活(尽可能拖得早),然后432拦截,之后垫撑杆,这样就没有砸率了。
                这个方法的确是可行的。但这毕竟是折衷之策——如果要把撑杆冰在炮前,必须要420前放垫。但上一波是360放垫,CD要510才好,因此就无法做到对撑杆无伤了。诚然炮损并不大,而且理论上只有出现特别快的巨人时才有必要PDc,其他情况下照常精舞就行(甚至足够智能的话,可以只在有极快巨人的半边改用PDc),但有伤的确就是有伤。自然出怪下,撑杆密度比极限出怪更高,总是让人觉得有哪里不舒服——但这的确已经是目前为止最优的解法了。在砸率面前,蛐蛐炮损算得了什么,同样炮要死,至少被啃**被砸死好多了……


                IP属地:美国8楼2021-07-18 04:38
                回复
                  【通幽】
                  在之后的几个月里,这个阵没有得到什么阶段性突破。
                  有一件事必须一提,就是它的变速解,一个P6逐波。嗯,这个是QED先提出的,然后我又重新排了排,细化了一些数据细节。
                  *注:这里说的【变速】是指考虑热过渡刷新的。至少在我的标准里,自称“变速解”还要双边热过渡之类的,实在有点不对味,毕竟世界上有个东西叫夹0,一只红眼都不出你还把全场冰车干死,这等于是说快速关分离双边冰车还强行要不刷新,臣妾做不到啊((
                  不得不说,在解变速方面真的是一片空白。一些“常规阵型”的变速,比阴间阵的慢速说不定还要难(当然,这也得看阴间阵到底有多阴间)。在这里,没有现成的轨道排布,没有完善的理论框架,只有一个一个零星的阵,在历史长河里发着微弱的光,但即使你找到了它们,也不一定能套用,更多的时候比起希望只有失望。
                  这里不得不佩服一下QED的脑洞。如果我来解,估计先凑C8u,然后就放弃了——由于热过渡有意外刷新的可能,冰波只能当12s处理,但这连C8u的13s都不到,显然是不成立的。而解决这一切的答案竟然是逐波P6,也是非常戏剧化了。
                  变速的第一个解:
                  PSD, P, PSD, P, Pice3, Nice2
                  w5需要垫上波巨人,然后敲击动作完毕后接一个ice3——这是为了延迟ice3的时机。因为w4的巨人要到w7PSD才死,如果冰得早,那就等同于投掷得早,稍微计算一下就明白了。
                  这里还是留了一个坑:由于投篮的存在,w5无论如何282之前都得放垫才了,反推得w4必须在131前放置垫才。但是要359激活并垫舞王的话,不能早于166放置,否则伴舞可能有伤(146+42+151=339 < 359),但当时也没想到什么解决方法,只能作罢,毕竟慢速解也有炮损,变速关带着套件给四门超前置炮统统换一遍就得了(


                  IP属地:美国9楼2021-07-18 04:47
                  回复
                    【黎明】
                    一切问题在今天突然被解决了。
                    为什么说是突然,因为从想到解法到写脚本、录制视频,总时长也就不到1个小时。光是间C7u,前后就足足写了3个不同的脚本,一些细节处理(比如智能收尾之类的)早已经轻车熟路。
                    但是真要说的话,这其实一点也不“突然”。在这之前,我一直有尝试试图解决这个问题——而之前发现的一些小碎片,在今天终于串成了线。
                    谜底①:有一个容易被忽略的垫才时机,是激活后立刻垫——这个垫法实际上解决了许多问题,比如之前FE最后之作的砸率不就是这么消除的嘛。
                    谜底②:减速波2路的巨人是特殊处理过的。
                    谜底③:有5个自由卡槽而非4个。
                    谜底④:蓝冰可以当一次垫才。
                    谜题:冰波的巨人如何在第二个加速波激活前垫2次而非1次。
                    综合上述这些,答案其实也就显而易见了。
                    把5个垫才分别标号,那么冰波激活后,下半场先用①、②垫,之后加速波360用③、④垫下半场。下一波510再用恢复了CD的③、④垫——至此,下半场的巨人全部失去威胁,因为冰波比较快的巨人会被①、②垫到,而慢的巨人则不具有威胁。对于加速波的巨人而言,垫才逻辑和之前没变,故同样是没问题的。
                    那么上半场怎么办呢?注意到我们有第5个垫才,由于冰波已经处理了2路巨人,所以这里只有1路巨人有威胁。于是,第一加速波就在360用⑤垫1路;之后大约645再用恢复了CD的①、②垫上半场。下一波的时候,510用⑤垫1路,最后漏掉的2路用蓝冰垫。
                    写得抽象一点就是这样:

                    简单几行字,解决了长久以来困惑着我们的这个问题。


                    IP属地:美国10楼2021-07-18 04:55
                    回复
                      变速解的炮损问题同样被解决了。
                      方法很简单:w4的P不是漏撑杆嘛,那我w5用核武不就行了!
                      直接KO(
                      好吧,事实上还要复杂一点。由于核武会漏某行撑杆,所以前一波要用高坚果挡一下,不过这个没啥难度。另一个**的问题是4路核会漏1路跳跳——此处N是作为ice3波的激活运算量,没有其他炮补锅,漏跳跳似乎挺棘手的。然而解决方法也非常简单:带辣椒,后面PSD的时候1路顺手丢个辣椒就完事了(
                      嘛,卡槽多就是这样阔绰。如果要辣椒高坚果2选1的话,估计到现在也都还解不出(


                      IP属地:美国11楼2021-07-18 04:58
                      收起回复
                        【结语】
                        虽然想说点什么总结性的,但又啥都说不出来。
                        一个完美的解突然就这样晴天霹雳蹦出来了,那我干脆说点不完美的地方——上述的零砸率,是以最快速度的巨人计算的。实际上确实存在一些没有被某几个垫才垫到,速度反而比被垫到的巨人要快的巨人。然而这里的垫才存活时间都不短,加速波的基本都是134拉满了,因此这样的情况并不会很多,而且即便有砸率,想必稍微调一下垫的时间,应该都可以解决。目前没有相关的计算工具,只能在此留坑,不过我是觉得不会再出啥问题了。
                        这几个月做的东西太多,对炮阵的理解也日益深刻了许多。看自己几个月前做的东西,总是觉得有一堆优化空间——嘛,这其实是个大好事。炮阵是个细节很多的东西。主体的框架往往看一眼就能明白,提出主体框架也很简单;一些情况下你甚至可以说主体框架毫无价值,真正有价值的东西是实现的细节。在一些情况下,这还真说得没错。从18年到现在这么多年发展下来,说到底也就是那几个节奏翻来覆去用而已。但是虽说是同样的节奏,其具体内容却又各自不同;因此你看着一个阵,说“这个东西邻C7u能打”之类的,这种话本身真没什么价值。关键还是怎么打,怎么稳定地打,怎么去抠每一个细节。


                        IP属地:美国12楼2021-07-18 05:13
                        回复