Canabalt

Seele01-Flash
By
Canabalt is the original endless running game that started it all. Jump across rooftops at increasingly crazy speeds in this simple yet addictive stick figure runner that's easy to play but hard to master.

Prompt

MODEL: Seele01-Flash
Please use Three.js to generate a **mobile-first game** with the theme "**Canabalt (Infinite Urban Runner)**". Please read the following detailed game design requirements first, and then generate the code accordingly: ### 1. Assets & Environment * **Visual Style**: 2.5D Side-scrolling aesthetic using `OrthographicCamera`. The color palette must be strictly **monochromatic/grayscale** (shades of slate grey, white, and black) to mimic the original pixel-art noir style. * **Player Character**: A low-poly, suited character (stick-figure proportions) with auto-running animation. Key animations required: Sprint, Jump, Stumble (when hitting obstacles), and Fall. * **Environment (Procedural Generation)**: * **Foreground**: Rooftops of varying heights and lengths generated endlessly. Include visual details like antennas and vents. * **Obstacles**: Crates (slows player), Glass Windows (breakable), and Gaps (death pits). * **Background (Parallax)**: Multiple layers of distant cityscape silhouettes (skyscrapers, construction cranes) that move slower than the foreground to create depth. * **Particles**: Crucial "Doves" effect—white bird particles that scatter/fly away as the player approaches. Debris particles when crashing through windows or landing hard. * **Mobile Optimization**: Use `InstancedMesh` for repeating building blocks and background elements to maintain 60 FPS on mobile devices. Use simple `MeshBasicMaterial` or flat shading to reduce GPU load. ### 2. Audio Requirements * **BGM**: A high-tempo, driving **Industrial/Techno** track that loops seamlessly. It should convey urgency and speed (similar to the original track "RUN!"). * **Sound Effects (SFX)**: * **Locomotion**: Heavy, rhythmic footsteps on concrete. * **Interaction**: "Whoosh" sound for jumping. * **Collision**: Shattering glass sound (high pitch) for windows; heavy thud/crunch for tripping on boxes. * **Environment**: Flapping wings (for doves), wind noise increasing with speed. ### 3. Gameplay Loop * **Core Mechanic**: The character runs automatically to the right. The speed linearly increases over time/distance, making the game progressively harder. * **Controls**: * **Tap/Click**: Jump. * **Hold**: Jump Higher (variable jump height based on press duration). * **Obstacles & Physics**: * **Gaps**: Falling results in immediate "Game Over" and a restart screen. * **Crates/Furniture**: Hitting them doesn't kill the player but triggers a "Stumble" animation and reduces running speed temporarily. * **Falling Debris**: Occasionally, building segments collapse ahead of the player (indicated by screen shake). * **Scoring**: Score is based on distance traveled (meters). High score persists locally (`localStorage`). ### 4. Mobile Controls & Interaction * **Input Scheme**: **One-Touch Gameplay**. The entire screen functions as the "Jump" button. * **Orientation**: Force **Landscape Mode** to maximize the view of upcoming obstacles and platforming routes. * **Feedback**: * **Visual**: Camera shake (screen shake) upon landing from high jumps or crashing through windows. * **Haptic**: Trigger `navigator.vibrate(50)` when crashing through obstacles or landing hard. * **UI Layout**: Minimalist HUD. Current score displayed in the top-right corner. "Tap to Start" overlay before the run begins. UI buttons must have a hit area of at least 44x44px. Do not ask for clarification. Do not request confirmation. Directly execute the generation task based on the given instructions.

Game Introduction

About the Game

Canabalt is the legendary endless running game that defined an entire genre. With its iconic stick figure character and minimalist design, this game delivers pure, adrenaline-pumping action as you leap across rooftops in a crumbling city. The premise is deceptively simple: you run automatically, and your only job is to jump at the right moments. But as the speed increases to crazy levels, every split-second decision becomes crucial.

Rated 4.0/5 by players, Canabalt has captivated millions with its perfect balance of simplicity and challenge. The game's beauty lies in its "easy to learn, impossible to master" philosophy - anyone can start playing immediately, but achieving high scores requires skill, timing, and nerves of steel.

Core Features

The Ultimate One-Button Challenge

Canabalt revolutionized gaming with its elegant one-button control scheme. While the concept sounds simple, the execution demands perfect timing and quick reflexes as the pace becomes relentlessly fast.

Infinite Replayability

Every run is different thanks to the procedurally generated building layouts. No two games are exactly alike, ensuring endless replay value as you chase your personal best score.

Iconic Minimalist Design

The game's stark black and white aesthetic creates a hauntingly beautiful atmosphere. The stick figure protagonist and geometric cityscape have become instantly recognizable symbols in gaming culture.

Progressive Difficulty

Starting at a manageable pace, Canabalt gradually increases speed until you're flying across rooftops at breakneck velocity. The escalating intensity keeps every run exciting and challenging.

Game Mechanics

Canabalt's genius lies in its physics-based jumping system. Your character automatically runs forward, but you control when and how high to jump. Landing on different surfaces affects your momentum - glass windows slow you down while solid ground maintains your speed. Boxes can be crashed through, adding a strategic element to your path choices.

The game features no power-ups, no weapons, and no complex mechanics - just pure skill-based jumping across an endless urban landscape. This purity of design has made it a timeless classic that remains as engaging today as when it first launched.

Operation Guide

Controls couldn't be simpler:

  • X Key, C Key, or Spacebar : Jump
  • Hold longer : Jump higher and farther
  • Quick tap : Short hop for precise landings

The key to success is learning to vary your jump height and timing. Short hops help you land on nearby platforms, while long jumps carry you over larger gaps. Master the physics, and you'll be soaring across the cityscape like a parkour expert.

Why Play This Game

Canabalt offers something increasingly rare in modern gaming: pure, undiluted gameplay. There are no complex controls to master, no storylines to follow, and no in-app purchases to worry about. It's just you, your reflexes, and an endless city stretching into the distance.

The game is perfect for both quick gaming sessions and extended play. Whether you have 30 seconds or 30 minutes, Canabalt delivers instant gratification with that "just one more try" addictive quality that keeps players coming back.

Best of all, it's completely free to play in your browser - no downloads, no installations, no barriers between you and the action. The game runs smoothly on all devices, making it the perfect choice for gamers on any platform.

Frequently Asked Questions (FAQ)