Flow of gameplay
Progression
Title "Pinball" start menu with play button
Player presses the "Play" button
Pinball startup sequence with flashy lights and a startup sound. The board springs to life.
Ball spawns by spring
Player holds spacebar to compress the ejection spring
Player releases spacebar to eject the ball into the game with a normal Force force.
Ball moves around and interacts with the board
All lives depleated
Game over
Score, survival time, and restart button shows
Player presses restart button
Connector node
Left and right flippers go up when the respective A and D keys are pressed, for press duration within a given time period.
Controlls
Esc
Ball falls to the bottom of pinball machine
Player looses one life
Pauses game
Esc
Unpauses game
Spacebar
Compresses spring for press duration
Spacebar released
Spring released
Buttons QWERTY and so on for each consumable effect (hotkeys for these are fixed)
Instant, consumable effects
The rest of the effects are event-triggered, area triggered, or activated on pickup
A and D
Moves each their respective left and right flipper for press duration within a set time period
Respective key released
Flipper released
Ball is flung by flipper
Ball hits bumper
Ball passes sinkpit
Ball is hit by laser (?)
Ball hits bounce enchancer
Ball hits speed enchancer
Knocks NPC. Player is knock invulnerable for a limited time to prevent player itself from getting knocked(?), or is only slightly effected by NPC collision(?)
Recharges after a set time to prevent spamming
NPC spawns by flippers
NPC flies around by flippers (?)
NPC is flung by flippers shared with player or by its own flippers, at random intervals and when it gets close to the flipper edge (?)
If the NPC just hits the player, normal physics apply
If knock is used, the NPC has normal physics applied, but player is invulnerable to collision while passing through NPC, or just slowed slightly
Ball hits NPC
If the NPC just hits the player, normal physics apply
If knock is used, the NPC has normal physics applied, but player is invulnerable to collision while passing through NPC, or just slowed slightly
Player uses NPC increased knock strength
Player uses slow movement
Player uses fast movement
Player uses dash boost
Player uses more bounce
Player uses increased NPC knock resistance
Ball is bounced off with high force
Ball is slightly attracted towards it, slowing the ball down
Ball is given a little poof by it, and the laser vanishes
Ball is sped up for a set period of time, regardless of direction. Not a boost surge in one specific direction.
Ball bounciness is drastically increased for a set period of time
Player is only slightly slowed by NPC knock, if not just passing straight through. NPC just passes through as well.
Player knocks the NPC drastically downward, almost guaranteeing a victory
Can be used for a set amount of times, player is given a boost surge in the direction of movement
Ball bounciness is drastically increased for a set period of time
Player movement is slowed for a set period of time
Ball is sped up for a set period of time, regardless of direction. Not a boost surge in one specific direction.
Ball is flung with a normal Force force, taking lever force into account (Distance between attach point of flipper * Force)
Lights continue to flash and sound effects are made on respective triggers
Whoever falls down looses!
All dynamic persistent events like lasers firing and fans rotating begin