FunnyPitch 项目介绍

FunnyPitch 是一款 Unity 策略棋盘游戏,支持多平台(PC / iOS / Android)。核心玩法为回合制棋类对战,独特之处在于引入间谍(卧底)机制——每局开始时双方需选择间谍,间谍可被揭露并反转阵营,为战局增添变数。项目采用 CSV 配置表驱动,AI 由 ML-Agents 训练,支持多人网络对战。

最后编辑时间:瑶华

FunnyPitch

Unity 策略棋盘游戏,支持多平台(PC / iOS / Android)。

项目结构

FunnyPitch/
├── Table/                    # CSV 配置表
│   ├── Const.csv             # 常量配置
│   ├── InitPosition.csv      # 初始布局
│   ├── Lang.csv              # 多语言文本
│   ├── MovePiece.csv         # 移动方式
│   ├── MoveRule.csv          # 移动规则
│   ├── MoveRuleLib.csv       # 移动规则库
│   ├── PieceType.csv         # 棋子类型定义
│   ├── SpecialMove.csv       # 特殊移动
│   ├── Upgrade.csv           # 升级配方
│   └── backup/               # 备份
├── GameConfig/               # C# 配置代码(GenTable 生成)
│   ├── GameConfig.sln
│   └── GameConfig.csproj
├── Tools/                    # 构建工具
│   ├── AutoCreateScript.py   # 自动生成工具
│   ├── GenTable.sh           # Linux/Mac 构建脚本
│   ├── GenTable.bat          # Windows 构建脚本
│   ├── check_quotes.py
│   ├── fix_quotes.py
│   └── inspect_line.py
├── docs/                     # 设计文档
│   ├── AI系统设计与优化方案.md
│   ├── AI_Weights_Refactor_DESIGN.md
│   ├── CSV配置说明.md
│   ├── MLAgents_Reward_Design.md
│   ├── MLAgents_Training_DESIGN.md
│   ├── OnlineServerDesign.md
│   ├── UI 框架与重构方案.md
│   ├── 间谍机制战术分析.md
│   └── 摄像机系统Cinemachine改造方案.md
├── Server/                   # Node.js 后端
│   ├── src/                  # 服务端源码
│   ├── GameConfig/           # 服务端游戏配置
│   ├── package.json
│   ├── package-lock.json
│   └── deploy.sh             # 部署脚本
├── client/                   # Unity 客户端
│   ├── Assets/               # Unity 资源
│   │   ├── Animations/       # 动画
│   │   ├── Art/              # 美术资源
│   │   ├── Prefabs/          # 预制体
│   │   ├── Resources/        # Resources 加载资源
│   │   ├── Scenes/           # Unity 场景
│   │   ├── Scripts/          # 游戏脚本
│   │   │   ├── AI/           # AI 逻辑
│   │   │   ├── Base/         # 基础类
│   │   │   ├── Config/       # 配置相关
│   │   │   ├── Core/         # 核心玩法
│   │   │   ├── Editor/       # 编辑器扩展
│   │   │   ├── Entry/        # 入口脚本
│   │   │   ├── GameConfig/   # 配置加载
│   │   │   ├── Network/      # 网络通信
│   │   │   ├── Plugin/       # 插件
│   │   │   ├── Rules/        # 规则引擎
│   │   │   ├── Timer/        # 计时器
│   │   │   ├── Tools/        # 工具类
│   │   │   └── UI/           # UI 系统
│   │   ├── TextMesh Pro/     # TextMeshPro 资源
│   │   ├── Settings/         # Unity 设置
│   │   └── UI/               # UI 资源
│   ├── ProjectSettings/      # Unity 项目配置
│   ├── Packages/             # Unity 包(TextMeshPro 等)
│   ├── tools/                # 客户端工具
│   │   ├── Build-FunnyPitchAI.cmd
│   │   └── Open-FunnyPitchAI.cmd
│   └── .gitignore
└── .gitignore                # Git 忽略配置

⚠️ 已忽略以下自动生成目录:Library、Temp、Obj、Builds、Logs、UserSettings、.vs、.gradle、node_modules、bin、obj

技术特点

  • 引擎: Unity 2022.3.x
  • UI 系统: TextMesh Pro
  • 网络: com.unity.multiplayer.center (多人游戏支持)
  • 目标平台: PC / iOS / Android
  • 多语言: Table/Lang.csv + GenTable 工具自动生成多语言配置
  • 服务器: Node.js + ws (WebSocket)

构建

# 使用 GenTable 工具生成配置代码
cd Tools
./GenTable.sh     # Linux/Mac
GenTable.bat       # Windows

# Unity Editor 中打开 client/ 目录,选择目标平台后 Build

多人游戏

项目包含 com.unity.multiplayer.center 包,支持 Unity Multiplayer 功能。 服务器端使用 ws (WebSocket) 进行实时通信。

注意事项

  • Table/*.csv 通过 Tools/GenTable.sh/bat 转换为 GameConfig/*.cs 代码
  • 服务器入口为 Server/src/server.js,依赖 ws

棋盘概述

  • 尺寸:9 × 9(81 格)
  • 坐标:x=0 为己方(左),x=8 为对方(右);y=0 为最近(底部),y=8 为最远(顶部)
  • 对称轴:以 y=4 为对称轴,红蓝双方镜像对称

初始布局图

              己方 ← ────────────────────── → 对方
              x=0   x=1   x=2   x=3   x=4   x=5   x=6   x=7   x=8
           ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
   y=8     │  M │  M │  M │  G │  L │  G │  M │  M │  M │  ← 蓝方底线
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=7     │    │    │    │    │    │    │    │    │    │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=6     │    │  S │    │  S │    │  S │    │  S │    │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=5     │  S │    │  S │    │  S │    │  S │    │  S │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=4     │    │    │  F │    │    │    │  F │    │    │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=3     │  S │    │  S │    │  S │    │  S │    │  S │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=2     │    │  S │    │  S │    │  S │    │  S │    │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=1     │    │    │    │    │    │    │    │    │    │
           ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
   y=0     │  M │  M │  M │  G │  L │  G │  M │  M │  M │  ← 红方底线
           └────┴────┴────┴────┴────┴────┴────┴────┴────┘

图例

符号 棋子类型 说明
M Minister(大臣) 移动:前方 + 左右,共3方向
G Loyalist(亲信) 移动:周围8方向
L Lord(领主) 移动:周围8方向;只能在己方阵地;与对方领主无阻时可直杀
S Soldier(士兵) 移动:前方1格 + 斜前方2格;走到对方最后一排升为大臣
F Fortress(堡垒格) 棋子进入后需先退出才能再次行动

棋子数量统计

棋子类型 红方数量 蓝方数量 说明
Lord 1 1 各方1个
Loyalist 2 2 各方2个
Minister 8 8 各方8个(底线7个 + y=6中间4个)
Soldier 16 16 各方16个

双方各32子,共64子。


棋子等级体系

等级 棋子 说明
T0 Soldier(兵) 底层小兵,武官起点
T1 Minister(相)、Officer(尉) 中级,文官/武官分叉点
T2 Assassin、Chamberlain、Priest、Knight、Iron Guard 高级将才,各有专长
T3 Loyalist(卫) 贴身护卫,不可升级
T4 Lord(帅) 帅主本身,不可升级

升级路线

?️ 武官路线(军旅晋升)

Soldier(T0)→ Officer(T1)→ { Knight(T2), Assassin(T2), Iron Guard(T2) }

特点:以 Officer(T1)为核心,分三个方向晋升为 T2 将才。

? 文官路线(卿相晋升)

Minister(T1)→ { Priest(T2), Chamberlain(T2) }

特点:文官不经中级直接升,晋升为 Priest 或 Chamberlain。


间谍(卧底)机制

间谍机制是本游戏的核心玩法之一。

概述

每局游戏开始前,双方各自秘密安插间谍。被选为间谍的棋子原本属于对方,开局后表面看不出异常,直到被「揭露」——此时间谍瞬间转变为己方阵营,形成出其不意的兵力优势。

选间谍阶段

游戏在正式对局前进入 GameState.SelectingSpy 阶段,双方依次选择间谍:

选项 操作方式 效果
指定大臣 点击对方任意大臣(Minister) 该棋子成为己方间谍
随机士兵 点击「随机士兵」按钮 系统随机指定对方 2 名士兵(Soldier)为间谍

选择完成后,间谍身份对双方均保密,直到有人主动揭露。

间谍数据结构

PitchNodeManager 中维护两个列表:

public List<int> redSyp = new List<int>();  // 红方间谍(原本是蓝方的棋子)
public List<int> blueSyp = new List<int>();  // 蓝方间谍(原本是红方的棋子)

揭露间谍

游戏中任意回合,玩家可执行「揭露卧底」操作:

效果:己方所有间谍全员转换阵营——原本属于对方的棋子瞬间变为己方颜色和阵营,并触发升级特效。

// 揭露时,红方间谍(原本是蓝子)→ 变为红方
node.m_side = e_PitchSide.Blue;
ChangeNode(node, node.m_type, e_PitchSide.Blue);  // 外观变为己方棋子

胜负影响

  • 士兵间谍:若以「随机士兵」方式指定间谍,则连己方也不知道间谍身份,直至揭露前完全保密
  • 大臣间谍:己方知道是谁,但对手不知道
  • 间谍全灭:若己方间谍全部阵亡,揭露时显示「间谍已全军覆没」提示,此时己方无法获得任何间谍转化,仍可继续正常对局
  • 心理博弈:这是间谍机制最精妙之处。常见策略包括:
    • 诱使对手成全:故意让己方间谍逼近对方底线,诱骗对手吃掉它——对手以为在清除隐患,实则帮间谍完成晋级(士兵走到最后一排升为大臣,揭示后转化为更强的棋子)
    • 主动牺牲间谍:当间谍深入敌境时,可能需要忍痛主动吃掉己方间谍,防止对手利用该棋子或揭露后为敌方所用

特殊限制

  • SelectSpyTyp 仅含 Minister(大臣),即只有大臣可被主动指定为间谍
  • Soldier(士兵) 只能通过「随机士兵」方式成为间谍
  • 揭露操作可随时执行,一旦揭露己方间谍将全部现身,无法再次隐瞒

间谍机制流程图

游戏开始
    ↓
选间谍阶段(双方依次选择)
    ↓
正式对局(间谍身份保密)
    ↓
←── 可随时执行「揭露卧底」
    ↓
己方间谍全员转阵营 → 战局逆转/优势扩大

棋子详细说明

棋子详细说明

士兵(Soldier)— T0

项目 说明
移动方向(红方视角):
         Y-1   Y0   Y+1
     ┌────┬────┬────┐
     │ ◆  │ ■  │ ◆  │    ← ■ 仅可移动(Forward,上方)
  ↑  ├────┼────┼────┤      ◆ 可吃子(ForwardLeft/ForwardRight,左上/右上)
X+  │    │ ●  │    │    ← ● 士兵本体
  ↓  ├────┼────┼────┤
     │    │    │    │    ← 后方(不通)
     └────┴────┴────┘
  • — 士兵本体(当前位置)
  • — Forward(向上,1格,只能走空格)
  • — ForwardLeft(左上)/ ForwardRight(右上),1格,只能吃子 | | 移动步数 | 1步 | | 晋级条件 | 走至对方最后一排 吃掉任意敌方棋子 | | 晋级结果 | 走到底线升大臣(Minister);吃子升军官(Officer) | | 配方(Recipe) | 无(最初形态) |

相(Minister)— T1(文官)

项目 说明
移动方向(红方视角):
         Y-1  Y0  Y+1
     ┌────┬────┬────┐
     │    │ ◆  │    │    ← ◆ 上(Forward)
  ↑  ├────┼────┼────┤
     │ ◆  │ ●  │ ◆  │    ← ◆ 左/右(Left/Right)
  ↓  ├────┼────┼────┤
     │    │ ◆  │    │    ← ◆ 下(Backward)
     └────┴────┴────┘

● = Minister本体  ◆ = 4方向,1步,可移动可吃子

| 移动步数 | 1步 | | 晋级条件 | 吃掉任意敌方棋子 | | 晋级结果 | 根据被吃棋子类型决定(见下方) | | 配方(Recipe) | 无(初始棋子) |

相(Minister)吃子晋级规则

被吃棋子分类 被吃棋子 晋级结果
T0(士兵) Soldier(兵) 总督(Chamberlain)
武官 Officer(尉)、IronGuard(铁卫)、Knight(骑)、Assassin(刺客) 总督(Chamberlain)
文官 Minister(相)、Priest(教主)、Chamberlain(总督) 教主(Priest)
T3 Loyalist(卫)、Censor(御史) 御史(Censor)

尉(Officer)— T1(武官)

项目 说明
移动方向(红方视角):
         Y-1  Y0  Y+1
     ┌────┬────┬────┐
     │ ◆  │ ◆  │ ◆  │    ← ◆ 始终可用(Forward/ForwardLeft/ForwardRight)
  ↑  ├────┼────┼────┤
     │    │ ●  │    │    ← ● Officer本体
  ↓  ├────┼────┼────┤
     │    │ ◆* │    │    ← ◆* 仅敌方阵地可用(Backward)
     └────┴────┴────┘

◆ = 可吃子(1步)   ◆* = 仅敌方阵地可吃子   ● = Officer本体
  • Forward/ForwardLeft/ForwardRight:上方3格,1步,始终可吃子
  • Backward:后方1步,仅在敌方阵地可用 | | 移动步数 | 1步 | | 晋级条件 | 吃掉任意敌方棋子 | | 晋级结果 | 根据被吃棋子类型决定(见下方) | | 配方(Recipe) | Soldier |

尉(Officer)吃子晋级规则

被吃棋子分类 被吃棋子 晋级结果
T0(士兵) Soldier(兵) 铁骑(IronGuard)
武官 Officer(尉)、IronGuard(铁卫)、Knight(骑)、Assassin(刺客) 骑士(Knight)
文官 Minister(相)、Priest(教主)、Chamberlain(总督) 刺客(Assassin)
T3 Loyalist(卫)、Censor(御史) 御史(Censor)

骑(Knight)— T2(武官)

项目 说明
移动方向(红方视角):
        Y-2  Y-1  Y0  Y+1  Y+2
     ┌────┬────┬────┬────┬────┐
     │    │ ◆  │    │ ◆  │    │    ← ◆ 落点(L形第2格)
  ↑  ├────┼────┼────┼────┼────┤
     │ ◆  │    │    │    │ ◆  │    ← ◆ 落点
X+  ├────┼────┼────┼────┼────┤
     │    │    │ ●  │    │    │    ← ● Knight本体
  ↓  ├────┼────┼────┼────┼────┤
     │ ◆  │    │    │    │ ◆  │    ← ◆ 落点
     ├────┼────┼────┼────┼────┤
     │    │ ◆  │    │ ◆  │   │    ← ◆ 落点
     └────┴────┴────┴────┴────┘
  • — Knight本体
  • — 落点(4个斜方向第2格,L形) | | 移动步数 | 2步 | | 特殊规则 | 落地点是方向上的第2格(如国际象棋马),路径上的第1格不受影响 | | 晋级条件 | 不可晋级 | | 配方(Recipe) | Officer 吃武官棋子获得 |

刺客(Assassin)— T2(武官)

项目 说明
移动方向 上、下、左、右四个方向直线移动,不限步数
移动 不可吃子,路径必须畅通(不可跨子)
吃子方式 炮跳吃子:沿四方向跳过一枚敌方棋子(炮架),吃其后的敌方棋子
吃子条件 路径上必须有且仅有一枚敌方棋子作为跳板,否则不可吃子
晋级条件 不可晋级
配方(Recipe) Officer 吃武官棋子获得;Minister 吃武官棋子获得

移动示意图(直线四方向)

直线四方向(上/下/左/右,不限步数,不可吃子)

               ■  = 可至格(不限步,需路径畅通)
          │    │ ■  │    │
          │    │ ■  │    │
          │    │ ■  │    │
──────────┼────┼────┼────┼──────────
  ■  ■  ■ │ ■  │ ●  │ ■  │           ← 左/右方向,不限步
──────────┼────┼────┼────┼──────────
          │    │ ■  │    │
          │    │ ■  │    │
          │    │ ■  │    │

          ■  = 路径(必须畅通)
          ●  = Assassin本体

※ 不可跨子,遇子即止(移动不可吃子)

吃子示意图(炮跳吃子)

炮跳吃子(沿四方向,跳过炮架吃后方敌人)

    敌 ■    │    │    │        方向:→
            │    │    │
            │  ● │    │        ● = Assassin(炮架处)
            │    │    │
            │    │    │    ◆  ← ◆ = 可吃(跳板后方敌人)

    ● → 敌 → ◆   (炮架=敌,跳跃后吃子)

条件:路径上必须有且仅有一枚敌方棋子作为跳板

总督(Chamberlain)— T2(武官)

项目 说明
移动方向(红方视角):
     Y0   Y1   Y2   Y3   Y4   Y5   Y6   Y7   Y8
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
X=0│ ◆  │    │    │    │    │    │    │    │ ◆  │ 
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=1│    │ ◆  │    │    │    │    │    │ ◆  │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=2│    │    │ ◆  │    │    │    │ ◆  │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=3│    │    │    │ ◆  │    │ ◆  │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=4│    │    │    │    │ ●  │    │    │    │    │    ← ● Chamberlain本体
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=5│    │    │    │ ◆  │    │ ◆  │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=6│    │    │ ◆  │    │    │    │ ◆  │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=7│    │ ◆  │    │    │    │    │    │ ◆  │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=8│ ◆  │    │    │    │    │    │    │    │ ◆  │
  └────┴────┴────┴────┴────┴────┴────┴────┴────┘


■ = 路径(必须畅通)   ◆ = 可至(不限步数,可吃子)   ● = Chamberlain本体

| 移动步数 | 不限步数 | | 特殊规则 | 类似国际象棋的象——路径必须畅通,不可跨子 | | 晋级条件 | 不可晋级 | | 配方(Recipe) | Minister 吃T0或武官棋子获得 |

铁卫(IronGuard)— T2(武官)

项目 说明
移动方向(红方视角):
     Y0   Y1   Y2   Y3   Y4   Y5   Y6   Y7   Y8
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
X=0│    │    │    │    │ ◆  │    │    │    │    │    ← ◆ 左列(Y=4)
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=1│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=2│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=3│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=4│ ◆  │ ◆  │ ◆  │ ◆  │ ●  │ ◆  │ ◆  │ ◆  │ ◆  │    ← ● IronGuard本体
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=5│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=6│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=7│    │    │    │    │ ◆  │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=8│    │    │    │    │ ◆  │    │    │    │    │
  └────┴────┴────┴────┴────┴────┴────┴────┴────┘

■ = 路径(必须畅通)   ◆ = 可至(不限步数,可吃子)   ● = IronGuard本体

| 移动步数 | 不限步数 | | 特殊规则 | 类似国际象棋和中國象棋的车——路径必须畅通,不可跨子 | | 晋级条件 | 不可晋级 | | 配方(Recipe) | Officer 吃T0棋子获得 |

教主(Priest)— T2(文官)

项目 说明
移动方向(红方视角):

普通移动(走空格):

     Y-1  Y0  Y+1
  ┌────┬────┬────┐
  │ ◆  │ ◆  │ ◆  │
↑ ├────┼────┼────┤
  │ ◆  │ ●  │ ◆  │    ← ◆ = 可走空格,可吃子(8方向,1步)
↓ ├────┼────┼────┤
  │ ◆  │ ◆  │ ◆  │
  └────┴────┴────┘

◆ = 可走空格可吃子   ● = Priest本体

翻越移动机制:

  ┌────┐
  │    │
  ├────┤
  │ ■  │ ← 落点,不可吃子(最后的空格,第N格)
  ├────┤
  │ ●  │ ← 同方向顺位的相邻棋子也要翻过
  ├────┤
  │ ●  │ ← 第1格有棋子(任意方)= 触发翻越
  ├────┤
  │ ●  │ ← Priest本体
  └────┘

■ = 中间棋子(触发翻越,不被吃)   ◆ = 翻越落点   ● = Priest

翻越要点:

  • 第1格有棋子即触发翻越
  • 同方向所有连续棋子均跳过
  • 落在最后空格的下一格(不能吃子)

| 移动步数 | 1步(普通);翻越可达多格 | | 晋级条件 | 不可晋级 | | 配方(Recipe) | Minister 吃文官棋子获得 |

卫(Loyalist)— T3

项目 说明
移动方向(红方视角):
     Y0   Y1   Y2   Y3   Y4   Y5   Y6   Y7   Y8
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
X=4│ X  │ X  │ X  │ X  │ X  │ X  │ X  │ X  │ X  │ ← 中立区(不可入)
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=5│    │    │ ■  │    │ ■  │    │ ■  │    │    │    ← ■ 仅可走(蓝方阵地不可入)
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=6│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │    ← ◆ 可走可吃子(1步邻位)
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=7│ ■  │ ■  │ ■  │ ◆  │ ●  │ ◆  │ ■  │ ■  │ ■  │    ← ● Loyalist本体
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=8│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │    ← ◆ 可走可吃子(底线邻位)
  └────┴────┴────┴────┴────┴────┴────┴────┴────┘

■ = 可走空格(不限步数,不能吃子)   ◆ = 可吃子(1步邻位)   ● = Loyalist本体
X  = 不可进入(中立区X=4)

| 活动范围 | 只能在己方阵地(红方 X>4,蓝方 X<4);移动时不可吃子 | | 吃子规则 | 仅限相邻8方向1步可吃子(不能超出己方阵地) | | 晋级条件 | 不可晋级 | | 配方(Recipe) | 无(初始棋子) |

御史(Censor)— T3

项目 说明
移动方向(红方视角):
     Y0   Y1   Y2   Y3   Y4   Y5   Y6   Y7   Y8
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
X=0│ ◆  │    │    │    │ ◆  │    │    │    │ ◆  │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=1│    │ ◆  │    │    │ ◆  │    │    │ ◆  │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=2│    │    │ ◆  │    │ ◆  │    │ ◆  │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=3│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=4│ ◆  │ ◆  │ ◆  │ ◆  │ ●  │ ◆  │ ◆  │ ◆  │ ◆  │    ← ● Censor本体
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=5│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=6│    │    │ ◆  │    │ ◆  │    │ ◆  │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=7│    │ ◆  │    │    │ ◆  │    │    │ ◆  │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=8│ ◆  │    │    │    │ ◆  │    │    │    │ ◆  │
  └────┴────┴────┴────┴────┴────┴────┴────┴────┘

◆ = 可移动、可吃子(8方向,不限步数)   ● = Censor本体

| 活动范围 | 全棋盘,不受阵地限制 | | 可吃子 | ✅ | | 晋级条件 | 不可晋级 | | 配方(Recipe) | T1棋子吃T3(Loyalist/Censor)后转化为御史 |

帅(Lord)— T4

项目 说明
移动方向(红方视角):
     Y0   Y1   Y2   Y3   Y4   Y5   Y6   Y7   Y8
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┐
X=0│    │    │    │    │ ◆* │    │    │    │    │    ← ◆ 敌方Lord 仅中间无棋子时可吃
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=1│    │    │    │    │    │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=2│    │    │    │    │    │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=3│    │    │    │    │    │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=4│    │    │    │    │    │    │    │    │    │    ← 中立区(不可入)
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=5│    │    │    │    │    │    │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=6│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=7│    │    │    │ ◆  │ ●  │ ◆  │    │    │    │    ← ● Lord本体
  ├────┼────┼────┼────┼────┼────┼────┼────┼────┤
X=8│    │    │    │ ◆  │ ◆  │ ◆  │    │    │    │
  └────┴────┴────┴────┴────┴────┴────┴────┴────┘

◆ = 可吃可移动(8方向,1步)   ● = Lord本体

| 活动范围 | 只能在己方阵地(红方 X≥5,蓝方 X≤3);X=4 中立区不可入 | | 特殊规则 | 与对方帅之间无棋子阻隔时,可直接击杀 | | 晋级条件 | 不可晋级 | | 配方(Recipe) | 无(初始棋子) |


该文档由 Yaohua 整理

  • 留下精彩的评论吧~(0条)

所有内容仅供学习与交流,转载须标明链接。未经同意,禁止作为商业用途,有特殊需求请联系站长。