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