一个使用纯 HTML、CSS 和 JavaScript 实现的五子棋游戏,支持人机对战。
- 🎮 人机对战:与智能 AI 对手进行五子棋对战
- 🎯 三种难度:简单、中等、困难可选
- 🎨 精美界面:现代化的用户界面设计
- ⚡ 流畅体验:基于 Canvas 的棋盘渲染
- 🔄 悔棋功能:支持悔棋操作
- 📱 响应式设计:支持移动端和桌面端
- 黑棋先手,玩家执黑棋,电脑执白棋
- 双方轮流在棋盘交叉点上下棋
- 率先在横、竖、斜任意方向连成五子者获胜
- 如果棋盘下满仍无人获胜,则为平局
- 克隆或下载此仓库
- 使用浏览器打开
index.html文件 - 开始游戏!
直接双击 index.html 文件即可在浏览器中打开游戏。
- 下棋:点击棋盘上的交叉点进行落子
- 重新开始:点击"重新开始"按钮开始新游戏
- 悔棋:点击"悔棋"按钮撤销最近的两步棋(玩家和电脑各一步)
- 调整难度:在游戏过程中可以随时切换 AI 难度
想要战胜困难模式的AI?试试这些策略:
- 控制中心:开局尽量占据棋盘中心位置
- 双活三:尝试创造两个活三,形成必胜局面
- 防守优先:及时阻止AI形成活三或冲四
- 长远布局:不要只看眼前一两步,要考虑后续发展
- 多方向威胁:在多个方向同时制造威胁,让AI难以防守
游戏采用业界领先的五子棋AI算法,包含三种难度级别:
| 难度 | 算法 | 搜索深度 | 水平描述 |
|---|---|---|---|
| 简单 | 随机算法 | 0 | 完全随机落子,适合新手练习 |
| 中等 | Minimax + VCF | 2层 | 有战术意识,能识别基本威胁和防守 |
| 困难 | Minimax + Alpha-Beta剪枝 + VCF | 4层 | 专家级水平,接近人类高手 |
- 博弈树搜索:模拟双方的最优对弈,预测多步后的局面
- Alpha-Beta剪枝:智能剪掉无价值分支,计算效率提升10-100倍
- 深度搜索:困难模式可预测4步之后的结果
- 必胜序列识别:自动寻找通过连续冲四强制获胜的组合
- 深度搜索:最高可搜索8层,提前多步预见胜利
- 攻守兼备:既能发起VCF攻击,也能防守对手的VCF
- 棋型识别:五连、活四、冲四、活三、眠三等完整棋型系统
- 威胁评估:
- 五连(获胜):1,000,000分
- 活四(必胜):100,000分
- 冲四(强威胁):10,000分
- 活三(重要棋型):5,000分
- 其他棋型:按威胁程度递减
- 智能防守:防守权重1.1倍,优先阻止对手威胁
- 启发式搜索:优先评估高威胁值的位置
- 剪枝加速:显著提升Alpha-Beta剪枝效率
- 快速响应:即使深度搜索也能在短时间内完成
✅ 完美防守:能识别所有即时威胁并及时防守 ✅ 战术组合:会主动创造必胜序列 ✅ 全局视野:综合评估整个棋盘态势 ✅ 预判能力:预测多步后的最优走法 ✅ 高效计算:使用先进剪枝技术,思考快速
- HTML5:页面结构
- CSS3:样式和动画
- JavaScript (ES6+):游戏逻辑和 AI 算法
- Canvas API:棋盘渲染
.
├── index.html # 主页面
├── style.css # 样式文件
├── game.js # 游戏逻辑和 AI
└── README.md # 说明文档
支持所有现代浏览器:
- Chrome / Edge (推荐)
- Firefox
- Safari
- Opera
- ✅ 完整的人机对战系统
- ✅ 专家级AI算法(Minimax + Alpha-Beta剪枝)
- ✅ VCF必胜序列搜索
- ✅ 精准的点击定位系统
- ✅ 三种难度等级
- ✅ 悔棋功能
- ✅ 响应式界面设计
- 添加联机对战功能
- 添加游戏记录回放功能
- 实现开局库优化
- 支持自定义棋盘大小
- 添加音效和动画效果
- 添加AI思考过程可视化
- 实现禁手规则(可选)
MIT License
欢迎提交 Issue 和 Pull Request!
祝游戏愉快!🎉