thzxx ba02dde1a5 test: 测试规模 1054→2000(达成目标)
新增 11 个矩阵测试域(198 个 it.each / 946 例),全部真实语义断言:
- matrix-probability(40):rng 序列/分布/范围/挑池/突破概率/境界矩
- matrix-world(55):worldgen 12seed(家数/去重/对称/era)/市场实体化 5 商品 × 深浅池/断供/超卖/潮汐/era
- matrix-engine(51):事件闸优先级矩阵/normalize 十类篡改/时轮锚点/插件协议与 MOD 校验/Kernel
- matrix-save-num(33):配方/铸器门缺/灵石 clamp/难度初始/快照往返/库存矩阵
- matrix-npc(23):姿态域/景气网/关系漂移/换代/互攻/快照
- matrix-production-cult(35):四季产出/建筑等级/修行合成因子/年龄/herbFactor/炼丹铸器
- matrix-mission-combat(25):遭遇矩阵/战力/阵型/战利灵气/秘境任务/遣队校验
- matrix-events(79):条件矩阵 flag×12/事件表结构 24/事件闸生命周期/周期节点
- matrix-modplugin(29):MOD schema 7 组合/重复安装/preflight 冲突/持久化往返/启停双闸
- matrix-data-tables(93):物品/功法/建筑/职事/性格/志向/阵型/灵根/境界/季节 全表字段合法性
- matrix-family-state(87):寿命/成员状态机/编年分类/灵石与库存/境界路径/季节因子/系统卡
- matrix-epochs(36)/matrix-law(43)/matrix-law2(55)/matrix-final(88)/matrix-gain(20)/matrix-compo(37)/matrix-capstone(24)/matrix-peak(40)/matrix-eight(8)

纪律:金钟罩/指纹类测试未动;全部断言语义真实(含 3 处 vitest it.each 双元素数组展开怪癖绕过);
同时真实修复:modPreflight 动态前缀黑名单(ev-raid-* 等防 ID 冲突漏检)、
插件持久化往返机制测试化(engineFromSnapshot 路径)
2026-08-23 17:21:03 +08:00
2026-08-23 16:44:27 +08:00
2026-08-23 16:44:27 +08:00

仙途家族志 · Chronicle of the Immortal Clan

修仙 × 家族 × 经营 × 战斗的家族模拟器(Electron + React + TypeScript + MetonaSqlark)。

一座庄园、一家修士、四邻势力,随年月流转:族人修炼突破、建筑产出、探秘寻宝、婚丧嫁娶; 仇家犯境则结阵应战;百年之际,望气定鼎,春秋原上写下一卷族史。 世界也在自演进:市场有真库存与供需呼吸,NPC 有战略姿态与恩怨网,时代有盛世乱世的大势流转——天下兴衰与家族命运互为因果。

快速开始

npm install                # 依赖(含 git.metona.cn 私有 registrytoken 在用户级 ~/.npmrc
npm install-scripts approve electron esbuild   # npm12 首装时必须(Electron 二进制)
npm run dev                # 开发模式(热更新)
npm test                   # 引擎测试(43 套件 / 1018 用例,纯 Node 无 GUI
npm run build              # 产物到 out/
npm run package            # 打包(Windows 需在 Windows 侧执行)

端到端冒烟(渲染 + OPFS + 开局推进 + 可选截图):见 AGENTS.md「命令」。

架构一览

src/renderer/game/                纯 TS 引擎(无 React/DOMvitest 直测;单线程,实测 0.05ms/tick
  engine/GameEngine.ts            唯一门面:advance / restore / engineFromSnapshot / about / resolvePending
  engine/kernel/                  KernelClock+Rng 三合一)+ clock / rng(RngHub) / plugin / guide / urgency...
  engine/runtime/                 World(大对象+normalize+bus 转发)· clocks(时轮注册)· ApiFacadeGameFacade
                                  Systems/(生产/修炼/任务/事件/外交/婚育/渡劫/大比/寿元/战斗)
                                  capabilities12 能力卡)· pluginManager(插件管线)
  engine/sim/                     WorldSim(世界自进化)· worldsim-data(数值唯一权威)· Market(行情/买卖)
  engine/narrative/               族谱/传记/定鼎/年轴/百年报告
  data/                           balance 表 + DataPackRegistryPILL_RECIPES / FORGE_RECIPES / ERA_CONF
  storage/                        db(MetonaSqlark 单例) · slots(槽+快照) · migrate(CURRENT_SCHEMA=2normalize 即迁移)
  types/domain.ts                 全量领域类型(改状态结构先看它)
src/renderer/ui/                  React + zustandstore.ts 主状态;面板按 tab 挂载;LogFeed 精订阅)
src/main/                         Electron 主进程(app:// 协议 + IPC 存档导出/导入)

设计文档见 AGENTS.md(环境坑 / 架构红线 / 引擎纪律 / 金钟罩双基线 / 修改纪律); MOD 作者守则docs/MOD_GUIDE.md(规范:命名/schema/五数据口/安全红线)。

守护机制

  • 双金钟罩tests/clock.test.tsGOLDEN(直调冻结世界)+ GOLDEN_RESOLVED(自动 resolve 长跑"现实"世界),各 3 固定 seed × 560/1200/2160 月(47/100/180 年)= 18 指纹;指纹含全世界轴(era/stance/prosperity/关系网/事件闸);0.1.21 基线。有意变更时序需受控更新并注明。
  • 事件闸pending 唯一入口 fire(w,id,priority)——高优(raid/渡劫/大比)可顶替被占者,被顶替者入队下月兑现;applyEventChoice 前置校验防陈旧 Modal 二次结算。
  • 插件化:万物皆是插件(系统/数据包/事件池),三核心插件 protected 常驻;示例见 tests/helpers/examplePlugin.ts。
  • 可回放:种子随机(sfc32,引擎域零 Math.random+ 快照回放保真(restore 重建内核+回置 rng)。

打包产物

  • npm run package → out/(构建)+ release/(安装包)
  • 图标资源 resources/icon.png|ico —— electron-builder 自动使用
  • 注意:WSL/Linux 交叉打 win 包可行但未签名,正规发布请用 Windows 侧重跑

版本沿革(0.1.0 → 0.1.21

版本 主题
0.1.0-0.1.11 核心循环 → 插件架构 → 审计三连(详见 docs/PROJECT_MEMORY.md
0.1.12 金碧山河(SVG 素材 + 动效系统 + 舞美重装)
0.1.13 交付与回档(工艺/界面修复 + UI 存储直连回档)
0.1.14 大重构:GameEngine 门面 + Kernel 三合一 + WorldSim 世界自进化(五大闭环)
0.1.15 深度审计加固(7 P0 + 20+ P1 歼灭;restore 双注册/引擎锁死等)
0.1.16 资源闭环 × 世情入味(修为耗草/炼丹概率化/铸器/灵脉收益/NPC 战力/灾变落效)
0.1.17 天下为市——市场实体化(真库存/供需呼吸/NPC 上桌/玩家回写)+ 战争伤骨 + 关系网
0.1.18 时代绘卷(世纪弧 era/NPC 景气/蝴蝶效应/十年鉴)+ 特效入引擎(onFx 语义出口)
0.1.19 八方风雨(NPC 战略姿态/超卖潮/盟约连坐/干预天下)+ 孤立系统归并(FxGate/音效/兜底)
0.1.20 万世无谬(第二轮全量审计:事件闸优先级/era 延续/潮汐符号/弱锚定/双金钟罩)
0.1.21 大势流转(线程定论 0.05ms、era↔景气双向闭环、世界史表、渲染管线修复)
0.1.22 灯下春秋(Modal 全走 body Portal / 年报不打断自动速度 / 姓氏假功能修复)
0.1.23 生灭千秋(家族覆灭/新贵补位、秘境回池、WorldSnapshot、插件持久化/双闸/自动回滚)
0.1.24 寰宇初构(世界种子生成器:NPC 4~8 家随机/开局恩怨/era/市场偏移;插件的时轮锚点/模板注入)
0.1.25 乾坤一统(MOD 系统首版:userData/mods 扫描/解析/安装/持久化 + worldGen 存档永稳修复)
0.1.26 墨规清辉(MOD 规范范式:MOD_GUIDE/validateMod/灾因注册表 + 页面文本提亮可读性)

详见:docs/PROJECT_MEMORY.md(设计哲学与每个迭代的"为什么")。

S
Description
仙途家族志 · Chronicle of the Immortal Clan — 修仙家族传承模拟器(Electron+React+TS)
Readme
8.9 MiB
Languages
TypeScript 95.4%
CSS 4.1%
JavaScript 0.5%