Pokemon Auto Chess 实战指南:从零搭建并运行你的宝可梦自走棋服务器

发布时间:2026/10/23 1:48:25
Pokemon Auto Chess 实战指南:从零搭建并运行你的宝可梦自走棋服务器
Pokemon Auto Chess 实战指南从零搭建并运行你的宝可梦自走棋服务器【免费下载链接】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 是一款开源、非营利的宝可梦题材自走棋游戏由粉丝基于 The Pokemon Company 的 IP 制作提供实时多人对战大厅、机器人陪练、ELO 天梯、战报与 Meta 数据等完整功能。这篇指南适合想本地跑通源码、部署自己的服务器、或基于它二次开发的玩家与开发者帮你避开安装、配置与部署中最常踩的坑。项目定位这是一套什么规模的自走棋代码它不是纯前端 Demo而是一套可独立部署的完整游戏服务主要构成如下实时对战基于 Colyseus 的房间模型app/rooms/下定义了lobby大厅、preparation备战、game对战、after-game结算四类房间。战斗内容app/core/abilities/收录了数百个招式实现另有bot-logic.tsAI 决策、elo.ts天梯分、board.ts棋盘等模块。数据与账号用 MongoDB 存玩家资料与战绩用 Firebase 做登录认证多进程时经 Redis 做房间分发。运营功能app/services/提供排行榜、定时任务、Twitch 直播数据、Meta 统计等服务。上面这张是游戏内置的外景地图贴图集app/core/design.ts的initTilemap按地图名加载对应场景前端通过/tilemap/:map接口取用。如何安装并运行快速开始步骤先确认环境需要 Node.js ≥ 24.19.0推荐用 nvm 管理版本。然后克隆仓库并执行依赖与素材打包git clone https://gitcode.com/GitHub_Trending/po/pokemonAutoChess cd pokemonAutoChess npm install npm run download-music npm run assetpack npm run devnpm run dev启动后游戏运行在本机http://localhost:9000/。启动前还要配置两个外部依赖MongoDB本地装或云托管均可创建数据库dev其中建一个空集合botv2。想要机器人陪练就在 MongoDB Compass 里把db-commands/botv2.json导入该集合。Firebase建一个 Web App 并拿到 SDK 配置登录方式只保留邮件/密码与匿名再到 Project settings → Service accounts 生成管理员私钥。把这些写进仓库根目录的.env例如MONGO_URImongodb://localhost:27017/dev以及FIREBASE_API_KEY、FIREBASE_CLIENT_EMAIL、FIREBASE_PRIVATE_KEY等字段。想拥有完整权限可在 MongoDB 的usermetadatas集合里把你自己账号的role改为ADMIN。核心能力拆解对战与 AI 如何协作对战主循环在app/core/里pokemon-entity.ts承载场上单位attacking-state.ts、moving-state.ts、idle-state.ts描述不同行为状态招式则一个个独立成文件放在app/core/abilities/。这张是单个宝可梦的多帧动画精灵表编号 0484前端用 Phaser 4 按帧播放出攻击、移动等动作。机器人陪练由app/core/bot-logic.ts与bot-manager.ts驱动数据存在botv2集合里。你可以从前端/bot-builder页面提交自己的阵容再由管理员在/bot-admin审批。服务端入口是app/index.ts它负责拉起 Colyseus 服务、创建大厅房间、每分钟检查大厅是否存活挂了自动重建、每 10 分钟刷新排行榜、每分钟拉取 Twitch 直播状态。多进程部署时app.config.ts会按进程号分配端口并用 Redis 做房间选主大厅只在第一个进程创建。配置、部署与运行要点清单本地开发用npm run dev足够要上线则先构建再启动npm run build npm run start生产部署要点环境分支master是开发分支prod对应线上正式版本部署时按需用哪个分支。容器化根目录docker-compose.yaml自带mongo与app两个服务app暴露 9000 端口MongoDB 连接串经变量注入Dockerfile用 node:24.19.0-alpine 三阶段构建。多机部署ecosystem.config.js配好 pm2用npm run setup-live与npm run deploy-live批量部署npm run start以 fork 模式按 CPU 核数起多进程。PaaS 部署deployment/README.md给出了 Render、Heroku、Koyeb 的方案核心是把.env里的变量填到平台的环境变量里。常见问题与排错素材不显示或assetpack构建失败在 Heroku、Render 等平台该任务有时会失败。解决办法是本地先跑npm run build把生成的dist目录提交到仓库并临时去掉package.json里 build 命令中的 assetpack。改了素材没生效素材从public/src/assets打包到public/dist/client/assets每次改动都要重跑npm run assetpack。改了宝可梦或协同数据没变化这些是预计算数据存在app/models/precomputed/修改后要跑npm run precompute。大厅进不去服务端有checkLobby定时任务每分钟检测两次重试失败后自动重建 lobby 房间先看日志确认进程是否存活。Koyeb 报 Node 版本问题它的 buildpack 不一定带 LTS可在 fork 里去掉package.json的engines字段再部署。进阶方向从跑通到二次开发加新宝可梦edit/add-pokemon.ts提供npm run add-pokemon入口改完记得重新 precompute 和 assetpack。数据导出与校验gen/csv-export.ts可导出 CSVgen/check-labels.ts校验标签方便批量核对。数据库脚本db-commands/按版本号归档了历次数据迁移脚本改库前可参考同类写法。社区服务器community-servers.md列出了玩家自建的服务器部署自己的实例前先读deployment/README.md里的法律声明——宝可梦 IP 版权归 The Pokemon Company 所有请勿用于商业项目。【免费下载链接】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),仅供参考