Sitemap
Maxzhang

Maxzhang

How a Kid created a fun game with Claude-ai

3 min readNov 1, 2026

--

Press enter or click to view image in full size

The project started with a Scratch ping-pong game Max had already built, where the ball just glided to random spots. His dad said to make it better, so Max asked for real physics: if the paddle is moving right when it hits the ball, the ball should go right too. Claude rebuilt the ball’s movement around velocity and measured the paddle’s speed each frame, so the paddle’s motion carries over into the ball.

From there Max kept adding features, one request at a time:

  • A bot opponent that’s beatable. It has a speed limit and makes random aiming mistakes, and it gets stronger with the difficulty setting.
  • A power shot. Press space at the right moment and the ball flies faster. Max then asked for it to be stronger, go in a straight line, and be aimed by the paddle.
  • Difficulty from 1 to 10, using formulas instead of separate code for each level.

Max also uploaded a later version of his file and asked Claude to explain how every sprite worked.

Part 2: Building “Ice Breaker” from scratch

Next, Max wanted to recreate the Ice Breaker mini game from My Talking Tom 2. Claude couldn’t watch the video he linked, so it asked how the game worked. Max described it: aim and shoot balls from the bottom, at numbered ice blocks that need several hits and move down each turn. Before any code was written, Claude explained the plan: the board is stored as a list, and the blocks on screen only display it.

Get Maxzhang’s stories in your inbox

Join Medium for free to get updates from this writer.

Max set the requirements: numbers on every block (he insisted, saying without them “it’s going to be bad”), square and triangle blocks, +1 ball rings to collect, 3 balls at the start, and numbers that grow as the game goes on. Claude built the game, and then Max play tested it and reported problems:

  • Blurry graphics. Scratch’s pen tool draws at low resolution, so the board was rebuilt using sprites.
  • An aim line that pointed slightly off and didn’t predict bounces. It was replaced with dots that run the same physics as the real balls, so the preview shows the exact path.
  • Scratch’s 300-clone limit. Balls past the limit now wait in a line and launch as others land.
  • Lag at about 20 balls. Claude optimized the physics.
  • Worse lag even at 3 balls, which Max reported with “bruh.” Claude’s optimization had accidentally made balls move only every other frame. Once that was fixed, they moved at full speed again.

Max kept designing new mechanics:

  • +1 ball for every 2 blocks broken
  • A >> button to choose 1x, 2x, or 3x speed, instead of automatic speed-up
  • An upgrade system: every 10 blocks broken, the game pauses and offers a choice of three powers for the next round:
  • Bomb: blows up a 3×3 area
  • Fire: burns blocks over time, faster with the speed button
  • Lightning: clears a whole row (first a column, until Max asked for left-and-right)

Claude also made a thumbnail image and explained how the full game’s code works.

Who did what

Max was the designer, tester, and director. He decided what the games should do, playtested each version, spotted when things were blurry, laggy, or off, and pushed for changes when something wasn’t right. Claude wrote the code and the artwork, explained how each part worked, and fixed bugs, including ones it had caused itself. Many of the best features, like the numbers, the speed button, and the upgrades, came from Max’s ideas.

Here’s a note from Max about using ai:

Always explain everything thoughtfully and report every bug you see. Always let the ai explain what its going to do first, then let it do it. Make sure to go through your ideas step by step, prompt by prompt. When loading the new version of the game, make a copy of the old version first, then replace the copy with the new version. Because sometimes, the updated version is worse, so you don't want to lose all your progress.

by the way here’s the game: Ice Breaker on Scratch

--

--