章节 01
导读 / 主楼:Weigong:融合中国象棋元素的 13×13 策略棋盘游戏与 AI 实现
Weigong 是一款受中国象棋启发的 13×13 策略棋盘游戏,包含完整的游戏引擎、具有自适应记忆的 AI 对手,以及基于 GPU 的神经网络训练系统,使用纯 JavaScript 和浏览器技术实现。
正文
Weigong 是一款受中国象棋启发的 13×13 策略棋盘游戏,包含完整的游戏引擎、具有自适应记忆的 AI 对手,以及基于 GPU 的神经网络训练系统,使用纯 JavaScript 和浏览器技术实现。
章节 01
Weigong 是一款受中国象棋启发的 13×13 策略棋盘游戏,包含完整的游戏引擎、具有自适应记忆的 AI 对手,以及基于 GPU 的神经网络训练系统,使用纯 JavaScript 和浏览器技术实现。
章节 02
章节 03
Weigong(围攻)是一款原创策略棋盘游戏,灵感源自经典的中国象棋(Xiangqi),但在棋盘规模、棋子设计和游戏机制上进行了大胆创新。项目不仅包含完整的可玩游戏,还提供了一个模块化的游戏引擎、具有自适应记忆功能的 AI 对手,以及基于 GPU 加速的神经网络训练系统——所有这一切都在浏览器环境中使用纯 JavaScript 实现。
章节 04
Weigong 采用 13×13 的方格棋盘,比传统象棋的 9×10 更大,为策略展开提供了更丰富的空间:
章节 05
Weigong 设计了 11 种不同的棋子,每种都有独特的移动规则和战术定位:
| 棋子 | 基础汉字 | 升变汉字 | 移动特性 |
|---|---|---|---|
| 王 (King) | 王 | — | 任意方向 2 格,不跳跃 |
| 后 (Queen) | 后 | — | 直线或斜线任意格(类似国际象棋后) |
| 师 (General) | 师 | — | 马步 + 最多 5 格斜线,不跳跃 |
| 象 (Elephant) | 象 | 毅 | 1 格斜线 + 1 格正前 + 2 格后斜 |
| 仙 (Priest) | 仙 | 叡 | 任意斜线 + 1 格前后直线,无横向 |
| 马 (Horse) | 馬 | 駿 | L 形(2+1),不跳跃,需跳板空 |
| 炮 (Cannon) | 炮 | 熕 | 类似塔移动,吃子需跳过一个棋子 |
| 塔 (Tower) | 塔 | 𨐌 | 直线任意格 |
| 辇 (Carriage) | 輦 | — | 4 格直线 + 1 格任意斜线,可跳跃,不过河 |
| 矢 (Archer) | 矢 | — | 特殊弓箭手模式,不过河 |
| 兵 (Pawn) | 兵 | 弩 | 前进 1 格(过河后可横向),吃子为前斜和横向 |
章节 06
弓箭手是 Weigong 中最具特色的棋子之一:
当棋子进入敌方最后 3 行时,可选择升变:
例如,兵升变为弩后,获得 4 格斜线 + 1 格直线的移动能力;马升变为骏后,可以向所有方向 +1 格移动,且 L 形端点可额外 +2 格,并获得跳跃能力。
当敌方棋子进入己方宫殿时触发:
特殊的将死判定:当王在宫殿内、所有出口被封锁、且至少有一枚敌方棋子在宫殿内时,判定为捕获将死。
章节 07
Weigong/
├── index.html # 主入口
├── styles.css # 棋盘和 UI 样式
├── engine/
│ ├── constants.js # 常量和工具函数
│ ├── rules/ # 核心游戏引擎
│ ├── ai/ # 游戏 AI
│ └── neural_network_gpu/ # 神经网络实现
├── src/
│ ├── main.js # 交互和渲染
│ └── ui/ # UI 组件
章节 08
游戏引擎采用模块化设计,核心组件包括: