每一场“猎杀尖塔”游戏都能赢吗?

2020-07-23 00:22:42

在“杀死尖顶”的游戏中有很大的随机性。从提供的卡片和遗物,到掉落的药水,再到地图布局和随机相遇,两次比赛之间几乎没有什么是相同的。这是这个游戏之美的一部分,迫使你适应并最大限度地利用你在每次新尝试中获得的资源。然而,随之而来的是一个自然而然的问题:“杀死尖顶”的每一轮都能赢吗?在这篇文章中,我将讨论我认为关于这个问题答案的当前知识状况。

在我们开始回答之前,首先有一个细节需要弄清楚:是否每场比赛都能赢的问题实际上可以用两种不同的方式来解释。这两个都是有效而有趣的问题,并且有非常不同的答案。以下是每个问题的一些更精确的表述:

“一个完美的玩家能赢得”杀死尖顶“的每一场比赛吗?”(或者,“在”杀死尖顶“中有没有达到100%胜率的策略?”)。

“对于每一个尖顶屠宰场的种子,有没有一系列的决定会导致胜利?”

第一个问题涉及玩家的表现,在已知信息的情况下,玩家在游戏中的每一个点都做出理论上最优的决策,以最大限度地提高胜率。一般来说,没有计算上可行的方法来实际发挥最佳,所以这个问题是很难回答的。然而,在许多方面,对于寻求最大化自己胜率的球员来说,这是一个更有用的问题,因为它表明他们离最佳状态有多近。然而,作为如何回答这类问题的一个例子,我们可以看看另一款随机性很强的游戏:扫雷者。

扫雷舰是一款益智游戏,目标是以周围地雷的数量为线索,找到地雷的隐藏位置。尽管有简单的规则,但完美的发挥仍然很难实现。然而,即使不知道如何打得完美,我们仍然可以证明,一个完美的球员不可能赢得每一场比赛。例如,在下面的扫雷游戏中,剩下的两枚地雷可以在标记为“A”的方块中,也可以在标记为“B”的方块中,必须进行猜测。因为这样的位置肯定会出现在一些种子中,即使遵循一个最优的策略,也不是每一场扫雷都能赢。

现在,我已经用了两次“种子”这个词,但是它是什么意思呢?在具有随机性的计算机游戏中,种子是决定播放过程中所有随机性的字母或数字序列。对于扫雷者来说,这意味着每次你玩一粒种子时,所有的地雷都在同一个位置。因此,通过简单地了解哪些方格不包含地雷,就可以赢得每一粒种子。总而言之,对于扫雷者来说,我们两个问题的答案是:

我们可以走得更远,通过询问一个完美的球员多久会赢一次来完善我们对问题1的回答。同样,这个问题通常不可能准确回答,但因为任何策略的胜率都是最优胜率的下限,所以我们可以通过分析玩家的胜率来发展对答案的直觉。特别是,对于扫雷者,我发现已经编写的计算机程序在专家难度上获得了大约40%的胜率,这意味着如果发挥完美,你可以预期至少40%的时间会获胜。

然而,对于“杀死尖顶”来说,回答任何一个问题都要困难得多,因为游戏的复杂性要高得多。对于这篇文章,我将主要关注第二个问题,即是否存在完全不可能的种子。这是因为一个不可能的种子的存在更容易确定,如果一个不可能的种子存在,那么一个完美的球员显然也不可能在那个不可能的种子上获胜,这也回答了问题1。不过,在帖子的最后,我也会提供我对最佳打法的胜率的看法。

“尖顶扫雷”中的随机性和种子比“扫雷舰”中的要复杂得多。然而,在一系列的“杀死尖顶”中的每个随机事件仍然是由游戏种子决定的,游戏种子可以在游戏中屏幕的右上角找到。使用相同的种子和做出相同的决定总是会导致相同的结果。然而,这个游戏的随机性的确切机制太复杂了,在这里无法涵盖。就本帖子而言,只需注意以下几点就足够了:对于种子选手来说,无论球员做什么,以下事情几乎总是相同的:

Neow在竞选开始时提供的奖金(对于这个职位,我假设有Neow奖金)。

未知数(?)。地图上的房间(例如,第一个未知房间始终是此种子中的事件)。

这些事情通常会有相当少量的不同结果,这取决于之前的运行选择(例如,从Neow手中拿到一张牌可能会改变第一个战斗节点的牌奖励):

这里重要的一点是,玩家可以操纵他们的牌组、遗物、药水和遭遇的数量非常有限,特别是在第一幕的早期。这意味着一个种子选手可能真的有可能拥有如此糟糕的牌、遗物和遭遇选项,无论玩家做什么,这都是完全不可能的。

因为地图布局、药水下降、事件、战斗、新奖励和卡片奖励等方面在重放同一种子时大多是静态的,所以一个好的起点是尝试为这些类别中的每一个设计最差的结果,并询问这些结果是否足以迫使玩家输掉比赛。为此,我们将聚焦于“杀死尖顶:扬升20无声”的一个特殊规则集。之所以做出这个选择,是因为在第一幕中,在玩家可以针对给定种子提出的特定问题定制他们的资源之前,无声在击败早期的精英遭遇时面临着额外的困难。特别是:

考虑到完美洗牌运气可以应对的最大伤害,有可能证明用寂静的首发甲板杀死拉加武林是不可能的。在她的体力降到-6之前,她根本不能造成足够的伤害,所有的攻击都变得无效。让我们来看一个打斗的例子(打击=S,防御=D,中和=N,幸存者=U,升降者的贝恩=B):

因为我们每两回合只能打5次好球和1次中和,所以拉加武林在扬升20号的首发甲板上受到的最大伤害是110。然而,拉加武林总是至少有112马力,所以胜利是不可能的。

运气特别不好的情况下,地图生成算法可以迫使玩家在6楼与精英作战,这是精英可能产卵的最低楼层。更倒霉的是,在这场被迫的精英大战之前,地图上可能没有任何商店或休息地点。这严重限制了玩家在这场被迫精英战斗中所能拥有的资源。

我们已经知道沉默者不能在没有额外的卡片奖励的情况下杀死拉加武林,因为她的起跑牌没有受到伤害。当然,沉默的人在6楼之前不会和拉加武林交手,但这款游戏在这段时间可能实际上不会给出任何有用的资源。例如,以下是Neow提供的一组选项,这些选项对静默交易伤害没有帮助:

由于药水滴下的作用方式,即使在第一批精英面前打了最多五场战斗后,仍有0.72%的可能性仍然没有从他们中的任何一个那里获得药水。即使药水掉落,很多药水,比如灵巧药水,也不能帮助沉默造成更大的伤害。

最后,有很多无声牌不会增加使用基本牌组对拉格武林造成的伤害。一些例子包括:

这是完全有可能的,虽然非常不可能,在游戏的前五层只提供这个列表中的牌,再加上Neow的牌。因此,对于无法获胜的运行,我们有以下理论方案:

被迫拉加武林精英争抢6楼,前5楼无商店或休息地。

没有帮助玩家对拉格武林造成伤害的新加成、药水掉落或卡片奖励。

如果任何种子包含所有这些组成部分,则无论玩家做什么,该种子都不能赢得(在A20无声)。因此,似乎存在一个无法取胜的种子。

既然我们已经构建了一套产生无法取胜的种子的环境,自然下一步就是找到这样的种子。幸运的是,很久以前,我就为这个任务创建了一个工具。我编写了搜索程序,使用以下参数查找种子,假设Ascension 20在PC上完全解锁后静默播放:

在最初的几张卡奖励中没有太多有用的伤害卡(限制太多了,无法过滤掉任何伤害卡)。

在精英对决之前,有四个被迫的怪物格斗,第四个格斗是一场肮脏的硬碰硬的泳池格斗(大型黏液,小精灵帮派,暴徒,暴徒,野生动物)。

因为对药水、伤害牌,甚至精英战斗的身份的限制都有所放宽,这些种子并不是不可能被击败的。为了帮助弥补这些放宽的限制,我在第一场战斗之前增加了一项额外的高难度强制战斗的要求。最终,从搜索中返回的种子不到5000万粒中的一粒。为了真正评估这些种子,它们必须通过6层楼手动播放。我会首先尝试这些种子,如果我在几次尝试中都找不到取胜的方法,我会把它们作为挑战发布到Slay the尖顶不和谐频道。一些读者可能已经听说过这些挑战,这些挑战已经做了三次,一次是在2019年10月,一次是在2018年12月,还有一次是在写这篇文章的时候,也就是2020年6月。2018年最困难的种子之一只能通过大结局来解决,但最终第一幕的全部内容都被击败了:

迄今发现的最难的种子是种子1Z21MCW(适用于PC版本2.0)。在6楼至少还剩9HP的情况下杀死拉加武林几乎是不可能的,但这需要一个真正不自然的打法顺序。拉格武林也只有113点马力,我所走的路线用2点伤害的打击勉强杀死了拉加武林。如果拉加武林有115HP,我认为种子选手变得不可能成为可能。如果你想用一个非常困难的谜题来挑战自己,试着自己打败种子。我相信来自Jorbs社区不和谐频道的Peebs是第一个击败这颗种子上的腐败之心的玩家,毫无疑问地证明了种子并不是不可能的。

我以为我找到的一些种子永远不会被解决。事实上,尽管我考虑了几十亿个种子,但我从来没有找到一个不可能的种子。这并不意味着所有这些数十亿的种子都有可能获胜,但它确实表明,无敌的种子非常罕见,至少对“扬升20号沉默”来说是如此。虽然我只在6层楼寻找死亡不可避免的种子,但我相信,由于在第一幕中有非常多的玩法,如果老板可以在给定的种子上联系到,那么整个种子很可能都会赢,即使会让人心碎。

“猎杀尖顶”可能的种子只有$2^{64}$,大约是$1.84*10^{19}$,即18.4百万分之一美元的种子。如果随机事件比$2^{64}$中的1更有可能,则我们可以预期种子包含该事件。如果它的可能性远小于$2^{64}$中的1,则可能没有包含该事件的种子。那么,我们设想的无法获胜的种子的可能性有多大呢?假设精英们之前有五场比赛,至少有四场强制正常比赛,我通过各种模拟和计算,使用对每个组件的一些快速估计,计算出了无损害拉加武林情景的大致上限如下:

根据这一概率估计,存在可证明无法取胜的种子的可能性非常高,即使它太罕见而无法实际找到。但即使使用我目前的搜索技术,我最终也可能发现一颗不可能的种子。1Z21MCW种子出现在最初的40亿粒种子中,资源如此贫瘠,即使稍微倒霉的种子也肯定是不可能被击败的。

到目前为止,我一直专注于扬升20(A20)无声,因为它是构建一个真正无法取胜的种子的最简单的组合。然而,对于其他角色和难度级别,同样的问题也是值得的。仅基于直觉和我在“杀死尖顶”中使用RNG系统的经验,以下是我目前的预测:

A20铁一般的缺陷:可能存在一粒无法取胜的种子,但它甚至比“沉默”上的种子要罕见得多。

再说一次,当我在这里说一个无法取胜的种子可能不存在时,我的意思是,虽然有可能设计出无法取胜的情景,但这些情景是如此不可能,以至于几乎可以肯定,它们不会发生在1840万个可能的种子中的任何一个。例如,虽然在6层楼之前的每一张观察者牌奖励都有可能包含确切的收集/宁静/涅槃,但这几乎是不可能的,而且仍然不能保证输给被迫进入6层楼的超级精英,因为我相信观察者可以用她的首发牌组和遗物,加上一点洗牌运气(这在实践中可以通过RNG操作进一步帮助)击败他们。

铁甲、缺陷和守望者比无声有更大的优势,他们的起始甲板和遗物有更多的伤害,因此早期的精英战斗不那么危险。这使得他们更有可能利用他们获得的资源来战胜所有早期的挑战,即使这些资源本质上完全是防御性的,而不是进攻性的。此外,由于提升20的战斗比提升15要艰难得多,而且在提升20已经很难找到无法取胜的种子,我认为提升15很可能不存在不可能的种子。然而,一个可能的例外是寂静,在那里,比如Gremlin Nob,被迫在6层燃烧精英,可能足以把一颗种子推到边缘。

基于上面的讨论,到目前为止,我能说的就是A20无声游戏的最佳玩家的胜率必须低于100%。然而,如果不能获得最优发挥,任何其他结论都只能是投机。此外,现在还有更多的规则集需要考虑。为了确定是否存在最佳种子,我认为与腐烂的心作斗争的决定实际上是无关紧要的,因为在必须遇到心之前,可以做的操作的数量很多。然而,心在实际玩家的表现上有很大的不同,因为它代表着在奔跑过程中的资源损失,加上一对非常危险的额外遭遇。我会试着估算一下有没有心杀的胜率,但是其中一些组合的数据非常少,所以我不得不推测一下了。事实是,没有人知道这些问题的真正答案。

我相信所有角色的胜率都在99.99%以上,打得最好,甚至可能超过99.999%,不管有没有心。在游戏提前发布几个月后,提升等级并不存在。当时,我是在连胜排行榜上竞争的玩家之一,主要是和Celerity一起竞争,他是唯一一个在同样高水平上玩这个游戏的流媒体玩家。我们两人的战绩加起来都在50分左右,铁腕和沉默。这款游戏玩得好的时候感觉很难输,这就是为什么我们向开发者施压,想办法让游戏变得更难。随着提升等级的发布和排行榜的重置,我们两个基本上都停止了为了胜率而玩提升0,我知道从那以后很少有玩家关注提升0的胜率。但是,因为当时的胜率已经被认为是99%以上,打得很完美,而且后来游戏变得容易了,游戏知识和策略也有了这么多的发展,我有信心玩家几乎可以赢得每一场比赛。心脏或额外精英的加入应该不会对这个难度的最佳胜率有太大影响,尽管提升1对于完美发挥的心脏杀死可能会稍微好一点,因为有额外的可用资源。

在很长一段时间里,游戏的最高难度是提升15。就在提升20发布之前,有几个彩带在争夺提升15的胜率或连胜。据我所知最高的胜率要归功于皮波纳奇,在67场比赛中,皮波纳奇的胜率高达94%,横跨铁甲、沉默和缺陷。扬升15是一场非常公平的游戏,尽管难度很大,最好的玩家可以相当稳定地获胜,即使打得不是很完美。这个游戏已经变得平淡无奇了。

对于扬升15,我确实期望心灵会在胜利的数量上产生真正的不同。我不知道提升15号心杀胜率的记录数据,所以我不得不根据我观看和玩提升15号的经验来推测。我相信,当被迫与心脏搏斗时,可以击败第三幕老板的一些百分比的跑动会略有不足。问题是有多少人?我根据数据和直觉估计,在死亡的运行中,大约有20-30%死于第4幕。如果我们假设一个最优秀的玩家有类似的表现,并为解锁第4幕带来的困难再加一点额外的惩罚,那么铁甲、无声和缺陷的最佳心脏杀伤率可能在97-98%左右,而守望者的最佳心脏杀伤率仍然在99%以上。(编者注:这句话的意思是:“铁甲”、“沉默”和“缺陷”的最佳心脏杀伤率可能在97-98%左右,“守望者”是99%以上。

这是目前高水平选手最常尝试的难度。不幸的是,同样令人沮丧的是,很难找到扬升20号玩家的表现统计数据。我能找到的扬升20次心脏死亡(严格来说并不比这些更糟)只有两种:

TerrenceM在过去50次尝试每个角色时,铁衣/沉默/缺陷/守望者的胜率为52%/40%/46%/72%。

基于对所有这些玩家的观察,以及我自己对每个角色的经验,我预计最佳胜率至少是铁腕的75%,沉默的60%,缺陷的65%,以及守望者的96%。我怀疑这些估计也都有点偏低。杀死尖顶是一款令人难以置信的复杂游戏,需要做出大量的决定。没有人打得很完美,每个人在每一次跑动中都会犯错误,他们甚至都没有意识到自己在犯错误。很少有人只专注于一个角色,或者在每一场比赛中都发挥出他们的全部潜力,以最大限度地提高胜率。在生命教练之前,我可能会估计,如果玩得最好,守望者的胜率会接近90%。

对于不包括心脏的跑步,我会再次估计,在第4幕中死亡的心脏跑步中约有25%是死亡的,然后由于不必解锁第4幕或为心脏之战节省资源,死亡人数进一步减少了10%。这给了我们大约83%的胜率,沉默者73%,缺陷75%,守望者97%。

如果您想尝试自己运行搜索,请查看SeedSearch的硬种子分支。您必须自己构建它,并且该分支中的代码非常杂乱,但它是我用来寻找所有种子的工具。自己编译SeedSearch的一个优点是,您还可以随心所欲地调整搜索参数,以追求您自己的理论。为了避免与我自己的搜索重叠,我还建议查看大于1000亿的种子。另外,使用我使用的配置,返回的种子不到1/1亿,所以不要期望有很高的命中率。

.