op7418/Night-Patrol
GitHub: op7418/Night-Patrol
一个志怪题材的卡牌构筑 roguelike 游戏 demo,基于 React 和 Phaser 开发,提供完整第一关的牌组构筑与战斗体验。
Stars: 148 | Forks: 35
# 夜巡录:荒庙篇
《夜巡录:荒庙篇》是一个志怪题材的卡牌构筑 roguelike demo。你扮演游方夜巡人,带着半枚城隍印走进永宁县外的荒庙夜路,用符箓、剑诀、香火和奇物,在分岔路线里拼出一套能活到天明的牌组。
当前版本是第一关竖切 demo:可以从标题页进入地图,经历普通战、精英战、怪事、商店、休整,最终挑战荒庙正殿的 Boss。
## 下载试玩
桌面客户端会发布在 GitHub Releases:
https://github.com/op7418/Night-Patrol/releases
当前计划提供:
- macOS Apple Silicon 测试包
- Windows x64 测试包
macOS 版本目前是 demo 阶段的 ad-hoc 签名包,没有 Apple 公证。如果系统提示“无法验证开发者”,请右键点击应用,选择“打开”,再确认一次。
## 游戏特色
- 志怪与修行题材:荒庙、城隍印、符箓、香火、阴市、山君。
- 类《杀戮尖塔》的核心循环:走路线、打战斗、拿新牌、拿遗物、删牌升级、滚动构筑。
- 拖拽出牌:攻击牌拖向怪物,技能和法门拖向自己。
- 卡组循环:抽牌、回卷弃牌堆、能量补偿、符印爆发和香火成长互相配合。
- 完整第一关:普通怪、精英、Boss、事件、休整、商店和战利品界面。
- 视听演出:React + Phaser 战斗舞台、敌人大立绘、背景音乐、攻击音效、胜利结算视频。
## 基础玩法
战斗中每回合获得能量并抽牌。玩家可以用攻击牌造成伤害,用技能牌获得格挡、抽牌或施加状态,用法门牌建立长期能力。
核心机制:
- 符印:施加在敌人身上的标记,可以持续结算,也可以被特定卡牌引爆。
- 香火:战斗内临时资源,用来支撑请神、雷法和爆发牌。
- 格挡:抵消当回合伤害。
- 法门:打出后在本场战斗持续生效。
- 遗物:改变开局、抽牌、伤害、防御或资源节奏。
构筑目标不是拿单张最强牌,而是让牌组循环起来:抽得更多、费用更顺、弃牌能回卷、符印能叠高并爆掉。
## 操作方式
- 鼠标拖拽卡牌到目标身上出牌。
- 攻击牌拖到敌人区域。
- 技能牌和法门牌拖到玩家区域。
- 点击“结束回合”进入敌人回合。
- 地图界面点击可选节点前进。
- 顶部按钮可以回首页、静音或重新开始。
## 当前内容
- 1 名角色:游方夜巡人。
- 20 张左右卡牌。
- 多个敌人:灯笼精、披蓑水鬼、庙祝尸、山魈、黑坛术士、画皮影、山君。
- 关键词与状态:符印、香火、格挡、虚弱、易伤、法门、消耗。
- 地图分岔路线。
- 普通战、精英战、Boss 战。
- 怪事、阴市商店、休整、删牌、升级。
- 卡牌奖励、金币奖励、遗物奖励。
- 背景音乐、攻击音效、技能音效和 UI 音效。
- 战斗胜利结算视频与静态 fallback。
- 难度选择:演示、标准、劫难。
## 技术栈
- React 18:复杂 UI、卡牌、地图、事件、商店、奖励和结算界面。
- Phaser 3:战斗舞台、背景、角色、怪物、雾气粒子、受击摇晃和镜头震动。
- TypeScript:游戏状态、卡牌、敌人、遗物和事件类型。
- Vite:开发服务器和前端构建。
- Electron:桌面客户端打包。
- GitHub Actions:macOS 与 Windows 客户端自动构建。
## 本地开发
安装依赖:
npm install
启动开发服务器:
npm run dev
然后访问终端里显示的地址,通常是:
http://127.0.0.1:5173
## 客户端打包
本地客户端预览:
npm run desktop
生成本机客户端目录:
npm run desktop:pack
生成正式安装包:
npm run desktop:dist
产物会输出到 `release/`。
GitHub CI 打包方式:
git tag v0.2.1-demo
git push origin v0.2.1-demo
推送 tag 后,GitHub Actions 会构建 macOS 和 Windows 包,并附加到 GitHub Release 页面。
## 项目文档
- `docs/PLANNING.md`:早期玩法与世界观规划。
- `docs/FIRST_ACT_DEMO_ROADMAP.md`:第一关完整 demo 路线图。
- `docs/IMPLEMENTATION_DETAILS.md`:实现细节和 AI 协作复盘。
- `docs/PACKAGING_DISTRIBUTION.md`:客户端打包、Release、物料和运营方案。
## 版权与授权
《夜巡录:荒庙篇》由歸藏 × Codex 联合开发,仅供娱乐、学习和非商业展示。
除另有说明外,本项目采用 `CC BY-NC 4.0` 授权:允许非商业分享和改编,但必须署名,不得移除作者信息,不得用于售卖、广告导流、商业试玩包、应用商店上架或其它商业分发。
推荐署名:
《夜巡录:荒庙篇》,由歸藏 × Codex 联合开发。
完整声明见 `LICENSE` 与 `NOTICE.md`。
## 素材说明
本项目为个人学习与原型展示 demo。部分视觉素材来自用户下载素材包并经过筛选整理,部分为 AI 生成素材。若后续进入正式公开发行或商业化阶段,需要重新确认所有素材授权或替换为自有资产。
## 当前状态
这是一个正在打磨中的 demo。它已经能完整跑通第一关,但仍有后续优化空间,例如正式图标迭代、视频体积压缩、更多事件演出、更多卡牌平衡和正式代码签名。
标签:Phaser, React, Roguelike, Syscalls, 卡牌构筑, 志怪题材, 游戏, 自动化攻击