外观
破界深渊 · 技术实现
「玩家设定 →」
1. 代码位置
| 层 | 类 | 职责 |
|---|---|---|
| Controller | controller/RealmAbyssController(/api/dungeon/realm-abyss) | 深渊总览/挑战/扫荡 |
| Service | service/RealmAbyssService | 挑战结算、评级、奖励(五彩神石/法则精粹) |
| Service | service/LongBattleService、service/LongBattleEngine | 墙钟长线战斗(LongBattleType.REALM_ABYSS) |
| domain | domain/RealmAbyssRules | 规则:MAX_DEPTH=10、TARGET_CLEAR_SECONDS=7200、RAINBOW_STONE_BASE=2、PERFECT_HP_RATIO=0.5、精粹品质 1/2/3 |
| domain | domain/RealmAbyssDepth | 每层防御比 1.00~1.50、targetTrueDps 1,000~250,000;9 层起要求渡劫满级、10 层要求称号 10 阶 |
| domain | domain/BossAffixRules、domain/DynamicHpScaling | 血量动态缩放、7 层起闪避补偿 |
2. 数据表
| 表 | 关键列 | 说明 |
|---|---|---|
player_realm_abyss_progress | player_id、depth、best_rating、claimed | 深渊进度与评级(V73) |
player_long_battle_session | player_id、battle_type、started_at、deadline、state | 长线战斗会话(V74) |
3. 配置与常量
- 深渊规则:
名称 数值 说明 maxDepthMAX_DEPTH 10 — targetClearSecondsTARGET_CLEAR_SECONDS 7_200 — playerSurvivalSecondsPLAYER_SURVIVAL_SECONDS 14_400 — perfectHpRatioPERFECT_HP_RATIO 0.50D — rainbowStoneBaseRAINBOW_STONE_BASE 2 — rainbowStonePerfectBonusRAINBOW_STONE_PERFECT_BONUS 2 — rainbowStoneFirstClearBonusRAINBOW_STONE_FIRST_CLEAR_BONUS 3 — essenceQualityMortalESSENCE_QUALITY_MORTAL 1 — essenceQualitySpiritESSENCE_QUALITY_SPIRIT 2 — essenceQualityImmortalESSENCE_QUALITY_IMMORTAL 3 — 来源:emberfall-server/src/main/java/com/emberfall/domain/RealmAbyssRules.java· commit5916da43b88f343400acfdb20c97a5cc7927fdbd - 怪物生成(真伤锚点):emberfall-server/src/main/java/com/emberfall/domain/RealmAbyssRules.java:30源码读取失败,片段不可用
- 解锁条件(9/10 层):见
RealmAbyssService校验(渡劫满级 / 称号 10 阶) - yml 键:
emberfall.long-battle.time-scale(生产必须为 1)
4. 数据流简述
POST /api/dungeon/realm-abyss/challenge 校验层数解锁条件后创建长线会话,RealmAbyssRules.encounterStats 以玩家有效真伤 DPS 生成怪物(防御 ≥ 玩家攻击、普攻压制为 1、真伤唯一有效输出)。结算按通关时间评级(完美 ≤50% 血量通关 +2 神石),发放五彩神石(基础 2 + 完美 2 + 首通 3)与法则精粹(凡品/灵品/仙品),进度写 player_realm_abyss_progress。
5. 已知差异
无
6. 相关代码
- 炼体秘境(
BodyTemperingRules:固伤版同构玩法) - 天道法则(
LawType:真伤来源) - 称号(
TitleRules:10 层解锁要求称号 10 阶) - 境界(
Realm:9 层起要求渡劫满级)