Show HN: Reverse Minesweeper

Hacker News Top 产品

摘要

Reverse Minesweeper 是一款逻辑益智游戏,它使用基于推理的求解器生成可调节难度的网格,提供从简单到疯狂五个难度等级。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/07/27 01:43

# 向日葵:逻辑谜题游戏 来源:https://sunflowersgame.com/ ### 难度调节 中等:最小子集推理数 2 中等网格必须强制至少这么多步双线索子集移动。数值调高可获得更有料的中等谜题。 困难:最小重叠推理数 2 困难网格必须强制至少这么多步双线索重叠移动(同时至少包含一步子集移动)。 极限:最小假设法推理数 2 极限网格必须强制至少这么多步假设法移动:假设一个格子是花,观察某个线索是否被打破。这是本游戏最深层的逻辑。 极限:最小链长度 2 至少有一个假设法需要这么长的链(以计数步骤计)。1步链感觉像重叠移动;2步及以上保证有真正的深度时刻。上限为`MAX_WHAT_IF_FIRINGS`。 疯狂:最小双向推理数 0 疯狂网格总是超过极限模式的链长度上限。调高此值可额外要求双向移动:即支点两种假设均存活,但在另一个格子上达成一致。这是游戏中最罕见的逻辑;预期最接近匹配的标记会高于1。 滑块变动会重新生成网格。 ### 难度工作原理 您生成的每个网格都由游戏内提示所用的同一逻辑引擎从头到尾求解。它逐步推理整个谜题,始终采用*最简单*的可用移动,就像一个细心的人类玩家,并记录网格强制使用的推理技术。共有五种技术,每个难度等级以网格所要求的最难技术命名: 1. **基础 → 简单**:单个线索解决自己涉及的格子:要么它已经满足,那么剩余格子必须都为空;要么它剩余的未知格子数恰好等于还需要种的花数。 2. **子集 → 中等**:比较两个线索,其中一个线索看到的所有未知格子也被另一个线索看到。将较小的从较大中减去,即可确定较大线索独有的格子。 3. **重叠 → 困难**:两个线索共享部分格子,根据重叠区域可容纳的花的最小/最大边界,确定只有一个线索独有的格子。困难网格也总是包含子集移动。 4. **假设法 → 极限**:类似数独的强制链:假设在一个格子里种花(或打叉),从那里开始遵循简单规则,直到某个线索被打破:花太多,或无法达到它的数字。矛盾证明该格子必须是相反的状态。链的长度被限制在几个简单的计数步骤内(`MAX_WHAT_IF_FIRINGS`),因此每个假设法都是心智可追踪的,不需要做标记。提示会引导您具体测试哪个格子以及哪个线索被打破。 5. **超出上限 → 疯狂**:顶峰。疯狂网格需要的假设法链*比*极限模式的上限*更长*(最多`INSANE_CHAIN_FIRINGS`计数步骤),并且求解器还运用了**双向**技术,类似于数独的着色法:尝试一个支点格子的两种可能性;两种假设都没有破坏任何东西,但两条链都迫使另一个格子上出现相同值,因此无需任何矛盾即可证明。这是唯一一个记笔记确实有帮助的难度等级。提示会说明两种类型:要测试哪个格子,以及(对于双向法)两条链都同意的格子是哪些。 **0–100 分**将网格定位在其难度等级带内(简单 4–19,中等 20–39,困难 40–59,极限 60–79,疯狂 80–100),由其子指标决定:对于简单,看解法的宽泛程度;对于中等和困难,看强制子集或重叠移动的次数;对于极限,看假设法链的*深度*而非次数,因为短的1步假设法表现得很像重叠移动,而4步级联则完全不同;对于疯狂,看每个双向支点两个分支的合并工作量。难度带从不重叠,因此62分总是比40分更难。 **预估时间**通过累加工作量得出:每个格子常规标记约1秒,发现每个基础推理约2秒,每个子集约14秒,每个重叠约26秒,每个假设法约15秒加上每步约10秒,每个双向推理(含两个链)约35秒加上每步成本。如果估算值与实际解谜时间有偏差,权重会在源码中的`EST_TIME`中调整。 **零格方块**遵循`ZERO_CLUE_RULES`:简单和中等携带一个或两个0格方块,困难恰好一个,极限和疯狂没有。生成器会在剪枝过程中保护所需的0格方块,先移除多余的,如果网格缺少0格方块则注入一个,并拒绝任何仍然违反规则的网格。 **上述滑块**收紧网格在被接受前必须满足的条件。每次点击最多尝试90个候选网格;如果没有符合您设置的,则会提供最接近的匹配并在棋盘下方标记:提示您放松某个滑块或切换到更大的棋盘,因为大棋盘上更苛刻的网格更常见。

相似文章

Show HN: Zanagrams

Hacker News Top

Zanagrams 是一款免费的每日单词拼图游戏,可在线游玩。