Best Chrome Dino mods, hacks, and variations

Best Chrome Dino mods, hacks, and variations

The Chrome Dino game is open source — the Runner code lives inside the Chromium repository and has been extracted, forked, and reimagined dozens of times. Some forks are joke-tier. Some are surprisingly polished. Here’s the modding scene worth knowing about.

Open-source forks

wayou/t-rex-runner

The most-used extraction. Pulls the Runner code out of Chromium and wraps it in a minimal HTML/CSS/JS bundle that runs standalone. BSD-3 licensed. This is what we use on dinogame.gg — the actual game engine, with a small wrapper so it loads on a hosted page instead of an offline error.

If you want to host the game yourself, this is the fork to start with.

0x4D2/chromedino

Reimplementation in Python with pygame. Runs on the desktop as a native window rather than a browser tab. Useful for offline gameplay on machines that don’t have Chrome, and as a learning project — the code is small enough to read in an afternoon.

arnaucube/chrome-dino-reinforcement-learning

A reinforcement learning agent that learns to play the Dino game from pixels. Hooks into a browser via Selenium and trains a small neural network on screen captures. Not state-of-the-art ML, but a clean starter project if you want to mess with game-playing agents.

Visual mods

Custom sprite swaps

The Runner code reads its sprite sheet from a single <img id="offline-resources-2x"> element. Replace that PNG and you’ve reskinned the entire game in one file. Popular swaps:

  • Kumamon runner — the Japanese mascot replaces the T-Rex. The pixel grid maps surprisingly well.
  • Doge runner — Shiba Inu instead of T-Rex. Cacti become bones.
  • Dark mode — invert the palette so the game looks like the post-700-point night state permanently.
  • Mario edition — full SMB1 reskin including pipes and goombas in cactus positions.

None of these change gameplay — the sprite is purely cosmetic. Hitboxes are defined in the source by position, not by image.

Gameplay mods

Jetpack Dino

Adds a held-jump mechanic — keep space pressed and the T-Rex rises continuously. Cacti become irrelevant, but new flying obstacles fill the upper third of the screen. Easier than the original; the appeal is the new pattern recognition rather than the difficulty curve.

Multiplayer Dino

Several forks have built two-player versions where two T-Rexes share the same playfield with different keybinds. The fun is the kibitzing, not the competition — both players see the same obstacles, but inputs are asynchronous.

Speedrunner mode

A timing overlay added to the standard game. Shows current speed coefficient, distance to next pterodactyl, and time-to-rollover estimate. Made for high-score attempts. Doesn’t change physics — only UI.

AI bots

The Dino game is small enough to be a good test case for game-playing AI. Three approaches you’ll see online:

  • Genetic algorithms — a population of bots tries random jump strategies; the survivors breed. After a few generations, the average bot is decent. Almost never reaches human-record scores.
  • Reinforcement learning — DQN or similar, trained on screen pixels. Slow to train, but the resulting agents play surprisingly cleanly through the speed wall.
  • Rule-based vision — read the canvas, find the nearest obstacle, jump at fixed distance. Not “AI” in any interesting sense, but it works and it’s a 100-line script.

If you’re benchmarking these, remember: scores past the speed wall are dominated by pterodactyl-altitude randomness. Even a perfect bot can be killed by a low-altitude spawn.

Browser extensions

Several browser extensions claim to “always show the Dino game on your new tab.” They work, but quality varies wildly. The good ones are open-source, locally rendered, and don’t request unnecessary permissions. The bad ones inject ads or harvest browsing data. Check the source before installing.

Honestly, the simpler solution is to bookmark dinogame.gg as your new-tab page. One bookmark, no permissions, no extension to keep updated.

Building your own mod

If you want to start: fork wayou/t-rex-runner on GitHub, then look at index.js. Useful entry points:

  • Runner.config — gravity, speed curve, gap coefficient, max obstacle duplication. Edit numbers, redeploy, see new behaviour.
  • Runner.spriteDefinition — coordinates into the sprite sheet. Change these to swap which part of the PNG is rendered for the dino, cacti, pterodactyl.
  • Trex.prototype.startJump — jump physics. Change this.jumpVelocity for higher / lower jumps.
  • Obstacle constructor — controls how cacti and pterodactyls spawn. Add a new obstacle type here.

For more on the underlying mechanics that mods are tweaking, see how the game was originally built and what hidden features were already in the engine.

More games to play (and tweak)

Or browse all 50+ games.

Related reading