玩家社区对《杀戮尖塔2》的“运气差”抱怨,正在变成一个可验证的技术问题。研究者 tck.mn 在 6 月 13 日发布分析称,在当前单人模式 beta v0.107.0 中,游戏多个随机数生成器虽然被拆开使用,却因种子初始化方式相关,导致一些结果并不像玩家直觉中那样独立随机。

这件事重要的地方,不在于某一局到底该不该掉药水,而在于 roguelike 的核心承诺:失败可以残酷,但规则要可信。目前看到的证据说明,部分 Neow 遗物、事件奖励、早期掉落和随机目标,会被区域与首次随机结果强烈约束。它不是全局失控,也不是开发者操控概率,更像一次典型的伪随机工程踩坑。

三个反直觉结果把问题暴露出来

研究结论限定在《杀戮尖塔2》单人模式 beta v0.107.0,且部分概率带有前提条件。几个例子已经足够说明偏差不是体感误差。

场景观测结果现实影响
Underdocks 选择 Neow's BonesDebt 约 54%,Decay 约 40%该遗物平均质量显著变差
Overgrowth 选择 Neow's BonesWrithe 约 74%区域会强烈改变诅咒分布
Underdocks 的 Trash Heap单人模式无法获得 Rebound事件奖励候选被直接排除
首战药水掉落Underdocks 约 76%,Overgrowth 约 4%早期资源差距可能被放大

这些数字不能推广到所有版本、所有模式。Neow's Bones 还有例外:如果触发 New Leaf 或 Kaleidoscope,它们会先调用相关随机源,从而破坏原本相关性。多数案例也不是“完全预测”,而是条件概率偏移,或者把候选范围缩小。

分流 RNG 本想隔离随机性,却被 System.Random 拉回同一张网

《杀戮尖塔2》并没有把所有随机事件塞进一个生成器。它为洗牌、地图、卡牌奖励、药水、怪物 AI、事件等准备了不同 RNG,设计目的很合理:避免一场战斗里的随机行为影响之后的奖励。

问题出在初始化。研究者称,游戏大致使用“seed + hash(name)”来给不同 RNG 设置初始状态,例如 Neow、niche、combat_targets 各有自己的名字哈希。思路是让同一个种子仍能复现整局,同时让不同随机系统彼此隔离。

但 C# 的 System.Random 对相近种子存在较强线性特征。两个 RNG 的种子只差一个固定值时,它们的输出也会留下可利用的关系。玩家只要知道一个早期随机结果,例如第一幕区域、Neow 的诅咒池选项,就能推断另一个 RNG 的首个输出范围。

这和《杀戮尖塔1》社区早年讨论过的“相关随机”有历史连续性。上一代的问题更直接:多个 RNG 初始状态相同,序列会重合;二代显然试图修正这一点,但“换不同种子”不等于完成隔离。行业里更稳妥的做法通常会使用更强的种子混合,或换用更适合多流随机的生成器。

受影响最大的不是休闲玩家,而是信任规则的人

普通玩家未必会记表、算概率,也不会因为 Trash Heap 少一张 Rebound 就立刻弃坑。但偏差会以更隐蔽的方式改变体验:某个 Neow 遗物变得比描述更差,某个区域开局资源更好,Defect 的首个闪电球更容易打向特定敌人。

对高阶玩家、速通者、种子研究者和社区攻略作者,这就是实际变量。比如 Underdocks 第一场多敌战中,首个闪电球有约 75% 概率打左侧;如果再结合 Neow 看到的诅咒池遗物,预测还能更细。它不会让所有战斗都变成查表游戏,但足以影响早期路线、风险评估和遗物选择。

接下来最该看两件事:Mega Crit 是否会在后续 beta 中替换 RNG 或加强种子混合;修复后是否会改变既有种子、排行榜或社区复盘工具的可复现性。对一款仍在 beta 的游戏来说,发现这种问题并不丢人。真正的考验是修补时既消除偏差,又不破坏玩家研究种子的合理乐趣。