Pokemon Auto Chess 本地部署指南:7 步从环境搭建到生产上线
【免费下载链接】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
Pokemon Auto Chess 是一款由粉丝为粉丝制作的非盈利自走棋游戏,以 GPL-3.0 协议开源。这篇文章带你走完 Pokemon Auto Chess 本地部署的全部流程:装环境、拉资源、配 .env、起服务,最后把生产版本也跑起来。跟着做,你手里就是一个可玩的私服。
第一步:搭好运行环境,把仓库拉到本地
- 先装 Node 的 LTS 版本,建议用
nvm管理,方便随时切到正确的版本; - 把仓库 clone 到本地,例如:
git clone https://gitcode.com/GitHub_Trending/po/pokemonAutoChess; - 在仓库根目录执行
npm install装好项目依赖,这一步会自动触发部分安装钩子,耐心等待即可。
第二步:把游戏资源拉下来,一次性打包
资源分两步走,两条命令都在仓库根目录执行:
npm run download-music npm run assetpackdownload-music负责把背景音乐文件下载到位;assetpack会把 资产目录 里的原始素材打包成游戏实际加载的资源。下面这张精灵图就是其中被打包进游戏的一份资源。
第三步:5 分钟配好 .env
所有密钥都放在仓库根目录的.env文件里。没有这个文件就新建一个,然后分成两层来填。
数据层:建 dev 数据库,用 MONGO_URI 连上
游戏用 MongoDB 存玩家数据。你可以用 MongoDB Atlas(云)或本地安装,两者操作一致:
- 建一个名为
dev的数据库,里面放一个空的botv2集合; - 如果你想和机器人对战,用 MongoDB Compass 把 机器人数据 导入
botv2集合; - 把连接串填进
.env,本地部署时形如:
MONGO_URI=mongodb://localhost:27017/dev认证层:建一个 Firebase 项目,把凭据填进去
玩家注册、登录走的是 Firebase Authentication:
- 在 Firebase 控制台建个账号和项目(名字可以叫
pokemon-auto-chess-test),再加一个 Web 应用; - 登录方式只勾选邮箱/密码和匿名登录两种;
- 在"项目设置 > 服务账号"里生成一个 SDK 管理员私钥;
- 把 Web 应用配置和私钥里的字段一并填入
.env:
FIREBASE_API_KEY=<firebase_api_key> FIREBASE_AUTH_DOMAIN=<firebase_auth_domain> FIREBASE_PROJECT_ID=<firebase_project_id> FIREBASE_STORAGE_BUCKET=<firebase_storage_bucket> FIREBASE_MESSAGING_SENDER_ID=<firebase_messaging_sender_id> FIREBASE_APP_ID=<firebase_app_id> FIREBASE_CLIENT_EMAIL=<client_email> FIREBASE_PRIVATE_KEY=<private_key>到这里,游戏侧的凭据和服务器侧的管理员凭据就都齐了。
第四步:npm run dev 之后该看什么
一切就绪,执行:
npm run dev浏览器打开http://localhost:9000/,能看到游戏画面就说明本地环境通了。开发服务器适合快速验证配置、试改代码,但它并不是面向生产的优化版本。
第五步:生产部署:npm run build 之后 npm run start
要正式对外提供服务时:
- 先执行
npm run build构建出生产产物,这一步通常交给持续集成工具去做; - 把构建产物部署到生产机器,然后运行
npm run start拉起服务。
详细的云上部署方案可以参考仓库里的 部署文档。
第六步:日常开发工作流:资产与预计算数据什么时候要刷新
改代码之外,有两件容易漏的事:
- 动了 原始素材 后,记得重跑
npm run assetpack重新打包; - 改了宝可梦或协同数据后,跑一次
npm run precompute,刷新 预计算数据; - 编辑器推荐 VSCode,装上 Biome 负责格式化和校验,装 Inlang 管多语言翻译,日常改起来顺手很多。
技术栈与社区生态
项目以 TypeScript 为主语言,前端辅以 CSS 和 JavaScript,构建、校验工具链也都围绕这套体系展开。它背后有一群持续活跃的开源贡献者,配合持续集成和自动化部署来保证每次发布的质量,社区还维护着多份自建服务器指引。
写在最后
按上面六步走下来,你自己的 Pokemon Auto Chess 服务器已经在localhost:9000上跑起来了。接下来是改配置、加功能,还是直接部署给朋友玩,都随你。
【免费下载链接】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),仅供参考