要使用 AI 制作一款三消3益智游戏,需明确什么算作一次移动,以及游戏何时检查目标。相邻交换可消耗一次移动并触发多次消除。在判断玩家是否耗尽移动次数之前,请让这些消除过程完成。一个实用的初始棋盘是:第二次消除能决定胜负的棋盘。
Tile Conservatory 是一款虚构的单步益智游戏,目标是清除六片红叶。使用其固定的棋盘和补充序列来检查交换、重力、目标计数器以及最终检查的顺序。

决定什么使交换合法
如果两个方块的单元格共享一条边,则允许它们交换位置。在尝试交换后,扫描行和列以查找三个或更多相同方块的连续序列。如果未找到连续序列,则将两个方块放回原位,保持移动次数和目标进度不变。显示回滚过程,以便玩家知道交换已被拒绝。
当交换产生连续序列时,消耗一次移动并锁定新的交换。在清除任何方块之前,标记所有连续序列中的每个单元格。如果一个方块同时属于水平连续序列和垂直连续序列,则只清除并计数该单元格一次。然后让幸存的方块下落,从上方补充空格并再次扫描。由该下落或补充形成的新匹配是连锁反应。连锁反应不消耗额外的移动。

追踪一次最终移动,经历两次消除
使用一个四乘四的棋盘。行从上到下排列,列从左到右排列,两者均从 1 开始。R 代表红叶,T 代表青色波浪,G 代表金色太阳,V 代表紫色铃铛。初始状态为:已执行一次移动,已消除的叶子数为零,且不存在任何匹配。
初始棋盘
G T T V
T G R R
R R V R
V G T G
首先尝试交换 r1c1 和 r1c2。第一行将变为 T G T V,且没有任何行或列形成匹配。撤销此次尝试。在尝试下一次交换之前,应恢复起始棋盘、一次移动以及零消除叶子的状态。
现在交换 r3c3 和 r3c4。第三行变为 R R R V,因此前三个单元格被消除。它们上方的方块下落一行。第一列至第三列的补充队列依次为 R,T、R,R 和 R,T,按使用顺序排列。该推演路径从未为第四列抽取方块。当某列在重力作用下出现多个空位时,将该列队列中的下一个方块填入该列最底部的空单元格。
| 阶段 | 行,从上到下 | 已消除叶子数 | 剩余移动次数 |
|---|---|---|---|
| 已接受的交换,消除前 | GTTV / TGRR / RRRV / VGTG | 0 | 0 |
| 首次消除与补充 | RRRV / GTTR / TGRV / VGTG | 3 | 0 |
| 第二次消除与补充 | TRTV / GTTR / TGRV / VGTG | 6 | 0 |
在第一次补充后,三个新叶子在顶部形成一行。只有当连锁反应消除它们时,它们才计入总数。在第二次补充后,棋盘上没有匹配。现在检查目标。已消除六片叶子,因此尽管剩余移动次数为零,谜题仍以胜利结束。

向 AI 提供棋盘状态和操作顺序
SEELE 支持从书面创意开始游戏项目。为项目设定一个小棋盘、命名的拼图块形状以及精确的消除顺序。保持初始视觉效果足够简单,以便一眼看清,并使用固定的补充机制来比较每次消除后的棋盘状态。
制作一个名为 Tile Conservatory 的小型原创浏览器益智游戏。
使用四种具有不同颜色的拼图块形状:R 红色叶子、T 青色波浪、
G 金色太阳、V 紫色铃铛。初始状态为一步操作,目标是消除六片红色叶子。
显示剩余步数、目标进度和 Restart(重新开始)按钮。
使用以下棋盘,从上到下:
GTTV
TGRR
RRVR
VGTG
允许玩家选择两个边缘相邻的单元格。仅当交换后形成一行或一列三个或更多相同拼图块的连续序列时,才接受该交换。
如果交换无效,恢复棋盘状态,且不改变任何计数器。
如果交换被接受,扣除一步并锁定输入。
找到所有匹配的单元格,每个单元格只计数一次,并一起消除它们。
仅当移除红色叶子时,才增加叶子计数器。
让幸存的拼图块在每一列中垂直下落。
按以下顺序使用补充队列:c1 R,T, c2 R,R, c3 R,T。
首先将拼图块绘制到受影响列中最低的空单元格。
重复消除、下落和补充,直到没有匹配为止。
首先检查叶子目标,然后检查是否剩余步数为零。
在结果稳定之前保持输入锁定。没有特殊拼图块。
Restart 恢复棋盘、步数和叶子计数器、队列以及输入状态。
将已完成的交换作为确定性测试用例。如果你尝试另一种被接受的交换,请为其受影响的列提供足够的脚本化拼图块,并单独追踪该路径。如果在测试用例中补充队列耗尽,请报告列号和消除步骤,以便你可以有意地扩展它。
在连接级联逻辑之前,先构建交换和回滚功能。如果棋盘在消除三片叶子后停止,请向 AI 提供表格中的第一个补充快照,并要求其在重力作用后重新运行匹配检测。从简介到可玩性的测试指南展示了如何将具体的差异转化为有针对性的修改请求。
通过仅更改目标来检查失败情况
重新开始,并将目标从六片叶子提高到七片叶子,重复这两种交换。保持棋盘、补充机制和步数预算固定。有效的交换仍然会消耗最后一步,并通过两轮消除六片叶子。在最终扫描后,关卡应显示还需要一片叶子并判定为失败。该预期适用于此路径。
注意两个版本中是否出现过早的失败信息。这意味着步数检查可能在棋盘稳定之前运行。使用以下检查来缩小故障范围。
| 测试操作 | 预期行为 |
|---|---|
| 交换无效对,r1c1 和 r1c2 | 两个拼图块返回原位。步数保持为一步,进度保持为零。 |
| 在第一次补充期间尝试另一种交换 | 输入被忽略。棋盘遵循上述两个消除阶段。 |
| 等待最后一次补充 | 六片叶子目标显示胜利。七片叶子目标在此路径上显示失败,仍需要一片叶子。 |
| 在任一结果后重新开始 | 原始棋盘恢复,步数为一,已消除叶子为零,补充队列回到初始状态。 |
常见问题
第一个版本应该计算哪些匹配?
在此设计中,计算水平或垂直方向三个或更多相同拼图块的连续序列。当序列交叉时,在移除任何拼图块之前,将它们的坐标收集到一个集合中。这可以防止交叉的拼图块被重复计数。如果符合谜题需求,可将对角线规则和特殊拼图块留待后续版本。
无效的交换应该消耗一步吗?
在这个第一个版本中,保持免费。显示交换反转的过程,并保持计数器不变,以便玩家能将结果与规则联系起来。测试一个不形成连续序列的相邻对,以及一个不共享边缘的单元格对。
级联如何计入目标?
当目标拼图块在任何由有效移动引起的消除中消失时,增加目标计数。补充机制只是将拼图块放置到棋盘上。等待棋盘稳定后再决定结果,这样级联可以在最后一步完成目标。
何时应该用随机拼图块替换固定补充?
在能够复现预期的消除、下落和结果之前,保持固定补充。当你测试随机拼图块时,保留固定用例以便调试。检查是否存在没有合法交换的棋盘,并在依赖较长关卡中的随机补充之前决定如何处理这种情况。
从一个可以手动阅读的棋盘开始
选择一个目标拼图块、一个较短的步数限制,以及一个你可以从头到尾追踪的交换。使用 SEELE AI 益智游戏制作器 从这些规则开始。每次更改后运行相同的棋盘,以便判断新的动画、拼图块或目标是否改变了底层的谜题。


