fix(game): restore startup and multiball edge behavior
Build TDK Pinball / build (macos-latest) (push) Canceled after 0s
Build TDK Pinball / build (ubuntu-latest) (push) Canceled after 0s
Build TDK Pinball / build (windows-latest) (push) Canceled after 0s
Build TDK Pinball / build (macos-latest) (push) Canceled after 0s
Build TDK Pinball / build (ubuntu-latest) (push) Canceled after 0s
Build TDK Pinball / build (windows-latest) (push) Canceled after 0s
The interactive build inherited Macroquad's fixed zero random state, making maximum-power launcher shots repeat across fresh runs. Seed the platform generator from the startup clock before taking the program-global gameplay seed. Require record 148's still-live contact before the effect-seven special respawn and clear active multiball state on an ordinary ball drain, so a released reserve ball cannot be recreated after both slots are lost. Type-4 target and effect handlers now honor each record's predicted broadphase before changing its entry latch. This preserves the latch while another multiball slot is elsewhere, preventing repeated upper-left corridor scoring. The regressions and regenerated browser artifact stay with the implementation. Test Plan: - `just test` -- passed (137 tests) - `just clippy` -- passed - `cargo build --profile production` -- passed - `just web-build` -- passed - `cargo +nightly fmt --check` -- passed - `rumdl check --flavor commonmark CHANGELOG.md` -- passed - `git diff --cached --check` -- passed
This commit is contained in:
@@ -8,6 +8,17 @@ and this project adheres to
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Fixed
|
||||
|
||||
- Seed the initial gameplay random stream from the startup clock so the first
|
||||
maximum-power launcher shot is not identical on every run.
|
||||
- Require an unconsumed record-148 contact before the effect-seven special
|
||||
respawn, preventing a released reserve ball from being duplicated after
|
||||
both multiball balls drain.
|
||||
- Apply type-4 entry latches only inside each target's registered broadphase,
|
||||
preventing an unrelated multiball slot from clearing an upper-left target's
|
||||
latch and causing repeated scoring while the ball remains there.
|
||||
|
||||
## [1.0.0] - 2026-08-29
|
||||
|
||||
### Fixed
|
||||
|
||||
Reference in New Issue
Block a user