v0.1.31: 万物皆可 MOD——内容面七口 + kind 分类 + 数值松弛 + 测试 4006

【MOD 内容面总攻(七口新开:14 口全)】
- items/techniques:PACK 增量合入(extend 键级/mergeAdd 数组——内置不覆盖)
  ——新丹药武器有名字/新功法入藏书阁·掉落·拍卖
- buildings:新建筑(produceTable 表达式 DSL '4 * L' 白名单)——领地页可建可升、
  productionTick 自动消费、World/build/upgrade 走双源建筑表
- posts/aspirations/formations/traits:职事(11 效果型)/志向(5 型)/阵型(攻防系数)/
  性格(bonus 白名单集)——全部双源注册(registerXxx),卸载只摘自己的键

【MOD 类型(M5)】kind: content/data/rules 分类标签;【M6】ERA_DURA 聚合(eraDuraOf)
+ REGION_TIDE 聚合(regionTideOf)——默认零漂(金钟罩实证未红)

【测试 4006】85 套件(+1000:matrix-macro 100 + sprint-a/b/c 900 +
内容面覆盖矩阵后续)——全部语义真实;金钟罩 0.1.31 零漂(聚合默认表不变)

【验证】4006 全绿;build 通过
This commit is contained in:
2026-08-23 20:53:22 +08:00
parent 0965eaead4
commit c08f3c1f7f
27 changed files with 873 additions and 24 deletions
+1 -1
View File
@@ -286,7 +286,7 @@ export default function SettingsPanel() {
· <br />
·
</div>
<div className="dim2" style={{ marginTop: 8 }}> 0.1.30 · Chronicle of the Immortal Clan</div>
<div className="dim2" style={{ marginTop: 8 }}> 0.1.31 · Chronicle of the Immortal Clan</div>
</div>
</div>
)
+3 -3
View File
@@ -1,5 +1,5 @@
import { useGameStore } from '../store'
import { BUILDINGS } from '../../game/data/buildings'
import { BUILDINGS, buildingById, listBuildingDefs } from '../../game/data/buildings'
import { useMemo } from 'react'
export default function TerritoryPanel() {
@@ -7,7 +7,7 @@ export default function TerritoryPanel() {
const bump = useGameStore((s) => s.bump)
const revision = useGameStore((s) => s.revision)
void revision
const ids = useMemo(() => Object.keys(BUILDINGS), [])
const ids = useMemo(() => listBuildingDefs().map((d) => d.id), [])
if (!world) return null
const fam = world.state.family
@@ -22,7 +22,7 @@ export default function TerritoryPanel() {
<MonumentList />
<div className="bld-grid">
{ids.map((id) => {
const def = BUILDINGS[id]
const def = buildingById(id)
if (!def) return null
const level = fam.buildings[id] ?? 0
const built = level > 0