0.1.41 天命·兑现:天命flag全量接线15+项即时兑现 + NPC演化种子派生零主rng消耗 + pushNews/purgeNpc确定性修复 + 族史卷叙事层chronicle-scroll.ts + 时效flag自动清理 + UI建筑专精加成预览 + LegacyPanel族史卷视图 + 金钟罩重算
This commit is contained in:
@@ -82,8 +82,8 @@ describe('审计回归:P0 修复固化', () => {
|
||||
})
|
||||
|
||||
it('防御性修补后金钟罩不变(行为等价确认)', () => {
|
||||
// 0.1.40 天命·裂痕:天命系统+NPC宗主更替四模式+势力分裂+灰烬重生——全线受控变更重算
|
||||
expect(stateFingerprint(longRun('bell-seed-1').state)).toBe('b050ad28')
|
||||
expect(stateFingerprint(longRun('bell-seed-3').state)).toBe('0b56c19b')
|
||||
// 0.1.41 天命·兑现:NPC 演化种子派生+pushNews 修复+天命 flag 全量接线——全线受控变更重算
|
||||
expect(stateFingerprint(longRun('bell-seed-1').state)).toBe('2b6c46d2')
|
||||
expect(stateFingerprint(longRun('bell-seed-3').state)).toBe('34c76ced')
|
||||
})
|
||||
})
|
||||
|
||||
+8
-8
@@ -7,20 +7,20 @@ import { World } from '../src/renderer/game/engine/runtime/World'
|
||||
* 任何改动(重构日程/调平衡/加系统)若改变了确定性序列或结果,此测试立刻报红。
|
||||
* 更新规则:仅当**有意**变更序列逻辑时,三枚 seed 指纹同版更新并注明原因。
|
||||
*/
|
||||
// 0.1.40 天命·裂痕基线:天命系统+NPC宗主更替四模式+NPC势力分裂+灰烬重生新贵补位+建筑专精——
|
||||
// 全线受控变更重算(NPC演化逻辑增强+天命epilogue注册改变了时序/确定性序列)。
|
||||
// 0.1.41 天命·兑现基线:天命 flag 全量接线 + NPC 演化种子派生(零主 rng 消耗)+
|
||||
// pushNews 种子派生修复确定性破坏——全线受控变更重算。
|
||||
const GOLDEN: Record<string, Record<number, string>> = {
|
||||
'bell-seed-1': { 560: 'b050ad28', 1200: '379ad2e1', 2160: '2fada283' },
|
||||
'bell-seed-2': { 560: 'e3b4d40b', 1200: '5fb3aa1f', 2160: '50ad6832' },
|
||||
'bell-seed-3': { 560: '0b56c19b', 1200: '4737eedf', 2160: 'f597c050' }
|
||||
'bell-seed-1': { 560: '2b6c46d2', 1200: '0d909381', 2160: '5ec3b841' },
|
||||
'bell-seed-2': { 560: '34d82d30', 1200: 'fb24193f', 2160: '59b062df' },
|
||||
'bell-seed-3': { 560: '34c76ced', 1200: '9e36fa5b', 2160: '0dc87c13' }
|
||||
}
|
||||
|
||||
/** 第二金钟罩:自动 resolve 长跑("现实"世界——每 tick 处理待决事件;
|
||||
* 锁事件闸/事件流全程,防"冻结世界"指纹漏锁)。 */
|
||||
const GOLDEN_RESOLVED: Record<string, Record<number, string>> = {
|
||||
'bell-seed-1': { 560: '88f28074', 1200: 'd6b9cc85', 2160: 'c5b9b102' },
|
||||
'bell-seed-2': { 560: '5ca6b6a9', 1200: '6a66a750', 2160: 'c8e8e982' },
|
||||
'bell-seed-3': { 560: 'fb5bc0e8', 1200: '3e09f864', 2160: 'fae786ae' }
|
||||
'bell-seed-1': { 560: '073025e5', 1200: '444f2635', 2160: '73733808' },
|
||||
'bell-seed-2': { 560: 'c1b08533', 1200: 'c63d74cc', 2160: '22868a68' },
|
||||
'bell-seed-3': { 560: 'c0c477f9', 1200: 'adfad18e', 2160: 'df5bed84' }
|
||||
}
|
||||
|
||||
const TIERS = [
|
||||
|
||||
@@ -170,8 +170,8 @@ describe('GameFacade 门面', () => {
|
||||
|
||||
it('默认配置金钟罩不受门面化影响', () => {
|
||||
PACK.reset()
|
||||
// 0.1.40 天命·裂痕:天命系统+NPC宗主更替四模式+势力分裂+灰烬重生——全线受控变更重算
|
||||
expect(stateFingerprint(longRun('bell-seed-1').state)).toBe('b050ad28')
|
||||
expect(stateFingerprint(longRun('bell-seed-3').state)).toBe('0b56c19b')
|
||||
// 0.1.41 天命·兑现:NPC 演化种子派生+pushNews 修复+天命 flag 全量接线——全线受控变更重算
|
||||
expect(stateFingerprint(longRun('bell-seed-1').state)).toBe('2b6c46d2')
|
||||
expect(stateFingerprint(longRun('bell-seed-3').state)).toBe('34c76ced')
|
||||
})
|
||||
})
|
||||
|
||||
@@ -261,18 +261,18 @@ describe('0.1.38 存档根治 · 存储链路回归(hybrid memory backend)',
|
||||
})
|
||||
})
|
||||
|
||||
describe('0.1.40 存档根治 · 版本号一致性', () => {
|
||||
it('slots.ts GAME_VERSION = 0.1.40', async () => {
|
||||
describe('0.1.41 存档根治 · 版本号一致性', () => {
|
||||
it('slots.ts GAME_VERSION = 0.1.41', async () => {
|
||||
const { buildSimpleMeta } = await import('../src/renderer/game/storage/slots')
|
||||
const w = World.create({ seed: 'ver-1', surname: '周', familyName: '周家', motto: 'm', difficulty: 'normal' })
|
||||
const meta = buildSimpleMeta(w.state, 1, 5)
|
||||
expect(meta.version).toBe('0.1.40')
|
||||
expect(meta.version).toBe('0.1.41')
|
||||
})
|
||||
|
||||
it('storeHelper metaFromState version = 0.1.40', async () => {
|
||||
it('storeHelper metaFromState version = 0.1.41', async () => {
|
||||
const { metaFromState } = await import('../src/renderer/ui/storeHelper')
|
||||
const w = World.create({ seed: 'ver-2', surname: '吴', familyName: '吴家', motto: 'm', difficulty: 'normal' })
|
||||
const meta = metaFromState(w.state, 1)
|
||||
expect(meta.version).toBe('0.1.40')
|
||||
expect(meta.version).toBe('0.1.41')
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user