1Tổng quan
32
VFX
30
SFX
0
bark
52
tài sản môi trường
📚
Doc định nghĩa luật 30-Art-Direction §3.3/§6 · 31-VFX-Bible §3–§9 · 32-Audio-Bible §4.2/§10 · biomes/B1.json
2VFX (32)
32 dòng
| ID | Hạng | Lớp | Frame | Giây | Palette | Kích hoạt |
|---|---|---|---|---|---|---|
| VFX_ENV_B1_collapse_crack | M | floor_decal | 14 | 0.47 | #1a1724#211d2d#4c4a3e#757061 | HZ_B1_collapse windup start t = 0 (cùng tick VFX_SHARED_tell_zone_p) |
| VFX_ENV_B1_collapse_burst | M | overhead | 12 | 0.4 | #e0d7c4#a89f8d#757061#4c4464#2d283c#1a1724 | HZ_B1_collapse va chạm t = 0 (= hết windup 0.45 s) |
| VFX_ENV_B1_collapse_pit | M | floor_decal | 6 | 8 | #1a1724#211d2d#3a334d#2d283c | sau collapse_burst t = 0.4 s; sống 8 s rồi tan dither 0.5 s |
| VFX_ENV_B1_bell_sway | M | body_front | 8 | 0.27 | #8fb3a6#6b8a80#4d655e#6a5e50#e8e4f0 | HZ_B1_bell: hero đánh trúng trụ sẵn t = 0 |
| VFX_ENV_B1_bell_toll_wave | L | floor_decal | 12 | 0.4 | #6b8a80#4d655e#a89f8d#757061 | HZ_B1_bell ngân t = 0 (sau sway 0.25 s) |
| VFX_ENV_B1_bone_rattle | S | body_front | 6 | 0.2 | #e0d7c4#a89f8d#757061 | HZ_B1_bone_field: thân đi vào vùng / bone_pile trúng đòn t = 0 |
| VFX_ENV_B1_grave_lid_burst | M | body_front | 9 | 0.3 | #6e6258#54493f#3d342d#3a334d#2d283c | HZ_B1_open_grave: hết ấn tro 0.6 s (VFX_SHARED_spawn_mark) t = 0 |
| VFX_ENV_B1_grave_seal | M | body_front | 8 | 0.27 | #6e6258#54493f#3a334d#a89f8d | HZ_B1_open_grave: nắp nhận đủ 30 sát thương t = 0 |
| VFX_ENV_B1_brazier_tip | M | body_front | 12 | 0.4 | #5a5e69#3f424b#9cdbe0#68a3a8#476e75 | HZ_B1_ghost_brazier: lò nhận HEAVY/kỹ năng/ult/nổ t = 0 |
| VFX_ENV_B1_ghostfire_pool | M | floor_decal | 8 | 4 | #9cdbe0#68a3a8#476e75#2e464c | HZ_B1_ghost_brazier: vùng N sống 4 s, bắt đầu cùng VFX_SHARED_tell_zone_n |
| VFX_ENV_B1_stele_crack | M | body_front | 18 | 0.6 | #665c83#4c4464#3a334d#2d283c | HZ_B1_toppling_stele windup start t = 0 (cùng VFX_SHARED_tell_zone_p rect) |
| VFX_ENV_B1_stele_fall | M | overhead | 12 | 0.4 | #665c83#4c4464#3a334d#a89f8d#1a1724 | HZ_B1_toppling_stele va chạm t = 0 |
| VFX_ENV_B1_prop_break_stone | S | overhead | 9 | 0.3 | #665c83#4c4464#3a334d#757061 | bia thấp/bia đôi/ghế đá HP 0 t = 0 |
| VFX_ENV_B1_prop_break_wood | M | overhead | 12 | 0.4 | #8a7d6c#6a5e50#4b4239#d8cfb4 | quan tài/bàn thờ/bó lúa HP 0 t = 0 |
| VFX_ENV_B1_urn_ash_puff | S | overhead | 9 | 0.3 | #a89f8d#757061#4c4a3e#e8e4f0 | hũ tro vỡ t = 0 |
| VFX_ENV_B1_candle_snuff | S | overhead | 8 | 0.27 | #68a3a8#757061#4c4a3e | nến sọ trúng đòn t = 0 |
| VFX_ENV_B1_charm_flutter | M | overhead | 18 | 0.6 | #d8cfb4#a89f8d#757061 | dây bùa giấy đứt t = 0 |
| VFX_ENV_B1_crow_takeoff | M | overhead | 24 | 0.8 | #0b0a10#2d283c#3a334d#757061 | hero tới trong 80 px của dead_tree có quạ, t = 0 |
| VFX_ENV_B1_ambient_ash_fall | XL | overhead | 24 | 2 | #e0d7c4#a89f8d#e8e4f0 | luôn bật trong phòng B1 (gắn camera, toạ độ world) |
| VFX_ENV_B1_ambient_ground_mist | XL | floor_decal | 24 | 2 | #757061#4c4a3e#2e293d#332d44 | phòng có cờ sương (sườn mộ, Đường Xe Tang, Bãi Mộ Mở) |
| VFX_ENV_B1_ambient_ghost_motes | S | overhead | 12 | 1 | #9cdbe0#68a3a8 | quanh mỗi lò lửa ma/đèn tro đang sáng |
| VFX_ENV_B1_room_enter_ash_veil | XL | screen | 18 | 0.6 | #15131d#4c4a3e#757061#e8e4f0 | RoomStart B1: t = 0 = màn chuyển phòng bắt đầu |
| VFX_ENV_B1_exit_ash_gate | L | body_front | 24 | 0.8 | #a89f8d#757061#e8e4f0#68a3a8 | RoomCleared B1: cửa ra mở t = 0 |
| VFX_ENV_B1_gauntlet_ash_wall | XL | body_front | 18 | 0.6 | #a89f8d#757061#4c4a3e#e8e4f0 | GAUNTLET: hero vượt mốc 600/1.200 px t = 0 |
| VFX_ENV_B1_crypt_door_open | M | body_front | 10 | 0.33 | #4c4464#3a334d#757061 | cửa hầm mở (gate spawn) t = 0 |
| VFX_ENV_B1_obj_brazier_feed | M | overhead | 9 | 0.3 | #9cdbe0#68a3a8#e0d7c4 | VIGIL: ĐÁP thành công trong r80 quanh OBJ_BRAZIER t = 0 |
| VFX_ENV_B1_obj_bell_wave | XL | floor_decal | 15 | 0.5 | #e0d7c4#a89f8d#6b8a80#e8e4f0 | BELLS: chuông mục tiêu ngân đủ nhịp t = 0 |
| VFX_ENV_B1_obj_nest_crack | M | body_front | 9 | 0.3 | #6e6258#54493f#3d342d#3a334d | NEST: OBJ_NEST_B1 qua mốc 67% / 34% HP t = 0 |
| VFX_ENV_B1_obj_nest_burst | L | overhead | 15 | 0.5 | #6e6258#54493f#3d342d#a89f8d | NEST: OBJ_NEST_B1 HP 0 t = 0 |
| VFX_ENV_B1_cocoon_shake | M | body_front | 10 | 0.33 | #e0d7c4#a89f8d#757061#e8e4f0 | RESCUE: OBJ_COCOON mất mỗi 100 HP t = 0 (bất tử 3 s) |
| VFX_ENV_B1_cocoon_open | L | overhead | 60 | 2 | #e0d7c4#a89f8d#757061#e8e4f0 | RESCUE: OBJ_COCOON HP 0 t = 0 (cảnh 2 s, World ×0.3) |
| VFX_ENV_B1_carrier_urn_break | M | overhead | 15 | 0.5 | #e0d7c4#a89f8d#d8cfb4#e8e4f0 | CHASE: OBJ_CARRIER HP 0 t = 0 |
3SFX (30)
30 dòng
| ID | Loại | Bus | ms | Biến thể | Tell | Hook |
|---|---|---|---|---|---|---|
| SFX_B1_amb_bed | amb_bed | Ambience | 64 000 | 1 | none | RunStart/ActChanged biome=B1 + RoomStart B1 (phòng ngoài trời) |
| SFX_B1_amb_crypt_bed | amb_bed | Ambience | 60 000 | 1 | none | RoomStart B1 phòng hầm (crypt_yard, ossuary_ring, twin_crypts, cocoon_chapel); crossfade 1.5 s với amb_bed |
| SFX_B1_amb_crow | amb_spot | Ambience | 1200 | 4 | none | AmbienceSpot biome=B1 (1 spot / 6–14 s, pan ngẫu nhiên ±0.6) · hoặc dead_tree quạ bay |
| SFX_B1_amb_stone_crack | amb_spot | Ambience | 900 | 4 | none | AmbienceSpot biome=B1 (1 spot / 6–14 s, pan ngẫu nhiên ±0.6) |
| SFX_B1_amb_gate_chain | amb_spot | Ambience | 1400 | 4 | none | AmbienceSpot biome=B1 (1 spot / 6–14 s, pan ngẫu nhiên ±0.6) |
| SFX_B1_amb_ghostfire | amb_spot | Ambience | 1300 | 4 | none | AmbienceSpot biome=B1 (1 spot / 6–14 s, pan ngẫu nhiên ±0.6) · gần lò lửa ma trong 120 px |
| SFX_B1_amb_ash_gust | amb_spot | Ambience | 1500 | 4 | none | AmbienceSpot biome=B1 (1 spot / 6–14 s, pan ngẫu nhiên ±0.6) |
| SFX_B1_hz_floor_collapse | impact | World | 900 | 3 | none | HazardTrigger hazardId=HZ_B1_collapse (lớp va chạm; tell P = SFX_SHARED_tell_p_swell + tell_p_impact chung) |
| SFX_B1_hz_village_bell | impact | World | 1500 | 3 | none | HazardTrigger hazardId=HZ_B1_bell (ngân sau sway 0.25 s; cũng nguồn reuse cho BS_B1_A11 + SFX_SHARED_objective_bell) |
| SFX_B1_hz_open_grave | impact | World | 600 | 3 | none | HazardTrigger hazardId=HZ_B1_open_grave (nắp bật cuối ấn tro 0.6 s; niêm mộ cùng id, biến thể 'seal') |
| SFX_B1_hz_bone_field | move | World | 250 | 6 | none | HazardTrigger hazardId=HZ_B1_bone_field: thay bước chân hero/quái trong vùng (quái S: 20% bước) |
| SFX_B1_hz_ghost_brazier | impact | World | 800 | 3 | none | HazardTrigger hazardId=HZ_B1_ghost_brazier (lò đổ; vùng N dùng SFX_SHARED_zone_n_loop) |
| SFX_B1_hz_stele_fall | impact | World | 900 | 3 | none | HazardTrigger hazardId=HZ_B1_toppling_stele (va chạm; tell P chung) |
| SFX_ENV_B1_prop_stone_break | impact | World | 450 | 4 | none | PropBroken biome=B1 propId=gravestone_a|gravestone_c|stone_bench |
| SFX_ENV_B1_prop_wood_break | impact | World | 600 | 4 | none | PropBroken biome=B1 propId=coffin_stack|offering_table|grain_sheaf |
| SFX_ENV_B1_prop_urn_break | impact | World | 500 | 4 | none | PropBroken biome=B1 propId=ash_urn |
| SFX_ENV_B1_candle_snuff | impact | World | 300 | 3 | none | PropBroken biome=B1 propId=skull_candles (tắt) |
| SFX_ENV_B1_charm_tear | impact | World | 500 | 3 | none | PropCut biome=B1 propId=paper_charm_line |
| SFX_ENV_B1_crypt_door | impact | World | 800 | 3 | none | GateSpawnOpen biome=B1 propId=crypt_door |
| SFX_ENV_B1_iron_gate_slam | impact | World | 700 | 3 | none | RoomLock biome=B1 (hero vào phòng → 4 cổng sắt sập; mở lại dùng SFX_SHARED_door_open) |
| SFX_ENV_B1_room_ash_veil | move | World | 700 | 3 | none | RoomStart biome=B1 (màn tro chuyển phòng 0.6 s) |
| SFX_ENV_B1_ash_wall_rise | move | World | 700 | 3 | none | GauntletWall biome=B1 (tường tro dựng sau hero mỗi 600 px) |
| SFX_ENV_B1_obj_brazier_feed | impact | World | 600 | 3 | none | ObjectiveFeed objective=VIGIL (ĐÁP trong r80 quanh OBJ_BRAZIER) |
| SFX_ENV_B1_obj_brazier_low | loop | World | 4000 | 1 | none | ObjectiveState objective=VIGIL hp<=33% (loop tới khi > 33% hoặc HP 0) |
| SFX_ENV_B1_obj_nest_crack | impact | World | 500 | 3 | none | ObjectiveState objective=NEST nest_hp_step (67%/34%) |
| SFX_ENV_B1_obj_nest_break | explode | World | 1200 | 3 | none | ObjectiveProgress objective=NEST (tổ vỡ, đẩy r100) |
| SFX_ENV_B1_cocoon_shake | impact | World | 600 | 3 | none | ObjectiveState objective=RESCUE cocoon_shell (mỗi 100 HP) |
| SFX_ENV_B1_cocoon_open | explode | World | 1500 | 1 | none | ObjectiveProgress objective=RESCUE (kén vỡ, cảnh 2 s World ×0.3) |
| SFX_ENV_B1_carrier_giggle | vocal | World | 600 | 4 | none | ObjectiveState objective=CHASE carrier_dodge (Lướt né 120 px) |
| SFX_ENV_B1_carrier_urn_break | impact | World | 800 | 3 | none | ObjectiveProgress objective=CHASE (người mang báu HP 0) |
4Tài sản môi trường (52)
52 dòng
| ID | Loại | Palette | Mô tả |
|---|---|---|---|
| ENV_B1_floor_flag | FLOOR | #1a1724#211d2d#2b2639#282335#2e293d#332d44 | Sàn đá lát hầm mộ (Sân Hầm Tro, nhà nguyện, hầm): ô 32×16 trên màn = 32×32 px sàn, 2–3 phiến chữ nhật nằm/ô, mạch mortar 1 px. 1 gốc + 7 biến thể, trọng số 60/40 (gốc 60%, 7 biến thể chia 40%). Tông:… |
| ENV_B1_floor_grass | FLOOR | #211d2d#2b2639#2e293d#374c32#59754f#4c4a3e | Đất cỏ đồi phủ tro (sườn mộ, Làng Gặt, gò canh): nền base pha đốm cỏ rêu m3/m2 ≤ 20% pixel, vệt tro b3. 8 biến thể trọng số 60/40. Chuyển sang floor_flag/floor_soil/floor_path bằng FLOOR_DETAIL viền … |
| ENV_B1_floor_soil | FLOOR | #29231f#3d342d#54493f#211d2d#2b2639#4c4a3e | Đất mộ mới xới (Bãi Mộ Mở, quanh huyệt): luống đất e2/e1 nằm ngang, cục đất 2 px, vệt xẻng. V trung bình ≤ V base biome + 0.04 để thân quái vẫn ≥ 1.35× sàn (doc 30 §3.1). 8 biến thể 60/40. |
| ENV_B1_floor_path | FLOOR | #1a1724#211d2d#2b2639#282335#332d44#3d342d | Lối đá cuội + đất nén (quảng trường làng, đường đưa tang): cuội 4–6 px, kẽ đất e2. 8 biến thể 60/40. Dùng cho lối chạy chính: không đặt FLOOR_DETAIL rêu trên lối (giữ đọc tell). |
| ENV_B1_floor_detail | FLOOR_DETAIL | #1a1724#211d2d#2e293d#332d44#374c32#757061 | Chi tiết sàn Tilemap con, ô 16×8 (16×16 sàn): 8 biến thể = nứt ngắn, nứt chữ Y, rêu kẽ, sỏi 3 viên, vệt tro, mép cỏ (N/S), mảnh xương nhỏ, lá khô. Mật độ: ≤ 30% ô FLOOR có chi tiết; trong r ≥ 120 qua… |
| ENV_B1_edge_cliff | EDGE | #2b2639#332d44#3a334d#2d283c#15131d | Mép sàn → vực đồi (bờ Nam sườn mộ, quanh gò canh): đỉnh 32×16 + mặt rơi 24 px (w2 trên → w3 dưới + dither Bayer 4×4 tối dần xuống void). RuleTile blob 47 ô (8 hướng): mỗi ô xét 8 láng giềng 'sàn'; gó… |
| ENV_B1_edge_crypt_pit | EDGE | #1a1724#211d2d#3a334d#2d283c#15131d | Mép sàn → huyệt/hầm sâu (trong nhà nguyện, hầm cốt): như edge_cliff nhưng mép là đá xây có vữa mortar, mặt rơi thẳng 24 px. RuleTile blob 47. Va chạm như vực. Không dùng làm hố sụt HZ_B1_collapse (hố… |
| ENV_B1_wall_n_crypt | WALL_N | #665c83#4c4464#3a334d#2d283c#59754f#757061 | Tường Bắc/Đông/Tây hầm mộ: đỉnh 32×16 w0, mặt đứng 48 px w1/w2 (đá xây, hốc sọ ở biến thể ossuary), chân w3 + rêu m2. RuleTile 16 ô (4 hướng: N, góc NE/NW, đầu cụt, nối chữ T). Cao 64 px tổng (≤ 64 t… |
| ENV_B1_wall_n_fence | WALL_N | #4c4464#3a334d#2d283c#5a5e69#3f424b#2a2c33 | Rào nghĩa trang: bệ đá thấp 16 px + song sắt 32 px (i1/i2) đầu chóp hình chìa chuông bắt chéo búa chuông (biểu tượng Dòng Gác Chuông) mỗi 3 ô. RuleTile 16 ô. Đạn bay qua được song sắt? KHÔNG: va chạm… |
| ENV_B1_wall_s_low | WALL_S | #665c83#4c4464#3a334d#2d283c | Rìa Nam hướng camera: lan can đá thấp, đỉnh 32×16 + mặt ≤ 16 px; không bao giờ che hero. RuleTile 16. |
| ENV_B1_decal_ash_stain | DECAL | #1a1724#211d2d#282335#4c4a3e | Vệt tro loang trên sàn (lớp Map, không va chạm), 48×24 (≤ 64). Không elip sáng viền 2 px, không chấm vòng (cấm giống tell N). ≤ 120 decal/phòng tổng. |
| ENV_B1_decal_crack | DECAL | #1a1724#211d2d#282335 | Vết nứt lớn đa ô (crack_a/crack_b demo + 2 mới). Ô sàn sụp HZ_B1_collapse mặc định có decal_crack biến thể 'nứt hình sao' để người chơi học vị trí (không tell, chỉ gợi). |
| ENV_B1_decal_moss | DECAL | #87a876#59754f#374c32#211d2d | Mảng rêu chân tường, ven ghế đá (moss_patch demo + 3 mới). Chỉ ở mép phòng (ngoài r200 tâm). |
| ENV_B1_decal_bones | DECAL | #e0d7c4#a89f8d#757061#4c4a3e#211d2d | Xương vụn phủ sàn = hình của HZ_B1_bone_field (khuôn r40/r60/r80: 3 cỡ + 1 rải lẻ bones_scatter). Viền vùng lởm chởm tự nhiên, KHÔNG viền tròn đều (không giống vòng tell). |
| ENV_B1_decal_wheel_rut | DECAL | #29231f#3d342d#211d2d#1a1724 | Vệt bánh xe tang khắc sâu 2 rãnh song song, nối đoạn tạo vòng (Đường Xe Tang, đường đưa tang). |
| ENV_B1_decal_paper_money | DECAL | #d8cfb4#a89f8d#757061#211d2d | Giấy tiền vàng mã rơi rải (ngà #d8cfb4 + dấu mực, KHÔNG vàng bão hoà — dải tell). Có biến thể cháy xém mép. |
| ENV_B1_decal_wax_drip | DECAL | #e6e0d0#a89f8d#757061 | Sáp nến chảy loang dưới nến sọ/bàn thờ. |
| ENV_B1_decal_root | DECAL | #3d342d#29231f#4b4239#211d2d | Rễ cây chết trồi mặt sàn quanh ENV_B1_dead_tree. |
| ENV_B1_light_ghost_pool | LIGHT | #9cdbe0 | Vũng sáng sàn additive dưới lò lửa ma/nến/đèn: elip màu Đèn B1 #86d2d9, α ≤ 0.25, r 24–96, nhấp nháy ≤ 2 Hz biên độ α ≤ 0.05; chỉ dưới nguồn sáng có thật. Lớp FXBot −20. Trần 24 vũng động/màn (doc 31… |
| ENV_B1_gravestone_a | PROP | #665c83#4c4464#3a334d#2d283c#59754f#0b0a10 | Bia thấp 14 px (demo gravestone_a/c). Chân 12×6 px sàn, va chạm rect, KHÔNG chặn Lướt/đạn (vật thấp ≤ 16 px). Phá được: HP 20, mọi cú → nứt (frame 2) → vỡ thành ENV_B1_rubble. Rơi Vàng Mã: 1 (30%) (t… |
| ENV_B1_gravestone_b | PROP | #665c83#4c4464#3a334d#2d283c#59754f#757061#0b0a10 | Bia cao 30 px (demo gravestone_b). Chân 14×8, va chạm rect, chặn Lướt + chặn đạn Y. Tương tác: = HZ_B1_toppling_stele (HEAVY/kỹ năng/ult/nổ → nghiêng 0.6 s P → đổ làn 64×20). Không phá bằng cú nhẹ. O… |
| ENV_B1_gravestone_c | PROP | #4c4464#3a334d#2d283c#59754f#374c32#0b0a10 | Bia đôi sứt (vợ chồng), thấp 16 px, chân 20×8, va chạm rect, không chặn đạn. Phá được HP 30 → đá vụn. Rơi Vàng Mã: 1–2 (40%) (trần 12 Vàng Mã/phòng từ đạo cụ, ngoài thu nhập mục tiêu doc 17, [ASSUMED… |
| ENV_B1_bone_pile | PROP | #e0d7c4#a89f8d#757061#4c4a3e#0b0a10 | Đống xương sọ 10 px, không va chạm. Đặt ở tâm HZ_B1_bone_field. Chém → lắc xương (VFX_ENV_B1_bone_rattle), không phá hẳn. |
| ENV_B1_skull_candles | PROP_ANIM | #e0d7c4#a89f8d#757061#e6e0d0#9cdbe0#0b0a10 | Nến cắm sọ 12 px, ngọn lửa ma lục-lam 6 frame @12 fps loop, không va chạm. Vũng sáng r24 α 0.15. Trúng đòn → tắt (VFX_ENV_B1_candle_snuff), vũng sáng tắt 20 s rồi tự thắp (Tro nhớ lửa). Không rơi đồ. |
| ENV_B1_brazier | PROP_ANIM | #7a7f8c#5a5e69#3f424b#2a2c33#9cdbe0#68a3a8#0b0a10 | Lò lửa ma chân sắt 26 px, lửa 8 frame @12 fps loop (lục-lam #9cdbe0, S 30%). Chân elip 20×10, chặn đi + chặn Lướt, không chặn đạn. Vũng sáng r48 α 0.22. Tương tác = HZ_B1_ghost_brazier: HEAVY/kỹ năng… |
| ENV_B1_pillar | PROP | #665c83#4c4464#3a334d#2d283c#59754f#0b0a10 | Cột đá 48 px (≤ 48 trong sân đấu). Chân 20×12 rect, chặn đi + Lướt + đạn (nấp chặn đạn, A08). Không phá. Occlusion mờ α 0.45. |
| ENV_B1_pillar_broken | PROP | #665c83#4c4464#3a334d#2d283c#59754f#4c4a3e#0b0a10 | Cột gãy 26 px + mảnh rơi. Chân 22×12 rect, chặn đi + Lướt + đạn. Không phá. Occlusion. |
| ENV_B1_statue_broken | PROP | #665c83#4c4464#3a334d#2d283c#4d655e#59754f#0b0a10 | Tượng lính Gác Chuông vỡ đầu, ôm chìa chuông, 44 px. Chân 32×16 rect, chặn mọi thứ. Không phá. Occlusion. Đặt tâm-Bắc Sân Hầm Tro. |
| ENV_B1_iron_cage | PROP | #7a7f8c#5a5e69#3f424b#2a2c33#a89f8d#0b0a10 | Lồng sắt nhốt xác (xác trong lồng không sống), 30 px. Chân 24×14 rect, chặn đi + Lướt + đạn. Không phá. |
| ENV_B1_rubble | PROP | #4c4464#3a334d#2d283c#4c4a3e | Đá vụn thấp 6 px, không va chạm (cũng là trạng thái sau khi bia/ghế vỡ). |
| ENV_B1_village_bell_post | PROP_ANIM | #8a7d6c#6a5e50#4b4239#322c27#8fb3a6#6b8a80#4d655e#0b0a10 | Trụ chuông làng = HZ_B1_bell: khung gỗ 2 cột + xà, chuông đồng xanh câm 16×14 px, lưỡi gỗ buộc dây. 40 px cao. Chân 24×10 rect (chặn đi, chặn đạn ở 2 chân cột; giữa khung trống không chặn). Anim: idl… |
| ENV_B1_open_grave | PROP_ANIM | #6e6258#54493f#3d342d#29231f#3a334d#2d283c#0b0a10 | Mộ Mở = HZ_B1_open_grave: huyệt chữ nhật 28×14 sàn + nắp đá hé. Không va chạm (đi qua được). Anim: lid_burst 9 frame @30 (nắp bật khi thả quái), seal 8 frame @30 (nắp đập xuống khi hero gây 30 sát th… |
| ENV_B1_crypt_door | PROP_ANIM | #665c83#4c4464#3a334d#2d283c#5a5e69#3f424b#0b0a10 | Cửa hầm đá 2 cánh trong tường Bắc (gắn WALL_N), 48 px. Điểm sinh 'gate' của phòng hầm; cánh mở 10 frame @30 khi bầy tràn ra (gate spawn), đóng khi phòng khóa. Va chạm theo tường. Vào GAUNTLET: cửa th… |
| ENV_B1_iron_gate | PROP_ANIM | #7a7f8c#5a5e69#3f424b#2a2c33#3a334d#0b0a10 | Cổng sắt nghĩa trang (demo 4 cổng N/S/E/W), đầu song hình chìa chuông bắt chéo búa chuông. Đóng sập 6 frame @30 khi phòng khoá (hero vào), mở khi xong phòng. Điểm sinh 'gate'. |
| ENV_B1_coffin_stack | PROP | #8a7d6c#6a5e50#4b4239#322c27#d8cfb4#0b0a10 | Chồng 3 quan tài gỗ mộc chưa chôn, 22 px. Chân 28×14 rect, chặn đi + đạn. Phá được HP 40 (đòn bất kỳ) → gỗ vụn + giấy tiền bay (VFX_ENV_B1_prop_break_wood). Rơi Vàng Mã: 2–4 (100%) (trần 12 Vàng Mã/p… |
| ENV_B1_offering_table | PROP | #8a7d6c#6a5e50#4b4239#d8cfb4#e6e0d0#a89f8d#0b0a10 | Bàn thờ vàng mã: bát hương, xấp tiền giấy chưa đốt, 2 nến. 16 px, chân 28×12 rect, không chặn đạn. Phá được HP 20 → tiền giấy tung. Rơi Vàng Mã: 2–3 (100%) (trần 12 Vàng Mã/phòng từ đạo cụ, ngoài thu… |
| ENV_B1_ash_urn | PROP | #a89f8d#757061#4c4a3e#3a334d#0b0a10 | Hũ tro sành 12 px, chân 8×6, không va chạm. Phá 1 cú bất kỳ (HP 1) → phụt tro xám (VFX_ENV_B1_urn_ash_puff), mảnh sành. Rơi Vàng Mã: 1 (25%) (trần 12 Vàng Mã/phòng từ đạo cụ, ngoài thu nhập mục tiêu … |
| ENV_B1_dead_tree | PROP | #6a5e50#4b4239#322c27#29231f#2d283c#0b0a10 | Cây chết cành trơ, treo dây bùa/đèn tro, 64 px: CHỈ ở rìa ngoài vùng an toàn 427×267 (> 48 px). Chân 16×10 rect chặn mọi thứ. Không phá. Quạ đậu: hero tới trong 80 px → quạ bay (VFX_ENV_B1_crow_takeo… |
| ENV_B1_hearse_wreck | PROP | #8a7d6c#6a5e50#4b4239#322c27#5a5e69#3f424b#d8cfb4#0b0a10 | Xe tang đổ nghiêng mất 1 bánh (trang trí, không phải MB_B1_1), 30 px, chân 56×24 rect, chặn mọi thứ. Không phá. Đặt ở rìa Đường Xe Tang và cổng sườn mộ. |
| ENV_B1_stone_bench | PROP | #665c83#4c4464#3a334d#2d283c#59754f#0b0a10 | Ghế đá vỡ nhà nguyện, 16 px, chân 36×10 rect: chặn đi + chặn đạn (luật BS_B1: che A05/A09; vùng P sàn đi xuyên). Không chặn Lướt (thấp). Phá được HP 60 bằng HEAVY/nổ → đá vụn (mất che chắn). |
| ENV_B1_lantern_post | PROP_ANIM | #5a5e69#3f424b#2a2c33#9cdbe0#68a3a8#0b0a10 | Cột đèn tro: cột sắt 40 px + đèn lồng giấy lửa ma (6 frame @12 loop). Biến thể tắt (đèn rách, không sáng). Chân 6×6 ellipse chặn đi, không chặn đạn. Vũng sáng r32 α 0.18 (bản sáng). Trúng đòn → đèn đ… |
| ENV_B1_paper_charm_line | PROP_ANIM | #d8cfb4#a89f8d#757061#4b4239#0b0a10 | Dây bùa giấy ngà căng giữa 2 cọc gỗ (cao 18 px), lay 6 frame @12 loop. Không va chạm. Chém trúng dây → đứt, bùa bay (VFX_ENV_B1_charm_flutter, SFX_ENV_B1_charm_tear), thành 2 cọc trơ. Thuần trang trí. |
| ENV_B1_dig_mound | PROP | #6e6258#54493f#3d342d#29231f#5a5e69#0b0a10 | Đống đất huyệt + xẻng phu mộ cắm, 12 px (xẻng 20 px). Không va chạm. Không phá. Đặt quanh huyệt NEST (kể chuyện: thây vẫn đào). |
| ENV_B1_bell_shrine | PROP | #8a7d6c#6a5e50#4b4239#4c4464#3a334d#6b8a80#4d655e#0b0a10 | Miếu chuông nhỏ Làng Gặt: mái ngói tro, chuông con không lưỡi 8 px, bàn đá. 44 px, chân 32×18 rect chặn mọi thứ. Không phá. Landmark LMK_B1_reaper_village. |
| ENV_B1_grain_sheaf | PROP | #6e6258#8a7d6c#6a5e50#a89f8d#757061#0b0a10 | Bó lúa mục dựng, 16 px (vàng rơm xỉn S ≤ 25%, ngoài dải tell). Chân 10×6 rect, không chặn đạn. Phá được HP 10 → rơm bay (VFX_ENV_B1_prop_break_wood). Không rơi đồ. |
| ENV_B1_stone_bell | PROP | #665c83#4c4464#3a334d#2d283c#6b8a80#4d655e#0b0a10 | Chuông đá lớn nứt treo khung đá gãy (nhà nguyện), 48 px; trang trí mép Bắc, ngoài vùng an toàn khi đặt trong sân boss. Chân 36×16 rect chặn mọi thứ. Không phá, không ngân (câm tuyệt đối). |
| ENV_B1_rice_hut | PROP | #8a7d6c#6a5e50#4b4239#322c27#54493f#3a334d#0b0a10 | Nhà tranh đổ (vách đất, mái rạ sụp) 48 px, chân 56×28 rect chặn mọi thứ (vật cao, chặn đạn, che tầm nhìn). Không phá. Chỉ đặt mép phòng hoặc làm khối làng (Làng Gặt, quảng trường chuông). Occlusion. |
| ENV_B1_obj_brazier | PROP_ANIM | #7a7f8c#5a5e69#3f424b#2a2c33#9cdbe0#68a3a8#476e75#0b0a10 | Sprite OBJ_BRAZIER (VIGIL) bản B1: lò canh đá khắc chìa chuông, ngọn lửa ma lớn r20, 34 px. Chân r20 ellipse chặn đi. Lửa 8 frame @12 loop; cỡ ngọn lửa theo HP: ≥ 67% 3 bậc, 34–66% 2 bậc, ≤ 33% 1 bậc… |
| ENV_B1_obj_bell | PROP_ANIM | #8a7d6c#6a5e50#4b4239#8fb3a6#6b8a80#4d655e#33443f#0b0a10 | Sprite OBJ_BELL (BELLS) bản B1: khung gỗ đôi + chuông làng lớn 24 px, cao 48. Chân 32×12 rect. Thanh 'ngân' 3 nấc vẽ trên đầu (UI world). Trạng thái: tối (chưa tới lượt) · sáng viền ngà (đang tới lượ… |
| ENV_B1_obj_nest | PROP_ANIM | #6e6258#54493f#3d342d#29231f#4c4464#3a334d#a89f8d#0b0a10 | Sprite OBJ_NEST_B1 (NEST): Mộ Mở lớn — huyệt 44×22 sàn, nắp đá nứt dựng, tay thây thò. HP 260 (Hồi I). Chân 44×22 rect chặn đi. Nứt theo HP 3 nấc (VFX_ENV_B1_obj_nest_crack); vỡ → sập (VFX_ENV_B1_obj… |
| ENV_B1_obj_cocoon | PROP_ANIM | #e0d7c4#a89f8d#757061#4c4a3e#3a334d#0b0a10 | Sprite OBJ_COCOON (RESCUE) bản B1: kén tro + vải liệm quấn 1 Kẻ Thức, 42 px, chân r16 ellipse chặn đi. HP 400. Rung vỏ 10 frame @30 mỗi 100 HP (VFX_ENV_B1_cocoon_shake). Vỡ → cảnh 2 s (VFX_ENV_B1_coc… |
| ENV_B1_obj_carrier | PROP_ANIM | #e0d7c4#a89f8d#757061#54493f#3d342d#3a334d#0b0a10 | Sprite OBJ_CARRIER (CHASE) bản B1: Kẻ Đào Trộm Mộ — biped còm 30 px ôm hũ tro, giẻ xám lam. Sheet 8 hướng (xuất 8, gói 5, lật 3): run 8 frame @30 loop, dodge 6 frame, stagger 6 frame (HEAVY khựng 0.5… |