猫猫棋:一个棋子可变的游戏设计
Rratic
注:本文迁移自之前的文章集,最初设计的原因是希望做一个新奇的棋类游戏作为娱乐活动
规则
棋盘
棋盘为方形,默认的大小为 8×8,一个小型棋局可能采用 6×6 大小。
棋盘的上下边界是循环的,但左右不是循环的。
棋子
- 橘猫:最简单直接的棋子,可以向周围 4 个方向移动或吃对方的子
- 黑猫:类似国际象棋的兵,但没有“吃过路兵”规则
- 处于开始状态可以选择向前移动两步
- 可以选择向前移动一步
- 可以选择向侧前方吃对方的子
- 白猫:类似跳棋
- 在周围 8 个方向若有棋子,且跳过棋子到达空格则可以跳
- 会改变跳过棋子的毛色(白 => 黑 => 橘 => 白)
- 跳过的棋子会被重置为开始状态
初始状态
初始时两方各有,一排白猫和一排黑猫,白猫在黑猫后方。
这使得玩家在第一步时可以选择移动黑猫或者使用白猫制造出橘猫。
若对方选择移动黑猫,则你可以使用棋盘的循环边界特性将白猫跳到对面,将对方白猫变为黑猫。
交互
AI 采用了 α-β 剪枝算法。棋盘评估函数不一定合理。