🔔 Bladewake GDD
Trang chủ › Hệ thống › Cấu trúc run & bản đồ
⚙️ Hệ thống

Cấu trúc run & bản đồ

Doc 16 trình bày kèm số liệu run_map.json.

Cập nhật: 2026-11-07

1Tổng quan

6
Hồi
11
loại nút
7
khuôn làn
12
bản đồ dự phòng
1930
giây run trung vị

Mục đích: luồng 1 run từ hub tới kết: bộ sinh bản đồ mỗi Hồi (lưới, thuật toán, tần suất, nút bảo đảm, seed), luật từng loại nút, xem trước & chọn thưởng, kinh tế hồi phục, bảng thời gian, chuyển Hồi, cổng boss, chết/bỏ/thắng, tổng kết cuối run, tất định seed DAILY, lưu/tiếp tục ở ranh giới nút. Phụ thuộc: 00-Design-Bible.md §2 (cấu trúc run), §2.1–2.3, §3.3 (tiền tệ), §3.6 (Lễ Vật, nâng trạm), §4 (Khăn Tang, mode), §7 (biome) + data/_bible.json (run.*, modes, mourning_bands, currencies); 10-Combat-Core.md §2.4 (co giãn), §8 (HP & hồi phục); 14-Adaptive-AI.md §8.2 (phòng hợp lệ MESO). Được dùng bởi: 15-Horde-Director-Encounters.md (mục tiêu, thời lượng phòng), doc nâng cấp/draft/Relic, doc meta/hub/tiền tệ, doc Khăn Tang/mode/mutator, doc sự kiện EVT, doc UI (bản đồ, thẻ thưởng, tổng kết), doc lưu/Steam, code RunController/MapGen/NodeRunner/RunSave/RunSummary.

2Phạm vi & thuật ngữ

  • Doc này định nghĩa khung run: thứ tự nút, sinh bản đồ, thưởng, hồi phục, thời gian, lưu. Phòng chiến đấu bên trong (ngân sách quái, mục tiêu, kịch bản sóng) ở 15-Horde-Director-Encounters.md.
  • Mâu thuẫn số với Bible → Bible thắng. Số [ASSUMED] = lượt đầu, chỉnh bằng playtest qua run_structure.csv (key = tên field ở doc này), không cần DEC nếu không đổi luật Bible.
  • Hồi = act (B1–B4 = Hồi I–IV, B5 = Kết, B6 = Bí mật). Hàng R1–R6, làn L0/L1/L2 (trái → phải). Nút = 1 ô bản đồ có loại (CMB ELT CHL EVT SHP RST SEC RSC MBS BOS DOCK). Đường = chuỗi nút R1→R6 theo cạnh. Cổng = nút ELT hoặc MBS. Tiện ích = SHP/RST/EVT/SEC. Phòng chiến = CMB/CHL/RSC.
  • Tên chốt dùng trong UI: Khăn Tang / Độ Tang (MRN01–MRN15), Act Mutator MUT01–MUT12, Dạng Rèn (Song Liềm Tro H01_AS1…), Dư Âm (ULT_GAUGE), Then Chốt (Gió Gạt H01_E37–E40), Vàng Mã (Vàng Mã CUR_PAPER_GOLD), Tro Hồn (Tro Hồn CUR_SOUL_ASH), Mảnh Vọng (Mảnh Vọng CUR_ECHO_SHARD), Nến Canh (Nến Canh CUR_VIGIL_CANDLE).

3Luồng run (hub → kết)

#BướcNơi / mànThời lượngGhi chú
1Chọn hero, ult, Dạng Rèn, 2 kỹ năng khởi đầuLửa Canh ST_HEARTHngoài đồng hồ runMRN09 → 1 kỹ năng
2Mua Lễ Vật (1, UP_MARKET_3 → 2)Chợ Đò ST_MARKETngoài đồng hồtắt ở DAILY/BOSS_RUSH
3Buộc Khăn Tang (sau END_BELL_TOLL)Chuông Thử ST_TEST_BELLngoài đồng hồĐộ Tang 0–43
4Chọn mode, xuất phátBến Đò ST_DOCK (Calla)6 s cảnh đòđồng hồ run bắt đầu khi bản đồ Hồi I hiện
5Hồi I: bản đồ → R1…R5 → R6 BOS BS_B1B16:30 trung vị§2–§6
6DOCK → Hồi II (+ Act Mutator) → … → Hồi IVB2–B47:10 / 7:20 / 7:20DOCK ≤ 20 s tính vào chuyển cảnh Hồi sau
7DOCK → Kết: ải 60 s → BS_FINALB53:50lựa "Giữ lõi" khi đủ điều kiện → END_ASH_CROWN
8(có Run sau mở B6 sau BS_FINAL (BS_TRUE). FLAG_SHORE_OPEN) ải 45 s → BS_TRUEB6+4:00→ END_QUIET_SHORE
9Tổng kết (§9) → về hubHUB_BELL_TOWERmàn tổng kết bỏ qua được sau 2 s"Thức Lại" vào run mới ≤ 5 s

Máy trạng thái RunController:

HUB → RUN_START → ACT_INTRO(act) → MAP(act) ⇄ NODE(act,row,lane) → REWARD → MAP …
  → BOSS_GATE(act) → NODE(BOS) → BOSS_REWARD → [act<4: DOCK → ACT_INTRO(act+1)]
  → [act=4: DOCK → FINALE_TRIAL → NODE(BS_FINAL) → ENDING]
  → [FLAG_SHORE_OPEN: SHORE_TRIAL → NODE(BS_TRUE) → ENDING_TRUE]
  bất kỳ NODE: hero HP 0 → REVIVE? (Lửa Gửi) → DEATH → SUMMARY → HUB
  MAP/pause: ABANDON → SUMMARY(abandon) → HUB
  • Mỗi chuyển trạng thái ghi 1 sự kiện telemetry run_state {run_id, from, to, act, row, lane, t_run}.
  • Lưu chỉ ở trạng thái MAP, DOCK, BOSS_GATE (§11).

4Bản đồ mỗi Hồi

📊 Khuôn làn, trọng số loại con, bản đồ mẫu

KhuônR1R2R3R4R5Trọng số
LN_T1CGUCC10
LN_T2CGCUC15
LN_T3CGCCU15
LN_T4CCGUC20
LN_T5CCGCU15
LN_T6CCUGC15
LN_T7CCCGU10
Loại con khung Chiến (C)Loại con khung Chiến (C)Giao Tranh: 70 (70%)Thử Lửa: 20 (20%)Giải Cứu: 10 (10%)CkhungGiao Tranh — 70 (70%)Thử Lửa — 20 (20%)Giải Cứu — 10 (10%)
Loại con khung Cổng (G)Loại con khung Cổng (G)Tinh Anh: 50 (50%)Mini-boss: 50 (50%)GkhungTinh Anh — 50 (50%)Mini-boss — 50 (50%)
Loại con khung Tiện ích (U)Loại con khung Tiện ích (U)Sự Kiện: 35 (35%)Sạp Rong: 30 (30%)Lửa Canh Nhỏ: 35 (35%)UkhungSự Kiện — 35 (35%)Sạp Rong — 30 (30%)Lửa Canh Nhỏ — 35 (35%)
Chiến (C)Cổng (G)Tiện ích (U)Boss (R6)Bến (DOCK)

2.1 Lưới

KhoáGiá trị
Kích thước6 hàng × 3 làn; R1–R5 mỗi hàng 2 hoặc 3 nút; R6 = 1 nút BOS ở L1
Số nút R1–R510–15; trung vị 13 (row_width 3 với xác suất 0.6 mỗi hàng, R1 luôn 3)
Cạnhnút hàng r nối 1–2 nút hàng r+1, chỉ cùng làn hoặc làn kề (±1, "nối chéo"); không cạnh L0↔L2; không 2 cạnh cắt nhau; mỗi nút R2–R5 có ≥ 1 cạnh vào, mỗi nút R1–R4 có ≥ 1 cạnh ra; mọi nút R5 → BOS
Lựa chọn/hàngtừ 1 nút, người chơi thấy 1–2 nút kế; toàn bản đồ ≥ 4 đường R1→R6 khác nhau (ít hơn → attempt tiếp) [ASSUMED]
Hiển thịtoàn bản đồ + icon loại nút + icon thưởng hiện từ đầu Hồi (Bible §2); EVT hiện "?" (UP_DOCK_1 → hiện tên sự kiện); Act Mutator của Hồi hiện ở góc bản đồ từ Hồi II
Vị trí hiển thịnút R1 dưới cùng, BOS trên cùng; khoảng làn 54 px UI, khoảng hàng 40 px UI (≈ 4:3); jitter ±3 px để bản đồ không như bảng tính; 6 hàng × 40 = 240 ≤ 267 UI px vùng bản đồ (40 UI-06, 2026-11-07 — thay 96/72 px ±8 cũ không vừa 6 hàng)

2.2 Thuật toán sinh (MapGen.Generate(act, seed))

rng = Stream(seed, "map", act)
for attempt in 1..64:
  1. lanes : mỗi làn bốc 1 khuôn làn từ bảng §2.3 theo trọng số (3 làn khác khuôn nếu được)
  2. assign: nút (r, l) nhận loại khung C/G/U theo khuôn của làn l ở hàng r
  3. widths: R1 = 3; R2..R5 = (rng < 0.6) ? 3 : 2; hàng 2 nút bỏ nút L0 hoặc L2 CHỈ khi nút đó là C
             (cả hai không phải C → hàng giữ 3)
  4. edges : mỗi nút nối thẳng (cùng làn, nếu hàng sau có làn đó) + 40% thêm 1 cạnh chéo;
             nút không có cạnh ra → nối làn gần nhất; nút không có cạnh vào → nối từ làn gần nhất;
             bỏ cạnh chéo cắt nhau (giữ cạnh có rng nhỏ hơn)
  5. gate2 : rng < 0.35 → 1 làn rìa (L0 hoặc L2) đổi 1 nút C (R3–R5, không kề G của làn) thành ELT_RISK
  6. subtype: rải loại con (§2.4): CMB/CHL/RSC, ELT/MBS, SHP/RST/EVT, SEC 15%, mục tiêu CMB, thưởng
  7. validate(§2.5) mọi đường (≤ 3^5 = 243 đường, liệt kê DFS)
     sai → thử bỏ 1 cạnh chéo gây lỗi (giữ ràng buộc vào/ra); vẫn sai → attempt tiếp
  8. ok → return map
fallback: khuôn tay MAP_FB_<act>_<rng%3> (3 bản/Hồi, đã qua validate) + bước 6 rải loại con
  • Mọi rng trong 1 Hồi lấy từ luồng map của Hồi đó (§10.1); cùng seed + cùng content_version → cùng bản đồ.
  • Thời gian sinh ≤ 2 ms (64 lần × 243 đường); chạy lúc ACT_INTRO, không trong trận.

2.3 Khuôn làn (lane_templates)

C = phòng chiến · G = Cổng · U = tiện ích. Mọi khuôn: R1 = C, G ∈ R2–R4, U ∈ R3–R5, đúng 3 C.

idR1R2R3R4R5Trọng số
T1CGUCC10
T2CGCUC15
T3CGCCU15
T4CCGUC20
T5CCGCU15
T6CCUGC15
T7CCCGU10

Hệ quả: mỗi đường R1–R5 có đúng 3 C + 1 G + 1 U (đường đi qua ELT_RISK: 2 C + 2 G + 1 U). Không đường nào có 2 tiện ích (sẽ còn 2 C < 3, sai luật Bible).

2.4 Tần suất loại con

KhungLoại con · trọng sốLuật bổ sung
C ở R1CMB 100mục tiêu R1 mỗi Hồi: PURGE 50 · TIDE 30 · VIGIL 20 (phòng đầu Hồi không có MESO, 14 §8.2); run đầu đời Hồi I R1 = PURGE
C ở R2–R5CMB 70 · CHL 20 · RSC 10CHL từ run đời thứ 2, ≤ 2/bản đồ; RSC ≤ 1/bản đồ; Hồi II khi H04 chưa mở: ép đúng 1 RSC ở R2 hoặc R3 (ưu tiên L1) — chỉ ép khi H04 có trong content_version; build không có H04 (EA MS03; H04 ra ở MS04) → RSC thường (thưởng SKILL + META), không ép; núm run_map.settings.rsc_forced_act (= II; bỏ qua khi H04 không có trong build)
GHồi I: ELT 60 · MBS 40 · Hồi II–IV: 50 · 50bản đồ có ≥ 2 nút G → ≥ 1 ELT + ≥ 1 MBS; run đầu đời: mọi G Hồi I = ELT DUEL với EL_B1_01; MRN10 → mỗi G = cặp ELT+MBS (§3)
ELT_RISKELT (cờ risk)icon 2 lưỡi bắt chéo viền đỏ xỉn; thưởng Relic chọn 1/3 (thay 1/2)
UEVT 35 · SHP 30 · RST 35sau đó mỗi U cuộn 15% thành SEC (≤ 1 SEC/bản đồ); ≥ 1 SHP/bản đồ (trừ MUT10); Hồi II–IV ≥ 1 RST/bản đồ; MUT10 Thề Câm: mọi SHP → RST, và 1 C ở R4–R5 làn khác thành RST thêm (đường qua nó vẫn phải hợp lệ, nếu không bỏ bước này)
Mục tiêu CMB R2–R5PURGE 18 · VIGIL 14 · BELLS 14 · TIDE 14 · NEST 14 · GAUNTLET 12 · CHASE 14≤ 1 GAUNTLET, ≤ 1 CHASE/bản đồ; không 2 mục tiêu trùng liền nhau trên bất kỳ đường nào (cuộn lại ≤ 8 lần, rồi chấp nhận)
Mục tiêu CHLnhư CMB trừ CHASEbiến thể: 50% Act Mutator cục bộ (MUT01/02/04/08/09/11, không trùng mutator Hồi) · 50% Tinh Anh ASH (1 Tinh Anh biome chèn ở 40% thời lượng, 1 thế đáp bật sẵn); Tro Nhớ tắt (L_eff = 0) → luôn mutator
Mục tiêu ELTDUEL 50 · HUNT 50Hồi I run 1–3 đời: DUEL 100; HUNT Hồi I dùng EL_B1_01 + EL_B1_02
Biome Tinh Anhđều nhau trong roster biome (2/2/2/3)ưu tiên Tinh Anh chưa gặp trong run
Mini-boss MBSđều nhau trong roster biome (1/2/2/2)ưu tiên chưa gặp trong 3 run gần nhất

2.5 Kiểm hợp lệ (validate, mọi đường R1→R6)

#LuậtNguồn
V1đường không chứa ELT_RISK: đúng 1 G trong R2–R4Bible §2
V2đường chứa ELT_RISK: đúng 2 G (1 G gốc R2–R4 + ELT_RISK), 2 CBible §2 (Cổng thứ 2 thay 1 phòng chiến)
V3≥ 1 U trong R3–R5 (thực tế đúng 1)Bible §2
V4≥ 3 C (V2: 2 C)Bible §2
V5không 2 G liền nhau trừ khi MRN10doc này [ASSUMED]
V6ước thời gian đường (bảng §6) trong trung vị Hồi ± 20 s; đường có ELT_RISK miễn; run MRN10 so với cột MRN10 §6.1 (không với trung vị thường)Bible §2 (±20 s)
V7mọi nút đến được từ ≥ 1 nút R1 và tới được BOSđồ thị
V8ràng buộc §2.4 (≥ 1 SHP, ≥ 1 RST II–IV, RSC ép Hồi II khi H04 có trong build, ≤ 1 SEC, ≤ 1 GAUNTLET, ≤ 1 CHASE)doc này
  • V6 tính bằng t_path = Σ t_node + t_boss + t_transition (§6.1). Với khuôn §2.3, mọi đường không rủi ro có cùng tổng → V6 luôn đạt; giữ V6 để bắt lỗi dữ liệu khi chỉnh thời lượng.

2.6 Ràng buộc theo Khăn Tang / mutator / mode

NguồnẢnh hưởng bản đồ
MRN10 Cổng Képmỗi G = 1 nút "Cổng Kép": ELT rồi MBS liền (2 trận, nghỉ 4 s, không về bản đồ), thưởng cả 2; thời lượng G = 65 + 70… (bảng §6.1, cột MRN10)
MRN14 Kẻ Truy Tangmỗi 3 phòng chiến đã qua (đếm qua Hồi) → phòng chiến kế tiếp chèn 1 Tinh Anh săn đuổi (15 §7.3); icon móng vuốt trên nút
MUT10 Thề Câmxem §2.4
MUT12 Gương Trophòng R1 được MESO (bỏ luật phòng đầu)
DAILYbản đồ từ seed ngày; Act Mutator thay bằng 2 mutator seed (§10.1)
ENDLESS sau BS_B4mỗi tầng bản đồ rút gọn 3 hàng (§10.3)
UP_DOCK_21 lần/run ở R4: đổi sang nút R4 bất kỳ có cạnh từ làn kề (nút R3 hiện tại tới R4 làn ±1 dù không có cạnh)

2.7 Ví dụ đã tính (Hồi I, seed 0x5A17C3E1)

Khuôn: L0 = T2 (C G C U C), L1 = T4 (C C G U C), L2 = T6 (C C U G C). Hàng 3 nút trừ R5 (2 nút: bỏ L2 vì là C). gate2 cuộn 0.21 < 0.35 → L0 R5 C → ELT_RISK… nhưng L0 R5 kề G? G của L0 ở R2 → không kề → hợp lệ.

R6                 [BOS BS_B1]
R5  [ELT_RISK]      [CMB TIDE·EDGE+]
R4  [SHP]           [RST]              [ELT DUEL]
R3  [CHL BELLS·EDGE+×2] [ELT HUNT]     [EVT ?]
R2  [MBS MB_B1_1]   [CMB NEST·GOLD]    [CMB VIGIL·EDGE+]
R1  [CMB PURGE·EDGE+] [CMB TIDE·SKILL] [CMB PURGE·GOLD]
  • Cạnh ban đầu: thẳng mọi làn + chéo L1R2→L0R3, L0R3→L1R4, L2R2→L1R3.
  • Validate: đường L2R1→L2R2→L1R3(G)→L1R4(U)→L1R5 hợp lệ. Đường L1R1→L1R2→L0R3→L0R4(U)→L0R5 = 0 G gốc + ELT_RISK: sai V1/V2 → bỏ cạnh L1R2→L0R3 (L0R3 còn vào từ L0R2) → hợp lệ. Đường L0R1→L0R2(G)→L0R3→L1R4(U)→L1R5: 1 G, 1 U, 3 C → hợp lệ.
  • Cạnh sau validate: R1→R2 thẳng; R2→R3 thẳng + L2→L1; R3→R4 thẳng + L0→L1; R4→R5 L0→L0, L1→L1, L2→L1 (L2R5 bị bỏ). Kết quả: 14 nút, 5 đường (≥ 4 ✓), 1 đường qua ELT_RISK; ≥ 1 SHP ✓, 1 SEC (không cuộn trúng) ✓, mục tiêu không lặp liền ✓.

5Loại nút

📊 Loại nút & thưởng

NútKhungt Hồi IIIIIIIVMục tiêuLuật thưởng
Giao Tranh CMBC55606060Thanh Tẩy PURGE · Canh Lửa VIGIL · Gõ Chuông BELLS · Thuỷ Triều TIDE · Đập Tổ NEST · Hành Lang GAUNTLET · Truy Đuổi CHASE1 mục tiêu (doc 15 §10); xong phòng: icon thưởng của nút (reward_tables, cuộn lúc sinh bản đồ từ luồng reward) + thưởng chung doc 16 §3.2 (+8% HP tối đa, XP 25 × hệ số Hồi, Tro Hồn 30/35/40/32)
Tinh Anh ELTG65707575Quyết Đấu DUEL · Săn Tinh Anh HUNTDUEL hoặc HUNT; Relic chọn 1/2 (cờ risk = ELT_RISK: chọn 1/3) + thưởng chung (+8% HP tối đa, XP 40/Tinh Anh, Tro Hồn 25/Tinh Anh)
Thử Lửa CHLC55606060Thanh Tẩy PURGE · Canh Lửa VIGIL · Gõ Chuông BELLS · Thuỷ Triều TIDE · Đập Tổ NEST · Hành Lang GAUNTLETmục tiêu CMB trừ CHASE + 50% Act Mutator cục bộ (MUT01/02/04/08/09/11, không trùng mutator Hồi) hoặc 50% Tinh Anh ASH chèn ở 40% thời lượng; không Khăn Tang; thưởng nút ×2 (cột CHL ×2 doc 16 §4.2) + thưởng chung
Sự Kiện EVTU303535351 trong 10 sự kiện của biome (EVT_B1_01…EVT_B4_10), 2–3 lựa chọn đổi tài nguyên; thưởng theo lựa chọn (events.json); bản đồ hiện "?" (UP_DOCK_1 → hiện tên sự kiện)
Sạp Rong SHPU30353535Sạp của Bà Mott (NPC_MOTT) 6 ô theo doc 13 §12.1; mua bằng Vàng Mã theo shop_prices; kho sinh từ luồng shop keyed act·100 + row·10 + lane, cố định trong 1 lần ghé
Lửa Canh Nhỏ RSTU30353535chọn 1: hồi phục 40% HP tối đa · nâng hạng 1 kỹ năng đang lắp · gỡ 1 Relic Lời Nguyền (chỉ hiện khi có)
Mộ Lạc SECU30353535có Relic: đổi 1 Relic đang có lấy 1 Relic Lời Nguyền (chọn 1/2); chưa có Relic: nhận 1 Lời Nguyền (chọn 1/2) + 80 Vàng Mã; đang mang 2 Lời Nguyền (trần, doc 13 §13.1) → chỉ hiện lựa 80 Vàng Mã; luôn có nút "Rời đi" (0 thưởng)
Giải Cứu RSCC55606060Giải Cứu RESCUERESCUE: phá kén Kẻ Thức HP 400 giữa bầy; lần đầu ở Hồi II: mở H04 (icon mở hero thay icon thưởng); sau đó SKILL + META + thưởng chung
Mini-boss MBSG65707575Mini-boss MINIBOSS1 mini-boss biome + sân rỉ ≥ 6 quái S/20 s; Relic chọn 1/2 + 1 Mảnh Vọng (CUR_ECHO_SHARD) + thưởng chung (+8% HP tối đa, XP 60, Tro Hồn 60)
Boss Hồi BOSR690105110110Boss BOSSboss Hồi + sân rỉ ≥ 6 quái S/20 s; HP = max(HP hiện tại, 60% HP tối đa) · EDGE+ (BS_B2: có 1 lựa Then Chốt nếu Lv ≥ 11 — DEC-2026-11-07-14) · XP 80 · Tro Hồn 120 · Mảnh Vọng 2 (+3 lần đầu mỗi cặp boss × hero)
Bến Giữa Hồi DOCKDOCK20202020trần 20 s (trung vị 16 s, tính vào chuyển cảnh Hồi sau): hồi phục 25% HP tối đa · Sạp Rong 4 ô (UP_DOCK_3 → 5; ô theo doc 13 §12.1) · 1 lượt Đổi miễn phí · Calla chở đò (1 beat thoại ≤ 6 s)
Tỉ lệ loại nút trong 12 bản đồ dự phòngTỉ lệ loại nút trong 12 bản đồ dự phòngGiao TranhGiao Tranh: 105 nút105 nútTinh AnhTinh Anh: 20 nút20 nútMini-bossMini-boss: 16 nút16 nútLửa Canh NhỏLửa Canh Nhỏ: 12 nút12 nútSạp RongSạp Rong: 12 nút12 nútSự KiệnSự Kiện: 12 nút12 nútBoss HồiBoss Hồi: 12 nút12 nútGiải CứuGiải Cứu: 3 nút3 nút
Icon thưởng nút CMB (trọng số)Icon thưởng nút CMB (trọng số)EDGE+: 45 (45%)GOLD: 30 (30%)SKILL: 12 (12%)HEAL: 8 (8%)META: 5 (5%)CMBnútEDGE+ — 45 (45%)GOLD — 30 (30%)SKILL — 12 (12%)HEAL — 8 (8%)META — 5 (5%)
IconTrọng số CMBTrọng số CHLLượng ILượng IILượng IIILượng IV
EDGE+45451111
GOLD30306080100120
SKILL12121111
HEAL8825252525
META5560606060
RELIC002222
ECHO001111

3.1 Bảng nút (thời lượng trung vị Hồi I / II / III / IV, giây)

NútTênKhungThời lượngNội dungThưởng khi xong
CMBGiao TranhC55 / 60 / 60 / 601 mục tiêu (15 §10): PURGE/VIGIL/BELLS/TIDE/NEST/GAUNTLET/CHASEicon thưởng nút (§4.2) + chung (§3.2)
CHLThử LửaC55 / 60 / 60 / 60mục tiêu CMB (trừ CHASE) + Act Mutator cục bộ HOẶC Tinh Anh ASH; không Khăn Tangthưởng nút ×2 (§4.2) + chung
RSCGiải CứuC55 / 60 / 60 / 60RESCUE: phá kén Kẻ Thức HP 400 giữa bầylần đầu Hồi II (H04 có trong build): mở H04 Sậu; sau đó, hoặc build không có H04: SKILL + META
ELTTinh AnhG65 / 70 / 75 / 75DUEL hoặc HUNTRelic chọn 1/2 (ELT_RISK: 1/3) + chung
MBSMini-bossG65 / 70 / 75 / 751 mini-boss biome + sân rỉ ≥ 6 quái S/20 sRelic chọn 1/2 + 1 Mảnh Vọng CUR_ECHO_SHARD + chung
EVTSự KiệnU30 / 35 / 35 / 351 trong 10 sự kiện của biome (EVT_B1_01…EVT_B4_10); 2–3 lựa chọn đổi tài nguyêntheo lựa chọn (doc sự kiện)
SHPSạp RongU30 / 35 / 35 / 35Sạp của Bà Mott (Bà Mott NPC_MOTT), §3.3mua bằng Vàng Mã
RSTLửa Canh NhỏU30 / 35 / 35 / 35chọn 1: hồi phục 40% HP · nâng hạng 1 kỹ năng đang lắp · gỡ 1 Relic Lời Nguyền (chỉ hiện khi có)—
SECMộ LạcU30 / 35 / 35 / 35có Relic: đổi 1 Relic đang có lấy 1 Relic Lời Nguyền (chọn 1/2); chưa có: nhận 1 Lời Nguyền + 80 Vàng Mã; luôn có nút "Rời đi" (0 thưởng)như cột Nội dung
BOSBoss HồiR690 / 105 / 110 / 110boss Hồi + sân rỉ ≥ 6 quái S/20 shồi phục tới ≥ 60% HP · EDGE+ (BS_B2: có 1 lựa Then Chốt nếu Lv ≥ 11 (DEC-2026-11-07-14)) · chung
DOCKBến Giữa Hồigiữa Hồi≤ 20hồi phục 25% HP · Sạp Rong 4 ô (UP_DOCK_3 → 5; ô theo 13 §12.1) · 1 lần đổi thẻ miễn phí · Calla chở đò (1 beat thoại)—
  • Ánh xạ tên chung → nút: combat = CMB · elite = ELT · mini-boss = MBS · shop = SHP · forge/shrine = RST (nâng hạng kỹ năng ở lửa canh) · rest = RST · treasure = SEC (Mộ Lạc, rủi ro/thưởng) · challenge = CHL · story = EVT + RSC (giải cứu Kẻ Thức) + beat Calla ở DOCK. Không thêm loại nút ngoài 11 id Bible.
  • Nút tiện ích không có quái; đồng hồ nút tiện ích = thời gian người chơi ở màn (trung vị ở bảng).
  • Phòng nạp cho nút: nút EVT/SHP/RST/SEC nạp phòng biome có rooms[].node_types chứa loại nút (mỗi biome B1–B4 ≥ 1 phòng/loại, neo landmarks[].room như B4); chọn phòng từ luồng map keyed theo (Hồi, hàng, làn) khi có > 1 phòng hợp lệ; DOCK = Boong Đò Calla (nút DOCK) RM_HUB_ferry_deck (23 §2). 2026-11-07 — chốt luật này: B4 dùng rooms[].node_types, B1–B3 chỉ có landmark room null → thống nhất theo cách của B4 (dữ liệu biome B1–B3 bổ sung phòng tiện ích).
  • MRN10 Cổng Kép: ELT (DUEL) rồi MBS, nghỉ 4 s giữa 2 trận (hồi phục +8% sau trận 1), thời lượng = cột G × 2 − 5.

3.2 Thưởng chung khi xong nút chiến (C, G, BOS)

MụcGiá trịNguồn
Hồi phục HP+8% HP tối đa (C, G; BOS dùng ≥ 60%)Bible §2.3
XP gốcC 25 · Tinh Anh 40/con · mini 60 · boss Hồi 80 · BS_FINAL 150 (× hệ số Hồi 1.0/1.4/1.8/2.2)Bible §2.1
Tro HồnC: 30 / 35 / 40 / 32 (Hồi I–IV), ải Kết 50 · Tinh Anh 25/con · mini 60 · boss Hồi 120 · BS_FINAL 200 · BS_TRUE 300; × (1 + s MESO)Bible §3.3 (xong phòng 30–50); 2026-11-07 — Hồi IV 45 → 32: run thắng trung vị 1.499,5 Tro Hồn ≤ trần Bible 1.500/run (Q13)
Mảnh Vọngmini 1 · boss Hồi 2 (+3 lần đầu mỗi cặp boss × hero) · BS_FINAL 3 · BS_TRUE 5Bible §3.3
Quái còn sống khi xong phòngtan tro trong 0.8 s, toả từ hero; không XP, không Vàng Mãdoc này
Shard XP trên sàntự hút về hero trong 0.6 s khi phòng xongdoc này
Tinh Anh chưa hạ khi mục tiêu xong (C)ở lại; phòng chỉ xong khi Tinh Anh chết hoặc sau 20 s (Tinh Anh rút lui, không thưởng Tinh Anh)doc này [ASSUMED]

3.3 Sạp Rong (SHP 6 ô; DOCK 4 ô, UP_DOCK_3 → 5)

  • Chủ sở hữu ô hàng, giá, dịch vụ, Lễ Vật bản run, UP_MARKET_5, MUT01/MUT10: 13-Upgrades-Builds §12.1 (bảng ô SHP/DOCK) + §12.2 (bảng giá, làm tròn). Doc này KHÔNG giữ bảng ô/giá; generator Sạp chỉ đọc §12.1–12.2.
  • Luật riêng của doc này (save/load): kho mỗi lần ghé sinh từ luồng shop (§10.1; 13 gọi rng_shop) keyed theo (Hồi, nút) = act·100 + row·10 + lane → thoát/load lại cho cùng hàng (§11); kho cố định trong 1 lần ghé.

6Xem trước & chọn thưởng

4.1 Luật

  • Icon thưởng của mọi nút hiện trên bản đồ từ đầu Hồi (Bible §2); loại thưởng cuộn lúc sinh bản đồ (luồng reward). Nội dung thẻ (draft, Relic, sạp) cuộn khi màn thưởng mở, từ luồng keyed theo (Hồi, hàng, làn) → thoát/vào lại cho cùng thẻ (chống save-scum).
  • Màn thưởng mở sau khi phòng xong; World dừng; không giới hạn thời gian; Lướt/huỷ không đóng màn.
  • Bỏ qua 1 draft: +15 Vàng Mã (Bible §3.3). Bỏ Relic: +0 (Relic đầy → luật phân rã Bible §2.3).

4.2 Icon thưởng nút C

IconTrọng số CMB/CHLNội dungCHL ×2
EDGE+451 draft 3 thẻ (luật draft Bible #36)2 draft liên tiếp
GOLD30Vàng Mã: Hồi I 60 · II 80 · III 100 · IV 120×2
SKILL123 thẻ kỹ năng: học mới / đổi / nâng hạng (Bible §2.2)2 lượt chọn
HEAL8+25% HP tối đa+50%
META5+60 Tro Hồn + 1 trang Sổ Tang (nếu còn) [ASSUMED]+120 Tro Hồn
  • Ràng buộc mỗi bản đồ: ≥ 2 nút EDGE+, ≥ 1 GOLD ở R1–R3, ≥ 1 SKILL ở Hồi I và Hồi II; RSC lần đầu Hồi II hiện icon mở hero thay icon thưởng.
  • Kiểm đếm/run (đường trung vị, 12 phòng C): EDGE+ 12 × 0.45 × 1.2 (CHL) ≈ 6.5 + 4 thưởng boss = ~10 draft thưởng (Bible ~9 EDGE+); + ~20 lên cấp (7/4/4/4/1, DEC-2026-11-07-12) = ~29 draft (Bible 29 ± 2 ✓).
  • Vàng Mã/run: chủ sở hữu mô hình thu nhập = 17-Economy-Balance §8.1 (VD-G1); doc này không giữ phép tính riêng. Trọng số GOLD 30 ở bảng trên là trọng số icon trên CMB/CHL; tỉ lệ phòng mang GOLD dùng trong VD-G1 lấy theo doc 17 (khi doc 17 đổi sang 30% × 1.2 CHL thì VD-G1 là số chuẩn). Đích: 2–3 lần Sạp × 1–2 món = 3–5 món (Bible).
  • Relic/run: Cổng 4 + ELT_RISK 0.35/Hồi + SEC → 4–6 lần mời; trần 3 (GD3 → 4) → luật đổi/phân rã.

7Kinh tế hồi phục

📊 Ngân sách hồi phục

heal_budget.pct theo Hồiheal_budget.pct theo HồiHồi IHồi I: 144%144%Hồi IIHồi II: 141%141%Hồi IIIHồi III: 136%136%Hồi IVHồi IV: 131%131%
Hồi phục thụ động đường trung vị (% HP tối đa)Hồi phục thụ động đường trung vị (% HP tối đa)Xong phòngLên cấpCầu máu050100Hồi IHồi I · Xong phòng: 32%32%Hồi I · Lên cấp: 42%42%Hồi I · Cầu máu: 70%70%144%Hồi IIHồi II · Xong phòng: 32%32%Hồi II · Lên cấp: 24%24%Hồi II · Cầu máu: 60%60%116%Hồi IIIHồi III · Xong phòng: 32%32%Hồi III · Lên cấp: 24%24%Hồi III · Cầu máu: 55%55%111%Hồi IVHồi IV · Xong phòng: 32%32%Hồi IV · Lên cấp: 24%24%Hồi IV · Cầu máu: 50%50%106%

5.1 Nguồn (Bible §2.3; không tự hồi phục)

NguồnLượngTần suất / giới hạn
Xong phòng C/G+8% HP tối đa4 lần/Hồi trên đường trung vị
Lên cấp+3 HP tối đa + hồi phục 6%~7 / 4 / 2 / 3 / 1 lần ở Hồi I / II / III / IV / Kết
Cầu máu12 HP phẳngrơi 2% từ quái S; sống trên sàn 20 s; hút r50 (magnet)
RST40%≤ 1/đường/Hồi
HEAL (thưởng)25% (CHL 50%)theo icon
Bình30%mang ≤ 2; nguồn: UP_HEARTH_2 (+1 đầu run), Sạp 60
DOCK25%1/chuyển Hồi
Thắng boss HồiHP = max(HP hiện tại, 60%)4/run
Lửa Gửi (hồi sinh)35% + sóng r1201/run (GD4 → 2; MRN06 → 0)
  • Mọi hồi phục × (1 − 0.20 × MRN11) (MRN11 bậc 2 → ×0.60); MUT07 cầu máu rơi ×2 (4%).
  • Hồi phục không vượt HP tối đa; phần thừa mất (không khiên).

5.2 Ngân sách HP theo Hồi (đường trung vị, % HP tối đa, ref HP 120)

HồiXong phòngLên cấpCầu máu (60% nhặt)Tổng thụ độngSát thương nhận mục tiêu (trung vị)HP trước boss mục tiêu
I3242~70~144140~75% (hồi phục tràn khi đầy bị mất)
II3224~60~116 + DOCK 25150~65%
III3212~55~99 + DOCK 25155~60%
IV3218~50~100 + DOCK 25160~55%
  • Đích thiết kế: người chơi trung vị tới mỗi BOS với 55–80% HP mà không cần RST; chọn RST/HEAL = đệm cho người chơi yếu. Playtest đo hp_at_boss_gate (telemetry §9.3); trung vị < 45% ở ≥ 2 Hồi liền → giảm B_room Hồi đó 10% (15 §2.3), không tăng hồi phục.
  • Cầu máu % giảm dần khi HP tối đa tăng (12 HP phẳng) → Hồi sau dựa nhiều hơn vào nút; chủ ý.

8Bảng thời gian

📊 Thời lượng Hồi

Thời lượng trung vị mỗi Hồi (giây)Thời lượng trung vị mỗi Hồi (giây)3 phòng chiếnCổng GTiện ích UẢi Kết/BờBossCắt cảnhChuyển cảnh0100200300400Hồi I · B1Hồi I · B1 · 3 phòng chiến: 165 s165 sHồi I · B1 · Cổng G: 65 s65 sHồi I · B1 · Tiện ích U: 30 s30 sHồi I · B1 · Ải Kết/Bờ: 0 sHồi I · B1 · Boss: 90 s90 sHồi I · B1 · Cắt cảnh: 0 sHồi I · B1 · Chuyển cảnh: 40 s40 s390 sHồi II · B2Hồi II · B2 · 3 phòng chiến: 180 s180 sHồi II · B2 · Cổng G: 70 s70 sHồi II · B2 · Tiện ích U: 35 s35 sHồi II · B2 · Ải Kết/Bờ: 0 sHồi II · B2 · Boss: 105 s105 sHồi II · B2 · Cắt cảnh: 0 sHồi II · B2 · Chuyển cảnh: 40 s40 s430 sHồi III · B3Hồi III · B3 · 3 phòng chiến: 180 s180 sHồi III · B3 · Cổng G: 75 s75 sHồi III · B3 · Tiện ích U: 35 s35 sHồi III · B3 · Ải Kết/Bờ: 0 sHồi III · B3 · Boss: 110 s110 sHồi III · B3 · Cắt cảnh: 0 sHồi III · B3 · Chuyển cảnh: 40 s40 s440 sHồi IV · B4Hồi IV · B4 · 3 phòng chiến: 180 s180 sHồi IV · B4 · Cổng G: 75 s75 sHồi IV · B4 · Tiện ích U: 35 s35 sHồi IV · B4 · Ải Kết/Bờ: 0 sHồi IV · B4 · Boss: 110 s110 sHồi IV · B4 · Cắt cảnh: 0 sHồi IV · B4 · Chuyển cảnh: 40 s40 s440 sKết · B5Kết · B5 · 3 phòng chiến: 0 sKết · B5 · Cổng G: 0 sKết · B5 · Tiện ích U: 0 sKết · B5 · Ải Kết/Bờ: 60 s60 sKết · B5 · Boss: 150 s150 sKết · B5 · Cắt cảnh: 0 sKết · B5 · Chuyển cảnh: 20 s230 sBí mật (B6) · B6Bí mật (B6) · B6 · 3 phòng chiến: 0 sBí mật (B6) · B6 · Cổng G: 0 sBí mật (B6) · B6 · Tiện ích U: 0 sBí mật (B6) · B6 · Ải Kết/Bờ: 45 s45 sBí mật (B6) · B6 · Boss: 180 s180 sBí mật (B6) · B6 · Cắt cảnh: 0 sBí mật (B6) · B6 · Chuyển cảnh: 15 s240 s
Công thức: median_s = 3 × act_combat_room_s + act_gate_s + act_utility_s + act_boss_s + transition_s (I: 165 + 65 + 30 + 90 + 40 = 390)
HồiBiomeHàngmedian_sChuyển cảnh (s)BossMini-bossMutator
Hồi IĐồi Mộ Tro B1639040Người Gác Chuông BS_B1Xà Ích Xe Tang MB_B1_1—
Hồi IIĐầm Vải Liệm B2643040Lão Lái Đò Không Bến BS_B2Mẹ Kén Tơ Tro MB_B2_1 · Cá Voi Xác MB_B2_2có
Hồi IIILò Đúc Câm B3644040Thợ Cả Đúc Chuông BS_B3Cỗ Máy Bước MB_B3_1 · Gã Hai Đầu Lò MB_B3_2có
Hồi IVThành Chuông Treo B4644040Thống Lĩnh Yvra & Rồng Khàn BS_B4Rồng Hai Đầu MB_B4_1 · Kiếm Sĩ Gương MB_B4_2có
KếtĐỉnh Chuông Câm B5223020Vua Dravos, Mũ Chuông BS_FINAL—
Bí mật (B6)Bờ Lặng B6224015Cái Lặng BS_TRUE—
Run trung vị
1930 s
Khoảng
1560–2100 s
Ước tính chậm
2073 s
MRN10 trung vị
2195 s

6.1 Trung vị theo Hồi (giây, Bible §2)

Hồi3 phòng CCổngTiện íchBossChuyển cảnhTổngCột MRN10 (Cổng Kép)
I3 × 5565309040390 = 6:30Cổng 125 → 450
II3 × 60703510540430 = 7:10135 → 495
III3 × 60753511040440 = 7:20145 → 510
IV3 × 60753511040440 = 7:20145 → 510
Kếtải 60——15020230 = 3:50—
Run1.930 = 32:10450 + 495 + 510 + 510 + Kết 230 = 2.195 = 36:35
B6ải 45——18015+240 = 4:00—
  • Chuyển cảnh 40 s/Hồi (Bible: chuyển nút + draft + bản đồ + DOCK): Hồi I = chọn nút 6 × 3 s + màn thưởng 4 × 4 s + tải phòng 6 × 1 s = 40. Hồi II–IV = DOCK 16 + chọn nút 6 × 1.5 s + màn thưởng 4 × 3 s + tải 3 s = 40. Kết = DOCK 16 + tải 4 = 20. Draft lên cấp trong phòng (World ×0.15) đã nằm trong thời lượng phòng.
  • Đường có ELT_RISK: thay 1 C (55–60 s) bằng 1 G (65–75 s) → +10–15 s/Hồi.
  • Dải run 26:00–35:00 (run không MRN10): nhanh = diệt nhanh (PURGE xong sớm, boss ≤ 0.8 × trung vị) ≈ 26:30; chậm = boss 1.2 × (+113 s: 0.2 × 565) + 2 ELT_RISK ở Hồi III–IV (+30 s: 2 × (75 − 60)) = 1.930 + 143 = 2.073 = 34:33. Ngoài dải ở playtest trung vị → chỉnh t_target mục tiêu (15 §10), không đổi số phòng.
  • Run MRN10 được miễn dải 35:00: trung vị 2.195 = 36:35; chậm (boss 1.2 × + 2 ELT_RISK Hồi III–IV) = 2.195 + 143 = 2.338 = 38:58. Khăn Tang chủ ý kéo dài run (2 trận mỗi Cổng); telemetry so run MRN10 với cột MRN10, không với dải chuẩn.
  • Đồng hồ run (HUD, tổng kết, DAILY secondsPlayed) = thời gian thật trừ menu tạm dừng; tính cả màn thưởng/bản đồ.

6.2 Đồng hồ trong phòng

Phòngt_targetTrần cứngKhi chạm trần
C (trừ GAUNTLET/CHASE)55/60—không trần: mục tiêu tự xong (PURGE sống 60 s) hoặc tới mốc thua mục tiêu (15 §10)
G65–75khôngTinh Anh/mini không rút lui; sân rỉ giữ áp lực
BOS90–110không—
Ải Kết / B660 / 45đúng mốcải xong khi đồng hồ hết, quái tan tro

9Chuyển Hồi & cổng boss

7.1 Cổng boss (BOSS_GATE)

  • Mở khi người chơi chọn nút R6 (từ bất kỳ nút R5). Màn 4 s (bỏ qua được sau 1 s): tên + icon boss, Sổ Thù MACRO ("X nhớ: bạn Gạt 72%", 14 §9), gợi ý phản chế nếu UP_TEST_BELL_3; nút dùng bình (không tốn thời gian trận).
  • Lưu tại BOSS_GATE (§11): thoát ở đây → vào lại đúng trước boss.
  • Draft xếp hàng (Bible §2.1) mở hết TRƯỚC màn cổng boss.

7.2 Thắng boss Hồi → Hồi kế

boss HP 0 → hitstop kết 0.4 s + tro rơi → quái phụ tan tro 0.8 s → HP = max(HP, 60%)
→ thưởng (Tro Hồn, Mảnh Vọng, XP) → màn EDGE+ (BS_B2: + lựa Then Chốt nếu Lv ≥ 11 (DEC-2026-11-07-14)) → [Sẹo: nút "Khắc Sẹo" sau END_BELL_TOLL]
→ hàng draft chờ mở hết → DOCK (≤ 20 s) → ACT_INTRO(act+1): thẻ tên biome 2 s + Act Mutator lật 1.5 s → MAP(act+1)
  • Act Mutator Hồi mới cuộn từ luồng mutator lúc ACT_INTRO; không trùng mutator của 1 Hồi trước; MUT nhóm an toàn CHL không bị loại khỏi Act Mutator.
  • Hạ BS_B1 → mở ô 2 nếu MRN09; hạ BS_B2 → mở ô kỹ năng 3 (Bible §2.2).
  • Hồi IV → Kết: DOCK → FINALE_TRIAL (ải 60 s, 15 §9.5) → sân tròn → BS_FINAL. Không bản đồ ở Kết.
  • BS_FINAL hạ: nếu Run sau mở B6 sau BS_FINAL (BS_TRUE). FLAG_SHORE_OPEN → cảnh 15 s Calla chở sang B6 → SHORE_TRIAL 45 s → BS_TRUE; không → ENDING.

7.3 Thứ tự cảnh truyện trong run

ĐiểmNội dungThời lượngBỏ qua
ACT_INTROtên biome + Act Mutator3.5 scó, sau 1 s
DOCK1 beat thoại Calla (hàng đợi 20-World-Lore)≤ 6 s trong DOCKcó
Lần đầu gặp boss1 câu thoại boss trước pha 1≤ 3 s, boss bất tửcó, sau lần gặp đầu
Kếtcảnh BS_FINAL + lựa "Giữ lõi" (khi đủ điều kiện)≤ 40 slần 2+

10Chết, bỏ run, chiến thắng

8.1 Chết

HP ≤ 0 (sau Q8 chống chết 1 đòn của 10-Combat-Core) →
  if lua_gui_left > 0:  REVIVE theo `10-Combat-Core` §8.3: anim 1.0 s bất tử → HP 35% HP_MAX
                        + sóng r120 (`AREA` 3.0 × POWER, đẩy 60, M −30 Thế) + xoá trạng thái + Thế đầy
                        + i-frame 2.0 s; lua_gui_left −1; HUD tắt icon Lửa Gửi
  else: DEATH: World ×0.3 trong 0.5 s (`10-Combat-Core` §8.3; nhạc tắt dần) → thẻ recap INV-16 (5 nguồn cuối + đòn kết liễu)
        → "Tro đã học" top 3 (`14` §14) → bia mộ (sinh từ dữ liệu run) → SUMMARY (§9) → HUB
  • Số hồi sinh/chết (thời lượng anim, sát thương sóng, đẩy, i-frame, World scale) thuộc 10-Combat-Core §8.3 + tuning.combat; doc này chỉ giữ luồng màn hình. VD: POWER 10 → sóng 3.0 × 10 = 30 sát thương mỗi quái trong r120.
  • Giữ 100% tiền meta đã nhận (Bible §2.3). Vàng Mã mất. Thông Thạo nhận P theo §9.2.
  • Sổ Thù/MESO cập nhật theo luật 14 (thua không thêm Sẹo).
  • "Thức Lại" trên màn tổng kết: vào run mới cùng hero/loadout ≤ 5 s (bỏ hub, Lễ Vật không mua lại).

8.2 Bỏ run (ABANDON)

  • Từ menu tạm dừng hoặc bản đồ: "Bỏ Run", giữ nút 1.0 s để xác nhận.
  • Tính như chết cho tiền meta và Thông Thạo; không bia mộ, không recap, không Lửa Gửi; trận đang đánh không ghi Sổ Thù.
  • DAILY / Truy Tuần: bỏ = nộp điểm hiện tại, dùng hết lượt tính điểm.

8.3 Thắng

KếtĐiều kiệnSau đó
Hồi Chuông END_BELL_TOLLhạ BS_FINAL ở STANDARDlần đầu: cảnh kết + credits; mở Khăn Tang, Truy Tuần, ENDLESS, CUSTOM, H12
Mũ Tro END_ASH_CROWNchọn "Giữ lõi" ở BS_FINAL (chỉ hiện sau khi đọc trang Sổ Tang về lý do Dravos)đặt mọi mở khoá của END_BELL_TOLL; không mở B6
Bến Bình Yên END_QUIET_SHOREhạ BS_TRUEcảnh kết thật
  • BS_FINAL hạ mà có Run sau mở B6 sau BS_FINAL (BS_TRUE). FLAG_SHORE_OPEN → run tiếp sang B6 (§7.2); END_BELL_TOLL vẫn ghi nhận ngay lúc hạ BS_FINAL (chết ở B6 không mất kết).
  • Thắng → SUMMARY với nhãn "Chiến thắng"; tiền meta + Thông Thạo như §9.

11Tổng kết cuối run & thưởng

9.1 Màn tổng kết (RunSummary, 3 tab, tay cầm LB/RB)

TabNội dung
Kết quảnhãn (Chết ở <nút> / Bỏ / Chiến thắng <END>), hero, mode, Độ Tang, đồng hồ run, Hồi tới, kill, chuỗi tối đa, ĐÁP thành công/thử, Né Hoàn Hảo, Phản đòn, sát thương gây theo nguồn (top 5), sát thương nhận theo nguồn (top 5)
BuildEdge + hạng, kỹ năng + hạng, Relic + affix, Cộng Hưởng, Tiến Hoá, Then Chốt; nút "Lưu build" (UP_WARDROBE_1)
ThưởngTro Hồn (bảng nguồn), Mảnh Vọng, Nến Canh, điểm Thông Thạo P + thanh MR, tiến độ mở khoá (vd "H07: 112/150 ĐÁP"), trang Sổ Tang mới, thành tựu; DAILY: điểm + hạng tạm
  • Bỏ qua được sau 2 s; "Thức Lại" (Y / R) · "Về Tháp" (A / Space).

9.2 Công thức

SoulAsh_run = Σ(nguồn Bible §3.3) × mode_mult × (1 + s_MESO phòng tương ứng)
              với phần quái (0.05/con) ≤ 30% SoulAsh_run
P_mastery   = (60 + 40 × acts_cleared + 20 × (boss + mini hạ) + 3 × DoTang) × mode_mult (DAILY/BOSS_RUSH 0.5, CUSTOM 0)
Candle      = Σ boss có Khăn Tang: DoTang (× 3 lần đầu mỗi mức × hero)
  • Ví dụ: STANDARD, Độ Tang 0, chết ở BS_B3, đường trung vị (I: ELT, II: MBS, III: ELT). Tro Hồn: phòng C 3×30 + 3×35 + 3×40 = 315 · Tinh Anh 25 + 25 = 50 · mini 60 · boss 120 × 2 = 240 · quái ~1.500 × 0.05 = 75 (≤ 30% ✓) → 740. Mảnh Vọng: mini 1 + boss 2 × 2 = 5 (+3 mỗi cặp boss × hero lần đầu). P = 60 + 40 × 2 + 20 × 3 = 200.

9.3 Telemetry run (run_end)

run_id, mode, seed, content_version, hero, aspect, ult, DoTang, result, end_node, t_run, act_times[], node_path[], kills, max_alive, hp_at_boss_gate[], heals_by_source{}, drafts, skips, gold_in/out, relics, deaths_by_attack, lua_gui_used, soul_ash, echo, candle, P.

12Mode & tất định seed

10.1 DAILY (Lễ Ngày) & Truy Tuần

KhoáGiá trị
Seed ngàyseed64 = SplitMix64(FNV1a64("BW:DAILY:" + yyyy-mm-dd UTC + ":" + content_version)); Truy Tuần: chuỗi "BW:WEEKLY:" + năm-tuần ISO (đổi thứ Hai 00:00 UTC)
Cố định theo seedhero, Dạng Rèn, ult, 2 kỹ năng khởi đầu, bản đồ 4 Hồi, icon thưởng, mục tiêu, hàng sạp, sự kiện, 3 Khăn Tang (Truy Tuần: Độ Tang 8), 2 mutator, vector Tro Nhớ seed
2 mutatormutator 1 áp Hồi I–II, mutator 2 áp Hồi III–IV + Kết (thay Act Mutator ngẫu nhiên); cùng luật INV
Luồng RNGPCG32(hash(seed64, stream, key)), stream ∈ {map, reward, draft, shop, event, mutator, spawn, loot, ai, fx}; key: map/mutator = act; reward/shop/event = act·100 + row·10 + lane; draft = (act, draft_index_in_act); spawn/loot/ai = (act, row, lane)
Hệ quảcùng quyết định → cùng thẻ/sạp/bản đồ cho mọi người; luồng spawn/loot/ai lệch theo hành động người chơi (không replay tất định, Bible §4.1)
CấmRNG toàn cục (UnityEngine.Random) trong logic run; fx là luồng duy nhất được dùng tự do (chỉ hình ảnh)
Nộp điểm1 lượt/ngày; client khác content_version của bảng → từ chối, lượt vẫn chơi được (không tính điểm)

10.2 STANDARD / CUSTOM

  • Seed run = 64 bit ngẫu nhiên lúc RUN_START (CUSTOM: người chơi nhập seed 16 ký tự hex). Cùng seed + cùng content_version → cùng bản đồ/thưởng/sạp như DAILY (§10.1 luồng).

10.3 ENDLESS (Canh Thâu Đêm)

  • Hồi I–IV như STANDARD (không Kết). Sau BS_B4 → tầng 1. Mỗi tầng = 1 Hồi rút gọn: R1 2 nút C · R2 2 nút (1 C + 1 G) · R3 BOS boss biome; biome xoay B1→B4; DOCK rút gọn 10 s (+15% HP, sạp 3 ô) giữa tầng.
  • Vòng = 4 tầng; mỗi vòng HP địch +12%, sát thương +6% (10 §2.4); điểm leaderboard = tầng đã qua; +30 Tro Hồn/tầng, +3 Nến Canh/5 tầng.

10.4 BOSS_RUSH (Đêm Hồi Chuông)

  • Không bản đồ. Trước trận 1: build dựng trước 4 vòng × hiện 6 thẻ chọn 3 = 12 Edge (pool đã mở) + 1 Relic chọn 1/3; cấp cố định Lv14 [ASSUMED]; 2 kỹ năng khởi đầu + ô 3 mở sẵn.
  • Thứ tự trận theo cờ build (BS_FINAL ra ở MS06): MS05 = 5 trận mini-boss seed tuần → BS_B1 → BS_B2 → BS_B3 → BS_B4; MS06+ = 6 trận thêm BS_FINAL cuối (mini mở màn = khởi động) [ASSUMED]; giữa trận hồi phục 40% HP, màn 6 s; Tro Nhớ chỉ MICRO; leaderboard = tổng thời gian trận + rush_lost_ms (§11).
  • Leaderboard: details[11–16] = ms từng trận; build 5 trận → details[16] = 0. Từ MS06 (6 trận) bảng đổi tên thêm hậu tố _V2 (BOSS_RUSH_<YYYY>W<ww>_V2, 43 §6.2 + S17) vì tổng 5 trận và 6 trận không so được.

13Lưu, tạm dừng, tiếp tục (ranh giới nút)

KhoáLuật
Điểm lưuvào MAP (sau khi màn thưởng đóng), BOSS_GATE, đầu DOCK; không lưu trong phòng
Filesave/run_active.json (1 run/hồ sơ); ghi nguyên tử: .tmp → fsync → rename, giữ .bak; Steam Auto-Cloud
Nội dungschema_version, content_version, run_id, mode, seed64, daily_key, hero + loadout, Khăn Tang, act, bản đồ (nút, cạnh, loại, mục tiêu, thưởng, đã qua), vị trí, HP/HP tối đa, bình, cấp/XP, kỹ năng + hạng, Edge + hạng, Relic + affix, Cộng Hưởng/Tiến Hoá, Dư Âm, Vàng Mã, Đổi/Xoá/Giữ, Lửa Gửi còn, đếm MRN14, bộ đếm luồng RNG, W20/MESO trong run, đồng hồ run, thống kê
Tiền metagửi vào tài khoản ở mỗi điểm lưu (crash không mất)
Thoát giữa phòng(thoát game, crash, mất điện) → lần mở sau: chơi lại phòng đó từ đầu với trạng thái ở điểm lưu cuối; luồng spawn/loot keyed theo nút → cùng mục tiêu, cùng kịch bản; tiến độ trong phòng mất; DAILY: secondsPlayed cộng cả phần mất
BOSS_RUSHkhông bản đồ/cổng/DOCK → điểm lưu = xác nhận RushBuild (build dựng trước §10.4) + đầu màn hồi phục 6 s sau mỗi trận. Thoát/crash giữa trận → lần mở sau: chơi lại trận hiện tại từ trạng thái đầu trận đầy đủ (HP, Dư Âm, hồi chiêu, build ở điểm lưu); thời gian trận đã mất ghi vào rush_lost_ms (int, trong save) và cộng vào tổng nộp (như DAILY cộng secondsPlayed) → crash không reset được trận xấu trên bảng thời gian
Tạm dừng / Deck suspendmất focus hoặc OS ngủ → tự Menu tạm dừng (World + Hero dừng); không cần lưu
Run mới khi có run dởhộp xác nhận "Bỏ run đang dở?" → §8.2
Lệch content_versioncó migration → chuyển; không → đề nghị "Bỏ run" (tiền meta đã gửi giữ nguyên)

14Dữ liệu

📊 Giá Sạp

ÔRarityGiá (Vàng Mã)
EDGECOMMON80
EDGERARE110
EDGEEPIC140
RELICCOMMON150
RELICRARE200
RELICEPIC250
SKILL_CARDANY100
POTIONANY60
LV01ANY50
LV02ANY70
LV04ANY60
LV05ANY80
REROLLANY40
BANISHANY60

FileNội dungKhoá chính
run_structure.csvkey, value, note: thời lượng nút, trọng số §2.4/§4.2, giá sạp, hồi phụckey
lane_templates.csvid, r1..r5 (C/G/U), weightid
map_fallback.json3 khuôn tay/Hồi (MAP_FB_<act>_<n>)id
node_types.csvid, frame (C/G/U/R6/DOCK), t_I..t_IV, icon, reward_ruleid (11 id Bible)
reward_tables.csvicon, weight_CMB, weight_CHL, amount_I..IVicon
shop_prices.csvslot, rarity, price — schema + giá thuộc 13-Upgrades-Builds §12.1–12.2 (doc này chỉ đọc)slot+rarity

15Quy tắc cho dev/AI

  • Chỉ 11 loại nút Bible (CMB ELT CHL EVT SHP RST SEC RSC MBS BOS DOCK) + cờ risk trên ELT; thêm loại nút = mục DEC- + sửa Bible/JSON.
  • Bản đồ sinh bằng MapGen.Generate(act, seed) theo §2.2; mọi đường phải qua validate V1–V8 trước khi hiện; lỗi 64 lần → khuôn tay MAP_FB_*. Không sửa tay bản đồ trong code.
  • Mọi ngẫu nhiên của run đi qua luồng RNG có tên + khoá (§10.1); cấm UnityEngine.Random/System.Random không seed trong logic run.
  • Loại thưởng hiện trên bản đồ từ đầu Hồi; nội dung thưởng cuộn khi mở, keyed theo nút → thoát/vào lại không đổi.
  • Thời lượng phòng là đích thiết kế; chỉnh bằng t_target mục tiêu và B_room (15), không thêm/bớt nút.
  • Hồi phục chỉ từ nguồn §5.1; không thêm tự hồi phục; mọi hồi phục nhân MRN11.
  • Lưu chỉ ở MAP/BOSS_GATE/DOCK (BOSS_RUSH: xác nhận RushBuild + đầu màn hồi phục 6 s, thời gian mất cộng rush_lost_ms); thoát giữa phòng → chơi lại phòng từ đầu; tiền meta gửi ở mỗi điểm lưu.
  • Draft xếp hàng mở hết trước BOSS_GATE và trước DOCK.
  • Số [ASSUMED] chỉnh qua run_structure.csv; số Bible (thời lượng, giá, % hồi phục, thưởng) chỉ đổi bằng DEC-.
  • Tên UI: Khăn Tang/Độ Tang, Act Mutator, Dạng Rèn, Dư Âm, Then Chốt, Vàng Mã, Tro Hồn, Mảnh Vọng, Nến Canh; không tên/thuật ngữ của sản phẩm có thật.

16Quyết định đã chốt

QQuyết địnhLý do
Q1 Gán loại theo lànkhuôn làn §2.3 (7 khuôn, mỗi khuôn đúng 3 C + 1 G + 1 U) + validate mọi đường + bỏ cạnh chéo gây lỗiBible: gán theo làn, luật kiểm từng đường; khuôn làm luật đúng trên làn thẳng, validate xử lý đường đổi làn
Q2 Cổng thứ 22026-11-07 — ELT_RISK THAY 1 phòng chiến (đường vẫn 5 nút R1–R5): đường đó 2 C + 2 G + 1 U, thời gian +10–15 s/Hồi. Câu "Đường có Cổng thứ 2: +65–75 s" của Bible §2 đọc là thời lượng của chính Cổng thứ 2, không phải phần cộng thêmBible §2 "thay 1 phòng chiến" + lưới 6 hàng cố định; không thể vừa thay vừa cộng 65–75 s
Q3 "+1 Relic lựa"ELT_RISK thưởng Relic chọn 1/3 (thay 1/2)Bible ghi "+1 Relic lựa" ở Cổng thứ 2
Q4 SEC 15%mỗi nút U cuộn 15% thành SEC, ≤ 1/bản đồ; luôn có "Rời đi"Bible "15% thay 1 tiện ích"; Mộ Lạc là rủi ro tự chọn
Q5 Thưởng bossEDGE+ (BS_B2 có lựa Then Chốt) + hồi phục ≥ 60%Bible §2.1 nói thưởng BS_B2 có lựa Then Chốt → thưởng boss là draft; khớp ~9 EDGE+/run
Q6 Trọng số thưởng CEDGE+ 45 · GOLD 30 · SKILL 12 · HEAL 8 · META 5kiểm đếm §4.2: ~29 draft (29 ± 2, DEC-2026-11-07-12); thu nhập Vàng Mã/run kiểm ở 17 §8.1 VD-G1 (500–700)
Q7 Quái còn sống khi xong phòngtan tro 0.8 s, không thưởngnhịp nhanh (P1), không "dọn rác" sau mục tiêu
Q8 Lưuranh giới nút + chơi lại phòng khi thoát giữa chừng; nội dung keyed theo nútchống save-scum mà không phạt crash; Deck suspend chỉ là tạm dừng
Q9 DAILY mutatormutator 1 cho Hồi I–II, mutator 2 cho III–IV + KếtBible "2 mutator" theo seed, Act Mutator thường chỉ từ Hồi II
Q10 ENDLESSHồi I–IV rồi tầng rút gọn 2 phòng + boss, xoay B1→B4, không KếtBible §4.1
Q11 BOSS_RUSHmini-boss seed tuần mở màn, rồi BS_B1…BS_B4 (MS05, 5 trận); MS06+ thêm BS_FINAL (6 trận, bảng _V2); Lv14 cố định [ASSUMED]. 2026-11-07 — tách theo cờ build: Bible MS05 + 19 ghi 5 trận vì BS_FINAL ra ở MS06Bible liệt kê 5 boss "+ 1 mini"; mini làm khởi độngQ12 Bìnhmang ≤ 2 [ASSUMED]; nguồn UP_HEARTH_2 + SạpBible có giá bình, không có trần
Q13 Tro Hồn xong phòng30 / 35 / 40 / 32 theo Hồi, ải Kết 50. 2026-11-07 — Hồi IV 45 → 32Bible "30–50"; thu nhập run ≤ 1.500 (Bible) → run thắng 1.499,5
Q14 Vàng Mã GOLD60 / 80 / 100 / 120 theo HồiBible "60–120"
Q15 Chủ sở hữu số Sạp/hồi sinh2026-11-07 — bỏ bảng ô/giá Sạp ở §3.3 → 13 §12.1–12.2; bỏ số hồi sinh/chết riêng ở §8.1 → 10 §8.3 (anim 1.0 s, sóng AREA 3.0 × POWER, đẩy 60, M −30 Thế, i-frame 2.0 s; chết World ×0.3 0.5 s); bỏ phép tính Vàng Mã/run → 17 §8.1 VD-G11 số = 1 chủ; generator Sạp và combat cần 1 bộ dữ liệu
Q16 Thời lượng MRN102026-11-07 — run MRN10 trung vị 2.195 s = 36:35, miễn dải 26:00–35:00; V6 so với cột MRN10Cổng Kép thêm 60–70 s/Hồi theo thiết kế; dải chuẩn chỉ cho run không MRN10
Q17 Lưu BOSS_RUSH2026-11-07 — điểm lưu = xác nhận RushBuild + đầu màn hồi phục 6 s; tiếp tục = chơi lại trận hiện tại từ đầu; thời gian mất → rush_lost_ms, cộng vào tổng nộp§11 cũ không có điểm lưu cho mode không bản đồ; crash không được thành cách reset trận xấu trên bảng thời gian
Q18 RSC ép & bản đồ2026-11-07 — ép RSC Hồi II chỉ khi H04 có trong content_version (EA MS03 không có H04 → RSC thường); khoảng làn/hàng 54/40 UI px (40 UI-06)H04 ra ở MS04; 96/72 px không vừa 6 hàng trong 267 UI px