{
  "version": 1,
  "kind": "hwanse-battle-rs-skill-runtime-review",
  "status": "runtime-evidence-promoted",
  "source": {
    "manifest": "captures/runtime/hwanse-runtime-trace-2026-07-08T02-36-33-571Z-battle-rs-skill-1.manifest.json",
    "jsonl": "captures/runtime/hwanse-runtime-trace-2026-07-08T02-36-33-571Z-battle-rs-skill-1.jsonl",
    "rawCaptureGitPolicy": "captures/runtime is gitignored; this report is the committed distilled evidence."
  },
  "manifest": {
    "trace_id": "battle-rs-skill-1",
    "game": "Hwanse2.exe",
    "profiles": [
      "vm-core",
      "selected-root",
      "descriptor-stack",
      "field",
      "resource"
    ],
    "start_frame": 16808,
    "end_frame": 16934,
    "trigger": "manual-start",
    "event_count": 16750,
    "notes": "runtime tracer: function hooks, VM runner samples/transitions, watched memory/object writes, DirectDraw surface/resource labels, draw/text/api events",
    "exported_at": "2026-07-08T02-36-33-571Z",
    "location": "http://localhost:8000/"
  },
  "summary": {
    "eventCount": 16750,
    "eventCounts": {
      "trace-start": 1,
      "surface-snapshot": 19,
      "resource-surface-label": 16,
      "function-enter": 2626,
      "draw-surface": 6516,
      "trace-trigger": 1411,
      "mem-write": 254,
      "vm-op": 2345,
      "object-stream-change": 1156,
      "vm-op-transition": 2344,
      "input": 2,
      "sound-api": 57,
      "text-draw": 1,
      "text-api": 1,
      "trace-stop": 1
    },
    "resourceDrawCounts": {
      "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,
      "btl_etc.cns": 108,
      "window.cns": 32,
      "frame.cns": 1
    },
    "actorSurface": "0x10216D78",
    "actorSurfaceLabel": {
      "frame": 16808,
      "surfaceHandle": "0x10216D78",
      "sourceLabel": "cara_sm1.cns",
      "sourceResourceName": "cara_sm1.cns",
      "sourceSurfaceSize": "640x400x8",
      "archiveOffset": "0x000E291B",
      "pixelHash": "ce31591ad07c337a"
    },
    "actorDrawCount": 126,
    "actorRunCount": 26,
    "runtimeHitSounds": [
      3,
      3,
      4,
      5
    ],
    "expectedResultSounds": [
      3,
      3,
      4,
      5
    ],
    "runtimeDamageSetupCount": 10,
    "runtimeHitDamageSetupCount": 8,
    "runtimeHitDamageSetupFrames": [
      16824,
      16847,
      16870,
      16893
    ],
    "frameRunSequenceExact": true,
    "frameSequenceExact": false
  },
  "textDraws": [
    {
      "seq": 413,
      "frame": 16811,
      "pc": "0x0041B548",
      "rect": "16,76,126,100",
      "raw": "be c8 b8 e9 b9 e9 c1 b6 b1 c7 a1 a1 a1 a1 a1 a1",
      "decodedCp949": "안면백조권",
      "font": "11x24 weight=700",
      "color": "0xFFFFFF"
    }
  ],
  "soundEvents": [
    {
      "seq": 344,
      "frame": 16811,
      "pc": "0x103039E4",
      "dataBytes": 3765,
      "wlkMatches": [
        {
          "wlkIndex": 1,
          "file": "01.wav",
          "sampleRate": 22050
        },
        {
          "wlkIndex": 2,
          "file": "02.wav",
          "sampleRate": 22050
        }
      ],
      "detail": "queued PCM sound buffer 0x1032EC14 bytes=3765 format=1ch/22050Hz/8bit flags=0x00000000"
    },
    {
      "seq": 2060,
      "frame": 16823,
      "pc": "0x1022941C",
      "dataBytes": 2823,
      "wlkMatches": [
        {
          "wlkIndex": 3,
          "file": "03.wav",
          "sampleRate": 22050
        }
      ],
      "detail": "queued PCM sound buffer 0x1024236C bytes=2823 format=1ch/22050Hz/8bit flags=0x00000000"
    },
    {
      "seq": 5267,
      "frame": 16846,
      "pc": "0x1022941C",
      "dataBytes": 2823,
      "wlkMatches": [
        {
          "wlkIndex": 3,
          "file": "03.wav",
          "sampleRate": 22050
        }
      ],
      "detail": "queued PCM sound buffer 0x1024236C bytes=2823 format=1ch/22050Hz/8bit flags=0x00000000"
    },
    {
      "seq": 8416,
      "frame": 16869,
      "pc": "0x1022A134",
      "dataBytes": 6175,
      "wlkMatches": [
        {
          "wlkIndex": 4,
          "file": "04.wav",
          "sampleRate": 22050
        }
      ],
      "detail": "queued PCM sound buffer 0x1024236C bytes=6175 format=1ch/22050Hz/8bit flags=0x00000000"
    },
    {
      "seq": 11519,
      "frame": 16892,
      "pc": "0x1022A438",
      "dataBytes": 6945,
      "wlkMatches": [
        {
          "wlkIndex": 5,
          "file": "05.wav",
          "sampleRate": 22050
        }
      ],
      "detail": "queued PCM sound buffer 0x1024236C bytes=6945 format=1ch/22050Hz/8bit flags=0x00000000"
    }
  ],
  "actorFrameRuns": [
    {
      "firstFrame": 16809,
      "lastFrame": 16810,
      "drawFrames": 2,
      "frameIndex": 0,
      "srcRect": "0,0,48,64",
      "x": 96,
      "y": 160
    },
    {
      "firstFrame": 16811,
      "lastFrame": 16812,
      "drawFrames": 2,
      "frameIndex": 6,
      "srcRect": "336,0,400,64",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16813,
      "lastFrame": 16818,
      "drawFrames": 6,
      "frameIndex": 7,
      "srcRect": "400,0,464,64",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16819,
      "lastFrame": 16820,
      "drawFrames": 2,
      "frameIndex": 8,
      "srcRect": "464,0,528,64",
      "x": 424,
      "y": 200
    },
    {
      "firstFrame": 16821,
      "lastFrame": 16833,
      "drawFrames": 13,
      "frameIndex": 9,
      "srcRect": "528,0,576,64",
      "x": 424,
      "y": 200
    },
    {
      "firstFrame": 16834,
      "lastFrame": 16835,
      "drawFrames": 2,
      "frameIndex": 16,
      "srcRect": "336,64,400,128",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16836,
      "lastFrame": 16841,
      "drawFrames": 6,
      "frameIndex": 17,
      "srcRect": "400,64,464,128",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16842,
      "lastFrame": 16843,
      "drawFrames": 2,
      "frameIndex": 18,
      "srcRect": "464,64,528,128",
      "x": 424,
      "y": 200
    },
    {
      "firstFrame": 16844,
      "lastFrame": 16856,
      "drawFrames": 13,
      "frameIndex": 19,
      "srcRect": "528,64,576,128",
      "x": 424,
      "y": 200
    },
    {
      "firstFrame": 16857,
      "lastFrame": 16858,
      "drawFrames": 2,
      "frameIndex": 33,
      "srcRect": "0,272,80,336",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16859,
      "lastFrame": 16864,
      "drawFrames": 6,
      "frameIndex": 34,
      "srcRect": "80,272,160,336",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16865,
      "lastFrame": 16866,
      "drawFrames": 2,
      "frameIndex": 38,
      "srcRect": "400,272,480,336",
      "x": 408,
      "y": 200
    },
    {
      "firstFrame": 16867,
      "lastFrame": 16879,
      "drawFrames": 13,
      "frameIndex": 39,
      "srcRect": "480,272,560,336",
      "x": 408,
      "y": 200
    },
    {
      "firstFrame": 16880,
      "lastFrame": 16881,
      "drawFrames": 2,
      "frameIndex": 33,
      "srcRect": "0,272,80,336",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16882,
      "lastFrame": 16887,
      "drawFrames": 6,
      "frameIndex": 34,
      "srcRect": "80,272,160,336",
      "x": 392,
      "y": 200
    },
    {
      "firstFrame": 16888,
      "lastFrame": 16889,
      "drawFrames": 2,
      "frameIndex": 35,
      "srcRect": "160,240,240,336",
      "x": 392,
      "y": 164
    },
    {
      "firstFrame": 16890,
      "lastFrame": 16900,
      "drawFrames": 11,
      "frameIndex": 36,
      "srcRect": "240,256,320,336",
      "x": 392,
      "y": 176
    },
    {
      "firstFrame": 16901,
      "lastFrame": 16902,
      "drawFrames": 2,
      "frameIndex": 37,
      "srcRect": "320,272,400,336",
      "x": 392,
      "y": 188
    },
    {
      "firstFrame": 16903,
      "lastFrame": 16904,
      "drawFrames": 2,
      "frameIndex": 35,
      "srcRect": "160,240,240,336",
      "x": 392,
      "y": 152
    },
    {
      "firstFrame": 16905,
      "lastFrame": 16906,
      "drawFrames": 2,
      "frameIndex": 34,
      "srcRect": "80,272,160,336",
      "x": 392,
      "y": 188
    },
    {
      "firstFrame": 16907,
      "lastFrame": 16908,
      "drawFrames": 2,
      "frameIndex": 42,
      "srcRect": "560,272,608,336",
      "x": 408,
      "y": 192
    },
    {
      "firstFrame": 16909,
      "lastFrame": 16910,
      "drawFrames": 2,
      "frameIndex": 42,
      "srcRect": "560,272,608,336",
      "x": 408,
      "y": 196
    },
    {
      "firstFrame": 16911,
      "lastFrame": 16912,
      "drawFrames": 2,
      "frameIndex": 41,
      "srcRect": "576,64,624,128",
      "x": 408,
      "y": 200
    },
    {
      "firstFrame": 16913,
      "lastFrame": 16914,
      "drawFrames": 2,
      "frameIndex": 40,
      "srcRect": "576,0,624,64",
      "x": 408,
      "y": 200
    },
    {
      "firstFrame": 16915,
      "lastFrame": 16916,
      "drawFrames": 2,
      "frameIndex": 3,
      "srcRect": "160,0,208,64",
      "x": 408,
      "y": 200
    },
    {
      "firstFrame": 16917,
      "lastFrame": 16934,
      "drawFrames": 18,
      "frameIndex": 3,
      "srcRect": "160,0,208,64",
      "x": 96,
      "y": 160
    }
  ],
  "damageSetupDraws": [
    {
      "seq": 2204,
      "frame": 16824,
      "pc": "0x10297DD8",
      "srcRect": "224,64,232,80",
      "x": 80,
      "y": 16
    },
    {
      "seq": 2205,
      "frame": 16824,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 72,
      "y": 16
    },
    {
      "seq": 5412,
      "frame": 16847,
      "pc": "0x10297DD8",
      "srcRect": "232,64,240,80",
      "x": 112,
      "y": 16
    },
    {
      "seq": 5413,
      "frame": 16847,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 104,
      "y": 16
    },
    {
      "seq": 8556,
      "frame": 16870,
      "pc": "0x10297DD8",
      "srcRect": "264,64,272,80",
      "x": 144,
      "y": 16
    },
    {
      "seq": 8557,
      "frame": 16870,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 136,
      "y": 16
    },
    {
      "seq": 11659,
      "frame": 16893,
      "pc": "0x10297DD8",
      "srcRect": "208,64,216,80",
      "x": 176,
      "y": 16
    },
    {
      "seq": 11660,
      "frame": 16893,
      "pc": "0x10297DD8",
      "srcRect": "208,64,216,80",
      "x": 168,
      "y": 16
    },
    {
      "seq": 16588,
      "frame": 16933,
      "pc": "0x10297DD8",
      "srcRect": "256,64,264,80",
      "x": 16,
      "y": 16
    },
    {
      "seq": 16589,
      "frame": 16933,
      "pc": "0x10297DD8",
      "srcRect": "256,64,264,80",
      "x": 8,
      "y": 16
    }
  ],
  "hitDamageSetupDraws": [
    {
      "seq": 2204,
      "frame": 16824,
      "pc": "0x10297DD8",
      "srcRect": "224,64,232,80",
      "x": 80,
      "y": 16
    },
    {
      "seq": 2205,
      "frame": 16824,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 72,
      "y": 16
    },
    {
      "seq": 5412,
      "frame": 16847,
      "pc": "0x10297DD8",
      "srcRect": "232,64,240,80",
      "x": 112,
      "y": 16
    },
    {
      "seq": 5413,
      "frame": 16847,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 104,
      "y": 16
    },
    {
      "seq": 8556,
      "frame": 16870,
      "pc": "0x10297DD8",
      "srcRect": "264,64,272,80",
      "x": 144,
      "y": 16
    },
    {
      "seq": 8557,
      "frame": 16870,
      "pc": "0x10297DD8",
      "srcRect": "200,64,208,80",
      "x": 136,
      "y": 16
    },
    {
      "seq": 11659,
      "frame": 16893,
      "pc": "0x10297DD8",
      "srcRect": "208,64,216,80",
      "x": 176,
      "y": 16
    },
    {
      "seq": 11660,
      "frame": 16893,
      "pc": "0x10297DD8",
      "srcRect": "208,64,216,80",
      "x": 168,
      "y": 16
    }
  ],
  "canonical": {
    "key": "player:rinshan:0x0c",
    "ownerName": "린샹",
    "skillName": "안면백조권",
    "skillIdHex": "0x0c",
    "levelOrFixed": 4,
    "displayVmStartVaHex": "0x004db224",
    "displayStartSource": "display-table-phase-pointer",
    "timelineStatus": "confirmed",
    "sourceNote": "Rinshan display phase table이 기준이다. phase 0x13은 0x004db1cc, phase 0x14..0x16은 0x004db224를 가리키며, 0x004db2d8은 후반 branch fragment라 앞쪽 1/2타 frame cluster를 떨어뜨린다.",
    "frameSequence": [
      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
    ],
    "frameRunSequence": [
      6,
      7,
      8,
      9,
      16,
      17,
      18,
      19,
      33,
      34,
      38,
      39,
      33,
      34,
      35,
      36,
      37,
      35,
      34,
      42,
      41,
      40,
      3
    ],
    "frameEvents": [
      {
        "kind": "actor-frame",
        "tick": 0,
        "vaHex": "0x004db238",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=6, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 6,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 2,
        "vaHex": "0x004db240",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=7, gate=6, mode=0",
        "spriteHex": "0x14",
        "frame": 7,
        "gate": 6
      },
      {
        "kind": "actor-frame",
        "tick": 8,
        "vaHex": "0x004db250",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=8, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 8,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 10,
        "vaHex": "0x004db258",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=9, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 9,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 12,
        "vaHex": "0x004db278",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=9, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 9,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 14,
        "vaHex": "0x004db288",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=16, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 16,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 16,
        "vaHex": "0x004db290",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=17, gate=6, mode=0",
        "spriteHex": "0x14",
        "frame": 17,
        "gate": 6
      },
      {
        "kind": "actor-frame",
        "tick": 22,
        "vaHex": "0x004db2a0",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=18, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 18,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 24,
        "vaHex": "0x004db2a8",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=19, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 19,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 26,
        "vaHex": "0x004db2c8",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=19, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 19,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 28,
        "vaHex": "0x004db428",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=33, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 33,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 30,
        "vaHex": "0x004db430",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=34, gate=6, mode=0",
        "spriteHex": "0x14",
        "frame": 34,
        "gate": 6
      },
      {
        "kind": "actor-frame",
        "tick": 36,
        "vaHex": "0x004db440",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=38, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 38,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 38,
        "vaHex": "0x004db448",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=39, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 39,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 40,
        "vaHex": "0x004db468",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=39, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 39,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 42,
        "vaHex": "0x004db478",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=33, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 33,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 44,
        "vaHex": "0x004db480",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=34, gate=6, mode=0",
        "spriteHex": "0x14",
        "frame": 34,
        "gate": 6
      },
      {
        "kind": "actor-frame",
        "tick": 50,
        "vaHex": "0x004db490",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=35, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 35,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 52,
        "vaHex": "0x004db4a0",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=36, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 36,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 54,
        "vaHex": "0x004db4c8",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=37, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 37,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 56,
        "vaHex": "0x004db4d8",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=35, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 35,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 58,
        "vaHex": "0x004db4e8",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=34, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 34,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 60,
        "vaHex": "0x004db500",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=42, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 42,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 62,
        "vaHex": "0x004db510",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=42, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 42,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 64,
        "vaHex": "0x004db520",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=41, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 41,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 66,
        "vaHex": "0x004db528",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=40, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 40,
        "gate": 2
      },
      {
        "kind": "actor-frame",
        "tick": 68,
        "vaHex": "0x004db540",
        "opcode": "0x21",
        "summary": "set sprite=0x14, frame=3, gate=2, mode=0",
        "spriteHex": "0x14",
        "frame": 3,
        "gate": 2
      }
    ],
    "hitEvents": [
      {
        "tick": 12,
        "normalWlkNo": 3,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "tick": 26,
        "normalWlkNo": 3,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "tick": 40,
        "normalWlkNo": 4,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "tick": 54,
        "normalWlkNo": 5,
        "altWlkNo": 14,
        "mode": 0
      }
    ],
    "resultSounds": [
      {
        "kind": "result-sound",
        "tick": 12,
        "vaHex": "0x004db260",
        "opcode": "0xc2",
        "summary": "WLK id 03 (normal id 03, alt id 14, mode=0)",
        "wlkNo": 3,
        "normalWlkNo": 3,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "kind": "result-sound",
        "tick": 26,
        "vaHex": "0x004db2b0",
        "opcode": "0xc2",
        "summary": "WLK id 03 (normal id 03, alt id 14, mode=0)",
        "wlkNo": 3,
        "normalWlkNo": 3,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "kind": "result-sound",
        "tick": 40,
        "vaHex": "0x004db450",
        "opcode": "0xc2",
        "summary": "WLK id 04 (normal id 04, alt id 14, mode=0)",
        "wlkNo": 4,
        "normalWlkNo": 4,
        "altWlkNo": 14,
        "mode": 0
      },
      {
        "kind": "result-sound",
        "tick": 54,
        "vaHex": "0x004db4a8",
        "opcode": "0xc2",
        "summary": "WLK id 05 (normal id 05, alt id 14, mode=0)",
        "wlkNo": 5,
        "normalWlkNo": 5,
        "altWlkNo": 14,
        "mode": 0
      }
    ],
    "durationGate": 70,
    "movementEvents": [
      {
        "kind": "movement",
        "tick": 0,
        "vaHex": "0x004db224",
        "opcode": "0xbc",
        "summary": "direct placement selector=3: opposite target-side edge placement.",
        "selector": 3,
        "movementMode": 0,
        "divisor": 0
      },
      {
        "kind": "actor-write",
        "tick": 0,
        "vaHex": "0x004db228",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x1c, imm=0x00200000 (32px)",
        "destHex": "0x1c",
        "immFixed": 32.0
      },
      {
        "kind": "actor-write",
        "tick": 0,
        "vaHex": "0x004db230",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0xfff00000 (-16px)",
        "destHex": "0x1c",
        "immFixed": -16.0
      },
      {
        "kind": "actor-write",
        "tick": 8,
        "vaHex": "0x004db248",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0x00200000 (32px)",
        "destHex": "0x1c",
        "immFixed": 32.0
      },
      {
        "kind": "actor-write",
        "tick": 14,
        "vaHex": "0x004db280",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0xffe00000 (-32px)",
        "destHex": "0x1c",
        "immFixed": -32.0
      },
      {
        "kind": "actor-write",
        "tick": 22,
        "vaHex": "0x004db298",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0x00200000 (32px)",
        "destHex": "0x1c",
        "immFixed": 32.0
      },
      {
        "kind": "actor-write",
        "tick": 28,
        "vaHex": "0x004db2d0",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0xffe00000 (-32px)",
        "destHex": "0x1c",
        "immFixed": -32.0
      },
      {
        "kind": "actor-write",
        "tick": 36,
        "vaHex": "0x004db438",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x1c, imm=0xfff00000 (-16px)",
        "destHex": "0x1c",
        "immFixed": -16.0
      },
      {
        "kind": "actor-write",
        "tick": 42,
        "vaHex": "0x004db470",
        "opcode": "0x12",
        "summary": "add display/actor field +0x1c, imm=0xfff00000 (-16px)",
        "destHex": "0x1c",
        "immFixed": -16.0
      },
      {
        "kind": "actor-write",
        "tick": 50,
        "vaHex": "0x004db488",
        "opcode": "0x12",
        "summary": "add display/actor field +0x20, imm=0xffdc0000 (-36px)",
        "destHex": "0x20",
        "immFixed": -36.0
      },
      {
        "kind": "actor-write",
        "tick": 52,
        "vaHex": "0x004db498",
        "opcode": "0x12",
        "summary": "add display/actor field +0x20, imm=0x000c0000 (12px)",
        "destHex": "0x20",
        "immFixed": 12.0
      },
      {
        "kind": "actor-write",
        "tick": 54,
        "vaHex": "0x004db4c0",
        "opcode": "0x12",
        "summary": "add display/actor field +0x20, imm=0x000c0000 (12px)",
        "destHex": "0x20",
        "immFixed": 12.0
      },
      {
        "kind": "actor-write",
        "tick": 56,
        "vaHex": "0x004db4d0",
        "opcode": "0x12",
        "summary": "add display/actor field +0x20, imm=0xffdc0000 (-36px)",
        "destHex": "0x20",
        "immFixed": -36.0
      },
      {
        "kind": "actor-write",
        "tick": 58,
        "vaHex": "0x004db4e0",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x20, imm=0xffdc0000 (-36px)",
        "destHex": "0x20",
        "immFixed": -36.0
      },
      {
        "kind": "actor-write",
        "tick": 60,
        "vaHex": "0x004db4f0",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x1c, imm=0xfff00000 (-16px)",
        "destHex": "0x1c",
        "immFixed": -16.0
      },
      {
        "kind": "actor-write",
        "tick": 60,
        "vaHex": "0x004db4f8",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x20, imm=0xfffc0000 (-4px)",
        "destHex": "0x20",
        "immFixed": -4.0
      },
      {
        "kind": "actor-write",
        "tick": 62,
        "vaHex": "0x004db508",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x20, imm=0xfffc0000 (-4px)",
        "destHex": "0x20",
        "immFixed": -4.0
      },
      {
        "kind": "actor-write",
        "tick": 64,
        "vaHex": "0x004db518",
        "opcode": "0x12",
        "summary": "sub display/actor field +0x20, imm=0xfffc0000 (-4px)",
        "destHex": "0x20",
        "immFixed": -4.0
      },
      {
        "kind": "movement",
        "tick": 70,
        "vaHex": "0x004db548",
        "opcode": "0xbc",
        "summary": "direct placement selector=0: current battle actor base position; used as return/reset placement.",
        "selector": 0,
        "movementMode": 0,
        "divisor": 0
      }
    ]
  },
  "conclusions": [
    "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."
  ],
  "nextTracerRequests": [
    "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."
  ]
}
