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:
@@ -104,6 +104,18 @@ export const ERA_CONF: Record<'shengshi' | 'pingshi' | 'luanshi' | 'mofa', {
|
||||
mofa: { name: '末法', desc: '灵机衰微,大能隐迹,仙路将绝。', calamityMult: 1.2, supplyMult: 0.7, demandMult: 0.85, auctionMult: 0.6, tideBias: -0.09, flow: [['pingshi', 0.4], ['shengshi', 0.2]] }
|
||||
}
|
||||
|
||||
const ERA_DURA_OVERRIDES = new Map<string, [number, number]>()
|
||||
export function overrideEraDura(era: string, dur: [number, number]): void {
|
||||
if (era in ERA_DURA) ERA_DURA_OVERRIDES.set(era, dur)
|
||||
}
|
||||
export function resetEraDura(era?: string): void {
|
||||
if (era) ERA_DURA_OVERRIDES.delete(era)
|
||||
else ERA_DURA_OVERRIDES.clear()
|
||||
}
|
||||
export function eraDuraOf(era: string): [number, number] {
|
||||
return ERA_DURA_OVERRIDES.get(era) ?? ERA_DURA[era as keyof typeof ERA_DURA] ?? [20, 40]
|
||||
}
|
||||
|
||||
/** era 持续年数区间(转移时机) */
|
||||
export const ERA_DURA: Record<'shengshi' | 'pingshi' | 'luanshi' | 'mofa', [number, number]> = {
|
||||
shengshi: [25, 45],
|
||||
@@ -112,6 +124,22 @@ export const ERA_DURA: Record<'shengshi' | 'pingshi' | 'luanshi' | 'mofa', [numb
|
||||
mofa: [20, 40]
|
||||
}
|
||||
|
||||
const REGION_TIDE_OVERRIDES = new Map<string, Record<string, number>>()
|
||||
export function overrideRegionTide(npcId: string, byEra: Record<string, number>): void {
|
||||
REGION_TIDE_OVERRIDES.set(npcId, byEra)
|
||||
}
|
||||
export function resetRegionTide(npcId?: string): void {
|
||||
if (npcId) REGION_TIDE_OVERRIDES.delete(npcId)
|
||||
else REGION_TIDE_OVERRIDES.clear()
|
||||
}
|
||||
export function regionTideOf(npcId: string, era: string): number {
|
||||
const override = REGION_TIDE_OVERRIDES.get(npcId)?.[era]
|
||||
if (override !== undefined) return override
|
||||
const base = REGION_TIDE[npcId]
|
||||
if (!base) return 0
|
||||
return base[era as keyof typeof base] ?? 0
|
||||
}
|
||||
|
||||
/** 区域灵势(NPC id × era → 修正量 +-0.06~0.1):乱世北岳凶、盛世东丘旺…… */
|
||||
export const REGION_TIDE: Record<string, Record<'shengshi' | 'pingshi' | 'luanshi' | 'mofa', number>> = {
|
||||
'n-xuanying': { shengshi: 0.06, pingshi: 0, luanshi: -0.08, mofa: -0.06 },
|
||||
|
||||
Reference in New Issue
Block a user