Big don/ka now fly to the soul gauge on the cabinet's arc and leave its sparkle trail.
Needs Yonokid/YataiDON#308 (and its PyTaikoGreen keys, Yonokid/PyTaikoGreen PR #16). On an engine without it, the spark (art on black) would be drawn with normal blending as black squares, so this should be merged only after #308.
game/hit_effect/firework: the cabinet's 13-frame spark, 256 px a frame, on black. It is meant to be added onto the scene.
skin_config.json turns on note_arc_firework_cabinet and uses the cabinet's timing:
note_arc_firework_spawn: 9 sparks, the first at frame 5, then every 3 frames.
note_arc_firework_path: each spark sits where the note was about 2 frames earlier (frame 2.58, then 3.085 apart, on the 30-frame flight).
note_arc_firework_scale: full size.
The sparks are centred on the note and drawn additively, and only follow hit big don/ka, not big drumroll hits.
Checked in play on auto with a chart of big don/ka against the cabinet's own timeline rebuilt frame by frame: the count, spawn times, spacing, size and glow match.
checksums.sha256 is not part of this PR.
Flight: the note also flies on the cabinet's arc. note_arc_cubic is turned on, with the cabinet's flight fitted as a cubic Bezier: from the judge circle to 魂, within 6 px of the cabinet's over its 30 frames (note_arc_frames 30). P2 has its own fit of the cabinet's 2P flight (note_arc_cubic_control_p2, also within 6 px), not P1's mirrored. The spark positions are on that 30-frame flight (note_arc_firework_path 2.58, then 3.085 apart). Checked in play: the note and the sparks follow the cabinet's path drawn over our frames.
Big don/ka now fly to the soul gauge on the cabinet's arc and leave its sparkle trail.
**Needs** Yonokid/YataiDON#308 (and its PyTaikoGreen keys, Yonokid/PyTaikoGreen PR #16). On an engine without it, the spark (art on black) would be drawn with normal blending as black squares, so this should be merged only after #308.
- `game/hit_effect/firework`: the cabinet's 13-frame spark, 256 px a frame, on black. It is meant to be added onto the scene.
- `skin_config.json` turns on `note_arc_firework_cabinet` and uses the cabinet's timing:
- `note_arc_firework_spawn`: 9 sparks, the first at frame 5, then every 3 frames.
- `note_arc_firework_path`: each spark sits where the note was about 2 frames earlier (frame 2.58, then 3.085 apart, on the 30-frame flight).
- `note_arc_firework_scale`: full size.
- The sparks are centred on the note and drawn additively, and only follow hit big don/ka, not big drumroll hits.
Checked in play on auto with a chart of big don/ka against the cabinet's own timeline rebuilt frame by frame: the count, spawn times, spacing, size and glow match.
`checksums.sha256` is not part of this PR.
**Flight:** the note also flies on the cabinet's arc. `note_arc_cubic` is turned on, with the cabinet's flight fitted as a cubic Bezier: from the judge circle to 魂, within 6 px of the cabinet's over its 30 frames (`note_arc_frames` 30). P2 has its own fit of the cabinet's 2P flight (`note_arc_cubic_control_p2`, also within 6 px), not P1's mirrored. The spark positions are on that 30-frame flight (`note_arc_firework_path` 2.58, then 3.085 apart). Checked in play: the note and the sparks follow the cabinet's path drawn over our frames.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
hit_effect/firework is the cabinet's 13-frame spark (additive art), and the skin turns on note_arc_firework_cabinet: 9 sparks, the first at frame 5 and then every 3 frames, each sitting where the note passed, centred on it at full size and added onto the scene. Only hit big don/ka get it, not big drumroll hits.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
note_arc_cubic with the cabinet's flight fitted as a cubic Bezier (within 6 px of it over its 30 frames, from the judge circle to 魂), note_arc_frames 30, and the spark positions on that 30-frame flight.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
note_arc_cubic_control_p2: the cabinet's 2P flight fitted on its own (within 6 px), instead of P1's mirrored (16 px off).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Big don/ka now fly to the soul gauge on the cabinet's arc and leave its sparkle trail.
Needs Yonokid/YataiDON#308 (and its PyTaikoGreen keys, Yonokid/PyTaikoGreen PR #16). On an engine without it, the spark (art on black) would be drawn with normal blending as black squares, so this should be merged only after #308.
game/hit_effect/firework: the cabinet's 13-frame spark, 256 px a frame, on black. It is meant to be added onto the scene.skin_config.jsonturns onnote_arc_firework_cabinetand uses the cabinet's timing:note_arc_firework_spawn: 9 sparks, the first at frame 5, then every 3 frames.note_arc_firework_path: each spark sits where the note was about 2 frames earlier (frame 2.58, then 3.085 apart, on the 30-frame flight).note_arc_firework_scale: full size.Checked in play on auto with a chart of big don/ka against the cabinet's own timeline rebuilt frame by frame: the count, spawn times, spacing, size and glow match.
checksums.sha256is not part of this PR.Flight: the note also flies on the cabinet's arc.
note_arc_cubicis turned on, with the cabinet's flight fitted as a cubic Bezier: from the judge circle to 魂, within 6 px of the cabinet's over its 30 frames (note_arc_frames30). P2 has its own fit of the cabinet's 2P flight (note_arc_cubic_control_p2, also within 6 px), not P1's mirrored. The spark positions are on that 30-frame flight (note_arc_firework_path2.58, then 3.085 apart). Checked in play: the note and the sparks follow the cabinet's path drawn over our frames.🤖 Generated with Claude Code
Redone as #70 on top of the Lua note arc: everything is in the skin's own note_arc.lua now, no engine or PyTaikoGreen changes needed.
Pull request closed