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

Halka

Lính Gác Chuông · giáo treo chuông (bell-spear polearm) · H03

Nhóm vai: REACHTài nguyên: Vang#3680e0Cập nhật: 2026-11-07
115
HP tối đa
138
Tốc chạy
3
Độ khó / 5
31
Đòn
40
Edge
41
VFX

1Định danh & tiểu sử

Danh hiệu
Lính Gác Chuông
Vũ khí
giáo treo chuông (bell-spear polearm)
Nhóm vai
REACH — cự ly mũi/đường, tay đôi mạnh
Độ khó
3/5
Mở khoá
KILL_BOSS · Hạ Người Gác Chuông (BS_B1) một lần, rồi trả 6 Mảnh Vọng cho Lão Grem ở Lò Rèn: thầy cũ được tiễn, Halka mới chịu rời nhà nguyện. · Mảnh Vang: 6
Mốc
Early Access 11.99 USD MS03
Verb tag
Combo COMBO · Lướt DASH · Đáp ANSWER · Phản COUNTER · Kỹ năng SKILL · Tài nguyên: Vang RES:TOLL

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

Trục T0
Trục R1
Trục V2
Trục S1
Trục D1
🎯
Pitch Nữ lính cuối cùng của Dòng Gác Chuông; mỗi cú gõ lan tiếng vọng phá nát cả hàng quái.

Tiểu sử

Halka lớn lên trong Nhà Nguyện Chuông Đá, học giáo từ thầy Nhạn, gọi Người Gác Chuông là cha nuôi. Đêm Câm, cả Dòng sa ngã; chỉ cô còn đứng gác. Thẳng như cán giáo, ít cười, giữ lời thề tới mức cứng đầu. Cô vẫn viết thư cho Thầy Hol dù ông điếc, và nghi Varek vì hắn từng gặt xác lính gác. Cô chiến đấu để gióng hồi chuông tiễn cuối cho chính đồng đội. "Chuông còn treo thì lính còn gác." · "Ba tiếng là đủ. Tiếng thứ ba để tiễn." · "Thầy ơi, đêm nay con gác thay thầy."

Câu nói

“Chuông còn treo thì lính còn gác.”RunStart heroId=H03 (rời Bến Đò ST_DOCK, sau thẻ Hồi I)
“Thầy ơi, đêm nay con gác thay thầy.”RunStart heroId=H03 (lần chạy thứ 2 trở đi, ngẫu nhiên 1/2)
“Khăn tang buộc chặt. Lính gác không than.”RunStart heroId=H03 khi có Khăn Tang ≥ 1 (MRN01–MRN15)
Ghi chú lệch có chủ đích

Ghi chú thiết kế H03 (2026-11-07). LỆCH BRIEF doc 12 §11.3 (có ngày 2026-11-07): (1) H03_SK01 coef 2.0 → 3.5 vì ngân sách doc 17 §4.2: bản 2.0 cho tỉ lệ DE 0.57 (ĐỎ), bản 3.5 = 0.848 XANH. (2) H03_SK05 LINE 110 × 14 → 110 × 11 để aoe ≤ 1.3 của nhóm tay đôi (110 × 14 = 1540 px² → aoe 1.34). (3) H03_SK06 aoe 1.95 > 1.3 của nhóm tay đôi: giữ vì doc 12 §10.3b đặt SK06 = SPIN_REPEL (thủ quanh thân); DE 0.853 XANH. (4) mass_verb = null: enum schema (GRAB/PULL/BURY/THROW/CUT) không có kích nổ; hàng Bible §5.2 'H03 Vỡ Âm' (S chết · M/L −30 Thế · XL −20 Thế, tích lại sau 4 s) nằm ở params của H03_VO_AM. (5) Slot HEAVY: Halka giữ ATTACK = AUTO_CHAIN nên vai HEAVY là A4 Cắm Sào (finisher); hàng H03_HEAVY_1 = Tháp Vang do A4 sinh (owner_ref H03_COMBO_A_4) để thoả slot bắt buộc. (6) portrait theo doc 12/51 (bust 64×64, thân 96×128); bản xuất select 192×192 của doc 30 §5.3 là ảnh dựng từ thân. MÔ HÌNH NGÂN SÁCH [ASSUMED]: 1 Vang = 0.5 coef-tương-đương/mục tiêu; 1 quái S chết vì Vỡ Âm = 1.4. Kết quả balance_calc (move_de): SK01 0.848 · SK02 0.893 · SK03 0.865 · SK04 1.161 · SK05 1.090 · SK06 0.853 · SK07 0.977 · SK08 0.824 (gồm ~16 Vang chuyển/6 s) · UL1 1.002 · UL2 0.858 (đơn mục tiêu 57 coef ≥ 55) · UL3 0.928 (gồm ~27 kẻ chết × 2 dấu × 2 Vang trong 9 s) — mọi mục XANH. ST [ASSUMED]: combo 11.0 coef/chu kỳ 155 tick (2.58 s); mũi 50% uptime → 12.25, Vang Dội ×1.1 trên ~85% cú → 51.5 HP/s; + 0.75 × (SK01 3.5/7 + SK05 10.5/8) = 13.6 → ST ≈ 65.1 (đích 63 ±5%: 59.9–66.2); combo = 79% ST. Loadout SK01 + SK03: ST ≈ 57.7 (thấp hơn dải, chấp nhận vì SK03 là khống chế). Vỡ Âm không gây sát thương lên M/L/XL (canon) nên không thổi phồng ST; Dư Âm +6/kẻ (≤ +24/lần) → ước 1 ult/48–52 s (sim chờ). A4 riêng lẻ DE 0.673 (đòn combo, không phải kỹ năng; giá trị nằm ở Tháp Vang + mở A5). Hồi nội bộ Vỡ Âm do đáp Nhảy Sào 1.2 s là [ASSUMED] của brief; chung cho verb giữ, A5, SK07. Thứ tự xử lý cùng tick: cộng Vang của cú trúng → kiểm Chín Vang → Vỡ Âm (tick kế, trễ 3 tick/bước lan). 2026-11-07 - Review heroes-a: A5 chung hồi chiêu 1.2 s với verb giữ (params.shared_cd); token huỷ đổi ATTACK@n → COMBO_A@n (Lướt → DASH_ATTACK@0) và thêm DASH@0/ANSWER@0/HOLD@0 + SKILL/ULT/MOVE sau 60% recovery như H01/H02. ST không đổi khi không dùng verb giữ (chu kỳ combo 2.58 s > 1.2 s); dùng verb giữ trong 1.2 s trước A4 thì chu kỳ mất A5 (−2.5 coef). 2026-11-07 - Sửa W4c: tên anim theo doc 30 §5 / av/H03__actor_sfx.json (attack4, attack5, hold_in, sk01–sk08, ul1–ul3, as2_fin, as3_fin); visual.clips dựng lại từ actors[H03].clips của file AV (hit_frames = hits; victory thay victory_idle; dirs = "1" cho clip AV ghi "Chỉ hướng se", còn lại "5+3" — chọn theo AV thay vì ép mọi clip "5+3"); H03_COMBO_A_5 thêm cờ follow_up (đòn nối sau finisher A4, doc 12 Q30); mastery bỏ MR13/MR14/MR17/MR19 (id mỹ phẩm chưa định nghĩa), MR20 chỉ còn SKN_H03_4 (tước hiệu ở title_mr20_vi).

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

Màu slot
#3680e0 hue 214°
Vòng chân
#6eb4ff r 12 px
Sprite
38 px cao
Chân dung
bust 64/64 · body 96/128 · viền #6eb4ff
Trang phục pixelfx
Tools/pixelfx/src/fx/heroes/_halka.js
🎨
Khoá hình Silhouette 38 px (rộng 22): mũ sắt cổ cao che gáy, áo choàng ngắn lam cắt ngang hông, giáp vải chần màu tro dưới choàng, ủng buộc dây; giáo dài nhất roster 65 px (1.8 × thân, cán gỗ sồi 52 px + mũi lá hẹp 13 px) treo 3 chuông đồng nhỏ 3×3 px ở cổ mũi, chuôi cán bịt đồng hình chuông úp nhỏ (dùng cắm sào). Đọc ở góc 3/4: giáo luôn chéo qua thân về hướng ngắm, mũi giáo + 3 chuông là điểm sáng slot duy nhất trên vũ khí; choàng lam là khối màu lớn nhất để tìm hero giữa 250 quái; vòng chân r5 #6eb4ff. Đứng yên: giáo dựng thẳng, chuôi chạm đất, tay trái đặt lên chuông. Chân dung bust 64×64: 3/4 mặt phải, mũ đẩy lên trán, sẹo mảnh ở cằm, mắt xám lam nghiêm; 3 biểu cảm neutral/resolve/grief. Tư thế màn chọn hero (thân 96×128): cắm chuôi giáo xuống sàn, người ngả theo cán như sắp nhảy sào, tay gõ chuông, sóng ngân slot lan dưới chân (gợi Gõ Chuông). Palette: choàng = ramp slot r6/r5/r3/r1; mũ/mũi giáo PAL.metal lạnh S ≤ 30%; cán gỗ sồi S ≤ 41%; da ấm hue ≤ 31°; chuông đồng sáng = r7 + lõi #fff6f0. BẮT BUỘC: 3 chuông trên giáo, cán dài ≥ 1.6 × thân, mũ sắt cổ cao. CẤM: giáo ngắn hơn 1.6 × thân; lưỡi giáo cong/lưỡi liềm; cánh/hào quang thiên thần; mặt nạ che kín mặt; khiên; chuông lớn đeo lưng; áo giáp tấm sáng bóng kiểu hiệp sĩ; tóc dài bay; mọi pixel S ≥ 45% trong hue 32–62° hoặc 260–290° (dải tell); chuông vàng kim (đồng = ramp slot + ngà). Không được gợi bất kỳ nhân vật có sẵn nào: không phối giáo + sét/lửa + giáp vàng.
Ramp màu HalkaRamp màu Halkacloakcloak #a8d7ff#a8d7ffcloak #6eb4ff#6eb4ffcloak #295aa8#295aa8cloak #102347#102347metalmetal #d8dce4#d8dce4metal #9aa3b4#9aa3b4metal #5e6678#5e6678metal #2e3340#2e3340woodwood #c8ad8c#c8ad8cwood #a88a6c#a88a6cwood #7a5f48#7a5f48wood #4e3c30#4e3c30skinskin #ffe2c4#ffe2c4skin #f8c9a0#f8c9a0skin #e0a074#e0a074skin #a8664a#a8664a
visual.palette_ramps

Skin

Rêu Nhà Nguyện

SKN_H03_1
LUT_H03_chapel_moss
currency CUR_VIGIL_CANDLE, cost 30

Sương Tháp Canh

SKN_H03_2
LUT_H03_watch_frost
currency CUR_VIGIL_CANDLE, cost 45

Đêm Gác Cuối

SKN_H03_3
LUT_H03_last_night
currency CUR_VIGIL_CANDLE, cost 60

Ngà Tiễn Đưa

SKN_H03_4
LUT_H03_ivory
mr MR20
Clip hoạt ảnh (36) — số khung
Số khung theo clipSố khung theo clipidleidle: 3636runrun: 2424dashdash: 99attack1attack1: 3030attack2attack2: 3030attack3attack3: 3636attack4attack4: 4545attack5attack5: 3030dash_attackdash_attack: 2424answeranswer: 1212hold_inhold_in: 88hold_loophold_loop: 1212hold_outhold_out: 66countercounter: 2424sk01sk01: 3030sk02sk02: 1212sk03sk03: 3030sk04sk04: 3030sk05sk05: 3636sk06sk06: 4040sk07sk07: 2626sk08sk08: 1212ul1ul1: 6060ul2ul2: 5454ul3ul3: 1515as2_finas2_fin: 3636hurthurt: 99brokenbroken: 2727deathdeath: 4545reviverevive: 3636victoryvictory: 4848answer_hitanswer_hit: 1818wakewake: 3636hub_idlehub_idle: 7272selectselect: 4848as3_finas3_fin: 4545
visual.clips
36 dòng
ClipKhungLặpKhung trúngHướng
idle36có—5+3
run24có—5+3
dash9——5+3
attack130—35+3
attack230—35+3
attack336—45+3
attack445—65+3
attack530—105+3
dash_attack24—25+3
answer12—05+3
hold_in8——5+3
hold_loop12có—5+3
hold_out6——5+3
counter24—35+3
sk0130—51
sk0212—05+3
sk0330—75+3
sk0430—65+3
sk0536—155+3
sk0640—4/11/19/261
sk0726——5+3
sk0812—05+3
ul160—18/27/36/45/541
ul254—6/9/12/15/18/21/24/27/335+3
ul315—81
as2_fin36—51
hurt9——5+3
broken27có—5+3
death45——5+3
revive36——1
victory48——1
answer_hit18—05+3
wake36——1
hub_idle72có—1
select48có—1
as3_fin45—75+3

3Chỉ số & khung vai trò

Chỉ số Halka so với khungMỗi trục chia theo max của 12 heroHalkaKhung nhóm (max)Khung nhóm (min)TB 12 heroHP_MAXMOVE_SPEEDANSWER_WINDOWdash_pxHalkaHalka · HP_MAX: 115Halka · MOVE_SPEED: 138Halka · ANSWER_WINDOW: 0.16Halka · dash_px: 90Khung nhóm (max)Khung nhóm (max) · HP_MAX: 115Khung nhóm (max) · MOVE_SPEED: 145Khung nhóm (max) · ANSWER_WINDOW: 0.16Khung nhóm (max) · dash_px: 90Khung nhóm (min)Khung nhóm (min) · HP_MAX: 105Khung nhóm (min) · MOVE_SPEED: 138Khung nhóm (min) · ANSWER_WINDOW: 0.15Khung nhóm (min) · dash_px: 80TB 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 (Halka, Sậu).
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 đa115HP
115
100 – 160105 – 115
MOVE_SPEEDTốc chạy138px sàn/s
138
130 – 145138 – 145
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.16s
0.16
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—90—
90
72 – 9080 – 90

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

Thanh VangThanh Vang 0–3, ngưỡng trạng tháiVang Dội ≥ 2Chín Vang ≥ 303khởi đầu 02 · Vang Dội3 · Chín Vang
resource.thresholds
Tài nguyên
Vang TOLL · kiểu ON_ENEMY
Khoảng
0 – 3 (bắt đầu 0)
Suy giảm
sau 6 s: −3/s, sàn 0
Khi trúng đòn
0
ĐÁP
1
Né hoàn hảo
1
Sự kiện đầy
detonate
HUD
ON_ENEMY · hud_bottom_left_beside_hp
Liên kết Dư Âm
Dư Âm +6 mỗi kẻ Vỡ Âm (≤ +24 mỗi lần kích, tính cả dây chuyền); chung: ĐÁP thành công +4, Né Hoàn Hảo +4. Mục tiêu nạp đầy 45–55 s ở Lv10.
Nguồn nạp Vang (mỗi sự kiện)Nguồn nạp Vang (mỗi sự kiện)attackattack: 11combo_endcombo_end: 11answeranswer: 11hold_endhold_end: 11countercounter: 33skill_hitskill_hit: 11perfect_dodgeperfect_dodge: 11
resource.gain
Sự kiệnLượngTrần/sGhi chú
attack1—Mỗi cú chọc combo/Đánh sau Lướt trúng: +1 Vang lên mỗi kẻ trúng; trúng bằng đoạn mũi (A1–A2 70–90 px, A3 76–96 px, Đánh sau Lướt 80–100 px): +2 Vang thay vì +1 và sát thương ×1.5.
combo_end1—Cắm Sào (A4) trúng: +1 Vang; Tháp Vang để lại xung r80 mỗi 1.5 s, +1 Vang mỗi xung (4 xung/6 s).
answer1—Gõ Chuông thành công: xung r48 tâm tại kẻ tấn công, +1 Vang mọi kẻ trong xung (đạn: tại kẻ bắn nếu ≤ 300 px).
hold_end1—Nhảy Sào (verb giữ, A5, SK07): +1 Vang lên mỗi kẻ bị vượt qua (dải 60/90 px × 24 px dưới cung vọt).
counter3—Đâm Chuông: mục tiêu chính +3 Vang; xung r48 quanh nó +1 Vang.
skill_hit1—Kỹ năng trúng: theo từng kỹ năng (SK05 mũi kim +3 Vang).
perfect_dodge1—Né Hoàn Hảo: +1 Vang lên kẻ gần nhất trong r90.

Tiêu

Hành độngGiáThiếu vẫn dùngGhi chú
VO_AM3khôngVỡ Âm tiêu đủ 3 Vang trên kẻ đó (AS2: 2). Kích khi Gõ Chuông TRÚNG (r90 quanh Halka) hoặc khi Halka đáp Nhảy Sào (r90 quanh điểm đáp, hồi nội bộ 1.2 s chung mọi nguồn vọt). ĐÁP hụt không kích gì.
UL2_TOLL3cóHồi Chuông Tiễn tự tích và tiêu Vang trên mục tiêu ghim, không cần trigger.

Trạng thái theo ngưỡng

Vang Dội ≥ 2

Kẻ mang ≥ 2 Vang nhận thêm 10% sát thương từ Halka.

Chín Vang ≥ 3

Kẻ đủ 3 Vang sẵn sàng Vỡ Âm: chuông pip sáng đủ 3 chấm và rung; Gõ Chuông trúng hoặc cú đáp Nhảy Sào trong r90 kích nổ.

Nội tại: Vang Dội

H03_PASSIVEvang_min: 2dmg_pct: 10sources: H03_ALL
Kẻ mang 2–3 Vang nhận thêm 10% sát thương từ mọi đòn của Halka.

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

ĐÁP: Gõ Chuông

ANSWER · ANSWER H03_ANSWERcenter: ATTACKERproj_center_max_px: 300proj_fallback: PROJECTILE_POINTvang_add: 1

Kết quả chung (S choáng 1.0 s + đẩy 30 px; M −45 Thế; L −40; XL −35) + xung chuông r48 TÂM TẠI kẻ tấn công: +1 Vang mọi kẻ trong xung; xong xung, mọi kẻ Chín Vang trong r90 quanh Halka Vỡ Âm và lan dây chuyền. Mở Phản Đâm Chuông 1.0 s.

Đạn vỡ tan thành mảnh chuông lam; xung r48 đặt tại kẻ bắn nếu ≤ 300 px, nếu không tại điểm đạn; +1 Vang trong xung; Vỡ Âm r90 quanh Halka như cận chiến; không mở Phản.

Xung chuông đặt tại kẻ tấn công (không quanh thân) cấy Vang vào cả cụm phía sau nó và là 1 trong 2 cò kích Vỡ Âm dây chuyền; chỉ Gõ Chuông TRÚNG mới kích.

window_s
0.16
poise_dmg_override
M 45, L 40, XL 35
res_gain
1
needs_resource
không
ĐÁP: Gõ ChuôngĐÁP: Gõ Chuông16 px32 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 48sàn 3/4 · ry = rx × 0.5

Giữ: Nhảy Sào

VAULT · HOLD H03_HOLD_VAULThold_key: hold.pole_vaultdefense_effect: VAULT_IFRAMEdefense_sub: dist_px: 60dir: MOVE_INPUT_ELSE_AIMinvuln_s: 0.35vang_add_vaulted: 1pass_w_px: 24land_detonate_r: 90land_detonate_icd_s: 1.2dash_cancel: AFTER_LANDINGshared_cd: H03_HOLD_VAULT

Không tốn Thế; hồi chiêu 1.2 s tính từ lúc đáp, dùng chung với A5 Nhảy Sào Bổ của combo (ra A5 cũng đặt hồi này).

Bất tử suốt cung vọt 0.35 s nên vượt được cả đòn tím; không tính Né Hoàn Hảo. Đáp xuống trong vùng tím vẫn trúng nếu vùng còn hiệu lực.

mechanic
LEAP
armor_tier
INVULN
move_mult
0
max_s
0.35
cooldown_s
1.2

Phản: Đâm Chuông

COUNTER · COUNTER H03_COUNTER
lunge_px
48
damage_eq
180
Phản: Đâm ChuôngPhản: Đâm Chuông32 px64 px96 px128 pxLINEhurtbox r 7shape LINE p0 [0, 0] p1 [120, 0] w 20sàn 3/4 · ry = rx × 0.5

Lướt

DASH · DASH H03_DASH
dash_px
90
anim
dash
afterimage
có
trail_vfx
VFX_H03_dash_pole
Ghi đè input (input_override)
attack_hold_ticks
12
attack_hold_action
AUTO_CHAIN
place_min
32
place_default
96
place_max
160
Kiểu bấm kỹ năng
H03_SK01 TAP · H03_SK02 TAP · H03_SK03 TAP · H03_SK04 TAP · H03_SK05 HOLD · H03_SK06 TAP · H03_SK07 TAP · H03_SK08 TAP

6Bộ đòn & frame data

Frame data Halka · COMBO_AFrame data Halka · COMBO_Akhởi (startup)hiệu lực (active)hồi (recovery)0 t10203040A1 Chọc MởA1 Chọc Mở · startup 6t · coef 1.5A1 Chọc Mở · active 4t · coef 1.5A1 Chọc Mở · recovery 14t · coef 1.524tA2 Chọc NốiA2 Chọc Nối · startup 5t · coef 1.5A2 Chọc Nối · active 4t · coef 1.5A2 Chọc Nối · recovery 14t · coef 1.523tA3 Chọc XoắnA3 Chọc Xoắn · startup 8t · coef 2A3 Chọc Xoắn · active 5t · coef 2A3 Chọc Xoắn · recovery 16t · coef 229tA4 Cắm SàoA4 Cắm Sào · startup 11t · coef 3.5A4 Cắm Sào · active 5t · coef 3.5A4 Cắm Sào · recovery 22t · coef 3.538tA5 Nhảy Sào BổA5 Nhảy Sào Bổ · startup 20t · coef 2.5A5 Nhảy Sào Bổ · active 3t · coef 2.5A5 Nhảy Sào Bổ · recovery 18t · coef 2.541t
Tick = 1/60 s (doc 12 §3.1) · khởi / hiệu lực / hồi
31 dòng
31 đò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ú
Chọc Mở H03_COMBO_A_1COMBO_A64140.41.5LIGHTLINE p0 10/0 p1 90/0 w 164860.0350NONECOMBO_A@10/SKILL@18/ULT@18/MOVE@18atk_speed_scales/pierceChọc thẳng xuyên hàng 90 px; đoạn mũi 70–90 px (20 px cuối) ×1.5 và +2 Vang thay +1 — VFX tia mũi sáng r7 khi trúng đoạn mũi.
Chọc Nối H03_COMBO_A_2COMBO_A54140.3831.5LIGHTLINE p0 10/0 p1 90/0 w 164860.0350NONECOMBO_A@9/SKILL@17/ULT@17/MOVE@17atk_speed_scales/pierceChọc rút về rồi đâm lại, mũi lệch 6 px sang phải A1 để 2 nhát phủ hàng rộng hơn.
Chọc Xoắn H03_COMBO_A_3COMBO_A85160.4832MEDIUMLINE p0 10/0 p1 96/0 w 1848100.0450.22NONECOMBO_A@13atk_speed_scales/pierceXoắn cán đâm sâu 96 px, 3 chuông kêu 1 hồi; SFX = a2_swing pitch +4% (doc 32 §4.4, chuỗi dài).
Cắm Sào H03_COMBO_A_4COMBO_A115220.6333.5HEAVYCIRCLE r 56 off_fwd 4048250.070.28FIRMCOMBO_A@16/SKILL@29/ULT@29/MOVE@29finisher/shieldbreak/atk_speed_scalesĐòn kết + vai HEAVY của Halka (doc 12 §1.2): cắm chuôi chuông xuống sàn trước mặt, nổ r56, để lại Tháp Vang r80 6 s. Chạm ATTACK trong 36 tick (0.6 s) từ đầu recovery → A5 Nhảy Sào Bổ, CHỈ khi hồi chiêu chung Nhảy Sào (H03_HOLD_VAULT, 1.2 s) đã sẵn; đang hồi hoặc không chạm → recovery A4 trả combo về A1 (COMBO_A@16 = A1). Icon verb giữ trên HUD mờ = A5 chưa sẵn.
Nhảy Sào Bổ H03_COMBO_A_5COMBO_A203180.6832.5HEAVYCIRCLE r 4048150.070.28INVULNDASH@23/ANSWER@23/COMBO_A@23airborne/follow_upChống sào vọt 60 px qua đầu quái (bất tử 18 tick, AIRBORNE), rút giáo khỏi sàn và bổ xuống r40; kẻ bị vượt +1 Vang; cú đáp kích Vỡ Âm r90 (hồi nội bộ 1.2 s chung với verb giữ/SK07). Tháp Vang của A4 vẫn ở lại: tháp là tiếng ngân đọng tại điểm cắm, không phải cây giáo. 2026-11-07 - A5 dùng CHUNG hồi chiêu 1.2 s với verb giữ Nhảy Sào (params.shared_cd = H03_HOLD_VAULT, tính từ lúc đáp): ra A5 thì Nhảy Sào giữ vào hồi 1.2 s và ngược lại; đang hồi thì A5 không ra (A4 trả combo về A1). Tổng ngân sách vọt bất tử của combo + verb giữ = 1 lần/1.2 s, đánh thường không thành i-frame miễn phí (TT3, DU tells giữ nguyên áp lực). Huỷ: không trung khoá mọi ô (doc 12 §3.2) tới tick 23 (đáp + active); không có HOLD@ vì hồi chung vừa bắt đầu.
Tháp Vang H03_HEAVY_1HEAVY0360060LIGHTCIRCLE r 8048000NONE——Vật do cú HEAVY A4 sinh: cột ngân lam r80 tại điểm cắm, xung mỗi 1.5 s (tick 0/90/180/270) +1 Vang mọi kẻ trong r80, 0 sát thương; tối đa 1 tháp từ combo (tháp mới thay tháp cũ). Fill sàn đặc ≤ 45% + viền slot 1 px (FX-04).
Lướt Vọt Sào H03_DASHDASH0930.20LIGHTNONE48000INVULNDASH@6/DASH_ATTACK@0—Lướt chung INV-12: chống cán đẩy mình trượt thấp 90 px, chuông rung. Khác hero khác chỉ anim + cự ly.
Chọc Lướt H03_DASH_ATTACKDASH_ATTACK44130.351.8MEDIUMLINE p0 0/0 p1 100/0 w 244880.0450.22NONECOMBO_A@8atk_speed_scales/pierceATTACK trong 9 tick cuối Lướt hoặc ≤ 9 tick sau: đâm dài 100 × 24 xuyên hàng theo đà Lướt; tính là bước 1 combo (cú kế = A2).
Gõ Chuông H03_ANSWERANSWER01060.2670ANSWERCIRCLE r 4848450.080.25NONE——Chạm RB/RMB: cửa sổ W 10 tick, bảo vệ 360°. Halka xoay cán gõ chuông về phía mối đe doạ vàng gần nhất; xung r48 nổ TẠI kẻ tấn công. Thành công → Vỡ Âm r90 quanh Halka. Hụt: khoá ĐÁP 18 tick, không kích gì.
Nhảy Sào H03_HOLD_VAULTHOLD02180.4830LIGHTLINE p0 0/0 p1 60/0 w 2448000.12INVULNDASH@21airborneCòn giữ RB ở tick W: cắm chuôi, vọt cung 60 px theo hướng nhập (không nhập → hướng ngắm), bất tử 21 tick (0.35 s, khoá Lướt tới khi đáp). Dải dưới cung +1 Vang; cú đáp kích Vỡ Âm r90. Hồi 1.2 s từ lúc đáp, CHUNG với A5 Nhảy Sào Bổ (A5 ra cũng đặt hồi này).
Đâm Chuông H03_COUNTERCOUNTER55180.46714COUNTERLINE p0 0/0 p1 120/0 w 2048300.120.45INVULN—shieldbreak/pierceATTACK trong cửa sổ Phản 1.0 s: lao 48 px (bất tử từ input tới hết active) đâm xuyên 120 × 20 vào mục tiêu ✦; mục tiêu +3 Vang (Chín Vang ngay).
Đâm Chuông — Hồi Ngân H03_COUNTER_PULSECOUNTER5300.1334COUNTERCIRCLE r 484800.120.45INVULN—shieldbreakCùng tick với Đâm Chuông: chuông trên mũi giáo ngân, xung r48 tâm tại mục tiêu; tổng 14 + 4 = 18 × Lực = 180 tương đương (khuôn 11 §2.6).
Vỡ Âm H03_VO_AMRESOURCE0100.0170MEDIUMCIRCLE r 90128300.0450.25NONE——Kẻ Chín Vang trong r90 quanh điểm kích: S chết ngay (bất kể HP), M/L −30 Thế, XL −20 Thế và chỉ tích Vang lại sau 4 s; Vang về 0. Mỗi kẻ vỡ lan sang mọi kẻ Chín Vang trong r90 của nó, trễ 3 tick/bước (pháo hoa lam lan dần). Duy nhất H03 có kích nổ lan (Bible #38).
Hồi Chuông Lan H03_SK01_RINGSKILL1030140.93.5SKILLRING r 140 band 244880.030.22NONE——Gõ cán xuống sàn: vòng ngân lan r0 → r140 trong 30 tick, trúng mỗi kẻ 1 lần khi mép vòng chạm.
Gióng Ba Hồi H03_SK02_CASTSKILL124140.53SKILLCIRCLE r 16064100.040.3NONE——Gõ 3 hồi liền: xung r160 +1 Vang; trong 3 s, kẻ trong r160 quanh Halka vừa đạt ≥ 2 Vang tự Vỡ Âm (không cần cò), lan dây chuyền như thường.
Chuông Nín H03_SK03_HUSHSKILL144120.53SKILLCIRCLE r 10048200.050.3NONE——Úp tay lên chuông, xung câm r100 tại điểm ≤ 160 px: S đang windup < 50% bị huỷ và không bắt đầu windup mới 1.5 s; M −20 Thế; L/XL −15 Thế; +1 Vang. Không huỷ được đòn Y sau glint 2 (tell trung thực).
Tháp Canh Chuông — Phóng H03_SK04_THROWSKILL126120.51SKILLCIRCLE r 244850.030.12NONE——Phóng giáo phụ treo 1 chuông cắm tại điểm ≤ 140 px; cú cắm r24 rồi thành tháp.
Tháp Canh Chuông — Xung H03_SK04_TOWERSKILL0480081SKILLCIRCLE r 804840.020NONE——Tháp 8 s, xung mỗi 1.0 s: 1.0 × Lực, +1 Vang, huỷ windup S < 50% trong r80. Cộng dồn với Tháp Vang của A4 (2 tháp khác nguồn).
Mũi Kim Chuông H03_SK05_NEEDLESKILL64160.4337SKILLLINE p0 0/0 p1 110/0 w 1148300.070.3NONE—shieldbreak/charge/pierceGiữ nạp 0.4 s (đi ×0.6, xoay ≤ 720°/s), nhả: đâm kim 110 × 11; đoạn 90–110 px ×1.5 và +3 Vang ngay; thân giáo +1 Vang. Nhả trước 0.4 s: ra bản không nạp ×0.6.
Xoay Sào Hộ H03_SK06_SPINSKILL860121.3331.2SKILLRING r 64 band 4048100.030.12FIRM——Cắm sào, xoay thân quanh cán 1.0 s (4 nhịp/15 tick), FIRM, không giảm sát thương; mỗi nhịp đẩy S/M trong r64 ra mép r88, +1 Vang.
Bước Sào Đôi — Vọt H03_SK07_VAULTSKILL01800.30SKILLLINE p0 0/0 p1 90/0 w 2448000INVULN—airborne2 lần Nhảy Sào 90 px (lần 2 bấm lại trong 30 tick sau khi đáp), mỗi lần bất tử 18 tick, +1 Vang kẻ bị vượt; không dùng hồi chiêu verb giữ.
Bước Sào Đôi — Đáp H03_SK07_LANDSKILL03100.2171.5SKILLCIRCLE r 404880.040.22NONE——Mỗi cú đáp r40; cú đáp đầu tiên ngoài hồi nội bộ 1.2 s kích Vỡ Âm r90.
Truyền Vang H03_SK08_CASTSKILL104120.4331.5SKILLCIRCLE r 964850.030.12NONE——Xung r96 +1 Vang; 6 s: kẻ mang Vang chết (kể cả chết vì Vỡ Âm, khi đó chuyển trước lúc Vang về 0) → Vang của nó chuyển sang 2 kẻ gần nhất trong r80 (mỗi kẻ nhận đủ số đó, trần 3).
Đại Hồng Chung — Rơi H03_UL1_IMPACTULT36400.6678ULTCIRCLE r 130128400.10.8INVULN—shieldbreakBóng chuông đặc màu slot trên sàn 0.6 s (không phải tell địch), chuông đồng khổng lồ rơi r130: 8.0 × Lực, mọi kẻ +3 Vang rồi Vỡ Âm lan ngay.
Đại Hồng Chung — Ngân H03_UL1_TOLLULT54541226ULTRING r 130 band 30128100.050.45INVULN—shieldbreak/rehitChuông ngân 4 hồi (tick 54/72/90/108), vòng r40 → r130, mỗi hồi 6.0 × Lực + 1 Vang; hồi 4 kích Vỡ Âm lần 2. Tổng clip 120 tick, bất tử toàn bộ.
Hồi Chuông Tiễn — Chọc H03_UL2_POKEULT1254421.85ULTLINE p0 0/0 p1 100/0 w 12160.030.3INVULN—shieldbreak/rehitGhim mục tiêu chính (ưu tiên M/L/XL trong 140 px) tại chỗ 1.8 s; 9 cú chọc mũi (6 tick/cú) mỗi cú +1 Vang.
Hồi Chuông Tiễn — Vỡ H03_UL2_TOLLULT2454301.84ULTPOINT1300.10.55INVULN—shieldbreak/execute/rehitSau cú 3, 6, 9: Vỡ Âm riêng trên mục tiêu (4.0 × Lực, −30 Thế, bỏ luật tích lại 4 s của XL); cú cuối kết liễu ≤ 15% (M ≤ 15%, L ≤ 10%, XL: ×1.5 khi HP ≤ 20%).
Lính Gác Cuối — Kích H03_UL3_CASTULT104160.52ULTCIRCLE r 96128200.080.45INVULN—shieldbreakClip kích 30 tick bất tử: dựng giáo, 3 chuông ngân cùng lúc, xung r96 +2 Vang.
Lính Gác Cuối — Tháp Theo Người H03_UL3_PULSEULT0540091.5ULTCIRCLE r 8012840.020NONE—rehitTrong dạng 9 s: Tháp Vang r80 dính theo Halka, xung mỗi 1.0 s 1.5 × Lực +1 Vang.
Xoay Song Chuông H03_AS2_A4_TWINASPECT95180.5333.5HEAVYCIRCLE r 6048250.070.28FIRMCOMBO_A@14finisher/shieldbreak/atk_speed_scalesDạng Giáo Chuông Đôi thay A4: xoay giáo ngắn quanh thân, 2 chuông quét r60 quanh Halka (không dựng tháp); A5 giữ nguyên.
Cắm Móc Tháp H03_AS3_A4_HOOKASPECT135260.7333.5HEAVYCIRCLE r 56 off_fwd 4848250.070.28FIRMCOMBO_A@18finisher/shieldbreak/atk_speed_scalesDạng Giáo Móc Chuông thay A4: móc ngược cắm sâu, Tháp Vang r100 (VFX plant_tower bậc cỡ 1.3, 0 sheet mới).

78 kỹ năng

Hồi chiêu 8 kỹ năngHồi chiêu 8 kỹ năngHồi Chuông LanHồi Chuông Lan: 7 s7 sGióng Ba HồiGióng Ba Hồi: 9 s9 sChuông NínChuông Nín: 9 s9 sTháp Canh ChuôngTháp Canh Chuông: 12 s12 sMũi Kim ChuôngMũi Kim Chuông: 8 s8 sXoay Sào HộXoay Sào Hộ: 10 s10 sBước Sào ĐôiBước Sào Đôi: 6 s6 sTruyền VangTruyền Vang: 8 s8 s
skills[].cooldown_s

Hồi Chuông Lan

H03_SK01CLEARHồi: 7 sGiá: 0Bấm: TAP
mechanic_key skill.shockwave
IVòng ngân lan tới r140 trong 0.5 s: 3.5× Lực mỗi kẻ, +1 Vang. Hồi 7 s.IIVòng ngân lan tới r160 trong 0.5 s: 4.2× Lực mỗi kẻ, +1 Vang. Hồi 6.5 s.IIIVòng ngân lan tới r160 trong 0.5 s: 4.2× Lực mỗi kẻ, +1 Vang. Hồi 6.5 s. Vòng dội ngược về sau 0.6 s, ×0.5.

Hạng III: Hạng III: vòng chạm r160 thì dội ngược về tâm (cùng sheet chạy ngược), 0.5× sát thương, +1 Vang lần nữa.

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

Hitbox Hồi Chuông LanHitbox Hồi Chuông Lan40 px80 px120 px160 pxRINGRINGhurtbox r 7shape RING r 140 band 24sàn 3/4 · ry = rx × 0.5

Gióng Ba Hồi

H03_SK02CLEARHồi: 9 sGiá: 0Bấm: TAP
mechanic_key skill.chain_detonate
I3 hồi chuông r160: 3× Lực, +1 Vang; 3 s sau, kẻ đạt 2 Vang tự Vỡ Âm. Hồi 9 s.II3 hồi chuông r180: 3.6× Lực, +1 Vang; 3.5 s sau, kẻ đạt 2 Vang tự Vỡ Âm. Hồi 8.5 s.III3 hồi chuông r180: 3.6× Lực, +1 Vang; 3.5 s sau, kẻ đạt 2 Vang tự Vỡ Âm. Hồi 8.5 s. Vỡ Âm lan xa r110.

Hạng III: Hạng III: trong thời gian hiệu lực, bán kính lan dây chuyền 90 → 110 px.

Đòn: · SKILL H03_SK02_CAST · VO_AM · RESOURCE H03_VO_AM · Tag: Kỹ năng SKILL · Dây chuyền CHAIN

Hitbox Gióng Ba HồiHitbox Gióng Ba Hồi48 px96 px144 px192 pxCIRCLEhurtbox r 7shape CIRCLE r 160sàn 3/4 · ry = rx × 0.5

Chuông Nín

H03_SK03CONTROLHồi: 9 sGiá: 0Bấm: TAP
mechanic_key skill.interrupt
IXung câm r100 tại điểm ≤ 160 px: 3× Lực, huỷ windup quái thường, khoá windup 1.5 s; Tinh Anh −20 Thế. Hồi 9 s.IIXung câm r120 tại điểm ≤ 160 px: 3.6× Lực, huỷ windup quái thường, khoá windup 1.8 s; Tinh Anh −24 Thế. Hồi 8.5 s.IIIXung câm r120 tại điểm ≤ 160 px: 3.6× Lực, huỷ windup quái thường, khoá windup 1.8 s; Tinh Anh −24 Thế. Hồi 8.5 s. Xoá đạn vàng của quái thường trong vùng.

Hạng III: Hạng III: xung câm xoá luôn đạn vàng (Y) của quái thường đang bay trong vùng; đạn Tinh Anh/boss không bị xoá.

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

Hitbox Chuông NínHitbox Chuông Nín32 px64 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 100sàn 3/4 · ry = rx × 0.5

Tháp Canh Chuông

H03_SK04CONTROLHồi: 12 sGiá: 0Bấm: TAP
mechanic_key skill.totem
ICắm giáo phụ ≤ 140 px: tháp r80 8 s, xung mỗi 1 s 1× Lực +1 Vang. Hồi 12 s.IICắm giáo phụ ≤ 140 px: tháp r96 9 s, xung mỗi 1 s 1.2× Lực +1 Vang. Hồi 11 s.IIICắm giáo phụ ≤ 140 px: tháp r96 9 s, xung mỗi 1 s 1.2× Lực +1 Vang. Hồi 11 s. Hết giờ tháp kích Vỡ Âm r96.

Hạng III: Hạng III: khi hết thời gian, tháp gãy và kích Vỡ Âm r96 quanh tháp (nguồn thứ 3, không chung hồi nội bộ vọt).

Đòn: · SKILL H03_SK04_THROW · · SKILL H03_SK04_TOWER · Tag: Kỹ năng SKILL · Vùng Sàn ZONE

Hitbox Tháp Canh Chuông — PhóngHitbox Tháp Canh Chuông — Phóng8 px16 px24 pxCIRCLEhurtbox r 7shape CIRCLE r 24sàn 3/4 · ry = rx × 0.5

Mũi Kim Chuông

H03_SK05DUELHồi: 8 sGiá: 0Bấm: HOLDGiữ tối đa: 1.2 sphá khiên
mechanic_key skill.tip_sweetspot
INạp 0.4 s, đâm 110 px: 7× Lực; mũi 90–110 px ×1.5, +3 Vang. Hồi 8 s.IINạp 0.4 s, đâm 110 px: 8.4× Lực; mũi 90–110 px ×1.5, +3 Vang. Hồi 7.5 s.IIINạp 0.4 s, đâm 110 px: 8.4× Lực; mũi 90–110 px ×1.5, +3 Vang. Hồi 7.5 s. Trúng mũi vào kẻ đã Chín Vang: Vỡ Âm ngay.

Hạng III: Hạng III: mũi kim trúng kẻ đã Chín Vang → Vỡ Âm tại nó (cò thứ 3, chỉ kích kẻ đó rồi lan).

Đòn: · SKILL H03_SK05_NEEDLE · Tag: Kỹ năng SKILL · Chí mạng CRIT

Hitbox Mũi Kim ChuôngHitbox Mũi Kim Chuông32 px64 px96 px128 pxLINEhurtbox r 7shape LINE p0 [0, 0] p1 [110, 0] w 11sàn 3/4 · ry = rx × 0.5

Xoay Sào Hộ

H03_SK06DUELHồi: 10 sGiá: 0Bấm: TAP
mechanic_key skill.pole_pivot
IXoay quanh sào 1 s: 4 nhịp r64, mỗi nhịp 1.2× Lực, đẩy ra 24 px, +1 Vang. Hồi 10 s.IIXoay quanh sào 1 s: 4 nhịp r72, mỗi nhịp 1.45× Lực, đẩy ra 28 px, +1 Vang. Hồi 9 s.IIIXoay quanh sào 1 s: 4 nhịp r72, mỗi nhịp 1.45× Lực, đẩy ra 28 px, +1 Vang. Hồi 9 s. Cán xoay đánh vỡ đạn vàng chạm vòng.

Hạng III: Hạng III: vòng xoay đánh vỡ đạn vàng (Y) chạm mép r72 (không phản, không chặn đạn tím).

Đòn: · SKILL H03_SK06_SPIN · Tag: Kỹ năng SKILL · Sinh lực VITAL

Hitbox Xoay Sào HộHitbox Xoay Sào Hộ24 px48 px72 px96 pxRINGRINGhurtbox r 7shape RING r 64 band 40sàn 3/4 · ry = rx × 0.5

Bước Sào Đôi

H03_SK07TEMPOHồi: 6 sGiá: 0Bấm: TAPBất tử t: 0/18
mechanic_key skill.vault
INhảy Sào 2 lần × 90 px, bất tử 0.3 s mỗi lần; cú đáp r40 1.5× Lực. Hồi 6 s.IINhảy Sào 2 lần × 100 px, bất tử 0.3 s mỗi lần; cú đáp r40 1.8× Lực. Hồi 5.5 s.IIINhảy Sào 3 lần × 100 px, bất tử 0.3 s mỗi lần; cú đáp r40 1.8× Lực. Hồi 5.5 s.

Hạng III: Hạng III: thêm lần vọt thứ 3 (tham số đếm, chỉ tăng ở hạng III).

Đòn: · SKILL H03_SK07_VAULT · · SKILL H03_SK07_LAND · Tag: Kỹ năng SKILL · Di chuyển MOVE

Hitbox Bước Sào Đôi — VọtHitbox Bước Sào Đôi — Vọt24 px48 px72 px96 pxLINEhurtbox r 7shape LINE p0 [0, 0] p1 [90, 0] w 24sàn 3/4 · ry = rx × 0.5

Truyền Vang

H03_SK08TEMPOHồi: 8 sGiá: 0Bấm: TAP
mechanic_key skill.res_transfer
IXung r96 +1 Vang; 6 s: kẻ mang Vang chết, Vang chuyển sang 2 kẻ gần trong r80. Hồi 8 s.IIXung r112 +1 Vang; 7 s: kẻ mang Vang chết, Vang chuyển sang 2 kẻ gần trong r96. Hồi 7.5 s.IIIXung r112 +1 Vang; 7 s: kẻ mang Vang chết, Vang chuyển sang 3 kẻ gần trong r96. Hồi 7.5 s.

Hạng III: Hạng III: Vang chuyển sang 3 kẻ gần thay vì 2.

Đòn: · SKILL H03_SK08_CAST · Tag: Kỹ năng SKILL · Dây chuyền CHAIN

Hitbox Truyền VangHitbox Truyền Vang24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 96sàn 3/4 · ry = rx × 0.5

83 tuyệt kỹ (Ult)

Đại Hồng Chung

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

Chuông đồng rơi tại điểm ≤ 160 px sau 0.6 s: r130 8× Lực, mọi kẻ +3 Vang rồi Vỡ Âm; ngân 4 hồi, mỗi hồi 6× Lực.

place_max: 160shadow_s: 0.6r: 130coef: 8vang: 3tolls: 4toll_coef: 6world_slow_s: 0.4max_targets: 128de_check: 1.002

Đòn: · ULT H03_UL1_IMPACT · · ULT H03_UL1_TOLL

Hitbox Đại Hồng Chung — RơiHitbox Đại Hồng Chung — Rơi40 px80 px120 pxCIRCLEhurtbox r 7shape CIRCLE r 130sàn 3/4 · ry = rx × 0.5

Hồi Chuông Tiễn

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

Ghim 1 mục tiêu 1.8 s, 9 cú chọc 5× Lực tích Vang → 3 lần Vỡ Âm (4× Lực, −30 Thế); kết liễu ≤ 15% HP.

pin_s: 1.8pokes: 9coef: 5detonations: 3toll_coef: 4poise: 30execute_pct: 0.15execute_pct_show: 15target_r: 140single_target_coef: 57de_check: 0.858

Đòn: · ULT H03_UL2_POKE · · ULT H03_UL2_TOLL

Hitbox Hồi Chuông Tiễn — ChọcHitbox Hồi Chuông Tiễn — Chọc32 px64 px96 pxLINEhurtbox r 7shape LINE p0 [0, 0] p1 [100, 0] w 12sàn 3/4 · ry = rx × 0.5

Lính Gác Cuối

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

9 s: chọc tầm +30 px; Tháp Vang r80 đi theo người; kẻ chết đóng dấu 2 kẻ gần +2 Vang.

dur_s: 9range_add: 30r: 80n: 2vang: 2brand_r: 96cast_invuln_s: 0.5de_check: 0.928
Ghi đè khi biến hình
COMBO_A
range_add 30, tip_shift_px 30
HEAVY
tower_follow_hero có, tower_r 80, period_s 1, coef 1.5
H03_SK05
len 140, tip_d_min 120
on_kill
brand_n 2, brand_r 96, vang_add 2
ult_gauge_gain
0

Đòn: · ULT H03_UL3_CAST · · ULT H03_UL3_PULSE

Hitbox Lính Gác Cuối — KíchHitbox Lính Gác Cuối — Kích24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 96sàn 3/4 · ry = rx × 0.5

93 Dạng Rèn

Giáo Chuông Đồng

H03_AS1Lớp vũ khí: bell_spearMảnh Vang: 0

Giáo 1.8 × thân, 1 chuông lớn ở cổ mũi: kit gốc, Vỡ Âm ở 3 Vang, r90.

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

Giáo Chuông Đôi

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

Giáo ngắn 2 chuông: tầm −15 px, nhịp ×1.2; Vỡ Âm ở 2 Vang, r60; A4 xoay 2 chuông r60.

Combo
tempo_mult 1.2, arc_add 0, range_add −15
Luật tài nguyên
Vỡ Âm kích ở 2 Vang thay vì 3; bán kính kích và lan r90 → r60; mất mốc Vang Dội riêng (Vang Dội áp ở 2 Vang).
Lệch độ khó
axis V, delta −1
mechanic_key
passive.chain_detonate

Đòn: · ASPECT H03_AS2_A4_TWIN

Giáo Móc Chuông

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

Giáo dài móc ngược: tầm +20 px, nhịp ×0.85; Vang không phai; A4 dựng Tháp Vang r100.

Combo
tempo_mult 0.85, arc_add 0, range_add 20
Luật tài nguyên
Vang trên kẻ địch không hết theo thời gian (decay = null); chỉ mất khi Vỡ Âm hoặc kẻ chết.
Lệch độ khó
axis R, delta −1
mechanic_key
passive.totem

Đòn: · ASPECT H03_AS3_A4_HOOK

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ụ)ANSWERANSWER: 88RES:TOLLRES:TOLL: 88COMBOCOMBO: 77DASHDASH: 77COUNTERCOUNTER: 77SKILLSKILL: 66ULTULT: 44ZONEZONE: 33CHAINCHAIN: 33CRITCRIT: 11MOVEMOVE: 11
edges[].tags
COMMONRAREEPICLEGENDARY

Then Chốt (LEGENDARY)

Tiếng Vọng Hai Hồi

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

Vỡ Âm từ Gõ Chuông vọng lại sau 0.8 s: kẻ ≥ 2 Vang trong r90 Vỡ Âm ×1.3.

ON_ANSWER · CUSTOM_HOOK · NONE · detonate.chain_detonate + answer_chain.enemy_stack
tpl TPL_H03_lp37, delay_s 0.8, vang_min 2, r 90, more 1.3
Tag: Đáp ANSWER · Tài nguyên: Vang RES:TOLL

Sào Cắm Trời

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

Nhảy Sào đáp cắm Tháp Vang (tối đa 2 tháp); combo kế mở từ A3, mũi ×1.25.

ON_HOLD_START · CUSTOM_HOOK · NONE · hold_end.vault + heavy.totem
tpl TPL_H03_lp38, towers 2, more 1.25
Tag: Đáp ANSWER · Combo COMBO

Phản Gọi Đại Chung

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

Phản trúng +8 Dư Âm; Dư Âm đầy: chuông rơi r80, 5× Lực, cấy 3 Vang.

ON_COUNTER · CUSTOM_HOOK · NONE · counter.sky_drop + counter.ult_gain
tpl TPL_H03_lp39, ult_add 8, r 80, coef 5, vang_set 3, icd_s 4
Tag: Phản COUNTER · Tuyệt kỹ ULT

Gió Mang Vang

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

Lướt xuyên kẻ Chín Vang kích Vỡ Âm; kẻ mang Vang chết trao 1 Vang cho kẻ gần r80.

ON_DASH · CUSTOM_HOOK · NONE · dash_through.chain_detonate + kill.res_transfer
tpl TPL_H03_lp40, icd_s 1.2, n 1, r 80
Tag: Lướt DASH · Tài nguyên: Vang RES:TOLL

Hướng build Combo · 6 Edge

Cộng Hưởng: Nhịp Giáo Gác H03_RS1 · Combo COMBO

Bậc I≥ 3 Edge tag
Tốc đánh +11%.
Bậc II≥ 5 Edge tag
Đoạn mũi chọc combo và Chọc Lướt kéo về phía cán thêm 20 px; trúng mũi ×1.15.
Đoạn mũi không còn là 20 px cuối cán: A1–A2 tính mũi từ 50 px, A3 từ 56 px, Chọc Lướt từ 60 px; cú trúng mũi nhân thêm MORE.

Cán Vươn Xa

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

Chọc combo: tầm +14/24/36 px, đoạn mũi dài thêm 10/18/26 px.

tham sốH1H2H3
len_add142436
tip_add101826
PASSIVE · MODIFY_MOVE · FLAT · passive.range_extend
target VERB:COMBO
Tag: Combo COMBO

Mũi Chuông Sắc

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

Chọc combo trúng mũi: tỉ lệ chí mạng +30/52/75%.

tham sốH1H2H3
value305275
PASSIVE · STAT · FLAT · passive.tip_sweetspot
target VERB:COMBO
Tag: Combo COMBO · Chí mạng CRIT

Cắm Sào Nặng

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

Cắm Sào: bán kính +25/44/62%, sát thương +40/70/100%.

tham sốH1H2H3
r_inc254462
coef_inc4070100
PASSIVE · MODIFY_MOVE · INC · heavy.area_grow
target H03_MV_A4
Tag: Combo COMBO

Tháp Ngân Gai

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

Tháp Vang: mỗi xung gây 1.2/1.9× Lực, đứng thêm 2 s.

tham sốH1H2
coef1.21.9
PASSIVE · MODIFY_MOVE · FLAT · zone_tick.totem
target H03_MV_TOWER, dur_add 2
Tag: Combo COMBO · Vùng Sàn ZONE

Mũi Gọi Kim

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

Chọc combo trúng mũi: Mũi Kim Chuông hồi chiêu −0.6/1 s.

tham sốH1H2
amount0.61
ON_HIT · COOLDOWN · NONE · attack.tip_sweetspot
target H03_SK05
Tag: Combo COMBO

Ba Mũi Một Sào

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

3 cú chọc liền trúng mũi: Cắm Sào kế ×1.25, cấy đủ 3 Vang.

PASSIVE · CUSTOM_HOOK · NONE · combo_end.tip_sweetspot
tpl TPL_H03_e06, offer_requires EDGE:H03_E01, streak 3, more 1.25, vang_set 3
Tag: Combo COMBO

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

Cộng Hưởng: Bước Chuông H03_RS2 · Lướt DASH

Bậc I≥ 3 Edge tag
Khi Né Hoàn Hảo, mọi kẻ trong r90 +1 Vang.
Bậc II≥ 5 Edge tag
Mỗi Lướt để lại chuông nhỏ; 0.6 s sau ngân r56, 1.5× Lực, +1 Vang.
Lướt Vọt Sào thôi là bước né thuần: điểm xuất phát mỗi Lướt thành một chuông dấu chân (tối đa {cap} chuông sống), kéo bầy theo vệt Lướt vào vùng ngân.

Chọc Lướt Dài

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

Chọc Lướt: sát thương +60/105/150%, tầm +16/28/40 px.

tham sốH1H2H3
coef_inc60105150
len_add162840
PASSIVE · MODIFY_MOVE · INC · dash_attack.range_extend
target H03_MV_DASH_POKE
Tag: Lướt DASH

Vọt Gieo Vang

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

Khi Lướt, kẻ bị lướt xuyên trong dải 24/42/60 px +1 Vang.

tham sốH1H2H3
pass_w244260
ON_DASH · RESOURCE · NONE · dash_through.enemy_stack
target RES, vang_add 1
Tag: Lướt DASH · Di chuyển MOVE

Sào Vọt Xa

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

Bước Sào Đôi: mỗi lần vọt +14/24/36 px, cú đáp +70/122/175% sát thương.

tham sốH1H2H3
dist_add142436
coef_inc70122175
PASSIVE · MODIFY_MOVE · INC · passive.vault
target H03_SK07
Tag: Lướt DASH

Sào Ba Bước

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

Bước Sào Đôi: +1 lần vọt; mỗi cú đáp +1/2 Vang kẻ trúng.

tham sốH1H2
land_vang12
ON_SKILL_CAST · MODIFY_MOVE · NONE · skill_hit.vault
target H03_SK07, vaults_add 1
Tag: Lướt DASH

Né Gọi Xoay

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

Khi Né Hoàn Hảo, Xoay Sào Hộ hồi chiêu −3.5/5.6 s.

tham sốH1H2
amount3.55.6
ON_PERFECT_DODGE · COOLDOWN · NONE · perfect_dodge.cooldown_reduce
target H03_SK06
Tag: Lướt DASH

Bước Giữ Mũi

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

Lướt dừng cách quái 70 tới 100 px: hoàn 1 lượt; cú chọc kế ×1.2.

ON_DASH · CUSTOM_HOOK · NONE · dash_end.tip_sweetspot
tpl TPL_H03_e12, d_min 70, d_max 100, refund 1, cd_s 1, more 1.2
Tag: Lướt DASH

Hướng build Đáp · 6 Edge

Cộng Hưởng: Canh Chuông H03_RS3 · Đáp ANSWER

Bậc I≥ 3 Edge tag
Cửa sổ ĐÁP +0.03 s; Nhảy Sào hồi chiêu −15%.
Bậc II≥ 5 Edge tag
Gõ Chuông trúng kích Vỡ Âm cả kẻ mang ≥ 2 Vang trong r90.
Ngưỡng Vỡ Âm do Gõ Chuông kích hạ từ Chín Vang xuống {vang_min} Vang (chỉ nguồn ĐÁP; cú đáp Nhảy Sào giữ ngưỡng 3).

Chuông Vang Xa

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

Gõ Chuông: xung tâm tại kẻ tấn công rộng +16/28/40 px.

tham sốH1H2H3
r_add162840
PASSIVE · MODIFY_MOVE · FLAT · answer.area_grow
target VERB:ANSWER
Tag: Đáp ANSWER

Đáp Gọi Tháp

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

Khi bắt đầu Nhảy Sào, Tháp Canh Chuông trong r220 xung ngay, đứng thêm 1/1.75/2.5 s.

tham sốH1H2H3
dur_add11.752.5
ON_HOLD_START · MODIFY_MOVE · NONE · hold_start.totem
target H03_SK04, r 220
Tag: Đáp ANSWER · Vùng Sàn ZONE

Sào Bay Rộng

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

Nhảy Sào: vọt +10/18/26 px, dải cấy Vang rộng +8/14/20 px.

tham sốH1H2H3
dist_add101826
w_add81420
PASSIVE · MODIFY_MOVE · FLAT · passive.hold_shape_grow
target VERB:HOLD
Tag: Đáp ANSWER

Gõ Một Lan Mười

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

Khi ĐÁP thành công, vòng Hồi Chuông Lan r90/144 lan từ kẻ tấn công, 2× Lực.

tham sốH1H2
radius90144
ON_ANSWER · BLAST · NONE · answer.shockwave
target H03_SK01, offer_excl XG_H03_ANSWER_CENTER, coef 2, vang_add 1
Tag: Đáp ANSWER

Nín Là Gõ

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

Khi Chuông Nín trúng, kẻ Chín Vang trong r60/96 quanh tâm xung Vỡ Âm.

tham sốH1H2
r6096
ON_HIT · CUSTOM_HOOK · NONE · skill_hit.chain_detonate
tpl TPL_H03_e17, target H03_SK03
Tag: Đáp ANSWER

Hai Tâm Chuông

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

Gõ Chuông trúng: Vỡ Âm kích thêm r90 quanh kẻ tấn công, lan xa +30 px.

ON_ANSWER · CUSTOM_HOOK · NONE · answer.chain_detonate
tpl TPL_H03_e18, offer_requires EDGE:H03_E13, offer_excl XG_H03_ANSWER_CENTER, r 90, chain_add 30
Tag: Đáp ANSWER · Dây chuyền CHAIN

Hướng build Phản · 6 Edge

Cộng Hưởng: Mũi Phản Kép H03_RS4 · Phản COUNTER

Bậc I≥ 3 Edge tag
Đâm Chuông: sát thương +25%.
Bậc II≥ 5 Edge tag
Đâm Chuông thành 2 mũi song song cách 24 px, mỗi mũi +3 Vang mục tiêu đầu; ×1.2.
Phản không còn là 1 đường đâm: 2 đường LINE song song, mỗi đường cấy đủ Vang cho kẻ đầu tiên nó xuyên.

Mũi Đâm Thấu

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

Đâm Chuông: kẻ ở đoạn mũi từ 84 px chịu +60/105/150% sát thương.

tham sốH1H2H3
tip_inc60105150
PASSIVE · MODIFY_MOVE · INC · counter.tip_sweetspot
target VERB:COUNTER, d_min 84
Tag: Phản COUNTER

Chuông Phản Dày

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

Xung Đâm Chuông: rộng +16/28/40 px, +1/1/2 Vang mỗi kẻ trúng.

tham sốH1H2H3
r_add162840
vang_add112
PASSIVE · MODIFY_MOVE · FLAT · counter.enemy_stack
target H03_MV_COUNTER_PULSE, offer_excl XG_H03_COUNTER_PULSE
Tag: Phản COUNTER

Xoay Sào Rộng

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

Xoay Sào Hộ: vòng +6/10/16 px, mỗi nhịp −6/10/15 Thế thêm.

tham sốH1H2H3
r_add61016
poise_add61015
PASSIVE · MODIFY_MOVE · FLAT · passive.pole_pivot
target H03_SK06
Tag: Phản COUNTER

Phản Ngân Vòng

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

Khi Phản trúng, vòng ngân r110 lan từ mục tiêu: 3/4.8× Lực, +1 Vang.

tham sốH1H2
coef34.8
ON_COUNTER · BLAST · NONE · counter.shockwave
offer_excl XG_H03_COUNTER_PULSE, radius 110, vang_add 1
Tag: Phản COUNTER

Tiễn Chuông Lan

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

Hồi Chuông Tiễn: mỗi Vỡ Âm lan sang kẻ mang ≥ 2 Vang trong r90/144.

tham sốH1H2
r90144
ON_ULT · CUSTOM_HOOK · NONE · ult.chain_detonate
tpl TPL_H03_e23, target H03_UL2, vang_min 2
Tag: Phản COUNTER · Tuyệt kỹ ULT

Đâm Vỡ Chín Vang

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

Phản trúng kẻ đã Chín Vang: Vỡ Âm tại nó ×1.25, −15 Thế thêm.

ON_COUNTER · CUSTOM_HOOK · NONE · counter.chain_detonate
tpl TPL_H03_e24, offer_requires EDGE:H03_E20, more 1.25, poise_add 15
Tag: Phản COUNTER

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

Cộng Hưởng: Lễ Gióng Chuông H03_RS5 · Kỹ năng SKILL

Bậc I≥ 3 Edge tag
Hồi chiêu kỹ năng −15%.
Bậc II≥ 5 Edge tag
Kỹ năng trúng ≥ 5 kẻ dựng Tháp Vang r64 4 s tại tâm (tối đa 2).
Kỹ năng thôi chỉ là cú đánh một lần: mỗi kỹ năng trúng đông dựng thêm một Tháp Vang nhỏ, xung +1 Vang mỗi 1.5 s.

Chuông Lan Xa

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

Hồi Chuông Lan: bán kính +15/26/38%, sát thương +20/35/50%.

tham sốH1H2H3
r_inc152638
coef_inc203550
PASSIVE · MODIFY_MOVE · INC · passive.shockwave
target H03_SK01
Tag: Kỹ năng SKILL

Nín Lặng Sâu

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

Chuông Nín: xung rộng +16/28/40 px, Tinh Anh −10/18/25 Thế thêm.

tham sốH1H2H3
r_add162840
poise_add101825
PASSIVE · MODIFY_MOVE · FLAT · passive.interrupt
target H03_SK03
Tag: Kỹ năng SKILL

Tháp Đôi Canh

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

Tháp Canh Chuông: +1 tháp phụ r60/96 cạnh tháp chính, 6 s.

tham sốH1H2
radius6096
ON_SKILL_CAST · SPAWN_ZONE · NONE · place.totem
target H03_SK04, duration_s 6, towers_add 1
Tag: Kỹ năng SKILL · Vùng Sàn ZONE

Kim Nạp Nhanh

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

Mũi Kim Chuông: nạp nhanh 25/40%, đoạn mũi dài thêm 12/20 px.

tham sốH1H2
charge_cut2540
tip_add1220
PASSIVE · MODIFY_MOVE · INC · charge_mark.tip_sweetspot
target H03_SK05
Tag: Kỹ năng SKILL

Vang Truyền Xa

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

Truyền Vang: chuyển sang thêm 1 kẻ, kéo dài +2/3.2 s.

tham sốH1H2
dur_add23.2
PASSIVE · MODIFY_MOVE · NONE · passive.res_transfer
target H03_SK08, n_add 1
Tag: Kỹ năng SKILL

Ba Hồi Liền Nổ

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

Gióng Ba Hồi: mỗi hồi kích Vỡ Âm ngay ở kẻ ≥ 2 Vang; hồi thứ ba ×1.25.

ON_SKILL_CAST · CUSTOM_HOOK · NONE · skill_hit.shockwave
tpl TPL_H03_e30, target H03_SK02, vang_min 2, more 1.25
Tag: Kỹ năng SKILL · Dây chuyền CHAIN

Hướng build Tài nguyên: Vang · 6 Edge

Cộng Hưởng: Đại Hồi Vang H03_RS6 · Tài nguyên: Vang RES:TOLL

Bậc I≥ 3 Edge tag
Vỡ Âm lan dây chuyền xa +20 px.
Bậc II≥ 5 Edge tag
Vỡ Âm lan cả sang kẻ mang 2 Vang, kẻ đó chịu 60% sát thương Vỡ Âm.
Dây chuyền không dừng ở kẻ chưa chín: kẻ mang {vang_min} Vang bị lan tới cũng Vỡ Âm (sát thương giảm) và tiếp tục lan.

Vang Dội Sâu

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

Vang Dội: kẻ mang ≥ 2 Vang chịu thêm +8/14/20% sát thương.

tham sốH1H2H3
value81420
PASSIVE · STAT · INC · res_threshold.enemy_stack
target RES, vang_min 2
Tag: Tài nguyên: Vang RES:TOLL

Vang Lâu Phai

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

Vang trên kẻ địch phai chậm: trễ phai +2/3.5/5 s.

tham sốH1H2H3
delay_add23.55
PASSIVE · RESOURCE · NONE · res_gain.res_decay_pause
target RES
Tag: Tài nguyên: Vang RES:TOLL

Vang Truyền Nổ

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

Khi tiêu Vang lúc Truyền Vang, mỗi kẻ Vỡ Âm chuyển 1 Vang sang kẻ gần trong r60/96.

tham sốH1H2
r6096
ON_RESOURCE_SPEND · RESOURCE · NONE · detonate.res_transfer
target H03_SK08, n 1
Tag: Tài nguyên: Vang RES:TOLL · Dây chuyền CHAIN

Hồi Ba Gấp

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

Khi tiêu Vang, Gióng Ba Hồi hồi chiêu −0.3/0.5 s.

tham sốH1H2
amount0.30.5
ON_RESOURCE_SPEND · COOLDOWN · NONE · detonate.cooldown_reduce
target H03_SK02
Tag: Tài nguyên: Vang RES:TOLL

Chuông Đồng Ở Lại

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

Đại Hồng Chung đứng lại 6 s: mỗi 1.5 s xung r130, +1 Vang, kích Vỡ Âm.

ON_ULT · CUSTOM_HOOK · NONE · ult_end.totem
tpl TPL_H03_e35, target H03_UL1, dur_s 6, r 130, period_s 1.5
Tag: Tài nguyên: Vang RES:TOLL · Tuyệt kỹ ULT

Dấu Gác Lan Truyền

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

Lính Gác Cuối: dấu chết lan ≤ 2 tầng; mỗi dấu cấy đủ 3 Vang.

ON_ULT · CUSTOM_HOOK · NONE · kill_multi.brand_on_kill
tpl TPL_H03_e36, target H03_UL3, depth 2, vang_set 3
Tag: Tài nguyên: Vang RES:TOLL · Tuyệt kỹ ULT

Tiến Hoá

requires_edges + condition.ref → Tiến Hoá

Vạn Hồi Chuông Lan

H03_EVO1

Hồi Chuông Lan ngân 3 vòng liền cách 0.35 s tới r170, mỗi vòng 2.6× Lực +1 Vang; vòng cuối kích Vỡ Âm.

Cần Edge
Chuông Lan Xa H03_E25 · Vang Dội Sâu H03_E31
Điều kiện
SKILL_RANK Hồi Chuông Lan H03_SK01 = 3 — Hồi Chuông Lan đạt hạng III.
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
skill_max_rank.shockwave

Kim Xuyên Trời

H03_EVO2

Mũi Kim Chuông đâm 170 px, cả đoạn từ 90 px là mũi ×1.5; kẻ trúng mũi Vỡ Âm ngay, ×1.25.

Cần Edge
Mũi Chuông Sắc H03_E02 · Kim Nạp Nhanh H03_E28
Điều kiện
RESONANCE Nhịp Giáo Gác H03_RS1 = 1 — Nhịp Giáo Gác (RS1) đạt bậc I.
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
skill_max_rank.tip_sweetspot

Tháp Gác Chuông Cổ

H03_EVO3

Tháp Canh Chuông thành Tháp Gác r120, 12 s: mỗi 1 s xung 1.5× Lực, +1 Vang, kích Vỡ Âm; trong tháp Nhảy Sào hồi 0.6 s.

Cần Edge
Tháp Đôi Canh H03_E27 · Tháp Ngân Gai H03_E04
Điều kiện
LEVEL = 15 — Halka đạt cấp 15 trong run.
Mở
4/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed… MR01
mechanic
zone_tick.chain_detonate

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

H03_EVO4Thức Tỉnh

Combo chọc dài +20 px; trúng mũi phóng sóng ngân 60 px 0.8× Lực, +1 Vang thêm.

Cần Edge
—
Điều kiện
BOSS_KILLED Thợ Cả Đúc Chuông BS_B3 = BS_B3 — 2 Cộng Hưởng Halka 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 (13)
IDCâu
TPL_H03_e06Đếm chuỗi cú chọc combo (A1, A2, A3, Chọc Lướt) liên tiếp trúng đoạn mũi; một cú chọc hụt mũi hoặc 1.5 s không chọc thì xoá chuỗi. Chuỗi đủ số `streak`: cú Cắm Sào (A4) kế tiếp nhân sát thương theo `more` (MORE, vào trần chung) và đặt Vang của mọi kẻ trúng lên `vang_set`; chuỗi về 0 sau cú Cắm Sào đó.
TPL_H03_e12Khi Lướt Vọt Sào kết thúc, đo khoảng cách tới quái gần nhất theo hướng nhìn; nằm trong dải `d_min`…`d_max` px thì hoàn `refund` lượt Lướt (hồi nội `cd_s` s, trong trần hoàn Lướt chung 1 lượt mỗi giây) và cú chọc combo hoặc Chọc Lướt kế trong 0.8 s nhân `more` (MORE). Không đổi i-frame Lướt.
TPL_H03_e17Khi xung Chuông Nín huỷ được ít nhất 1 windup hoặc trừ Thế Tinh Anh, tính như Gõ Chuông trúng tại tâm xung: mọi kẻ Chín Vang trong `r` quanh tâm Vỡ Âm và lan dây chuyền như luật gốc. Giá của nguồn kích này là hồi chiêu Chuông Nín (luật Q22 doc 12).
TPL_H03_e18Khi Gõ Chuông trúng (Answered), ngoài lượt Vỡ Âm r90 quanh Halka, kích thêm 1 lượt Vỡ Âm bán kính `r` tâm tại kẻ tấn công (đạn: kẻ bắn nếu trong 300 px). Mọi Vỡ Âm sinh từ 2 tâm này lan dây chuyền xa thêm `chain_add` px. Gõ Chuông hụt vẫn không kích gì.
TPL_H03_e23Trong Hồi Chuông Tiễn, mỗi lần Vỡ Âm trên mục tiêu ghim lan sang mọi kẻ mang ít nhất `vang_min` Vang trong bán kính `r` quanh nó (Vỡ Âm thường, lan tiếp theo luật gốc). Mục tiêu ghim không đổi.
TPL_H03_e24Khi Đâm Chuông trúng một kẻ đã đủ 3 Vang trước cú đâm, kích Vỡ Âm ngay tại kẻ đó (không cần Gõ Chuông hay cú đáp); Vỡ Âm này nhân `more` (MORE) và trừ thêm `poise_add` Thế. Sau đó +3 Vang của cú Phản cấy lại như thường.
TPL_H03_e30Gióng Ba Hồi bỏ bước chờ: mỗi hồi chuông (3 hồi) kích Vỡ Âm ngay ở mọi kẻ mang ít nhất `vang_min` Vang trong r160 sau khi cộng Vang của chính hồi đó; Vỡ Âm của hồi thứ ba nhân `more` (MORE).
TPL_H03_e35Sau cú rơi, Đại Hồng Chung không biến mất mà đứng lại `dur_s` s như một tháp lớn: mỗi `period_s` s phát xung bán kính `r` cộng 1 Vang mọi kẻ trúng rồi kích Vỡ Âm ở kẻ Chín Vang trong xung. Chuông đứng chặn đạn của chính Halka, không chặn đường quái.
TPL_H03_e36Trong Lính Gác Cuối, kẻ mang dấu chết khi chết cũng đóng dấu kẻ gần như luật gốc, tối đa `depth` tầng tính từ cú hạ đầu; mọi dấu đặt Vang của kẻ nhận lên `vang_set` thay vì cộng.
TPL_H03_lp37Mỗi lượt Vỡ Âm do Gõ Chuông trúng kích để lại 1 tiếng vọng tại tâm (Halka hoặc kẻ tấn công). Sau `delay_s` s tiếng vọng nổ: mọi kẻ mang ít nhất `vang_min` Vang trong `r` Vỡ Âm, nhân `more` (MORE, vào trần chung), lan dây chuyền như thường. Tiếng vọng không sinh tiếng vọng.
TPL_H03_lp38Cú đáp Nhảy Sào (verb giữ) cắm một Tháp Vang tại điểm đáp như cú Cắm Sào (giữ hồi nội vọt chung), tối đa `towers` tháp, tháp cũ nhất mất trước. Sau cú đáp, ATTACK kế mở combo từ A3 và cú chọc đó tính trúng mũi, nhân `more` (MORE).
TPL_H03_lp39Mỗi Đâm Chuông trúng cộng `ult_add` Dư Âm (trong trần nạp từ nâng cấp). Nếu Dư Âm đang đầy khi Phản trúng: một chuông nhỏ rơi tại mục tiêu sau 0.3 s, bán kính `r`, gây `coef` lần Lực, đặt Vang mọi kẻ trúng lên `vang_set`; không tốn Dư Âm, hồi nội `icd_s` s.
TPL_H03_lp40Lướt Vọt Sào xuyên qua kẻ đủ 3 Vang thì kích Vỡ Âm tại kẻ đó (hồi nội `icd_s` s, dùng chung hồi nội nguồn vọt của Nhảy Sào). Mọi kẻ mang Vang chết vì bất kỳ nguồn nào chuyển `n` Vang sang kẻ gần nhất trong `r` chưa đủ 3 Vang.

11Thông Thạo (mastery)

Thông Thạo Halka MR01–MR20Thông Thạo Halka MR01–MR20MR02MR05MR07MR10MR12MR15MR17MR20Hồi Chuông Lan · Chuông Nín · Mũi Kim Chuông · Bước Sào Đôi · Đại Hồng Chung · Giáo Chuông Đồng · Cán Vươn Xa · Mũi Chuông Sắc · Cắm Sào Nặng · Tháp Ngân Gai · Chọc Lướt Dài · Vọt Gieo Vang · Sào Vọt Xa · Sào Ba Bước · Chuông Vang Xa · Đáp Gọi Tháp · Sào Bay Rộng · Gõ Một Lan Mười · Mũi Đâm Thấu · Chuông Phản Dày · Xoay Sào Rộng · Phản Ngân Vòng · Chuông Lan Xa · Nín Lặng Sâu · Tháp Đôi Canh · Kim Nạp Nhanh · Vang Dội Sâu · Vang Lâu Phai · Vang Truyền Nổ · Hồi Ba GấpHồi Chuông Lan · Chuông N…MR01 · 30 mởGióng Ba HồiGióng Ba HồiMR02 · 1 mởMũi Gọi Kim · Né Gọi Xoay · Nín Là Gõ · Tiễn Chuông LanMũi Gọi Kim · Né Gọi Xoay…MR03 · 4 mởTháp Canh ChuôngTháp Canh Chuô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ởVang Truyền Xa · Ba Mũi Một Sào · Bước Giữ Mũi · Hai Tâm ChuôngVang Truyền Xa · Ba Mũi M…MR06 · 4 mởXoay Sào HộXoay Sào HộMR07 · 1 mởĐâm Vỡ Chín Vang · Ba Hồi Liền Nổ · Chuông Đồng Ở Lại · Dấu Gác Lan TruyềnĐâm Vỡ Chín Vang · Ba Hồi…MR08 · 4 mởTruyền VangTruyền VangMR09 · 1 mởTiếng Vọng Hai Hồi · Sào Cắm Trời · Phản Gọi Đại Chung · Gió Mang VangTiếng Vọng Hai Hồi · Sào …MR10 · 4 mởMũ gác của con méo vành rồi. Ta hơ lửa nắn lại, để mai còn gác.Mũ gác của con méo vành r…MR11 · 1 mởGiáo Chuông Thức TỉnhGiáo Chuông Thức TỉnhMR12 · 1 mởChuông trên giáo con bé ngân thấp đi một nốt. Gác lâu thì chuông cũng già.Chuông trên giáo con bé n…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_H03TMB_H03MR18 · 1 mởGiáo Chuông NgàGiáo Chuông NgàMR20 · 1 mở
mastery.mastery_unlocks
MR014/8 kỹ năng (SK01, SK03, SK05, SK07) · UL1 · AS1 · 24/40 Ed…
Hồi Chuông Lan H03_SK01 · Chuông Nín H03_SK03 · Mũi Kim Chuông H03_SK05 · Bước Sào Đôi H03_SK07 · Đại Hồng Chung H03_UL1 · Giáo Chuông Đồng H03_AS1 · Cán Vươn Xa H03_E01 · Mũi Chuông Sắc H03_E02 · Cắm Sào Nặng H03_E03 · Tháp Ngân Gai H03_E04 · Chọc Lướt Dài H03_E07 · Vọt Gieo Vang H03_E08 · Sào Vọt Xa H03_E09 · Sào Ba Bước H03_E10 · Chuông Vang Xa H03_E13 · Đáp Gọi Tháp H03_E14 · Sào Bay Rộng H03_E15 · Gõ Một Lan Mười H03_E16 · Mũi Đâm Thấu H03_E19 · Chuông Phản Dày H03_E20 · Xoay Sào Rộng H03_E21 · Phản Ngân Vòng H03_E22 · Chuông Lan Xa H03_E25 · Nín Lặng Sâu H03_E26 · Tháp Đôi Canh H03_E27 · Kim Nạp Nhanh H03_E28 · Vang Dội Sâu H03_E31 · Vang Lâu Phai H03_E32 · Vang Truyền Nổ H03_E33 · Hồi Ba Gấp H03_E34
MR02+1 kỹ năng (SK02).
MR03+4 Edge hero: RARE còn lại của tag verb 1–4.
Mũi Gọi Kim H03_E05 · Né Gọi Xoay H03_E11 · Nín Là Gõ H03_E17 · Tiễn Chuông Lan H03_E23
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).
MR08+4 Edge hero: EPIC tag 4, 5, 6 (đủ 36).
MR09+1 kỹ năng (SK08, đủ 8).
Truyền Vang H03_SK08
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_H03
MR20Skin ngà SKN_Hxx_4 (LUT trong slot) + danh hiệu Ngà (TITLE_…

Thử thách Thông Thạo

Thử tháchĐiều kiệnThưởng
ĐÁP {answers} tell vàng trong 1 run. TT1answers 30TMB_H03_frame_bell
Đầy tài nguyên riêng {fills} lần trong 1 run. TT2event detonate, count 10, chain_min 20TMB_H03_frame_chain
Hạ 1 boss Hồi mà không trúng đòn tím nào ({hits_allowed} tr… TT3boss ACT_BOSS_ANY, p_hits_max 0TMB_H03_frame_vault
Qua Hồi II chỉ dùng {skills} kỹ năng. TT4act II, skills_max 1TMB_H03_frame_tower
Hạ BS_FINAL ở Độ Tang ≥ {do_tang_min}. TT5boss BS_FINAL, do_tang_min 8, title Kẻ Thức Tang Halka—
Danh hiệu MR20
Tiếng Chuông Cuối Của Dòng Gác
Mốc thoại MR11
Mũ gác của con méo vành rồi. Ta hơ lửa nắn lại, để mai còn gác. DLG_ULLA_H03_001
Mốc thoại MR15
Chuông trên giáo con bé ngân thấp đi một nốt. Gác lâu thì chuông cũng già. DLG_GREM_H03_001
Bia mộ
TMB_H03

12VFX spec

Nhịp pha 41 VFX của HalkaNhịp pha 41 VFX của Halkakhởi (startup)hiệu lực (active)hồi (recovery)0 s0.250.50.7511.251.51.752vang_markvang_mark · startup 0.08svang_mark · recovery 0.17s0.25sanswer_bellanswer_bell · active 0.07sanswer_bell · recovery 0.33s0.4svault_arcvault_arc · startup 0.07svault_arc · active 0.03svault_arc · recovery 0.33s0.43svault_landvault_land · active 0.07svault_land · recovery 0.33s0.4sdash_poledash_pole · active 0.03sdash_pole · recovery 0.37s0.4sa1_thrusta1_thrust · active 0.03sa1_thrust · recovery 0.27s0.3stip_sparktip_spark · active 0.03stip_spark · recovery 0.27s0.3sa3_twista3_twist · startup 0.07sa3_twist · active 0.05sa3_twist · recovery 0.35s0.47splant_impactplant_impact · startup 0.07splant_impact · active 0.07splant_impact · recovery 0.43s0.57splant_towerplant_tower · startup 0.1splant_tower · recovery 0.15s0.25stower_pulsetower_pulse · active 0.03stower_pulse · recovery 0.3s0.33sdash_attackdash_attack · startup 0.07sdash_attack · active 0.05sdash_attack · recovery 0.35s0.47sanswer_projanswer_proj · active 0.03sanswer_proj · recovery 0.27s0.3scounter_bellpiercecounter_bellpierce · startup 0.07scounter_bellpierce · active 0.07scounter_bellpierce · recovery 0.43s0.57stoll_bursttoll_burst · active 0.07stoll_burst · recovery 0.43s0.5stoll_chaintoll_chain · startup 0.05stoll_chain · active 0.03stoll_chain · recovery 0.27s0.35sshatter_ashshatter_ash · active 0.1sshatter_ash · recovery 0.4s0.5sSK01_ringSK01_ring · active 0.03sSK01_ring · recovery 0.47s0.5sSK02_thresholdSK02_threshold · startup 0.2sSK02_threshold · active 0.07sSK02_threshold · recovery 0.53s0.8sSK03_hushSK03_hush · startup 0.1sSK03_hush · active 0.03sSK03_hush · recovery 0.47s0.6sSK04_spear_throwSK04_spear_throw · startup 0.1sSK04_spear_throw · active 0.07sSK04_spear_throw · recovery 0.33s0.5sSK05_chargeSK05_charge · startup 0.4s0.4sSK05_needleSK05_needle · active 0.03sSK05_needle · recovery 0.37s0.4sSK06_pivotSK06_pivot · startup 0.13sSK06_pivot · active 0.03sSK06_pivot · recovery 0.83s1sSK08_transferSK08_transfer · active 0.07sSK08_transfer · recovery 0.33s0.4sUL1_shadowUL1_shadow · startup 0.6sUL1_shadow · active 0.03s0.63sUL1_great_bellUL1_great_bell · startup 0.2sUL1_great_bell · active 0.1sUL1_great_bell · recovery 1.7s2sUL2_toll_riteUL2_toll_rite · startup 0.2sUL2_toll_rite · active 0.03sUL2_toll_rite · recovery 1.77s2sUL3_warden_auraUL3_warden_aura · startup 0.08sUL3_warden_aura · recovery 0.17s0.25slib_impact_framelib_impact_frame · active 0.07slib_impact_frame · recovery 0.07s0.13sAS2_twin_spinAS2_twin_spin · startup 0.07sAS2_twin_spin · active 0.17sAS2_twin_spin · recovery 0.43s0.67sUL3_brandUL3_brand · startup 0.07sUL3_brand · active 0.03sUL3_brand · recovery 0.27s0.37sEVO4_awakenEVO4_awaken · active 0.03sEVO4_awaken · recovery 0.3s0.33shithit · active 0.03shit · recovery 0.2s0.23sE37_payoffE37_payoff · startup 0.4sE37_payoff · active 0.07sE37_payoff · recovery 0.23s0.7sE38_payoffE38_payoff · active 0.07sE38_payoff · recovery 0.43s0.5sE39_payoffE39_payoff · startup 0.2sE39_payoff · active 0.07sE39_payoff · recovery 0.33s0.6sE40_payoffE40_payoff · active 0.07sE40_payoff · recovery 0.33s0.4sEVO1_payoffEVO1_payoff · active 0.03sEVO1_payoff · recovery 1.17s1.2sEVO2_payoffEVO2_payoff · active 0.03sEVO2_payoff · recovery 0.37s0.4sEVO3_payoffEVO3_payoff · active 0.07sEVO3_payoff · recovery 0.53s0.6s
phases antic / impact / dissipate (giây)
anticimpactdissipate

SIGNATURE · 14

Dấu Vang trên địch: enter_fx của ngưỡng TOLL_RESONANT (2 Vang) và TOL…

VFX_H03_vang_markSIGNATURELớp: overheadCỡ: SLOD: never

Dấu Vang: ba chấm pip nhỏ trên mép vòng chân mỗi kẻ địch, sáng 1–3 theo Vang; đủ ba chấm thì rung nhẹ — báo kẻ đó Chín Vang, gõ chuông là vỡ. Không bị LOD cắt vì là thông tin luật của hero.

#102347#1e3c6b#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_vang_mark8 khung @ 12 fpsantic · khung 0–0dissipate · khung 1–78 khung · 12 fps · 0.667 s · lặp
Chi tiết spec
Kích hoạt
Dấu Vang trên địch: enter_fx của ngưỡng TOLL_RESONANT (2 Vang) và TOLL_RIPE (3 Vang); bật/đổi mỗi khi Vang của kẻ đó đổi (1–3). Còn từ H03_SK08_CAST, Edge H03_E06 (cấy đủ 3), H03_E08, H03_E31. t = 0 = Vang đổi.
Canvas
16×8 gốc 8/4
Pha (s)
antic 0/0.083 · impact 0.083/0.083 · dissipate 0.5/0.667
Easing
curve linear, freeze_s 0
Hạt
—
Hitbox
shape none, wave none
Nguồn
new src/fx/heroes/halka-vang-mark.js (loop thuần, 3 hàng)
Review
check_mjs pending (node tools/check.mjs heroes/halka-vang-mark), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
03 chấm pip 3×3 px cách 2 px (tổng 13 × 3) đặt trên mép trước vòng chân kẻ địch; chấm tắt = #102347 viền 1 px #295aa8, chấm sáng = #6eb4ff lõi #dcefff.
0.083Vào (khi +Vang): chấm vừa sáng chớp #fff6f0 1 frame rồi #6eb4ff.
0.333Vang Dội (≥ 2): 2 chấm sáng nhịp α 0.8 → 1.0 chu kỳ 0.667 s.
0.5Chín Vang (3): đủ 3 chấm #dcefff, rung ±1 px ngang 12 Hz + quầng 1 px #a8d7ff — báo sẵn sàng Vỡ Âm.
0.667Lặp (loop 8 frame @12).

Gõ Chuông THÀNH CÔNG (H03_ANSWER, answer hit_frame 0, cửa sổ 10 tick)…

VFX_H03_answer_bellSIGNATURELớp: overheadCỡ: MLOD: L3

Gõ Chuông: một hình chuông trắng loé ngay trên kẻ vừa tấn công, vành ngân lam bung đúng r48 quanh nó, mảnh chuông nhỏ văng ra — dấu hiệu Vang được cấy vào cả cụm phía sau.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_answer_bell12 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_answer_bellHitbox VFX_H03_answer_bell16 px32 px48 pxCIRCLEhurtbox r 7shape CIRCLE r 48sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Gõ Chuông THÀNH CÔNG (H03_ANSWER, answer hit_frame 0, cửa sổ 10 tick): xung r48 nổ TẠI kẻ tấn công (đạn: tại kẻ bắn nếu ≤ 300 px, không thì tại điểm đạn). Edge H03_E13 (+16/28/40 px), cộng hưởng H03_RS3. Halka phát kèm VFX_SHARED_answer_flash tại thân; ĐÁP hụt không phát. t = 0 = frame ĐÁP trúng.
Canvas
112×72 gốc 56/44
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.08
Hạt
kind FLAKE, count 6, speed 90, life_s 0.3, hex #a8d7ff, gravity 600, shadow có/kind MOTE, count 3, speed 20, life_s 0.2, hex #dcefff, gravity 0, shadow không
Hitbox
shape circle r48, match Vành vẽ đúng elip r48 (96×48) tâm tại chân kẻ tấn công lúc 0.067 s; +1 Vang áp tức thì tick 0 cho cả r48; FLAKE bay tới r52 (≤ 6 ✓). E13: r64/76/88 qua s1.3 ×1.03 / s1.7 ×0.93 / s1.7 ×1.08., wave none
Nguồn
new src/fx/heroes/halka-answer-bell.js (mượn impacts/parry chớp + bladewake/violet-ring cách vẽ vành, đổi ramp hero)
Review
check_mjs pending (node tools/check.mjs heroes/halka-answer-bell), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r48' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng #ffffff: hình chuông 12×12 (đỉnh tròn, miệng loe) tại ngực kẻ tấn công h16; đĩa sàn r12 #fff6f0.
0.033Vành r12 → r30 dày 3 px #dcefff; hình chuông chuyển #a8d7ff, rung ±1 px.
0.067Vành chạm r48 (elip 96×48) #6eb4ff 2 px, fill α 0.35 #295aa8; 6 mảnh chuông FLAKE 2×2 bung ra theo spawn3.
0.2Vành giữ r48 1 px #3680e0 α 0.5; hình chuông tan thành 3 MOTE.
0.4Rỗng.

Cung vọt Nhảy Sào: H03_HOLD_VAULT (hold_in, bất tử 21 tick, 60 px, dả…

VFX_H03_vault_arcSIGNATURELớp: overheadCỡ: MLOD: L3

Nhảy Sào: vệt cung mảnh theo người vọt qua đầu quái, bên dưới sáng một dải lam đúng 60 × 24 — kẻ trong dải được cấy +1 Vang.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_vault_arc11 khung @ 30 fpsantic · khung 0–2dissipate · khung 3–1011 khung · 30 fps · 0.367 s
Hitbox VFX_H03_vault_arcHitbox VFX_H03_vault_arc16 px32 px48 px64 pxRECThurtbox r 7shape RECT len 60 w 24sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Cung vọt Nhảy Sào: H03_HOLD_VAULT (hold_in, bất tử 21 tick, 60 px, dải 24 px), H03_COMBO_A_5 (attack5, 60 px, bất tử 18 tick), H03_SK07_VAULT (90/100 px, 2–3 lần), Edge H03_E10, H03_E15 (+10/18/26 px, dải +8/14/20). t = 0 = chuôi rời sàn đẩy người lên.
Canvas
96×80 gốc 12/64
Pha (s)
antic −0.067/0 · impact 0/0.033 · dissipate 0.033/0.367
Easing
curve inOutQuad, freeze_s 0
Hạt
kind DUST, count 3, speed 40, life_s 0.25, hex #1e3c6b, gravity 0, shadow không
Hitbox
shape line L60 W24, match Dải sàn x0–x60 rộng 24 vẽ đúng dải cấy Vang (không sát thương); cung vệt trên không chỉ là hình. SK07 L90 → s1.7 ×0.88; L100 → s1.7 ×0.98; E15 +26 px → L86 s1.3 ×1.10., wave none
Nguồn
new src/fx/heroes/halka-vault-arc.js (trace theo fly3 lob, mượn heroes/bellwarden-leap.js quỹ đạo; ramp hero)
Review
check_mjs pending (node tools/check.mjs heroes/halka-vault-arc), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L60 W24' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Chuôi cắm tại x0: chấm sàn #dcefff 2 px, 3 DUST bật.
0Frame nhả: vệt cung vòng cầu mỏng 2 px #a8d7ff vẽ theo quỹ đạo chân h(t) = 4·H·u·(1−u), H = 24 px; đầu vệt #fff6f0.
0.167Đỉnh cung tại x30 h24; dải sàn bên dưới (60 × 24, màn e 60×12) shadeFloor α 0.3 #295aa8 sáng dần theo bóng Halka (dải cấy Vang).
0.3Vệt cung nguội #3680e0 từ gốc; đầu vệt tới x60 h0 (đáp, nối sang VFX_H03_vault_land).
0.367Rỗng.

Tháp Vang đứng: H03_HEAVY_1 (do A4 sinh, r80, 6 s), H03_SK04_TOWER (r…

VFX_H03_plant_towerSIGNATURELớp: body_frontCỡ: MLOD: L3

Tháp Vang: cột ngân lam mảnh đứng tại điểm cắm, bóng chuông nhỏ lắc trên đỉnh, sàn tô đặc lam ≤ 45% với viền slot 1 px đúng bán kính. Bậc s1.3 dùng cho AS3 r100 và EVO3 r120 (×1.15); 0 sheet mới.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_plant_tower12 khung @ 12 fpsantic · khung 0–1dissipate · khung 2–1112 khung · 12 fps · 1 s · lặp
Hitbox VFX_H03_plant_towerHitbox VFX_H03_plant_tower24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 80sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Tháp Vang đứng: H03_HEAVY_1 (do A4 sinh, r80, 6 s), H03_SK04_TOWER (r80/96, 8–9 s), H03_UL3_PULSE (r80 dính theo Halka 9 s), H03_AS3_A4_HOOK (r100), H03_AS3 Dạng Rèn, Edge H03_E27 (tháp phụ r60/96, 6 s), H03_E38 (đáp Nhảy Sào cắm tháp, ≤ 2), H03_EVO3 (r120, 12 s), cộng hưởng H03_RS5. Loop suốt đời tháp; t = 0 = tháp sinh.
Canvas
40×64 gốc 20/58
Pha (s)
antic 0/0.1 · impact 0.1/0.1 · dissipate 0.85/1
Easing
curve inOutQuad, freeze_s 0
Hạt
kind MOTE, count 2, speed 20, life_s 0.8, hex #dcefff, gravity −20, shadow không
Hitbox
shape circle r80, match Viền sàn thủ tục 1 px vẽ đúng r thật mọi nguồn (r60/80/96/100/120), lệch 0 px; cột sheet không mang hitbox; xung +Vang/sát thương phát qua VFX_H03_tower_pulse., wave procedural
Nguồn
new src/fx/heroes/halka-plant-tower.js (loop thuần draw(p,t,o), mượn heroes/bellwarden-toll.js chuông lắc, đổi ramp hero) + shader FloorEllipse {shape:disc} runtime cho vùng sàn
Review
check_mjs pending (node tools/check.mjs heroes/halka-plant-tower), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r80' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Vào 0.1 s (runtime α 0 → 1): cột ngân mảnh 6 px rộng, cao 44 px dựng từ elip chân 24×12, lõi #fff6f0 2 px, viền #6eb4ff.
0.25Bóng chuông mờ 10×12 px #a8d7ff α 0.6 ở đỉnh cột (h 40) lắc ±2 px; 2 vòng sóng ngang 1 px #3680e0 trượt từ chân lên.
0.5Bóng chuông nghiêng về −2 px; MOTE #dcefff bốc lên 2 hạt; chân cột elip #295aa8 α 0.5 nhịp sáng.
0.85Vòng sóng thứ 2 tới đỉnh, tan; khung cuối khớp khung đầu (loop liền).
1Lặp. Hết đời: runtime tan dither 0.15 s, A4 tháp mới thay tháp cũ.

Đâm Chuông: H03_COUNTER (counter hit_frame 3, lao 48 px, LINE 120 × 2…

VFX_H03_counter_bellpierceSIGNATURELớp: overheadCỡ: MLOD: L3

Đâm Chuông: Halka lao tới, mũi giáo xuyên thẳng 120 px như kim, rồi chiếc chuông trên mũi ngân thành vành r48 quanh mục tiêu — mục tiêu Chín Vang ngay.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_counter_bellpierce15 khung @ 30 fpsantic · khung 0–2impact · khung 3–4dissipate · khung 5–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H03_counter_bellpierceHitbox VFX_H03_counter_bellpierce32 px64 px96 px128 pxRECThurtbox r 7shape RECT len 120 w 20sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Đâm Chuông: H03_COUNTER (counter hit_frame 3, lao 48 px, LINE 120 × 20, hitstop 0.12, trauma 0.45) + H03_COUNTER_PULSE (cùng tick, CIRCLE r48 tâm mục tiêu); Edge H03_E20 (xung +16/28/40 px), H03_E24, cộng hưởng H03_RS4. Kèm VFX_SHARED_counter_mark. t = 0 = frame xuyên.
Canvas
144×64 gốc 12/44
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 FLAKE, count 8, speed 100, life_s 0.35, hex #a8d7ff, gravity 700, shadow có/kind STREAK, count 4, speed 260, life_s 0.12, hex #6eb4ff, gravity 0, shadow không
Hitbox
shape line L120 W20, match Pierce: dải sàn x0–x120 rộng 20 (màn e 120×10, n/s 60×20), mũi sáng tới x124 (≤ 6 ✓). Pulse: vành đúng elip r48 tâm mục tiêu (circle r48). E20: r64/76/88 qua s1.3/1.7/1.7. Đo trên --dirs 8., wave none
Nguồn
new src/fx/heroes/halka-counter-bellpierce.js (2 phần pierce/pulse; mượn heroes/varek-riposte nhịp lao, melee/thrust beam)
Review
check_mjs pending (node tools/check.mjs heroes/halka-counter-bellpierce), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L120 W20' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Lao 48 px: 4 vệt tốc 1 px #3680e0 sau lưng; 3 chuông ở cổ mũi sáng #dcefff.
0Frame trắng: vệt xuyên x0 → x120 h18, lõi #fff6f0 4 px, đầu #ffffff 6 px; sàn shadeFloor 120 × 20 α 0.45 #1e3c6b.
0.033Phần 'pulse' (sheet phụ, neo chân mục tiêu): hình chuông 14×14 #ffffff loé, vành r12 → r30 #dcefff.
0.067Vành pulse chạm r48 (elip 96×48) #6eb4ff 2 px, fill α 0.35; vệt xuyên thân #a8d7ff, đoạn mũi #dcefff.
0.25Vệt xuyên rút về mũi; vành pulse 1 px #3680e0; 8 FLAKE mảnh chuông rơi.
0.5Rỗng.

Vỡ Âm (H03_VO_AM, r90 quanh điểm kích): cò ANSWER_HIT (Gõ Chuông trún…

VFX_H03_toll_burstSIGNATURELớp: overheadCỡ: LLOD: L3

Vỡ Âm: tiếng chuông vỡ tại điểm kích — cột sáng trắng, hai vành lam lan đúng r90 kèm tám tia sóng; mọi kẻ Chín Vang trong vành nổ và lan dây chuyền (VFX_H03_toll_chain).

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_toll_burst15 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H03_toll_burstHitbox VFX_H03_toll_burst24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 90sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Vỡ Âm (H03_VO_AM, r90 quanh điểm kích): cò ANSWER_HIT (Gõ Chuông trúng) và VAULT_LAND (đáp Nhảy Sào, hồi 1.2 s); còn từ H03_SK02_CAST, H03_UL1_IMPACT, H03_UL1_TOLL (hồi 4), H03_UL2_TOLL (trên mục tiêu ghim), SK04 hạng III (r96), SK05 hạng III, Edge H03_E17/E18/E24/E40. t = 0 = tick kích.
Canvas
200×128 gốc 100/76
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0.045
Hạt
kind MOTE, count 12, speed 40, life_s 0.4, hex #a8d7ff, gravity −30, shadow không
Hitbox
shape circle r90, match Vành ngoài đúng elip r90 (180×90) tại 0.067 s; chọn mục tiêu tức thì tick 0 (r90), MOTE tới r94 (≤ 10 ✓). SK02 hạng III lan r110 → s1.3 ×0.94; SK04 hạng III r96 → s1.0 ×1.07; AS2 r60 xuất riêng qua --as h03_as2 (radius 60)., wave none
Nguồn
new src/fx/heroes/halka-toll-burst.js (mượn heroes/bellwarden-toll.js nhịp ngân, explosions/firework-burst hạt; ramp hero)
Review
check_mjs pending (node tools/check.mjs heroes/halka-toll-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r90' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: đĩa r16 #ffffff tại điểm kích, cột sáng 4 × 32 dựng lên.
0.033Vành kép lan r16 → r60 (2 vành cách 8 px) #dcefff/#a8d7ff dày 2 px; fill α 0.3 #295aa8.
0.067Vành ngoài chạm r90 (elip 180×90) #6eb4ff 2 px; 8 tia ngắn hướng tâm-ra 6 px trên vành (như sóng chuông).
0.2Vành 1 px #3680e0 α 0.6; 12 MOTE lam bay lên 20 px.
0.35Vành tan dither Bayer 4×4; MOTE còn 4.
0.5Rỗng.

Mỗi bước lan dây chuyền Vỡ Âm (H03_VO_AM chain_r 90, trễ 3 tick/bước,…

VFX_H03_toll_chainSIGNATURELớp: overheadCỡ: SLOD: L2

Lan dây chuyền: một gói sóng chuông nhỏ chạy trên sàn tới kẻ kế, nổ pháo hoa lam nhỏ — cả cụm vỡ dần từng nhịp 3 tick. Trần: ≤ 12 pop mới/frame (dư dời 1 frame), L2 bỏ packet giữ pop.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_toll_chain9 khung @ 30 fpsantic · khung 0–1impact · khung 2–2dissipate · khung 3–89 khung · 30 fps · 0.3 s
Chi tiết spec
Kích hoạt
Mỗi bước lan dây chuyền Vỡ Âm (H03_VO_AM chain_r 90, trễ 3 tick/bước, trần 128): t = 0 = kẻ kế bị kích; Edge H03_E17/E18/E23/E30/E36/E37, cộng hưởng H03_RS6.
Canvas
32×32 gốc 16/24
Pha (s)
antic −0.05/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 6, speed 90, life_s 0.25, hex #a8d7ff, gravity 950, shadow không
Hitbox
shape none, wave none
Nguồn
recolor explosions/firework-burst --opts {sparks:6, radius:12} + phần packet mới trong src/fx/heroes/halka-toll-chain.js
Review
check_mjs pending (node tools/check.mjs explosions/firework-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.05Phần 'packet' (sprite 12×6, runtime dời thẳng trên sàn từ kẻ trước tới kẻ kế trong 3 tick, không giãn): 3 cung sóng ')))' #a8d7ff.
0Frame trắng tại kẻ kế: pháo hoa nhỏ — đĩa r4 #ffffff, 6 tia 4 px.
0.033Vành r4 → r12 (elip 24×12) #6eb4ff 1 px; 6 SPARK lam bung spawn3.
0.15SPARK rơi #295aa8; vành tan.
0.3Rỗng.

Hồi Chuông Lan H03_SK01_RING (sk01 hit_frame 5, startup 10 tick, vòng…

VFX_H03_SK01_ringSIGNATURELớp: floor_decalCỡ: XLLOD: L3

Hồi Chuông Lan: gõ cán xuống sàn, một vành ngân lam đặc lan tới r140 trong 0.5 s, mép ngoài lấp lánh; hạng III vành dội ngược về tâm. Vành vẽ thủ tục nên luôn khớp bán kính thật.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_SK01_ring15 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H03_SK01_ringHitbox VFX_H03_SK01_ring40 px80 px120 px160 pxRINGRINGhurtbox r 7shape RING r_mid 140 band 24sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hồi Chuông Lan H03_SK01_RING (sk01 hit_frame 5, startup 10 tick, vòng r0 → r140 trong 30 tick, dày 24); H03_UL1_TOLL (4 hồi r40 → r130 tick 54/72/90/108), Edge H03_E16 (r90/144 từ kẻ tấn công), H03_E22 (r110 từ mục tiêu Phản), H03_E25 (+15/26/38%), H03_EVO1 (3 vòng tới r170), cộng hưởng H03_RS2. t = 0 = cán chạm sàn.
Canvas
304×160 gốc 152/80
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.5
Easing
curve outQuart, freeze_s 0.03
Hạt
kind STAR, count 16, speed 0, life_s 0.2, hex #dcefff, gravity 0, shadow không
Hitbox
shape ring r140 w24, match Vành thủ tục = vùng trúng frame đó (dải [r−12, r+12]), lệch 0 px; mỗi kẻ trúng 1 lần khi mép chạm; r_max đúng r thật (140/160/170/130/110/90/144)., wave procedural
Nguồn
shader FloorEllipse {shape:ring} (runtime, dùng chung mọi vành hero r > 112) + new src/fx/heroes/halka-ring-glint.js (sheet glint 8×8)
Review
check_mjs pending (node tools/check.mjs heroes/halka-sk01-ring), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'ring r140 w24' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: đĩa r10 #fff6f0 tại tâm, chớp cán #ffffff.
0.033Vành thủ tục r(t) = r_max·outQuart(t/0.5): dải dày 24 (màn 24 Đ/T, 12 B/N) fill α 0.4 #295aa8, mép ngoài 2 px #a8d7ff, mép trong 1 px #3680e0.
0.25Vành tại r≈131 (r140 bản gốc); glint sheet 8×8 ×16 rải đều trên mép ngoài, sống 0.2 s.
0.5Vành chạm r_max, tan α → 0 trong 2 frame. Hạng III: 0.6 s sau phát ngược r_max → 0 (cùng shader, α ×0.5).
0.6Rỗng (hạng I/II).

Mũi Kim Chuông — nhả (H03_SK05_NEEDLE, sk05 hit_frame 15, LINE 110 × …

VFX_H03_SK05_needleSIGNATURELớp: overheadCỡ: MLOD: L3

Mũi Kim Chuông: một kim sáng trắng mảnh xuyên 110 px, ba nhẫn ngân quấn thân trượt ra mũi, đoạn mũi 20 px cuối sáng nhất (×1.5, +3 Vang).

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_SK05_needle12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_SK05_needleHitbox VFX_H03_SK05_needle32 px64 px96 px128 pxRECThurtbox r 7shape RECT len 110 w 11sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Mũi Kim Chuông — nhả (H03_SK05_NEEDLE, sk05 hit_frame 15, LINE 110 × 11, step 12, hitstop 0.07, trauma 0.3); EVO2 Kim Xuyên Trời len 170; UL3 len 140; Edge H03_E28 (đoạn mũi +12/20 px). t = 0 = frame xuyên.
Canvas
136×44 gốc 14/32
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0.07
Hạt
kind STREAK, count 6, speed 400, life_s 0.12, hex #dcefff, gravity 0, shadow không
Hitbox
shape line L110 W11, match Dải sàn x0–x110 rộng 11 (màn e 110×6, n/s 55×11); mũi + vòng ngân tới x114 (≤ 6 ✓); phủ 100%. EVO2 L170 → s1.7 ×0.91; UL3 L140 → s1.3 ×0.98. Đo --dirs 8., wave none
Nguồn
new src/fx/heroes/halka-sk05-needle.js (beam + nhẫn; mượn melee/thrust)
Review
check_mjs pending (node tools/check.mjs heroes/halka-sk05-needle), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L110 W11' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: kim sáng x0 → x110 h20 dày 2 px #ffffff, đoạn mũi x90–110 dày 3 px; sàn shadeFloor 110 × 11 α 0.45 #1e3c6b.
0.033Thân kim #a8d7ff 2 px, đoạn mũi #dcefff 3 px + vòng ngân r6 tại x110; 3 vòng nhẫn 1 px quấn thân ở x30/60/90.
0.1Kim tắt từ đuôi; vòng nhẫn trượt ra mũi; 6 STREAK bay tiếp 400 px/s.
0.25Còn đoạn mũi #3680e0 1 px; sàn tan dither.
0.4Rỗng.

Xoay Sào Hộ H03_SK06_SPIN (sk06, 40 frame, hit_frames 4/11/19/26 = 4 …

VFX_H03_SK06_pivotSIGNATURELớp: overheadCỡ: LLOD: L3

Xoay Sào Hộ: Halka cắm sào và xoay quanh cán, mũi giáo quét bốn cung lam quanh người đúng dải r44–84, mỗi nhịp hất quái văng ra mép r88.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_SK06_pivot30 khung @ 30 fpsantic · khung 0–3impact · khung 4–5dissipate · khung 6–2930 khung · 30 fps · 1 s
Hitbox VFX_H03_SK06_pivotHitbox VFX_H03_SK06_pivot24 px48 px72 px96 pxRINGRINGhurtbox r 7shape RING r_mid 64 band 40sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Xoay Sào Hộ H03_SK06_SPIN (sk06, 40 frame, hit_frames 4/11/19/26 = 4 nhịp mỗi 15 tick, RING r64 dải 40, đẩy S/M ra r88); Edge H03_E21 (+6/10/16 px). t = 0 = sào cắm (trước nhịp 1 0.133 s).
Canvas
192×128 gốc 96/80
Pha (s)
antic 0/0.133 · impact 0.133/0.167 · dissipate 0.167/1
Easing
curve outQuart, freeze_s 0.03
Hạt
kind DUST, count 16, speed 60, life_s 0.3, hex #1e3c6b, gravity 0, shadow không
Hitbox
shape ring r64 w40, match Dải sàn r44–r84 vẽ đúng ring r64 w40 (màn: dày 40 Đ/T, 20 B/N); cung quét mũi tại r64; DUST tới r88 = mép đẩy (vượt 4 px ≤ 10 ✓). II r72 → s1.0 ×1.13; E21 +16 → r88 → s1.3 ×1.06., wave reach
Nguồn
new src/fx/heroes/halka-sk06-pivot.js (swing tròn 4 nhịp; mượn melee/spin-slash + _reaver.js bladeArc)
Review
check_mjs pending (node tools/check.mjs heroes/halka-sk06-pivot), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'ring r64 w40' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Sào cắm tại chân: đĩa r6 #dcefff; Halka bắt đầu xoay quanh cán.
0.133Nhịp 1: vệt quét tròn của mũi giáo r64 (elip 128×64) 90° dày 3 px #a8d7ff, mép trước #fff6f0; dải sàn r44–84 fill α 0.3 #295aa8 sáng theo cung quét; 4 DUST văng ra r88.
0.367Nhịp 2 (frame 11): cung quét tiếp 90°, cung cũ nguội #3680e0; nửa xa vòng ở drawBack.
0.633Nhịp 3 (frame 19).
0.867Nhịp 4 (frame 26): khép đủ 360°, vòng sáng 1 frame #dcefff toàn vòng.
1Tan; rỗng.

Đại Hồng Chung: H03_UL1_IMPACT (startup 36 tick, r130, 8.0× Lực, +3 V…

VFX_H03_UL1_great_bellSIGNATURELớp: overheadCỡ: XLLOD: L3

Đại Hồng Chung: chuông đồng khổng lồ rơi thẳng xuống bóng lam, chớp trắng, sỏi bung, rồi ngân bốn hồi — mỗi hồi một vành lan r130, hồi bốn vỡ âm lần nữa.

#1e3c6b#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_UL1_great_bell60 khung @ 30 fpsantic · khung 0–5impact · khung 6–8dissipate · khung 9–5960 khung · 30 fps · 2 s
Hitbox VFX_H03_UL1_great_bellHitbox VFX_H03_UL1_great_bell40 px80 px120 pxCIRCLEhurtbox r 7shape CIRCLE r 130sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Đại Hồng Chung: H03_UL1_IMPACT (startup 36 tick, r130, 8.0× Lực, +3 Vang rồi Vỡ Âm, hitstop 0.1, trauma 0.8) + H03_UL1_TOLL (4 hồi tick 54/72/90/108); Edge H03_E35 (chuông ở lại 6 s, xung r130 mỗi 1.5 s), H03_E39 (bản r80). Kèm VFX_SHARED_screen_flash_ult. t = 0 = chuông chạm sàn.
Canvas
288×232 gốc 144/196
Pha (s)
antic −0.2/0 · impact 0/0.1 · dissipate 0.1/1.8
Easing
curve outQuart, freeze_s 0.1
Hạt
kind GRIT, count 16, speed 160, life_s 0.5, hex #295aa8, gravity 950, shadow có/kind DUST, count 8, speed 40, life_s 0.5, hex #1e3c6b, gravity 0, shadow không/kind MOTE, count 12, speed 20, life_s 0.6, hex #a8d7ff, gravity −30, shadow không
Hitbox
shape circle r130, match Cú rơi: mép sóng thủ tục đúng r130 (= bóng UL1_shadow), lệch 0 px; thân chuông 64 px nằm trong; GRIT tới r136 (≤ 10 ✓). Hồi ngân: ring r130 w30 do SK01_ring vẽ. E39 bản r80 xuất --opts {radius:80, bell:[40,44]}., wave procedural
Nguồn
new src/fx/heroes/halka-ul1-great-bell.js (mượn heroes/bellwarden-toll.js chuông lắc + _lib.js slam; ramp hero, chuông = r7 + lõi theo art lock)
Review
check_mjs pending (node tools/check.mjs heroes/halka-ul1-great-bell), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r130' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.2Chuông đồng khổng lồ 64×72 px (vòm + miệng loe, 3 đai nổi) rơi từ h120 xuống h0 (inQuad), thân r3/r5, đai r7, lõi phản quang #fff6f0.
0Chạm: frame trắng #ffffff toàn chuông 2 frame; đĩa sàn r40 #fff6f0; 16 GRIT + 8 DUST bung spawn3; khựng 0.1 s.
0.1Sóng sàn đặc r40 → r130 (vành thủ tục FloorEllipse {shape:ring}), chuông rung ±2 px.
0.3Hồi 1 (tick 54 tính từ cast): chuông lắc nghiêng ±4 px, chớp đai #dcefff, vành SK01_ring r40 → r130.
0.6Hồi 2; 0.9 hồi 3; 1.2 hồi 4 (kích Vỡ Âm lần 2 — VFX_H03_toll_burst).
1.4Chuông tan thành MOTE lam bốc lên, rỗng ở 1.8 s (khung 60 tính từ −0.2). E35: giữ frame 30–41 lặp 6 s, xung mỗi 1.5 s.

Hồi Chuông Tiễn: H03_UL2_POKE (ul2, ghim mục tiêu chính trong 140 px …

VFX_H03_UL2_toll_riteSIGNATURELớp: overheadCỡ: MLOD: L3

Hồi Chuông Tiễn: ghim một mục tiêu bằng vòng ba chuông; chín cú chọc trắng liên hồi, cứ ba cú một chuông sáng và vỡ âm trên nó, cú cuối ba chuông cùng chớp để tiễn.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_UL2_toll_rite60 khung @ 30 fpsantic · khung 0–5impact · khung 6–6dissipate · khung 7–5960 khung · 30 fps · 2 s
Hitbox VFX_H03_UL2_toll_riteHitbox VFX_H03_UL2_toll_rite32 px64 px96 pxRECThurtbox r 7shape RECT len 100 w 12sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Hồi Chuông Tiễn: H03_UL2_POKE (ul2, ghim mục tiêu chính trong 140 px 1.8 s, 9 cú chọc LINE 100 × 12 mỗi 6 tick, hit_frames 6/9/…/27) + H03_UL2_TOLL (Vỡ Âm sau cú 3/6/9, hit_frame 33 kết liễu); Edge H03_E23. t = 0 = cú chọc 1.
Canvas
124×72 gốc 12/48
Pha (s)
antic −0.2/0 · impact 0/0.033 · dissipate 0.033/1.8
Easing
curve outExpo, freeze_s 0.03
Hạt
kind SPARK, count 36, speed 120, life_s 0.2, hex #a8d7ff, gravity 950, shadow không
Hitbox
shape line L100 W12, match Poke: dải sàn x0–x100 rộng 12 (màn e 100×6, n/s 50×12) mỗi cú, mũi tới x103 (≤ 6 ✓). Pin r24 chỉ là hình (mục tiêu đã chọn)., wave none
Nguồn
new src/fx/heroes/halka-ul2-toll-rite.js (2 phần pin/poke; poke mượn melee/thrust)
Review
check_mjs pending (node tools/check.mjs heroes/halka-ul2-toll-rite), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L100 W12' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.2Ghim: quanh chân mục tiêu hiện vòng ghim r24 1 px #6eb4ff + 3 hình chuông 6×6 tắt (#1e3c6b) xếp tam giác trên vòng (phần 'pin', neo floor mục tiêu).
0Phần 'poke' (8 hướng, neo feet Halka): vệt chọc x0 → x100 h20 dày 2 px #fff6f0, mũi #ffffff; sàn 100 × 12 α 0.3; mỗi 0.1 s một cú, lệch d ±3 px luân phiên.
0.3Sau cú 3: chuông pin 1 sáng #dcefff + Vỡ Âm tại mục tiêu (VFX_H03_toll_burst bậc s1.0).
0.6Cú 6: chuông 2 sáng + Vỡ Âm; 0.9 cú 9: chuông 3 sáng.
1.1Cú kết (frame 33): 3 chuông chớp trắng cùng lúc, vòng ghim nổ r24 → r40; kết liễu ≤ 15% HP.
1.8Tan, rỗng.

Lính Gác Cuối: H03_UL3_CAST (ul3 hit_frame 8, startup 10 tick, xung r…

VFX_H03_UL3_warden_auraSIGNATURELớp: body_backCỡ: LLOD: L3

Lính Gác Cuối: ba chuông ngân cùng lúc, vành lam lan r96; suốt 9 s Halka mang viền choàng lam sáng và hai dải sáng dựng hai bên thân như lính gác đứng canh.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_UL3_warden_aura12 khung @ 12 fpsantic · khung 0–0dissipate · khung 1–1112 khung · 12 fps · 1 s · lặp
Hitbox VFX_H03_UL3_warden_auraHitbox VFX_H03_UL3_warden_aura24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 96sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Lính Gác Cuối: H03_UL3_CAST (ul3 hit_frame 8, startup 10 tick, xung r96 +2 Vang, bất tử 30 tick) rồi dạng 9 s (H03_UL3_PULSE tháp theo người). t = 0 = xung kích; aura loop từ 0 tới hết 9 s.
Canvas
208×112 gốc 104/72
Pha (s)
antic 0/0.083 · impact 0.083/0.083 · dissipate 0.833/1
Easing
curve inOutQuad, freeze_s 0.08
Hạt
kind MOTE, count 2, speed 20, life_s 0.8, hex #a8d7ff, gravity −20, shadow không
Hitbox
shape circle r96, match Phần cast: vành đúng elip r96 (192×96) tại 0.1 s, +2 Vang tức thì tick kích. Aura không hitbox; tháp theo người dùng VFX_H03_plant_tower + tower_pulse (r80)., wave none
Nguồn
new src/fx/heroes/halka-ul3-warden-aura.js (2 phần cast/aura; outline choàng mượn status/aura-outline nếu có, không thì mask thân từ act)
Review
check_mjs pending (node tools/check.mjs heroes/halka-ul3-warden-aura), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r96' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Phần 'cast' (one-shot 12 frame @30, overhead): 3 chuông giáo chớp #ffffff cùng lúc, đĩa r16 #fff6f0, vành lan r16 → r96 (elip 192×96) 2 px #a8d7ff trong 0.1 s, fill α 0.3.
0.083Phần 'aura' (loop 12 frame @12, body_back, khung 48×64 trong canvas): cột sáng mảnh 2 bên thân h0 → h46 #3680e0 α 0.5, mép áo choàng viền 1 px #6eb4ff, 3 chuông giáo luôn sáng #dcefff.
0.5Aura: 2 MOTE bốc từ vai; viền choàng nhịp sáng α 0.6 → 1.0.
0.833Aura khép chu kỳ (khung cuối khớp khung đầu).
1Lặp tới hết 9 s; ra: tan 0.15 s dither.

Tiến hoá H03_EVO4 Giáo Chuông Thức Tỉnh: (1) 1 lần khi nhận tiến hoá …

VFX_H03_EVO4_awakenSIGNATURELớp: overheadCỡ: MLOD: L3

Giáo Chuông Thức Tỉnh: mỗi lần trúng mũi, ba cung sóng ngân bay tiếp 60 px trước mũi giáo; lúc nhận tiến hoá cả cây giáo sáng dọc cán và ba chuông chớp.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_EVO4_awaken10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Hitbox VFX_H03_EVO4_awakenHitbox VFX_H03_EVO4_awaken16 px32 px48 px64 pxRECThurtbox r 7shape RECT len 60 w 22sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Tiến hoá H03_EVO4 Giáo Chuông Thức Tỉnh: (1) 1 lần khi nhận tiến hoá (t = 0 = nhận); (2) mỗi cú chọc combo TRÚNG MŨI: sóng ngân phóng tiếp 60 px từ mũi (0.8× Lực, +1 Vang) — t = 0 = frame trúng mũi.
Canvas
96×48 gốc 8/34
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outQuart, freeze_s 0
Hạt
kind MOTE, count 12, speed 30, life_s 0.5, hex #a8d7ff, gravity −10, shadow không
Hitbox
shape line L60 W22, match Sóng: dải sàn x0–x60 tính từ mũi, rộng 22 (= W16 + 6 EVO4); cung đầu dừng ở x62 (≤ 6 ✓), trúng theo reach của cung đầu., wave reach
Nguồn
new src/fx/heroes/halka-evo4-awaken.js (2 phần wave/awaken; mượn bladewake/crescent-wave cung sóng)
Review
check_mjs pending (node tools/check.mjs heroes/halka-evo4-awaken), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L60 W22' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Phần 'wave' (8 hướng, neo mũi giáo): 3 cung sóng ')))' cao 16 px (elip dọc) xuất phát tại mũi, cung đầu #fff6f0 2 px.
0.067Cung đầu tới x30, #a8d7ff; dải sàn x0–x60 rộng 22 shadeFloor α 0.3 #295aa8 sáng theo sóng.
0.15Cung đầu tới x60 (hết tầm) rồi tan; cung 2/3 theo sau cách 8 px, #6eb4ff/#3680e0.
0.333Rỗng. Phần 'awaken' (one-shot 1 lần, 30 frame, socket hand_main): giáo sáng dọc cán từ chuôi tới mũi #dcefff, 3 chuông chớp, 12 MOTE xoắn quanh cán.

TEMPLATE · 25

Cú đáp: H03_COMBO_A_5 (attack5 hit_frame 10, CIRCLE r40, hitstop 0.07…

VFX_H03_vault_landTEMPLATELớp: overheadCỡ: MLOD: L3

Cú đáp sau Nhảy Sào: chớp trắng dưới chân, vành lam bung đúng r40, sỏi và bụi bật hai bên.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_vault_land12 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_vault_landHitbox VFX_H03_vault_land8 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
Cú đáp: H03_COMBO_A_5 (attack5 hit_frame 10, CIRCLE r40, hitstop 0.07, trauma 0.28), H03_HOLD_VAULT (đáp, trauma 0.12), H03_SK07_LAND (r40, mỗi lần), Edge H03_E09 (+70/122/175% sát thương), H03_E10 (+1/2 Vang). Cú đáp ngoài hồi 1.2 s kích Vỡ Âm r90 → phát thêm VFX_H03_toll_burst. t = 0 = chân chạm sàn.
Canvas
96×60 gốc 48/36
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.07
Hạt
kind GRIT, count 6, speed 120, life_s 0.35, hex #295aa8, gravity 950, shadow có/kind DUST, count 6, speed 30, life_s 0.3, hex #1e3c6b, gravity 0, shadow không
Hitbox
shape circle r40, match Vành vẽ đúng elip r40 (80×40) lúc 0.067 s, GRIT tới r44 (≤ 6 ✓), phủ 100%., wave reach
Nguồn
recolor impacts/heavy-landing --opts {radius:40, rocks:6}
Review
check_mjs pending (node tools/check.mjs impacts/heavy-landing), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r40' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: đĩa sàn r12 #fff6f0, chuôi giáo cắm cạnh chân chớp #ffffff.
0.033Vành r12 → r28 dày 3 px #a8d7ff; 6 GRIT bật cao 12 px.
0.067Vành chạm r40 (elip 80×40) #6eb4ff 2 px, fill α 0.35 #295aa8; bụi DUST 2 cụm hai bên.
0.2Vành tan 1 px #3680e0; GRIT rơi nảy.
0.4Rỗng.

H03_DASH Lướt Vọt Sào (dash 9 tick active, 90 px, iframe 12 tick, 2 l…

VFX_H03_dash_poleTEMPLATELớp: floor_decalCỡ: MLOD: L2

Lướt chống sào: chuôi giáo cào một vệt lam mảnh 90 px trên sàn, bụi cuộn sau gót, ba chuông lấp lánh theo đà.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_dash_pole12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Chi tiết spec
Kích hoạt
H03_DASH Lướt Vọt Sào (dash 9 tick active, 90 px, iframe 12 tick, 2 lượt): t = 0 = frame đầu Lướt; Edge H03_E08 (dải Vang 24/42/60 px), H03_E12 (dừng 70–100 px: chớp hoàn lượt ở cuối vệt). Đi kèm VFX_SHARED_dash_afterimage.
Canvas
120×36 gốc 14/28
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outQuart, freeze_s 0
Hạt
kind DUST, count 10, speed 30, life_s 0.3, hex #1e3c6b, gravity 0, shadow không
Hitbox
shape none, wave none
Nguồn
recolor bladewake/dust-dash --opts {len:90, scrape:true}
Review
check_mjs pending (node tools/check.mjs bladewake/dust-dash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Chuôi giáo cào sàn tại x0: chớp #fff6f0 3×2 + 4 DUST bật ngược.
0.1Vệt cào sàn 1 px #6eb4ff kéo dài x0 → x45; bụi DUST #295aa8 cuộn sau gót; 3 chuông rung: 3 chấm #dcefff nhấp nháy theo thân.
0.15Vệt tới x90 (hết Lướt); bụi cuộn 2 cụm tại x30/x70.
0.25Vệt sàn nguội #1e3c6b α 0.5; bụi tan lên 6 px.
0.4Rỗng.

Chọc combo: H03_COMBO_A_1 (attack1 hit_frame 3, startup 6 tick) và H0…

VFX_H03_a1_thrustTEMPLATELớp: overheadCỡ: MLOD: L3

Vệt chọc thẳng của giáo chuông: lõi ngà mảnh, đoạn mũi 20 px cuối sáng hơn để người chơi đọc được 'trúng mũi'. Dạng Rèn: AS2 Giáo Chuông Đôi len 65 (range −15) hue −3; AS3 Giáo Móc Chuông len 100 (range +20) hue +3 — xuất qua node tools/hero.mjs halka attack1 attack2 --as h03_as2|h03_as3.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_a1_thrust9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Hitbox VFX_H03_a1_thrustHitbox VFX_H03_a1_thrust24 px48 px72 px96 pxRECThurtbox r 7shape RECT len 80 w 16sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Chọc combo: H03_COMBO_A_1 (attack1 hit_frame 3, startup 6 tick) và H03_COMBO_A_2 (attack2 hit_frame 3, startup 5 tick, mũi lệch d +6 px sang phải); t = 0 = frame chạm. EVO4 (H03_EVO4): cùng sheet bậc dài hơn (len +20, w +6). UL3 Lính Gác Cuối: tầm +30 px.
Canvas
112×48 gốc 12/36
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outQuart, freeze_s 0
Hạt
kind MOTE, count 3, speed 40, life_s 0.25, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape line L80 W16, match Dải sàn shadeFloor vẽ đúng x10–x90 rộng 16 (màn e 80×8, n/s 40×16, chéo 63×12); vệt sáng dừng ở x92 (vượt 2 px ≤ 6 ✓), phủ 100% chiều dài; gốc = chân sau bước 6 px. Đo trên --dirs 8., wave none
Nguồn
recolor melee/thrust --opts {len:80, w:16, h:20, tipSeg:[70,90]} (mượn heroes/_reaver.js keepIn; giáo vẽ ở _halka.js)
Review
check_mjs pending (node tools/check.mjs melee/thrust), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L80 W16' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame chạm (1 frame): vệt chọc thẳng từ x10 tới x62 ở cao h 20 (ngang ngực), lõi #fff6f0 dày 3 px, đầu nhọn #ffffff 2 px; sàn: dải shadeFloor 80 × 16 (màn hướng e 80 × 8) α 0.35 #1e3c6b.
0.033Vệt chạm đủ x90: thân #a8d7ff, viền #3680e0 1 px; đoạn mũi x70–90 sáng r7 #dcefff dày 4 px (dấu đoạn mũi ×1.5, +2 Vang).
0.1Vệt rút từ đuôi về mũi (đuôi ở x40), màu nguội #6eb4ff; 3 MOTE bung ngang tại x88.
0.2Còn đoạn x70–90 #295aa8 1 px + 3 MOTE lơ lửng; dải sàn α 0.12.
0.3Rỗng.

Trúng đòn chọc (t = 0 = frame trúng mục tiêu): H03_COMBO_A_1/2/3, H03…

VFX_H03_tip_sparkTEMPLATELớp: overheadCỡ: SLOD: L2

Tia trúng của mũi giáo: chớp trắng 1 frame, 6 tia xoè theo hướng chọc và một vòng ngân nhỏ như tiếng chuông chạm. Trúng đoạn mũi phát bậc s1.3 (10 tia, viền #dcefff).

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_tip_spark9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Chi tiết spec
Kích hoạt
Trúng đòn chọc (t = 0 = frame trúng mục tiêu): H03_COMBO_A_1/2/3, H03_DASH_ATTACK, H03_UL2_POKE (9 cú), Edge H03_E02 (chí mạng mũi), H03_E12, H03_E19 (Đâm Chuông đoạn mũi ≥ 84 px), cộng hưởng H03_RS1. Trúng ĐOẠN MŨI → bậc s1.3 + viền r7.
Canvas
32×32 gốc 10/18
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 6, speed 120, life_s 0.25, hex #a8d7ff, gravity 950, shadow không
Hitbox
shape none, wave none
Nguồn
recolor impacts/hit-spark --opts {sparks:6, ring:5}
Review
check_mjs pending (node tools/check.mjs impacts/hit-spark), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng #ffffff 1 frame: chấm chạm 4×4 + 6 tia ngắn 3–5 px xoè ±40° theo hướng chọc.
0.033Lõi #fff6f0 3×3, tia dài 6–8 px #a8d7ff, 1 vòng ngân nhỏ r5 (elip 10×5) #6eb4ff 1 px quanh điểm chạm.
0.1Vòng ngân r8 tan còn 1 px #3680e0; 4 SPARK bay tiếp 120 px/s, rơi.
0.2SPARK chạm sàn nảy 1 lần, #295aa8.
0.3Rỗng.

H03_COMBO_A_3 Chọc Xoắn (attack3 hit_frame 4, startup 8 tick, active …

VFX_H03_a3_twistTEMPLATELớp: overheadCỡ: MLOD: L3

Chọc xoắn sâu 96 px: trục ngà thẳng, hai sợi lam xoắn quanh như cán giáo vặn, ba chuông ở cổ mũi ngân một hồi.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_a3_twist12 khung @ 30 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_a3_twistHitbox VFX_H03_a3_twist24 px48 px72 px96 pxRECThurtbox r 7shape RECT len 86 w 18sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H03_COMBO_A_3 Chọc Xoắn (attack3 hit_frame 4, startup 8 tick, active 5 tick, trauma 0.22); t = 0 = frame chạm.
Canvas
124×52 gốc 12/38
Pha (s)
antic −0.067/0 · impact 0/0.05 · dissipate 0.05/0.4
Easing
curve outQuart, freeze_s 0.045
Hạt
kind MOTE, count 6, speed 60, life_s 0.3, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape line L86 W18, match Dải sàn x10–x96 rộng 18 (màn e 86×9, n/s 43×18); biên độ xoắn ±4 px nằm trong W18; mũi sáng tới x98 (vượt 2 px ≤ 6 ✓); phủ 100%. Đo trên --dirs 8., wave none
Nguồn
recolor melee/spear-sweep --opts {mode:'twist', len:86, w:18, helix:2}; helix mới viết trong src/fx/heroes/halka-a3-twist.js nếu knob mode chưa có
Review
check_mjs pending (node tools/check.mjs melee/spear-sweep), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L86 W18' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Antic 2 frame: 3 chuông ở cổ mũi (x≈22 h20) loé #dcefff 1 px từng chuông, 2 sợi xoắn mờ α 0.4 quấn quanh cán.
0Frame chạm: vệt xoắn 2 sợi xoắn ốc (biên độ ±4 px, bước 12 px) quấn quanh trục chọc x10 → x96, lõi trục #fff6f0 3 px, mũi #ffffff; sàn shadeFloor 86 × 18 α 0.38 #1e3c6b.
0.05Sợi xoắn #a8d7ff/#6eb4ff xoay pha +90°; đoạn mũi x76–96 #dcefff 4 px; 3 vòng ngân r4 phát từ 3 chuông.
0.15Sợi xoắn rút về mũi, đuôi tại x50; 6 MOTE xoáy theo đường xoắn ra trước.
0.3Còn mũi #295aa8 + MOTE tan; dải sàn α 0.1 dither.
0.4Rỗng.

Cắm Sào: H03_COMBO_A_4 (attack4 hit_frame 6, startup 11 tick, active …

VFX_H03_plant_impactTEMPLATELớp: overheadCỡ: MLOD: L3

Cú cắm chuôi giáo xuống sàn: chớp trắng tại chuôi, sóng sàn lam lan đúng r56 trước mặt, sỏi bật và vết nứt 4 nhánh còn 1.5 s.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_plant_impact15 khung @ 30 fpsantic · khung 0–2impact · khung 3–4dissipate · khung 5–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H03_plant_impactHitbox VFX_H03_plant_impact16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 56sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Cắm Sào: H03_COMBO_A_4 (attack4 hit_frame 6, startup 11 tick, active 5, hitstop 0.07, trauma 0.28), H03_AS3_A4_HOOK (off_fwd 48, startup 13); Edge H03_E03 (bán kính +25/44/62%), H03_E06 (Cắm Sào kế ×1.25). t = 0 = chuôi chạm sàn.
Canvas
128×88 gốc 24/52
Pha (s)
antic −0.067/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0.07
Hạt
kind GRIT, count 8, speed 140, life_s 0.4, hex #295aa8, gravity 950, shadow có/kind MOTE, count 4, speed 30, life_s 0.2, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape circle r56, match Vành ngoài vẽ đúng elip r56 (112×56) tâm off_fwd 40 tại frame 0.067 s; GRIT bay tới r60 (vượt 4 px ≤ 6 ✓); fill phủ 100%. Bậc E03: r70/81/91 qua s1.3/1.3/1.7. Đo trên --dirs 8., wave reach
Nguồn
recolor impacts/ground-slam --opts {radius:56, off:40, cracks:4}
Review
check_mjs pending (node tools/check.mjs impacts/ground-slam), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r56' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Chuôi bịt đồng hình chuông úp hạ xuống tại x40: chấm sáng #dcefff 2 px trên sàn, 4 MOTE hút vào.
0Frame trắng: đĩa sàn r20 #fff6f0 tâm x40 (elip 40×20), vành #ffffff 2 px; cột sáng mảnh 4 × 24 px dựng tại chuôi.
0.033Vành sóng lan r20 → r40, dày 3 px #a8d7ff, fill α 0.4 #295aa8; 8 GRIT bật cao 16 px (spawn3).
0.067Vành tới r56 (elip 112×56 tâm x40) #6eb4ff 2 px; fill α 0.3; nứt sàn 4 nhánh #102347 dài 10–18 px.
0.25Vành tan dither; GRIT rơi nảy; nứt chuyển decal sống 1.5 s.
0.5Rỗng (decal nứt còn ở floor_decal).

Mỗi xung tháp: H03_HEAVY_1 (tick 0/90/180/270, 1.5 s), H03_SK04_TOWER…

VFX_H03_tower_pulseTEMPLATELớp: overheadCỡ: LLOD: L3

Xung tháp: chuông trên đỉnh cột loé trắng, một vành ngân lam lan tới đúng bán kính tháp trong 0.1 s rồi mỏng dần; mỗi xung cấy +1 Vang.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_tower_pulse10 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–910 khung · 30 fps · 0.333 s
Hitbox VFX_H03_tower_pulseHitbox VFX_H03_tower_pulse24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 80sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Mỗi xung tháp: H03_HEAVY_1 (tick 0/90/180/270, 1.5 s), H03_SK04_TOWER (1.0 s), H03_UL3_PULSE (1.0 s), Edge H03_E04 (xung gây 1.2/1.9× Lực), H03_E14 (Nhảy Sào gọi tháp r220 xung ngay), H03_E27, H03_E35 (Đại Hồng Chung đứng lại xung r130), H03_EVO3 (r120). t = 0 = tick xung.
Canvas
176×96 gốc 88/52
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.333
Easing
curve outExpo, freeze_s 0
Hạt
kind MOTE, count 6, speed 30, life_s 0.25, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape circle r80, match Vành sheet chạm elip r80 (160×80) tại 0.1 s; +Vang/sát thương áp tức thì tick 0 cho cả r80 (vành lan chỉ là hình). r96 → s1.3 ×0.92; r120 (EVO3) → s1.7 ×0.88; r60 (E27) → s1.0 ×0.87 = r70 (vượt 10 px ≤ 10 L ✓, viền thủ tục plant_tower vẫn đúng r60); r130 (E35) → s1.7 ×0.96., wave none
Nguồn
recolor lightning/thunderclap --opts {radius:80, bolt:false, ring:true}
Review
check_mjs pending (node tools/check.mjs lightning/thunderclap), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r80' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: đỉnh cột loé #ffffff 6×6 (chuông gõ), đĩa sàn r12 #fff6f0 tại chân.
0.033Vành lan r12 → r50 dày 3 px #a8d7ff, fill α 0.3 #295aa8 sau vành.
0.1Vành chạm r80 (elip 160×80) #6eb4ff 2 px; 6 MOTE bật lên từ vành.
0.2Vành giữ r80 mỏng 1 px #3680e0, α 0.5; fill tan.
0.333Rỗng.

H03_DASH_ATTACK Chọc Lướt (dash_attack hit_frame 2, startup 4 tick, a…

VFX_H03_dash_attackTEMPLATELớp: overheadCỡ: MLOD: L3

Chọc theo đà Lướt: một vệt lam ngà dài 100 px xuyên cả hàng quái, sóng gió chữ V sau mũi và vệt sàn đúng dải trúng 100 × 24.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_dash_attack12 khung @ 30 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_dash_attackHitbox VFX_H03_dash_attack32 px64 px96 pxRECThurtbox r 7shape RECT len 100 w 24sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
H03_DASH_ATTACK Chọc Lướt (dash_attack hit_frame 2, startup 4 tick, active 4, step 10, trauma 0.22): t = 0 = frame chạm; tính là bước 1 combo.
Canvas
128×52 gốc 14/38
Pha (s)
antic −0.067/0 · impact 0/0.05 · dissipate 0.05/0.4
Easing
curve outExpo, freeze_s 0.045
Hạt
kind STREAK, count 5, speed 300, life_s 0.15, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape line L100 W24, match Dải sàn x0–x100 rộng 24 (màn e 100×12, n/s 50×24, chéo 79×18); STREAK vượt tới x104 (≤ 6 ✓); phủ 100%. Đo trên --dirs 8., wave none
Nguồn
recolor moves/dash-strike --opts {len:100, w:24, h:18}
Review
check_mjs pending (node tools/check.mjs moves/dash-strike), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'line L100 W24' (elip 1 px) trên --dirs 8 hướng + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Đà Lướt: 3 vệt tốc ngang 1 px #3680e0 sau lưng, mũi giáo chớm sáng #a8d7ff.
0Frame trắng: vệt chọc dài x0 → x100 h18, lõi #fff6f0 4 px, đầu #ffffff; sàn shadeFloor 100 × 24 α 0.4 #1e3c6b.
0.05Thân vệt #a8d7ff, đoạn mũi x80–100 #dcefff 5 px; sóng gió chữ V 2 nhánh từ thân xoè ±10° sau mũi.
0.15Vệt rút về mũi (đuôi x60), 5 STREAK bay tiếp 300 px/s qua x100.
0.3Còn mũi #295aa8 1 px; dải sàn tan dither.
0.4Rỗng.

Gõ Chuông trúng ĐẠN (H03_ANSWER, nhánh proj_result): đạn vỡ tan thành…

VFX_H03_answer_projTEMPLATELớp: overheadCỡ: SLOD: L2

Đạn bị Gõ Chuông đánh tan: chớp trắng nhỏ rồi vỡ thành năm mảnh chuông lam văng ngược lại.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_answer_proj9 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–89 khung · 30 fps · 0.3 s
Chi tiết spec
Kích hoạt
Gõ Chuông trúng ĐẠN (H03_ANSWER, nhánh proj_result): đạn vỡ tan thành mảnh chuông lam tại điểm đạn; t = 0 = frame ĐÁP trúng đạn. Xung r48 phát riêng qua VFX_H03_answer_bell.
Canvas
32×32 gốc 12/18
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind SHARD, count 5, speed 110, life_s 0.3, hex #a8d7ff, gravity 950, shadow có
Hitbox
shape none, wave none
Nguồn
recolor impacts/parry --opts {shards:5, cone:50}
Review
check_mjs pending (node tools/check.mjs impacts/parry), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: đạn thành chớp tròn 6×6 #ffffff, viền #dcefff.
0.033Đạn vỡ: 5 mảnh SHARD hình cung chuông 3×2 #a8d7ff văng ngược hướng bay đạn ±50°.
0.133Mảnh nguội #3680e0, rơi xuống sàn có bóng 1 px.
0.3Rỗng.

Gióng Ba Hồi H03_SK02_CAST (sk02 hit_frame 0, startup 12 tick, xung r…

VFX_H03_SK02_thresholdTEMPLATELớp: floor_decalCỡ: XLLOD: L3

Gióng Ba Hồi: ba tiếng gõ liền trên giáo, xung lam lan tới r160 rồi để lại vòng ngưỡng có 12 khấc chuông quay chậm trong 3 s — kẻ nào trong vòng đạt 2 Vang tự vỡ.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_SK02_threshold18 khung @ 30 fpsantic · khung 0–5impact · khung 6–8dissipate · khung 9–1718 khung · 30 fps · 0.6 s
Hitbox VFX_H03_SK02_thresholdHitbox VFX_H03_SK02_threshold48 px96 px144 px192 pxCIRCLEhurtbox r 7shape CIRCLE r 160sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Gióng Ba Hồi H03_SK02_CAST (sk02 hit_frame 0, startup 12 tick, xung r160 +1 Vang; 3 s hiệu lực: kẻ ≥ 2 Vang trong r160 tự Vỡ Âm); Edge H03_E30 (mỗi hồi kích Vỡ Âm, hồi 3 ×1.25). t = 0 = hồi 1.
Canvas
336×176 gốc 168/88
Pha (s)
antic −0.2/0 · impact 0/0.067 · dissipate 0.067/0.6
Easing
curve outExpo, freeze_s 0.04
Hạt
kind MOTE, count 12, speed 20, life_s 0.5, hex #a8d7ff, gravity −20, shadow không
Hitbox
shape circle r160, match Vành xung và vòng ngưỡng thủ tục vẽ đúng r thật (160/180), lệch 0 px; khấc chuông nằm TRONG vành 2 px., wave procedural
Nguồn
recolor arcane/magic-circle-cast --opts {glyph:'bell', notches:12} cho khấc + shader FloorEllipse {shape:ring} cho vành
Review
check_mjs pending (node tools/check.mjs arcane/magic-circle-cast), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r160' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.23 hồi gõ cách 0.067 s: mỗi hồi 1 chớp #ffffff 6×6 trên 3 chuông giáo (socket hand_main).
0Xung: vành thủ tục r16 → r160 trong 0.1 s, mép 2 px #a8d7ff, fill α 0.3 #295aa8.
0.1Vòng ngưỡng r160 ở lại: mép liền 1 px #6eb4ff + 12 khấc hình chuông 4×3 px #a8d7ff đều quanh vành, xoay chậm 30°/s.
0.6Sheet kết thúc; vòng ngưỡng (shader) giữ suốt buff_s 3 s (II/III 3.5 s), α 0.5, tắt dither 0.2 s.

Chuông Nín H03_SK03_HUSH (sk03 hit_frame 7, startup 14 tick, xung câm…

VFX_H03_SK03_hushTEMPLATELớp: overheadCỡ: LLOD: L3

Chuông Nín: một đĩa sáng nhạt loé đúng r100 rồi các vành co ngược về tâm, bàn tay úp lên chuông hiện ở giữa — tiếng chuông bị nén câm, quái thường mất windup.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_SK03_hush15 khung @ 30 fpsantic · khung 0–2impact · khung 3–3dissipate · khung 4–1415 khung · 30 fps · 0.5 s
Hitbox VFX_H03_SK03_hushHitbox VFX_H03_SK03_hush32 px64 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 100sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Chuông Nín H03_SK03_HUSH (sk03 hit_frame 7, startup 14 tick, xung câm r100 tại điểm ≤ 160 px); Edge H03_E26 (+16/28/40 px), H03_E17 (Vỡ Âm r60/96 quanh tâm). t = 0 = xung.
Canvas
216×120 gốc 108/66
Pha (s)
antic −0.1/0 · impact 0/0.033 · dissipate 0.033/0.5
Easing
curve inOutQuad, freeze_s 0.05
Hạt
kind MOTE, count 6, speed 60, life_s 0.15, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape circle r100, match Mép frame 0 đúng elip r100 (200×100) — hiệu lực tức thì; vành co vào trong hitbox (không vượt). E26/II: r120 → s1.3 ×0.92; r140 → s1.3 ×1.08; r160 → s1.7 ×0.94 (khung 367×204 → hạng XL ở s1.7)., wave none
Nguồn
recolor arcane/mana-burst --opts {radius:100, implode:true, glyph:'hand_bell'}
Review
check_mjs pending (node tools/check.mjs arcane/mana-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r100' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.1Tại điểm đặt: 6 MOTE hút vào tâm từ r60, chấm tâm #a8d7ff.
0Frame trắng: đĩa r100 (elip 200×100) fill α 0.25 #dcefff 1 frame, mép 2 px #ffffff.
0.033Vành CO NGƯỢC r100 → r0 trong 0.3 s (nghĩa 'nín'), dày 2 px #a8d7ff; fill α 0.3 #1e3c6b đứng yên r100.
0.15Glyph bàn tay úp lên chuông 12×12 #fff6f0 tại tâm h12; 2 vành con co theo, cách 10 px.
0.33Vành tụ về tâm thành chấm, glyph tan; fill tan dither.
0.5Rỗng.

Tháp Canh Chuông — Phóng H03_SK04_THROW (sk04 hit_frame 6, startup 12…

VFX_H03_SK04_spear_throwTEMPLATELớp: overheadCỡ: MLOD: L3

Phóng giáo phụ: cây giáo treo một chuông bay vòng cầu rồi cắm thẳng xuống sàn, vành lam nhỏ r24 bung, giáo đứng lại làm tháp canh.

#1e3c6b#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_SK04_spear_throw12 khung @ 30 fpsantic · khung 0–2impact · khung 3–5dissipate · khung 6–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_SK04_spear_throwHitbox VFX_H03_SK04_spear_throw8 px16 px24 pxCIRCLEhurtbox r 7shape CIRCLE r 24sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Tháp Canh Chuông — Phóng H03_SK04_THROW (sk04 hit_frame 6, startup 12 tick, active 6 tick, cắm r24 tại điểm ≤ 140 px); sau cú cắm sinh tháp (VFX_H03_plant_tower + VFX_H03_tower_pulse). t = 0 = giáo phụ chạm sàn; nhả tay ở t = −0.1.
Canvas
64×80 gốc 32/64
Pha (s)
antic −0.1/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.03
Hạt
kind GRIT, count 6, speed 100, life_s 0.3, hex #295aa8, gravity 950, shadow có
Hitbox
shape circle r24, match Vành đúng elip r24 (48×24) tâm điểm cắm; GRIT tới r28 (≤ 6 ✓); điểm cắm = điểm ngắm (≤ 140 px, kẹp)., wave reach
Nguồn
recolor arcane/sword-fall --opts {blade:'bell_spear', radius:24, lob:true} (giáo phụ vẽ lại theo _halka.js)
Review
check_mjs pending (node tools/check.mjs arcane/sword-fall), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r24' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.1Phần 'flight' (8 hướng, 16×8, 3 frame): giáo phụ treo 1 chuông bay vòng cầu h(t) = 4·H·u·(1−u), H = 0.35 × cự ly (kẹp 24–49 px); bóng sàn riêng co theo h; vệt 1 px #6eb4ff sau đuôi.
0Frame trắng: giáo cắm thẳng đứng tại tâm, chớp đĩa r8 #ffffff; chuông trên giáo loé #dcefff.
0.033Vành r8 → r24 (elip 48×24) #a8d7ff 2 px; 6 GRIT bật cao 10 px.
0.067Vành chạm r24, fill α 0.35 #295aa8; giáo đứng (cột sheet tháp bắt đầu vào).
0.25Vành tan; GRIT rơi.
0.4Rỗng; còn giáo + tháp (plant_tower).

Mũi Kim Chuông — nạp (H03_SK05_NEEDLE giữ, charge_s 0.4): t = 0 = bắt…

VFX_H03_SK05_chargeTEMPLATELớp: body_frontCỡ: SLOD: L3

Nạp Mũi Kim: hạt lam hút vào mũi giáo, ba chuông sáng lần lượt; đủ 0.4 s thì mũi loé một vòng tròn trắng nhỏ — nhả là đâm.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_SK05_charge12 khung @ 30 fpsantic · khung 0–1112 khung · 30 fps · 0.4 s
Chi tiết spec
Kích hoạt
Mũi Kim Chuông — nạp (H03_SK05_NEEDLE giữ, charge_s 0.4): t = 0 = bắt đầu giữ; Edge H03_E28 (nạp nhanh 25/40% → phát nhanh ×1.33/×1.67). Nhả trước 0.4 s: tắt ngay.
Canvas
32×32 gốc 16/16
Pha (s)
antic 0/0.4 · impact 0.4/0.4 · dissipate 0.4/0.4
Easing
curve inOutQuad, freeze_s 0
Hạt
kind MOTE, count 8, speed 40, life_s 0.2, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape none, wave none
Nguồn
recolor lightning/charge-up --opts {bolts:0, motes:8, ring:5}
Review
check_mjs pending (node tools/check.mjs lightning/charge-up), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Mũi giáo: 8 MOTE #a8d7ff hút vào mũi từ r14, chấm mũi #3680e0 2 px.
0.2Chấm mũi 3 px #6eb4ff; vành hút r10 → r4 #a8d7ff 1 px lặp 2 lần.
0.367Chấm mũi 4 px #dcefff, 3 chuông nhỏ trên cán sáng lần lượt.
0.4Đủ nạp (frame cuối, runtime giữ tới khi nhả): vòng ngân tròn r5 #fff6f0 1 frame + chấm #ffffff — báo nạp đủ (vòng tròn, KHÔNG glint 4 cánh để khác tell Y).

Truyền Vang H03_SK08_CAST (sk08 hit_frame 0, startup 10 tick, xung r9…

VFX_H03_SK08_transferTEMPLATELớp: overheadCỡ: LLOD: L3

Truyền Vang: chuông giáo chớp, vành lam lan r96 cấy Vang; trong 6 s, kẻ mang Vang ngã xuống thì tiếng vang bay thành dải sóng sang hai kẻ gần nhất.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_SK08_transfer12 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_SK08_transferHitbox VFX_H03_SK08_transfer24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 96sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Truyền Vang H03_SK08_CAST (sk08 hit_frame 0, startup 10 tick, xung r96 +1 Vang; 6 s: kẻ mang Vang chết → Vang chuyển sang 2 kẻ gần trong r80); Edge H03_E29 (+1 kẻ, +2.0/3.2 s), H03_E33 (Vỡ Âm chuyển 1 Vang r60/96). t = 0 = xung; phần 'arc' t = 0 = kẻ mang Vang chết.
Canvas
208×112 gốc 104/60
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.03
Hạt
kind MOTE, count 8, speed 30, life_s 0.3, hex #a8d7ff, gravity −20, shadow không
Hitbox
shape circle r96, match Vành xung đúng elip r96 (192×96) lúc 0.067 s, +1 Vang áp tick 0. II/III r112 → s1.3 ×0.90. Arc: điểm cuối = chân kẻ nhận (≤ r80/96), không hitbox., wave none
Nguồn
recolor lightning/chain-lightning --opts {bolt:'wave_arc', radius:96, hops:2}
Review
check_mjs pending (node tools/check.mjs lightning/chain-lightning), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r96' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: 3 chuông giáo chớp #ffffff; đĩa sàn r12 #fff6f0 dưới chân.
0.033Vành r12 → r60 dày 2 px #a8d7ff, fill α 0.3 #295aa8.
0.067Vành chạm r96 (elip 192×96) #6eb4ff 2 px; 8 MOTE lên.
0.2Vành 1 px #3680e0; vòng buff quanh Halka (body_back, loop 8 frame @12, r14 1 px #6eb4ff α 0.5) chạy suốt buff_s.
0.4Sheet xung hết. Phần 'arc' (S 24×12, runtime dời 4 tick, không giãn): từ xác kẻ chết bay 2 dải sóng ')))' tới 2 kẻ gần r80, chạm thì pip Vang của kẻ nhận sáng (VFX_H03_vang_mark).

Đại Hồng Chung — bóng: H03_UL1_IMPACT (ul1, shadow_s 0.6 trước cú rơi…

VFX_H03_UL1_shadowTEMPLATELớp: floor_decalCỡ: XLLOD: never

Bóng Đại Hồng Chung: một bóng chuông lam đặc loang trên sàn trong 0.6 s, lớn đúng r130 nơi chuông sẽ rơi — người chơi đọc được vùng trúng, quái không bị cảnh báo. LOD never: là vùng sắp gây sát thương của ult.

#091429#102347#1e3c6b#295aa8#6eb4ff#fff6f0
Dải khung VFX_H03_UL1_shadow18 khung @ 30 fpsantic · khung 0–1718 khung · 30 fps · 0.6 s
Chi tiết spec
Kích hoạt
Đại Hồng Chung — bóng: H03_UL1_IMPACT (ul1, shadow_s 0.6 trước cú rơi tại điểm ≤ 160 px); Edge H03_E39 (bóng r80 khi Dư Âm đầy). t = −0.6 → 0 (0 = chuông chạm sàn).
Canvas
280×144 gốc 140/72
Pha (s)
antic −0.6/0 · impact 0/0.033 · dissipate 0.033/0.033
Easing
curve outQuart, freeze_s 0
Hạt
kind MOTE, count 6, speed 80, life_s 0.4, hex #6eb4ff, gravity 300, shadow không
Hitbox
shape none, wave none
Nguồn
shader FloorEllipse {shape:disc} (runtime) + recolor arcane/rune-circle --opts {glyph:'bell_mouth'} cho vành trong
Review
check_mjs pending (node tools/check.mjs heroes/halka-ul1-shadow), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.6Bóng chuông ĐẶC màu slot hiện r20: elip fill α 0.45 #102347 + viền liền 1 px #3680e0 (không viền 2 px, không fill 25%: không phải tell địch).
−0.3Bóng lớn tới r90; giữa bóng hiện hình miệng chuông (vành trong r60 1 px #295aa8); 6 MOTE rơi xuống từ trên.
−0.067Bóng đủ r130 (elip 260×130), fill α 0.55 #1e3c6b, viền #6eb4ff.
0Chạm: bóng tắt ngay (VFX_H03_UL1_great_bell tiếp quản).
0.033Rỗng.

Dạng Rèn H03_AS2 Giáo Chuông Đôi: H03_AS2_A4_TWIN thay A4 (as2_fin hi…

VFX_H03_AS2_twin_spinTEMPLATELớp: overheadCỡ: MLOD: L3

Xoay Song Chuông: giáo ngắn hai đầu chuông xoay một vòng quanh Halka, hai vệt lam đối xứng khép thành vòng r60, không để lại tháp. Hue −3 theo Dạng Rèn.

#1e3c6b#3680e0#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_AS2_twin_spin18 khung @ 30 fpsantic · khung 0–2impact · khung 3–7dissipate · khung 8–1718 khung · 30 fps · 0.6 s
Hitbox VFX_H03_AS2_twin_spinHitbox VFX_H03_AS2_twin_spin16 px32 px48 px64 pxCIRCLEhurtbox r 7shape CIRCLE r 60sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Dạng Rèn H03_AS2 Giáo Chuông Đôi: H03_AS2_A4_TWIN thay A4 (as2_fin hit_frame 5, startup 9 tick, active 5, CIRCLE r60 quanh Halka, hitstop 0.07, trauma 0.28; không dựng tháp). t = 0 = frame quét đầu.
Canvas
136×88 gốc 68/56
Pha (s)
antic −0.067/0 · impact 0/0.167 · dissipate 0.167/0.6
Easing
curve outQuart, freeze_s 0.07
Hạt
kind SPARK, count 8, speed 140, life_s 0.25, hex #a8d7ff, gravity 950, shadow không
Hitbox
shape circle r60, match 2 vệt quét khép vòng đúng elip r60 (120×60) trong active 5 tick (0.083 s); SPARK tới r64 (≤ 6 ✓); fill phủ 100% đĩa., wave reach
Nguồn
recolor melee/spin-slash --opts {radius:60, blades:2, span:180}
Review
check_mjs pending (node tools/check.mjs melee/spin-slash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r60' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Giáo ngắn kéo ra sau, 2 chuông ở 2 đầu cán sáng #dcefff.
0Frame trắng: 2 vệt cung đối xứng (2 chuông) bắt đầu quét tại 0°/180°, mép #ffffff, thân #a8d7ff dày 3 px, bán kính 60 (elip 120×60).
0.083Mỗi vệt quét 180° → đủ 360° vòng tròn; nửa xa vòng ở drawBack; fill sàn r60 α 0.3 #295aa8 theo vệt.
0.167Vòng khép: chớp #dcefff toàn vòng 1 frame; 8 SPARK văng tiếp tuyến.
0.4Vòng nguội #3680e0 1 px, tan dither.
0.6Rỗng.

Dấu Gác: trong dạng H03_UL3 (on_kill brand_n 2, brand_r 96, +2 Vang),…

VFX_H03_UL3_brandTEMPLATELớp: overheadCỡ: SLOD: L2

Dấu Gác: khi kẻ địch gục trong dạng Lính Gác Cuối, một tia ngắn nối sang hai kẻ gần nhất và in dấu mũi giáo trắng lên ngực chúng — mỗi dấu cấy 2 Vang.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_UL3_brand9 khung @ 30 fpsantic · khung 0–2dissipate · khung 3–89 khung · 30 fps · 0.3 s
Chi tiết spec
Kích hoạt
Dấu Gác: trong dạng H03_UL3 (on_kill brand_n 2, brand_r 96, +2 Vang), kẻ chết đóng dấu 2 kẻ gần nhất trong r96; Edge H03_E36 (lan ≤ 2 tầng, cấy đủ 3 Vang). t = 0 = dấu chạm kẻ nhận.
Canvas
32×32 gốc 16/26
Pha (s)
antic −0.067/0 · impact 0/0.033 · dissipate 0.033/0.3
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 4, speed 60, life_s 0.2, hex #a8d7ff, gravity 0, shadow không
Hitbox
shape none, wave none
Nguồn
recolor lightning/zap-hit --opts {glyph:'spear_head', sparks:4}
Review
check_mjs pending (node tools/check.mjs lightning/zap-hit), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.067Tia dấu: đường gấp khúc 3 đoạn 1 px #a8d7ff (zap ngắn) từ xác tới ngực kẻ nhận, 2 frame (runtime nối 2 điểm, đoạn ≤ 96 px vẽ bằng glowLine thủ tục).
0Frame trắng: dấu mũi giáo 8×10 (lá hẹp chĩa xuống) #ffffff trên ngực kẻ nhận.
0.033Dấu #dcefff viền #3680e0 1 px; 4 SPARK nhỏ quanh dấu.
0.15Dấu chìm vào thân, còn chấm #6eb4ff.
0.3Rỗng (pip Vang của kẻ nhận do VFX_H03_vang_mark).

Trúng đòn chung của Halka lên địch không phải đoạn mũi (thân giáo, vù…

VFX_H03_hitTEMPLATELớp: overheadCỡ: SLOD: L2

Chớp trúng chung của Halka: một đốm trắng tròn với bốn tia chéo ngắn, viền lam, tan trong 0.23 s.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_hit7 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–67 khung · 30 fps · 0.233 s
Chi tiết spec
Kích hoạt
Trúng đòn chung của Halka lên địch không phải đoạn mũi (thân giáo, vùng, xung có sát thương: A4, A5, Đâm Chuông, Vỡ Âm M/L/XL, kỹ năng, ult); t = 0 = frame trúng. Đòn chọc trúng mũi dùng VFX_H03_tip_spark.
Canvas
32×32 gốc 16/20
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.233
Easing
curve outExpo, freeze_s 0
Hạt
—
Hitbox
shape none, wave none
Nguồn
recolor impacts/hit-flash --opts {rays:4, diag:true}
Review
check_mjs pending (node tools/check.mjs impacts/hit-flash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng #ffffff 1 frame: đốm tròn 6×6 + 4 tia chéo 3 px (chéo 45°, không 4 cánh thẳng như glint Y).
0.033Đốm #fff6f0 4×4, viền #6eb4ff 1 px; tia #a8d7ff.
0.1Còn vành r6 (elip 12×6) #3680e0 1 px.
0.233Rỗng.

Then Chốt H03_E37 Tiếng Vọng Hai Hồi: Vỡ Âm từ Gõ Chuông vọng lại sau…

VFX_H03_E37_payoffTEMPLATELớp: overheadCỡ: LLOD: L3

Tiếng Vọng Hai Hồi: 0.8 s sau Vỡ Âm, vành mờ co lại về điểm cũ rồi bật ra lần nữa đúng r90 kèm sương ngân lấp lánh.

#102347#1e3c6b#295aa8#3680e0#6eb4ff#fff6f0
Dải khung VFX_H03_E37_payoff21 khung @ 30 fpsantic · khung 0–11impact · khung 12–14dissipate · khung 15–2021 khung · 30 fps · 0.7 s
Hitbox VFX_H03_E37_payoffHitbox VFX_H03_E37_payoff24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 90sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Then Chốt H03_E37 Tiếng Vọng Hai Hồi: Vỡ Âm từ Gõ Chuông vọng lại sau 0.8 s tại cùng điểm kích, kẻ ≥ 2 Vang trong r90 Vỡ Âm ×1.3. t = 0 = hồi vọng nổ (= 0.8 s sau Vỡ Âm gốc).
Canvas
200×120 gốc 100/68
Pha (s)
antic −0.4/0 · impact 0/0.067 · dissipate 0.067/0.3
Easing
curve outExpo, freeze_s 0.04
Hạt
kind FLAKE, count 12, speed 60, life_s 0.35, hex #a8d7ff, gravity 300, shadow không
Hitbox
shape circle r90, match Vành bật đúng elip r90 (180×90) tại 0.067 s; chọn mục tiêu tức thì tick 0; FLAKE tới r94 (≤ 10 ✓)., wave none
Nguồn
recolor ice/frost-nova --opts {radius:90, implode_pre:0.4, crystals:12}
Review
check_mjs pending (node tools/check.mjs ice/frost-nova), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r90' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.4Vọng tụ: vành mờ r90 1 px #295aa8 α 0.4 hiện tại điểm kích gốc rồi CO dần vào r40 (tiếng vọng quay về).
0Frame trắng: vành bật ra r40 → r90 trong 0.067 s, dày 3 px #dcefff, kèm 12 tinh thể FLAKE 2×3 (sương ngân) bung spawn3.
0.067Vành r90 (elip 180×90) #6eb4ff 2 px, fill α 0.3 #1e3c6b; FLAKE bay chậm.
0.2Vành 1 px #3680e0; FLAKE rơi lấp lánh.
0.3Rỗng.

Then Chốt H03_E38 Sào Cắm Trời: cú đáp Nhảy Sào cắm Tháp Vang (≤ 2 th…

VFX_H03_E38_payoffTEMPLATELớp: overheadCỡ: MLOD: L3

Sào Cắm Trời: cú đáp phóng một tia sáng thẳng lên trời rồi hạ xuống thành Tháp Vang, ba tia ngắn nhảy vào mũi giáo báo cú chọc kế mạnh hơn.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_E38_payoff15 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1415 khung · 30 fps · 0.5 s
Vũng sáng sàn VFX_H03_E38_payoffr 24 px, k 0.35vũng sáng r 24 px · ry = r × 0.5
Chi tiết spec
Kích hoạt
Then Chốt H03_E38 Sào Cắm Trời: cú đáp Nhảy Sào cắm Tháp Vang (≤ 2 tháp) và combo kế mở từ A3, mũi ×1.25. t = 0 = chân chạm sàn (cùng VFX_H03_vault_land).
Canvas
64×112 gốc 32/100
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.5
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 6, speed 80, life_s 0.2, hex #a8d7ff, gravity 950, shadow không
Hitbox
shape none, wave none
Nguồn
recolor lightning/spark-arc --opts {beam_h:80, arcs:3}
Review
check_mjs pending (node tools/check.mjs lightning/spark-arc), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: tia sáng dựng thẳng từ điểm cắm cao 80 px, rộng 6 px #ffffff, chân đĩa r10 #fff6f0.
0.067Tia co còn 3 px #a8d7ff; 3 cung điện ngắn (spark-arc) 8–12 px #6eb4ff nhảy từ đỉnh tia sang mũi giáo Halka (dấu combo kế mạnh).
0.2Tia hạ xuống thành cột tháp (VFX_H03_plant_tower vào); cung điện tắt.
0.5Rỗng.

Then Chốt H03_E39 Phản Gọi Đại Chung: Phản trúng +8 Dư Âm; khi Dư Âm …

VFX_H03_E39_payoffTEMPLATELớp: overheadCỡ: LLOD: L3

Phản Gọi Đại Chung: Dư Âm đầy sau một cú Phản, chiếc chuông nhỏ rơi xuống r80 với khung va chạm trắng cục bộ, cấy đủ ba Vang cho cả vùng.

#1e3c6b#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_E39_payoff12 khung @ 30 fpsantic · khung 0–5impact · khung 6–8dissipate · khung 9–1112 khung · 30 fps · 0.4 s
Hitbox VFX_H03_E39_payoffHitbox VFX_H03_E39_payoff24 px48 px72 px96 pxCIRCLEhurtbox r 7shape CIRCLE r 80sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Then Chốt H03_E39 Phản Gọi Đại Chung: Phản trúng +8 Dư Âm; khi Dư Âm đầy, chuông rơi r80 (5.0× Lực, cấy 3 Vang, hồi 4 s) — bóng qua VFX_H03_UL1_shadow r80. t = 0 = chuông nhỏ chạm sàn.
Canvas
176×112 gốc 88/72
Pha (s)
antic −0.2/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0.05
Hạt
kind GRIT, count 10, speed 140, life_s 0.4, hex #295aa8, gravity 950, shadow có
Hitbox
shape circle r80, match Vành đúng elip r80 (160×80) = bóng UL1_shadow bản r80; GRIT tới r86 (≤ 10 ✓)., wave none
Nguồn
recolor impacts/impact-frame --opts {local:true, radius:80, rays:8} + bell sprite từ halka-ul1-great-bell --opts {bell:[40,44]}
Review
check_mjs pending (node tools/check.mjs impacts/impact-frame), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r80' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
−0.2Chuông 40×44 (bản nhỏ của Đại Hồng Chung) rơi từ h80, thân r3/r5, đai r7.
0Frame trắng 2 frame: khung va chạm cục bộ — đĩa r80 (elip 160×80) #fff6f0 α 0.5, 8 tia tốc hướng tâm #ffffff.
0.067Vành r80 #6eb4ff 2 px, fill α 0.35 #295aa8; 10 GRIT bung.
0.2Chuông tan thành MOTE; vành 1 px #3680e0.
0.4Rỗng.

Then Chốt H03_E40 Gió Mang Vang: Lướt xuyên kẻ Chín Vang kích Vỡ Âm (…

VFX_H03_E40_payoffTEMPLATELớp: overheadCỡ: MLOD: L2

Gió Mang Vang: Halka lướt qua kẻ Chín Vang, pháo hoa lam nở trên ngực nó kèm vệt gió theo hướng lướt; nếu nó gục, một hạt sáng bay trao Vang cho kẻ gần.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_E40_payoff12 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1112 khung · 30 fps · 0.4 s
Chi tiết spec
Kích hoạt
Then Chốt H03_E40 Gió Mang Vang: Lướt xuyên kẻ Chín Vang kích Vỡ Âm (hồi 1.2 s, phát kèm VFX_H03_toll_burst); kẻ mang Vang chết trao 1 Vang cho kẻ gần r80. t = 0 = Halka lướt qua kẻ Chín Vang.
Canvas
48×56 gốc 24/44
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.4
Easing
curve outExpo, freeze_s 0
Hạt
kind SPARK, count 10, speed 130, life_s 0.3, hex #a8d7ff, gravity 600, shadow không/kind MOTE, count 1, speed 300, life_s 0.25, hex #dcefff, gravity 0, shadow không
Hitbox
shape none, wave none
Nguồn
recolor explosions/firework-burst --opts {sparks:10, radius:10, wind:true}
Review
check_mjs pending (node tools/check.mjs explosions/firework-burst), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: pháo hoa tại ngực kẻ bị lướt — đĩa r4 #ffffff, 10 tia bung tròn 6–10 px.
0.067Tia thành 10 SPARK #a8d7ff bay toả đều, kéo vệt; luồng gió 2 vệt cong 1 px #6eb4ff theo hướng Lướt.
0.2SPARK rơi #3680e0; 1 hạt sáng #dcefff bay sang kẻ gần nhất (≤ r80) khi trao Vang.
0.4Rỗng.

Tiến hoá H03_EVO1 Vạn Hồi Chuông Lan: SK01 ngân 3 vòng liền cách 0.35…

VFX_H03_EVO1_payoffTEMPLATELớp: overheadCỡ: MLOD: L3

Vạn Hồi Chuông Lan: một quả cầu ngân lơ lửng trên đầu Halka, mỗi vòng chuông lan ra thì một vòng quỹ đạo tắt; vòng thứ ba cầu nổ cùng Vỡ Âm.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_EVO1_payoff36 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–3536 khung · 30 fps · 1.2 s
Chi tiết spec
Kích hoạt
Tiến hoá H03_EVO1 Vạn Hồi Chuông Lan: SK01 ngân 3 vòng liền cách 0.35 s tới r170 (2.6× Lực, +1 Vang mỗi vòng), vòng cuối kích Vỡ Âm. Vòng sàn do VFX_H03_SK01_ring; payoff = quả cầu ngân trên đầu Halka. t = 0 = vòng 1.
Canvas
48×64 gốc 24/60
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/1.2
Easing
curve outExpo, freeze_s 0
Hạt
kind MOTE, count 8, speed 40, life_s 0.4, hex #a8d7ff, gravity 300, shadow không
Hitbox
shape none, wave none
Nguồn
recolor lightning/ball-lightning --opts {radius:8, orbits:3, bolts:0}
Review
check_mjs pending (node tools/check.mjs lightning/ball-lightning), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Quả cầu ngân r8 #dcefff lõi #fff6f0 hiện trên đầu Halka (h48), 3 vòng quỹ đạo 1 px quanh cầu.
0.033Vòng 1: cầu chớp #ffffff, 1 vòng quỹ đạo tắt.
0.35Vòng 2: cầu chớp, vòng quỹ đạo thứ 2 tắt; cầu nhỏ lại r6.
0.7Vòng 3: cầu nổ r8 → r16 #ffffff 2 frame (đồng bộ Vỡ Âm), 8 MOTE rơi.
1.2Rỗng.

Tiến hoá H03_EVO2 Kim Xuyên Trời: Mũi Kim đâm 170 px, cả đoạn từ 90 p…

VFX_H03_EVO2_payoffTEMPLATELớp: overheadCỡ: MLOD: L2

Kim Xuyên Trời: mỗi kẻ bị đoạn mũi kim xuyên qua đông thành tinh thể chuông rồi vỡ vụn theo hướng kim, cùng lúc Vỡ Âm.

#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0#ffffff
Dải khung VFX_H03_EVO2_payoff12 khung @ 30 fpsimpact · khung 0–0dissipate · khung 1–1112 khung · 30 fps · 0.4 s
Chi tiết spec
Kích hoạt
Tiến hoá H03_EVO2 Kim Xuyên Trời: Mũi Kim đâm 170 px, cả đoạn từ 90 px là mũi ×1.5; kẻ trúng mũi Vỡ Âm ngay ×1.25 (phát kèm VFX_H03_toll_burst tại nó). t = 0 = frame trúng mũi.
Canvas
48×40 gốc 24/28
Pha (s)
antic 0/0 · impact 0/0.033 · dissipate 0.033/0.4
Easing
curve outExpo, freeze_s 0.04
Hạt
kind SHARD, count 8, speed 150, life_s 0.35, hex #a8d7ff, gravity 950, shadow có
Hitbox
shape none, wave none
Nguồn
recolor ice/ice-shatter --opts {crystal:[10,12], shards:8, cone:60}
Review
check_mjs pending (node tools/check.mjs ice/ice-shatter), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame trắng: tinh thể chuông 10×12 #ffffff bọc mục tiêu tại điểm kim xuyên.
0.033Tinh thể nứt 4 đường #3680e0, lõi #dcefff.
0.1Vỡ: 8 SHARD 3×2 #a8d7ff văng theo hướng kim ±60°, có bóng.
0.25SHARD rơi nảy #295aa8.
0.4Rỗng.

Tiến hoá H03_EVO3 Tháp Gác Chuông Cổ: SK04 thành Tháp Gác r120, 12 s,…

VFX_H03_EVO3_payoffTEMPLATELớp: body_frontCỡ: MLOD: L3

Tháp Gác Chuông Cổ: cổng xoáy mở dưới giáo phụ, cột tháp vọt cao 96 px đội vương miện ba chuông quay chậm, vùng canh r120 phủ sàn trong 12 s.

#1e3c6b#295aa8#6eb4ff#a8d7ff#dcefff#fff6f0
Dải khung VFX_H03_EVO3_payoff18 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1718 khung · 30 fps · 0.6 s
Hitbox VFX_H03_EVO3_payoffHitbox VFX_H03_EVO3_payoff32 px64 px96 px128 pxCIRCLEhurtbox r 7shape CIRCLE r 120sàn 3/4 · ry = rx × 0.5
Chi tiết spec
Kích hoạt
Tiến hoá H03_EVO3 Tháp Gác Chuông Cổ: SK04 thành Tháp Gác r120, 12 s, xung 1.0 s (1.5× Lực, +1 Vang, kích Vỡ Âm); Nhảy Sào trong tháp hồi 0.6 s. Payoff = cổng nền + vương miện tháp (cột dùng VFX_H03_plant_tower bậc s1.3 ×1.15, xung VFX_H03_tower_pulse s1.7). t = 0 = tháp dựng.
Canvas
64×120 gốc 32/108
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.6
Easing
curve outQuart, freeze_s 0
Hạt
kind MOTE, count 10, speed 30, life_s 0.6, hex #a8d7ff, gravity −20, shadow không
Hitbox
shape circle r120, match Vùng sàn thủ tục viền 1 px đúng r120 (lệch 0 px); sheet cổng/cột không mang hitbox; xung qua VFX_H03_tower_pulse., wave procedural
Nguồn
recolor arcane/portal --opts {radius:24, spin:2, column_h:96, crown:3}
Review
check_mjs pending (node tools/check.mjs arcane/portal), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay pending: overlay 'circle r120' (elip 1 px) trên sheet + 1 ảnh in-game, ghi lệch px, art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Cổng nền: elip r24 (48×24) xoáy 2 vòng 1 px #6eb4ff/#3680e0 quay ngược nhau, lõi #fff6f0.
0.067Cột tháp vọt lên từ cổng h0 → h96 trong 0.1 s, rộng 8 px #a8d7ff, mép #dcefff.
0.2Vương miện ở đỉnh h96: 3 chuông nhỏ 6×6 xếp vòng #dcefff quay chậm; cổng nền thu còn viền 1 px.
0.6Sheet dừng ở frame cuối (cột + vương miện); runtime giao cho plant_tower loop + vòng sàn thủ tục r120 (viền 1 px r5, fill ≤ 45%).

LIBRARY · 2

Quái S chết vì Vỡ Âm (H03_VO_AM s_result KILL): thay tro chết thường;…

VFX_H03_shatter_ashLIBRARYLớp: overheadCỡ: MLOD: L2

Quái thường vỡ tan vì Vỡ Âm: loé lam rồi rã thành tro lam bốc lên — tách khỏi chết thường nhưng vẫn theo trần chết 12/frame.

#091429#102347#1e3c6b#295aa8#6eb4ff#fff6f0
Dải khung VFX_H03_shatter_ash15 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–1415 khung · 30 fps · 0.5 s
Chi tiết spec
Kích hoạt
Quái S chết vì Vỡ Âm (H03_VO_AM s_result KILL): thay tro chết thường; t = 0 = frame chết.
Canvas
48×40 gốc 24/32
Pha (s)
antic 0/0 · impact 0/0.1 · dissipate 0.1/0.5
Easing
curve outQuart, freeze_s 0
Hạt
kind DUST, count 10, speed 30, life_s 0.4, hex #1e3c6b, gravity −40, shadow không
Hitbox
shape none, wave none
Nguồn
recolor bladewake/death-ash --opts {palette:PAL_HERO_H03, ring:10}
Review
check_mjs pending (node tools/check.mjs bladewake/death-ash), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Loé 0.09 s: thân quái thành silhouette #dcefff 1 frame rồi #6eb4ff.
0.1Thân vỡ thành 10 mảnh tro 2×2 #295aa8/#1e3c6b bốc lên, 1 vòng sóng r10 #3680e0 dưới chân.
0.3Tro trôi lên 16 px, nguội #102347.
0.5Rỗng.

Khung va chạm thư viện cho H03_UL3_CAST (ul3 hit_frame 8): 2 frame mà…

VFX_H03_lib_impact_frameLIBRARYLớp: screenCỡ: XLLOD: L2

Khung va chạm 2 frame khi kích Lính Gác Cuối: màn tối lam sâu, bóng Halka và ba chuông trắng nổi lên, rồi tan ngay.

#091429#102347#1e3c6b#295aa8#6eb4ff#fff6f0
Dải khung VFX_H03_lib_impact_frame4 khung @ 30 fpsimpact · khung 0–2dissipate · khung 3–34 khung · 30 fps · 0.133 s
Chi tiết spec
Kích hoạt
Khung va chạm thư viện cho H03_UL3_CAST (ul3 hit_frame 8): 2 frame màn hình tại tick kích; t = 0 = tick kích.
Canvas
480×270 gốc 240/135
Pha (s)
antic 0/0 · impact 0/0.067 · dissipate 0.067/0.133
Easing
curve linear, freeze_s 0
Hạt
—
Hitbox
shape none, wave none
Nguồn
reuse impacts/impact-frame --opts {rays:6, dark:'r0'}
Review
check_mjs pending (node tools/check.mjs impacts/impact-frame), inv01_check pending (py -3 Tools/artcheck/inv01_check.py <png> --kind vfx_hero --id H03), hitbox_overlay không áp dụng (không hitbox), art_style_reviewer pending, date 2026-11-07
t (s)Mô tả
0Frame 1: nền màn #091429 α 0.6, silhouette Halka + 3 chuông #fff6f0 (mask từ thân), 6 tia tốc hướng tâm #dcefff 1 px.
0.033Frame 2: nền #102347 α 0.4, silhouette #a8d7ff.
0.067Tan α 0.4 → 0 trong 2 frame.
0.133Rỗng.

13SFX

SFX theo loạiSFX theo loạicast: 11 (39%)swing: 3 (11%)move: 3 (11%)vocal: 3 (11%)hit: 2 (7%)explode: 2 (7%)impact: 2 (7%)answer: 1 (4%)loop: 1 (4%)28SFXcast — 11 (39%)swing — 3 (11%)move — 3 (11%)vocal — 3 (11%)hit — 2 (7%)explode — 2 (7%)impact — 2 (7%)answer — 1 (4%)loop — 1 (4%)
Độ dài (ms)Độ dài (ms)a1_swinga1_swing: 200 ms200 msa2_swinga2_swing: 210 ms210 msa3_swinga3_swing: 320 ms320 mshithit: 170 ms170 mscombo_specialcombo_special: 650 ms650 msdashdash: 210 ms210 msansweranswer: 380 ms380 mscountercounter: 360 ms360 mshold_starthold_start: 220 ms220 mshold_loophold_loop: 400 ms400 mshold_endhold_end: 230 ms230 msres_gainres_gain: 220 ms220 msres_fullres_full: 450 ms450 msres_spendres_spend: 480 ms480 msSK01_castSK01_cast: 700 ms700 msSK02_castSK02_cast: 600 ms600 msSK03_castSK03_cast: 480 ms480 msSK04_castSK04_cast: 800 ms800 msSK05_castSK05_cast: 620 ms620 msSK06_castSK06_cast: 1150 ms1150 msSK07_castSK07_cast: 420 ms420 msSK08_castSK08_cast: 520 ms520 msUL1_great_bellUL1_great_bell: 3400 ms3400 msUL2_toll_riteUL2_toll_rite: 2600 ms2600 msUL3_last_wardenUL3_last_warden: 1500 ms1500 msvo_effortvo_effort: 240 ms240 msvo_hurtvo_hurt: 260 ms260 msvo_deathvo_death: 1300 ms1300 ms
28 dòng
SFXLoạimsBiến thểBusƯu tiênGiọngLUFSTellNguồnTrạng tháiBrief
HeroAttackCut move=A1 (H03_COMBO_A_1) + H03_DASH_ATTACK (lớp gốc, pit… SFX_H03_a1_swingswing2004HeroAttack202−19nonefreesoundbriefNữ lính đâm giáo dài một tay: thẳng, gọn, có trọng lượng ở đầu cán; 3 chuông nhỏ nảy theo cú đâm. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. Dạng Rèn: AS2 bộ __as2_nn (giáo đôi 2 chuông, nhịp ×1.2 → whoosh ngắn hơn 15%, cao +3 bán cung, 2 lớp chuông lệch 25 ms), AS3 bộ __as3_nn (giáo móc 72 px bọc sắt, nhịp ×0.85 → whoosh dài hơn 15%, −2 bán cung, thêm cạch móc sắt 3 ms); cùng id. A2 = gốc +4% (doc 32 §4.4). KHÔNG được nghe như kiếm chém, roi quất, chuông xe đạp hay chuông gió.
HeroAttackCut move=A2 (H03_COMBO_A_2) và A3 (H03_COMBO_A_3 dùng bộ bi… SFX_H03_a2_swingswing2104HeroAttack202−19nonefreesoundbriefCú chọc nối và chọc xoắn: rút về – đâm lại, mũi lệch 6 px; A3 xoắn cán nghe rõ gỗ kẽo + một hồi chuông nhỏ đi lên (gợi tầng Vang). Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. Dạng Rèn: AS2 bộ __as2_nn (giáo đôi 2 chuông, nhịp ×1.2 → whoosh ngắn hơn 15%, cao +3 bán cung, 2 lớp chuông lệch 25 ms), AS3 bộ __as3_nn (giáo móc 72 px bọc sắt, nhịp ×0.85 → whoosh dài hơn 15%, −2 bán cung, thêm cạch móc sắt 3 ms); cùng id. KHÔNG được nghe như kiếm, roi, cửa gỗ cót két kéo dài.
HeroAttackCut move=A4 (H03_COMBO_A_4 Cắm Sào), H03_AS2_A4_TWIN, H03_A… SFX_H03_a3_swingswing3204HeroAttack202−18nonefreesoundbriefNhấc giáo bằng hai tay qua đầu rồi giáng chuôi xuống: âm vút xuống nặng, chuông lắc theo. AS2 (xoay song chuông): whoosh tròn 360° pan ±0.2, 2 chuông quét. AS3: thêm cạch móc sắt. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như rìu bổ củi, cánh quạt trực thăng, chuông nhà thờ.
HeroHitBatch heroId=H03 (mọi đòn chọc A1–A3, A5, Đánh sau Lướt, Đâm C… SFX_H03_hithit1704HeroAttack303−20nonefreesoundbriefMũi giáo hẹp xuyên vào thân tro: nhanh, sắc, không vang. Biến thể __tip là phần thưởng tai cho cự ly đúng 70–90 px. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như dao chặt thịt, đấm bốc, gõ chuông lớn.
HeroComboSpecial heroId=H03 branch=PLANT (H03_COMBO_A_4 Cắm Sào nổ r5… SFX_H03_combo_specialexplode6503HeroAttack202−16nonefoleybriefChữ ký của Halka: chuôi chuông cắm phập xuống sàn, cả cán ngân một tiếng trầm và đứng lại thành Tháp Vang. Người chơi phải nghe 'cột mốc được cắm'. Thu foley: chuôi gậy bọc đồng cắm vào khay đá + chuông tay đồng đặt úp bịt bằng khăn. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như búa tạ, nổ thuốc, cồng chiêng ngân dài.
HeroDash heroId=H03 (lớp trên SFX_SHARED_dash_base; Lướt Vọt Sào fram… SFX_H03_dashmove2103Hero202−22nonefreesoundbriefChống giáo đẩy mình trượt thấp 90 px: một tiếng gõ chuôi, vải phất, chuông rung khẽ. Lớp gió chung đã có ở dash_base. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như dịch chuyển phép, ván trượt, chuông báo.
HeroAnswerSuccess heroId=H03 (Gõ Chuông; lớp trên SFX_SHARED_answer_c… SFX_H03_answeranswer3803HeroDefense22−15nonefoleybriefGõ Chuông: một tiếng gõ trầm, chặn tay, nổ ngay tại kẻ vừa đánh — tai nghe vị trí đòn đáp (pan theo x kẻ tấn công). Tổng cùng answer_core −12 LUFS. Đạn bị vỡ: thêm lớp vỡ 'xoảng' nhiễu ≤ 40 ms. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như kiếm gạt, khiên chặn, chuông cửa, tiếng 'tinh' của tell vàng.
HeroCounter heroId=H03 (H03_COUNTER đâm f3 + H03_COUNTER_PULSE xung r… SFX_H03_counterhit3603HeroDefense22−15nonefreesoundbriefĐâm Chuông: lao 48 px, giáo xuyên mục tiêu ✦ rồi 3 chuông cùng ngân một hợp âm bịt — mục tiêu Chín Vang ngay (+3). Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như súng, kiếm đâm thép, chuông nhà thờ.
HeroHoldStart heroId=H03 (Nhảy Sào, tick W khi còn giữ RB) + H03_COMB… SFX_H03_hold_startmove2203HeroDefense201−18nonefreesoundbriefCắm chuôi và bật lên: tiếng cán gỗ uốn căng như sào tre rồi bật. Không swell trầm (AUD-02). Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như lò xo hoạt hình, cung bắn tên, nhảy bạt nhún.
HeroHoldStart → loop trong cung vọt tới HeroHoldEnd (dừng ngay khi đá… SFX_H03_hold_looploop4001HeroDefense201−24nonesynthbriefThân bay trên cung 60–90 px trong 0.35 s: một lớp gió thẳng, mức ổn định. Loop mẫu chính xác 17.640 mẫu @44.1 kHz (0.40 s ≥ cung dài nhất 0.30 s của SK07). KHÔNG được nghe như gió bão, máy bay, ma kêu.
HeroHoldEnd heroId=H03 (đáp Nhảy Sào; cancelled=true → chỉ lớp transi… SFX_H03_hold_endmove2303HeroDefense202−19nonefreesoundbriefĐáp sau cú vọt: chắc, gọn, chuông nảy một lần. Khi cú đáp kích Vỡ Âm, res_spend phát chồng sau 1 frame. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như ngã, va kim loại lớn, tiếng nhảy hoạt hình.
HeroResource heroId=H03 kind=gain (Vang tăng trên địch: chọc, Tháp Va… SFX_H03_res_gainimpact2204Hero302−24nonesynthbriefVang là đếm bằng tai: tiếng ngân bịt nhỏ, cao dần theo tầng (A–E–B của motif A–E–A–B–C). Pitch ngẫu nhiên chỉ ±2% để giữ nốt. Cooldown 120 ms, pan theo x kẻ nhận. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như nhặt xu, chuông báo UI, tiếng 'tinh' tell.
HeroResource heroId=H03 kind=full (một kẻ đạt Chín Vang 3/3 — AS2: 2/… SFX_H03_res_fullimpact4502Hero201−20noneoutsourcebriefBáo kẻ địch đã 'chín': một tiếng ngân bịt cao nhất + hơi sáo trúc ngắn — người chơi biết lúc nào kích Vỡ Âm. Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như level-up, thông báo UI, chuông điện thoại.
HeroResource heroId=H03 kind=spend (Vỡ Âm H03_VO_AM kích; mỗi đợt lan… SFX_H03_res_spendexplode4804HeroAttack704−16nonesynthbriefVỡ Âm: chuông nứt vỡ cùng tiếng trầm dưới chân — dây chuyền nghe như hồi chuông vỡ lan qua bầy, mỗi đợt cao thêm 1 bán cung. Sub có transient, không swell (AUD-02). Chuông đồng ĐÃ BỊT (doc 32 §2.3): fundamental ≤ 600 Hz, decay ≤ 400 ms; mọi partial 2.2–3.6 kHz tắt ≤ 60 ms hoặc thấp hơn đỉnh ≥ 12 dB (AUD-01, kiểm bằng audio_lint.py) — lớp ngân luôn lowpass 2.0 kHz + bóp tay trên miệng chuông. KHÔNG được nghe như kính vỡ, pháo hoa, sấm.
SkillCast skillId=H03_SK01 (H03_SK01_RING f5 chuôi nện sàn; mỗi kẻ bị… SFX_H03_SK01_castcast7003Hero202−17nonefreesoundbriefHồi Chuông Lan: một cú nện chuôi, tiếng ngân lan ra như sóng hồ — người chơi nghe vòng mở rộng. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK02 (H03_SK02_CAST f0, 3 hồi nhịp 4 tick; cửa … SFX_H03_SK02_castcast6003Hero202−17nonefoleybriefGióng Ba Hồi: ba hồi chuông gióng nhanh lên cao như gọi quân tập hợp — báo 3 s 'ai 2 Vang là vỡ'. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK03 (H03_SK03_HUSH f7 bàn tay úp chuông, xung … SFX_H03_SK03_castcast4803Hero202−18nonefreesoundbriefChuông Nín: tiếng chuông bị bóp câm và một tiếng 'suỵt' — đòn windup của quái nhỏ bị cắt ngang. Không đảo ngược trầm (AUD-02). Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK04 (H03_SK04_THROW f6 phóng giáo phụ + cắm r2… SFX_H03_SK04_castcast8003Hero202−17nonefreesoundbriefTháp Canh Chuông: giáo phụ bay, cắm phập và thành tháp canh tự gõ mỗi giây — nhịp tháp là nhịp gác. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK05 (H03_SK05_NEEDLE: giữ nạp 0.4 s = lớp body… SFX_H03_SK05_castcast6203Hero202−17nonefreesoundbriefMũi Kim Chuông: nín thở nạp, chuông rung rì rì, rồi một mũi kim chọc xuyên hàng. Đoạn mũi 90–110 px phát thêm biến thể __tip của SFX_H03_hit. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK06 (H03_SK06_SPIN 4 nhịp f4/f11/f19/f26 = 4 v… SFX_H03_SK06_castcast11503Hero202−17nonefreesoundbriefXoay Sào Hộ: xoay thân quanh cán như cánh cửa xoay, bốn nhịp rõ — người chơi đếm được nhịp đẩy. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK07 (H03_SK07_VAULT mỗi lần vọt; H03_SK07_LAND… SFX_H03_SK07_castcast4203Hero202−18nonefreesoundbriefBước Sào Đôi: hai cú nhảy sào liền như bước qua hàng rào — lần hai cao hơn để tai biết đã dùng hết. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
SkillCast skillId=H03_SK08 (H03_SK08_CAST xung r96; 6 s: mỗi lần Vang… SFX_H03_SK08_castcast5203Hero202−18nonefoleybriefTruyền Vang: tiếng chuông dặn dò — Vang không chết theo xác mà chạy sang hai kẻ bên cạnh. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02). Hạng II–III: cùng âm + lớp sweetener __r2/__r3 (biến thể).
UltActivate ultId=H03_UL1 (H03_UL1_IMPACT f18 r130 + H03_UL1_TOLL 4 h… SFX_H03_UL1_great_bellcast34001Hero51−13nonefoleybriefĐại Hồng Chung: chuông đồng khổng lồ rơi xuống và gióng bốn hồi bịt — trang nghiêm, nặng, rõ từng hồi (đếm được 4). Chuông thật quá vang sẽ phạm AUD-01: thu chuông lớn bọc chăn + cắt partial cao. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02).
UltActivate ultId=H03_UL2 (H03_UL2_POKE 9 cú mỗi 6 tick + H03_UL2_TOL… SFX_H03_UL2_toll_ritecast26001Hero51−13nonefoleybriefHồi Chuông Tiễn: ghim một mục tiêu, chín mũi giáo dồn dập rồi ba lần chuông vỡ — tiếng cuối là hồi chuông tiễn đồng đội, buồn mà dứt khoát. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02).
UltActivate ultId=H03_UL3 (H03_UL3_CAST f8 xung r96; 9 s Tháp Theo Ng… SFX_H03_UL3_last_wardencast15001Hero51−13nonefoleybriefLính Gác Cuối: dựng giáo, ba chuông cùng gióng một hợp âm — lời thề đứng gác. 9 s sau đó tháp đi theo người, gõ mỗi giây. Chuông đồng bịt: fundamental ≤ 600 Hz, decay ≤ 400 ms, không partial 2.2–3.6 kHz decay > 60 ms ở ≥ −12 dB (AUD-01); mọi lớp trầm có transient, không swell < 140 Hz dài > 0.25 s (AUD-02).
AnimEvent clip=attack3|attack4|attack5|as2_fin|counter|sk01|sk03|sk04… SFX_H03_vo_effortvocal2405VO452−20noneoutsourcebriefNữ lính gác gắng sức: kìm, gọn, có kỷ luật — như người quen thở theo nhịp giáo. KHÔNG được nghe như tiếng hét chiến binh, rên điệu đà. Giọng không lời (doc 32 §9): diễn viên giọng nữ trẻ (20–30) thuê theo giờ, hợp đồng chuyển quyền toàn cầu mọi nền tảng; không giọng AI; không âm tiết của ngôn ngữ thật.
HeroDamaged heroId=H03 (sau SFX_SHARED_hero_hurt_impact) SFX_H03_vo_hurtvocal2605VO452−20noneoutsourcebriefHalka trúng đòn: một tiếng nén, không kêu — cô không cho kẻ thù nghe mình đau. KHÔNG được nghe như la thất thanh, khóc. Giọng không lời (doc 32 §9): diễn viên giọng nữ trẻ (20–30) thuê theo giờ, hợp đồng chuyển quyền toàn cầu mọi nền tảng; không giọng AI; không âm tiết của ngôn ngữ thật.
HeroDeath heroId=H03 (sau SFX_SHARED_hero_death; SN_DEATH) SFX_H03_vo_deathvocal13002VO452−18noneoutsourcebriefHalka ngã: một hơi thở run như người lính buông gác, tiếc nhiều hơn đau. KHÔNG được nghe như tiếng hét, rên kéo dài. Giọng không lời (doc 32 §9): diễn viên giọng nữ trẻ (20–30) thuê theo giờ, hợp đồng chuyển quyền toàn cầu mọi nền tảng; không giọng AI; không âm tiết của ngôn ngữ thật.

14Câu thoại (bark)

38 dòng
BarkKích hoạtCâu thoạiƯu tiênHồi s1 lần
run_start_1RunStart heroId=H03 (rời Bến Đò ST_DOCK, sau thẻ Hồi I)Chuông còn treo thì lính còn gác.hero——
run_start_2RunStart heroId=H03 (lần chạy thứ 2 trở đi, ngẫu nhiên 1/2)Thầy ơi, đêm nay con gác thay thầy.hero——
run_start_3RunStart heroId=H03 khi có Khăn Tang ≥ 1 (MRN01–MRN15)Khăn tang buộc chặt. Lính gác không than.hero——
level_up_1LevelUp heroId=H03 (ngẫu nhiên 1/3, ≤ 1 lần/90 s)Mũi giáo vững thêm một tấc.hero90—
level_up_2LevelUp heroId=H03 (ngẫu nhiên 1/3, ≤ 1 lần/90 s)Thầy Nhạn dạy đúng. Đâm thẳng, đừng vội.hero90—
level_up_3LevelUp heroId=H03 khi cấp ≥ 10Ba chuông đã chung một tiếng.hero90có
perfect_answer_1HeroAnswerSuccess heroId=H03 perfect=true (Gõ Chuông vừa khít)Nghe rõ chưa?hero20—
perfect_answer_2HeroAnswerSuccess heroId=H03 perfect=true targetTier=M|L|XLĐánh vào chuông thì chuông trả lời.hero20—
perfect_dodgeHeroPerfectDodge heroId=H03Chậm nửa nhịp rồi.hero20—
vang_chainHeroResource heroId=H03 kind=spend Vỡ Âm lan ≥ 4 đợt (≤ 1 lần/60 s)Ba tiếng là đủ. Tiếng thứ ba để tiễn.hero60—
ult_1UltActivate ultId=H03_UL1Đại Hồng Chung, gióng!hero——
ult_2UltActivate ultId=H03_UL2Đứng yên. Ta tiễn ngươi đi.hero——
ult_3UltActivate ultId=H03_UL3Còn một lính gác. Là ta.hero——
low_hp_1HeroLowHp heroId=H03 hpPct ≤ 25 (≤ 1 lần/60 s)Chưa đổi gác. Đứng dậy.hero60—
low_hp_2HeroLowHp heroId=H03 hpPct ≤ 25 lần thứ 2 trong runLời thề còn đó, chân còn đứng.hero60—
elite_1EliteSpawn (EL_*) lần đầu trong phòng, hero H03Kẻ to đầu. Ghim nó lại.hero30—
elite_2EliteSpawn có Ấn EM (affix) ≥ 2Mang nhiều ấn thế, chuông càng vang.hero30—
boss_intro_b1BossIntro bossId=BS_B1 (sau BARK_BS_B1_intro ≥ 4 s; lần đầu gặp cha nuôi)Cha… con về đổi gác cho cha đây.hero—có
boss_intro_b1_againBossIntro bossId=BS_B1 lần gặp thứ 2 trở điLần này con gióng hồi tiễn, cha nghe nhé.hero——
boss_intro_b2BossIntro bossId=BS_B2Lão lái đò. Bến của đồng đội ta ở đâu?hero—có
boss_intro_b3BossIntro bossId=BS_B3Ông đúc chuông. Ta giữ tiếng của nó.hero—có
boss_intro_b4BossIntro bossId=BS_B4Yvra. Lính đứng gác không cúi đầu.hero—có
boss_intro_finalBossIntro bossId=BS_FINALDravos. Ta gióng hồi tiễn cho chiếc mũ chuông ấy.hero—có
boss_intro_trueBossIntro bossId=BS_TRUE (Hồi VI)Cái Lặng. Ta vẫn còn ba tiếng chuông.hero—có
boss_intro_miniBossIntro bossId=MB_* (mọi mini-boss, ngẫu nhiên)To xác. Mũi giáo vẫn đủ dài.hero30—
victory_1BossDefeated heroId=H03 (clip victory, sau khi tháo mũ)Nghỉ đi. Phiên gác của ngươi hết rồi.hero——
victory_b1BossDefeated bossId=BS_B1 heroId=H03Con tiễn cha. Tiếng thứ ba là của cha.hero—có
room_clearRoomCleared heroId=H03 objective bất kỳ (ngẫu nhiên 1/6)Yên rồi. Đổi vị trí gác.hero45—
death_1HeroDeath heroId=H03 (trước SN_DEATH)Xin lỗi thầy… con bỏ gác rồi.hero——
death_2HeroDeath heroId=H03 lần chết thứ 2 trở điChuông chưa rơi. Con sẽ quay lại.hero——
reviveHeroRevive heroId=H03Lính gác không được ngủ quên.hero——
hub_wakeWake tại Lửa Canh (clip wake, hero H03)Ca gác mới. Ai thay ta đêm qua?hero——
hub_ullaHubStationInteract stationId=ST_HEARTH hero H03 (NPC_ULLA, ngẫu nhiên)Bà Ulla, bà nghỉ đi, để con trông lửa.hero120—
hub_ledgerHubStationInteract stationId=ST_LEDGER hero H03 (NPC_HOL)Thầy Hol, con lại viết thư cho thầy đây.hero120—
hub_forgeHubStationInteract stationId=ST_FORGE hero H03 (NPC_GREM)Lão Grem, mài mũi giáo, đừng đụng chuông.hero120—
hub_yardHubStationInteract stationId=ST_YARD hero H03Chọc một nghìn lần nữa. Thầy dặn thế.hero120—
varek_doubtRunStart heroId=H03 khi H01 đã mở khoá (ngẫu nhiên 1/5)Varek từng gặt xác lính gác. Ta không quên.hero—có
hub_idleHub đứng yên ≥ 20 s, hero H03 (clip hub_idle f40 đọc thư)Dòng Gác Chuông còn một người. Vậy là còn.hero180—