(Play it at https://peteralcock.com/paleofury.html)
I was eleven years old the first time I tried to build this game.
I don’t remember exactly what set it off. Probably some combination of Mortal Kombat at a friend’s house and a dinosaur phase I never fully grew out of. But I remember the idea landing fully formed, the way big dumb ideas do when you’re a kid and haven’t yet learned to talk yourself out of things. A fighting game, but everyone’s prehistoric. Cavemen with clubs. Velociraptors that fight like ninjas. A gorilla you could actually pick. And at the top of it, looming over the whole roster, a T. rex boss you weren’t supposed to be able to beat.
I was so sure of this idea that I did the only thing an eleven year old with no plan can do. I asked my parents to buy me a C++ book.
I want to be honest about how little this accomplished. I did not learn C++. I learned that a semicolon goes at the end of a line, and I learned that “Hello, World” is apparently the first thing every programmer in history has to type before they’re allowed to do anything else, and then I hit a wall made of pointers and header files and Visual Studio project settings I didn’t have the vocabulary to even ask questions about. There was no forum I knew to search. There was no tutorial calibrated to “kid who wants to skip straight to boss fights.” The book sat on my shelf being a monument to the gap between wanting to make something and knowing how, and eventually the dinosaur fighting game quietly stopped being a project and became one of those someday ideas. The kind you mention at parties as a fun fact about yourself and never actually revisit.
That gap, between the idea and the execution, is probably the single most common reason creative projects die. Not lack of imagination. Lack of the thousand boring technical skills standing between you and the thing in your head.
The gap closes
I’m not going to pretend the last twenty five years didn’t happen, or that I forgot about this idea and rediscovered it in some poetic way. It just sat there, occasionally resurfacing when I saw a good dinosaur documentary or played a fighting game with a particularly good roster screen. What changed is that the cost of closing that gap collapsed.
I built the whole thing, start to finish, playable in a browser, no installs, no build pipeline for the person playing it, for about twenty dollars in AI tokens, working with Claude. Twenty five years ago that number would have been “an entire computer science degree, or nothing.” Now it’s less than a used copy of the C++ book I bought as a kid.
I want to walk through what actually got built, because I think the interesting part isn’t “AI made a game.” It’s what it took to make this specific game. The actual design decisions, the actual engineering, because none of that went away just because the barrier to entry did.
What “prehistoric Mortal Kombat” actually requires
The one line pitch is easy. Making it hold together as a game is not, and this is where the eleven year old version of the idea and the real version diverge.
The roster had to make weight class sense. My original mental image had a T. rex just casually fighting a caveman, because I was eleven and hadn’t thought about it for more than four seconds. But if you actually sit with the idea, a T. rex versus a human isn’t a fight, it’s a paragraph in a nature documentary. So the roster got split by scale. Cavemen, velociraptors, and a sabertooth cat all sit in roughly the same size and speed class and can meaningfully fight each other. A gorilla and a terror bird slot in as heavier and lighter variants of that same tier. The T. rex sits alone, above everyone, as the final boss. Not a starter pick, something you unlock only after you’ve beaten the ladder. Getting that hierarchy right mattered more to the game feeling right than almost anything else I built.
Every character needed a genuinely different body. A fighting game roster is boring if everyone is the same skeleton in a different skin. So instead of one humanoid rig with reskins, I ended up with five distinct anatomies built from scratch. Bipedal humans, a gorilla frame with a heavier low center of gravity, raptors with tails and horizontal spines, a low quadruped cat build, a bird with wings that actually flap during jumps, and the oversized Rex rig built on its own proportions entirely. Each one needed its own procedural animation logic. A raptor’s tail has to counterbalance during a kick the way a human’s arms do, a bird’s wings need to drive the airborne pose instead of arms, a quadruped’s four legs need a completely different walk cycle than a biped’s two. None of that is copy paste. Every rig is its own small animation system.
The world had to sell “prehistoric,” not just state it. Street Fighter and Mortal Kombat live and die on their backgrounds, crowds reacting, environments that feel alive around the fight. So the four stages aren’t static art, they’re small simulations. A jungle canopy with eyes that blink and peer out at random intervals. An ice age tundra with mammoths actually walking a patrol path in the background and cavemen huddled at a fire that flickers with real light. A Jurassic valley with an active volcano breathing smoke and pterosaurs looping overhead. A firelit cave with hand drawn cave paintings on the walls and drummers keeping time. The crowd figures even get more excited, more arm waving, more jumping, when a fight is going well, tied to the same excitement variable that drives camera shake on a big hit.
It needed the moves that make a fighting game a fighting game. Not just punch and kick. Blocking with proper chip damage, hitstun, knockback that varies by move weight, combo detection and scoring, hitstop on impact so hits actually feel like they land, screen shake, a slow motion K.O. moment. Every character also got a signature special move that had to be hand designed around what that creature would actually do. A caveman throws a boulder, a raptor pounces, a dilophosaur spits venom, the gorilla slams the ground in a shockwave, the sabertooth lunges with its jaw, the terror bird lets out a sonic screech, and the Rex, appropriately, just stomps the entire arena.
None of this is exotic. This is the standard grammar of the genre. But it’s a lot of standard grammar, and it’s exactly the kind of thing that eleven year old me had no path toward learning fast enough to stay excited about the project.
Actually building it
The engineering choice underneath all of this was WebGL via Three.js, rendered at a deliberately low internal resolution and upscaled with nearest neighbor filtering. That’s the trick that gets you genuine chunky pixel, Sega Genesis era readability instead of the smooth shaded “3D blobs” look that so much amateur 3D falls into by default. Every character got a toon shaded material and a rendered outline pass so the sprites read cleanly against the busy backgrounds, the way 16 bit fighters always separated foreground from background at a glance.
Working with Claude on this wasn’t a matter of typing “make me a dinosaur fighting game” and getting something finished. It was closer to actual game development, just compressed. I’d describe what I wanted (arrow keys weren’t registering during character select, the sprites needed way more surface detail, two player mode needed to be ripped out entirely and replaced with proper single player systems), and we’d iterate against a real, running build. Difficulty tiers. A survival mode with escalating waves and a boss fight every fourth round. Score tracking with session bests. The kind of feature list that, as a kid, would have taken me years to work up the nerve to even attempt, because each one felt like its own multi week research project into a topic I didn’t have a name for yet.
The honest version of what changed between 1999 me and now isn’t that AI writes perfect code on the first try. It’s that the distance between having an idea and being able to test whether the idea works went from “learn a systems programming language over several years” to “describe it and see it running in the same conversation.” That distance is where almost every unfinished creative project in the world dies. Closing it doesn’t remove the craft. The weight classes, the animation rigs, the special move design all still had to be decided, and decided well, by a person who cared about getting them right. It just means the decisions get to matter more than the yak shaving required to test them.
The kid with the C++ book
I don’t think I’m owed anything for having had this idea at eleven and not being able to build it. That’s just what being eleven is. But there’s something satisfying about closing the loop, about the same dumb good idea surviving a quarter century of “someday” and finally becoming a thing you can actually open in a browser tab and play.
If you had a version of this, a project that was too big for the tools you had access to when you first wanted to build it, it might be worth going back to it. The tools changed a lot more than the idea needed to.
The game itself is called Paleo Fury. Cavemen, raptors, a silverback, a sabertooth, a terror bird, and a T. rex who is absolutely going to end your run the first time you meet him. Exactly the roster an eleven year old would have drawn on the inside cover of that C++ book, if he’d had any idea what he was looking at.

Leave a Reply