Skip to content

Doominator1/yes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GEOMETRY DASH

A faithful, browser-native recreation of Geometry Dash. Pure vanilla JavaScript + Canvas2D — zero dependencies, no build step. Open index.html (or npm starthttp://localhost:8000) and play.

gameplay

The physics are the real thing

Every core constant comes from community decompilations of the actual game (camila314/gdp PlayerObject and GD physics documentation), integrated at 240 Hz fixed substeps (like GD 2.2) so the feel is identical at any refresh rate. 1 block = 30 units; native values are per-frame at 60 FPS:

Constant Value
Gravity 0.958199 u/f²
Cube jump velocity 11.180032 u/f → apex ≈ 2.17 blocks in ≈ 0.39 s
Fall-speed clamp ±15 u/f
Speeds 0.5×/1×/2×/3×/4× 251.16 / 311.58 / 387.42 / 468 / 576 u/s
Ship clamps +8.0 / −6.4 u/f (mini: +9.4118 / −7.5294), hold 1.0 g up / release 0.8 g down
Ball gravity 0.6×
Robot gravity 0.9×, sustained-thrust jump
Wave exact 45° (mini 2:1), no gravity
Mini jump multiplier 0.8
Slope launch 1.4×
Player hitbox 30×30 solids / 9×9 inner for hazards; spikes 9.6×10.4; saws 80 % circles

Landing forgiveness (⅓-block clip), side-hit death, click buffering, hold auto-rejump, orb one-shot-per-click — all reproduced.

What's in the game

  • All 7 gamemodes: cube, ship, ball, UFO, wave, robot, spider — each × mini × flipped gravity
  • Portals: gamemode ×7, gravity (blue/yellow), size (mini/normal), speed ×5, dual, mirror
  • Orbs: yellow, pink, red, blue, green, black, green/magenta dash orbs
  • Pads: yellow, pink, red, blue · Slopes with launch physics · saws, spike variants, monsters
  • 3 built-in levels: Stereo Overdrive (Easy ★2), Neon Circuit (Harder ★6), Hyper Eruption (Insane ★9) with per-section color scripting and 3 secret coins each
  • Practice mode with checkpoints (Z place / X remove), separate practice progress
  • Icon kit: 6 cube designs × GD color palette (primary + secondary)
  • Level editor: full object palette, grid placement, undo, playtest, localStorage save, JSON export/import — custom levels appear in level select
  • Procedural music: WebAudio EDM loops per level + synthesized SFX (no audio files)
  • GD UI: level cards with difficulty faces/best-% bars/coins, progress bar with best marker, attempt counter, pause menu, New Best toasts, Level Complete stats, death explosions, fireworks
  • Persistence via localStorage: progress, coins, settings, icons, custom levels

Controls

Input Action
Click / tap / Space / ↑ / W jump · hold to fly/thrust
Esc / P pause
Z / X practice checkpoints
R restart attempt
H toggle hitbox viewer

Tests

npm test               # physics invariants + level solvability
node tests/physics.test.js   # 44 checks of decompiled-constant behavior
node tests/solve.test.js     # a beam-search bot completes every level with real physics
node tests/smoke.js          # Playwright UI smoke test (needs playwright-core + chromium)

Every built-in level is machine-verified completable: the solver plays it to 100 % using the actual engine.

A love letter to RobTop Games' Geometry Dash. Not affiliated; no original assets used — everything is drawn and synthesized procedurally.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors