首页 / 资讯中心 / 文章详情

从零跑通 Pokemon Auto Chess:本地部署完整指南

从零跑通 Pokemon Auto Chess:本地部署完整指南 ★ FEATURED ARTICLE
从零跑通 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 是一款粉丝制作的免费多人自动象棋游戏全部逻辑用 TypeScript 写成。你只需要一个 MongoDB 和一个 Firebase 账号就能在本地把它跑起来。这篇文章带你走完「环境准备 → 配置 → 启动 → 验收」全流程照着做大约二十分钟可以开玩。启动之前环境准备与资源下载 ️跑这个游戏的前置成本不高但有几个坑要提前避开——尤其是 Node 版本。项目package.json里声明了node 24.19.0版本太旧会直接报错建议用 nvm 管理版本并切到对应版本。一次性准备工作按顺序做四件事克隆仓库只需做一次git clone https://gitcode.com/GitHub_Trending/po/pokemonAutoChess cd pokemonAutoChess把代码拉下来后面所有命令都在仓库根目录执行。安装依赖npm install装完依赖它还会自动执行postinstall拉取音乐文件、装好 assetpack 打包器的依赖所以这一步比一般项目慢一些属于正常现象。确认音乐资源已就位npm install已自动处理单独跑一遍只是保险npm run download-music把游戏音乐文件下载到app/public/src/assets/musics没有它进游戏后是静音的。打包游戏资源npm run assetpack它把public/src/assets下的素材打包到app/public/dist/client/assets浏览器最终加载的就是打包产物。这一步跳过页面里会出现一堆缺图。做完这四步机器上就只剩「配置 启动」两件事了。按编号跑起来三步完成配置与启动接下来是三件真正的事连数据库、配认证、起服务。所有凭证都写在仓库根目录的.env文件里先新建一个空的.env边做边填。第 1 步连上 MongoDB数据库连接串怎么配目标让服务器有地方存玩家数据和对战记录。游戏用 MongoDB 存数据云端免费的 MongoDB Atlas选 M0 免费档即可或本地自建都行无论哪种方式都要建好一个名为dev的数据库、一个空的botv2集合然后拿到连接 URI填进.env# 本地 Mongo 示例云端 Atlas 则是 mongodbsrv://用户名:密码集群地址/dev 形式 MONGO_URImongodb://localhost:27017/dev加分项想让大厅里有机器人陪练用 MongoDB Compass 把 机器人数据 导入空的botv2集合即可。怎么确认成功用 Compass 或 shell 连上 URI能看到dev库和botv2集合这一步就算过了。第 2 步创建 Firebase 项目并补齐凭证 目标让玩家能注册账号、登录游戏。Firebase 在这里只干一件事认证。操作分三段全部在 Firebase 控制台完成新建一个项目例如pokemon-auto-chess-test然后注册一个 Web 应用在「Configure SDK」区域拿到一段 web 配置在 项目设置 → Service accounts 里生成一个私钥 JSON。把这些值填进.env...处换成你项目里的真实值# 来自 Configure SDK 区域的 web 配置 FIREBASE_API_KEYfirebase_api_key FIREBASE_AUTH_DOMAINfirebase_auth_domain FIREBASE_PROJECT_IDfirebase_project_id FIREBASE_STORAGE_BUCKETfirebase_storage_bucket FIREBASE_MESSAGING_SENDER_IDfirebase_messaging_sender_id FIREBASE_APP_IDfirebase_app_id # 来自 Service accounts 生成的私钥 JSON FIREBASE_CLIENT_EMAILclient_email FIREBASE_PRIVATE_KEYprivate_key注意两点私钥 JSON 里的换行要保留原样登录方式里只勾选 email/password 和 anonymous 即可别的不用开。怎么确认成功.env里 8 个FIREBASE_*键全部有值且没有尖括号残留。第 3 步启动开发服务器目标把游戏真正跑起来。npm run dev这条命令会并行拉起两个进程esbuild 编译前端 tsx 以 watch 模式运行后端app/index.ts改代码能热更新适合边调边看。怎么判断项目跑通了 ✅启动后盯两个地方终端日志看到类似⚔️ Listening on http://localhost:9000、create lobby、init lobby cron jobs的输出说明服务已监听端口并成功创建了大厅房间浏览器打开http://localhost:9000/能正常渲染出游戏登录页用一个新邮箱注册并登录然后进入大厅看到lobby房间列表房间类型定义在 app/app.config.ts 的rooms配置里。注册成功本身就是一次完整的端到端验收前端 → Colyseus 房间 → MongoDB 写入用户记录链路全通。如果页面打不开先回查MONGO_URI是否连得上如果注册报错多半是 Firebase 的登录方式没勾对。跑通之后上线部署与日常开发贴士 本地跑通只是开始后面这几个知识点能让你少走不少弯路生产构建与启动开发服务器没做优化正式上线前先npm run build构建产物在app/public/dist/server再npm run start运行编译后的入口。Docker 部署更省事docker/README.md 给了容器化方案docker compose up -d会同时拉起 Mongo 和游戏服务数据库不用自己装你只需要配好 Firebase然后看http://localhost:9000即可。云端托管deployment/README.md 覆盖了 Render、Heroku、Koyeb 等平台的完整部署流程环境变量清单和本地.env一致平台部署时记得把公网域名加进 Firebase 认证白名单。素材改了要重新打包每次改动public/src/assets里的资源后重新跑一次npm run assetpack而宝可梦或协同synergy数据的预计算结果存放在 app/models/precomputed改这类配置数据后要重新生成预计算数据否则客户端看到的数值是旧的。代码风格与工具链项目用 Biome 做格式化和 lint配置在 biome.json常用命令npm run lint、npm run format、npm run check。推荐 VSCode 装 Biome 扩展保存时自动格式化。给自己开管理员权限想完全控制本地环境可在数据库的user_metadata集合里把自己那条记录的role改成ADMIN就能使用/bot-admin等管理页面。可选环境变量.env还支持DISCORD_SERVER展示你的社区 Discord 邀请和MIN_HUMAN_PLAYERS控制房间最少真人玩家数等调参项按需添加。从一台笔记本上的npm run dev到对外署一个完整的 Pokemon Auto Chess 服务器路径都是通的——本地跑通后对照 README 和部署文档挑一个方案上线就行。祝开黑愉快。【免费下载链接】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),仅供参考
阅读完成 · 觉得有帮助?
咨询建站