专家攻略:一分为多

来自Noita Wiki
跳到导航 跳到搜索

一分为N(Divide By N)系列法术非常强力,其作用是复制其它的法术。它们作用于包括自己在内的几乎所有法术,被动除外。一分为N系列法术涉及到了Noita最困难的机制,导致了许多玩家难以正确的使用它。本攻略的目的就是介绍这些机制,并给出方法以利用或屏蔽它们。


请在阅读本攻略前先阅读专家攻略:抽取来了解什么是抽取。如果你没有完全理解什么是抽取(Draw),那么你也不会理解本攻略的大部分内容。如果你只是想简单的了解什么是一分为N法术,并且快速上手使用它,请查看一分为N的法术介绍界面。


简单一分为多

所有的一分为N法术的实现方法都是一样的,仅仅只是次数不同。

一分为N法术的实现方式:


  1. 记住牌库最上面的法术。这是目标法术。
  2. 施放一个不具有抽取属性的目标法术副本
  3. 施放N-1个有抽取属性的目标法术副本
  4. 丢弃当前在牌库顶部的法术。


一分为多不是施放目标法术,而是施放目标的一堆副本,然后丢弃它,这样就不会施放真正的版本。至少是这样。上面总结的第2步和第3步导致了很多不直观的法术行为。不过,在一个简单的例子中,比如当一个一分为多+大多数投射物法术(或任何不吸引的法术)时,一切都按预期进行。

简单示例:

Wand 0821.png
乱序
法术数/施放
1


首先,以下是抽取并施放“一分为十”时发生的详细情况:


  1. 它能记住牌库顶部的法术(火花弹)。
  2. 它施放了一个不具有抽取属性的火花弹副本。
  3. 它施放9份火花弹,具有抽取属性的火花弹(火花弹不能抽取任何东西,所以2和3表现相同)。
  4. 它丢弃牌库的顶牌,即火花弹。


这里一切如期进行,法杖产生10个火花弹。

一分为多法术修正

然而,当对一个有抽取属性的法术使用一分为多时,情况就不同了,也更复杂了,比如这个法术修正:

Wand 0821.png
乱序
法术数/施放
1


  1. 一分为十记忆牌库顶部的法术(伤害增强)。
  2. 它会施放一个不具有抽取属性的的伤害增强副本。
  3. 然后,它施放一个具有抽取属性的的伤害增强副本。因为伤害增强是一个修正,它确实会抽取,它会抽取牌库的顶牌,原来的伤害增强。
  4. 刚抽出的原始伤害增强会立即施放。就像它的复制品一样,它也会从牌库的顶部抽取一次,而这一次火花弹就在那里。
  5. 现在火花弹立即施放,置入施放状态。火花弹不会抽取,这意味着我们已经完成了第二份伤害增强的抽取。
  6. 一分为十施放了第三个伤害增强的副本,它会抽取,但是牌库已经空了,所以继续下一个,如此重复,直到所有的副本都施放完毕。
  7. 一分为十施放完所有副本后,丢弃牌库中的顶牌。但是,牌库中没有任何牌,因此不能丢弃任何牌!


所以我们可以肯定地看到这里发生了一些奇怪的事情。我们不仅得到了11次伤害增强而不是10次,法术的施法顺序也是可疑的。预载结果如下:


一分为十>伤害增强(副本1)>伤害增强(副本2)>伤害增强(原件)>火花弹>伤害增强(副本3-10)

丢弃移位

上面的例子已经很特别了,但是还有更特别的。在上面那个例子汇总,一分为十最后的丢弃是无害的,因为牌库中什么也没有了,但看看这个:

Wand 0821.png
乱序
法术数/施放
1


这里发生了什么?理想情况下,预期的结果将是施放两个火花弹,每个火花弹带两个伤害增强的修正。但事实并非如此。因为第二张伤害增强的副本会抽取原来的伤害增强,而伤害增强又会抽取火花弹,所以牌库上的顶牌现在是第二张火花弹。当一分为二完成复制并试图丢弃牌库中最前面的一个法术时,实际上丢弃的是第二个火花弹。事实上,它复制的不是火花弹,但是火花弹被丢弃了。这个属性被称为“丢弃移位”,这个效果是一把双刃剑,有好有坏。


在这种情况下,当双重施法抽取到魔杖刷新时,我们只剩下一个带了三个伤害增强的火花弹。请注意,请注意,此示例中使用了魔杖刷新,否则双重施放的第二次抽取实际上会出现回绕,将第二个火花弹从弃牌堆移回牌库,然后抽牌。在其他情况下,这种丢弃机制在产生看似正常的结果方面不会那么宽松。


这个例子还展示了一分为N的第一个有趣特性,它的丢弃效果,和丢弃移位的效果。如何避免和使用这个特性将在攻略的最后讨论。

多重一分为多机制

如果你对以上部分感到困惑,请重新阅读或参考抽取攻略,把一切都弄清楚,因为接下来要变得更难了。


下面是一个使用多个一分为N的简单示例:

Wand 0821.png
乱序
法术数/施放
1


当一分为十被抽取时,看起来是一分为十复制一分为四,这是牌库中最前面的一张牌。然后一分为四会复制牌库中最上面的那张牌,又是一分为四?这看起来有点问题。因为它确实不是这么复制的。


一分为N系列法术的第二个有趣的性质:迭代。当施放一分为N法术时,它会加入一个名为迭代的内部计数器。这个迭代计数器决定了复制的目标是什么法术,以及在结算时应该丢弃多少的法术。在我们之前的例子中,迭代计数器都是1,因为只处理了一个一分为N的法术。


然而,当一个一分为N法术复制另一个一分为N法术时,迭代计数器增加1。因此,在上面的例子中,一分为十的迭代是1,而一分为四的迭代是2(一分为十的迭代+1)。


当迭代计数器为1时,一分为N法术的目标是来自牌库顶部的第一个法术。当它是2时,它的目标是来自牌库顶部的第二个法术。如果是3,第三个,依此类推。


所以,让我们再看看这个例子,了解迭代是如何工作的,并找出发生了什么。

Wand 0821.png
乱序
法术数/施放
1


一分为十的迭代次数为1,所以它的目标是牌库中的第一张牌,即一分为四。一分为四的副本的迭代次数为2,这是由一分为十+1得到的。因此,它会从牌库的顶部复制第二个法术,火花弹。然后施放4个火花弹。一分为四副本完成后,预载返回到一分为十,一分为十复制另一个一分为四副本,再次瞄准火花弹,施放4个火花弹。总共施放了40个火花弹,和我们想要的效果一样。


但是等等!当一分为四结束时,我们忘记丢弃了!每当一分为N结束预载时,它就会丢弃牌库中的顶牌。所以,一分为四的第一个副本应该。。。丢弃真正的一分为四。然后,一分为四的下一个副本应该复制牌库中的第二张牌。。。没什么,因为牌库上只有火花弹。哎呀?你可以猜到,事实并非如此,我们遗漏了一个细节。


这个细节,还有关于迭代计数的最后一个特点,就是一分为N只有在迭代计数为1的情况下才会在计算结束时导致丢弃,也就是这个一分为N是一分为N链中的第一个。因此,迭代次数为2的一分为四副本在完成时不会丢弃任何内容,并且保留了牌库的状态。所以预载结果直接返回到一分为十,它复制了一分为四的第二个副本,可以正确地复制牌库中的第二张牌,也就是火花弹。一切都很好。


为了支持这个变化,一分为十必须额外丢弃一张一分为四的没有丢弃的那一份。因此,在这一切结束时,一分为十丢弃了两个法术————一分为四和火花弹。这样,火花弹最终被精确地复制了40次,不多不少。


所以一个一分为N实际上会丢弃一个数量等于链中最后一个一分为N的迭代次数的牌,从而丢弃链中所有的法术。这种情况在工作方式是:链的最大深度被传递回初始一分为N,然后初始一分为N根据迭代计数器的大小丢弃对应数量的法术。


很好!你已经明白了迭代计数器的原理了。同样,这是一个行为完全符合我们预期的例子,但是-当然-不是所有的例子都是这样的。尤其是下一个。是时候运用我们的知识了。

多个一分为N与法术修正

Wand 0821.png
乱序
法术数/施放
1

会发生什么?再往下看前,把这当做一个小练习,尝试着自己先分析一下,相信你可以的!


下面是(非常复杂和冗长)的结果。试着去理解这一切,这里的一切都是基于你迄今为止所学的,这就是我们工作的核心。我们开始吧:

  • 一分为十复制一分为四
  • 一分为十在复制了一个禁用抽取的一分为四副本
    • 副本一分为四(第二级)复制伤害增强(牌库中的第二张牌)
    • 副本一分为四施放副本:禁用抽取的伤害增强
      • 加上伤害,其他什么都不会发生
    • 副本一分为四施放副本:允许抽取的伤害增强
      • 伤害增加,会抽取
      • 牌库中最上面的法术是真正的一分为四。它被抽取并施放。
        • 真正的一分为四迭代1,因为它不是被另一个一分为N所施放的
        • 真正的一分为四目标是牌库中的顶牌(伤害增强)
        • 真实的一分为四施放副本:禁用抽取的伤害增强
          • 伤害增加,其他什么都不会发生
        • 真正的一分为四施放副本:允许抽取的伤害增强
          • 伤害增加,然后牌库的顶牌被抽取并施放。这是真正的伤害增强
            • 真正的伤害增强增加伤害并抽取一张牌。它抽取到了火花弹
              • 火花弹为以后做准备,其他什么都不做
        • 真正的一分为四施放了它第三和第四个副本:伤害增强
          • 两个副本各增加了伤害并试图抽取,但此时牌库是空的
        • 真实的一分为四完成预载并丢弃一张牌,但牌库是空的
    • 预载一路返回到一分为十生成的一分为四副本。
    • 一分为四的副本再施放两个伤害增加副本(之前已经施放过一个禁用抽取和一个允许抽取的,还要再施放两个允许抽取的)
      • 每一个都增加伤害并抽取,但是牌库是空的,所以什么都不会发生。
    • 一分为四的副本检查它是否应该丢弃任何东西,但是它是迭代=2,所以它没有。
    • 一分为四的副本报告它是链中的最后一个一分为N法术,并将此信息发送回一分为十
  • 预载返回到一分为十。它保存了最大链深度2。
  • 一分为十施放一分为四的第二个副本。
    • 带有迭代2的一分为四副本以牌库中的第二张牌为目标。
    • 牌库中没有第二张牌。这个一分为四什么也做不了。它结束了。
  • 一分为十施放一分为四的第三到第十个副本。
    • 因为牌库里没有第二张牌,所以他们什么也没做。
    • 他们每个人都告诉一分为十链的深度=2。
  • 一分为十已经完成了复制。现在,丢弃。它的每个副本都返回相同的最大迭代值2。
    • 如果不是这样的话,一分为十实际上只关心最后一个副本告诉它是多少。在这种情况下,仍然是2。
  • 一分为十试图从牌库中丢弃前2张牌。但牌库是空的,所以它什么也不做。
  • 一分为十完成。结束。


最后的结果是什么?如果你数的话,总共投了9个伤害增强,而不是凭直觉估计的40个。您可以在游戏中执行此测试以验证结果。如果你这样做了,请选择增加元素伤害而不是投射物伤害,这样它就不会被一分为N的减伤害效果影响。


不管怎样,9/40不想我们想要的结果。我们希望一分为N不要出现这样的结果,有办法吗?有的,下一个机制会向我们介绍该怎么办。

迭代极限

一分为N的最后一个机制是迭代极限。这绝对是一分为N法术机制中最广为人知的一种,它的存在是为了防止你创造完全离谱的副本数量,简言之,有一个限制限制你可以连续放多少个一分为N仍能产生想要的结果。


具体来说,它的工作方式是,当施法一分为多时,它会检查它的迭代计数器。如果它太高,它就会像一分为一:它按照迭代级别的预期执行目标,但它只施放其目标的单个副本。与所有的一分为N的第一个副本一样,该副本禁用了抽取。你能看出这有什么用吗?从牌库中抽取会破坏一分为N链,这个机制避免了这种情况。


这个思想是,如果链中的最后一个一分为N只施放禁用抽取的副本,并且所有早期的一分为N只是复制其后的一分为N(禁用抽取),那么整个链中都不会出现任何的抽取。这意味着在所有一分为N正确完成执行时,牌库的状态将保持不变。


那么,具体有哪些呢?什么时候一分法术会变成一分为一?正如名称“迭代限制”所暗示的那样,它基于迭代计数器。对于一分为十,迭代 = 3 太多了。对于一分为三和一分为四,迭代 = 4 太多了。对于一分为二,迭代 = 5 太多了。如果任何一分法术等于或高于该迭代计数器,它只会制作一个禁用抽取的单一副本。


这意味着 一分为十 > 一分为十 > 一分为四 > 一分为二 会产生尽可能多的副本,共为800。额外的一分法术将超过其递归限制。请注意,重新排序(如 一分为四 > 一分为十 > 一分为十 > 一分为二)将不起作用,因为第二个一分为十的迭代次数 = 3,这太高了。它必须恰好是 一分为十 > 一分为十 > 一分为四 > 一分为二。但是,这将产生一半会启用抽取的副本,因此这需要精确的设置在没有抽取属性的投射物上。


为了使投射物以外上的副本最大化,我们需要利用迭代极限。下面是一个方法:

我们怎样才能利用这个优势呢?看一看:

Wand 0821.png
乱序
法术数/施放
1

准备好做另一个预载树了吗?这是最后一个,比以前简单多了。

  • 双重施放
    • 一分为十(1)复制一分为十(2)
    • 一分为十(1)施放一分为十(2)的副本
      • 一分为十的副本(2)复制一分为十(3)
      • 一分为十的副本(2)施放第一个副本一分为十(3)
        • 一分为十的副本(3)复制伤害增强
        • 一分为十(3)施放禁用抽取的伤害增强副本
          • 伤害增强增加伤害,但不能抽取,所以没有别的事情发生
        • 一分为十(3)已超过迭代限制,因此在复制1次后立即终止
      • 一分为十的副本(2)逐一施放剩余的9个一分为十的副本(3)
        • 每一份一分为十的副本(3)都复制一个单独的伤害增强副本
          • 所有的伤害增强的副本都不能抽取,因为它们是第一个副本
        • 每个一分为十(3)报告它是一分链的最后一个
      • 一分为十(2)的副本完成,并报告它是一分为N链倒数第二个副本
    • 预载返回一分为十(1)
    • 一分为十(1)施放一分为十(2)的其余9个副本
      • 他们都像第一个一样,最终施放10个副本的伤害增强的副本
      • 每一个都报告说它们是一分链的倒数第二个
    • 一分为十被丢弃。它知道它是链倒数第三个,所以它丢弃3张牌,分别是后两个一分为十和伤害增强。
    • 牌库中最上面的一张牌,现在是火花弹
  • 预载返回到最开始的双重施法,该双重施法使用其剩余的抽取来抽取火花弹。
    • 火花弹施放。


所以我们得到了100份额外的伤害加成,每一次抽取都没有破坏牌库。请注意,如果没有原来的双重施放,火花弹将不会被抽取,导致100个伤害增强施放没有施放在任何投射物上,是一个毫无价值的配置。但是我们利用双重施法得到了我们想要的,在一个火花弹上装了100个伤害增强。


这里的教训是,如果你想在一个有抽取属性的法术上使用一分为N,比如一个修正,要么在一分为N链的末端使用一个等价于一分为一的来消除所有抽取,或者只使用一个一分为多,并且做好心理准备,即在施放修正的副本时,它会进行大量的抽取,抽取出你法杖里面剩余的法术。


(使用一分为二>一分为十也适用于20个副本,因为制作第二个一分为十副本时,牌库尚未损坏,但任何高于一分为二的东西仍将只会创建相同的20个副本)。


基本上就是这些!如果你已经了解到这一点,你可以称自己为一分为N的专家。这是游戏中最强大的法术之一,所以好好使用吧!

杂项

在一分为N法术的权威攻略中还应该有一些花絮,但是它们是一些不太重要的知识,所以它们都将进入本节。


一分为N+

谬是个奇怪的例子。他作为一个一分为N的主目标时,做相当于一分你法杖上的所有其他法术修正,但它并不和想象中的一样。这是因为谬在增加复制法术修正的过程中还也会控制禁用抽取标签,因此谬最终会覆盖一分为N的禁用抽取标签。谬将始终抽取1,无论是否已禁用抽取。这太糟了!一分为一技巧取消抽取不起作用,因此一次施放超过 21 个 谬 副本似乎是不可能的(一分为二>一分为十>谬)。如果你真的想一分为N+谬,你必须处理它产生的抽取。通常最好的方法是把它放在法杖的末端,这时牌库是空的,什么也抽取不到。


一分为N的伤害降低

您可能想知道一分为N法术的负面伤害是如何起作用的。答案是每次施放一个一分法术时,它都会应用于施法状态一次。这意味着对于 一分为十 > 火花塞,将应用 -37.5 的伤害惩罚。对于 一分为十 > 一分为十 > 火花塞,应用了 11 次伤害惩罚。在前面的 双重施法 > 一分为十 > 一分为十 > 一分为十 > 伤害增强 > 火花弹 的例子中,施加了 111 次伤害惩罚,每个惩罚为 -37.5 伤害。因此,显然存在一些缺点————该例子最终不会造成任何损害。然而,一分为十是一个游戏后期的法术,面对黄金变力量(在你获得无限金钱后每次应用增加 10k 伤害)或血变力量(增加更多),它的伤害减少可以忽略不计。。


施法延迟,充能时间和法力消耗

所有这些都是无关紧要的并被丢弃。只有一分为N链中的第一个一分法术及其目标才会执行上述三件事中的任何一项。不过,所有的一分都会减少伤害。


奇怪的回绕

当一张牌试图从牌堆中抽牌,但它是空的并且弃牌中有一些牌时,就会发生回绕。通常,在施法中使用法术会使它们留在手中并且无法被回绕到,但一分法术会将将部分的牌丢弃而不是留在手上。因此,你可以在重新施法前进行回绕。这会导致奇怪的后果。

让我们重新检查一下最新的示例,但要改变一点:

Wand 0821.png
乱序
法术数/施放
1

我们使用四重施法,而不是双重施法。 你认为会发生什么? 就像其他一切一样,它有点奇怪。 第一次和第二次施放与上面的例子做同样的事情,即施放 100 份伤害加成和单独的火花弹。 此时,弃牌堆包含一分为十、一分为十和伤害增强,这些被第一个一分为十丢弃掉,而手牌包含 四重施法、一分为十和火花弹。


当四重法术第三次抽取时时会发生什么?法杖回绕,当然,将一分为十>一分为十>伤害增强放进牌库中。这次预载将完全按照我们之前看到的那样进行,在整个牌库上施放21个伤害增强副本并抽取。然后,当四重施法进行第四次抽取时,牌库是空的。所以最后,我们通过添加一个额外的抽取并以不直观的方式回绕魔杖,剩下21个额外的伤害加副本。这可能是有益的,也可能会让人头疼。请注意。

修复回绕现象

这种回绕行为可以通过魔杖刷新来避免,这将清除弃牌堆并按顺序重置牌库,而额外的抽取将变成法杖第二载荷的复制。这可能导致法杖的法术每次施放两遍,可能不适合所有的法杖。以下面的魔杖设计:

Wand 0821.png
乱序
法术数/施放
1

回绕可以通过一些手段来完全避免,比如条件要求(法术)每隔可以使每次施法只有一次施放:

Wand 0821.png
乱序
法术数/施放
1
  • 如果 "每隔" 设置为跳过:
    • "每隔" 将丢弃 "每隔" 到 "终点"之间的所有法术和 "终点",自身设置为不跳过,然后抽1张牌。
    • 魔杖刷新被抽取并单独施放。(如果魔杖有着不错的属性,一次点击可能不仅执行这些操作,还会执行接下来的操作,这是由于充能时间过短)
  • 如果 "每隔" 设置为不跳过:
    • "每隔" 只丢弃 "终点" 然后设置为跳过,然后抽1张牌。
    • 四重法术被抽取,并再抽4张牌
    • 这些一分为十法术将对火花弹应用100次伤害增强修正,丢弃三张牌然后四重法术的第二次抽取抽到火花弹,之前已经分析过了。
    • 四重法术的第三次抽牌抽到魔杖刷新,所有法术被按照原本顺序移回牌库,并将魔杖置于 "已刷新模式"
    • 四重法术的第四次抽牌抽到 "每隔",它丢弃 "每隔" 到 "终点"之间的所有法术和 "终点",设置为不跳过,并再抽1张牌。
    • 魔杖刷新被抽取,因为魔杖处于 "已刷新模式",所以它将所有法术移到弃牌堆。
    • 就算还剩下额外的抽牌数 (例如:使用八重施法替换上述魔杖中的四重施法,或未受迭代计数器限制的一分为多法术),牌库中也没什么可抽的了,魔杖因为处于已刷新模式也不会回绕。(已刷新模式将在每两次射击的间隔中被禁用,不会影响连续射击。)

也可以利用这个双倍施放特定的法术,比如额外法力

Wand 0821.png
乱序
法术数/施放
1

也可以通过二次施放魔杖刷新来完全避免回绕,其中一种方法是一分魔杖刷新:

Wand 0821.png
乱序
法术数/施放
1

更奇怪的现象

一分为多会导致直接的弃牌,而非从手牌中直接抽取,这导致了另一种有用的效果。如初始或终结这种法术有一种特定的行为:当它进入弃牌/手牌/牌库时,初始会依次从弃牌、手牌到牌库寻找法术,并将找到的第一个施放。而一分为多的弃牌可以使得你可以控制弃牌堆,并影响初始复制的法术。

在这个例子里法杖具有2施法数,可以使所有法术都被一次施放。分裂弹第一个进入手牌,一个它的复制被第一个初始生成。然后一分为二生成火花弹的弃牌并直接进入弃牌堆。第二个初始则会复制火花弹而不是分裂弹,因为弃牌堆中已经有了火花弹。(注意这个例子中的)

Wand 0821.png
乱序
法术数/施放
2

用字符法术调用一分为多

用一个字符法术调用一个一分为多:

  • 无论调用字符法术的任何一分为多法术的迭代计数是多少,都将从1开始一个新的迭代计数,这允许一个一分为多绕过迭代限制,但每次调用都会执行弃牌 (这会使控制抽牌数变得更加复杂),使哪个法术真正被一分为多变得难以预测,并会重复施加投射物伤害和爆炸半径惩罚。
  • 不会将它们的最大迭代计数返回给正在调用它们的任何一分为多法术 (影响调用一分为多执行的弃牌数量)。但当被两个或更多一分为多频繁调用时,字符法术调用的一分为多导致的弃牌将会丢弃它本身,甚至可能会出现前面的一分为多直接调用后面的一分为多然后从最后调用的一分为多取得最大迭代计数的情况。

示例: 第一次施放产生10个扩张之球,10根箭,和0个巨型死亡十字,留下泡泡火花在牌库顶部。

Wand 0821.png
乱序
法术数/施放
1


用一分为多法术导致的抽取数抽取一分为多

  • 新的一分为多迭代计数从1开始。
  • 修正和抽取的一分为多法术不会返回最大迭代计数,但抽取和丢弃可能导致后面的一分为多最终被前面的一分为多调用,在这种情况下,它们将返回最大迭代计数。(最大迭代计数优先选择最后的,而不是最高的。)
  • 最早的一分为多仍然决定施法延迟和充能时间。因此,一个一分为二跟着一个修正再跟着一个延迟和充能时间更长的一分为多 (或者其他缓慢的非一分为多系列的法术) 将只会受到一分为二的时间惩罚。

示例: 速射汇聚之光+一分为多触手。通过链锯+汇聚之光的修正,使施法延迟达到负数,充能时间接近于0 (给定一个适当的魔杖属性),一分为二应用了它的施法延迟惩罚 (施法延迟仍然不大于0),保存这些属性,触发魔杖内剩余的抽/弃牌 (它们增加了施法延迟和充能时间),然后恢复保存的属性。光明穿凿在这里比汇聚之光更实用,但汇聚之光已经足以达到效果,有足够的减施法延迟来抵消一分为二的施法延迟,虽然没有充能时间减少但是不需要。

Wand 0821.png
乱序
法术数/施放
1

总结

就这样! 我希望你喜欢这个指南,现在比以前更了解这些咒语。

由 Zoldort 在 Mahtisauvanoita Nira 的帮助下撰写。

古峰译。

有关法杖配置细节的进一步阅读,请查看专家攻略:调用和递归专家攻略:特殊进阶法术