从零搭建 Pokemon Auto Chess 私服:8 人对战自走棋的本地跑通指南

发布时间:2026/10/23 1:43:32

从零搭建 Pokemon Auto Chess 私服:8 人对战自走棋的本地跑通指南 从零搭建 Pokemon Auto Chess 私服8 人对战自走棋的本地跑通指南【免费下载链接】pokemonAutoChessPokemon Auto Chess Game. Made by fans for fans. Open source, non profit. All rights to the Pokemon Company.项目地址: https://gitcode.com/GitHub_Trending/po/pokemonAutoChessPokemon Auto Chess 是一款开源、非盈利的宝可梦自走棋网页游戏最多 8 人同场组局你负责摆棋子和配羁绊战斗由服务器自动推演。这篇指南带你把整套服务跑起来并讲清实时同步、战斗推演和部署运维三条关键线。 快速上手三步跑起本地服务器第 1 步拉代码并装依赖要求 Node 24 以上git clone https://gitcode.com/GitHub_Trending/po/pokemonAutoChess cd pokemonAutoChess npm install第 2 步填好 .env。项目只依赖两个外部服务MongoDB存玩家资料、战绩本地装一个或免费用 Atlas 均可和 Firebase负责登录认证。在根目录建.env写入MONGO_URI和 8 个FIREBASE_*变量即可数据库里建一个名为dev的库、botv2空集合并把 db-commands/botv2.json 导入进去否则匹配不到机器人。第 3 步启动npm run assetpack npm run dev浏览器打开http://localhost:9000/能看到大厅、备战与对战三个界面。assetpack会把散落的贴图打包成图集客户端跑不起来时十有八九是漏了这步。 核心机制拆解一局 8 人局是怎么跑起来的Colyseus 房间状态同步的中枢整个服务器是 Colyseus 框架一个 Node.js 实时多人游戏服务器框架驱动的。一局游戏对应一个 Room状态放在带schema标记的类里——Colyseus 会自动对比每一帧前后状态只把变化的字段推给客户端而不是每次全量广播。客户端侧就是订阅状态 发命令两件事client.onMessage(update, (state) render(state)) // 收到增量更新 client.send(update, action) // 玩家操作以命令形式发给服务器命令集中在 app/rooms/commands/按大厅、备战、对战、锦标赛分成 4 个文件和 app/rooms/states/ 里的状态一一对应。战斗推演确定性模拟能力各占一个文件对战开始后8 名玩家的行动由 app/core/simulation.ts 驱动每个 tick 按速度结算行动队列移动、攻击、使用能力依次执行客户端只做回放渲染不做裁决——这是保证你看到的和我看到的战斗结果一致的关键。能力系统拆成了 app/core/abilities/ 下 400 多个单文件flame-thrower.ts、moonblast.ts……加一个新能力不需要碰核心代码。另外 app/models/precomputed/ 存放预计算的宝可梦与羁绊数据改完配置要跑npm run precompute重新生成。 部署与工程化环境变量、构建与扩容环境变量只有一组MONGO_URI 6 个 Firebase SDK 字段 2 个服务账号密钥FIREBASE_CLIENT_EMAIL、FIREBASE_PRIVATE_KEY。无论上 Render、Heroku 还是 Koyeb都是在平台的环境变量面板里填这 9 个值。构建链路客户端走 esbuildnode esbuild.js --build服务端走 tsc产物统一落在app/public/dist/启动命令是node ./app/public/dist/server/app/index.js。扩容有两条路物理机/VPSecosystem.config.js 用 PM2 fork 模式按 CPU 核数起多实例注意不能用 cluster 模式deploy-live-1到deploy-live-4四个脚本对应四台生产机容器化Dockerfile 是三阶段构建docker-compose.yaml 顺带起了一个本地 MongoDB配好 Firebase 后docker compose up -d一条命令全搞定。️ 避坑与调优三条踩过的路现象云上构建成功后游戏里缺图标和贴图。原因assetpack打包步骤在 Heroku/Render 的构建环境里经常静默失败。解法本地跑通npm run build把产物提交进仓库再删掉构建脚本里的assetpackdeployment/README.md 里有完整步骤。现象能进大厅但机器人始终不满 8 人、开不了局。原因botv2集合是空的服务器无机器人可调度。解法用 MongoDB Compass 把db-commands/botv2.json导入botv2集合重启服务。现象想改玩家数据没有管理入口。原因默认角色没有后台权限。解法到usermetadatas表把自己的角色改成ADMIN。写在最后跑完这三步你手里就是一个可以加规则、改数值、开社群的完整自走棋服务。后续可以从 app/core/simulation.ts 的战斗主循环读起或照 deployment/ 里的教程把私服挂到公网。几点提示项目完全开源GPL v3修改能力、羁绊配置前建议先跑一遍npm run precompute这是粉丝作品版权归 The Pokémon Company 所有商用前请留意仓库声明遇到问题优先翻app/config/下的配置类文件大部分怪行为都能在那里找到答案。【免费下载链接】pokemonAutoChessPokemon Auto Chess Game. Made by fans for fans. Open source, non profit. All rights to the Pokemon Company.项目地址: https://gitcode.com/GitHub_Trending/po/pokemonAutoChess创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/23 1:43:32

FGO-py:跨平台 FGO 自动刷本与每周任务助手上手

FGO-py:跨平台 FGO 自动刷本与每周任务助手上手 【免费下载链接】FGO-py 自动爬塔! 自动每周任务! 全自动免配置跨平台的Fate/Grand Order助手.启动脚本,上床睡觉,养肝护发,满加成圣诞了解一下? 项目地址: https://gitcode.com/GitHub_Trending/fg/FGO-py 免…

2026/10/23 1:43:32

如何参与free-claude-code开发?测试规范与CI流程完全指南

【免费下载链接】free-claude-code Use Claude Code for free in the terminal, VSCode extension, or via Discord 项目地址: https://gitcode.com/gh_mirrors/fre/free-claude-code 点击查看 免费下载 free-claude-code 是一个把 Claude Code 的 API 请求免费路由…

2026/10/23 2:43:39

基于 Java Spring Boot 的大学生毕业离校管理系统设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 2:43:39

基于 Java Spring Boot 的大学生竞赛管理系统设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 2:43:39

基于 Java Spring Boot 的大学生创新创业竞赛报名系统设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 2:43:39

Aquilon操作指南(第2篇):Aquilon系统介绍

引言 在第一篇中,我们对Aquilon的硬件规格与系统架构进行了总览性分析,涵盖了产品系列、环境参数、安全规范等硬件层面的知识。 本文作为操作指南系列的第二篇,将视角从"硬件规格"转向"系统操作",深入解析Aqu…

2026/10/23 2:43:39

基于 Java Spring Boot 的民宿预约管理系统设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/22 11:29:28

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/23 0:02:26

Verilog实现FPGA密码锁:矩阵键盘与状态机设计实战

说实话,这几年接触了不少想入门FPGA的朋友,如果你问哪个项目能一口气把Verilog的核心基本功串起来,我通常会推荐电子密码锁。这个项目看着不起眼,却把矩阵键盘扫描、按键消抖、状态机设计、动态显示刷新、外设控制这些数字逻辑里的…

2026/10/23 0:02:26

数据服务监控运维实战:从指标体系到告警治理与故障排查

周末凌晨两点,手机震了。第一反应是“数据服务挂了”。打开电脑看了下,果然,某张核心报表的数据产出时间已经超过SLA两小时,下游三个业务方连着发来问询。这种场景,做过大数据运维的人都不会陌生。数据服务的监控与运维…

2026/10/23 0:02:26

FreeRTOS任务通知实战详解:内核原理、API与避坑指南

裸机编程切到RTOS之后,任务之间的通信和同步永远是躲不开的坎。前面聊过队列、信号量、互斥锁、事件组,这次把FreeRTOS任务通知(Task Notification)单独拎出来讲透。原因很简单:任务通知是FreeRTOS里最容易用错、也最容…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑