English | Español
The Classic, reimagined by Aron Galdon Gines.
A new experience inspired in classic games. Navigate a procedurally generated universe, survive in the middle of space battles between planets, respect your friends, and evolve your ship from a simple vessel into a cosmic powerhouse.
Online game at https://arongaldon.github.io/genesis-celestial/
Celestial Genesis is built from scratch as a labor of love dedicated to the pioneers of video game history.
- Vector Graphics: The "QuadraScan" display allowed for incredible speed and rotational precision, making the ship's movement feel fluid and futuristic.
- Newtonian Physics: It was one of the first games to implement real-world inertia. Players didn't just move; they had to manage momentum—a mechanic that remains the core soul of Celestial Genesis.
- The World Wrap: The pioneer of the "screen wrap" mechanic, where leaving the top of the screen brought you back at the bottom, creating an infinite, claustrophobic playfield.
The original machine was so popular that arcade operators had to install larger coin boxes because the standard ones would overflow with quarters in a single day. It stayed relevant for decades, with the world record (set by 15-year-old Scott Safran in 1982) standing for over 27 years.
Celestial Genesis pays homage to this masterpiece by preserving that essential sense of weight, the danger of splitting rocks, and the sheer thrill of surviving in a cold, unforgiving universe—while expanding it into the modern era of procedural generation and massive space-engine battles.
In the year 2026 of the Celestial Age, the asteroid belts of the Orion sector have become the ultimate testing ground for humanity's survival. At the heart of this cosmic struggle is Aria, the most gifted pilot of the Genesis Initiative.
The asteroid belt was not always a graveyard of stone. Centuries ago, the sector was dominated by Krysta, a "Glass Planet" that held the sector's atmosphere in a delicate balance. During a failed experiment in mass-energy conversion by the old empires, Krysta reached critical mass and shattered into a billion fragments. This event, known as The Great Shattering, transformed a peaceful system into a chaotic maze of lethal debris and "Ghost Rocks" that continue to collide and merge in an endless, violent cycle.
Only three significant worlds remain as beacons of stability in this drifting graveyard:
- Hogar, The Cradle: Your starting point and the heart of the Genesis Initiative. It is a vibrant, blue-water world—the only place where the ancient atmosphere of Krysta still lingers in breathable pockets.
- Krysta Prime: A massive, unstable fragment of the original Glass Planet. It is a jagged, crystalline world where the gravity is erratic, and the surface glows with the residual energy of the Shattering.
- Astra, The Gilded Frontier: A relatively new planet formed by the coalescence of golden mineral-rich debris. It is a shining jewel that both the Genesis Squad and the Obsidian Vanguard desperately want to control for its rare fuel sources.
The enemies you face are not mere pirates. They are the Obsidian Vanguard, descendants of the Krystan settlers who survived the Shattering. Driven by a burning Hate for the Genesis Initiative—whom they blame for the destruction of their world—they seek to reclaim the remaining planets. For them, every Genesis Station destroyed is a step toward Revenge for their ancestors.
Within the Aegis Defense Hubs, the atmosphere is a mix of high-stakes tension and deep-rooted Friendship.
- The Bond of Siblings: Aria's lead engineer, Elias, lost his younger sister during a collision in the early days of the belt. He sees the same fire in Aria’s eyes, and his devotion to her ship’s Tier Evolutions is fueled by a desperate need to protect the only "family" he has left.
- Forbidden Ties: Not all conflicts are fought with lasers. Several pilots in the Obsidian Vanguard are former friends—and in some whispered cases, former Lovers—of the Genesis crew. This history makes every dogfight a personal tragedy.
- The Price of Betrayal: The pressure of the void can break even the strongest hearts. The Betrayal mechanic reflects those moments when a pilot, overwhelmed by fear or tempted by Vanguard promises, turns their weapons on their own kin, becoming a "Lone Wolf" in the cold dark.
When the system is finally purified, the celebratory gathering at the station's observation deck is the only reward they seek: standing together, watching the sun rise over a peaceful system they fought so hard to protect.
Podcast available The Dark Legend of Celestial Genesis on Youtube!
| Action | Input |
|---|---|
| Rotate | Mouse movement (automatic) or A/D / Left/Right arrows |
| Thrust (Forward) | W or Up Arrow or Right Click (hold) |
| Braking | S or Down Arrow |
| Strafe (Left/Right) | Shift + A/D or Shift + Left/Right arrows |
| Backwards | Shift + S or Shift + Down Arrow |
| Fire Weapons | Left Click or Space |
| Radar Zoom | Mouse Wheel or Z (Out) / X (In) |
- Rotate: Tap anywhere on the screen to instantly point your ship toward that position.
- Thrust: Long Press and hold. Your ship will begin moving forward after a short delay.
- Steer: While thrusting, Drag your finger to smoothly steer the ship in any direction.
- Fire Weapons: A Quick Tap anywhere will fire your primary weapons.
- Radar Zoom: Use Pinch-to-Zoom gestures on the screen to expand or contract the radar range.
Growth in Celestial Genesis is universal. Both the player and AI-controlled ships advance through 13 distinct Tiers as they accumulate score by destroying asteroids and rival vessels. Each tier represents a metamorphosis in design, shielding, and firepower.
| Tier | Designation | Shape | Primary Firepower | Special Features |
|---|---|---|---|---|
| 0 | Scout | Triangle | Single Pulse | Lightweight and versatile. |
| 1 | Vanguard | Square | Heavy Pulse | Increased bullet size and impact. |
| 2 | Guardian | Pentagon | Twin-Shot | Parallel firing for better coverage. |
| 3 | Warrior | Hexagon | Triple-Shot | Converging 3-bullet array. |
| 4 | Knight | Heptagon | Forked Array | Wide-angle spread for crowd control. |
| 5 | Paladin | Octagon | Penta-Spread | Massive forward coverage. |
| 6 | Sentinel | Nonagon | Heavy Battery | Combines high-damage pulses and spread. |
| 7 | Crusader | Decagon | Omni-Array | 7-bullet wide fan pattern. |
| 8 | Sphere | Circle | Gravity Piercer | Bullets ignore planet gravity (Hyper-Stable). |
| 9 | Celestial | Multi-Vertex | Nova Burst | High-density 7-bullet spread. |
| 10 | Titan | Heavy Hull | Siege Battery | 13-bullet overwhelming wall of fire. |
| 11 | Hyperion | Apex Form | Hyper-Pulse | 21-bullet saturation array; ultimate physical form. |
| 12 | Godship | Omega | Divine Ring | Fires an expanding cosmic shockwave that vaporizes everything. |
Note
Even AI "Enemy Squads" can climb these tiers if they are left unchecked in the asteroid belt for too long. A tier-11 AI Hyperion is one of the most dangerous threats in the game.
Navigation in Celestial Genesis isn't just about engines. Approaching a planet at a controlled speed allows the planet's gravity to capture you. Your ship will automatically enter a stable Orbital State, matching the planet's trajectory. This is the perfect way to defend your home world or take a breather during intense battles.
Every planet in the galaxy is unique. Using high-performance procedural generation, planets feature individual names, distinct ocean/landmass color palettes, and unique topography.
- Planet Birth: When giant asteroids collide and merge, they can promote into a brand-new planet if the stellar limit hasn't been reached.
- Planet Death: Planets are not invincible. Massive collisions with other planets or sustained enemy attacks can shatter them into "Hot Debris" fields, permanently altering the neighborhood.
Asteroids come in all sizes, from tiny pebbles to massive planet-sized behemoths.
- Splitting: Larger asteroids split into smaller fragments when hit, creating dangerous chain reactions.
- Hot Asteroids: Watch out for glowing, high-mass debris from recent planetary impacts—these carry extra momentum and can be lethal.
- Craters: Significant asteroids feature weathered surfaces with detailed craters, giving the belt a sense of scale and age.
The backdrop of your journey is just as dynamic as the entities within it. Every game session generates a completely unique starscape:
- Unique Galaxies: Each time you play, high-performance algorithms generate one-of-a-kind spiral galaxies with varying arm counts, rotation speeds, and color profiles.
- Dynamic Nebulas: Deep-space gas clouds and nebulas are procedurally painted with unique hues, providing a beautiful and distinct orientation guide for your exploration.
- Multi-layered Depth: The starfield is composed of multiple independent layers that move at different speeds (parallax), creating a profound sense of scale and three-dimensional depth.
Orbiting planets often house Stations. These massive structures act as defensive hubs, spawning ally ships and providing a tactical advantage. If a planet is destroyed, his station will eventually fall or be marooned in deep space.
The galaxy is not empty. Hostile factions deploy Combat Squads that roam the stars. They exhibit intelligent behavior, flanking your position and coordinating attacks. They are capable of targeting and destroying planets—including your Home World or those belonging to rival factions—making them a major threat to the solar system's stability.
Throughout your session, you will encounter various dynamic events:
- The Home World Defense: You start the game near your Home Planet. Protecting its integrity is vital; its loss marks a significant blow to the system's stability.
- Massive Chain Reactions: A single misplaced shot in a crowded asteroid cluster can trigger a cascade of collisions that clears—or creates—entire sectors of space in seconds.
- Interstellar Navigation: Use the multi-layered starfield and deep-space nebulas for orientation as you explore the boundaries of the world.
- Stellar Collisions: Witness rare, catastrophic events where two planets drift into each other, resulting in a spectacular explosion and the birth of a new asteroid belt.
Built with Vanilla JS, HTML5 Canvas, and a passion for retro-modern arcade excellence.
Celestial Genesis is built using a functional-oriented module pattern, leveraging modern ES6 imports to maintain a clean separation of concerns. The engine is designed for high-performance 2D rendering using a single-pass HTML5 Canvas approach.
- State Management (
core/state.js): A centralized, single-source-of-truth object that tracks everything from planetary positions to the player's firing rate. - The Game Loop (
core/game_engine.js): Orchestrates the update-then-draw cycle. It handles input processing, entity lifecycle management, and win/loss conditions. - Physics Engine (
systems/physics.js): A custom-built 2D physics system supporting momentum, circular collisions, and gravitational orbital capture. It utilizes a Spatial Hash Grid (optional/underlying patterns) to handle hundreds of asteroids at 60 FPS.
| Directory | Purpose | Key Files |
|---|---|---|
core/ |
Entry points and engine glue. | main.js, game_engine.js, state.js, config.js |
entities/ |
Factory functions and lifecycle logic. | entities.js (Planets/Asteroids), ai.js (Ships/Stations) |
systems/ |
Pure logic for interaction resolution. | physics.js, combat.js, scoring.js |
graphics/ |
Rendering and visual effects. | render.js, background.js, fx.js (Particles/Shocks) |
audio/ |
Web Audio API management. | audio.js |
utils/ |
Shared helpers and localization. | i18n.js (Multi-language), utils.js |
The project follows a "Zero Dependency" philosophy for the runtime, requiring no external frameworks or libraries to play.
- Runtime: None. Pure Vanilla JS and Canvas API.
- Translations: Managed via
i18n.js, supporting English, Spanish, Catalan, German, and more. - Assets: CSS-based procedural backgrounds and synthesized audio cues.
- Input:
events.jscaptures raw hardware interrupts and updatesState.keys. - Logic:
game_engine.jscallsupdatePhysics()andupdateAI(). - Resolution:
physics.jscalculates new positions and resolves collisions. - Rendering:
render.jsclears and draws the world based on the currentState.
- Entity Ghosting: Objects use
blinkNumandz-depthto prevent physics glitches during massive collisions. - Clipping & Culling: Landmasses are clipped to planetary radii, and off-screen entities (outside the
viewport) are skipped during draw calls to keep the frame rate stable.
