Files
pokepinballrs/tools/scripts
Cyphgirl d510ebd0df Extract the catch tile burst start sheet from baserom
gCatchTile_BurstStart_Gfx is 8 frames of the lightning strike drawn by
gCatchTile_RevealOamFramesets, and it is the last of the burst family. Six frames
have their pieces on one sub-tile phase and consume the slice in order, so they
take shapes; frame 4 has a piece 4px off and takes an approximate one.

I had this filed as blocked, on the grounds that frame 6 contains an overlap no
layout can express. That was half right and it cost the other seven frames. The
overlap is real -- a 16x16 at t204 and a 16x32 at t207 both claim t207, so that
frame's tiles are not one run and it stays a strip -- but it says nothing about
the rest of the sheet, and treating the whole thing as blocked was the error.

The frames were worth generating rather than hand-computing: 6 shapes, up to
78 cells each. The helper takes a frameset's piece list and either returns a
shape or explains why not. It rejects on three grounds, and the third only turned
up here: mixed sub-tile phases, two pieces landing on one grid cell, and pieces
that do not consume the tile slice in order. That last check is what correctly
sends frame 6 to a strip -- a grid-overlap test alone accepts it, because the two
pieces do not collide on screen, only in the tile numbers they read.

t219 is unused and t240..255 are unreferenced. Palette from
gCatchTile_BurstStart_Pal into OBJ bank 14, so no vote.

Rebuilt sheet matches the ROM blob before and after recolouring, check passes,
make compare passes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 10:05:08 -04:00
..