린샹 안면백조권 Runtime Review
캡처 battle-rs-skill-1를 canonical EXE timeline과 대조한 증거 페이지입니다.
핵심 결론
- Runtime draw srcRect values map cleanly to btl_rs.cns frames even though the traced surface label is cara_sm1.cns; treat the label as a derived-surface naming artifact.
- Anmen Hyakuso Ken lv4 runtime shows the early 6-7-8-9 and 16-17-18-19 clusters before the late 33/34/35/36/37/42/41/40 cluster, so the old missing-hit preview is a browser binding/start-fragment problem, not missing EXE data.
- Runtime result sounds are WLK #03, #03, #04, #05, matching the canonical static result-sound sequence.
- Damage-number setup draws occur after each result sound, giving four runtime hit/result windows.
- Actor frame run sequence exactly matches the canonical EXE timeline row after adjacent duplicate compression.
Canonical 비교
린샹 / 안면백조권 lv4
· start 0x004db224
· display-table-phase-pointer
Expected frames: #6, #7, #8, #9, #9, #16, #17, #18, #19, #19, #33, #34, #38, #39, #39, #33, #34, #35, #36, #37, #35, #34, #42, #42, #41, #40, #3
Expected result WLK: #03, #03, #04, #05
Rinshan display phase table이 기준이다. phase 0x13은 0x004db1cc, phase 0x14..0x16은 0x004db224를 가리키며, 0x004db2d8은 후반 branch fragment라 앞쪽 1/2타 frame cluster를 떨어뜨린다.
Prompt Text
| frame | pc | rect | decoded | raw |
|---|---|---|---|---|
| 16811 | 0x0041B548 | 16,76,126,100 | 안면백조권 | be c8 b8 e9 b9 e9 c1 b6 b1 c7 a1 a1 a1 a1 a1 a1 |
Actor Frame Runs
Trace surface 0x10216D78 is labeled cara_sm1.cns, but every source rect below resolves to btl_rs.cns.
| first | last | draw frames | btl_rs frame | srcRect | dst |
|---|---|---|---|---|---|
| 16809 | 16810 | 2 | #0 | 0,0,48,64 | 96,160 |
| 16811 | 16812 | 2 | #6 | 336,0,400,64 | 392,200 |
| 16813 | 16818 | 6 | #7 | 400,0,464,64 | 392,200 |
| 16819 | 16820 | 2 | #8 | 464,0,528,64 | 424,200 |
| 16821 | 16833 | 13 | #9 | 528,0,576,64 | 424,200 |
| 16834 | 16835 | 2 | #16 | 336,64,400,128 | 392,200 |
| 16836 | 16841 | 6 | #17 | 400,64,464,128 | 392,200 |
| 16842 | 16843 | 2 | #18 | 464,64,528,128 | 424,200 |
| 16844 | 16856 | 13 | #19 | 528,64,576,128 | 424,200 |
| 16857 | 16858 | 2 | #33 | 0,272,80,336 | 392,200 |
| 16859 | 16864 | 6 | #34 | 80,272,160,336 | 392,200 |
| 16865 | 16866 | 2 | #38 | 400,272,480,336 | 408,200 |
| 16867 | 16879 | 13 | #39 | 480,272,560,336 | 408,200 |
| 16880 | 16881 | 2 | #33 | 0,272,80,336 | 392,200 |
| 16882 | 16887 | 6 | #34 | 80,272,160,336 | 392,200 |
| 16888 | 16889 | 2 | #35 | 160,240,240,336 | 392,164 |
| 16890 | 16900 | 11 | #36 | 240,256,320,336 | 392,176 |
| 16901 | 16902 | 2 | #37 | 320,272,400,336 | 392,188 |
| 16903 | 16904 | 2 | #35 | 160,240,240,336 | 392,152 |
| 16905 | 16906 | 2 | #34 | 80,272,160,336 | 392,188 |
| 16907 | 16908 | 2 | #42 | 560,272,608,336 | 408,192 |
| 16909 | 16910 | 2 | #42 | 560,272,608,336 | 408,196 |
| 16911 | 16912 | 2 | #41 | 576,64,624,128 | 408,200 |
| 16913 | 16914 | 2 | #40 | 576,0,624,64 | 408,200 |
| 16915 | 16916 | 2 | #3 | 160,0,208,64 | 408,200 |
| 16917 | 16934 | 18 | #3 | 160,0,208,64 | 96,160 |
Sound Events
| frame | pc | bytes | WLK match | detail |
|---|---|---|---|---|
| 16811 | 0x103039E4 | 3765 | #01, #02 | queued PCM sound buffer 0x1032EC14 bytes=3765 format=1ch/22050Hz/8bit flags=0x00000000 |
| 16823 | 0x1022941C | 2823 | #03 | queued PCM sound buffer 0x1024236C bytes=2823 format=1ch/22050Hz/8bit flags=0x00000000 |
| 16846 | 0x1022941C | 2823 | #03 | queued PCM sound buffer 0x1024236C bytes=2823 format=1ch/22050Hz/8bit flags=0x00000000 |
| 16869 | 0x1022A134 | 6175 | #04 | queued PCM sound buffer 0x1024236C bytes=6175 format=1ch/22050Hz/8bit flags=0x00000000 |
| 16892 | 0x1022A438 | 6945 | #05 | queued PCM sound buffer 0x1024236C bytes=6945 format=1ch/22050Hz/8bit flags=0x00000000 |
Damage Setup Draws
Four pairs of btl_etc.cns setup draws appear one frame after the four result sounds. Later non-hit numeric setup draws are excluded here.
| frame | pc | srcRect | dst |
|---|---|---|---|
| 16824 | 0x10297DD8 | 224,64,232,80 | 80,16 |
| 16824 | 0x10297DD8 | 200,64,208,80 | 72,16 |
| 16847 | 0x10297DD8 | 232,64,240,80 | 112,16 |
| 16847 | 0x10297DD8 | 200,64,208,80 | 104,16 |
| 16870 | 0x10297DD8 | 264,64,272,80 | 144,16 |
| 16870 | 0x10297DD8 | 200,64,208,80 | 136,16 |
| 16893 | 0x10297DD8 | 208,64,216,80 | 176,16 |
| 16893 | 0x10297DD8 | 208,64,216,80 | 168,16 |
Capture Summary
Top resource draws: title.cns 2042, 01234567.cns 1958, status.cns 1374, cara_sm1.cns 376, surface 640x608x8 @0x10097A00 242, surface 640x480x8 @0x1004C478 126, btl_at.cns 126, btl_sm.cns 126
Raw capture path is intentionally not committed: captures/runtime/hwanse-runtime-trace-2026-07-08T02-36-33-571Z-battle-rs-skill-1.jsonl
Next Tracer Requests
- Keep srcRect logging enabled for BltFast/Blt. It is now sufficient to prove exact actor frame indices for battle skills.
- Improve derived-surface labels so the 0x10216D78 actor sheet is identified as the active btl_rs battle sheet instead of cara_sm1.cns.
- If helper/effect validation is needed, capture the same srcRect detail for btl_efc.cns helper draws and object +0x28 frame/state writes.