屏幕上看到的是集市、绿洲或山口。引擎看到的却是一张图:节点,以及连接它们的边。游戏中的每一条规则都定义在这张图上,而不是定义在自由的几何上。
这一区别很重要,因为它决定了脑中能构建怎样的模型。距离不是用像素衡量的,而是看某物相隔多少条边。
节点
节点是可以站立的地方。每个节点可以带有若干标记:
start——商队出发的地方。exit——完成关卡的地方。有多名角色时,每名角色可以有各自的出口。hide——藏身处。站在这里的任何人对视线检查都不可见,敌人也绝不会踏上它。toll——通行费节点。进入需要从行囊中扣除钱币。blocker——遮挡物。摊位、墙。没有视线能越过它。
一个关卡有 18 到 30 个节点。这个数量刻意压得很少:棋盘必须一眼就能读懂。
边
边是连接两个节点的路径,通常双向皆可通行。有两个例外:
- 单向边——梯子、滑道。只能朝一个方向通行。一个关卡中至多 30% 的边是单向的;铃石的声响可以双向穿过它们,受限的只有行走。
- 门——带有 id,在收集到对应钥匙之前,双向都保持关闭。关闭的门同样会截断视线;一旦打开,便永久敞开,不再挡住视线。
物品
物品放在节点上,抵达时自动收集:
- 钥匙——与某扇门的 id 绑定,在本关余下的部分都归玩家所有。
- 钱币——用来支付通行费。
- 铃石——投出去,声响会把威胁引向声音的方向。
- 遗物——属于故事的物件。每一幕只有两个关卡能找到它;在这些关卡里,它是第三颗星的目标,也是通往隐藏关卡的钥匙。
被移出棋盘的敌人
敌人被制伏后,就离开棋盘:它不再站在自己的节点上,不在敌方阶段行动,不构建视线,与它接触也不产生捕获。被制伏的人物算作离开了棋盘,放在收容栏里。为此没有单独的命令:制伏是一次普通移动的结果。