greglab
GamesLive

Parkour

Free-running obstacle course.

A multiplayer free-running game with seven data-driven obstacle courses, authoritative progression, checkpoints, hazards, and automated route regression checks.

Courses
7 rounds
Levels
Shared typed data
Testing
Routes + hazards
First commit
2026-06-27

What it is

Parkour turns a shared course definition into both the playable Three.js world and a testable model of intended routes. Seven rounds range across distinct obstacle and hazard patterns.

The React client renders movement, checkpoints, platforms, hazards, and camera feedback while Socket.IO carries player input and server snapshots.

The server owns round progression and player state. Checkpoints create recoverable respawns, and moving platforms and collision rules are reconciled against authoritative position.

Repository QA includes automated path and hazard checks plus focused playtests that have caught unavoidable hazards, ledge fall-through, camera issues, and moving-platform edge cases.

Highlights

  • Seven distinct obstacle rounds
  • Server-authoritative progression
  • Automated path and hazard regression tests

Captured features

Inside the project

The opening screen leads players into the seven-round free-running course set.

Capabilities

Key features

Seven courses

Each round defines a distinct obstacle path, including the moving-platform Tower to the Heavens course.

Data-driven levels

Shared course data feeds rendering, collision expectations, and regression checks instead of duplicating level definitions.

Checkpoints

Progress markers provide safe recovery points when a player falls or touches a hazard.

Moving obstacles

Platforms and hazards create timing challenges beyond static jumping routes.

Route regression tests

Automated checks verify intended paths and guard against impossible or unavoidable course states.

Under the hood

How it works

  1. 1Shared TypeScript course definitions describe geometry, hazards, checkpoints, and moving elements.
  2. 2React and Three.js turn those definitions into the playable client scene and HUD.
  3. 3Socket.IO carries input to a server that owns player snapshots and round progression.
  4. 4Automated route tests and focused playtests check that every course remains completable.

Recent changes

Full changelog →
  1. Redesigned the tower round

    Added moving platforms and fixed a ledge collision issue.

  2. Completed focused playtest QA

    Verified intended paths and fixed an unavoidable hazard in the foundry round.

  3. Added Tower to the Heavens

    Introduced the seventh obstacle course.