游戏源码
点击放大



<a href=" src="
__Author__ chengstone
__e-Mail__
代码详解请参见文内jupyter notebook和↓↓↓
知乎专栏:
博客:
欢迎转发扩散 ^_^
这是一个AlphaZero的实践项目,实现了一个中国象棋程序,使用TensorFlow1.0和Python 3.5开发,还要安装uvloop。
因为我的模型训练的不充分,只训练了不到4K次,模型刚刚学会用象和士防守,总之仍然下棋很烂。
如果您有条件可以再多训练试试,我自从收到信用卡扣款400美元通知以后就把aws下线了:D 贫穷限制了我的想象力O(∩_∩)O
我训练的模型文件下载地址:
解压后放到项目根目录下即可,文件夹名叫做gpu_models
现在介绍下命令如何使用:
命令分为两类,一类是训练,一类是下棋。
训练专用:
- --mode 指定是训练(train)还是下棋(play),默认是训练
- --train_playout 指定MCTS的模拟次数,论文中是1600,我做训练时使用1200
- --batch_size 指定训练数据达到多少时开始训练,默认512
- --search_threads 指定执行MCTS时的线程个数,默认16
- --processor 指定是使用cpu还是gpu,默认是cpu
- --num_gpus 指定gpu的个数,默认是1
- --res_block_nums 指定残差块的层数,论文中是19或39层,我默认是7
下棋专用:
- --ai_count 指定ai的个数,1是人机对战,2是看两个ai下棋
- --ai_function 指定ai的下棋方法,是思考(mcts,会慢),还是直觉(net,下棋快)
- --play_playout 指定ai进行MCTS的模拟次数
- --delay和--end_delay默认就好,两个ai下棋太快,就不知道俩ai怎么下的了:)
- --human_color 指定人类棋手的颜色,w是先手,b是后手
训练命令举例:
python main.py --mode train --train_playout 1200 --batch_size 512 --search_threads 16 --processor gpu --num_gpus 2 --res_block_nums 7
下棋命令举例:
python main.py --mode play --ai_count 1 --ai_function mcts --play_playout 1200 --human_color w
996ICU License.开发语言:Python
项目类型:AlphaZero 中国象棋
Star 数:528
这是一套AlphaZero 中国象棋,代码结构清晰,适合开发者学习游戏的客户端渲染、服务端逻辑、场景管理与资源加载。项目涵盖了游戏的核心玩法、界面交互、地图与角色系统等模块,对理解游戏开发的完整流程具有较高的参考价值。
从技术实现角度看,游戏项目的难点在于:游戏循环与状态管理、资源加载与渲染优化、客户端与服务端的协议同步、以及多平台适配。本项目在这些方面提供了可运行的实现,开发者可以在此基础上进行二次开发或学习研究。
1. 下载源码压缩包,解压到本地开发环境。
2. 根据项目类型准备对应的运行环境(Node.js / Go / C# / Unity / Godot 等)。
3. 按照 README 中的步骤配置依赖、数据库和配置文件。
4. 先启动服务端,再运行客户端,即可进入游戏进行测试。
注意:本项目仅供学习研究使用,请勿用于商业或非法用途。
对于想进入游戏开发领域的开发者来说,这套源码是一个很好的入门参考。通过阅读代码,可以学习到游戏的核心玩法实现、场景与资源管理、网络协议设计、以及渲染优化等关键技术点。
同时,项目中的代码组织方式和模块划分,也展示了游戏项目在工程化方面的实践经验,值得开发者深入研究和借鉴。理解一个完整游戏项目的架构,对后续开发其他类型游戏也很有帮助。
本资源来源于开源社区,仅供学习研究和技术交流使用,请勿用于任何商业或违法违规用途。使用本项目产生的一切后果由使用者自行承担。若涉及第三方权益,请联系删除。
| 资源标题 | 象棋零 - AlphaZero 中国象棋 |
| 所属分类 | 游戏源码 |
| 发布作者 | admin |
| 发布时间 | 2026-10-05 21:41:18 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 386 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |