Inspiration

Trying the Gamepad API on Reddit; Chrome's dino game.

What it does

Dinodrift is a side-scrolling "daily runner" where players compete on a globally synchronised, procedurally generated track. Everyone gets the same seed each day, ensuring a fair fight for the top of the leaderboard. Each day introduces a fresh global physics modifier—such as low gravity, wind drift, or high-speed ramps—transforming the gameplay theme and strategy every 24 hours. It features high-speed drifting, cacti-dodging, and bird-evasion

How we built it

Built on Reddit's Devvit platform using React and Vite for a performant frontend. The backend uses Hono to manage daily seeds and leaderboards via Redis. The project features a unified input system for Gamepad, Touch, and Keyboard, along with synthesised Web Audio

Challenges we ran into

  • Safari's strict audio policies that prevents audio play on first interaction.
  • Normalising Gamepad trigger pressure, joystick movement direction and haptic feedback across Chrome and Safari
  • Haptic feedback doesn't work in Chrome, only on Safari (strange)

Accomplishments that we're proud of

Building with the Gamepad API

Note

  • Due to MacOS policy, during screen record of the video demo submission, gameplay audio wasn't captured, and there were isssues using other softwares
  • Gamepad haptic feedback works only on Safari

Built With

Share this project:

Updates