棋种小传
它从哪里来,为什么长成今天这个样子。
设计Mirko Marchesi · 1997 年 · Gigamic 出版
改了二十年才定型
Quoridor 由意大利设计师 Mirko Marchesi 设计,1997 年由法国 Gigamic 出版。它并不是一次灵感的产物:Marchesi 早在 1970 年代就做过名为 Blocade 与 Pinko Pallino 的前身版本,反复调整棋盘尺寸与墙的数量,直到 9×9 加每人十堵墙这套配比。这个数字组合是调出来的,不是算出来的——多两堵墙,游戏会明显偏向防守。
「不能封死」是全部合法性的核心
Quoridor 只有一条真正复杂的规则:放下一堵墙之后,双方都必须仍然存在通往各自目标边的路径。它禁止的不是「挡路」,而是「堵死」。这条规则同时做到了三件事——保证游戏必然结束、保证不会出现死局、并且把每次放墙从「挡他一下」变成一道需要重新验证全盘连通性的判断题。
两种资源,一种回合
每回合你只能二选一:走一格,或者放一堵墙。这意味着墙是用「时间」换来的——你每放一堵墙,对手就前进一格。于是最实用的评估方法是最短路差:这堵墙让对手多走几步,又让我自己多走几步,差值不够大就不值得花。墙还是不可再生资源,前期挥霍完,残局对手直线冲刺时你只能干看着。
为什么会有斜着跳这条怪规则
面对面时的跳子规则看起来很别扭:身后畅通就直跳,被墙或棋盘边挡住才改走左右斜格。它其实是在解决一个具体问题——如果两枚棋子顶在一起又都不能穿过对方,局面就会卡住。直跳是主规则,斜跳是它的兜底分支,所以斜跳从来不是可以自由选择的替代方案。
- Quoridor 在 1997 年获得美国门萨精选(Mensa Select)奖,这是它走出欧洲的关键一步。
- 四人版每人只有五堵墙,因为四个人的墙加起来仍是二十堵——总量守恒,个人库存减半。
- 墙不能重叠也不能十字交叉,但端点相接、首尾相连和丁字相碰都合法,这三种恰恰是构造长绕路的主要手段。
完整规则
先把一回合能做什么、怎样获胜弄清楚。
- 棋盘
- 9 × 9 方格
- 库存
- 双方各 10 堵墙
- 胜负条件先把自己的棋子走到对面那条底线的任意一格就获胜。这是一场竞速——墙不能吃子、不能杀死对手,它唯一的作用是把对手的路变长,同时不把你自己的路变得更长。
- 玉白方从下方底线中央出发,目标是上边九格中的任意一格;靛蓝方从上方底线中央出发,目标是下边。玉白方先手。
- 每回合必须行动一次,且只能选一种:把自己的棋子沿上下左右走一格,或从库存中放下一堵墙。不能跳过回合;墙用完之后就只剩下移动棋子这一种选择,所以库存本身是一种会耗尽的资源。
- 普通移动不能斜走,不能穿墙,不能出界,也不能落到对方棋子所在的格子。
- 跳子的第一个分支两枚棋子正交相邻且中间没有墙时,可以沿同一方向直接跳过对方,落到它身后那一格。只要这个落点在盘内、且对方与它之间没有墙,这个方向就只能以直跳的形式使用,不能改成斜向。
- 跳子的第二个分支如果对方身后的直跳格因为墙或者棋盘边缘而不可用,就改为落到对方棋子的左侧或右侧一格,这里的左右是相对原跳跃方向的两个垂直方向。该侧格必须在盘内、为空,且对方与它之间没有墙;两侧都被挡住时这个方向就没有任何跳法。
- 一堵墙固定横跨两个相邻格的边界,不能只封一条边,也不能跨三格。横墙落在两行之间、覆盖相邻两列,竖墙落在两列之间、覆盖相邻两行;行列之间各有八条缝隙,共八乘八六十四个墙槽锚点。
- 墙不能重叠同一行的两堵横墙,锚点列号相差不超过一就算重叠;同一列的两堵竖墙,锚点行号相差不超过一同理。横墙与竖墙共用同一个中央锚点算作交叉,同样非法。端点相接、首尾相连或者丁字相碰都是允许的。
- 放墙后双方都必须仍有路把候选墙临时加进去之后,从两枚棋子各自的当前位置分别寻路,必须都能走到自己的目标边,否则这堵墙非法,界面不会让你放下,库存也不会扣减。只封死自己同样非法。
- 这项寻路检查会忽略棋子的占位。棋子是可以移动、也可以被跳过的临时障碍,规则禁止的只是墙造成的永久封死。
- 任一方棋子踏上自己的目标边任意一格立即获胜,棋盘随即锁定,不再接受移动或放墙。
第一次这样下
按这个顺序思考,很快就能完成一盘。
- 开局几手先直着往前走。双方最短路径大致相等时,自己前进一步换来的进度,通常比一堵只让对手多绕两步的墙更实在。
- 每次考虑放墙前先数两个数自己到目标边的最短步数,对手到目标边的最短步数。好墙让对手那个数明显变大,而自己那个数几乎不变。
- 放墙要先在面板的“本回合操作”里切到放置横墙或放置竖墙,再点墙槽。只有当前方向合法的锚点可以点击,会造成重叠、交叉或封死的锚点是点不动的。
- 不要把墙一堵一堵地贴在对手正前方,对手往旁边挪一格就绕过去了。有效的封堵是让新墙与已有墙、与棋盘边错位衔接,逼出一条要走很多步的折线。
- 走到与对方棋子面对面时,先看清楚它身后那一格:空着就是直跳,一次前进两格;被墙挡住或者对方已经贴着边线,就只能走它左右两侧的斜格。
实战策略
从会走升级到有计划地走。
- 用最短路差衡量每一堵墙的价值对手路径的增量减去自己路径的增量,差值足够大才值得花掉库存里的一堵。
- 墙的库存不可再生。前期把墙挥霍在无关紧要的绕路上,残局对手直线冲刺时就没有东西可以拦。
- 领先时优先走棋,落后时才用墙换时间。把对手逼进一条只有单一出口的走廊,再用下一堵墙改变出口方向,效率远高于零散封堵。
- 贴近对方棋子既可能让自己借直跳前进两格,也可能把同样的加速让给对方,因为跳子是相邻双方都能用的;站位要连同墙形一起算。
- 放墙前把两条路径都重算一遍。一堵看上去只针对对手的墙,也可能替自己造出一条日后要绕行的走廊。
- 由于不能跳过回合,墙先用完的一方此后每回合都必须移动,节奏完全交给对手。留两三堵墙进入残局是常见的稳妥做法。
胜负与特殊规则
容易漏掉、但会直接改变结果的细节。
- 胜负条件只有一条棋子进入目标边的任意一格。玉白方到最上一行,靛蓝方到最下一行,立即终局。
- 没有和棋、循环判和或步数上限。因为任何墙都必须给双方留路,局面不会出现双方都无法前进的死结。
- 斜向落点不是普通的对角移动,它只在面对面直跳受阻时出现,并且必须是相对原跳跃方向的左右两格之一。
- 本站首发只实现双人 9×9 标准规则,不包含四人版的每人五堵墙以及随之而来的多棋子跳跃裁决。
常见失误
新手最容易掉进去的几个坑。
- 只检查墙与墙之间有没有冲突,忘了检查它是否封死了某一方的全部路径;这是玩家和实现最常同时搞错的一条。
- 以为把自己封死是可以接受的。规则要求双方都保留路径,堵死自己同样非法。
- 对方身后畅通时想走斜格。直跳落点可用就只能直跳,斜跳不是可以自由选择的替代方案。
- 忘记棋盘边缘也算身后受阻。对方贴着边线与你相邻时,一样触发左右两侧的斜跳。
- 把墙理解成只挡一条边,或者以为横墙和竖墙可以在同一个墙槽中心交叉。
