Skip to content

Gravity Flip Game

Read fixed corridor obstacles, preserve or flip gravity, and move a real runner path through five deterministic levels.

Privacy: your files never leave your device. All processing happens locally in your browser.

How to use

  1. 1.Read the obstacle in the next corridor column and note whether the runner currently follows the floor or ceiling.
  2. 2.Choose Advance to keep the current gravity side, or Flip + Advance to switch sides before entering the next column.
  3. 3.Clear every fixed column in all five levels for exactly 1,000 points, while avoiding a second distinct collision in one level.

About Gravity Flip Game

Gravity Flip Game is a deterministic five-level corridor runner built around two deliberate actions and no timer. The runner occupies either the floor or the ceiling. Advance keeps the current gravity direction and moves into the next fixed column. Flip + Advance reverses gravity, transfers the runner to the opposite side, and then moves into that next column. If the chosen side contains an obstacle, the move collides and the runner remains in place.

This is real stateful movement rather than a decorative flip animation. Every safe action changes the segment position. A flip also changes both the gravity direction and the runner side before collision is evaluated. The state stores the full completed side path from the level start through the current column. The visual board reads that state to place the runner and path dots, while the text status reports floor or ceiling, up or down gravity, and exact column progress.

Each level uses one persistent fixed corridor. Column one is the clear starting position, and every later column contains one obstacle on either the floor or ceiling. Obstacles do not move, randomize, or disappear after a failed attempt. The player reads the next visible column and decides whether staying on the current side or flipping to the opposite side avoids the block. No background timer advances the runner, so a slow device, browser scheduling pause, or accessibility interaction cannot change the outcome.

The two controls are intentionally explicit. Advance means keep the current side and enter the next column. Flip + Advance means switch sides and enter it as one atomic decision. A collision does not partially flip, partially advance, or corrupt the recorded path. Position, side, gravity, score, and completed path remain unchanged. A safe flip updates side and gravity together, preventing visual state from disagreeing with collision logic.

Five original levels contain four, four, five, five, and six obstacle columns. Clearing the final column of a level awards exactly 200 points. The next level begins deterministically on the floor with downward gravity, column one, and a fresh one-node path. Completing all five levels therefore awards exactly 1,000 points. The final level retains its full completed path so the end state remains inspectable.

Collision handling follows a two-distinct-failure rule within each level. A failed decision signature includes the level, current segment, and normalized action. Repeating the same failed action at the same segment is deduplicated and does not consume the second failure. The player may then take the safe action and continue. A later different collision creates a second signature and deadlocks the runner. Once deadlocked, both controls and all reducer calls are frozen until Restart.

Decision normalization accepts the visible action names regardless of surrounding spaces or letter case. The plus sign form of Flip + Advance is normalized to the internal hyphenated action. Unknown commands, non-string values, empty text, completed sessions, and deadlocked sessions are atomic no-ops. Restart reconstructs the exact first-level opening state, including floor side, down gravity, column one, empty failure set, zero score, and a one-node floor path.

The corridor is accessible without hiding its game geometry. Each column exposes its visible obstacle side, current runner side when present, and completed path side when already traversed. These are the playable board facts, not answer annotations. The component never adds a safe-action field, solution sequence, correct index, correctness class, answer data attribute, or hidden route. Test identifiers contain only neutral column indices and control names.

Keyboard control is scoped to the focusable game area instead of a global window listener. Press A or Right Arrow to advance, and F to flip and advance. Native buttons provide the same actions with at least a 44-pixel interaction height for touch and standard Enter or Space activation. Because there is no timer, focus movement and screen-reader exploration cannot cause an accidental delayed step. The widest level renders seven columns in a minimum-zero grid with compact symbols, wrapping text, and an overflow guard, keeping the layout structurally contained on a 390-pixel phone.

The automated test owns a private literal copy of all five obstacle arrays and all five safe decision sequences. Its independent side-toggle function simulates each segment without calling the product reducer. For every step, it proves that the expected decision lands on the unblocked side and that the opposite decision lands exactly on the obstacle. It then drives the product state through every safe sequence, confirms real position, side, gravity, and path transitions, verifies exact 200-point increments and exact 1,000 completion, and tests invalid, repeated-failure, second-distinct-failure, deadlocked, terminal, and Restart behavior.

All geometry and rules are original product-authored fixtures. The game does not claim to simulate gravitational acceleration, mass, velocity, hardware sensors, orbital motion, or any measured physical system. The terms gravity, floor, and ceiling name a deterministic two-lane mechanic. Because no external standards, measurements, reference tables, dates, or factual mappings determine the result, the evidence classification is dataRisk none and no external sources are needed.

Everything runs locally in the browser as a client-side L1 game. Decisions, paths, collisions, and scores are not uploaded for processing, and no account is required. The shared GameShell provides score and local best-score behavior, deterministic Restart, and Boss Key. The result is the same for the same sequence of decisions on every run.

Methodology & sources

Five original corridor fixtures define one blocked side per destination column. Advance preserves side; Flip + Advance toggles side and gravity before collision evaluation. The test-private oracle owns literal obstacle arrays and uses an independent toggle function to prove every safe action avoids its obstacle and every opposite action collides. No external measurements or factual reference data affect results.

Frequently asked questions

Mini Games guides

View all