多周目长期循环规则 v1.0
状态:2026-07-18 P1 直接放行;本文件是多周目 B/C/D 的可编码契约。 目标:把终局结算、账号累计、新周目重置和保留项接成确定性状态链。 非目标:第 4 年规则、手动剧情线选择、跨设备存档、联机房间结算、成就体系重构。
1. 时间与结算
| 项 | v1 规则 |
| :--- | :--- |
| Year 1/2/3 锚点 | 第 360 / 720 / 1080 天 |
| 结算窗口 | 每个锚点前后 7 天 |
| 第 4 年 | 不定义;第 1080 天后沿用第三年运行态但不新增胜利锚点 |
| 周目曲线 | 1.0 / 0.8 / 0.6 / 0.4;第 4+ 周目固定 0.4 |
| 跨年衰减 | 第 2+ 周目基础分先乘 0.95,且只应用一次 |
| 传承特权 | legacy 模式在衰减后的基础分上追加 +0.1 |
| 单周目上限 | 1000 江湖阅历 |
0.95 的唯一应用位置是结算计划逻辑进入 computeLegacyPoints() 之前。纯折算函数不再自行重复衰减。
2. 新周目保留与重置
| 领域 | 保留 | 重置 |
| :--- | :--- | :--- |
| 账号 | 江湖阅历、全局计数、已解锁成就、永久传承、外观、角色、挑战因子 | 无 |
| 剧情 | v1 沿用默认主线契约,不提供手动换线 | 节点进度、主线/支线任务运行态全部重置 |
| 装备 | 每个装备槽最多保留 1 件 Q6 传说及以上装备 | 其余装备和所有事件掉落/消耗品重置 |
| 装备状态 | 保留装备本体、品质、词条、等级和溯源字段 | equippedTo / equippedSlot 清空,进入新周目行囊 |
| 关系 | 每条已存在羁绊线以 30 为新周目基线 | 阶段按 30 重新派生;事件日、flags 清空 |
| Buff | 账号永久传承可在开局仪式重新应用 | 周目 Buff、定时 Buff、临时效果全部重置 |
| 资源 | 开局铜钱 120、声望 30、柴 5、水 5 | 上周目金钱、声望、厨房库存、设施、区域扩建与委托进度重置 |
| 角色/菜谱 | 使用现有新档默认值 | 上周目等级、状态与解锁运行态重置 |
2.1 传承装备选择
- 只处理
kind缺省或为equipment的EquippableItem。 - 品质按
qualityTier归一;缺失时按旧rarity映射。 - 候选必须达到 Q6
legend。 - 同一逻辑槽按战力降序、品质降序、等级降序、
id升序确定唯一保留项。 - 多槽装备按第一个稳定候选槽归组;无法推导槽位的装备不传承。
- 输出必须深拷贝,清空佩戴归属,不得改写上一周目快照。
3. 互斥与幂等
- 单个周目只能落一份终局真值:
settled胜利或endgame败局,不可同时存在。 GlobalProfile保留最近一次结算摘要与累计计数,但不保存完整周目运行态。- 同一个
slotId + playthroughNo + settledAt的结算奖励只能写入账号一次。 - 新周目必须使用新的
playthroughNo;存档位满时允许复用当前终局槽,但账号结算记录保留。 - 联机房间
settled只属于联机状态机,不写个人PlaythroughSaveSlot。
4. 玩家入口
- 终局页“开启下一周目”使用当前终局槽作为传承来源。
- 门厅普通“重新开局”仍是纯新档,不自动继承上一周目运行态。
- 新周目确认文案必须说明:账号进度保留、最多每槽一件传说装备、羁绊从 30 起步、其他周目资源重置。
5. 实施切片
| 切片 | 文件层 | 交付 |
| :--- | :--- | :--- |
| LTR-1 | data | 规则常量、类型和默认值;无函数 |
| LTR-2 | utils | 传承装备选择、关系基线、跨周目 payload 计划纯函数 |
| LTR-3 | bridge | endgame restart intent 带 sourceSlotId;restart gate 读取源 slot 后生成新周目 |
| LTR-4 | settlement | 0.95 在结算计划上游只应用一次 |
| LTR-5 | regression | 空档、Q6 筛选、同槽决胜、关系 30、深拷贝、满槽复用、重复结算 |
6. 失败边界
- 源 slot 缺失或记录损坏:退回纯新档,不得阻止玩家开局。
- 传承装备无法归一:丢弃该候选并记录计划诊断,不写坏档。
- 账号落账失败:保留终局槽,不创建下一周目,避免奖励与周目号分叉。
- 任一规则需要改
GlobalProfileschema 时,停止并另开 schema migration lane。