嵌手棋 Yavalath:四连即胜、三连即负的连棋类游戏
嵌手棋由电脑程序LUDI在2007年演化设计,规则只有两条:先连成四子获胜,却在不成四子时连成三子就判负。
嵌手棋(Yavalath)是一款连棋类抽象策略游戏,由澳大利亚计算机科学家 Cameron Browne 于2007年推出。
它的特殊之处在于:规则是由程序生成的。Yavalath 是 Browne 博士项目 LUDI 的产物——这套程序会读取已有游戏的规则集,对其进行演化与变异,然后评估生成的新规则是否构成一个「可玩的游戏」,以及它对人类玩家有多大吸引力。
Yavalath 因此被公认为第一款商业出版的、由AI设计的棋盘游戏,由 nestorgames 出版。连名字都是程序用马尔可夫过程从一份托尔金风格词表中随机拼出来的。
棋具
- 棋盘:5-5-5 的六角格棋盘,即每边5格,共 61格;
- 棋子:两色,区分敌我。
规则
只有三条,读完就能开局:
- 双方轮流下一子在空棋格上;
- 若落子后正好形成三枚己棋连成一线,而同时没有形成四枚及以上连线,则落子方输掉游戏;
- 先形成四枚及以上己棋连成一线者获胜。
关键在于第2条与第3条的优先级:如果同一手同时形成了三连和四连,四连优先,判胜。
棋盘填满而双方都没有触发上述任一条件,则为和棋(实战中极罕见)。
为什么这么难
初看之下,这不过是「连四」游戏的变体。真正上手才会发现,第三条规则把整个游戏的性质翻转了。
在普通连棋里,三连是通往四连的必经台阶,是好东西。而在 Yavalath 里,三连是毒药。
后果是:
- 你无法用「先排三、再补四」的常规思路推进;
- 每一步都必须检查:这一子落下后,是否会在某条线上恰好凑成三枚;
- 越到中局,合法落点越少,因为大量空格一落子就自尽;
- 于是大量局面演化成一串强制应手——你必须去堵对手的四连威胁,而每一次堵截又可能把自己送上三连的绝路。
多数对局不是靠漂亮的进攻赢下来的,而是靠逼对手踏入一个「不堵就输、堵了也输」的位置。
三人玩法
三人版规则相同,但有两点变化:
- 形成三连者退出游戏,但他的棋子留在盘上成为静态障碍;
- 玩家有义务在可能的情况下阻挡下家的胜着;
- 胜负判定:最后存活者胜,或第一个连成四子者胜;
- 计分采用两两比较的 2/1/0 分制,便于计算等级分。
三人版被玩家戏称为「只是邪恶」——两人版的强制应手已经足够致命,三人版还要额外处理第三方的静态棋子。
棋盘规格变体
| 版本 | 棋盘 | 格数 | 胜/负长度 |
|---|---|---|---|
| 标准 | 边长5 | 61 | 4胜 / 3负 |
| Compact | 边长4 | 37 | 4胜 / 3负 |
| Five-not-four | 边长6 | 91 | 5胜 / 4负 |
线上的 pbmserv 服务器支持 -size 与 -length 参数自定义棋盘边长与目标长度,禁用长度恒为目标长度减一。它默认还开启了「自动阻挡」:若你不指定 -no_auto,系统会在你没有胜着时代你落下阻挡下一家获胜的那一手。
平衡性处理
两人版先手优势明显,因此竞赛中普遍引入 Pie rule(交换规则):先手落下第一子后,后手可以选择是否与其互换位置。
与同类连棋的差异
- 五子棋 / 连珠:只定义胜法,不定义「禁着即负」,因此进攻方主导节奏;
- 六子棋:靠「每手下两子」平衡先手;
- Yavalath:靠「短一连即负」制造负反馈,把进攻与防守焊死在同一手上。
Browne 在提出 Yavalath 时,出版界还没有采用「n连胜、n-1连负」这一模式的游戏。此后这一思路影响了包括 Manalath 在内的一批后续设计。
上手建议
- 先别想着进攻,把「哪些点会让我自尽」算清楚;
- 优先占据能同时切断多条潜在连线的位置;
- 留意对手手上只剩一个落点就能成四的情形,那是必须封堵的;
- 记住:逼对手去堵,往往比自己抢先连四更可靠。
Yavalath 只有两行规则,却能在十分钟内逼出连棋游戏里最纯粹的那种紧张感。