# 仙途家族志 · Chronicle of the Immortal Clan 修仙 × 家族 × 经营 × 战斗的家族模拟器(Electron + React + TypeScript + MetonaSqlark)。 一座庄园、一家修士、四邻势力,随年月流转:族人修炼突破、建筑产出、探秘寻宝、婚丧嫁娶; 仇家犯境则结阵应战;百年之际,望气定鼎,春秋原上写下一卷族史。 ## 快速开始 ```bash npm install # 依赖(含 git.metona.cn 私有 registry,token 在用户级 ~/.npmrc) npm install-scripts approve electron esbuild # npm12 首装时必须(Electron 二进制) npm run dev # 开发模式(热更新) npm run verify # 发布验收哨兵:vitest + typecheck + build npm run verify:package # 附打包预览(electron-builder) npm run package # 直接打包(Windows 需在 Windows 侧执行) npm test # 仅测试(923+ 用例) ``` ## 架构一览 ``` src/renderer/game/ 纯 TS 引擎(无 React/DOM,可被 vitest 直测) core/ rng(RngHub) · clock(GameClock·7相位) · plugin · legacy · report · yearaxis · biography · genealogy data/ balance 表 + DataPackRegistry(数据包可覆写) engine/ world · clocks(注册) · pluginManager(∃插件管线) · capabilities(12 能力卡) · api(GameFacade act/query/subscribe/about) systems/(生产·寿元·修炼·任务·事件·外交·婚育·渡劫·大比·寄读) storage/ db(MetonaSqlark 单例) · slots(存档槽+快照) · migrate(版本迁移链 v1→v2) src/renderer/ui/ React + zustand(store 持 GameFacade;面板订阅 revision 刷新) src/main/ Electron 主进程(app:// 协议 + IPC 存档导出/导入) ``` 设计文档见 `AGENTS.md`(环境坑/架构红线/方言陷阱/金钟罩约定)。 ## 守护机制 - **金钟罩**:tests/clock.test.ts 三枚固定 seed × 560 月指纹常驻(0.1.8 基线:9af71ecb/63cede89/ebfec4a4);有意变更时序需受控更新并注明。 - **插件化**:万物皆是插件(系统/数据包/事件池),示例见 tests/helpers/examplePlugin.ts。 - **可回放**:种子随机(sfc32)+ 闰档快照 + 回档时间轴。 ## 打包产物 - `npm run package` → out/(构建)+ release/(安装包) - 图标资源 resources/icon.png|ico —— electron-builder 自动使用 - 注意:WSL/Linux 交叉打 win 包可行但未签名,正规发布请用 Windows 侧重跑 ## 版本沿革(0.1.0 → 0.1.9) | 版本 | 主题 | |---|---| | 0.1.0 | 核心循环(修仙/家族/经营/战斗)完备可玩 | | 0.1.1 | 养成闭环+回档+叙事(指婚/装备/祭祖/战报匣/年度纸笺) | | 0.1.2 | 宗族气韵(职事/悟道/谱系/碑录/庆典/飞升/合音效) | | 0.1.3 | 深度审计(旧档兼容/血缘/联姻/远征修复) | | 0.1.4 | 百年定局(终局/大比/寄读/春秋原) | | 0.1.5 | 人物志(志向/渡劫/列传/契合/回声) | | 0.1.6 | 时轮与造化(GameClock/RngHub/时节/年轴/保护) | | 0.1.7 | 仙门之钥(门面/能力注册表/数据包/开发者面板) | | 0.1.8 | 万物皆是插件 + 全应用审计(60+ 缺陷歼灭) | | 0.1.9 | 百年报告 + 存档迁移 v2 + 战斗阵型 + 冬祷 + 发布哨兵 | | 0.1.10 | 长线决断(数值重建:修炼提速/寿元放宽/渡劫修复 + 拍卖/传薪/护族) | | 0.1.11 | 全源码审计缺陷歼灭 + UX 打磨(警讯徽章/首启引导/格式化) |