We wanted to build a racing game that didn't feel like another typical browser game controlled by a keyboard. The idea behind MouseRush came from a simple question: Can a mouse actually feel like a game controller?

That led us to design the entire driving experience around one mouse — using clicks for acceleration and braking and the scroll wheel for steering. We wanted the controls themselves to become part of the challenge.

🛠️ How We Built It

MouseRush is a fast-paced, top-down endless traffic-dodging game built primarily with HTML5 Canvas and JavaScript. The game runs completely on the client side, with no backend or database.

We implemented:

🖱️ Mouse-based controller system with smooth steering 🎮 WASD/Arrow-key controls as an alternative 📱 Mobile tilt steering with touch fallback 🚗 Five-lane procedural traffic generation 🔥 Near-miss combos and score multipliers 👻 Ghost of the player's best run 🪞 Mirror Mode with reversed steering 🚨 Rear-traffic warnings 🪙 Coins, Nitro and Coin Cannon 🌧️ Weather and road hazards affecting gameplay 🌙 Changing environments and road conditions 💾 Local high-score persistence 🔊 Procedural audio using Web Audio API

We focused on keeping the game lightweight and browser-friendly rather than relying on a heavy game engine.

🧠 What We Learned

The biggest lesson was that game feel matters as much as functionality. A technically working steering system isn't enough — acceleration, braking, movement, feedback and visual effects all need to feel responsive.

We also learned how to work with:

Canvas-based game loops and delta-time physics Procedural traffic spawning Collision detection Device orientation APIs Browser mouse-wheel and context-menu handling LocalStorage for persistent game data Procedural Web Audio Performance optimization for browser games 🚧 Challenges

One of our biggest challenges was making the mouse actually feel like a controller. Scroll-wheel steering is unusual, so it had to be responsive without becoming too sensitive.

We also had to prevent normal browser behavior from interfering with gameplay — especially right-click context menus and page scrolling.

Another challenge was creating the illusion of forward motion in a 2D top-down environment. We improved this using moving scenery, perspective cues, changing lane layouts and speed-dependent visual effects.

Finally, features such as Mirror Mode, rain and oil had to add difficulty without making the game feel unfair. We kept these mechanics lightweight and carefully integrated them into the existing game systems.

🎯 What We Wanted to Achieve

Our goal wasn't simply to make another traffic-racing game. We wanted to create a game where the controller itself becomes part of the gameplay.

MouseRush — Your mouse, reimagined as a controller.

The result is a game that is simple to understand, unusual to play, and designed to make players think:

“Let me try one more run.”

Built With

Share this project:

Updates

Submission history