v0.1.21: 大势流转(线程定论 + era景气双向闭环 + 世界史表 + 渲染管线)
【线程架构定论(实测)】 - 引擎与 UI 同在 renderer 主线程(单线程);2160 月实测 advanceMonth 平均 0.05ms/tick - 结论:Worker 化无收益——0.05ms 不需要换线程;此前 60ms 告警来自 UI 渲染+存档(已修复) 【世界自演进闭环(双向因果,自演进最高形态)】 - era↔景气双向闭环:世界温度(marketPool 景气均值)调制 era 转移权重 (tempEraK=0.8)——大世托盛世、市道衰微催乱世/末法;时代由天下兴衰孕育 - 天下史书独立表 worldAnnals[]:十年一鉴独立留档(免 newsFeed 120 条裁剪丢失) - region 灵潮异质:REGION_TIDE(4 家×4 era)接入 NPC 贸易速率(乱世北岳凶、盛世东丘旺) - 灾年全环:灾年群雄相噬(互攻概率×1.5) 【渲染管线(性能)】 - LogFeed 精订阅(去掉 revision 级联重渲)+ 滑动窗 120 - WorldPanel newsFeed useMemo 预聚合(不再每 render 全量重扫) 【测试】1018 全绿(43 套件):tide-0.1.21 7 例(延续档/温度/史表/区域/灾年/指纹敏感/滑动窗); 双金钟罩 0.1.21 基线固化;build 通过
This commit is contained in:
@@ -100,6 +100,7 @@ export function normalizeGameState(state: GameState): GameState {
|
||||
state.worldSim.eraStartYear = state.year ?? 1
|
||||
}
|
||||
if (typeof state.worldSim.overfluxYear !== 'number') state.worldSim.overfluxYear = -99
|
||||
if (!Array.isArray(state.worldSim.worldAnnals)) state.worldSim.worldAnnals = []
|
||||
if (state.worldSim.distress && typeof state.worldSim.distress !== 'object') state.worldSim.distress = undefined
|
||||
for (const dyn of Object.values(state.worldSim.npcDyn)) {
|
||||
if (dyn && typeof (dyn as { prosperity?: unknown }).prosperity !== 'number') {
|
||||
|
||||
Reference in New Issue
Block a user