v0.1.34a: 功法万象+世界自演化——流派效果/元素时节/悟位大成/战争疲劳/换代半衰/断供应急/新秘境

【功法】TechniqueDef 新增 critChance/guardBonus/tribBonus/secretBonus(optional 零漂);
6 部新功法(玄冰凝甲/紫电惊雷/丹鼎护道/风遁青冥/山灵镇岳/澜海听涛);
季节元素共鸣(春木夏火秋金冬水——修炼额外×1.04);演武场联动悟位积累;悟位2大成战斗效果倍增
【世界】warFatigue 互攻累积→世界温度冷降→乱世加速(打不动即荒年);
NpcDyn 换代恩义清(关系网向零收敛×0.5);断供应急(连续3月池深<70%→广播+价×1.5);
新秘境灵机(年首几率·乱世×2·模板化生成 addMission 扩展口);addMission 公共口(secrets.ts)
【修复】shortage 广播模块级全局污染→世界状态化(多世界确定性恢复)
【测试】world 确定性恢复绿;金钟罩预期漂移(换代/共鸣/warFatigue)——0.1.34 基线待重算
This commit is contained in:
2026-08-23 22:00:55 +08:00
parent b7c5f1eca0
commit a491b9c54a
12 changed files with 163 additions and 15 deletions
+43
View File
@@ -112,6 +112,49 @@ export const MISSIONS: MissionDef[] = [
}
]
/** 0.1.34 新秘境可加性:ext 表+唯一 id 追加(MOD/插件/世界生成共用——MISSIONS 静态表不变) */
const EXTRA_MISSIONS: MissionDef[] = []
export function addMission(def: MissionDef): void {
if (!EXTRA_MISSIONS.find((x) => x.id === def.id)) EXTRA_MISSIONS.push(def)
}
/** 全部任务:静态 + MOD/世界新增合并(每次构建——小规模数组,且扩张随时生效) */
export function allMissions(): MissionDef[] {
return [...MISSIONS, ...EXTRA_MISSIONS]
}
/** 新秘境生成模板(万象归元·天下灵机偶现)——年首世界侧 chance 生出,皆可探索 */
export const WONDER_TEMPLATES: Omit<MissionDef, 'id' | 'name'>[] = [
{
region: '云梦大泽', icon: '泽', desc: '千年碧潭,隐有灵机吞吐——是仙家典籍中的洞天妙处。',
realmHint: 'foundation', minMembers: 2, maxMembers: 4, risk: 0.7,
stages: [
{ kind: 'event', months: 2, title: '雾锁重泽', text: { safe: '泽畔灵雾和煦,众人寻得一泓灵泉。', bad: '泽中瘴气潜涌,队伍仓促退避。' } },
{ kind: 'combat', months: 2, title: '水泽龙王', enemyId: 'e-huanhan' },
{ kind: 'resource', months: 2, title: '泽底洞府', loot: { resources: { lingyu: [4, 10], linglu: [3, 8] }, artifactChance: 0.18, techniqueChance: 0.1, techGrades: [2, 3] } }
],
completionLoot: { resources: { lingyu: [3, 9], lingcao: [30, 70] }, artifactChance: 0.2, techniqueChance: 0.12, techGrades: [2, 3] }
},
{
region: '苍梧断崖', icon: '崖', desc: '断崖云雾缭绕,偶见琼光微闪——遗世洞府的门扉近在眼前。',
realmHint: 'qi', minMembers: 1, maxMembers: 3, risk: 0.55,
stages: [
{ kind: 'combat', months: 2, title: '崖间宿怨', enemyId: 'e-tiebei' },
{ kind: 'resource', months: 2, title: '崖扉初启', loot: { resources: { lingkuang: [25, 55], lingmu: [5, 12] }, artifactChance: 0.1, techniqueChance: 0.06 } }
],
completionLoot: { resources: { lingkuang: [20, 55], lingmu: [6, 16], shoupi: [3, 6] }, artifactChance: 0.12, techniqueChance: 0.08, techGrades: [1, 2] }
},
{
region: '幽都古道', icon: '幽', desc: '青石古道上阴风掠耳——上古修士埋骨之地,得之者富。',
realmHint: 'core', minMembers: 3, maxMembers: 4, risk: 0.8,
stages: [
{ kind: 'event', months: 2, title: '古道逢阴', text: { safe: '香火未绝的驿亭里,捡得一把尘封古剑。', bad: '阴煞蚀骨,众人寒战如大病初愈。' } },
{ kind: 'combat', months: 2, title: '尸修拦路', enemyId: 'e-baiqi' },
{ kind: 'boss', months: 3, title: '墓庭之主', enemyId: 'e-huanhan' }
],
completionLoot: { resources: { lingyu: [3, 8], beastcore: [4, 10], dansha: [3, 7] }, artifactChance: 0.3, techniqueChance: 0.14, techGrades: [3] }
}
]
export function missionById(id: string): MissionDef {
const m = MISSIONS.find((x) => x.id === id)
if (!m) throw new Error(`mission not found: ${id}`)