🔔 Bladewake GDD
⚔️ Kẻ Thức (Hero)

Dov

Pháo Thủ Ma Trơi · hoả mai nòng loa: báng gỗ mun, 2 ổ xoay 3 viên, nòng loe như miệng chuông · H08

Nhóm vai: RANGEDTài nguyên: Ổ Đạn#7bb21bCập nhật: 2026-11-07
110
HP tối đa
136
Tốc chạy
2
Độ khó / 5
50
Đòn
40
Edge
41
VFX

1Định danh & tiểu sử

Danh hiệu
Pháo Thủ Ma Trơi
Vũ khí
hoả mai nòng loa: báng gỗ mun, 2 ổ xoay 3 viên, nòng loe như miệng chuông
Nhóm vai
RANGED — tầm xa/nón gần, sát thương theo hàng
Độ khó
2/5
Mở khoá
ACT_CLEAR · Qua Hồi III (hạ BS_B3) một lần, rồi trả 12 Mảnh Vọng ở Lò Rèn · Mảnh Vang: 12
Mốc
Cập nhật U2 MS05
Verb tag
Combo COMBO · Lướt DASH · Đáp ANSWER · Phản COUNTER · Kỹ năng SKILL · Tài nguyên: Ổ Đạn RES:SHELL

Trục độ khó (doc 12 §4, 0–2)

Trục T1
Trục R1
Trục V1
Trục S0
Trục D0
🎯
Pitch Nữ pháo thủ trẻ của đội đèn đêm; nhồi đạn đúng thứ tự là pháo hoa ma trơi trên cả bầy.

Tiểu sử

Pháo thủ trẻ nhất Đội Đèn Đêm, Dov lớn lên trên bãi pháo, nơi đội bắn ma trơi lên trời dẫn hồn thay chuông đã câm. Ồn, liều, đếm đạn bằng ngón tay ám khói, cô tin thứ tự là lời khấn: Muối trước cho hồn đứng lại, Ma Trơi sau soi đường. Cô biết pháo không đủ, hồn vẫn lạc, nên đội đóng trại dưới Thành Chuông Treo và cô lên tháp tìm chuông thật. Thi ồn với Ambrin; viết tên từng viên đạn lên bảng cho Thầy Hol, người nhìn pháo thay nghe. "Bắn đúng thứ tự thì người chết khỏi đi lạc." "Chuông câm thì để pháo nói." "Ồn hơn anh rồi nhé, Ambrin!"

Câu nói

“Đếm đạn: sáu viên, đủ đường về.”RunStart (rời ST_DOCK, phòng đầu Hồi I)
“Chuông câm thì để pháo nói.”RunStart (chọn ngẫu nhiên 1/3)
“Muối trước, Ma Trơi sau. Đi thôi!”RunStart (chọn ngẫu nhiên 1/3)
Ghi chú lệch có chủ đích

2026-11-07 — Lệch có chủ đích: (1) Tì Báng Nạp không giảm sát thương (Bible DEC-2026-11-07-10 thắng doc 10 §3.3, 11 §3.2, 12 §10.3b −50% và _bible.json hold_verb); (2) H08_SK06 Chống Báng bỏ −70% trước 180° (cùng lý do; thay bằng siêu giáp 180° + nạp 0.2 s + bắn trả); (3) chỉnh số theo ngân sách doc 17 §4.2–4.3 (balance_calc): SK01 coef 4.0 → 6.0, SK02 1.0 → 1.3 (≤ 3 đinh/mục tiêu), SK03 cd 10 → 8 + choáng S 1.4 / M 0.7 + coef 2 × 1.5, SK04 cd 9 → 12 + nổ coef 2.5 → 1.2 + Than Hồng, SK05 coef 6.0 → 10.0, SK06 cd 10 → 8, SK07 cd 6 → 5 + vệt 0.6, SK08 cd 9 → 8 (khung nhịp độ 3–8 s), UL2 mỗi phát 2.5 → 6.5 (UL2 cần coef đơn ≥ 55); (4) foot_ring.hex #70bd0b (hue 86°, trong slot) thay r4 #7bb21b của Bible INV-09: validator đo #7bb21b trên sàn lit B2 #455862 = 2.91:1 < 3:1, còn r5/r6 ΔE với #ffd84a < 25; #70bd0b đạt 3.18:1 và ΔE 26.5 — cần cập nhật bảng Bible INV-09/doc 30 §3.2; (5) mass_verb null: enum schema không có verb choáng, số Muối choáng theo mass ghi ở H08_COMBO_A_MUOI.params. [ASSUMED] SK08 quy đổi tài nguyên ~12.8 coef (6 viên tiết kiệm ~2.1 s nạp) → tỉ lệ ~1.09; UL3 DE thêm ~95 trong 9 s; CLEAR_KPM/DU-06 chờ sim. 2026-11-07 — cancel_into đổi token cũ CHARGE@t → HEAVY@t, ATTACK@t → COMBO_A@t (giữ tick); mastery bỏ MR13/MR14/MR17/MR19 và TITLE_MR20_H08 (id cosmetic chưa định nghĩa), MR20 = SKN_H08_4; bỏ token EDGES:* ở MR01/MR03/MR06/MR08 (mở Edge theo luật meta.json mastery.ranks[].grants_vi, như H01).

2Hình ảnh & bảng màu

Màu slot
#7bb21b hue 82°
Vòng chân
#70bd0b r 12 px
Sprite
35 px cao
Chân dung
bust 128/128 · body 192/192 · viền #7bb21b
Trang phục pixelfx
Tools/pixelfx/src/fx/heroes/_dov.js
🎨
Khoá hình Cao 35 px. Nữ pháo thủ trẻ, tóc ngắn cột túm sau gáy, mũ dạ mềm vành gập một bên, áo khoác dài xám chì của đội đèn đêm tới gối, xẻ tà sau để quỳ bắn; đai chéo ngực đeo 2 hộp ổ đạn gỗ (trái: ổ A, phải: ổ B) có cửa sổ kính thấy 3 viên; bao tay da cụt ngón, ngón ám khói. Vũ khí `bell_firelock`: báng gỗ mun dài, 2 ổ xoay đồng sát cò, nòng sắt thẳng 30 px loe miệng loa như chuông (miệng loa = điểm nổ, viền slot `#7bb21b` sáng ở miệng). Đọc 3/4 từ trên: hình chữ L (người + nòng ngang), miệng loa luôn là điểm sáng nhất của thân; khói thuốc chỉ phụt ≤ 12 px trước miệng rồi tan trong 0.3 s. Đạn: Đinh = mạt sắt xám-ngà, Muối = hạt trắng ngà, Ma Trơi = lửa ma lục slot; không màu vàng tell, không tím. Chân dung: bust 3/4 cười nhếch, má dính muội; tư thế chọn hero = tì báng lên vai, tay kia giơ 1 viên Ma Trơi sáng như đèn. Cấm: khói đen che thân, mũ ba góc, súng nhiều nòng, áo giáp, băng đạn hiện đại, lửa cam/vàng, mắt phát sáng.
Ramp màu DovRamp màu Dovslotslot #476b15#476b15slot #578514#578514slot #7bb21b#7bb21bslot #aad44d#aad44dfxfx #2b470a#2b470afx #7bb21b#7bb21bfx #e5ff9e#e5ff9efx #f5ffd8#f5ffd8coatcoat #1c1f26#1c1f26coat #2e3340#2e3340coat #454c5c#454c5ccoat #6a7385#6a7385wood_brasswood_brass #2a1d16#2a1d16wood_brass #4a3426#4a3426wood_brass #6e5440#6e5440wood_brass #a8957e#a8957e
visual.palette_ramps

Skin

Áo Gác Bến Sương

SKN_H08_1
LUT_H08_skin1_mist_ferry
currency CUR_VIGIL_CANDLE, cost 30

Lễ Phục Đêm Rằm

SKN_H08_2
LUT_H08_skin2_full_moon
currency CUR_VIGIL_CANDLE, cost 45

Pháo Thủ Tro Than

SKN_H08_3
LUT_H08_skin3_cinder
currency CUR_VIGIL_CANDLE, cost 60

Ngà Dẫn Hồn

SKN_H08_4
LUT_H08_skin4_ivory
mr MR20
Clip hoạt ảnh (34) — số khung
Số khung theo clipSố khung theo clipidleidle: 4848runrun: 1818dashdash: 1010attack1attack1: 2828attack2attack2: 2828attack3attack3: 3636loadload: 3030dash_attackdash_attack: 2626answeranswer: 1212answer_hitanswer_hit: 1818hold_inhold_in: 88hold_loophold_loop: 2424hold_outhold_out: 66countercounter: 3030sk01sk01: 4040sk02sk02: 3636sk03sk03: 4444sk04sk04: 3434sk05sk05: 4242sk06sk06: 7676sk07sk07: 3434sk08sk08: 4848ul1ul1: 120120ul2ul2: 108108ul3ul3: 3030hurthurt: 1010brokenbroken: 2727deathdeath: 7272wakewake: 4040victoryvictory: 5454hub_idlehub_idle: 7272selectselect: 4848as2_finas2_fin: 3636as3_finas3_fin: 3838
visual.clips
34 dòng
ClipKhungLặpKhung trúngHướng
idle48có—5+3
run18có—5+3
dash10—05+3
attack128—35+3
attack228—35+3
attack336—55+3
load30có—5+3
dash_attack26—25+3
answer12—05+3
answer_hit18—15+3
hold_in8——5+3
hold_loop24có—5+3
hold_out6——5+3
counter30—25+3
sk0140—65+3
sk0236—55+3
sk0344—9/245+3
sk0434—75+3
sk0542—75+3
sk0676—725+3
sk0734—35+3
sk0848—185+3
ul1120—48/56/64/72/80/885+3
ul2108—18/26/34/42/50/58/66/74/825+3
ul330—125+3
hurt10——5+3
broken27có—5+3
death72——5+3
wake40——5+3
victory54——5+3
hub_idle72có—5+3
select48có—1
as2_fin36—55+3
as3_fin38—55+3

3Chỉ số & khung vai trò

Chỉ số Dov so với khungMỗi trục chia theo max của 12 heroDovKhung nhóm (max)Khung nhóm (min)TB 12 heroHP_MAXMOVE_SPEEDANSWER_WINDOWdash_pxDovDov · HP_MAX: 110Dov · MOVE_SPEED: 136Dov · ANSWER_WINDOW: 0.15Dov · dash_px: 76Khung nhóm (max)Khung nhóm (max) · HP_MAX: 110Khung nhóm (max) · MOVE_SPEED: 142Khung nhóm (max) · ANSWER_WINDOW: 0.16Khung nhóm (max) · dash_px: 80Khung nhóm (min)Khung nhóm (min) · HP_MAX: 100Khung nhóm (min) · MOVE_SPEED: 136Khung nhóm (min) · ANSWER_WINDOW: 0.15Khung nhóm (min) · dash_px: 76TB 12 heroTB 12 hero · HP_MAX: 119.58TB 12 hero · MOVE_SPEED: 136.67TB 12 hero · ANSWER_WINDOW: 0.16TB 12 hero · dash_px: 80.83
Trục = chỉ số khác nhau giữa các hero; 100% = max roster. Khung nhóm = min–max các hero cùng role_group (Veyra, Dov).
27 dòng
Dòng sáng = hero đứng đầu/cuối roster ở chỉ số đó
Chỉ sốTênGiá trịĐơn vịSo max rosterRoster min–maxNhóm min–max
HP_MAXHP tối đa110HP
110
100 – 160100 – 110
MOVE_SPEEDTốc chạy136px sàn/s
136
130 – 145136 – 142
ACCEL_TIMEThời gian tăng/giảm tốc0.06s
0.06
0.06 – 0.060.06 – 0.06
POWERLực10điểm
10
10 – 1010 – 10
DMG_INCSát thương0+%
0
0 – 00 – 0
ATK_SPEEDTốc đánh1×
1
1 – 11 – 1
CRIT_CHANCETỉ lệ chí mạng5%
5
5 – 55 – 5
CRIT_MULTHệ số chí mạng2×
2
2 – 22 – 2
AREACỡ vùng1× bán kính
1
1 – 11 – 1
PROJ_SPEEDTốc đạn hero1×
1
1 – 11 – 1
DURATIONThời lượng hiệu ứng hero (vùng, triệu hồi, buff)1×
1
1 – 11 – 1
CDRGiảm thời gian hồi chiêu kỹ năng0%
0
0 – 00 – 0
DASH_CHARGESLượt Lướt2lượt
2
2 – 22 – 2
DASH_RECHARGENạp 1 lượt Lướt0.7s
0.7
0.7 – 0.70.7 – 0.7
ANSWER_WINDOWCửa sổ ĐÁP0.15s
0.15
0.15 – 0.180.15 – 0.16
POISE_MAXThế hero100điểm
100
100 – 100100 – 100
POISE_REGENHồi Thế40điểm/s
40
40 – 4040 – 40
DRGiảm sát thương nhận0%
0
0 – 00 – 0
ELITE_DMGSát thương lên M/L/XL0+%
0
0 – 00 – 0
STATUS_POWERUy lực trạng thái (sát thương DoT + số của trạng thái hero gây)0+%
0
0 – 00 – 0
HEAL_MULTHệ số hồi phục HP1×
1
1 – 11 – 1
PICKUP_RBán kính hút XP/cầu máu50px
50
50 – 5050 – 50
ULT_GAINHệ số nạp Dư Âm1×
1
1 – 11 – 1
RES_GAINHệ số nạp tài nguyên hero1×
1
1 – 11 – 1
KNOCKBACKLực đẩy1×
1
1 – 11 – 1
SHIELD_CAPTrần khiên50% HP tối đa
50
50 – 5050 – 50
dash_px—76—
76
72 – 9076 – 80

4Tài nguyên & nội tại

Thanh Ổ ĐạnThanh Ổ Đạn 0–6, ngưỡng trạng tháiCặp Sẵn ≥ 2Ổ Đầy ≥ 606khởi đầu 22 · Cặp Sẵn6 · Ổ Đầy
resource.thresholds
Tài nguyên
Ổ Đạn SHELL · kiểu CHAMBERS
Khoảng
0 – 6 (bắt đầu 2)
Suy giảm
—
Khi trúng đòn
0
ĐÁP
−1
Né hoàn hảo
1
Sự kiện đầy
res_full
HUD
CHAMBERS · bottom_left_next_to_hp
Liên kết Dư Âm
+8 Dư Âm mỗi phản ứng cặp ổ (từ combo, Phản, H08_SK05); ĐÁP +4 và Né Hoàn Hảo +4 chung; UL2/UL3 không nạp Dư Âm
Nguồn nạp Ổ Đạn (mỗi sự kiện)Nguồn nạp Ổ Đạn (mỗi sự kiện)charge_markcharge_mark: 11hold_tickhold_tick: 11perfect_dodgeperfect_dodge: 11kill_multikill_multi: 11skillskill: 66dash_enddash_end: 11
resource.gain
Sự kiệnLượngTrần/sGhi chú
charge_mark1—Giữ ATTACK rồi nhả: qua mốc 0.25 s = Đinh, 0.50 s = Muối, 0.75 s = Ma Trơi; viên vào ổ đang ít viên hơn (bằng nhau → ổ A), nên thứ tự nạp = thứ tự cặp. Nhả trong 0.10 s cuối trước mốc kế (Ma Trơi: 0.90–1.00 s) = Nạp Nóng, viên đó +50% sát thương và thời lượng hiệu ứng.
hold_tick12.5Tì Báng Nạp: 1 viên mỗi 0.4 s, cùng loại viên vừa nạp gần nhất (chưa nạp lần nào trong phòng → Đinh).
perfect_dodge1—Né Hoàn Hảo: nạp 1 viên cùng loại viên vừa bắn vào ổ trống.
kill_multi111 phát giết ≥ 4 quái S: nạp lại 1 viên cùng loại (bầy nuôi ổ, HF-03).
skill6—Chỉ H08_SK08 Nạp Một Hơi: lấp đầy 2 ổ bằng loại vừa nạp.
dash_end1—Chỉ khi kết thúc H08_SK07 Lăn Lửa Ma: +1 Ma Trơi.

Tiêu

Hành độngGiáThiếu vẫn dùngGhi chú
COMBO_SHOT1cóChạm ATTACK bắn viên trên cùng của ổ đang tới lượt (A → B → A…); ổ đó rỗng → bắn ổ kia (không thành cặp); 2 ổ rỗng → Phụt Mồi coef 0.5.
DASH_ATTACK1cóPhát Lăn tiêu 1 viên như bước A; rỗng → Phụt Mồi rộng.
ANSWER1cóNổ Chặn tiêu viên trên cùng của ổ tới lượt để ra hiệu ứng viên; ổ rỗng vẫn ĐÁP (chỉ trung hoà, INV-11).
COUNTER2cóHai Nòng Kề bắn 2 viên trên cùng; thiếu viên vẫn đủ coef 18, chỉ mất phản ứng cặp.
Nhồi Đôi H08_SK052cóNhồi Đôi: < 2 viên → coef ×0.5, không phản ứng.
SWAP_TOP0khôngGiữ ATTACK khi Ổ Đầy = Đảo Ổ: đổi chỗ 2 viên trên cùng của ổ A và ổ B (0.25 s).

Trạng thái theo ngưỡng

Cặp Sẵn ≥ 2

Mỗi ổ có ≥ 1 viên: HUD hiện icon phản ứng cặp kế tiếp (vd Muối → Ma Trơi = Nổ Muối) giữa 2 cột ổ; bắn ổ B trong 0.6 s sau ổ A = phản ứng.

Ổ Đầy ≥ 6

2 ổ đủ 6 viên: nạp bị chặn; giữ ATTACK tới mốc 0.25 s = Đảo Ổ (đổi 2 viên trên cùng giữa ổ A và B) để đổi phản ứng kế; tính là res_full (TT2).

Nội tại: Nòng Loa

H08_PASSIVEr: 48arc: 90mult: 1.3
Kẻ địch trong 48 px trước miệng loa (nón 90°) nhận ×1.3 sát thương từ mọi phát bắn của Dov.

5Phòng thủ: ĐÁP · Giữ · Phản · Lướt

ĐÁP: Nổ Chặn

BLOCK_BLAST · ANSWER H08_ANSWERconsume: 1dinh_coef: 2muoi_stun_s: 0.8muoi_stun_m: 0.4matroi_zone_s: 3matroi_zone_coef: 0.5

Thổi 1 phát nón 90° r48 về kẻ đánh, tiêu viên trên cùng của ổ tới lượt: Đinh 2.0 × POWER · Muối choáng S 0.8 s / M 0.4 s (L/XL −15 Thế) · Ma Trơi lửa sàn 3 s; cộng kết quả chung (S choáng 1.0 s + đẩy 30, M −45 Thế) và mở Phản.

Đạn Y bị thổi tan (huỷ) và nón vẫn nhả hiệu ứng viên vừa tiêu về phía đạn tới; không mở Phản.

Viên tiêu bởi Nổ Chặn tính là phát ổ A: chạm ATTACK trong 0.6 s sau đó bắn ổ B = phản ứng cặp ngay (ĐÁP → cặp). Ổ rỗng: chỉ trung hoà, không phạt.

window_s
0.15
res_gain
−1
needs_resource
không
ĐÁP: Nổ ChặnĐÁP: Nổ Chặn16 px32 px48 pxARChurtbox r 7shape ARC r 48 arc 90sàn 3/4 · ry = rx × 0.5

Giữ: Tì Báng Nạp

BRACE · HOLD H08_HOLDfront_arc: 120reload_period_s: 0.4rotate_deg_s: 360dr_pct: 0kb_immune_front: cóhold_key: hold.stock_bracedefense_effect: BRACE_RELOAD

Không tốn Thế (không giảm, không chặn sát thương; Bible DEC-2026-11-07-10); đứng yên, xoay ngắm 360°/s; đòn P trúng khi đang tì = đủ sát thương + Vỡ Thế 0.9 s.

Đòn P trúng đủ sát thương + Vỡ Thế 0.9 s (siêu giáp không đỡ P, doc 10 §7.2).

mechanic
BRACE
armor_tier
HYPER
move_mult
0
max_s
6
cooldown_s
0

Phản: Hai Nòng Kề

lunge_px
24
damage_eq
180
Phản: Hai Nòng KềPhản: Hai Nòng Kề16 px32 px48 px64 pxARChurtbox r 7shape ARC r 56 arc 120sàn 3/4 · ry = rx × 0.5

Lướt

ROLL · DASH H08_DASH
dash_px
76
anim
dash
afterimage
có
trail_vfx
VFX_H08_roll_dash
Ghi đè input (input_override)
attack_hold_ticks
12
attack_hold_action
CHARGE
charge_marks
0.25/0.5/0.75
charge_move_mult
0.7
place_min
32
place_default
96
place_max
160
aim_rotate_max
720
Kiểu bấm kỹ năng
H08_SK01 TAP · H08_SK02 TAP · H08_SK03 HOLD · H08_SK04 TAP · H08_SK05 TAP · H08_SK06 TAP · H08_SK07 TAP · H08_SK08 TAP

6Bộ đòn & frame data

Frame data Dov · COMBO_AFrame data Dov · COMBO_Akhởi (startup)hiệu lực (active)hồi (recovery)0 t51015202530A_DINH Phát Đinh (ổ A)A_DINH Phát Đinh (ổ A) · startup 6t · coef 2.2A_DINH Phát Đinh (ổ A) · active 3t · coef 2.2A_DINH Phát Đinh (ổ A) · recovery 14t · coef 2.223tA_MUOI Phát Muối (ổ A)A_MUOI Phát Muối (ổ A) · startup 6t · coef 1A_MUOI Phát Muối (ổ A) · active 3t · coef 1A_MUOI Phát Muối (ổ A) · recovery 14t · coef 123tA_MATROI Phát Ma Trơi (ổ A)A_MATROI Phát Ma Trơi (ổ A) · startup 6t · coef 1.2A_MATROI Phát Ma Trơi (ổ A) · active 3t · coef 1.2A_MATROI Phát Ma Trơi (ổ A) · recovery 14t · coef 1.223tBLANK Phụt MồiBLANK Phụt Mồi · startup 6t · coef 0.5BLANK Phụt Mồi · active 3t · coef 0.5BLANK Phụt Mồi · recovery 20t · coef 0.529tPAIR Phát Cặp (ổ B)PAIR Phát Cặp (ổ B) · startup 9t · coef 2.2PAIR Phát Cặp (ổ B) · active 4t · coef 2.2PAIR Phát Cặp (ổ B) · recovery 18t · coef 2.231t
Tick = 1/60 s (doc 12 §3.1) · khởi / hiệu lực / hồi
50 dòng
50 đòn · hero_moves
ĐònSlotKhởi tHiệu lực tHồi tTổng sCoefLớp đònHitboxMục tiêuThếHitstop sTraumaGiápHuỷ vàoCờGhi chú
Phát Đinh (ổ A) H08_COMBO_A_DINHCOMBO_A63140.3832.2LIGHTARC r 110 arc 7048100.0350NONEHEAVY@9/SKILL@12atk_speed_scales/pierceMạt đinh xoè nón 70° r110, trúng mọi mục tiêu trong nón 1 lần; Nạp Nóng ×1.5; mục tiêu trong r48 ×1.3 (Nòng Loa). Mở cửa sổ cặp 0.6 s cho phát ổ B.
Phát Muối (ổ A) H08_COMBO_A_MUOICOMBO_A63140.3831LIGHTARC r 90 arc 704860.0350NONEHEAVY@9/SKILL@12atk_speed_scalesHạt muối ngà nón 70° r90: STS_STUN S 0.8 s / M 0.4 s, L/XL −15 Thế (Bible §5.2); Nạp Nóng ×1.5 cả sát thương lẫn thời lượng choáng.
Phát Ma Trơi (ổ A) H08_COMBO_A_MATROICOMBO_A63140.3831.2LIGHTARC r 90 arc 704860.0350NONEHEAVY@9/SKILL@12atk_speed_scalesLửa ma lục nón 70° r90, để lại lửa sàn hình nón 3 s (H08_WISP_FLOOR, 0.5 coef mỗi 0.5 s).
Phụt Mồi H08_COMBO_A_BLANKCOMBO_A63200.4830.5LIGHTARC r 56 arc 604830.0350NONE—atk_speed_scalesCả 2 ổ rỗng: phụt thuốc mồi nón 60° r56 để giữ nhịp (HF-04); không thành cặp, không tiêu viên.
Phát Cặp (ổ B) H08_COMBO_A_PAIRCOMBO_A94180.5172.2HEAVYARC r 110 arc 7048180.070.28NONESKILL@14/HEAVY@13finisher/shieldbreak/atk_speed_scalesPhát ổ B trong 0.6 s sau phát ổ A = đòn kết: hình và coef theo viên B (Đinh 2.2 nón 70° r110 · Muối 1.0 r90 · Ma Trơi 1.2 r90), rồi kích phản ứng cặp (A, B) tại điểm chạm (H08_RX_*). +8 Dư Âm.
Phát Đinh lẻ (ổ B) H08_COMBO_B_DINHCOMBO_B63160.4172.2MEDIUMARC r 110 arc 704880.0450.22NONEHEAVY@9/SKILL@12atk_speed_scalesPhát ổ B không có phát ổ A trong 0.6 s trước: hiệu ứng viên đơn, không phản ứng, không đòn kết.
Phát Muối lẻ (ổ B) H08_COMBO_B_MUOICOMBO_B63160.4171MEDIUMARC r 90 arc 704860.0450.22NONEHEAVY@9/SKILL@12atk_speed_scalesPhát ổ B không có phát ổ A trong 0.6 s trước: hiệu ứng viên đơn, không phản ứng, không đòn kết.
Phát Ma Trơi lẻ (ổ B) H08_COMBO_B_MATROICOMBO_B63160.4171.2MEDIUMARC r 90 arc 704860.0450.22NONEHEAVY@9/SKILL@12atk_speed_scalesPhát ổ B không có phát ổ A trong 0.6 s trước: hiệu ứng viên đơn, không phản ứng, không đòn kết.
Xuyên Đinh (Đinh → Đinh) H08_RX_PIERCE_NAILRESOURCE0300.053.08HEAVYARC r 150 arc 4048100.060.28NONE—piercePhát B đổi thành nón hẹp 40° r150, coef 2.2 × 1.4 = 3.08, xuyên mọi mục tiêu; thay hình phát B (không cộng thêm).
Muối Găm (Đinh → Muối) H08_RX_SALT_PINRESOURCE0300.051HEAVYARC r 90 arc 7048200.060.28NONE——Muối bám vào mạt đinh: choáng của phát B thành S 1.2 s / M 0.6 s; L/XL −20 Thế.
Đinh Lửa (Đinh → Ma Trơi) H08_RX_FIRE_LINERESOURCE0180030.5DOTLINE len 140 w 2448200NONE——Vệt lửa ma thẳng 140 × 24 px từ miệng loa theo hướng bắn, 3 s, 0.5 coef mỗi 0.5 s (6 nhịp).
Vỡ Muối (Muối → Đinh) H08_RX_SALT_BREAKRESOURCE0300.054.4HEAVYARC r 110 arc 7048220.060.28NONE—pierceMục tiêu đang choáng (do phát A Muối) nhận phát Đinh B ×2 = coef 4.4 và +12 Thế; mục tiêu không choáng nhận coef 2.2 thường.
Bão Muối (Muối → Muối) H08_RX_SALT_STORMRESOURCE0300.051HEAVYARC r 90 arc 12048150.060.28NONE——Phát B toả rộng nón 120° r90: choáng S 0.8 s / M 0.4 s, L/XL −15 Thế.
Nổ Muối (Muối → Ma Trơi) H08_RX_SALT_WISPRESOURCE0300.053HEAVYCIRCLE r 6448200.080.45NONE—shieldbreakCanon: muối gặp lửa ma nổ CIRCLE r64 coef 3.0 tại điểm chạm phát B (mục tiêu gần nhất trong nón; không trúng ai → cách miệng loa 56 px), đẩy 40 px.
Pháo Hoa Ma (Ma Trơi → Đinh) H08_RX_WISP_FIREWORKRESOURCE0300.051HEAVYCIRCLE r 964860.060.28NONE——Mỗi vùng lửa sàn của phát A còn cháy bắn 6 đinh lửa toả đều 6 hướng, tầm 96 px, coef 1.0, xuyên 1; mỗi mục tiêu ≤ 2 đinh.
Muối Lạnh (Ma Trơi → Muối) H08_RX_COLD_SALTRESOURCE0300.051HEAVYARC r 90 arc 7048100.060.28NONE——Muối dập lửa ma thành sương: phát B gây thêm 2 lớp STS_FROST cho mọi mục tiêu trúng (đủ 3 lớp với 1 lớp sẵn = đóng băng S).
Biển Ma Trơi (Ma Trơi → Ma Trơi) H08_RX_WISP_SEARESOURCE0360060.5DOTCIRCLE r 6448200NONE——Lửa sàn r64 tại điểm chạm phát B, 6 s, 0.5 coef mỗi 0.5 s + STS_EMBER cho kẻ đứng trong; giữ cửa hẹp.
Lửa Sàn Ma Trơi H08_WISP_FLOORRESOURCE0180030.5DOTARC r 90 arc 7048100NONE——Lửa sàn do viên Ma Trơi để lại (hình nón của phát), 3 s, 0.5 coef/0.5 s; Nạp Nóng → 4.5 s. Không áp trạng thái (EMBER chỉ qua Biển Ma Trơi).
Nạp Đinh H08_HEAVY_LOAD_DINHHEAVY15160.3670LIGHTNONE1000NONECOMBO_A@1charge/charge_mark_nGiữ ATTACK qua mốc rồi nhả: nhét 1 viên vào ổ ít viên hơn (6 tick tra đạn). Nhả trong tick 24–29 (0.10 s cuối trước mốc kế) = Nạp Nóng +50%; cue chân sáng trắng-slot báo cửa sổ. Đi ×0.7 khi giữ.
Nạp Muối H08_HEAVY_LOAD_MUOIHEAVY30160.6170LIGHTNONE1000NONECOMBO_A@1charge/charge_mark_nGiữ ATTACK qua mốc rồi nhả: nhét 1 viên vào ổ ít viên hơn (6 tick tra đạn). Nhả trong tick 39–44 (0.10 s cuối trước mốc kế) = Nạp Nóng +50%; cue chân sáng trắng-slot báo cửa sổ. Đi ×0.7 khi giữ.
Nạp Ma Trơi H08_HEAVY_LOAD_MATROIHEAVY45160.8670LIGHTNONE1000NONECOMBO_A@1charge/charge_mark_nGiữ ATTACK qua mốc rồi nhả: nhét 1 viên vào ổ ít viên hơn (6 tick tra đạn). Nhả trong tick 54–59 (0.10 s cuối trước mốc kế) = Nạp Nóng +50%; cue chân sáng trắng-slot báo cửa sổ. Đi ×0.7 khi giữ.
Đảo Ổ H08_HEAVY_SWAPHEAVY15160.3670LIGHTNONE1000NONE—chargeChỉ khi Ổ Đầy: giữ ATTACK tới 0.25 s rồi nhả = đổi chỗ viên trên cùng ổ A ↔ ổ B (đổi phản ứng cặp kế).
Lăn Ngang H08_DASHDASH0930.20LIGHTNONE1000NONE——Lướt chung INV-12: lăn vai 76 px theo hướng MOVE (không có → hướng ngắm), i-frame 12 tick, 2 lượt × 0.70 s; Dov không có né giật lùi (Bible #28).
Phát Lăn H08_DASH_ATTACKDASH_ATTACK43130.3331.6MEDIUMARC r 80 arc 8048100.0450.22NONE—pierceATTACK trong 9 tick cuối Lướt/≤ 9 tick sau: bắn quỳ gối viên ổ tới lượt, nón 80° r80 coef 1.6 + hiệu ứng viên; tính là bước A (chạm kế = phát cặp). 2 ổ rỗng: Phụt Mồi rộng 100° r64 coef 1.0.
Nổ Chặn H08_ANSWERANSWER0990.30ANSWERARC r 48 arc 904800.080.25NONE—chain_answerCửa sổ 0.15 s (9 tick) 360°; nón 90° r48 về mối đe doạ chỉ là nơi hiệu ứng rơi. Ổ rỗng vẫn trung hoà. Đi ×0.5 trong W.
Nổ Chặn — viên H08_ANSWER_SHELLANSWER02160.32ANSWERARC r 48 arc 904800.080.25NONECOUNTER@0/COMBO_A@4—Hiệu ứng viên tiêu khi ĐÁP thành công: Đinh coef 2.0 (trần 2.0 × POWER, doc 11 §2.1) · Muối choáng · Ma Trơi lửa sàn; viên này tính là phát ổ A cho phản ứng cặp.
Tì Báng Nạp H08_HOLDHOLD6160.2170LIGHTNONE1000HYPER——Quỳ tì báng xuống đất: siêu giáp (miễn khựng + đẩy lùi) với đòn trước 120°, KHÔNG giảm sát thương; nạp 1 viên/0.4 s. Lướt huỷ mọi tick; thả rồi chạm = ĐÁP.
Hai Nòng Kề H08_COUNTERCOUNTER44180.43318COUNTERARC r 56 arc 12048300.120.45NONE—shieldbreakẤn miệng loa vào kẻ ✦ (lao 24 px trong 4 tick, bất tử từ input tới hết active), bắn liền 2 viên trên cùng: coef 18 = 180 ở POWER 10, nón 120° r56, −30 Thế, shieldbreak, rồi phản ứng cặp của 2 viên ngay tại mục tiêu. Thiếu viên: vẫn 18, không phản ứng.
Loa Sấm H08_SK01_BLASTSKILL124200.66SKILLARC r 140 arc 10048200.060.45NONE——Dồn thuốc thẳng vào miệng loa: nón 100° r140 coef 6.0, đẩy 40 px, không tiêu viên; Dov giật 0 px (không giật lùi).
Quạt Đinh H08_SK02_FANSKILL106160.5331.3SKILLARC r 220 arc 604830.030.22NONE—pierce12 đinh quạt đều 60°, tầm 220 px, mỗi đinh coef 1.3 xuyên 1 (mục tiêu 2 ×0.5); 1 mục tiêu nhận tối đa 3 đinh.
Mưa Muối — đợt 1 H08_SK03_SALTSKILL183140.5831.5SKILLCIRCLE r 80 off_fwd 9648150.040.25NONE——Giữ ngắm điểm (≤ 160 px, reticle tròn r80), nhả: vốc muối nổ trên cao rơi r80: coef 1.5, choáng S 1.4 s / M 0.7 s, L/XL −15 Thế.
Mưa Muối — đợt 2 H08_SK03_SALT_2SKILL483181.151.5SKILLCIRCLE r 80 off_fwd 9648100.030.18NONE——Đợt 2 cùng tâm sau 0.5 s: coef 1.5, làm mới choáng của kẻ còn trong vùng (không cộng dồn thời lượng).
Đèn Ma Rải Đường H08_SK04_MINESKILL81160.4170SKILLNONE1000NONE——Rải 4 đèn ma thành hàng sau lưng (cách 48 px, hàng dài 144 px), sống 12 s, tối đa 8 đèn trên sàn (đèn cũ nhất tắt).
Đèn Ma — nổ H08_SK04_BURSTSKILL0200.0331.2SKILLCIRCLE r 404880.030.18NONE——Quái chạm đèn (r14) hoặc hết 12 s: nổ r40 coef 1.2, đẩy 30, STS_EMBER.
Đèn Ma — lửa sàn H08_SK04_FIRESKILL0120020.3DOTCIRCLE r 4048100NONE——Lửa sàn r40 tại chỗ nổ 2 s, 0.3 coef mỗi 0.5 s.
Nhồi Đôi H08_SK05_SHOTSKILL143200.61710SKILLARC r 48 arc 6048300.080.5NONE—shieldbreakÉp 2 viên trên cùng vào 1 nòng, bắn sát nón 60° r48 coef 10.0 (Nòng Loa ×1.3 áp), −30 Thế, shieldbreak, rồi phản ứng cặp của 2 viên với coef/thời lượng ×2.
Chống Báng H08_SK06_BRACESKILL613862.50SKILLNONE1000HYPER——2.5 s chống báng: siêu giáp trước 180°, không giảm sát thương; nạp 1 viên/0.2 s; mỗi đòn Y/N trước mặt trúng Dov: nạp tức thì 1 viên Nạp Nóng + bắn trả 1 Đinh (≤ 3 lần). Lướt/ĐÁP huỷ.
Chống Báng — bắn trả H08_SK06_RETURNSKILL0200.0332SKILLLINE len 140 w 12180.030.12NONE——Đinh bắn trả thẳng vào kẻ vừa đánh (tầm 140 px), coef 2.0.
Chống Báng — dậm báng H08_SK06_SLAMSKILL04180.3674SKILLARC r 40 arc 9048250.060.3NONE——Hết 2.5 s (hoặc nhấn lại kỹ năng): dậm báng nón 90° r40 coef 4.0, −25 Thế, đẩy 40.
Lăn Lửa Ma H08_SK07_ROLLSKILL315100.4670SKILLNONE1000NONE——Lăn 120 px sang ngang/tới theo MOVE (thành phần lùi so với hướng ngắm bị cắt, Bible #28), không i-frame; hết lăn +1 Ma Trơi.
Lăn Lửa Ma — vệt H08_SK07_TRAILSKILL0180030.6DOTLINE len 120 w 2448100NONE——Vệt Ma Trơi dọc đường lăn 120 × 24 px, 3 s, 0.6 coef mỗi 0.5 s.
Nạp Một Hơi H08_SK08_LOADSKILL62460.60SKILLNONE1000NONE——Xoay 2 ổ một vòng, lấp đầy 6 viên loại vừa nạp; cue chân sáng ở tick 18: chạm ATTACK trong 0.10 s → cả 6 viên Nạp Nóng.
Nạp Một Hơi — xả khói H08_SK08_RINGSKILL6200.1331SKILLCIRCLE r 484840.020.12NONE——Xả hơi thuốc thừa khi mở ổ: vòng r48 coef 1.0 đẩy 40 px (tạo chỗ đứng nạp).
Pháo Đêm — bắn lên H08_UL1_LAUNCHULT3018920ULTNONE1000INVULN——Dựng nòng lên trời bắn 6 phát liền (tick 30–40), bất tử toàn clip 2.0 s.
Pháo Đêm — rơi H08_UL1_SHELLULT48423026ULTCIRCLE r 160128100.10.8INVULN—shieldbreak/rehit6 quả rơi nối tiếp mỗi 8 tick (tick 48–88), mỗi quả nổ r160 quanh điểm ngắm, coef 6.0.
Pháo Đêm — xác bốc ma trơi H08_UL1_CORPSEULT50601022ULTCIRCLE r 4012840.030.3NONE——Mọi xác và quái chết trong r200 trong lúc ult bốc ma trơi nổ r40 coef 2.0 (≤ 40 nổ), không lan tiếp.
Phát Cuối Đội Đèn H08_UL2_SHOTULT1866241.86.5ULTCIRCLE r 20880.10.8INVULN—shieldbreak/execute/rehitKhoá mục tiêu ưu tiên M/L/XL trong 140 px, nhồi 9 viên theo thứ tự 9 cặp, bắn 9 phát cách 8 tick (tick 18–82), mỗi phát coef 6.5 + phản ứng cặp tương ứng; execute 20% (XL thay bằng ×1.5).
Nòng Loa Vô Tận — mở H08_UL3_ENTERULT122160.53ULTCIRCLE r 64128100.10.45INVULN—shieldbreakClip kích 0.5 s bất tử: nổ miệng loa r64 coef 3.0 đẩy 40, rồi vào dạng 9 s.
Phát Cặp Nòng Chụm H08_AS2_FIN_LINEASPECT94180.5173HEAVYLINE len 160 w 2448200.070.28NONE—finisher/shieldbreak/pierceAS2: phát ổ B của cặp thành đường thẳng 160 × 24 px coef 3.0 xuyên tất cả, rồi phản ứng cặp tại mục tiêu xa nhất.
Phát Cặp Loa Rộng H08_AS3_FIN_RINGASPECT94200.552HEAVYCIRCLE r 5648200.070.3NONE—finisher/shieldbreakAS3: mỗi phản ứng cặp nổ thêm vòng r56 quanh miệng loa coef 2.0, đẩy 36.

78 kỹ năng

Hồi chiêu 8 kỹ năngHồi chiêu 8 kỹ năngLoa SấmLoa Sấm: 8 s8 sQuạt ĐinhQuạt Đinh: 6 s6 sMưa MuốiMưa Muối: 8 s8 sĐèn Ma Rải ĐườngĐèn Ma Rải Đường: 12 s12 sNhồi ĐôiNhồi Đôi: 8 s8 sChống BángChống Báng: 8 s8 sLăn Lửa MaLăn Lửa Ma: 5 s5 sNạp Một HơiNạp Một Hơi: 8 s8 s
skills[].cooldown_s

Loa Sấm

H08_SK01CLEARHồi: 8 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.cone_blast
INổ nón 100° tầm 140 px: 6 × POWER, đẩy 40 px. Hồi 8 s.IINổ nón 100° tầm 150 px: 7 × POWER, đẩy 40 px. Hồi 7.5 s.IIINổ nón 120° tầm 150 px: 7 × POWER; quái S văng vào nhau choáng 0.6 s. Hồi 7.5 s.

Hạng III: Hạng III: nón mở 120°; quái S bị đẩy va quái khác thì cả hai choáng 0.6 s (sóng sấm dội, cùng sheet, viền r7).

Đòn: SK01 · SKILL H08_SK01_BLAST · Tag: Kỹ năng SKILL · Vùng rộng AREA

Hitbox Loa SấmHitbox Loa Sấm40 px80 px120 px160 pxARChurtbox r 7shape ARC r 140 arc 100sàn 3/4 · ry = rx × 0.5

Quạt Đinh

H08_SK02CLEARHồi: 6 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.projectile_fan
IBắn 12 đinh quạt 60°, tầm 220 px, mỗi đinh 1.3 × POWER, xuyên 1. Hồi 6 s.IIBắn 14 đinh quạt 60°, tầm 240 px, mỗi đinh 1.4 × POWER, xuyên 1. Hồi 6 s.IIIBắn 14 đinh quạt 60°, mỗi đinh 1.4 × POWER; đinh hết tầm cắm sàn, nảy tới quái gần nhất trong 64 px. Hồi 6 s.

Hạng III: Hạng III: đinh hết tầm cắm sàn rồi nảy 1 lần tới quái gần nhất trong 64 px (cùng sheet, thêm vệt lùi).

Đòn: SK02 · SKILL H08_SK02_FAN · Tag: Kỹ năng SKILL · Phóng PROJ

Hitbox Quạt ĐinhHitbox Quạt Đinh64 px128 px192 px256 pxARChurtbox r 7shape ARC r 220 arc 60sàn 3/4 · ry = rx × 0.5

Mưa Muối

H08_SK03CONTROLHồi: 8 sGiá: 0Bấm: HOLDLượt: 1Giữ tối đa: 1.5 s
mechanic_key skill.stun
INém muối tới 160 px: 2 đợt r80, mỗi đợt 1.5 × POWER, choáng quái S 1.4 s. Hồi 8 s.IINém muối tới 160 px: 2 đợt r90, mỗi đợt 1.8 × POWER, choáng quái S 1.6 s. Hồi 8 s.III2 đợt muối r90 choáng quái S 1.6 s; vùng đóng vỏ muối 3 s: quái bước vào choáng lại. Hồi 8 s.

Hạng III: Hạng III: muối đóng vỏ sàn 3 s; quái S bước vào vùng bị choáng 0.6 s (1 lần/quái).

Đòn: SK03 · SKILL H08_SK03_SALT · SK03_W2 · SKILL H08_SK03_SALT_2 · Tag: Kỹ năng SKILL · Vùng rộng AREA

Hitbox Mưa Muối — đợt 1Hitbox Mưa Muối — đợt 148 px96 px144 px192 pxCIRCLEhurtbox r 7shape CIRCLE r 80 off_fwd 96sàn 3/4 · ry = rx × 0.5

Đèn Ma Rải Đường

H08_SK04CONTROLHồi: 12 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.mine
IRải 4 đèn ma sau lưng (12 s): chạm nổ r40, 1.2 × POWER, gây Than Hồng, lửa sàn 2 s. Hồi 12 s.IIRải 5 đèn ma sau lưng (12 s): chạm nổ r44, 1.4 × POWER, gây Than Hồng, lửa sàn 2 s. Hồi 11 s.IIIRải 5 đèn ma: nổ r44, 1.4 × POWER, rồi toả 3 đốm ma trơi, mỗi đốm 0.6 × POWER. Hồi 11 s.

Hạng III: Hạng III: mỗi đèn nổ toả 3 đốm ma trơi lăn 48 px theo 3 hướng cách 120°, mỗi đốm nổ r24 coef 0.6 (cùng sheet, cỡ 0.6).

Đòn: SK04 · SKILL H08_SK04_MINE · SK04_BURST · SKILL H08_SK04_BURST · SK04_FIRE · SKILL H08_SK04_FIRE · Tag: Kỹ năng SKILL · Than Hồng STS_EMBER

Hitbox Đèn Ma — nổHitbox Đèn Ma — nổ8 px16 px24 px32 px40 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 40sàn 3/4 · ry = rx × 0.5

Nhồi Đôi

H08_SK05DUELHồi: 8 sGiá: 2Bấm: TAPLượt: 1phá khiên
mechanic_key skill.shell_overcharge
IBắn 2 viên đang lắp sát nòng r48: 10 × POWER, −30 Thế, phản ứng cặp ×2. Hồi 8 s.IIBắn 2 viên đang lắp sát nòng r48: 12 × POWER, −36 Thế, phản ứng cặp ×2. Hồi 7.5 s.IIIBắn 2 viên sát nòng: 12 × POWER, −36 Thế; trúng mục tiêu đang Vỡ Thế hoàn 1 viên. Hồi 7.5 s.

Hạng III: Hạng III: trúng mục tiêu đang Vỡ Thế hoặc choáng → hoàn 1 viên cùng loại vào ổ A.

Đòn: SK05 · SKILL H08_SK05_SHOT · Tag: Kỹ năng SKILL · Tài nguyên: Ổ Đạn RES:SHELL

Hitbox Nhồi ĐôiHitbox Nhồi Đôi16 px32 px48 pxARChurtbox r 7shape ARC r 48 arc 60sàn 3/4 · ry = rx × 0.5

Chống Báng

H08_SK06DUELHồi: 8 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.brace_reload
IChống báng 2.5 s: siêu giáp trước 180°, nạp 1 viên/0.2 s; đòn trúng → bắn trả 2 × POWER. Hồi 8 s.IIChống báng 2.5 s: siêu giáp trước 180°, nạp 1 viên/0.2 s; đòn trúng → bắn trả 2.4 × POWER. Hồi 7.5 s.IIIChống báng 2.5 s, nạp 1 viên/0.2 s; Nổ Chặn trong lúc chống báng +0.05 s cửa sổ và không tiêu viên. Hồi 7.5 s.

Hạng III: Hạng III: đang chống báng, Nổ Chặn rộng cửa sổ +0.05 s (kẹp 0.24 s) và không tiêu viên; thả chống báng bằng ĐÁP không mất dậm báng.

Đòn: SK06 · SKILL H08_SK06_BRACE · SK06_RETURN · SKILL H08_SK06_RETURN · SK06_SLAM · SKILL H08_SK06_SLAM · Tag: Kỹ năng SKILL · Đáp ANSWER

Hitbox Chống Báng — bắn trảHitbox Chống Báng — bắn trả40 px80 px120 px160 pxLINEhurtbox r 7shape LINE len 140 w 12sàn 3/4 · ry = rx × 0.5

Lăn Lửa Ma

H08_SK07TEMPOHồi: 5 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.ground_scar
ILăn ngang/tới 120 px, để vệt Ma Trơi 3 s (0.6 × POWER mỗi 0.5 s), +1 Ma Trơi. Hồi 5 s.IILăn ngang/tới 120 px, để vệt Ma Trơi 3.5 s (0.72 × POWER mỗi 0.5 s), +1 Ma Trơi. Hồi 4.5 s.IIILăn 120 px để vệt Ma Trơi 3.5 s; viên Ma Trơi nhận được luôn là Nạp Nóng. Hồi 4.5 s.

Hạng III: Hạng III: viên Ma Trơi nhận cuối lăn luôn là Nạp Nóng; vệt nối với lửa sàn khác thành 1 vùng (cùng sheet).

Đòn: SK07 · SKILL H08_SK07_ROLL · SK07_TRAIL · SKILL H08_SK07_TRAIL · Tag: Kỹ năng SKILL · Di chuyển MOVE

Hitbox Lăn Lửa Ma — vệtHitbox Lăn Lửa Ma — vệt32 px64 px96 px128 pxLINEhurtbox r 7shape LINE len 120 w 24sàn 3/4 · ry = rx × 0.5

Nạp Một Hơi

H08_SK08TEMPOHồi: 8 sGiá: 0Bấm: TAPLượt: 1
mechanic_key skill.hot_reload
ILấp đầy 6 viên loại vừa nạp; chạm Đánh đúng cue 0.1 s → cả ổ Nạp Nóng. Hồi 8 s.IILấp đầy 6 viên loại vừa nạp; chạm Đánh đúng cue 0.12 s → cả ổ Nạp Nóng. Hồi 7 s.IIILấp 6 viên theo thứ tự 3 cặp cuối đã bắn; chạm Đánh đúng cue 0.12 s → Nạp Nóng. Hồi 7 s.

Hạng III: Hạng III: thay vì 1 loại, nạp lại đúng thứ tự 3 cặp cuối đã bắn (lặp lại combo phản ứng).

Đòn: SK08 · SKILL H08_SK08_LOAD · SK08_RING · SKILL H08_SK08_RING · Tag: Kỹ năng SKILL · Tài nguyên: Ổ Đạn RES:SHELL

Hitbox Nạp Một Hơi — xả khóiHitbox Nạp Một Hơi — xả khói16 px32 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 48sàn 3/4 · ry = rx × 0.5

83 tuyệt kỹ (Ult)

Pháo Đêm Ma Trơi

H08_UL1AREAThời lượng: 2 sBất tử t: 0/120Chậm thế giới: 0.4
mechanic_key ult.corpse_burst

Bắn 6 phát pháo ma trơi lên trời, rơi nổ r160 quanh điểm ngắm, mỗi phát 6 × POWER; xác trong r200 nổ r40, 2 × POWER.

n: 6r: 160coef: 6scan: 200cr: 40ccoef: 2chance: 1cap: 40max_targets: 128

Đòn: UL1 · ULT H08_UL1_LAUNCH · UL1_SHELL · ULT H08_UL1_SHELL · UL1_CORPSE · ULT H08_UL1_CORPSE

Hitbox Pháo Đêm — rơiHitbox Pháo Đêm — rơi48 px96 px144 px192 pxCIRCLEhurtbox r 7shape CIRCLE r 160sàn 3/4 · ry = rx × 0.5

Phát Cuối Đội Đèn

H08_UL2EXECUTEThời lượng: 1.8 sBất tử t: 0/108Chậm thế giới: 0.3
mechanic_key ult.chamber_order

Nhồi 9 viên theo đủ 9 cặp, bắn liền vào 1 Tinh Anh/boss: mỗi phát 6.5 × POWER + phản ứng cặp; dưới 0.2 HP là kết liễu.

shots: 9coef: 6.5execute_pct: 0.2xl_mult: 1.5lock_r: 140order: DINH>DINH/DINH>MUOI/DINH>MATROI/MUOI>DINH/MUOI>MUOI/MUOI>MATROI/MATROI>DINH/MATROI>MUOI/MATROI>MATROI

Đòn: UL2 · ULT H08_UL2_SHOT

Hitbox Phát Cuối Đội ĐènHitbox Phát Cuối Đội Đèn8 px16 px24 pxCIRCLEhurtbox r 7shape CIRCLE r 20sàn 3/4 · ry = rx × 0.5

Nòng Loa Vô Tận

H08_UL3TRANSFORMThời lượng: 9 sBất tử t: 0/30Chậm thế giới: 0
mechanic_key ult.hot_reload

9 s: mọi viên tự Nạp Nóng, 2 ổ lặp lại 6 viên hiện có không cạn, tốc bắn ×1.2, Nổ Chặn không tốn viên.

dur: 9loop: 6atk: 1.2hot_inc: 0.5sk01_cd_mult: 0.5
Ghi đè khi biến hình
hot_all
có
chamber_loop
có
loop_size
6
answer_shell_cost
0
atk_speed_mult
1.2
pair_window_s
0.9
load_disabled
có
COMBO_A_PAIR.coef_mult
1.2
H08_SK01.cooldown_mult
0.5
vfx_overlay
VFX_H08_UL3_endless_bell

Đòn: UL3 · ULT H08_UL3_ENTER

Hitbox Nòng Loa Vô Tận — mởHitbox Nòng Loa Vô Tận — mở16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5

93 Dạng Rèn

Hoả Mai Nòng Loa

H08_AS1Lớp vũ khí: bell_firelockMảnh Vang: 0

Nòng loe gốc: Đinh nón 70° tầm 110 px, Nạp Nóng +50%.

Combo
tempo_mult 1, arc_add 0, range_add 0
Luật tài nguyên
giữ gốc
Lệch độ khó
—
mechanic_key
—

Đòn: PAIR · COMBO_A H08_COMBO_A_PAIR

VFX — · SFX —

Hoả Mai Nòng Chụm

H08_AS2Lớp vũ khí: narrow_firelockMảnh Vang: 8Lệch hue: −3°Clip mới: as2_fin

Nòng thẳng hẹp: nón 50° tầm 150 px, sát thương phát ×0.9; phát cặp thành đường 160 px xuyên; Tì Báng nạp mỗi 0.3 s.

Combo
tempo_mult 1, arc_add −20, range_add 40
Luật tài nguyên
Tì Báng Nạp nạp 1 viên mỗi 0.3 s (gốc 0.4 s); chỉ thay mục gain hold_tick, các nguồn nạp khác (charge_mark, perfect_dodge, kill_multi, skill, dash_end) giữ nguyên.
Lệch độ khó
axis V, delta 1
mechanic_key
passive.brace_reload

Đòn: AS2_FIN · ASPECT H08_AS2_FIN_LINE

Pháo Tay Loa Rộng

H08_AS3Lớp vũ khí: wide_hand_cannonMảnh Vang: 15Lệch hue: 3°Clip mới: as3_fin

Nòng loe to ngắn: nón 110° tầm 80 px, sát thương phát ×1.2; mỗi phản ứng cặp nổ thêm r56 quanh miệng loa; Nạp Nóng +70%.

Combo
tempo_mult 0.9, arc_add 40, range_add −30
Luật tài nguyên
Nạp Nóng +70% sát thương và thời lượng hiệu ứng (gốc +50%, số ở params.hot); chỉ thay mục gain charge_mark, các nguồn nạp khác (hold_tick, perfect_dodge, kill_multi, skill, dash_end) giữ nguyên.
Lệch độ khó
axis V, delta −1
mechanic_key
passive.cone_blast

Đòn: AS3_FIN · ASPECT H08_AS3_FIN_RING

10Nâng cấp: Edge · Cộng Hưởng · Tiến Hoá

40
Edge
6
Cộng Hưởng
4
Tiến Hoá
4
Then Chốt
Độ hiếm 40 EdgeĐộ hiếm 40 EdgeCOMMON: 16 (40%)RARE: 13 (32%)EPIC: 7 (18%)LEGENDARY: 4 (10%)40EdgeCOMMON — 16 (40%)RARE — 13 (32%)EPIC — 7 (18%)LEGENDARY — 4 (10%)
Số Edge theo tag (tính cả tag phụ)Số Edge theo tag (tính cả tag phụ)SKILLSKILL: 1616RES:SHELLRES:SHELL: 1313ANSWERANSWER: 88COMBOCOMBO: 77DASHDASH: 77COUNTERCOUNTER: 77ULTULT: 33STS_EMBERSTS_EMBER: 22ZONEZONE: 11AREAAREA: 11CHAINCHAIN: 11PROJPROJ: 11STS_FROSTSTS_FROST: 11
edges[].tags
COMMONRAREEPICLEGENDARY

Then Chốt (LEGENDARY)

Pháo Hoa Dẫn Hồn

H08_E37LEGENDARYHạng tối đa: 1Mở: MR10

Quái chết vì phản ứng cặp nổ r40 lặp phản ứng ×0.75; cặp hạ ≥ 4 quái → viên kế tự Nạp Nóng.

ON_KILL · CUSTOM_HOOK · NONE · kill.corpse_burst + kill_multi.hot_reload
target VERB:FINISHER, tpl TPL_H08_reaction_corpse, r 40, echo_mult 0.75, multi 4, kill_class S
Tag: Combo COMBO · Tài nguyên: Ổ Đạn RES:SHELL

Mảnh Chặn Nạp Ổ

H08_E38LEGENDARYHạng tối đa: 1Mở: MR10

Khi ĐÁP thành công, văng 3 mảnh nảy 3 quái (1.2 × POWER), mỗi mảnh trúng +1 Ổ Đạn (≤ 3).

ON_ANSWER · SPAWN_PROJ · NONE · answer_chain.projectile_fan + answer.res_add
target VERB:ANSWER, n 3, bounce 3, coef 1.2, refill_cap 3, blank_effect DINH
Tag: Đáp ANSWER · Tài nguyên: Ổ Đạn RES:SHELL

Tì Báng Xả Loạt

H08_E39LEGENDARYHạng tối đa: 1Mở: MR10

Tì Báng: đòn trúng mặt trước +1 viên; nhả khi Ổ Đầy = 3 cặp liền, mỗi phát 3 × POWER, −15 Thế.

ON_HOOK · CUSTOM_HOOK · NONE · hold_end.chamber_order + hold_block.brace_reload
target VERB:HOLD, tpl TPL_H08_brace_volley, per_hit 1, coef 3, poise 15, pairs 3, volley_s 0.6
Tag: Đáp ANSWER · Phản COUNTER

Ngòi Nổ Lăn Đêm

H08_E40LEGENDARYHạng tối đa: 1Mở: MR10

Lướt khi Ổ Đầy cắm ngòi: 0.6 s sau nổ r72, 2 × POWER mỗi viên + 3 phản ứng; hoàn 1 Lướt.

ON_DASH · CUSTOM_HOOK · NONE · dash.chamber_order + detonate.mine
target VERB:DASH, tpl TPL_H08_fuse_roll, fuse_s 0.6, r 72, coef_per_unit 2, dash_refund 1, offer_excl XG_H08_ROLL_CHAMBER
Tag: Lướt DASH · Tài nguyên: Ổ Đạn RES:SHELL

Hướng build Combo · 6 Edge

Cộng Hưởng: Nhịp Ổ Thuộc Lòng H08_RS1 · Combo COMBO

Bậc I≥ 3 Edge tag
Phát đơn và Phát Cặp +12% sát thương.
Bậc II≥ 5 Edge tag
Phản ứng cặp thứ 3 liền nhau trong 4 s tự Nạp Nóng và ×1.15.
Thay bậc I: không cần canh cue, cứ {every} phản ứng cặp liền nhau thì cặp thứ {every} tính là Nạp Nóng.

Miệng Chuông Loe

H08_E01COMMONHạng tối đa: 3Mở: MR01

Phát đơn: nón +10/18/25°, sát thương +6/10/15%.

tham sốH1H2H3
arc_add101825
dmg_inc61015
PASSIVE · MODIFY_MOVE · NONE · passive.arc_widen
target VERB:COMBO
Tag: Combo COMBO

Ngón Tay Ám Khói

H08_E02COMMONHạng tối đa: 3Mở: MR01

Giữ Đánh nạp viên: mốc chọn viên sớm 8/14/20%; cửa Nạp Nóng +0.02/0.035/0.05 s.

tham sốH1H2H3
charge_pct81420
hot_add0.020.0350.05
PASSIVE · MODIFY_MOVE · NONE · charge_mark.charge_speed
target RES
Tag: Combo COMBO

Lửa Ma Bén Đất

H08_E03COMMONHạng tối đa: 3Mở: MR01

Lửa sàn Ma Trơi: thời lượng +1/1.75/2.5 s, bán kính +0/0/8 px.

tham sốH1H2H3
dur_add11.752.5
r_add008
PASSIVE · MODIFY_MOVE · NONE · zone_tick.ground_scar
target H08_MV_WISP_FLOOR
Tag: Combo COMBO · Vùng Sàn ZONE

Dội Nòng Kết

H08_E04RAREHạng tối đa: 2Mở: MR01

Khi Phát Cặp trúng, thổi thêm nón 90° r64: 1.5/2.4 × POWER.

tham sốH1H2
coef1.52.4
ON_HIT · BLAST · NONE · combo_end.cone_blast
target VERB:FINISHER, arc 90, r 64, icd_s 0.3
Tag: Combo COMBO · Vùng rộng AREA

Sấm Theo Cặp

H08_E05RAREHạng tối đa: 2Mở: MR03

Khi Phát Cặp trúng, Loa Sấm hồi chiêu −0.5/0.8 s.

tham sốH1H2
amount0.50.8
ON_HIT · COOLDOWN · NONE · combo_end.cooldown_reduce
target H08_SK01, icd_s 0.5
Tag: Combo COMBO · Kỹ năng SKILL

Chuỗi Ổ Không Nghỉ

H08_E06EPICHạng tối đa: 1Mở: MR06

Phát Cặp mở cửa sổ cặp mới: phản ứng nối tiếp ×0.6, tối đa 3 lần liền.

PASSIVE · CUSTOM_HOOK · NONE · combo_end.chamber_order
target VERB:FINISHER, tpl TPL_H08_chain_pair, chain_mult 0.6, chain_max 3
Tag: Combo COMBO

Hướng build Lướt · 6 Edge

Cộng Hưởng: Lăn Trên Lửa Ma H08_RS2 · Lướt DASH

Bậc I≥ 3 Edge tag
+1 lượt Lướt; Phát Lăn +20% sát thương.
Bậc II≥ 5 Edge tag
Lướt xuyên lửa sàn Ma Trơi: +1 Ma Trơi vào ổ (1 lần mỗi 1.5 s); Phát Lăn kế tính Nạp Nóng.
Thay bậc I: lửa sàn của chính Dov thành trạm nạp đạn khi lăn qua.

Lăn Gọn Bãi Pháo

H08_E07COMMONHạng tối đa: 3Mở: MR01

Thời gian nạp Lướt −12/−20/−28%; phát đầu sau Lướt +10/18/25% sát thương.

tham sốH1H2H3
recharge_pct−12−20−28
after_inc101825
PASSIVE · MODIFY_MOVE · NONE · passive.dash_recharge
target VERB:DASH
Tag: Lướt DASH

Phát Lăn Loe Nòng

H08_E08COMMONHạng tối đa: 3Mở: MR01

Phát Lăn: nón +10/18/25°, hệ số +0.3/0.5/0.75.

tham sốH1H2H3
arc_add101825
coef_add0.30.50.75
PASSIVE · MODIFY_MOVE · NONE · dash_attack.cone_blast
target H08_MV_ROLL_SHOT
Tag: Lướt DASH

Vệt Lửa Dài

H08_E09COMMONHạng tối đa: 3Mở: MR01

Lăn Lửa Ma: vệt Ma Trơi +0.5/0.9/1.25 s, hệ số mỗi nhịp +0.08/0.14/0.2.

tham sốH1H2H3
trail_add0.50.91.25
coef_add0.080.140.2
PASSIVE · MODIFY_MOVE · NONE · dash_end.ground_scar
target H08_SK07
Tag: Lướt DASH · Kỹ năng SKILL

Né Nhồi Nóng

H08_E10RAREHạng tối đa: 2Mở: MR01

Khi Né Hoàn Hảo, +1 Ổ Đạn Nạp Nóng; +3/5 Dư Âm.

tham sốH1H2
ult35
ON_PERFECT_DODGE · RESOURCE · NONE · perfect_dodge.res_add
target RES, amount 1, icd_s 1
Tag: Lướt DASH · Tài nguyên: Ổ Đạn RES:SHELL

Đèn Rơi Sau Lăn

H08_E11RAREHạng tối đa: 2Mở: MR03

Khi dùng Lăn Lửa Ma, để 2 đèn ma ở điểm xuất phát (8 s): chạm nổ r40, 1.4/2.2 × POWER.

tham sốH1H2
coef1.42.2
ON_SKILL_CAST · SPAWN_ZONE · NONE · dash.mine
target H08_SK07, n 2, life 8, r 40
Tag: Lướt DASH · Kỹ năng SKILL

Lăn Bắn Đôi Nòng

H08_E12EPICHạng tối đa: 1Mở: MR06

Phát Lăn bắn cùng lúc 2 viên trên cùng 2 ổ: phản ứng cặp ngay tại nón, ×0.8.

PASSIVE · MODIFY_MOVE · NONE · dash_attack.shell_overcharge
target H08_MV_ROLL_SHOT, consume 2, coef_mult 0.8, offer_requires EDGE:H08_E08, offer_excl XG_H08_ROLL_CHAMBER
Tag: Lướt DASH · Tài nguyên: Ổ Đạn RES:SHELL

Hướng build Đáp · 6 Edge

Cộng Hưởng: Nổ Chặn Thuộc Tay H08_RS3 · Đáp ANSWER

Bậc I≥ 3 Edge tag
Nổ Chặn: hiệu ứng viên +30% (sát thương Đinh, choáng Muối, lửa sàn Ma Trơi).
Bậc II≥ 5 Edge tag
Viên tiêu bởi Nổ Chặn luôn Nạp Nóng; ổ rỗng: Nổ Chặn nhả hiệu ứng Đinh 2 × POWER.
Thay bậc I: ĐÁP không bao giờ là phát rỗng, viên tiêu khi ĐÁP luôn mạnh như nạp đúng cue.

Loa Chặn Mở Rộng

H08_E13COMMONHạng tối đa: 3Mở: MR01

Nổ Chặn: nón +15/26/38°, tầm +8/14/20 px.

tham sốH1H2H3
arc_add152638
r_add81420
PASSIVE · MODIFY_MOVE · NONE · answer.cone_blast
target VERB:ANSWER
Tag: Đáp ANSWER

Mắt Pháo Thủ

H08_E14COMMONHạng tối đa: 3Mở: MR01

Cửa sổ ĐÁP +0.03/0.05/0.07 s.

tham sốH1H2H3
value0.030.050.07
PASSIVE · STAT · FLAT · passive.answer_window_add
target SELF
Tag: Đáp ANSWER

Báng Tì Vững

H08_E15COMMONHạng tối đa: 3Mở: MR01

Tì Báng Nạp: chu kỳ nạp −0.04/0.07/0.1 s, xoay ngắm +0/0/90°/s.

tham sốH1H2H3
period_cut0.040.070.1
rotate_add0090
PASSIVE · MODIFY_MOVE · NONE · hold_tick.brace_reload
target VERB:HOLD
Tag: Đáp ANSWER

Đạn Dội Mảnh Nảy

H08_E16RAREHạng tối đa: 2Mở: MR01

Khi Nổ Chặn thổi tan đạn, bắn 3 mảnh nảy 2 lần trong r72, mỗi lần 1.4/2.2 × POWER.

tham sốH1H2
coef1.42.2
ON_ANSWER · SPAWN_PROJ · NONE · answer_proj.projectile_fan
target VERB:ANSWER, n 3, bounce 2, bounce_r 72
Tag: Đáp ANSWER · Dây chuyền CHAIN

Chống Báng Ăn Đòn

H08_E17RAREHạng tối đa: 2Mở: MR03

Chống Báng: mỗi đòn chặn được +1 Ổ Đạn; dậm báng cuối +25/40%.

tham sốH1H2
slam_inc2540
ON_HOLD_BLOCK · RESOURCE · NONE · stance.brace_reload
target H08_SK06, per_hit 1, icd_s 0.2, offer_excl XG_H08_BRACE_SLAM
Tag: Đáp ANSWER · Kỹ năng SKILL

Báng Thả Nòng Kề

H08_E18EPICHạng tối đa: 1Mở: MR06

Chống Báng kết thúc: thay dậm báng bằng 2 viên sát nòng 10 × POWER, −30 Thế, phản ứng cặp ×2.

ON_HOOK · CUSTOM_HOOK · NONE · hold_end.shell_overcharge
target H08_SK06, tpl TPL_H08_brace_release, coef 10, poise 30, offer_excl XG_H08_BRACE_SLAM
Tag: Đáp ANSWER · Kỹ năng SKILL

Hướng build Phản · 6 Edge

Cộng Hưởng: Hai Nòng Song Thanh H08_RS4 · Phản COUNTER

Bậc I≥ 3 Edge tag
Hai Nòng Kề −15 Thế thêm, +15% sát thương.
Bậc II≥ 5 Edge tag
Hai Nòng Kề: nón 160°, đẩy 30 px; phản ứng cặp của Phản ×1.2.
Thay bậc I: Phản đổi từ đòn tay đôi thành nón quét cả cụm đứng sau kẻ bị Phản.

Kề Sát Họng Loa

H08_E19COMMONHạng tối đa: 3Mở: MR01

Hai Nòng Kề lao +6/10/14 px; vùng Nòng Loa +6/10/14 px.

tham sốH1H2H3
lunge_add61014
loa_r_add61014
PASSIVE · MODIFY_MOVE · NONE · counter.range_extend
target VERB:COUNTER
Tag: Phản COUNTER

Phản Nạp Lại Ổ

H08_E20COMMONHạng tối đa: 3Mở: MR01

Khi Phản trúng, hoàn 50/50/100% viên vừa bắn (làm tròn lên); +0/2/3 Dư Âm.

tham sốH1H2H3
pct5050100
ult023
ON_COUNTER · RESOURCE · NONE · counter.res_refund
target RES, offer_excl XG_H08_COUNTER_SHELL
Tag: Phản COUNTER · Tài nguyên: Ổ Đạn RES:SHELL

Phản Lên Kẻ Choáng

H08_E21COMMONHạng tối đa: 3Mở: MR01

Mưa Muối: choáng +0.1/0.2/0.25 s; Phản lên kẻ đang choáng +10/18/25% sát thương.

tham sốH1H2H3
stun_add0.10.20.25
stunned_inc101825
PASSIVE · MODIFY_MOVE · NONE · counter.stun
target H08_SK03
Tag: Phản COUNTER · Kỹ năng SKILL

Nhồi Đôi Sau Phản

H08_E22RAREHạng tối đa: 2Mở: MR01

Khi Phản trúng, Nhồi Đôi trong 2 s không tốn viên và −10/16 Thế thêm.

tham sốH1H2
poise_add1016
ON_COUNTER · MODIFY_MOVE · NONE · counter.shell_overcharge
target H08_SK05, win 2, offer_excl XG_H08_COUNTER_SHELL
Tag: Phản COUNTER · Kỹ năng SKILL

Tiếng Vọng Hai Nòng

H08_E23RAREHạng tối đa: 2Mở: MR03

Khi Phản trúng, phản ứng cặp của Hai Nòng Kề nổ lại sau 0.3 s, 40/64% sát thương.

tham sốH1H2
echo_pct4064
ON_COUNTER · BLAST · NONE · counter.chamber_order
target VERB:COUNTER, delay_s 0.3, offer_requires EDGE:H08_E19
Tag: Phản COUNTER

Phát Cuối Gọi Tên

H08_E24EPICHạng tối đa: 1Mở: MR08

Phát Cuối Đội Đèn: ngưỡng kết liễu 25%; kết thúc bằng Hai Nòng Kề miễn phí ×1.2.

ON_ULT · CUSTOM_HOOK · NONE · ult_end.shell_overcharge
target H08_UL2, tpl TPL_H08_last_shot_twin, twin_mult 1.2, execute_pct 25
Tag: Phản COUNTER · Tuyệt kỹ ULT

Hướng build Kỹ năng · 6 Edge

Cộng Hưởng: Kỹ Năng Nhồi Đạn H08_RS5 · Kỹ năng SKILL

Bậc I≥ 3 Edge tag
Hồi chiêu kỹ năng +20% nhanh hơn.
Bậc II≥ 5 Edge tag
Dùng kỹ năng nạp 1 viên đúng loại: Loa Sấm, Quạt Đinh → Đinh; Mưa Muối → Muối; Đèn Ma, Lăn Lửa Ma → Ma Trơi.
Thay bậc I: kỹ năng thành nguồn nạp đạn; Nhồi Đôi, Chống Báng, Nạp Một Hơi không tính.

Đèn Ma Cháy Lâu

H08_E25COMMONHạng tối đa: 3Mở: MR01

Đèn Ma Rải Đường: nổ +4/6/10 px, lửa sàn +0.5/0.9/1.25 s.

tham sốH1H2H3
r_add4610
fire_add0.50.91.25
PASSIVE · MODIFY_MOVE · NONE · place.mine
target H08_SK04
Tag: Kỹ năng SKILL

Quạt Đinh Dày Mũi

H08_E26COMMONHạng tối đa: 3Mở: MR01

Quạt Đinh: mỗi đinh hệ số +0.15/0.26/0.38; thêm 0/0/1 đinh.

tham sốH1H2H3
coef_add0.150.260.38
n_add001
PASSIVE · MODIFY_MOVE · NONE · skill_hit.projectile_fan
target H08_SK02
Tag: Kỹ năng SKILL · Phóng PROJ

Đinh Tẩm Lửa Ma

H08_E27RAREHạng tối đa: 2Mở: MR01

Khi Quạt Đinh trúng, gây Than Hồng 3/4.8 s.

tham sốH1H2
duration_s34.8
ON_HIT · APPLY_STATUS · NONE · skill_hit.apply_ember
target H08_SK02, status STS_EMBER, icd_s 0.25
Tag: Kỹ năng SKILL · Than Hồng STS_EMBER

Muối Đóng Sương

H08_E28RAREHạng tối đa: 2Mở: MR01

Khi Mưa Muối trúng, gây Sương Giá 2/3 lớp, 4 s.

tham sốH1H2
stacks23
ON_HIT · APPLY_STATUS · NONE · skill_hit.apply_frost
target H08_SK03, status STS_FROST, duration_s 4
Tag: Kỹ năng SKILL · Sương Giá STS_FROST

Xác Thắp Đèn Mới

H08_E29RAREHạng tối đa: 2Mở: MR06

Khi quái chết trong lửa Đèn Ma, rải 1 đèn mới (6/9 s, tối đa 3 đèn thêm).

tham sốH1H2
life69
ON_KILL · SPAWN_ZONE · NONE · kill.mine
target H08_SK04, cap 3, icd_s 0.5
Tag: Kỹ năng SKILL

Loa Sấm Xả Ổ

H08_E30EPICHạng tối đa: 1Mở: MR08

Loa Sấm tiêu hết viên trong 2 ổ: mỗi viên +1 × POWER và nhả hiệu ứng viên đó.

ON_SKILL_CAST · CUSTOM_HOOK · NONE · skill.res_dump
target H08_SK01, tpl TPL_H08_thunder_dump, coef_per_unit 1, offer_requires EDGE:H08_E05
Tag: Kỹ năng SKILL · Tài nguyên: Ổ Đạn RES:SHELL

Hướng build Tài nguyên: Ổ Đạn · 6 Edge

Cộng Hưởng: Ổ Phản Ứng H08_RS6 · Tài nguyên: Ổ Đạn RES:SHELL

Bậc I≥ 3 Edge tag
Phản ứng cặp +25% sát thương.
Bậc II≥ 5 Edge tag
Phản ứng cặp ×1.2; cặp Muối và Ma Trơi (2 chiều) nổ thêm r48, 1.5 × POWER.
Thay bậc I: Muối Lạnh cũng nổ như Nổ Muối, nên thứ tự Muối/Ma Trơi nào cũng ra nổ.

Than Theo Phản Ứng

H08_E31COMMONHạng tối đa: 3Mở: MR01

Khi tiêu Ổ Đạn vào phản ứng cặp có Ma Trơi, gây Than Hồng 2/3.5/5 s.

tham sốH1H2H3
duration_s23.55
ON_RESOURCE_SPEND · APPLY_STATUS · NONE · res_spend.apply_ember
target RES, status STS_EMBER, icd_s 0.25
Tag: Tài nguyên: Ổ Đạn RES:SHELL · Than Hồng STS_EMBER

Cue Nạp Một Hơi

H08_E32COMMONHạng tối đa: 3Mở: MR01

Nạp Một Hơi: cửa cue +0.02/0.035/0.05 s, hồi chiêu −0.4/0.7/1 s.

tham sốH1H2H3
window_add0.020.0350.05
cd_cut0.40.71
PASSIVE · MODIFY_MOVE · NONE · res_gain.hot_reload
target H08_SK08
Tag: Tài nguyên: Ổ Đạn RES:SHELL · Kỹ năng SKILL

Nhồi Đôi Nạp Nóng

H08_E33RAREHạng tối đa: 2Mở: MR01

Nhồi Đôi: mỗi viên Nạp Nóng trong 2 viên +20/32% sát thương; hồi chiêu −0.5 s.

tham sốH1H2
hot_inc2032
PASSIVE · MODIFY_MOVE · NONE · skill_hit.shell_overcharge
target H08_SK05, cd_cut 0.5
Tag: Tài nguyên: Ổ Đạn RES:SHELL · Kỹ năng SKILL

Ổ Đầy Hát Vang

H08_E34RAREHạng tối đa: 2Mở: MR01

Khi Nạp Một Hơi làm Ổ Đạn đầy, xả khói r56: 3/4.8 × POWER, đẩy 40 px.

tham sốH1H2
coef34.8
ON_RESOURCE_FULL · BLAST · NONE · res_full.hot_reload
target H08_SK08, r 56, kb 40
Tag: Tài nguyên: Ổ Đạn RES:SHELL · Kỹ năng SKILL

Đêm Bốc Ma Trơi

H08_E35EPICHạng tối đa: 1Mở: MR08

Pháo Đêm Ma Trơi: mỗi xác bốc ma trơi nạp 1 Ma Trơi Nạp Nóng (≤ 6); xác nổ +0.5 hệ số.

ON_ULT · RESOURCE · NONE · ult.res_add
target H08_UL1, per_corpse 1, cap 6, corpse_coef_add 0.5

Chuông Không Nghỉ

H08_E36EPICHạng tối đa: 1Mở: MR08

Nòng Loa Vô Tận +1 s; sau mỗi phản ứng cặp tự Đảo Ổ để cặp kế luôn khác.

PASSIVE · MODIFY_MOVE · NONE · ult.form_extend
target H08_UL3, form_add 1, auto_swap có

Tiến Hoá

requires_edges + condition.ref → Tiến Hoá

Bão Muối Tì Báng

H08_EVO1

Tì Báng Nạp: mỗi 1.2 s rắc vòng muối r64 (1.2 × POWER, choáng S 0.6 s, 1 lớp Sương Giá); Mưa Muối thành bão 3 s.

Cần Edge
Báng Tì Vững H08_E15 · Muối Đóng Sương H08_E28
Điều kiện
SKILL_RANK Mưa Muối H08_SK03 = 3 — Mưa Muối hạng III; Báng Tì Vững hạng III + Muối Đóng Sương hạng II (hướng Tì Báng).
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
hold_tick.stun

Phố Đèn Ma

H08_EVO2

Đèn Ma thành đèn lồng cháy 10 s: lửa sàn r56 0.6 × POWER/0.5 s; Phát Ma Trơi trúng đèn nổ r48 2 × POWER.

Cần Edge
Lửa Ma Bén Đất H08_E03 · Đèn Ma Cháy Lâu H08_E25
Điều kiện
RESONANCE Nhịp Ổ Thuộc Lòng H08_RS1 = 1 — Cộng Hưởng COMBO đạt bậc I; Lửa Ma Bén Đất + Đèn Ma Cháy Lâu hạng III (hướng Nón Lửa).
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
zone_tick.mine

Thác Pháo Nạp Nóng

H08_EVO3

Mỗi viên Nạp Nóng bắn ra phóng 1 pháo ma trơi, 0.4 s sau nổ r40 1.5 × POWER; Nạp Một Hơi đúng cue phóng 6 pháo.

Cần Edge
Né Nhồi Nóng H08_E10 · Cue Nạp Một Hơi H08_E32
Điều kiện
LEVEL = 14 — Lv ≥ 14; Né Nhồi Nóng hạng II + Cue Nạp Một Hơi hạng III (hướng Ổ Phản Ứng).
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
charge_mark.hot_reload

Chuông Pháo Thức Tỉnh

H08_EVO4Thức Tỉnh

Hoả mai thức tỉnh: phát đơn nón +20°, Nòng Loa r72; mỗi Phát Cặp ngân chuông r64, choáng S 0.5 s.

Cần Edge
—
Điều kiện
BOSS_KILLED Thợ Cả Đúc Chuông BS_B3 = BS_B3 — 2 Cộng Hưởng hero bậc II bất kỳ + đã hạ BS_B3 trong run.
Mở
Công thức EVO4 hiện ở ST_FORGE (mở khoá sức mạnh cuối của T… MR12
mechanic
passive.weapon_awaken
Mẫu câu (7)
IDCâu
TPL_H08_chain_pairPhát ổ B vừa thành phản ứng cặp cũng tính là phát ổ A của cặp kế; chuỗi đứt khi quá cửa sổ cặp hoặc khi bắn Phụt Mồi.
TPL_H08_brace_releaseKhi Chống Báng hết giờ hoặc bị thả, Dov bắn sát nòng 2 viên trên cùng thay cho cú dậm báng; ổ thiếu viên thì nửa sát thương, không phản ứng.
TPL_H08_last_shot_twinSau phát thứ chín của Phát Cuối Đội Đèn, Dov kề hai nòng vào mục tiêu và bắn thêm một Hai Nòng Kề không tốn viên, không cần ĐÁP trước.
TPL_H08_thunder_dumpLoa Sấm nuốt mọi viên còn trong 2 ổ theo thứ tự nạp: Đinh cộng sát thương, Muối choáng, Ma Trơi để lửa sàn trong nón; ổ rỗng thì Loa Sấm như gốc.
TPL_H08_reaction_corpseKhi quái chết bởi phản ứng cặp, xác bốc ma trơi và nổ lặp đúng phản ứng ấy một lần; xác nổ không kích tiếp xác khác.
TPL_H08_brace_volleyKhi nhả Tì Báng Nạp lúc Ổ Đầy, Dov bắn liền 3 cặp theo thứ tự nạp, mỗi cặp ra phản ứng; thiếu Ổ Đầy thì nhả như gốc.
TPL_H08_fuse_rollKhi Lăn Ngang lúc Ổ Đầy, Dov cắm ngòi pháo ở điểm xuất phát; ngòi cháy rồi nổ hố, tiêu hết viên và ra 3 phản ứng theo thứ tự cặp.

11Thông Thạo (mastery)

Thông Thạo Dov MR01–MR20Thông Thạo Dov MR01–MR20MR02MR05MR07MR10MR12MR15MR17MR20Loa Sấm · Mưa Muối · Nhồi Đôi · Lăn Lửa Ma · Pháo Đêm Ma Trơi · Hoả Mai Nòng LoaLoa Sấm · Mưa Muối · Nhồi…MR01 · 6 mởQuạt ĐinhQuạt ĐinhMR02 · 1 mởSấm Theo Cặp · Đèn Rơi Sau Lăn · Chống Báng Ăn Đòn · Tiếng Vọng Hai NòngSấm Theo Cặp · Đèn Rơi Sa…MR03 · 4 mởĐèn Ma Rải ĐườngĐèn Ma Rải ĐườngMR04 · 1 mởĐÁP {answers} tell vàng trong 1 run. · Đầy tài nguyên riêng {fills} lần trong 1 run.ĐÁP {answers} tell vàng t…MR05 · 2 mởXác Thắp Đèn Mới · Chuỗi Ổ Không Nghỉ · Lăn Bắn Đôi Nòng · Báng Thả Nòng KềXác Thắp Đèn Mới · Chuỗi …MR06 · 4 mởChống BángChống BángMR07 · 1 mởPhát Cuối Gọi Tên · Loa Sấm Xả Ổ · Đêm Bốc Ma Trơi · Chuông Không NghỉPhát Cuối Gọi Tên · Loa S…MR08 · 4 mởNạp Một HơiNạp Một HơiMR09 · 1 mởPháo Hoa Dẫn Hồn · Mảnh Chặn Nạp Ổ · Tì Báng Xả Loạt · Ngòi Nổ Lăn ĐêmPháo Hoa Dẫn Hồn · Mảnh C…MR10 · 4 mởTóc con khét mùi thuốc pháo. Rửa đi rồi ăn, con gái.Tóc con khét mùi thuốc ph…MR11 · 1 mởChuông Pháo Thức TỉnhChuông Pháo Thức TỉnhMR12 · 1 mởNòng pháo đen tới miệng. Bắn đủ một đội rồi đấy, con bé.Nòng pháo đen tới miệng. …MR15 · 1 mởHạ 1 boss Hồi mà không trúng đòn tím nào ({hits_allowed} tr… · Qua Hồi II chỉ dùng {skills} kỹ năng. · Hạ BS_FINAL ở Độ Tang ≥ {do_tang_min}.Hạ 1 boss Hồi mà không tr…MR16 · 3 mởTMB_H08TMB_H08MR18 · 1 mởNòng Loa NgàNòng Loa NgàMR20 · 1 mở
mastery.mastery_unlocks
MR014/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed…
Loa Sấm H08_SK01 · Mưa Muối H08_SK03 · Nhồi Đôi H08_SK05 · Lăn Lửa Ma H08_SK07 · Pháo Đêm Ma Trơi H08_UL1 · Hoả Mai Nòng Loa H08_AS1
MR02+1 kỹ năng (SK02).
Quạt Đinh H08_SK02
MR03+4 Edge hero: RARE còn lại của tag verb 1–4.
MR04+1 kỹ năng (SK04).
MR06+4 Edge hero: RARE còn lại của tag 5 + EPIC tag 1, 2, 3.
MR07+1 kỹ năng (SK06).
Chống Báng H08_SK06
MR08+4 Edge hero: EPIC tag 4, 5, 6 (đủ 36).
MR09+1 kỹ năng (SK08, đủ 8).
MR10Then Chốt E37–E40 vào pool.
MR111 beat thoại hub riêng hero với Bà Ulla.
MR12Công thức EVO4 hiện ở ST_FORGE (mở khoá sức mạnh cuối của T…
MR151 beat thoại hub riêng hero với Lão Grem.
MR18Bia mộ riêng của hero trong recap chết (TMB_Hxx).
TMB_H08
MR20Skin ngà SKN_Hxx_4 (LUT trong slot) + danh hiệu Ngà (TITLE_…
Nòng Loa Ngà SKN_H08_4

Thử thách Thông Thạo

Thử tháchĐiều kiệnThưởng
ĐÁP {answers} tell vàng trong 1 run. TT1answers 30, tell Y—
Đầy tài nguyên riêng {fills} lần trong 1 run. TT2full_events 10, event res_full—
Hạ 1 boss Hồi mà không trúng đòn tím nào ({hits_allowed} tr… TT3boss_act 1, purple_hits 0—
Qua Hồi II chỉ dùng {skills} kỹ năng. TT4act II, skills_max 1—
Hạ BS_FINAL ở Độ Tang ≥ {do_tang_min}. TT5boss BS_FINAL, do_tang_min 8—
Danh hiệu MR20
Pháo Hoa Dẫn Hồn
Mốc thoại MR11
Tóc con khét mùi thuốc pháo. Rửa đi rồi ăn, con gái. DLG_ULLA_H08_001
Mốc thoại MR15
Nòng pháo đen tới miệng. Bắn đủ một đội rồi đấy, con bé. DLG_GREM_H08_001
Bia mộ
TMB_H08

12VFX spec

Nhịp pha 41 VFX của DovNhịp pha 41 VFX của Dovkhởi (startup)hiệu lực (active)hồi (recovery)0 s0.511.522.5hot_load_cuehot_load_cue · active 0.03shot_load_cue · recovery 0.17s0.2sanswer_flakanswer_flak · active 0.03sanswer_flak · recovery 0.27s0.3sbrace_stancebrace_stance · startup 0.1sbrace_stance · active 0.1sbrace_stance · recovery 0.2s0.4sroll_dashroll_dash · active 0.03sroll_dash · recovery 0.3s0.33smuzzle_conemuzzle_cone · active 0.03smuzzle_cone · recovery 0.27s0.3smuzzle_flashmuzzle_flash · active 0.03smuzzle_flash · recovery 0.1s0.13sshell_saltshell_salt · active 0.03sshell_salt · recovery 0.3s0.33sshell_wispshell_wisp · active 0.03sshell_wisp · recovery 0.37s0.4swisp_floorwisp_floor · startup 0.2swisp_floor · active 0.05swisp_floor · recovery 0.3s0.55sgunsmokegunsmoke · active 0.03sgunsmoke · recovery 0.37s0.4snail_pierce_linenail_pierce_line · active 0.03snail_pierce_line · recovery 0.3s0.33ssalt_spike_stunsalt_spike_stun · active 0.03ssalt_spike_stun · recovery 0.37s0.4sfire_linefire_line · startup 0.2sfire_line · active 0.05sfire_line · recovery 0.3s0.55ssalt_shattersalt_shatter · active 0.03ssalt_shatter · recovery 0.3s0.33ssalt_stormsalt_storm · active 0.03ssalt_storm · recovery 0.37s0.4ssalt_wisp_burstsalt_wisp_burst · startup 0.05ssalt_wisp_burst · active 0.05ssalt_wisp_burst · recovery 0.45s0.55swisp_fireworkswisp_fireworks · startup 0.05swisp_fireworks · active 0.03swisp_fireworks · recovery 0.37s0.45sfrost_saltfrost_salt · active 0.03sfrost_salt · recovery 0.37s0.4swisp_seawisp_sea · startup 0.25swisp_sea · active 0.05swisp_sea · recovery 0.3s0.6sdash_shotdash_shot · active 0.03sdash_shot · recovery 0.27s0.3scounter_twincounter_twin · startup 0.07scounter_twin · active 0.07scounter_twin · recovery 0.43s0.57sSK01_thunder_hornSK01_thunder_horn · startup 0.2sSK01_thunder_horn · active 0.05sSK01_thunder_horn · recovery 0.75s1sSK02_nail_fanSK02_nail_fan · active 0.03sSK02_nail_fan · recovery 0.14s0.17sSK03_salt_rainSK03_salt_rain · startup 0.3sSK03_salt_rain · active 0.05sSK03_salt_rain · recovery 0.55s0.9sSK04_wisp_mineSK04_wisp_mine · startup 0.05sSK04_wisp_mine · active 0.03sSK04_wisp_mine · recovery 0.37s0.45sSK05_double_chargeSK05_double_charge · startup 0.23sSK05_double_charge · active 0.05sSK05_double_charge · recovery 0.35s0.63sSK06_brace_fortSK06_brace_fort · startup 2.5sSK06_brace_fort · active 0.07sSK06_brace_fort · recovery 0.23s2.8sSK08_rapid_loadSK08_rapid_load · startup 0.2sSK08_rapid_load · active 0.1sSK08_rapid_load · recovery 0.2s0.5sas3_ring_blastas3_ring_blast · startup 0.15sas3_ring_blast · active 0.07sas3_ring_blast · recovery 0.33s0.55sUL1_night_volleyUL1_night_volley · startup 0.3sUL1_night_volley · active 0.03sUL1_night_volley · recovery 0.47s0.8sUL1_corpse_wispUL1_corpse_wisp · startup 0.15sUL1_corpse_wisp · active 0.03sUL1_corpse_wisp · recovery 0.37s0.55sUL2_last_shotUL2_last_shot · startup 0.3sUL2_last_shot · active 0.03sUL2_last_shot · recovery 0.17s0.5sUL3_endless_bellUL3_endless_bell · startup 0.2sUL3_endless_bell · active 0.07sUL3_endless_bell · recovery 0.43s0.7sE37_chain_burstE37_chain_burst · startup 0.07sE37_chain_burst · active 0.03sE37_chain_burst · recovery 0.37s0.47sE38_answer_shrapnelE38_answer_shrapnel · active 0.03sE38_answer_shrapnel · recovery 0.23s0.27sE39_brace_volleyE39_brace_volley · startup 0.1sE39_brace_volley · active 0.03sE39_brace_volley · recovery 0.57s0.7sE40_fuse_detonateE40_fuse_detonate · startup 0.6sE40_fuse_detonate · active 0.07sE40_fuse_detonate · recovery 0.43s1.1sEVO1_salt_tempestEVO1_salt_tempest · startup 0.1sEVO1_salt_tempest · active 0.07sEVO1_salt_tempest · recovery 0.33s0.5sEVO2_lantern_fieldEVO2_lantern_field · startup 0.25sEVO2_lantern_field · active 0.08sEVO2_lantern_field · recovery 0.33s0.67sEVO3_hot_cascadeEVO3_hot_cascade · startup 0.4sEVO3_hot_cascade · active 0.03sEVO3_hot_cascade · recovery 0.37s0.8sEVO4_bell_muzzleEVO4_bell_muzzle · startup 0.08sEVO4_bell_muzzle · active 0.07sEVO4_bell_muzzle · recovery 0.33s0.48s
phases antic / impact / dissipate (giây)
anticimpactdissipate

SIGNATURE · 14

Cue nạp ở chân Dov (world_cue HUD): hàng 0 qua mốc nạp (H08_HEAVY_LOA…

VFX_H08_hot_load_cueSIGNATURELớp: body_backCỡ: SLOD: never

Cue nạp đạn ở chân: vòng nhỏ lục với ký hiệu viên, chuyển trắng đúng 0.1 s cửa Nạp Nóng; đọc được giữa bầy mà không cần nhìn HUD.

#476b15#578514#aad44d#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_hot_load_cue6 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–56 khung · 30 fps · 0.2 s
Chi tiết spec
Kích hoạt
Cue nạp ở chân Dov (world_cue HUD): hàng 0 qua mốc nạp (H08_HEAVY_LOAD_* tick 15/30/45); hàng 1 cửa Nạp Nóng 6 tick (tick 24–29 / 39–44 / 54–59, = 0.1 s) và cue H08_SK08_LOAD tick 18 (0.1 s; E32 +0.02/0.035/0.05 s); hàng 2 vào PAIR_READY; hàng 3 vào FULL_CHAMBERS; hàng 4 H08_HEAVY_SWAP Đảo Ổ. t = 0 = tick sự kiện. H08_E02, H08_E06, H08_E10, H08_E35 phát hàng 1.
Canvas
32×20 gốc 16/10
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.2
Easing
curve linear, freeze_s 0
Hạt
—
Hitbox
shape none, wave none
Nguồn
new src/fx/heroes/dov-hot-load-cue.js (mượn bladewake/levelup.js vòng chân)
Review
check_mjs pending (node tools/check.mjs heroes/dov-hot-load-cue), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
0Hàng 0: vòng chân r14 (elip 28×14) loé 1 vòng #aad44d, 1 chấm/viên theo loại: Đinh ▪ 2×2, Muối ● 2×2, Ma Trơi ▲ 3×2 ở phía trước chân.
0Hàng 1 (cửa Nạp Nóng): vòng chân đổi lõi #fff6f0 + viền #e5ff9e dày 2 px giữ đúng 3 frame (0.1 s) rồi tắt cứng — đúng cửa sổ, không trễ.
0Hàng 2 PAIR_READY: 2 chấm ổ A/B hai bên chân nối bằng vạch 1 px #7bb21b 4 frame. Hàng 3 FULL_CHAMBERS: 6 chấm quanh vòng loé lần lượt 6 frame. Hàng 4 Đảo Ổ: 2 chấm đổi chỗ theo cung 4 frame.
0.1Hàng 1 tắt; hàng khác nguội về #578514.
0.2Rỗng.

Hàng 0: H08_ANSWER Nổ Chặn — t = 0 = frame ĐÁP thành công (answer hit…

VFX_H08_answer_flakSIGNATURELớp: overheadCỡ: MLOD: L3

Nổ Chặn: một phát nòng loa thổi bật đòn đánh/đạn ngay sát người, hiệu ứng viên rơi vào nón 90° r48.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_answer_flak9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Hitbox VFX_H08_answer_flakHitbox VFX_H08_answer_flak16 px32 px48 pxARChurtbox r 7shape ARC r 48 arc 90sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_ANSWER Nổ Chặn — t = 0 = frame ĐÁP thành công (answer hit_frame 0, cửa sổ 9 tick), nón 90° r48 về mối đe doạ; đạn Y bị thổi tan tại điểm gặp. Hàng 1–3: H08_ANSWER_SHELL hiệu ứng viên (Đinh / Muối / Ma Trơi, answer_hit hit_frame 1). Hàng 4: ổ rỗng (chỉ trung hoà). H08_E13 (+15/26/38°, +8/14/20 px), H08_E16, H08_E38 dùng chung.
Canvas
80×64 gốc 16/40
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0.08
Hạt
kind SPARK, count 4, speed 160, life_s 0.2, hex #e5ff9e, gravity 950, shadow có/kind SMOKE, count 3, speed 40, life_s 0.3, hex #476b15, gravity −20, shadow không
Hitbox
shape sector r48 a90, match Cung đặc phủ 100% elip r48 90° (48×24, mép ±45° tại (34, ±17)), mép vượt ≤ 4 px. E13 hạng III: r68 128° (--opts). Đạn huỷ tại mép r48., wave none
Nguồn
new src/fx/heroes/dov-answer-flak.js (mượn impacts/shield-block.js chớp + _reaver.js arcSparks)
Review
check_mjs pending (node tools/check.mjs heroes/dov-answer-flak), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r48 a90' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame trắng #ffffff 1 frame: quạt chớp 90° r48 (elip 48×24), VFX_SHARED_answer_flash chồng ở thân.
0.033Quạt khói-lửa đặc lõi #fff6f0 viền #aad44d dày 6 px chạy theo vòng cung r40–48; đạn bị bắt tại mép tan thành 4 SPARK.
0.066Hàng 1 Đinh: 6 vệt ngắn r48; hàng 2 Muối: 14 hạt; hàng 3 Ma Trơi: lưỡi lửa sập thành wisp_floor (--opts radius 48 arc 90); hàng 4: chỉ khói 3 cuộn #476b15.
0.2Vòng cung tan về ramp #578514, khói cuộn trôi lên 8 px.
0.3Rỗng.

Phát Đinh: H08_COMBO_A_DINH / H08_COMBO_B_DINH hit (t = 0 = frame nổ,…

VFX_H08_muzzle_coneSIGNATURELớp: overheadCỡ: MLOD: L2

Nón mạt đinh của hoả mai nòng loa: 14 vệt thẳng trắng-lục xoè từ miệng loa, sàn sáng đúng hình rẻ quạt trúng. Dạng Rèn: AS2 Nòng Chụm --opts {arc:50, radius:150} hue −3; AS3 Loa Rộng --opts {arc:110, radius:80} hue +3; EVO4 arc +20.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_muzzle_cone9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Hitbox VFX_H08_muzzle_coneHitbox VFX_H08_muzzle_cone32 px64 px96 px128 pxARChurtbox r 7shape ARC r 110 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Phát Đinh: H08_COMBO_A_DINH / H08_COMBO_B_DINH hit (t = 0 = frame nổ, attack1/attack2 hit_frame 3, startup 6 tick ép vào thân) và H08_COMBO_A_PAIR viên B = Đinh (attack3 hit_frame 5, startup 9 tick). Hàng 1: H08_E04 Dội Nòng Kết (nón 90° r64 khi Phát Cặp trúng). EVO4: --opts arc +20.
Canvas
140×92 gốc 18/56
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind STREAK, count 14, speed 900, life_s 0.12, hex #f5ffd8, gravity 0, shadow không/kind SPARK, count 6, speed 120, life_s 0.2, hex #aad44d, gravity 950, shadow có
Hitbox
shape sector r110 a70, match Nón sàn shadeFloor vẽ đúng elip r110 70° (110×55 màn), phủ 100% hitbox; đầu vệt dừng ở r112 (vượt 2 px ≤ 6 ✓); gốc nón = chân sau bước 6 px (A) / 8 px (Phát Cặp). Hàng 1 E04: hình r66 92° vs sector r64 a90. Đo trên --dirs 8., wave reach
Nguồn
new src/fx/heroes/dov-muzzle-cone.js (mượn projectiles/muzzle-shotgun.js nón + _reaver.js arcSparks; floor shadeFloor sector)
Review
check_mjs pending (node tools/check.mjs heroes/dov-muzzle-cone), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r110 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả (1 frame): 14 vệt mạt đinh bật từ miệng loa (socket muzzle x +16, h 18), gốc trắng #fff6f0, đuôi #aad44d; sàn: rẻ quạt shadeFloor 70° phủ đủ elip r110 (110×55 màn) α 0.35 #578514, lõi #e5ff9e trong r24.
0.033Vệt dài 10–18 px bay 900 px/s, đầu vệt ở r30; nón sàn sáng dần từ gốc ra mép (quét reach).
0.1Đầu vệt tới r90; 1/3 vệt đã tắt; mép sáng nón sàn ở r90 #aad44d 1 px, không viền 2 px (không giống tell P).
0.133Đầu vệt chạm r110: 6 SPARK nảy ở mép cung (P(φ) ±35°), vệt cuối cùng tắt; nón sàn còn α 0.15 #476b15.
0.2Tia lửa rơi chạm sàn nảy 1 lần; nón sàn tan dither Bayer 4×4.
0.3Rỗng.

Phát Muối: H08_COMBO_A_MUOI / H08_COMBO_B_MUOI hit (hit_frame 3, t = …

VFX_H08_shell_saltSIGNATURELớp: overheadCỡ: MLOD: L2

Viên Muối: chùm hạt muối trắng ngà bung nón 70° r90, đọng thành vệt muối mờ ở mép; choáng hiện bằng glyph chung.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_shell_salt10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Hitbox VFX_H08_shell_saltHitbox VFX_H08_shell_salt24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Phát Muối: H08_COMBO_A_MUOI / H08_COMBO_B_MUOI hit (hit_frame 3, t = 0 = nổ), H08_COMBO_A_PAIR khi viên B = Muối; hàng 1: H08_E30 Loa Sấm Xả Ổ (mỗi viên Muối xả theo nón Loa Sấm).
Canvas
124×80 gốc 18/50
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outQuart, freeze_s 0
Hạt
kind FLAKE, count 26, speed 520, life_s 0.3, hex #fff6f0, gravity 950, shadow có/kind SHARD, count 4, speed 160, life_s 0.33, hex #f5ffd8, gravity 950, shadow có
Hitbox
shape sector r90 a70, match Nón sàn vẽ đúng r90 70° (elip 90×45) phủ 100%; hạt xa nhất r94 (vượt 4 px ≤ 6 ✓). E30: hình r142 102° vs sector r140 a100., wave reach
Nguồn
new src/fx/heroes/dov-shell-salt.js (mượn ice/ice-shatter.js hạt + projectiles/muzzle-shotgun.js nón)
Review
check_mjs pending (node tools/check.mjs heroes/dov-shell-salt), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: chùm hạt muối tròn 2×2 trắng ngà #fff6f0 bung từ miệng loa, chớp #ffffff 1 frame ở gốc; sàn rẻ quạt 70° r90 (90×45 màn) shadeFloor #aad44d α 0.3.
0.03326 hạt FLAKE toả trong ±35°, hạt trước to 3×2 #f5ffd8, hạt sau 1×1 #e5ff9e; tốc 520 px/s, h 18 → 4.
0.133Hạt chạm r90 (0.17 s ở tốc 520 → hạt nhanh nhất đi 600): mép cung lấm tấm, hạt rơi chạm sàn đọng 2 khung.
0.2Hạt đọng sàn thành vệt muối 1 px #e5ff9e dọc mép r70–90; nón sàn α 0.12.
0.333Rỗng (vệt đọng tắt dither).

Phát Ma Trơi: H08_COMBO_A_MATROI / H08_COMBO_B_MATROI hit (t = 0 = nổ…

VFX_H08_shell_wispSIGNATURELớp: overheadCỡ: MLOD: L2

Viên Ma Trơi: màn lửa ma lục đặc lõi trắng nóng liếm nón 70° r90 rồi sập xuống thành lửa sàn.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_shell_wisp12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_shell_wispHitbox VFX_H08_shell_wisp24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Phát Ma Trơi: H08_COMBO_A_MATROI / H08_COMBO_B_MATROI hit (t = 0 = nổ), H08_COMBO_A_PAIR khi viên B = Ma Trơi; hàng 1: H08_E30 (nón Loa Sấm). Sinh VFX_H08_wisp_floor tại t = 0.2.
Canvas
124×84 gốc 18/54
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind FIRE, count 18, speed 300, life_s 0.3, hex #7bb21b, gravity −60, shadow không/kind EMBER, count 6, speed 40, life_s 0.4, hex #e5ff9e, gravity −30, shadow không
Hitbox
shape sector r90 a70, match Màn lửa phủ 100% elip r90 70° tại t 0.1; đỉnh lưỡi chạm r92 (vượt 2 px ✓). E30: hình r142 102° vs sector r140 a100., wave reach
Nguồn
new src/fx/heroes/dov-shell-wisp.js (mượn fire/flamethrower.js lưỡi lửa + fire/spirit-flame.js ramp lục)
Review
check_mjs pending (node tools/check.mjs heroes/dov-shell-wisp), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: lưỡi lửa ma đặc lõi #fff6f0 phụt khỏi miệng loa dài 20 px, chớp #ffffff 1 frame.
0.033Màn lửa xoè nón 70°, 5 lưỡi lửa uốn sóng, thân #7bb21b, mép trước #e5ff9e, đáy sát sàn #578514; dải sáng sàn rẻ quạt r90 α 0.4.
0.1Lưỡi lửa liếm tới r90 (90×45 màn), đỉnh lưỡi cao 14 px, FIRE particles bay lên 40 px/s.
0.2Lưỡi lửa sập xuống sàn, bàn giao cho wisp_floor (cùng hình nón); 6 EMBER lục bốc lên.
0.4Rỗng (EMBER cuối tắt).

H08_RX_SALT_WISP Nổ Muối (Muối → Ma Trơi): t = 0 = frame nổ tại điểm …

VFX_H08_salt_wisp_burstSIGNATURELớp: overheadCỡ: LLOD: L3

Nổ Muối: muối gặp lửa ma bùng thành vòm lửa lục lõi trắng r64, mảnh muối bắn tung — đòn mạnh nhất của vòng combo.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_salt_wisp_burst15 khung @ 30 fpsantic · khung 0–1impact · khung 2–2dissipate · khung 3–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H08_salt_wisp_burstHitbox VFX_H08_salt_wisp_burst16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_RX_SALT_WISP Nổ Muối (Muối → Ma Trơi): t = 0 = frame nổ tại điểm chạm phát B (mục tiêu gần nhất trong nón; không ai → cách miệng loa 56 px), hitstop 0.08, trauma 0.45. Cũng: H08_E06 phản ứng nối tiếp (×0.6), H08_E12 phản ứng cặp tại nón Phát Lăn (×0.8).
Canvas
160×112 gốc 80/76
Pha (s)
antic −0.05/0 · impact 0/0.05 · dissipate 0.05/0.5
Easing
curve outExpo, freeze_s 0.08
Hạt
kind SHARD, count 24, speed 260, life_s 0.4, hex #fff6f0, gravity 950, shadow có/kind FIRE, count 14, speed 220, life_s 0.35, hex #aad44d, gravity −80, shadow không/kind EMBER, count 10, speed 60, life_s 0.5, hex #e5ff9e, gravity −30, shadow không
Hitbox
shape circle r64, match Vòm + đĩa sàn đạt r64 tại 0.33 s, phủ 100% elip 128×64; hạt vượt ≤ 8 px (L ≤ 10 ✓). Sóng lan theo reach (packer đo nửa ngang ≥ 50% hàng pivot)., wave reach
Nguồn
new src/fx/heroes/dov-salt-wisp-burst.js (mượn _lib.js slam + ice/ice-shatter.js SHARD + fire/spirit-flame.js ramp)
Review
check_mjs pending (node tools/check.mjs heroes/dov-salt-wisp-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r64' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.05Tụ: hạt muối và ngọn lửa ma xoắn vào điểm chạm r12 (2 frame).
0Frame trắng #ffffff: đĩa nổ r20 + cột sáng cao 30 px.
0.033Vòm lửa đặc lõi #fff6f0 → #e5ff9e nở, đĩa sàn đặc #7bb21b lan theo reach r(t) = 64·outExpo(t/0.33).
0.1Vòm r44, 24 SHARD muối + 14 FIRE bắn spray + spawn3 cả 3 chiều; vành sàn sáng #aad44d.
0.33Vòm chạm r64 (elip 128×64); quái đẩy 40 px; sàn để vết xém #192906 decal 2 s.
0.5Rỗng (vết xém riêng).

H08_COUNTER Hai Nòng Kề: input → lao 24 px trong 4 tick (bất tử) → t …

VFX_H08_counter_twinSIGNATURELớp: overheadCỡ: MLOD: L3

Hai Nòng Kề: Dov dí miệng loa vào kẻ hở thế và nổ liền 2 nòng — quạt trắng-lục r56 với hai vòng xung kích nối nhau.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_counter_twin15 khung @ 30 fpsantic · khung 0–2impact · khung 3–4dissipate · khung 5–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H08_counter_twinHitbox VFX_H08_counter_twin16 px32 px48 px64 pxARChurtbox r 7shape ARC r 56 arc 120sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_COUNTER Hai Nòng Kề: input → lao 24 px trong 4 tick (bất tử) → t = 0 = nổ (counter hit_frame 2), nón 120° r56 coef 18, hitstop 0.12, trauma 0.45, kèm VFX_SHARED_screen_flash_white; phản ứng cặp sinh tại mục tiêu t = 0.033. H08_E19 (lao +6/10/14), H08_E23 (nổ lại sau 0.3 s), H08_E24 dùng chung.
Canvas
112×96 gốc 20/60
Pha (s)
antic −0.067/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0.12
Hạt
kind SPARK, count 20, speed 220, life_s 0.3, hex #e5ff9e, gravity 950, shadow có/kind SMOKE, count 6, speed 40, life_s 0.4, hex #476b15, gravity −20, shadow không
Hitbox
shape sector r56 a120, match Quạt đặc phủ 100% elip r56 120°, mép vượt ≤ 4 px; gốc = chân sau lao 24 px. E19 hạng III lao 38 px (gốc dời, hình giữ)., wave none
Nguồn
new src/fx/heroes/dov-counter-twin.js (mượn impacts/shield-block.js + explosions/small-explosion.js vành, chồng 2 lần)
Review
check_mjs pending (node tools/check.mjs heroes/dov-counter-twin), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r56 a120' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.067Lao: vệt tàn ảnh 24 px, miệng loa áp sát, 2 ổ loé #fff6f0.
0Frame trắng #ffffff 2 frame (khựng 0.12 s): 2 chùm nổ chồng lệch 6°, quạt 120° r56 (elip 56×28, mép ±60° tại (28, ±24)) đặc lõi #fff6f0 → #e5ff9e.
0.067Quạt nở hết, 2 vòng xung kích elip r20 → r56 lệch nhau 2 frame (2 nòng), 20 SPARK spray + spawn3.
0.2Khói đôi #476b15 cuộn sau quạt, tia lửa nảy sàn.
0.5Rỗng.

H08_SK01_BLAST Loa Sấm: sk01 hit_frame 6 (startup 12 tick), t = 0 = n…

VFX_H08_SK01_thunder_hornSIGNATURELớp: overheadCỡ: LLOD: L3

Loa Sấm: dồn thuốc vào miệng loa nổ 3 vòng sóng sấm đặc trong nón 100° r140, hất bầy văng.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_SK01_thunder_horn24 khung @ 30 fpsantic · khung 0–5impact · khung 6–7dissipate · khung 8–2324 khung · 30 fps · 0.8 s
Hitbox VFX_H08_SK01_thunder_hornHitbox VFX_H08_SK01_thunder_horn40 px80 px120 px160 pxARChurtbox r 7shape ARC r 140 arc 100sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK01_BLAST Loa Sấm: sk01 hit_frame 6 (startup 12 tick), t = 0 = nổ; nón 100° r140, đẩy 40 px, trauma 0.45. Khói đuôi = VFX_H08_gunsmoke hàng 1. H08_E30 xả viên theo nón.
Canvas
176×148 gốc 18/84
Pha (s)
antic −0.2/0 · impact 0/0.05 · dissipate 0.05/0.8
Easing
curve outExpo, freeze_s 0.06
Hạt
kind SPARK, count 18, speed 260, life_s 0.35, hex #e5ff9e, gravity 950, shadow có/kind DUST, count 10, speed 120, life_s 0.4, hex #2b470a, gravity 0, shadow có/kind MOTE, count 6, speed 60, life_s 0.2, hex #aad44d, gravity 0, shadow không
Hitbox
shape sector r140 a100, match Sóng đầu tới r142 tại 0.2 s (vượt 2 px ✓), nón sàn phủ 100% elip r140 100°; hạng II r150 → --opts radius 150 (bậc s gần nhất); hạng III r150 a120 cùng sheet --opts., wave reach
Nguồn
new src/fx/heroes/dov-sk01-thunder-horn.js (mượn bladewake/crescent-wave.js cung sóng + _lib.js slam bụi)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk01-thunder-horn), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r140 a100' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.2Tụ (thân dồn thuốc): miệng loa đỏ lửa lục #7bb21b → #e5ff9e, 6 MOTE hút vào.
0Frame trắng #ffffff 1 frame + lõi #fff6f0: luồng nổ hình chuông rời miệng loa.
0.0333 cung sóng sấm đặc dày 10/8/6 px nối nhau trong nón 100° (mép ±50° tại (90, ±54)), lõi #fff6f0 → #aad44d; sàn rẻ quạt #578514 α 0.4 quét reach.
0.2Sóng đầu chạm r140 (elip 280×140 phần nón); quái văng 40 px; 18 SPARK + 10 DUST spray + spawn3.
0.4Sóng nguội #578514, còn 2 cung mờ; khói đuôi bàn giao gunsmoke.
0.8Rỗng.

H08_SK05_SHOT Nhồi Đôi: sk05 startup 14 tick (0.233 s), active 3 tick…

VFX_H08_SK05_double_chargeSIGNATURELớp: overheadCỡ: MLOD: L2

Nhồi Đôi: hai viên đạn bay vào nòng, nén sáng rồi nổ một nón 60° trắng-lục sát nòng, khói giật lùi nặng như phát pháo tay.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_SK05_double_charge12 khung @ 30 fpsantic · khung 0–6impact · khung 7–8dissipate · khung 9–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_SK05_double_chargeHitbox VFX_H08_SK05_double_charge16 px32 px48 pxARChurtbox r 7shape ARC r 48 arc 60sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK05_SHOT Nhồi Đôi: sk05 startup 14 tick (0.233 s), active 3 tick; t = 0 = frame nổ nón 60° r48 (hitstop 0.08, trauma 0.5, đẩy 36). Hàng 0 phát thường; hàng 1 khi ≥ 1 trong 2 viên Nạp Nóng (H08_E33); hàng 2 vòng nòng báo cửa 2 s Nhồi Đôi miễn phí sau Phản (H08_E22). H08_E18 phát hàng 0 tại cuối Chống Báng thay dậm báng. Kèm VFX_SHARED_hit_heavy trên mỗi mục tiêu.
Canvas
72×60 gốc 14/36
Pha (s)
antic −0.233/0 · impact 0/0.05 · dissipate 0.05/0.4
Easing
curve outExpo, freeze_s 0.08
Hạt
kind SPARK, count 10, speed 260, life_s 0.15, hex #e5ff9e, gravity 0, shadow không/kind SHRAPNEL, count 6, speed 200, life_s 0.2, hex #aad44d, gravity 120, shadow có/kind SMOKE, count 4, speed 30, life_s 0.35, hex #2b470a, gravity −20, shadow không
Hitbox
shape sector r48 a60, match Cung nón đặc tại t = 0 trùng r48 ± 2 px trên cả 8 hướng (hướng lên/xuống: tầm dọc 24 px do elip 0.5), phủ ≥ 95%; hạt vượt ≤ 6 px. Glyph và khói không tính., wave reach
Nguồn
recolor projectiles/muzzle-shotgun --opts {arc:60, radius:48} (nón) + new src/fx/heroes/dov-sk05-double-charge.js (glyph 2 viên ép nòng, hàng 1–2)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk05-double-charge), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r48 a60' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.2332 glyph viên (theo ổ A rồi ổ B: Đinh ▪ 2×2, Muối ● 2×2, Ma Trơi ▲ 3×2) bật khỏi hông Dov, bay cung 10 px vào miệng loa trong 6 frame; miệng loa nhen đĩa r4 #7bb21b.
−0.1Nén nòng: đĩa miệng loa r6 #e5ff9e, 4 tia 6 px #aad44d hút ngược vào tâm (2 frame), thân nòng rung ±1 px.
0Frame trắng: nón 60° đặc #fff6f0 phủ trọn r48 (elip sàn 96×48 cắt quạt), viền cung 2 px #e5ff9e nằm đúng r48.
0.033Nón xoè lửa-khói: lõi #aad44d → mép #578514; 10 SPARK + 6 SHRAPNEL chạy dọc 2 cạnh nón; 2 glyph viên hiện tại điểm chạm gần nhất (báo phản ứng cặp ×2).
0.1Nón vỡ thành 3 lưỡi khói #2b470a, khói giật lùi 4 px về phía Dov; hàng 1: lõi trắng dày gấp đôi + vành #e5ff9e 1 px ngoài cung (r50).
0.4Rỗng. Hàng 2 (E22): vòng 2 px #aad44d quanh miệng loa nhấp loop 4 frame @12 suốt 2 s, tắt khi Nhồi Đôi được dùng.

H08_UL1 Pháo Đêm Ma Trơi (clip ul1 2.0 s, bất tử tick 0–120, world_sl…

VFX_H08_UL1_night_volleySIGNATURELớp: overheadCỡ: XLLOD: L3

Pháo Đêm Ma Trơi: Dov dựng nòng bắn sáu phát lên trời, sáu quả lửa ma lục rơi lần lượt quanh điểm ngắm, mỗi quả dựng một cột lửa và quét cả vùng r160.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_UL1_night_volley15 khung @ 30 fpsantic · khung 0–8impact · khung 9–9dissipate · khung 10–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H08_UL1_night_volleyHitbox VFX_H08_UL1_night_volley48 px96 px144 px192 pxCIRCLEhurtbox r 7shape CIRCLE r 160sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_UL1 Pháo Đêm Ma Trơi (clip ul1 2.0 s, bất tử tick 0–120, world_slow 0.4): hàng 1 phóng H08_UL1_LAUNCH tick 30–40 (6 vệt đạn lên trời từ miệng loa, mỗi 2 tick); hàng 0 rơi-nổ H08_UL1_SHELL tick 48–88: 6 quả, mỗi 8 tick, t = 0 = quả 1 chạm sàn (tick 48). Mỗi quả rơi tại 1 trong 6 điểm cố định quanh điểm ngắm (tâm, rồi 5 đỉnh ngũ giác r80 theo chiều kim đồng hồ từ hướng ngắm) và quét toàn vùng r160 (coef 6.0, rehit 8 tick, ≤ 6 lần). Kèm VFX_SHARED_screen_flash_ult tại tick 30.
Canvas
128×128 gốc 64/100
Pha (s)
antic −0.3/0 · impact 0/0.033 · dissipate 0.033/0.5
Easing
curve outExpo, freeze_s 0.1
Hạt
kind FIRE, count 24, speed 200, life_s 0.35, hex #aad44d, gravity −80, shadow không/kind EMBER, count 12, speed 60, life_s 0.5, hex #e5ff9e, gravity −30, shadow không/kind SMOKE, count 8, speed 30, life_s 0.5, hex #2b470a, gravity −20, shadow không
Hitbox
shape circle r160, match Fill sàn thủ tục đúng elip 320×160 (r160 thật, không scale sheet) ở frame chạm của mỗi quả; viền đích 2 px nằm trên r160 ± 0 px. Cột lửa sheet chỉ trang trí, không định nghĩa vùng., wave none
Nguồn
new src/fx/heroes/dov-ul1-night-volley.js (_lib.js slam + cột lửa ma; vành r160 = shader sàn runtime, không xuất)
Review
check_mjs pending (node tools/check.mjs heroes/dov-ul1-night-volley), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r160' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.3Hàng 1 (32×64 tại muzzle socket, 6 frame): 6 vệt đạn 1×12 px #e5ff9e lõi #fff6f0 vọt thẳng lên khỏi khung. Đồng thời vành sàn thủ tục r160 (elip 320×160) viền 2 px #7bb21b α 0.6 → 1.0 hiện quanh điểm ngắm làm dấu đích.
−0.1Quả 1 rơi: hạt lửa ma 6×8 #aad44d kéo đuôi 24 px #578514 rơi thẳng từ đỉnh khung xuống điểm chạm; bóng elip 8×4 #192906 α 0.5 lớn dần trên sàn.
0Chạm: frame trắng đĩa r24 #fff6f0 tại điểm rơi; shader sàn tô kín elip 320×160 bằng #aad44d α 0.35 đúng 1 frame (= nhịp sát thương r160) rồi tắt.
0.033Nổ cột: cột lửa ma 20×64 lõi #fff6f0 → #aad44d → mép #578514 vọt lên, nấm khói đỉnh; vành sóng 2 px #e5ff9e lan từ tâm điểm rơi.
0.133Quả kế tiếp chạm (mỗi 8 tick, lặp hàng 0 tại điểm kế); 24 FIRE + 12 EMBER + 8 SMOKE của quả trước còn bay; vết cháy sàn r24 #2b470a lưu 1 s.
0.5Cột tan thành khói #2b470a; quả 6 chạm ở t = 0.667 và tắt ở t = 1.167; vành đích tắt sau quả 6.

H08_UL2 Phát Cuối Đội Đèn (clip ul2 1.8 s, bất tử tick 0–108, world_s…

VFX_H08_UL2_last_shotSIGNATURELớp: overheadCỡ: MLOD: L3

Phát Cuối Đội Đèn: chín ngọn đèn treo trên đầu kẻ bị khoá tắt dần theo từng phát đạn, mỗi loại viên một kiểu nổ; ngọn cuối sáng lại thành cột trắng kết liễu.

#2b470a#578514#aad44d#e5ff9e#fff6f0#ffffff
Dải khung VFX_H08_UL2_last_shot6 khung @ 30 fpsantic · khung 0–56 khung · 30 fps · 0.2 s
Hitbox VFX_H08_UL2_last_shotHitbox VFX_H08_UL2_last_shot8 px16 px24 pxCIRCLEhurtbox r 7shape CIRCLE r 20sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_UL2 Phát Cuối Đội Đèn (clip ul2 1.8 s, bất tử tick 0–108, world_slow 0.3): khoá 1 mục tiêu M/L/XL gần nhất trong 140 px; hàng 0 dấu khoá từ tick 0; 9 phát cách 8 tick (tick 18–82) theo thứ tự cặp Đinh>Đinh … Ma Trơi>Ma Trơi, t = 0 = phát 1 chạm (tick 18); mỗi phát vùng r20 quanh điểm chạm coef 6.5, rồi phản ứng cặp tương ứng (VFX_H08_* phản ứng). Hàng 1/2/3 = chạm theo viên B (Đinh/Muối/Ma Trơi); hàng 4 kết liễu (HP ≤ 20%; H08_E24 25%, kết bằng VFX_H08_counter_twin). Tia đạn = đường thủ tục 1 px từ miệng loa đến mục tiêu, 2 frame.
Canvas
64×56 gốc 32/40
Pha (s)
antic −0.3/0 · impact 0/0.033 · dissipate 0.033/0.2
Easing
curve outQuart, freeze_s 0.1
Hạt
kind SPARK, count 8, speed 220, life_s 0.12, hex #e5ff9e, gravity 0, shadow không/kind SHARD, count 6, speed 140, life_s 0.2, hex #f5ffd8, gravity 120, shadow có
Hitbox
shape circle r20, match Hàng 1–3 tại 0.033 s phủ 100% elip 40×20 quanh điểm chạm; gai/mảnh vượt ≤ 6 px. Vòng ngắm hàng 0 không phải hitbox., wave reach
Nguồn
new src/fx/heroes/dov-ul2-last-shot.js (vòng ngắm + 9 đèn; hàng chạm mượn ice/ice-shatter + projectiles/bullet-tracer recolor)
Review
check_mjs pending (node tools/check.mjs heroes/dov-ul2-last-shot), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r20' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.3Hàng 0 khoá (loop 4 frame @12): vòng ngắm r20 (elip 40×20) viền 1 px #aad44d quanh chân mục tiêu, 4 ngoặc góc 4×4 #e5ff9e co vào 2 px/frame; 9 chấm đèn 2×2 #e5ff9e xếp cung trên đầu mục tiêu.
0Phát 1: tia thủ tục 1 px #fff6f0 nối miệng loa → mục tiêu 2 frame; chạm: frame trắng đĩa r8 #ffffff; 1 chấm đèn tắt (còn 8).
0.033Chạm theo viên B: hàng 1 Đinh = sao 6 gai 20 px #e5ff9e; hàng 2 Muối = tinh thể vỡ trắng #f5ffd8 6 mảnh; hàng 3 Ma Trơi = bông lửa r20 #aad44d; tất cả viền đúng elip 40×20.
0.133Phát kế (mỗi 8 tick) lặp hàng tương ứng; vòng ngắm co 1 px mỗi phát (20 → 12 px viền trong, hitbox giữ r20).
0.2Tàn hàng chạm; hàng 4 kết liễu (12 frame @30, 0.4 s): cột sáng 8×48 #fff6f0 + vành chuông 2 px #e5ff9e lan r20 → r40, 9 chấm đèn sáng lại cùng lúc rồi tắt.

H08_UL3 Nòng Loa Vô Tận: hàng 0 H08_UL3_ENTER startup 12 tick, active…

VFX_H08_UL3_endless_bellSIGNATURELớp: overheadCỡ: LLOD: L3

Nòng Loa Vô Tận: miệng loa ngân một tiếng chuông lửa r64 hất bầy ra, rồi suốt chín giây sáu viên đạn lõi trắng quay quanh nòng đang bốc hơi nóng.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_UL3_endless_bell15 khung @ 30 fpsantic · khung 0–5impact · khung 6–8dissipate · khung 9–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H08_UL3_endless_bellHitbox VFX_H08_UL3_endless_bell16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_UL3 Nòng Loa Vô Tận: hàng 0 H08_UL3_ENTER startup 12 tick, active 2, bất tử tick 0–30; t = 0 = nổ miệng loa r64 coef 3.0, đẩy 40, hitstop 0.1, trauma 0.45 (kèm VFX_SHARED_screen_flash_ult). Hàng 1 lớp phủ dạng (transform vfx_overlay) loop suốt 9 s (H08_E36 +1 s = 10 s). Hàng 2 H08_E36 tự Đảo Ổ sau mỗi phản ứng cặp.
Canvas
144×104 gốc 72/66
Pha (s)
antic −0.2/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0.1
Hạt
kind FIRE, count 20, speed 180, life_s 0.3, hex #aad44d, gravity −60, shadow không/kind EMBER, count 2, speed 30, life_s 0.6, hex #e5ff9e, gravity −30, shadow không/kind SMOKE, count 6, speed 30, life_s 0.5, hex #2b470a, gravity −20, shadow không
Hitbox
shape circle r64, match Đĩa trắng t = 0 phủ 100% elip 128×64; vành ngoài t = 0.067 tại r64 ± 2 px; lửa vượt ≤ 10 px (L). Hàng 1–2 không hitbox., wave reach
Nguồn
new src/fx/heroes/dov-ul3-endless-bell.js (_lib.js slam + ring ngân; hàng 1 mượn fire/spirit-flame recolor cho hơi nóng)
Review
check_mjs pending (node tools/check.mjs heroes/dov-ul3-endless-bell), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r64' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.2Miệng loa bừng: đĩa r10 #e5ff9e, 6 glyph viên (▪ ● ▲ ×2) hiện thành vòng r14 quanh miệng loa và quay 1/6 vòng mỗi 2 frame.
0Frame trắng: đĩa elip 128×64 #fff6f0 tâm miệng loa, viền 2 px #e5ff9e đúng r64.
0.067Sóng chuông: vành 3 px #aad44d tại r64 + vành 1 px #e5ff9e ở r48 (2 lớp ngân), 20 FIRE toả theo vành; 6 glyph đổi lõi trắng (mọi viên Nạp Nóng).
0.25Vành vỡ thành khói #2b470a; glyph co về vòng r10 quanh miệng loa.
0.5Chuyển hàng 1 (loop 12 frame @12 = 1 s): 3 sợi hơi nóng #aad44d bốc 16 px khỏi miệng loa, méo không khí 1 px, 6 glyph lõi trắng quay vòng r10; 2 EMBER/s. Hàng 2 (4 frame @30): 2 glyph đối diện đổi chỗ theo cung, loé #fff6f0. Hết dạng: phụt khói 6 SMOKE rồi tắt.

H08_E37 Pháo Hoa Dẫn Hồn (Then Chốt): quái chết vì phản ứng cặp → xác…

VFX_H08_E37_chain_burstSIGNATURELớp: overheadCỡ: MLOD: L2

Pháo Hoa Dẫn Hồn: kẻ chết vì phản ứng cặp bật ra hai viên đạn đã giết nó rồi nổ thành chùm pháo hoa lục r40, lặp lại phản ứng.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_E37_chain_burst12 khung @ 30 fpsantic · khung 0–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_E37_chain_burstHitbox VFX_H08_E37_chain_burst8 px16 px24 px32 px40 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_E37 Pháo Hoa Dẫn Hồn (Then Chốt): quái chết vì phản ứng cặp → xác nổ r40, lặp phản ứng ×0.75 tại tâm xác (VFX phản ứng tương ứng phát kèm, α 0.75); t = 0 = frame chết. Hàng 1: 1 cặp hạ ≥ 4 quái S → chỉ nối từ 4 điểm chết về chân Dov, viên kế tự Nạp Nóng (kèm VFX_H08_hot_load_cue hàng 1). Đi cùng VFX_H08_wisp_fireworks. VFX: ≤ 8 nổ mới mỗi frame, dư chỉ vẽ đĩa sàn.
Canvas
96×72 gốc 48/46
Pha (s)
antic −0.067/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 8, speed 240, life_s 0.17, hex #e5ff9e, gravity 60, shadow không/kind EMBER, count 6, speed 40, life_s 0.35, hex #aad44d, gravity −30, shadow không
Hitbox
shape circle r40, match Đĩa tại 0.067 s phủ 100% elip 80×40; đầu 8 tia dừng đúng r40 ± 2 px; hạt vượt ≤ 4 px., wave reach
Nguồn
new src/fx/heroes/dov-e37-chain-burst.js (_lib.js slam + tia mượn explosions/firework-burst recolor)
Review
check_mjs pending (node tools/check.mjs heroes/dov-e37-chain-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r40' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.067Xác co rút 2 frame, từ ngực bật 2 glyph viên của cặp vừa giết (vd ▪ + ▲) xếp cạnh nhau cao 14 px, lõi #e5ff9e.
0Frame trắng: 2 glyph vỡ thành đĩa r12 #fff6f0; đĩa lửa-pháo hoa elip 80×40 lõi #aad44d nở ra.
0.067Đĩa đạt r40, viền 2 px #e5ff9e; 8 tia pháo hoa 1×6 px toả đều 8 hướng tới đúng mép r40, 6 EMBER bay lên.
0.2Tia rơi thành chấm #578514 lả xuống sàn; hàng 1 (nếu ≥ 4 giết): 4 chỉ 1 px #aad44d nối điểm chết → chân Dov, chạy hết trong 6 frame rồi tắt.
0.4Rỗng.

H08_EVO4 Chuông Pháo Thức Tỉnh (thức tỉnh): hàng 0 mỗi Phát Cặp (H08_…

VFX_H08_EVO4_bell_muzzleSIGNATURELớp: overheadCỡ: LLOD: L2

Chuông Pháo Thức Tỉnh: hoả mai thức tỉnh mang miệng loa hình chuông; mỗi Phát Cặp ngân hai vành sóng r64 làm bầy nhỏ choáng váng.

#2b470a#578514#aad44d#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_EVO4_bell_muzzle12 khung @ 30 fpsantic · khung 0–2impact · khung 3–4dissipate · khung 5–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_EVO4_bell_muzzleHitbox VFX_H08_EVO4_bell_muzzle16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_EVO4 Chuông Pháo Thức Tỉnh (thức tỉnh): hàng 0 mỗi Phát Cặp (H08_COMBO_A_PAIR hit, attack3 hit_frame 5) ngân chuông r64 quanh miệng loa, choáng S 0.5 s (STS_STUN); t = 0 = frame phát cặp. Hàng 1 lớp phủ vĩnh viễn: miệng loa hình chuông + vạch vùng Nòng Loa r72 nón 90°. Phát đơn nón +20° = VFX_H08_muzzle_cone --opts arc 90.
Canvas
144×96 gốc 72/60
Pha (s)
antic −0.083/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind NOTE, count 8, speed 60, life_s 0.3, hex #f5ffd8, gravity −40, shadow không
Hitbox
shape circle r64, match Vành ngoài t = 0.067 tại r64 ± 2 px; vành trắng t = 0 phủ ≥ 90% elip 128×64 khi tô đầy mặt trong α 0.3. Cung chấm hàng 1 trùng vùng Nòng Loa r72 a90 ± 2 px (không gây sát thương riêng)., wave reach
Nguồn
new src/fx/heroes/dov-evo4-bell-muzzle.js (2 ring ngân _lib.js + bell-flare; phát đơn dùng VFX_H08_muzzle_cone --opts arc 90)
Review
check_mjs pending (node tools/check.mjs heroes/dov-evo4-bell-muzzle), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r64' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.083Miệng loa chuông 10×8 loé #f5ffd8, rung ±1 px ngang 2 frame.
0Frame trắng: vành elip 128×64 #fff6f0 dày 3 px bật ra (sóng ngân 1).
0.067Vành đạt r64 viền 2 px #e5ff9e; vành thứ 2 1 px #aad44d theo sau ở r44; 8 nốt ngân 3×3 #f5ffd8 văng dọc vành; mục tiêu bị choáng nhận sao xoay STS_STUN chung.
0.2Hai vành mờ #578514 rồi tắt; nốt ngân bay lên 8 px.
0.4Rỗng. Hàng 1 (8 frame @12 loop, suốt run): loa chuông #aad44d lõi #e5ff9e ở miệng nòng, sàn trước Dov vạch chấm 1 px #578514 α 0.4 cung 90° r72 (vùng Nòng Loa ×1.3).

TEMPLATE · 25

H08_HOLD Tì Báng Nạp: hold_in (8 frame) → hold_loop (24 frame loop, t…

VFX_H08_brace_stanceTEMPLATELớp: body_backCỡ: MLOD: L1

Tì Báng Nạp: Dov quỳ, báng cắm đất; vạch sáng cung 120° trước mặt báo siêu giáp, ổ đạn loé mỗi nhịp nạp.

#2b470a#578514#aad44d#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_brace_stance8 khung @ 12 fpsantic · khung 0–1impact · khung 2–2dissipate · khung 3–78 khung · 12 fps · 0.667 s · lặp
Chi tiết spec
Kích hoạt
H08_HOLD Tì Báng Nạp: hold_in (8 frame) → hold_loop (24 frame loop, tối đa 6 s) → hold_out (6 frame); t = 0 = báng chạm đất. Mỗi 0.4 s nạp 1 viên (nhịp sáng). Cũng nền cho H08_SK06_BRACE, H08_E15, H08_E18, H08_E39.
Canvas
72×48 gốc 36/30
Pha (s)
antic −0.1/0 · impact 0/0.1 · dissipate 6/6.2
Easing
curve linear, freeze_s 0
Hạt
kind DUST, count 4, speed 30, life_s 0.3, hex #2b470a, gravity 0, shadow có/kind SPARK, count 3, speed 40, life_s 0.15, hex #e5ff9e, gravity 300, shadow không
Hitbox
shape none, wave none
Nguồn
recolor impacts/heavy-landing --opts {palette:PAL_HERO_H08} (khung chạm đất) + new src/fx/heroes/dov-brace-stance.js (vạch cung loop)
Review
check_mjs pending (node tools/check.mjs heroes/dov-brace-stance), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
−0.1hold_in: bụi DUST nhẹ 4 hạt khi quỳ.
0Báng chạm đất: vòng bụi sàn rx 18 ry 9 #2b470a α 0.5 + 1 khung lõm sáng #e5ff9e tại chân.
0.1Loop @12: cung sàn mặt trước 120° r24 (elip 48×24) dạng 5 vạch đặc 2×4 px #aad44d chạy vòng chậm (siêu giáp — không phải vùng sát thương, không fill).
0.4Mỗi nhịp nạp 0.4 s: ổ đạn trên đai loé #fff6f0 1 frame + 3 SPARK nhỏ bay lên 6 px (đồng bộ SFX_H08_hold_loop).
6hold_out: vạch tắt dither 0.2 s; bụi 2 hạt.
6.2Rỗng.

H08_DASH Lăn Ngang: t = 0 = rời đất (dash hit_frame 0), lăn 76 px tro…

VFX_H08_roll_dashTEMPLATELớp: body_backCỡ: MLOD: L2

Lăn Ngang: lăn vai gọn, bụi sau gót và vệt tàn ảnh lục mờ dọc 76 px.

#192906#2b470a#476b15#578514#7bb21b#fff6f0
Dải khung VFX_H08_roll_dash10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Chi tiết spec
Kích hoạt
H08_DASH Lăn Ngang: t = 0 = rời đất (dash hit_frame 0), lăn 76 px trong 9 tick active, i-frame 12 tick. Hàng 1: H08_SK07_ROLL lăn 120 px (15 tick). H08_E07, H08_E40 dùng chung. VFX_SHARED_dash_dust phát kèm ở chân.
Canvas
112×48 gốc 92/30
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outQuart, freeze_s 0
Hạt
kind DUST, count 7, speed 40, life_s 0.3, hex #2b470a, gravity 0, shadow có
Hitbox
shape none, wave none
Nguồn
recolor bladewake/dust-dash --opts {palette:PAL_HERO_H08, dist:76}
Review
check_mjs pending (node tools/check.mjs heroes/dov-roll-dash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
0Rời đất: 3 cuộn bụi #2b470a sau gót, 1 vệt sáng ngang #7bb21b dài 8 px.
0.033Vệt lăn: dải tàn ảnh lục #578514 α 0.6 → 0 dọc quãng 76 px (afterimage runtime 1 bản/0.03 s), ổ đạn trên đai vẽ 2 chấm #fff6f0.
0.15Hết lăn: bụi tiếp đất 4 hạt; hàng 1: vệt dài 120 px, đi kèm fire_line.
0.333Rỗng.

Lửa sàn: H08_WISP_FLOOR (spawn t = 0.2 sau Phát Ma Trơi, sống 3 s, Nạ…

VFX_H08_wisp_floorTEMPLATELớp: floor_decalCỡ: LLOD: L1

Lửa sàn ma trơi đặc, thấp, lục sáng lõi trắng, nằm đúng hình nón phát bắn (hoặc đĩa r40 của Đèn Ma); cháy 3 s rồi để vết xém.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_wisp_floor8 khung @ 12 fpsantic · khung 0–2dissipate · khung 3–78 khung · 12 fps · 0.667 s · lặp
Hitbox VFX_H08_wisp_floorHitbox VFX_H08_wisp_floor24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Lửa sàn: H08_WISP_FLOOR (spawn t = 0.2 sau Phát Ma Trơi, sống 3 s, Nạp Nóng 4.5 s, nhịp 0.5 s) hàng 0 rẻ quạt; hàng 1: H08_SK04_FIRE vòng r40 sống 2 s (E25 +0.5/0.9/1.25 s); H08_E03 +1.0/1.75/2.5 s, hạng 3 +8 px. Nổ Chặn Ma Trơi dùng hàng 0 --opts radius 48 arc 90.
Canvas
120×76 gốc 8/40
Pha (s)
antic 0/0.2 · impact 0.2/0.25 · dissipate 2.7/3
Easing
curve linear, freeze_s 0
Hạt
kind EMBER, count 3, speed 30, life_s 0.5, hex #e5ff9e, gravity −20, shadow không
Hitbox
shape sector r90 a70, match Fill đặc phủ 100% elip r90 70° (90×45 màn), lưỡi lửa vượt mép ≤ 4 px; hàng 1 đĩa r42 vs circle r40. Không dạng tell P: fill ≥ 45% + mép mềm., wave none
Nguồn
recolor fire/spirit-flame --opts {palette:PAL_HERO_H08} + mask sector (knob shape:'sector'|'circle')
Review
check_mjs pending (node tools/check.mjs heroes/dov-wisp-floor), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Vào (runtime 0.2 s): dither 4×4 từ gốc nón ra mép, fill đặc 55% #578514 + lõi #fff6f0 rải chấm.
0.25Loop 8 frame @12: 7 lưỡi lửa thấp cao 6–10 px #7bb21b → #e5ff9e uốn lệch pha, mép mềm 3 px r2 (không viền cứng 2 px).
0.5Nhịp sát thương (mỗi 0.5 s): toàn vùng loé r6 #e5ff9e 1 frame, 3 EMBER bốc.
2.7Ra 0.3 s: lưỡi lửa thấp dần, fill tan dither, còn vết cháy xém #192906 α 0.3 sống 1.5 s.
3Rỗng (vết xém tắt ở 4.5 s).

Hàng 0: H08_RX_PIERCE_NAIL Xuyên Đinh (Đinh → Đinh) — thay hình phát …

VFX_H08_nail_pierce_lineTEMPLATELớp: overheadCỡ: LLOD: L2

Xuyên Đinh: chùm đinh hẹp sáng trắng-lục xuyên thẳng mọi kẻ trong nón 40° r150; cùng sheet cho đinh bắn trả của Chống Báng và đường 160 px của Nòng Chụm.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_nail_pierce_line10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Hitbox VFX_H08_nail_pierce_lineHitbox VFX_H08_nail_pierce_line40 px80 px120 px160 pxARChurtbox r 7shape ARC r 150 arc 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_RX_PIERCE_NAIL Xuyên Đinh (Đinh → Đinh) — thay hình phát B Phát Cặp, attack3 hit_frame 5, t = 0 = nổ. Hàng 1: H08_SK06_RETURN đinh bắn trả (đạn 900 px/s, tầm 140) và H08_E16 mảnh nảy. Hàng 2: H08_AS2_FIN_LINE đường 160 × 24.
Canvas
176×84 gốc 16/52
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outExpo, freeze_s 0
Hạt
kind STREAK, count 9, speed 900, life_s 0.17, hex #f5ffd8, gravity 0, shadow không/kind SPARK, count 2, speed 140, life_s 0.15, hex #aad44d, gravity 950, shadow có
Hitbox
shape sector r150 a40, match Hàng 0: dải sàn đúng r150 40° phủ 100%, đầu vệt r152 (vượt 2 px ✓). Hàng 1: đinh lõi r2 → va proj r4 (lõi + 2, doc 31 §7), dài màn L_s theo θ (e/w 140, n/s 70). Hàng 2: chữ nhật 160×24 (màn e 160×12, n/s 80×24) phủ 100%, vệt vượt 2 px., wave reach
Nguồn
recolor projectiles/bullet-tracer --opts {palette:PAL_HERO_H08, radius:150, arc:40} (+ knob shape line cho hàng 2)
Review
check_mjs pending (node tools/check.mjs heroes/dov-nail-pierce-line), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r150 a40' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: 1 đinh lõi trắng #fff6f0 dài 24 px + 8 vệt mạt bám quanh, chớp #ffffff tại miệng loa.
0.033Chùm đinh hẹp 40° bay 900 px/s, dải sáng sàn rẻ quạt hẹp r150 (elip 150×75, mép ±20° tại (141, ±26)) #578514 α 0.35 quét từ gốc.
0.1Đầu chùm ở r90; mỗi mục tiêu xuyên qua bật 1 tia SPARK hai bên (xuyên mọi mục tiêu).
0.167Đầu chùm chạm r150, vệt sau nhạt dần #7bb21b → #2b470a.
0.333Rỗng.

Hàng 0: H08_RX_SALT_PIN Muối Găm (Đinh → Muối), phát B attack3 hit_fr…

VFX_H08_salt_spike_stunTEMPLATELớp: overheadCỡ: MLOD: L2

Muối Găm: muối bám vào mạt đinh rồi mọc gai tinh thể trắng ngà quanh chân kẻ trúng, đứng nguyên đến khi hết choáng.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_salt_spike_stun12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_salt_spike_stunHitbox VFX_H08_salt_spike_stun24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_RX_SALT_PIN Muối Găm (Đinh → Muối), phát B attack3 hit_frame 5, t = 0 = nổ, nón 70° r90. Hàng 1 (mỗi mục tiêu bị choáng, pivot impact): gai muối bám thân, giữ suốt choáng S 1.2 s / M 0.6 s; dùng lại cho H08_E21 (choáng Mưa Muối +0.1/0.2/0.25 s).
Canvas
124×80 gốc 18/50
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind FLAKE, count 20, speed 480, life_s 0.3, hex #fff6f0, gravity 950, shadow có/kind STREAK, count 6, speed 900, life_s 0.1, hex #f5ffd8, gravity 0, shadow không/kind SHARD, count 4, speed 80, life_s 0.3, hex #e5ff9e, gravity 950, shadow có
Hitbox
shape sector r90 a70, match Nón sàn r90 70° (elip 90×45) phủ 100%, hạt xa nhất r93. Hàng 1 không hitbox (báo trạng thái), ≤ 12 bản sống; glyph STS_STUN chung vẫn vẽ (R7)., wave reach
Nguồn
recolor ice/ice-spikes --opts {palette:PAL_HERO_H08, n:5, rx:8} (hàng 1) + dov-shell-salt.js (hàng 0)
Review
check_mjs pending (node tools/check.mjs heroes/dov-salt-spike-stun), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: hạt muối trộn mạt đinh, chớp #ffffff 1 frame ở miệng loa.
0.033Hạt muối + 6 đinh nhỏ bay trong nón 70°, sàn rẻ quạt r90 #aad44d α 0.3.
0.1Trúng: hàng 1 bật ở chân mỗi mục tiêu — 5 gai tinh thể muối 2×6 → 3×9 px chĩa lên quanh thân (rx 8), lõi #fff6f0 viền #aad44d.
0.2Gai đứng yên (hàng 1 giữ frame cuối tới hết choáng, runtime); nón tan.
0.4Hàng 0 rỗng; hàng 1 vỡ 0.15 s khi hết choáng: 4 SHARD rơi.

Hàng 0: H08_RX_FIRE_LINE Đinh Lửa (Đinh → Ma Trơi) — vệt 140 × 24 từ …

VFX_H08_fire_lineTEMPLATELớp: floor_decalCỡ: MLOD: L1

Vệt lửa ma thẳng trên sàn: Đinh Lửa kéo dài 140 px từ miệng loa, Lăn Lửa Ma để lại 120 px dọc đường lăn.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_fire_line8 khung @ 12 fpsantic · khung 0–2dissipate · khung 3–78 khung · 12 fps · 0.667 s · lặp
Hitbox VFX_H08_fire_lineHitbox VFX_H08_fire_line40 px80 px120 px160 pxRECThurtbox r 7shape RECT len 140 w 24sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_RX_FIRE_LINE Đinh Lửa (Đinh → Ma Trơi) — vệt 140 × 24 từ miệng loa theo hướng bắn, spawn t = 0 phát B, sống 3 s, nhịp 0.5 s. Hàng 1: H08_SK07_TRAIL vệt lăn 120 × 24 dọc đường H08_SK07_ROLL (spawn khi lăn bắt đầu, 3 s; hạng II 3.5 s; H08_E09 +0.5/0.9/1.25 s).
Canvas
156×48 gốc 8/28
Pha (s)
antic 0/0.2 · impact 0.2/0.25 · dissipate 2.7/3
Easing
curve linear, freeze_s 0
Hạt
kind EMBER, count 4, speed 30, life_s 0.5, hex #e5ff9e, gravity −20, shadow không
Hitbox
shape line L140 W24, match Dải fill phủ 100% chữ nhật 140×24 (màn e 140×12, n/s 70×24, chéo 111×17), lưỡi lửa vượt ≤ 4 px. Hàng 1 dải 120×24. Fill ≥ 45%, không viền 2 px (không giống tell P)., wave none
Nguồn
recolor fire/flamethrower --opts {palette:PAL_HERO_H08, shape:'line', len:140, w:24} (lấy lưỡi lửa, bỏ luồng phun)
Review
check_mjs pending (node tools/check.mjs heroes/dov-fire-line), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'line L140 W24' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Vào 0.2 s: dải lửa chạy từ gốc ra đầu (hàng 1: theo chân Dov lúc lăn), fill đặc 55% #578514.
0.25Loop 8 frame @12: 10 lưỡi lửa thấp 6–9 px dọc dải, lõi #fff6f0 chấm, mép mềm 3 px.
0.5Nhịp: dải loé #e5ff9e 1 frame, 4 EMBER bốc.
2.7Ra 0.3 s: lửa hạ, còn vết xém #192906 α 0.3 sống 1.5 s.
3Rỗng.

Hàng 0: H08_RX_SALT_BREAK Vỡ Muối (Muối → Đinh) phát B attack3 hit_fr…

VFX_H08_salt_shatterTEMPLATELớp: overheadCỡ: MLOD: L2

Vỡ Muối: đinh bắn vào kẻ đang đóng muối làm vỏ muối nổ tung thành mảnh trắng ngà — đòn ×2 dễ đọc nhất của Dov.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_salt_shatter10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Hitbox VFX_H08_salt_shatterHitbox VFX_H08_salt_shatter32 px64 px96 px128 pxARChurtbox r 7shape ARC r 110 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_RX_SALT_BREAK Vỡ Muối (Muối → Đinh) phát B attack3 hit_frame 5, t = 0 = nổ, nón 70° r110. Hàng 1 (pivot impact, chỉ mục tiêu đang choáng — nhận ×2 + 12 Thế): vỏ muối vỡ tung.
Canvas
140×92 gốc 18/56
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outExpo, freeze_s 0
Hạt
kind STREAK, count 14, speed 900, life_s 0.12, hex #f5ffd8, gravity 0, shadow không/kind SHARD, count 10, speed 180, life_s 0.3, hex #fff6f0, gravity 950, shadow có
Hitbox
shape sector r110 a70, match Nón sàn r110 70° (110×55) phủ 100%, đầu vệt r112. Hàng 1 không hitbox (≤ 16 bản/frame theo R5)., wave reach
Nguồn
recolor ice/ice-shatter --opts {palette:PAL_HERO_H08} (hàng 1) + dov-muzzle-cone.js (hàng 0)
Review
check_mjs pending (node tools/check.mjs heroes/dov-salt-shatter), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r110 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: chùm đinh như muzzle_cone nhưng lõi dày hơn 1 px, chớp #ffffff.
0.033Vệt đinh 900 px/s trong nón 70° r110; sàn rẻ quạt #578514 α 0.35.
0.066Hàng 1 trên mục tiêu choáng: vỏ muối quanh thân nổ thành 10 SHARD trắng ngà 2×2–3×3 + vòng loé #fff6f0 rx 10, chớp #ffffff 1 frame.
0.2Mảnh muối rơi nảy, vệt đinh tắt.
0.333Rỗng.

H08_RX_SALT_STORM Bão Muối (Muối → Muối): phát B attack3 hit_frame 5,…

VFX_H08_salt_stormTEMPLATELớp: overheadCỡ: MLOD: L2

Bão Muối: màn muối trắng ngà cuộn rộng 120° trước miệng loa, choáng cả hàng quái.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_salt_storm12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_salt_stormHitbox VFX_H08_salt_storm24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 120sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_RX_SALT_STORM Bão Muối (Muối → Muối): phát B attack3 hit_frame 5, t = 0 = nổ; nón toả 120° r90, choáng S 0.8 s / M 0.4 s.
Canvas
124×104 gốc 18/60
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind FLAKE, count 40, speed 420, life_s 0.33, hex #fff6f0, gravity 600, shadow có/kind VAPOUR, count 6, speed 120, life_s 0.3, hex #e5ff9e, gravity 0, shadow không
Hitbox
shape sector r90 a120, match Màn muối phủ 100% elip r90 120° (90×45, mép (45, ±39)), hạt vượt ≤ 4 px., wave reach
Nguồn
recolor ice/frost-breath --opts {palette:PAL_HERO_H08, radius:90, arc:120}
Review
check_mjs pending (node tools/check.mjs heroes/dov-salt-storm), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a120' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: chớp #ffffff hình quạt rộng ở miệng loa, hạt muối bung 120°.
0.033Màn muối dày (40 hạt) cuộn như hơi thở lạnh, mép trước #f5ffd8, thân #e5ff9e α 0.8; sàn rẻ quạt 120° r90 — mép ±60° tại (45, ±39).
0.133Màn muối chạm r90 khắp cung, hạt xoáy 1 vòng nhỏ ở mép (cuộn 6 px).
0.25Hạt rơi đọng lớp muối mỏng 1 px dọc mép r70–90.
0.4Rỗng.

H08_RX_WISP_FIREWORK Pháo Hoa Ma (Ma Trơi → Đinh): t = 0 = phát B nổ;…

VFX_H08_wisp_fireworksTEMPLATELớp: overheadCỡ: LLOD: L2

Pháo Hoa Ma: mỗi vùng lửa sàn bắn 6 đinh lửa toả tròn như pháo hoa lục.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_wisp_fireworks12 khung @ 30 fpsantic · khung 0–1impact · khung 2–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_wisp_fireworksHitbox VFX_H08_wisp_fireworks24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 96sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_RX_WISP_FIREWORK Pháo Hoa Ma (Ma Trơi → Đinh): t = 0 = phát B nổ; MỖI vùng lửa sàn còn cháy của phát A bắn 6 đinh lửa toả đều 360° tầm 96 px (720 px/s, 0.133 s). Cũng: H08_E37 (nổ dây chuyền), H08_EVO3 (pháo nổ).
Canvas
208×120 gốc 104/72
Pha (s)
antic −0.05/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind BRAND, count 6, speed 720, life_s 0.133, hex #e5ff9e, gravity 0, shadow có/kind SPARK, count 36, speed 120, life_s 0.25, hex #aad44d, gravity 950, shadow có
Hitbox
shape circle r96, match 6 đinh lõi r2 → va proj r4 mỗi đinh trên 6 tia cách 60°; đầu đinh dừng r96 đúng elip 192×96 (±2 px). Phạm vi tối đa = circle r96., wave none
Nguồn
recolor explosions/firework-burst --opts {palette:PAL_HERO_H08, n:6, radius:96}
Review
check_mjs pending (node tools/check.mjs heroes/dov-wisp-fireworks), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r96' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.05Vùng lửa sàn phồng sáng #e5ff9e 2 frame (tụ).
0Frame trắng: tâm vùng loé đĩa r10 #ffffff, 6 đinh lửa rời tâm cách 60°.
0.033Đinh lửa lõi #fff6f0 dài 8 px + đuôi lửa 10 px #7bb21b bay 720 px/s ở h 10, bóng 3×2.
0.133Đinh tới r96 (elip 192×96) nổ hoa nhỏ 6 SPARK; mục tiêu bị xuyên 1 (×0.5 mục tiêu thứ 2).
0.4Rỗng.

Hàng 0: H08_RX_COLD_SALT Muối Lạnh (Ma Trơi → Muối), phát B attack3 h…

VFX_H08_frost_saltTEMPLATELớp: overheadCỡ: MLOD: L2

Muối Lạnh: muối dập lửa ma thành làn sương lạnh lục nhạt lăn sát sàn, đóng sương lên quái.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_frost_salt12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_frost_saltHitbox VFX_H08_frost_salt24 px48 px72 px96 pxARChurtbox r 7shape ARC r 90 arc 70sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_RX_COLD_SALT Muối Lạnh (Ma Trơi → Muối), phát B attack3 hit_frame 5, t = 0 = nổ, nón 70° r90, +2 lớp STS_FROST. Hàng 1: H08_E28 Muối Đóng Sương — đĩa sương r80 đè lên vùng Mưa Muối khi trúng (t = 0 = đợt muối chạm sàn).
Canvas
124×84 gốc 18/52
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve inOutQuad, freeze_s 0
Hạt
kind VAPOUR, count 10, speed 160, life_s 0.35, hex #e5ff9e, gravity 0, shadow không/kind STAR, count 8, speed 20, life_s 0.3, hex #fff6f0, gravity 0, shadow không
Hitbox
shape sector r90 a70, match Sương phủ 100% elip r90 70° (90×45), mép vượt ≤ 4 px. Hàng 1: đĩa sương r82 vs circle r80 (theo Mưa Muối hạng I; II/III r90 → --opts radius 90)., wave reach
Nguồn
recolor ice/frost-nova --opts {palette:PAL_HERO_H08, shape:'sector', radius:90, arc:70}
Review
check_mjs pending (node tools/check.mjs heroes/dov-frost-salt), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r90 a70' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: chớp #ffffff, hạt muối gặp lửa ma tắt thành hơi.
0.033Nón sương 70°: VAPOUR #e5ff9e α 0.6 lăn sát sàn, tinh thể 3×3 #fff6f0 lấp lánh trong sương.
0.133Sương phủ đủ r90; mép kết sương 1 px #f5ffd8; glyph FROST tinh thể chung trên quái (R7).
0.25Sương tan từ gốc ra mép.
0.4Rỗng.

H08_RX_WISP_SEA Biển Ma Trơi (Ma Trơi → Ma Trơi): spawn t = 0 tại điể…

VFX_H08_wisp_seaTEMPLATELớp: floor_decalCỡ: LLOD: L1

Biển Ma Trơi: vùng lửa ma đặc r64 cháy 6 s, vành là bức tường lửa thấp — giữ cửa hẹp.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_wisp_sea8 khung @ 12 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–78 khung · 12 fps · 0.667 s · lặp
Hitbox VFX_H08_wisp_seaHitbox VFX_H08_wisp_sea16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_RX_WISP_SEA Biển Ma Trơi (Ma Trơi → Ma Trơi): spawn t = 0 tại điểm chạm phát B, sống 6 s, nhịp 0.5 s (12 nhịp), STS_EMBER cho kẻ đứng trong.
Canvas
144×84 gốc 72/44
Pha (s)
antic 0/0.25 · impact 0.25/0.3 · dissipate 5.7/6
Easing
curve linear, freeze_s 0
Hạt
kind EMBER, count 4, speed 30, life_s 0.5, hex #e5ff9e, gravity −20, shadow không/kind FIRE, count 6, speed 40, life_s 0.4, hex #7bb21b, gravity −40, shadow không
Hitbox
shape circle r64, match Fill đặc phủ 100% elip 128×64, lưỡi lửa vành vượt ≤ 6 px; không viền 2 px, fill ≥ 45% (không giống tell P)., wave none
Nguồn
recolor fire/fire-ring --opts {palette:PAL_HERO_H08, radius:64, fill:0.6}
Review
check_mjs pending (node tools/check.mjs heroes/dov-wisp-sea), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r64' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Vào 0.25 s: vòng lửa bùng từ tâm ra r64 (elip 128×64), fill đặc 60% #578514 + lõi chấm #fff6f0.
0.3Loop 8 frame @12: 16 lưỡi lửa cao 8–14 px, vành ngoài lưỡi cao hơn (bức tường lửa thấp), mép mềm 3 px.
0.5Nhịp: loé #e5ff9e 1 frame toàn vùng, 4 EMBER bốc; glyph EMBER chung trên quái.
5.7Ra 0.3 s: lửa thấp dần, vết xém #192906 α 0.3 sống 2 s.
6Rỗng.

H08_DASH_ATTACK Phát Lăn: ATTACK trong 9 tick cuối Lướt/≤ 9 tick sau;…

VFX_H08_dash_shotTEMPLATELớp: overheadCỡ: MLOD: L2

Phát Lăn: Dov lăn xong quỳ gối bắn thấp, nón 80° r80 mang hiệu ứng viên đang lắp.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_dash_shot9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Hitbox VFX_H08_dash_shotHitbox VFX_H08_dash_shot24 px48 px72 px96 pxARChurtbox r 7shape ARC r 80 arc 80sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_DASH_ATTACK Phát Lăn: ATTACK trong 9 tick cuối Lướt/≤ 9 tick sau; dash_attack hit_frame 2 (startup 4 tick), t = 0 = nổ khi quỳ gối; nón 80° r80. Rỗng: dùng VFX_H08_gunsmoke. H08_E08 (+10/18/25°), H08_E07, H08_E11 dùng chung.
Canvas
112×84 gốc 16/54
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind STREAK, count 10, speed 900, life_s 0.09, hex #f5ffd8, gravity 0, shadow không/kind SPARK, count 4, speed 120, life_s 0.2, hex #aad44d, gravity 950, shadow có/kind DUST, count 2, speed 30, life_s 0.3, hex #2b470a, gravity 0, shadow có
Hitbox
shape sector r80 a80, match Nón sàn phủ 100% elip r80 80°, đầu vệt r82 (vượt 2 ✓); gốc = chân sau lăn. E08 hạng III: r82 107° vs sector r80 a105., wave reach
Nguồn
recolor projectiles/muzzle-pistol --opts {palette:PAL_HERO_H08, radius:80, arc:80, shell}
Review
check_mjs pending (node tools/check.mjs heroes/dov-dash-shot), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r80 a80' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame nhả: chớp #ffffff thấp (miệng loa h 10 do quỳ), viên tới lượt bung theo loại: Đinh vệt / Muối hạt / Ma Trơi lưỡi lửa (3 hàng sheet).
0.033Nón 80° r80 (elip 80×40, mép ±40° tại (61, ±26)) sáng #578514 α 0.35; vệt/hạt bay 900/520 px/s.
0.1Đầu vệt chạm r80, 4 SPARK nảy; vệt bụi quỳ gối 2 cuộn DUST #2b470a sau chân.
0.3Rỗng.

H08_SK02_FAN Quạt Đinh: sk02 hit_frame 5 (startup 10 tick), t = 0 = n…

VFX_H08_SK02_nail_fanTEMPLATELớp: overheadCỡ: SLOD: L2

Quạt Đinh: 12 đinh sáng đuôi lục toả quạt 60° bay xa 220 px, xuyên 1.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_SK02_nail_fan4 khung @ 15 fpsimpact · khung 0–0dissipate · khung 1–34 khung · 15 fps · 0.267 s · lặp
Hitbox VFX_H08_SK02_nail_fanHitbox VFX_H08_SK02_nail_fan64 px128 px192 px256 pxARChurtbox r 7shape ARC r 220 arc 60sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK02_FAN Quạt Đinh: sk02 hit_frame 5 (startup 10 tick), t = 0 = nhả 12 đinh quạt đều 60° (5.45° mỗi đinh), 840 px/s, tầm 220 (0.26 s). Hạng II 14 đinh / 240 px; hạng III đinh cắm sàn rồi nảy 1 lần tới quái trong 64 px. VFX_H08_muzzle_flash ở miệng loa.
Canvas
24×12 gốc 12/6
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.26/0.4
Easing
curve linear, freeze_s 0
Hạt
kind STREAK, count 1, speed 840, life_s 0.26, hex #f5ffd8, gravity 0, shadow có/kind SPARK, count 2, speed 80, life_s 0.15, hex #aad44d, gravity 950, shadow có
Hitbox
shape sector r220 a60, match Mỗi đinh lõi r2 → va proj r4 (doc 31 §7); 12 tia cách 5.45° phủ nón 60° r220, đinh tắt đúng r220 (±2 px, đo ở 3 hướng e/se/s theo L_s). Mỗi mục tiêu ≤ 3 đinh., wave none
Nguồn
recolor projectiles/bullet-tracer --opts {palette:PAL_HERO_H08, len:6, tail:10}
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk02-nail-fan), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r220 a60' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Đạn rời nòng: đinh lõi #fff6f0 dài 6 px, đuôi #aad44d → #2b470a 10 px, bay h 16, bóng 4×2 ở h 0.
0.067Loop 4 frame @15: đuôi rung 1 px, tia nhỏ STREAK lệch 1 px.
0.26Hết tầm 220: hạng I/II tắt + 2 SPARK; hạng III cắm sàn (frame giữ 0.1 s) rồi nảy vệt lùi 64 px.
0.4Rỗng.

H08_SK03 Mưa Muối (HOLD ≤ 1.5 s): hàng 0 vạch ngắm khi giữ (≤ 160 px)…

VFX_H08_SK03_salt_rainTEMPLATELớp: overheadCỡ: LLOD: L3

Mưa Muối: vốc muối ném vòng cầu nổ trên cao, rơi thành đĩa muối trắng ngà r80 hai đợt cách 0.5 s.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_SK03_salt_rain18 khung @ 30 fpsantic · khung 0–8impact · khung 9–10dissipate · khung 11–1718 khung · 30 fps · 0.6 s
Hitbox VFX_H08_SK03_salt_rainHitbox VFX_H08_SK03_salt_rain24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 80sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK03 Mưa Muối (HOLD ≤ 1.5 s): hàng 0 vạch ngắm khi giữ (≤ 160 px); hàng 1 đợt 1 (sk03 hit_frame 9, t = 0 = muối chạm sàn) và đợt 2 cùng tâm +0.5 s (hit_frame 24); hạng III vỏ muối 3 s. H08_EVO1 đổi thành bão 3 s (xem VFX_H08_EVO1_salt_tempest).
Canvas
176×136 gốc 88/92
Pha (s)
antic −0.3/0 · impact 0/0.05 · dissipate 0.05/0.6
Easing
curve outQuart, freeze_s 0
Hạt
kind FLAKE, count 40, speed 60, life_s 0.3, hex #fff6f0, gravity 950, shadow có/kind SHARD, count 24, speed 140, life_s 0.35, hex #f5ffd8, gravity 950, shadow có
Hitbox
shape circle r80, match Đĩa muối phủ 100% elip 160×80, hạt vượt ≤ 6 px; vòng ngắm đúng r80 (hạng II/III r90 → --opts radius 90). Tâm = off_fwd 96 mặc định, đặt 32–160 px khi giữ., wave none
Nguồn
recolor ice/icicle-fall --opts {palette:PAL_HERO_H08, radius:80, h:48} (thay cột băng bằng hạt muối)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk03-salt-rain), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r80' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.3Hàng 0 (giữ): vòng ngắm chấm 1 px #aad44d α 0.5 r80 (16 chấm, không fill, không viền 2 px) + chấm tâm; vốc muối bay vòng cầu h(t) = 4·H·u(1−u), H 48.
−0.1Vốc muối nổ trên cao h 48: 40 hạt rơi tạo màn mưa thẳng đứng.
0Chạm sàn: đĩa muối đặc #f5ffd8 fill 55% r80 (elip 160×80) bật trong 1 frame, chớp #ffffff 1 frame ở tâm.
0.124 SHARD nảy, đĩa nguội #aad44d; glyph STUN chung trên quái.
0.6Rỗng (hạng III: vỏ muối đọng 3 s, loop 4 frame @12 lấp lánh, fill 45%).

H08_SK04 Đèn Ma Rải Đường: hàng 0 đèn sống (sk04 tick 8 rải 4 đèn các…

VFX_H08_SK04_wisp_mineTEMPLATELớp: overheadCỡ: MLOD: L2

Đèn Ma Rải Đường: 4 chiếc đèn ma lục lơ lửng sau lưng, kẻ chạm vào thì nổ vòm lửa r40 rồi cháy sàn.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_SK04_wisp_mine12 khung @ 30 fpsantic · khung 0–1impact · khung 2–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_SK04_wisp_mineHitbox VFX_H08_SK04_wisp_mine8 px16 px24 px32 px40 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK04 Đèn Ma Rải Đường: hàng 0 đèn sống (sk04 tick 8 rải 4 đèn cách 48 px sau lưng, 12 s, loop); hàng 1 nổ H08_SK04_BURST r40 (t = 0 = quái chạm r14 hoặc hết 12 s); hạng III 3 đốm lăn 48 px nổ r24 (hàng 1 --opts radius 24). Cũng H08_E11, H08_E25, H08_E29, H08_EVO2.
Canvas
96×72 gốc 48/44
Pha (s)
antic −0.05/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0.03
Hạt
kind FIRE, count 12, speed 180, life_s 0.3, hex #aad44d, gravity −60, shadow không/kind EMBER, count 6, speed 40, life_s 0.4, hex #e5ff9e, gravity −30, shadow không
Hitbox
shape circle r40, match Vòm đạt r40 tại 0.1 s phủ 100% elip 80×40, hạt vượt ≤ 4 px; hạng II r44, E25 +4/6/10 px (--opts radius). Kích hoạt r14 không vẽ., wave reach
Nguồn
recolor projectiles/flare --opts {palette:PAL_HERO_H08} (đèn) + _lib.js slam (nổ)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk04-wisp-mine), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r40' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.05Hàng 0 (loop 8 frame @12): đèn ma 8×10 lơ lửng h 6, lõi #fff6f0, ngọn lửa #7bb21b lắc ±1 px, bóng 5×3; vầng sáng sàn r10 #578514 α 0.3.
0Nổ: frame trắng #ffffff đĩa r12, rồi vòm lửa đặc r40 (elip 80×40) lõi #fff6f0 → #aad44d.
0.1Vòm đạt r40, 12 FIRE + 6 EMBER spray + spawn3; quái đẩy 30 px; glyph EMBER chung.
0.2Vòm sập thành VFX_H08_wisp_floor hàng 1 (r40, 2 s).
0.4Rỗng.

H08_SK06 Chống Báng: hàng 0 vòm chắn trước 180° (H08_SK06_BRACE, star…

VFX_H08_SK06_brace_fortTEMPLATELớp: body_frontCỡ: MLOD: L2

Chống Báng: Dov cắm báng dựng nửa vòm lưới lục trước mặt, mỗi đòn chặn loé trắng và nhồi thêm đạn; hết giờ dậm báng nứt sàn hình quạt.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_SK06_brace_fort9 khung @ 30 fpsantic · khung 0–89 khung · 30 fps · 0.3 s
Hitbox VFX_H08_SK06_brace_fortHitbox VFX_H08_SK06_brace_fort8 px16 px24 px32 px40 px48 pxARChurtbox r 7shape ARC r 40 arc 90sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_SK06 Chống Báng: hàng 0 vòm chắn trước 180° (H08_SK06_BRACE, startup 6 tick, giữ 2.5 s = 138 tick active, loop); hàng 1 loé chặn khi đòn Y/N trước mặt trúng Dov (bắn trả = VFX_H08_nail_pierce_line hàng 1; H08_E17 +1 Ổ Đạn mỗi đòn chặn, icd 0.2 s); hàng 2 dậm báng H08_SK06_SLAM khi hết 2.5 s hoặc nhấn lại: t = 0 = frame dậm (active 4 tick), nón 90° r40, đẩy 40, hitstop 0.06. Nền VFX_H08_brace_stance chạy cùng. H08_E18 thay hàng 2 bằng VFX_H08_SK05_double_charge.
Canvas
88×64 gốc 30/38
Pha (s)
antic −2.5/0 · impact 0/0.067 · dissipate 0.067/0.3
Easing
curve outQuart, freeze_s 0.06
Hạt
kind DUST, count 8, speed 60, life_s 0.3, hex #578514, gravity 40, shadow có/kind SPARK, count 6, speed 180, life_s 0.12, hex #e5ff9e, gravity 0, shadow không
Hitbox
shape sector r40 a90, match Hàng 2: mép nứt dừng đúng r40 ± 2 px tại t = 0.067 trong 8 hướng, phủ ≥ 90% quạt 90°; bụi vượt ≤ 6 px. Vòm hàng 0 chỉ báo siêu giáp trước 180° (không gây sát thương), chân vòm r28 nằm trong vòng chân., wave reach
Nguồn
recolor impacts/shield-block --opts {arc:180, radius:28} (vòm hàng 0–1) + impacts/heavy-landing --opts {arc:90, radius:40} (dậm hàng 2)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk06-brace-fort), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r40 a90' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−2.5Hàng 0 mở (6 tick): nửa vòm trước mặt dựng lên từ sàn, chân vòm là nửa elip r28 (56×28 phía trước), vành 2 px #aad44d, mặt vòm lưới mắt cáo 1 px #578514 α 0.5, cao 22 px.
−2.3Hàng 0 loop 8 frame @12: vân lưới trôi lên 1 px/frame; cứ 0.2 s một chấm viên 2×2 #e5ff9e sáng lên dọc vành (12 chấm trong 2.5 s), chấm thứ 6 trở đi sáng trắng #fff6f0 = Ổ Đầy.
−1Hàng 1 (mỗi đòn chặn, 4 frame @30): vành loé trắng #fff6f0 dày 3 px tại điểm va, 6 SPARK toé ngược về kẻ đánh, 1 glyph viên nhảy từ điểm va vào hông Dov (E17).
0Hàng 2 dậm báng: vòm sụp xuống sàn, báng đập: nón 90° nứt sàn r40 (elip 80×40 cắt quạt) — 5 vết nứt toả #2b470a lõi #aad44d, frame trắng 1 frame #fff6f0 sát chân.
0.067Bụi bung theo mép cung r40: 8 DUST #476b15 có bóng, vết nứt sáng #e5ff9e chạy ra đến đúng r40 rồi dừng.
0.3Vết nứt nguội về #2b470a rồi tắt; rỗng.

H08_SK08_LOAD Nạp Một Hơi: sk08 startup 6 tick, active 24 tick, recov…

VFX_H08_SK08_rapid_loadTEMPLATELớp: overheadCỡ: MLOD: never

Nạp Một Hơi: hai ổ đạn hoa thị quay một vòng bên ngực Dov, lấp sáu viên, loé trắng đúng nhịp cue — bấm kịp thì cả ổ bừng lõi trắng Nạp Nóng.

#476b15#578514#aad44d#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_SK08_rapid_load18 khung @ 30 fpsantic · khung 0–5impact · khung 6–8dissipate · khung 9–1718 khung · 30 fps · 0.6 s
Chi tiết spec
Kích hoạt
H08_SK08_LOAD Nạp Một Hơi: sk08 startup 6 tick, active 24 tick, recovery 6; t = 0 = cue tick 18 (cửa 0.1 s; hạng II 0.12 s; H08_E32 +0.02/0.035/0.05 s). Cùng lúc VFX_H08_hot_load_cue hàng 1 sáng ở chân. Khói mở ổ H08_SK08_RING (tick 6, r48) = VFX_H08_gunsmoke; H08_E34 khi Ổ Đạn đầy xả thêm VFX_H08_gunsmoke r56. H08_EVO3 phóng 6 pháo VFX_H08_EVO3_hot_cascade khi trúng cue.
Canvas
56×52 gốc 28/46
Pha (s)
antic −0.2/0 · impact 0/0.1 · dissipate 0.1/0.3
Easing
curve inOutQuad, freeze_s 0
Hạt
kind EMBER, count 6, speed 50, life_s 0.3, hex #e5ff9e, gravity −40, shadow không
Hitbox
shape none, wave none
Nguồn
recolor bladewake/levelup (vòng xoay) + new src/fx/heroes/dov-sk08-rapid-load.js (2 hoa thị 6 lỗ, glyph dùng chung hot_load_cue)
Review
check_mjs pending (node tools/check.mjs heroes/dov-sk08-rapid-load), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
−0.22 ổ xoay (hoa thị 6 lỗ, mỗi ổ 12×12, vành 1 px #578514) hiện hai bên ngực Dov cao 22 px trên chân, cách nhau 28 px; bắt đầu quay 1 vòng trọn trong 0.4 s.
−0.133Mỗi 4 tick một lỗ được lấp glyph viên loại vừa nạp (▪ ● ▲) màu #aad44d, xen kẽ ổ A/B; khói mở ổ (gunsmoke) đã nở dưới chân.
0Cue: cả 2 ổ loé vành trắng #fff6f0 2 px giữ đúng 3 frame (0.1 s), 6 lỗ đều sáng #e5ff9e — đồng bộ với vòng chân hot_load_cue.
0.1Trúng cue: 6 glyph đổi lõi trắng (Nạp Nóng) + 6 EMBER bay lên; trượt: glyph giữ #aad44d, vành tắt cứng.
0.32 ổ thu nhỏ 12 → 4 px rồi tắt về hông Dov; rỗng.

H08_AS3_FIN_RING Phát Cặp Loa Rộng (Dạng Rèn H08_AS3): as3_fin startu…

VFX_H08_as3_ring_blastTEMPLATELớp: overheadCỡ: MLOD: L2

Phát Cặp Loa Rộng: mỗi phản ứng cặp bung thêm một vành lửa lục r56 quanh miệng pháo tay loe, hất bầy dạt ra.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_as3_ring_blast12 khung @ 30 fpsantic · khung 0–4impact · khung 5–6dissipate · khung 7–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_as3_ring_blastHitbox VFX_H08_as3_ring_blast16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 56sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_AS3_FIN_RING Phát Cặp Loa Rộng (Dạng Rèn H08_AS3): as3_fin startup 9 tick (0.15 s), active 4 tick; t = 0 = frame phản ứng cặp kích; vòng nổ r56 quanh miệng loa, coef 2.0, đẩy 36, hitstop 0.07, trauma 0.3. Khói đuôi = VFX_H08_gunsmoke hàng 0.
Canvas
124×88 gốc 62/58
Pha (s)
antic −0.15/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.07
Hạt
kind FIRE, count 16, speed 160, life_s 0.25, hex #aad44d, gravity −40, shadow không/kind SMOKE, count 8, speed 40, life_s 0.4, hex #2b470a, gravity −20, shadow không
Hitbox
shape circle r56, match Đĩa trắng t = 0 phủ 100% elip 112×56; vành t = 0.067 có mép ngoài r56 ± 2 px; khói dạt r62 vượt 6 px (giới hạn M) và không tính sát thương., wave reach
Nguồn
recolor explosions/small-explosion --opts {radius:56} (đĩa → vành) + hue_shift 3 của Dạng Rèn AS3
Review
check_mjs pending (node tools/check.mjs heroes/dov-as3-ring-blast), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r56' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.15Miệng loa rộng phồng sáng: đĩa r8 #aad44d nhịp 2 lần, 4 vệt khói #2b470a xoáy vào.
0Frame trắng: đĩa elip 112×56 đặc #fff6f0 tâm miệng loa, viền 2 px #e5ff9e đúng r56.
0.067Đĩa rỗng tâm thành vành dày 10 px #aad44d → #578514, 16 FIRE toả theo vành, 8 SMOKE puff đứng trên vành.
0.2Vành khói #2b470a dạt thêm 6 px (r62) rồi mỏng dần; lửa tắt.
0.4Rỗng.

H08_UL1_CORPSE: trong tick 50–110 của ult, mọi xác và quái chết trong…

VFX_H08_UL1_corpse_wispTEMPLATELớp: overheadCỡ: MLOD: L2

Xác bốc ma trơi: trong đêm pháo, mỗi xác quanh điểm ngắm phồng lên ngọn lửa lục rồi nổ tròn r40, như cả bãi chiến trường thắp đèn.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_UL1_corpse_wisp12 khung @ 30 fpsantic · khung 0–4impact · khung 5–5dissipate · khung 6–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_UL1_corpse_wispHitbox VFX_H08_UL1_corpse_wisp8 px16 px24 px32 px40 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_UL1_CORPSE: trong tick 50–110 của ult, mọi xác và quái chết trong r200 quanh điểm ngắm bốc ma trơi rồi nổ r40 coef 2.0 (≤ 40 nổ, không lan tiếp). Runtime rải: xác gần tâm nổ trước, ≤ 1 nổ mới mỗi tick. t = 0 = frame nổ. Hàng 1: H08_E35 mỗi xác nổ bắn 1 glyph Ma Trơi về chân Dov (nạp 1 Ma Trơi Nạp Nóng, ≤ 6; nổ +0.5 hệ số). Kèm VFX_SHARED_hit_ember trên mục tiêu.
Canvas
96×80 gốc 48/54
Pha (s)
antic −0.15/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0.03
Hạt
kind FIRE, count 10, speed 160, life_s 0.25, hex #aad44d, gravity −60, shadow không/kind EMBER, count 6, speed 40, life_s 0.35, hex #e5ff9e, gravity −30, shadow không
Hitbox
shape circle r40, match Đĩa lửa tại 0.067 s phủ 100% elip 80×40; hạt vượt ≤ 4 px. Ngọn antic không gây sát thương., wave reach
Nguồn
recolor bladewake/bloat-explode --opts {radius:40, palette:PAL_HERO_H08} + glyph ▲ từ hot_load_cue
Review
check_mjs pending (node tools/check.mjs heroes/dov-ul1-corpse-wisp), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r40' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.15Xác phồng: ngọn ma trơi 6×10 #7bb21b lõi #e5ff9e bốc lên từ xác 12 px, lắc ±1 px; sàn quanh xác loé r8 #578514 α 0.4.
0Nổ: frame trắng đĩa r10 #fff6f0, rồi đĩa lửa elip 80×40 lõi #aad44d mép #578514.
0.067Đĩa đạt r40 viền 2 px #e5ff9e; 10 FIRE + 6 EMBER văng; hàng 1: glyph ▲ 3×2 #e5ff9e lõi trắng bay cung về chân Dov trong 0.25 s.
0.2Lửa co thành 3 ngọn nhỏ #578514, khói #2b470a bốc 8 px.
0.4Rỗng (không để vết sàn — tránh chồng 40 decal).

H08_E38 Mảnh Chặn Nạp Ổ (Then Chốt): ĐÁP thành công (H08_ANSWER hit) …

VFX_H08_E38_answer_shrapnelTEMPLATELớp: overheadCỡ: SLOD: L2

Mảnh Chặn Nạp Ổ: cú ĐÁP văng ba mảnh đạn xoay nảy qua ba kẻ địch, mỗi lần trúng một viên đạn nhỏ bay ngược về ổ của Dov.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_E38_answer_shrapnel4 khung @ 15 fpsimpact · khung 0–0dissipate · khung 1–34 khung · 15 fps · 0.267 s · lặp
Hitbox VFX_H08_E38_answer_shrapnelHitbox VFX_H08_E38_answer_shrapnel8 px16 pxCIRCLEhurtbox r 7shape CIRCLE r 4sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_E38 Mảnh Chặn Nạp Ổ (Then Chốt): ĐÁP thành công (H08_ANSWER hit) → t = 0 = 3 mảnh văng từ điểm chặn trong nón 90° r48, mỗi mảnh nảy 3 quái (coef 1.2), tốc vẽ 600 px/s theo đường runtime chọn; hàng 0 mảnh bay (loop), hàng 1 chạm-nảy: mỗi chạm +1 Ổ Đạn (≤ 3) → glyph ▪ (Đinh khi ổ rỗng) bay về chân Dov. Đi cùng VFX_H08_answer_flak.
Canvas
24×24 gốc 12/12
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.267
Easing
curve linear, freeze_s 0
Hạt
kind SPARK, count 4, speed 160, life_s 0.1, hex #e5ff9e, gravity 0, shadow không
Hitbox
shape proj r4, match Lõi mảnh r2 (đường kính 4 px) + 2 px = va r4 (luật đạn hero); đuôi không tính., wave none
Nguồn
recolor impacts/ricochet --opts {palette:PAL_HERO_H08} (chạm-nảy) + new src/fx/heroes/dov-e38-answer-shrapnel.js (mảnh xoay)
Review
check_mjs pending (node tools/check.mjs heroes/dov-e38-answer-shrapnel), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'proj r4' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Hàng 0: mảnh 6×4 #e5ff9e viền #578514 xoay 90°/frame, đuôi 6 px #7bb21b α 0.5 sau lưng hướng bay; bóng 3×2.
0.067Hàng 1 chạm (4 frame @30): chữ thập loé 9×9 #fff6f0 1 frame, 4 SPARK toé, mảnh bật góc mới.
0.133Glyph ▪ 2×2 #f5ffd8 tách khỏi điểm chạm bay cung về chân Dov trong 0.2 s; tại chân bật VFX_H08_hot_load_cue hàng 0.
0.267Sau lần nảy thứ 3: mảnh vỡ 3 chấm #578514 rơi rồi tắt.

H08_E39 Tì Báng Xả Loạt (Then Chốt), trên H08_HOLD: hàng 0 mỗi đòn tr…

VFX_H08_E39_brace_volleyTEMPLATELớp: overheadCỡ: MLOD: L2

Tì Báng Xả Loạt: ăn đòn đầy ổ rồi nhả báng, pháo tay giật liền sáu phát ba cặp, vỏ đạn văng lách cách sau lưng.

#2b470a#578514#7bb21b#e5ff9e#f5ffd8#fff6f0
Dải khung VFX_H08_E39_brace_volley18 khung @ 30 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–1718 khung · 30 fps · 0.6 s
Vũng sáng sàn VFX_H08_E39_brace_volleyr 20 px, k 0.3vũng sáng r 20 px · ry = r × 0.5
Chi tiết spec
Kích hoạt
H08_E39 Tì Báng Xả Loạt (Then Chốt), trên H08_HOLD: hàng 0 mỗi đòn trúng mặt trước 120° khi đang Tì Báng (+1 viên, kèm VFX_H08_brace_stance); hàng 1 nhả Tì Báng khi Ổ Đầy: t = 0 = phát 1, 3 cặp = 6 phát liền mỗi 0.1 s trong 0.6 s (coef 3.0, −15 Thế mỗi phát). Hình nón mỗi phát = spec viên tương ứng (VFX_H08_muzzle_cone / VFX_H08_shell_salt / VFX_H08_shell_wisp), phát B kích phản ứng cặp; spec này vẽ loé nòng, giật, vỏ đạn.
Canvas
64×48 gốc 12/30
Pha (s)
antic −0.1/0 · impact 0/0.033 · dissipate 0.033/0.6
Easing
curve outQuart, freeze_s 0
Hạt
kind CASING, count 6, speed 80, life_s 0.6, hex #578514, gravity 200, shadow có/kind SPARK, count 6, speed 200, life_s 0.1, hex #e5ff9e, gravity 0, shadow không/kind SMOKE, count 6, speed 30, life_s 0.4, hex #2b470a, gravity −20, shadow không
Hitbox
shape none, match Hitbox mỗi phát thuộc spec viên: Đinh sector r110 a70, Muối/Ma Trơi sector r90 a70 — loé nòng spec này đặt đúng gốc nón (muzzle socket ± 1 px) trong 8 hướng., wave none
Nguồn
recolor projectiles/muzzle-smg --opts {palette:PAL_HERO_H08} (loé + vỏ) + hàng 0 mượn impacts/shield-block
Review
check_mjs pending (node tools/check.mjs heroes/dov-e39-brace-volley), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
−0.1Hàng 0 (4 frame @30, tại điểm va trên vòm Tì Báng): loé vành 3 px #fff6f0, glyph viên nhảy vào hông Dov. Khi Ổ Đầy: 6 chấm vành vòm sáng trắng cùng lúc.
0Phát 1 (ổ A): loé nòng sao 4 cánh 20×12 #fff6f0 → #e5ff9e, vòng khói giật r6 #2b470a phía trước, 1 vỏ đạn 2×3 #578514 văng ra sau 12 px.
0.1Phát 2 (ổ B): loé to hơn 24×14 + 2 tia SPARK, đánh dấu phát B (phản ứng cặp); nòng giật lùi 3 px.
0.2Phát 3–6 lặp nhịp A/B mỗi 3 frame; khói giật chồng thành dải #2b470a dài dần 40 px phía trước.
0.6Sau phát 6: dải khói tan, 6 vỏ đạn nằm lăn trên sàn 0.3 s rồi tắt.

H08_E40 Ngòi Nổ Lăn Đêm (Then Chốt): Lướt khi Ổ Đầy → cắm bó 6 viên +…

VFX_H08_E40_fuse_detonateTEMPLATELớp: overheadCỡ: LLOD: L2

Ngòi Nổ Lăn Đêm: Dov lăn đi bỏ lại bó sáu viên cháy ngòi, vòng lục lấp dần rồi nổ thành hố lửa r72.

#192906#2b470a#476b15#578514#aad44d#fff6f0
Dải khung VFX_H08_E40_fuse_detonate15 khung @ 30 fpsantic · khung 0–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H08_E40_fuse_detonateHitbox VFX_H08_E40_fuse_detonate24 px48 px72 pxCIRCLEhurtbox r 7shape CIRCLE r 72sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_E40 Ngòi Nổ Lăn Đêm (Then Chốt): Lướt khi Ổ Đầy → cắm bó 6 viên + ngòi tại điểm bắt đầu lướt (hàng 0, 0.6 s); t = 0 = nổ r72, 2.0 × POWER mỗi viên + 3 phản ứng cặp (VFX phản ứng phát tại tâm lúc t = 0.1/0.2/0.3); hoàn 1 Lướt. Đi cùng VFX_H08_roll_dash.
Canvas
160×112 gốc 80/72
Pha (s)
antic −0.6/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0.08
Hạt
kind FIRE, count 20, speed 200, life_s 0.3, hex #aad44d, gravity −60, shadow không/kind DEBRIS, count 10, speed 160, life_s 0.45, hex #476b15, gravity 300, shadow có/kind SMOKE, count 8, speed 30, life_s 0.5, hex #2b470a, gravity −20, shadow không
Hitbox
shape circle r72, match Viền đếm hàng 0 nằm đúng r72; đĩa trắng t = 0 phủ 100% elip 144×72; vành t = 0.067 tại r72 ± 2 px, mảnh vượt ≤ 10 px (L)., wave reach
Nguồn
recolor explosions/crater-blast --opts {radius:72, palette:PAL_HERO_H08} + new src/fx/heroes/dov-e40-fuse-detonate.js (bó đạn + ngòi hàng 0)
Review
check_mjs pending (node tools/check.mjs heroes/dov-e40-fuse-detonate), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r72' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.6Hàng 0 (6 frame loop @15): bó 6 viên 10×8 cắm nghiêng trên sàn, ngòi 1 px #e5ff9e cháy tóe 3 tia mỗi frame; viền elip 144×72 1 px #7bb21b α 0.5 hiện quanh bó, fill #578514 α 0.2 lớn dần từ tâm.
−0.1Fill chạm viền r72 (đầy đúng t = 0); ngòi cháy tới bó, bó loé #e5ff9e 2 lần.
0Frame trắng: đĩa elip 144×72 #fff6f0, rồi miệng hố lửa lõi #aad44d mép #578514, cột khói-lửa 24×48 giữa tâm.
0.067Đĩa đạt r72, vành 3 px #e5ff9e; 20 FIRE + 10 DEBRIS (có bóng) văng; vết hố r24 #192906 ở tâm lưu 1.5 s.
0.3Khói #2b470a cuộn lên 32 px; 3 phản ứng cặp chồng lên lần lượt.
0.5Rỗng (còn vết hố).

H08_EVO1 Bão Muối Tì Báng: hàng 0 khi đang Tì Báng Nạp (H08_HOLD), mỗ…

VFX_H08_EVO1_salt_tempestTEMPLATELớp: overheadCỡ: LLOD: L2

Bão Muối Tì Báng: quỳ tì báng, cứ mỗi nhịp Dov rắc ra một vòng gai muối trắng r64; Mưa Muối hoá cơn lốc muối ba giây.

#476b15#aad44d#e5ff9e#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_EVO1_salt_tempest12 khung @ 30 fpsantic · khung 0–2impact · khung 3–5dissipate · khung 6–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_EVO1_salt_tempestHitbox VFX_H08_EVO1_salt_tempest16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 64sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_EVO1 Bão Muối Tì Báng: hàng 0 khi đang Tì Báng Nạp (H08_HOLD), mỗi 1.2 s rắc vòng muối r64 quanh chân Dov (1.2 × POWER, choáng S 0.6 s, 1 lớp STS_FROST); t = 0 = tick rắc. Hàng 1: H08_SK03 Mưa Muối thành bão 3 s tại vùng r80 (loop, đè lên VFX_H08_SK03_salt_rain).
Canvas
176×120 gốc 88/78
Pha (s)
antic −0.1/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind SALT, count 12, speed 140, life_s 0.25, hex #f5ffd8, gravity 160, shadow có/kind SALT, count 24, speed 90, life_s 0.5, hex #ffffff, gravity 0, shadow không
Hitbox
shape circle r64, match Hàng 0: vành t = 0.067 mép ngoài r64 ± 2 px, mặt trong phủ sương ≥ 90%; gai vượt ≤ 6 px. Hàng 1: rim 1 px trùng r80 của H08_SK03 (hitbox vùng bão)., wave reach
Nguồn
recolor ice/blizzard-vortex --opts {radius:80} (hàng 1) + ice/ice-spikes --opts {radius:64} (hàng 0)
Review
check_mjs pending (node tools/check.mjs heroes/dov-evo1-salt-tempest), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r64' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.1Muối tụ: 8 hạt 2×2 #f5ffd8 xoáy quanh gối Dov cao 10 px, bóng 1 px.
0Frame trắng: vành elip 128×64 #ffffff dày 4 px bật ra từ chân.
0.067Vành đạt r64: 16 gai muối 3×6 #f5ffd8 viền #aad44d cắm dọc vành, sương #e5ff9e α 0.4 phủ mặt trong; 12 SALT văng.
0.25Gai vỡ thành bột #476b15 rơi; sương tan.
0.4Rỗng. Hàng 1 (12 frame @12 loop, 3 s): lốc muối elip 160×80 (r80) — 3 dải hạt trắng xoáy ngược chiều kim đồng hồ 30°/frame, cao 40 px, mép ngoài vạch 1 px #aad44d đúng r80; hết 3 s tan trong 4 frame.

H08_EVO2 Phố Đèn Ma: mỗi Đèn Ma của H08_SK04 thành đèn lồng cháy 10 s…

VFX_H08_EVO2_lantern_fieldTEMPLATELớp: floor_decalCỡ: MLOD: L1

Phố Đèn Ma: mỗi đèn ma thắp một vũng lửa lục r56 cháy mười giây, cả con đường sau lưng Dov thành phố đèn.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_EVO2_lantern_field8 khung @ 12 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–78 khung · 12 fps · 0.667 s · lặp
Hitbox VFX_H08_EVO2_lantern_fieldHitbox VFX_H08_EVO2_lantern_field16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 56sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_EVO2 Phố Đèn Ma: mỗi Đèn Ma của H08_SK04 thành đèn lồng cháy 10 s (đèn = VFX_H08_SK04_wisp_mine hàng 0); spec này là lửa sàn r56 quanh đèn, nhịp 0.5 s (0.6 × POWER). t = 0 = đèn đặt xuống. Phát Ma Trơi trúng đèn → nổ r48 2.0 × POWER = VFX_H08_SK04_wisp_mine hàng 1 với --opts radius 48 (bậc 1.3 × 0.923).
Canvas
128×72 gốc 64/38
Pha (s)
antic 0/0.25 · impact 0.25/0.333 · dissipate 9.667/10
Easing
curve linear, freeze_s 0
Hạt
kind EMBER, count 2, speed 20, life_s 0.6, hex #e5ff9e, gravity −30, shadow không
Hitbox
shape circle r56, match Viền 1 px hàng 0 nằm đúng r56; nền phủ 100% elip 112×56; lưỡi lửa vượt ≤ 4 px. Nổ r48 dùng hitbox của VFX_H08_SK04_wisp_mine., wave none
Nguồn
recolor fire/brazier --opts {radius:56} (lưỡi lửa) + floorDisc pixelfx _lib.js
Review
check_mjs pending (node tools/check.mjs heroes/dov-evo2-lantern-field), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r56' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Hàng 1 lan (3 frame @12): lửa ma loang từ chân đèn ra r56 trong 0.25 s, mép trước #aad44d.
0.25Hàng 0 loop: đĩa elip 112×56 nền #2b470a α 0.5, 10 lưỡi lửa ngắn 3×6 #7bb21b lõi #e5ff9e lắc ±1 px; viền 1 px #578514 đúng r56.
0.5Nhịp sát thương (mỗi 0.5 s = 6 frame @12): toàn bộ lưỡi lửa bừng 1 frame #aad44d cao +2 px.
9.667Hàng 2 tàn (4 frame @12): lửa co về chân đèn, nền mờ dần.
10Rỗng.

H08_EVO3 Thác Pháo Nạp Nóng: mỗi viên Nạp Nóng bắn ra phóng 1 pháo ma…

VFX_H08_EVO3_hot_cascadeTEMPLATELớp: overheadCỡ: MLOD: L2

Thác Pháo Nạp Nóng: mỗi viên đạn nóng bắn ra kéo theo một quả pháo ma trơi vút lên rồi nổ bung lục ở chỗ kẻ địch đứng.

#2b470a#578514#7bb21b#aad44d#e5ff9e#fff6f0
Dải khung VFX_H08_EVO3_hot_cascade12 khung @ 30 fpsantic · khung 0–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_EVO3_hot_cascadeHitbox VFX_H08_EVO3_hot_cascade8 px16 px24 px32 px40 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H08_EVO3 Thác Pháo Nạp Nóng: mỗi viên Nạp Nóng bắn ra phóng 1 pháo ma trơi từ miệng loa; điểm rơi = mục tiêu gần nhất trong nón phát bắn (không có → 96 px trước miệng loa); bay 0.4 s rồi nổ r40 1.5 × POWER. H08_SK08 trúng cue phóng 6 pháo (6 quái gần nhất trong 160 px; thiếu → điểm đều trên vòng r64 quanh Dov). t = 0 = nổ. Đi cùng VFX_H08_wisp_fireworks.
Canvas
96×80 gốc 48/54
Pha (s)
antic −0.4/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0
Hạt
kind FIRE, count 8, speed 160, life_s 0.25, hex #aad44d, gravity −40, shadow không/kind EMBER, count 6, speed 20, life_s 0.3, hex #e5ff9e, gravity −20, shadow không
Hitbox
shape circle r40, match Đĩa tại 0.067 s phủ 100% elip 80×40; đầu tia dừng r40 ± 2 px; pháo bay không có hitbox., wave reach
Nguồn
recolor explosions/firework-rocket --opts {radius:40, palette:PAL_HERO_H08}
Review
check_mjs pending (node tools/check.mjs heroes/dov-evo3-hot-cascade), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'circle r40' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
−0.4Hàng 0 (12 frame @30, đi theo parabol runtime đỉnh 40 px): pháo 4×6 #e5ff9e lõi #fff6f0, đuôi lửa 10 px #7bb21b, 1 EMBER/2 frame; bóng 4×2 trên sàn chạy dưới đường bay.
−0.067Pháo chúc xuống, đuôi dài 14 px; bóng co về chấm 2×1 ngay điểm rơi.
0Hàng 1 nổ: frame trắng đĩa r10 #fff6f0, rồi pháo hoa elip 80×40 lõi #aad44d.
0.067Đĩa đạt r40 viền 2 px #e5ff9e; 6 tia 1×6 toả, 8 FIRE văng.
0.4Tia rơi thành chấm #578514; rỗng.

LIBRARY · 2

Mọi phát bắn từ miệng loa: combo A/B (hit_frame 3/5), Phát Cặp, Phát …

VFX_H08_muzzle_flashLIBRARYLớp: overheadCỡ: SLOD: L3

Chớp miệng loa: 1 frame trắng hình chuông rồi lõi ngà viền lục, kèm 1 phụt khói ≤ 12 px tan 0.3 s (HF-06).

#476b15#7bb21b#aad44d#f5ffd8#fff6f0#ffffff
Dải khung VFX_H08_muzzle_flash4 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–34 khung · 30 fps · 0.133 s
Chi tiết spec
Kích hoạt
Mọi phát bắn từ miệng loa: combo A/B (hit_frame 3/5), Phát Cặp, Phát Lăn (dash_attack hit_frame 2), H08_SK02_FAN (sk02 hit_frame 5), H08_AS2_FIN_LINE. t = 0 = frame nhả.
Canvas
32×24 gốc 4/12
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.133
Easing
curve outQuart, freeze_s 0
Hạt
kind SMOKE, count 1, speed 20, life_s 0.3, hex #476b15, gravity 0, shadow không
Hitbox
shape none, wave none
Nguồn
reuse projectiles/muzzle-shotgun --opts palette=PAL_HERO_H08 (chỉ map ramp, không sửa hình)
Review
check_mjs pending (node tools/check.mjs heroes/dov-muzzle-flash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending
t (s)Mô tả
0Frame trắng #ffffff 1 frame: chớp hình miệng chuông 12×10 px tại muzzle, 4 cánh ngắn 3 px.
0.033Lõi #fff6f0 8×6, viền #aad44d 1 px, 2 cánh còn lại.
0.066Còn đốm #7bb21b 4×3 + 1 phụt khói 6 px #476b15 α 0.5 trước miệng loa (≤ 12 px).
0.133Rỗng.

Hàng 0: H08_COMBO_A_BLANK Phụt Mồi hit (attack2 hit_frame 3, t = 0 = …

VFX_H08_gunsmokeLIBRARYLớp: overheadCỡ: MLOD: L2

Khói thuốc súng của Dov: phụt khói lục-chì đặc theo nón (Phụt Mồi) hoặc vành tròn đẩy quái (Nạp Một Hơi), tan nhanh, không bao giờ che thân hero.

#192906#2b470a#476b15#578514#aad44d#fff6f0
Dải khung VFX_H08_gunsmoke12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H08_gunsmokeHitbox VFX_H08_gunsmoke16 px32 px48 px64 pxARChurtbox r 7shape ARC r 56 arc 60sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hàng 0: H08_COMBO_A_BLANK Phụt Mồi hit (attack2 hit_frame 3, t = 0 = phụt; nón 60° r56) và Phát Lăn rỗng (--opts arc 100 radius 64). Hàng 1: khói đuôi H08_SK01_BLAST (t = 0.1 sau nổ, không hitbox), H08_E04, H08_AS3_FIN_RING. Hàng 2: H08_SK08_RING xả khói vòng r48 (sk08 tick 6) và H08_E34 r56.
Canvas
128×80 gốc 64/48
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind SMOKE, count 10, speed 140, life_s 0.35, hex #476b15, gravity −40, shadow không/kind DUST, count 6, speed 60, life_s 0.3, hex #2b470a, gravity 0, shadow có
Hitbox
shape sector r56 a60, match Hàng 0: khói phủ elip r56 60° ≥ 95% (56×28 màn), mép cuộn vượt ≤ 4 px; Phát Lăn rỗng r66 102° vs r64 a100. Hàng 2: vành khói đặc phủ đĩa r48 (96×48) 100%, cuộn ngoài r52; E34 r58 vs r56., wave reach
Nguồn
recolor explosions/smoke-bomb --opts {palette:PAL_HERO_H08, radius, arc} (thêm knob arc mask rẻ quạt + khoét thân, mặc định giữ hình gốc)
Review
check_mjs pending (node tools/check.mjs heroes/dov-gunsmoke), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H08), hitbox_overlay pending: overlay 'sector r56 a60' (elip 1 px) trên --dirs + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending
t (s)Mô tả
0Frame phụt: nhân sáng #fff6f0 6×4 ở miệng loa (hàng 2: ở chân, vòng sáng r10), chớp #ffffff 1 frame.
0.033Hàng 0: cụm khói đặc 3 khối tròn lăn theo nón 60° tới r40, thân #476b15 → #578514, đỉnh sáng #aad44d 1 px. Hàng 2: vành khói tròn nở r20.
0.1Khói chạm r56 (hàng 0) / vành r48 (hàng 2, elip 96×48); quái bị đẩy 40 px theo vành.
0.2Khói vỡ thành 8 cuộn nhỏ α 0.6 trôi lên 12 px, tối dần #2b470a; không cuộn nào vào r16 quanh thân Dov (giữ thân đọc rõ, cấm khói đen che thân).
0.4Rỗng.

13SFX

SFX theo loạiSFX theo loạicast: 12 (43%)shot: 4 (14%)explode: 3 (11%)move: 3 (11%)vocal: 3 (11%)hit: 1 (4%)answer: 1 (4%)loop: 1 (4%)28SFXcast — 12 (43%)shot — 4 (14%)explode — 3 (11%)move — 3 (11%)vocal — 3 (11%)hit — 1 (4%)answer — 1 (4%)loop — 1 (4%)
Độ dài (ms)Độ dài (ms)a1_swinga1_swing: 280 ms280 msa2_swinga2_swing: 250 ms250 msa3_swinga3_swing: 420 ms420 mshithit: 180 ms180 mscombo_specialcombo_special: 900 ms900 msdashdash: 320 ms320 msansweranswer: 380 ms380 mscountercounter: 600 ms600 mshold_starthold_start: 260 ms260 mshold_loophold_loop: 2400 ms2400 mshold_endhold_end: 200 ms200 msres_gainres_gain: 140 ms140 msres_fullres_full: 420 ms420 msres_spendres_spend: 200 ms200 msSK01_castSK01_cast: 760 ms760 msSK02_castSK02_cast: 560 ms560 msSK03_castSK03_cast: 900 ms900 msSK04_castSK04_cast: 700 ms700 msSK05_castSK05_cast: 680 ms680 msSK06_castSK06_cast: 600 ms600 msSK07_castSK07_cast: 700 ms700 msSK08_castSK08_cast: 1100 ms1100 msUL1_volleyUL1_volley: 4000 ms4000 msUL2_lastshotUL2_lastshot: 3600 ms3600 msUL3_endlessUL3_endless: 1800 ms1800 msvo_effortvo_effort: 450 ms450 msvo_hurtvo_hurt: 350 ms350 msvo_deathvo_death: 1100 ms1100 ms
28 dòng
SFXLoạimsBiến thểBusƯu tiênGiọngLUFSTellNguồnTrạng tháiBrief
HeroAttackCut heroId=H08 moveIndex=A (H08_COMBO_A_DINH/A_MUOI/A_MATRO… SFX_H08_a1_swingshot2804HeroAttack206−19nonefreesoundbriefHoả mai nòng loa bắn 1 viên ổ A từ hông: thuốc đen nổ trầm, gọn, có hơi khói. Loại viên KHÔNG đổi âm nổ (đổi ở `SFX_H08_hit`/`combo_special`). AS2 = gốc +5% pitch, body hẹp hơn (bandpass 150–600 Hz); AS3 = gốc −6% pitch, body dày hơn 2 dB. KHÔNG được nghe như súng trường hiện đại, súng giảm thanh, pháo tết hay tiếng vỏ đạn đồng rơi ngân.
HeroAttackCut heroId=H08 moveIndex=B (H08_COMBO_B_DINH/B_MUOI/B_MATRO… SFX_H08_a2_swingshot2504HeroAttack206−19nonefreesoundbriefPhát ổ B lẻ: cùng hoả mai, nghe nhẹ hơn và có tiếng ổ xoay đổi nấc trước; Phụt Mồi (2 ổ rỗng) = lẫy + phụt khói hụt hơi, không tiếng nổ, để người chơi biết ổ trống. KHÔNG được nghe như súng lục ổ quay hiện đại, tiếng tách ngòi pháo, hay tiếng bắn đồ chơi.
HeroAttackCut heroId=H08 moveIndex=PAIR (H08_COMBO_A_PAIR; AS2 H08_AS… SFX_H08_a3_swingshot4204HeroAttack204−17nonefreesoundbriefPhát cặp kết chuỗi: hoả mai tì vai bắn nặng, đẩy người lùi; luôn phát cùng `SFX_H08_combo_special` (lớp phản ứng). AS2 = nổ gọn sắc như xé vải dày (+6% pitch); AS3 = pháo tay trầm rộng (−8% pitch, thêm tail vòng nổ 150 ms). KHÔNG được nghe như đại bác chiến hạm, shotgun hiện đại có tiếng lên đạn, hay nổ điện tử.
HeroHitBatch heroId=H08 (HordeAudio §6.1 gộp mỗi frame; ăn kèm SFX_SH… SFX_H08_hithit1806HeroAttack304−20nonefreesoundbriefĐạn chì và hạt nhồi ghim vào bầy xác khô; 6 biến thể = 2 mỗi loại viên (Đinh/Muối/Ma Trơi), runtime chọn theo viên của phát. Trần 3 lần/50 ms (§6.1). KHÔNG được nghe như đạn bắn kim loại 'peng', máu văng ướt, hay tiếng kính vỡ.
HeroComboSpecial heroId=H08 branch=RX_DD|RX_DM|RX_DT|RX_MD|RX_MM|RX_M… SFX_H08_combo_specialexplode9009HeroAttack203−17nonesynthbrief9 biến thể CỐ ĐỊNH (không random): mỗi branch một file `SFX_H08_combo_special_0n` theo thứ tự RX_DD…RX_TT; người chơi học phản ứng qua tai. Nổ Muối (RX_MT) to nhất (−17), các cặp khác −19. KHÔNG được nghe như phép thuật điện tử lấp lánh, chuông, hay pháo hoa lễ hội có tiếng huýt dài.
HeroDash heroId=H08 (H08_DASH Lăn Ngang; xếp trên SFX_SHARED_dash_bas… SFX_H08_dashmove3204HeroAttack202−21nonefoleybriefPháo thủ áo dạ ôm súng lăn ngang 76 px trên nền tro sỏi; 3 viên mỗi hộp gỗ lắc nghe rõ = bản sắc. KHÔNG được nghe như whoosh gió, ninja lướt, hay xích kim loại.
HeroAnswerSuccess heroId=H08 (H08_ANSWER / H08_ANSWER_SHELL Nổ Chặn; … SFX_H08_answeranswer3803HeroDefense22−14nonesynthbriefPhát nổ chặn cự ly sát: không phải tiếng súng đầy, mà cú phụt nén đẩy văng đòn tới; nghe là biết 'đã chặn được'. Tổng với answer_core ≤ −12 mmax. KHÔNG được nghe như kim loại gạt kim loại, khiên chặn, hay tiếng súng a1 (phải khác rõ).
HeroCounter heroId=H08 (H08_COUNTER Hai Nòng Kề sau ĐÁP) SFX_H08_countershot6003HeroAttack22−15nonefreesoundbriefKề miệng loa sát ngực kẻ địch, xả 2 ổ liền: 'bùm-BÙM' như cú đấm đôi, đã nhất trong bộ âm H08 trừ Ult. KHÔNG được nghe như shotgun 2 nòng hiện đại (không tiếng bẻ nòng, không vỏ đạn), hay súng máy.
HeroHoldStart heroId=H08 (H08_HOLD Tì Báng Nạp) SFX_H08_hold_startmove2603HeroDefense201−18nonefoleybriefPháo thủ cắm báng súng xuống đất để trụ: chắc, nặng, gọn — báo 'đã vào thế không lùi'. KHÔNG được nghe như khiên kim loại dựng, tiếng gõ chuông, hay giậm chân nhảy.
HeroHoldStart heroId=H08 → loop tới HeroHoldEnd (dừng ngay khi thả/hu… SFX_H08_hold_looploop24001HeroDefense201−26nonefoleybriefNền giữ thế Tì Báng: kín đáo, cho biết đang trụ; loop 2.4 s mẫu-chính-xác 44.1 kHz (105840 mẫu). AS2 phát ×1.33 tốc tick (0.3 s) bằng đổi pitch +0% và lịch tick runtime. KHÔNG được nghe như tiếng tim đập, đồng hồ tích tắc to, hay hum phép thuật.
HeroHoldEnd heroId=H08 cancelled=false|true SFX_H08_hold_endmove2003HeroDefense201−22nonefoleybriefRời thế trụ, nhẹ hơn hold_start, không gây chú ý. KHÔNG được nghe như whoosh hay tiếng lên đạn.
HeroResource heroId=H08 kind=gain (nạp 1 viên: mốc Nạp ở clip load, t… SFX_H08_res_gaincast1406Hero202−24nonefoleybriefLẫy cơ khí nạp đạn: 6 biến thể = 3 loại viên × (thường, Nạp Nóng); 'cạch' Nạp Nóng phải nhận ra ngay khi nhả đúng cửa 0.10 s (thưởng tai). Trần 120 ms. KHÔNG được nghe như lên đạn súng trường hiện đại (bolt), tiếng xu rơi hay ui click điện tử.
HeroResource heroId=H08 kind=full (vào FULL_CHAMBERS Ổ Đầy 6/6; tính … SFX_H08_res_fullcast4202Hero201−20nonefoleybriefBáo Ổ Đầy: 2 hộp ổ đạn khoá chặt, sẵn sàng xả; biến thể 2 (PAIR_READY) chỉ còn transient 1 'cạch' −6 dB. KHÔNG được nghe như chuông báo, jingle UI hay tiếng sạc năng lượng.
HeroResource heroId=H08 kind=spend action=SWAP_TOP (H08_HEAVY_SWAP Đả… SFX_H08_res_spendcast2003Hero201−22nonefoleybriefĐảo thứ tự đạn bằng ngón tay ám khói, nhanh và lanh: nghe là biết phản ứng kế đã đổi. KHÔNG được nghe như xào bài, tiếng xu, hay click giao diện.
SkillCast skillId=H08_SK01 (Loa Sấm; hạng II–III = cùng âm + lớp swee… SFX_H08_SK01_castcast7602Hero202−17nonefreesoundbriefPhát loa sấm nón 100° đẩy lùi cả mảng bầy: tiếng nổ có 'thân' sấm nhưng ngắn gọn, không vang trời. KHÔNG được nghe như sấm sét thời tiết dài, loa phóng thanh điện, hay đại bác của Ult.
SkillCast skillId=H08_SK02 (Quạt Đinh) SFX_H08_SK02_castcast5603Hero202−17nonefreesoundbriefXả quạt đinh bay xa 220 px: nhiều mảnh nhỏ rít qua không khí, đọc hướng toả. KHÔNG được nghe như mưa tên gỗ, súng máy, hay phi tiêu kim loại 'ting'.
SkillCast skillId=H08_SK03 (Mưa Muối; phát 2 lần: H08_SK03_SALT khung… SFX_H08_SK03_castcast9002Hero202−18nonefreesoundbriefBắn muối lên cao rồi rơi như mưa xuống vùng r80: muối trắng, khô, giòn, rắc trừ tà. KHÔNG được nghe như mưa nước, kính vỡ, hay băng tuyết lạnh lấp lánh.
SkillCast skillId=H08_SK04 (Đèn Ma Rải Đường: thả = khung 7 sk04; lớp… SFX_H08_SK04_castcast7002Hero203−18nonesynthbriefRải đèn ma trơi xuống đường như mìn: tiếng lửa ma lặng, hơi rùng rợn nhưng nhẹ; nổ khi quái dẫm. KHÔNG được nghe như mìn bíp điện tử, nổ lựu đạn, hay lửa trại tí tách cam.
SkillCast skillId=H08_SK05 (Nhồi Đôi, kèm HeroComboSpecial nếu đủ 2 v… SFX_H08_SK05_castcast6802Hero202−16nonefreesoundbriefNhồi 2 viên vào 1 phát, kề sát mục tiêu: cú nổ quá tải làm người bắn lùi 1 bước. < 2 viên = biến thể 2 (−4 dB, không sub). KHÔNG được nghe như nổ bom, đại bác chiến hạm, hay súng thần công có tiếng xích kéo.
SkillCast skillId=H08_SK06 (Chống Báng: vào thế khung 0; lớp __impact… SFX_H08_SK06_castcast6002Hero203−17nonefoleybriefQuỳ cắm báng thành ụ pháo, ăn đòn trả đạn rồi dậm báng hất lùi; nặng, chắc, gỗ-đá. KHÔNG được nghe như khiên kim loại, tường đá dựng phép, hay giáp kêu loảng xoảng.
SkillCast skillId=H08_SK07 (Lăn Lửa Ma; vệt H08_SK07_TRAIL = lớp __im… SFX_H08_SK07_castcast7003Hero202−17nonesynthbriefLăn ngang kẹp viên Ma Trơi vạch đường lửa ma trên sàn: chất liệu lăn của `SFX_H08_dash` + lửa ma lặng. KHÔNG được nghe như lửa cam ầm ầm, động cơ phản lực, hay whoosh phép thuật lấp lánh.
SkillCast skillId=H08_SK08 (Nạp Một Hơi: 6 nhịp nạp khung 6–17 + xả v… SFX_H08_SK08_castcast11002Hero202−17nonefoleybriefNạp đầy 2 ổ trong 1 hơi: nhịp lẫy dồn dập leo cao là cao trào nhỏ của bộ âm tài nguyên, kết bằng cú xả khói. KHÔNG được nghe như súng máy lên đạn, đồng hồ lên dây, hay jingle level-up.
UltActivate ultId=H08_UL1 (Pháo Đêm Ma Trơi; cùng SFX_SHARED_ult_core… SFX_H08_UL1_volleyexplode40001Hero53−13nonefreesoundbriefPhát đại bác của Dov (bản sắc UL1 doc 32 §2.3): pháo thủ dựng nòng như cối, bắn 6 trái ma trơi lên đêm rồi nổ dồn xuống bầy; dàn đều 4.0 s đúng nhịp clip 120 frame. KHÔNG được nghe như pháo hoa lễ hội có huýt dài, bom máy bay, hay đại bác chiến hạm vang biển.
UltActivate ultId=H08_UL2 (Phát Cuối Đội Đèn; cùng SFX_SHARED_ult_cor… SFX_H08_UL2_lastshotexplode36001Hero53−13nonesynthbriefDồn trọn 9 cặp ổ vào 1 mục tiêu: chuỗi 9 phát như đọc tên 9 viên đạn, phát cuối là lời tiễn của đội đèn. Kết liễu dưới ngưỡng = thêm 'BÙM' sub ở phát 9 (runtime +2 dB). KHÔNG được nghe như súng máy, liên thanh hiện đại, hay nổ điện tử.
UltActivate ultId=H08_UL3 (Nòng Loa Vô Tận; vòng nổ khung 12; trong 9… SFX_H08_UL3_endlesscast18001Hero53−13nonesynthbriefMở trạng thái 9 s khẩu pháo không bao giờ cạn: ổ xoay rồ lên như máy, vòng nổ chuông bịt quanh chân. KHÔNG được nghe như chuông chùa ngân dài, động cơ xe, hay súng gatling quay.
HeroAttackCut heroId=H08 moveIndex=PAIR, SkillCast, UltActivate, Hero… SFX_H08_vo_effortvocal4505VO452−20noneoutsourcebriefPháo thủ trẻ ồn, liều, tự tin: hơi gắng khi giật báng, đôi lúc cười khẩy; KHÔNG có âm tiết của ngôn ngữ thật, không giọng AI tổng hợp. KHÔNG được nghe như la hét chiến binh, rên đau, hay giọng trẻ con.
HeroDamaged heroId=H08 (cùng SFX_SHARED_hero_hurt_impact) SFX_H08_vo_hurtvocal3505VO452−20noneoutsourcebriefTrúng đòn nhưng không gục: bực hơn là sợ. KHÔNG được nghe như thét kinh dị, rên kéo dài, hay ho.
HeroDeath heroId=H08 (cùng SFX_SHARED_hero_death + SN_DEATH) SFX_H08_vo_deathvocal11002VO451−20noneoutsourcebriefPháo thủ gục, vẫn cố cười như muốn nói 'chưa xong đâu': buồn mà không bi luỵ. KHÔNG được nghe như thét chết điện ảnh hay tiếng nấc kéo dài.

14Câu thoại (bark)

30 dòng
BarkKích hoạtCâu thoạiƯu tiênHồi s1 lần
run_start_1RunStart (rời ST_DOCK, phòng đầu Hồi I)Đếm đạn: sáu viên, đủ đường về.hero0—
run_start_2RunStart (chọn ngẫu nhiên 1/3)Chuông câm thì để pháo nói.hero0—
run_start_3RunStart (chọn ngẫu nhiên 1/3)Muối trước, Ma Trơi sau. Đi thôi!hero0—
level_up_1LevelUp (trước DraftOpen, chỉ khi không có boss/NPC bark trong 4 s)Ổ thêm nặng, tay thêm chắc.hero30—
level_up_2LevelUp (luân phiên)Lại học thêm một cách nổ hay.hero30—
level_up_3LevelUp khi vừa đạt phản ứng cặp mới lần đầu trong runGhi vào bảng cho Thầy Hol xem!hero60—
perfect_1HeroAnswerSuccess heroId=H08 perfect=true (Nổ Chặn đúng cửa 0.15 s)Chặn rồi! Giờ tới lượt tôi.hero20—
perfect_2HeroAnswerSuccess perfect=true targetTier=M|L|XLNổ sát mặt, đỡ đi!hero20—
perfect_3HeroAnswerSuccess perfect=true lần thứ 3 liên tiếp không trúng đònĐọc trúng nhịp rồi nhé.hero30—
perfect_dodgeHeroPerfectDodge heroId=H08 (nạp +1 viên)Hụt rồi! Thêm một viên cho tôi.hero25—
low_hp_1HeroLowHp hpPct ≤ 0.30 (lần đầu mỗi phòng)Còn hơi thì còn bắn.hero45—
low_hp_2HeroLowHp hpPct ≤ 0.30 (luân phiên)Đừng run, ngón tay… đừng run.hero45—
low_hp_3HeroLowHp hpPct ≤ 0.15Ổ chưa cạn, tôi chưa gục.hero60—
elite_1EliteSpawn (Tinh Anh EL_ vào tầm nhìn, sau stinger elite_in 1.0 s)Con to kìa. Nhồi Muối trước!hero30—
elite_2EliteSpawn (luân phiên)Đứng yên đó cho tôi đếm đạn.hero30—
elite_3EliteSpawn affixId=EM bất kỳ (có Ấn)Ấn trên đầu nó sáng quá… bắn tắt đi.hero40—
boss_intro_1BossIntro (sau dòng của boss, khung tên boss 2.0 s kết thúc)Chuông thật ở trên kia. Mày chắn đường.hero0—
boss_intro_2BossIntro (luân phiên)Ồn hơn tôi à? Thử xem nào.hero0—
boss_intro_3BossIntro khi UL2 đang lắpChín cặp, chín viên — đủ tiễn một con.hero0—
ult_volleyUltActivate ultId=H08_UL1 (khung 30 ul1, lần đầu mỗi phòng)Đêm nay có pháo hoa!hero60—
victory_1BossDefeated (khung 25 clip victory)Bắn đúng thứ tự thì người chết khỏi đi lạc.hero0—
victory_2BossDefeated (luân phiên)Một phát pháo hoa tiễn người ra đi.hero0—
victory_3RoomCleared nodeType=BOS hoặc MBS không trúng đòn tím nàoThấy chưa, pháo cũng biết khấn.hero0—
death_1HeroDeath heroId=H08 (khung 18 clip death, trước SN_DEATH tắt hẳn)Chưa… đếm xong mà…hero0—
death_2HeroDeath (luân phiên)Thắp giùm tôi một ngọn… đèn…hero0—
hub_wakeHub: clip wake xong tại ST_HEARTHLửa Canh còn ấm. Nạp lại thôi.hero0—
hub_ambrinHub: đi ngang khi H12 đã mở khoá (1 lần mỗi lượt về hub)Ồn hơn anh rồi nhé, Ambrin!hero0—
hub_holHubStationInteract stationId=ST_LEDGERViết lên bảng cho Thầy Hol: mười hai cặp!hero0—
hub_gremHubStationInteract stationId=ST_FORGELão Grem, nòng này loe thêm chút được không?hero0—
hub_unlockUnlockGranted id=H08 (mở hero ở ST_FORGE)Đội Đèn Đêm, pháo thủ Dov có mặt!hero0có