A Kid Is Building a Fighting Game for Steam

Michael Murr··8 min read

Last updated: July 2026

Keeping kids motivated to code through a hard project is not about rewards or streaks. It is about letting the goal be the child's, then breaking it into wins small enough to reach this week. Right now I have a student building his own fighting game in Unity, and his dream is to put it on Steam someday. That goal is huge, possibly out of reach, and it is the best thing that has happened to his coding.

This is an honest, in-progress story. The game is not finished. It may never reach Steam, and I am not going to pretend otherwise. But the way this kid is working, through genuinely hard problems he would have quit on a year ago, is the clearest example I have of why interest-first learning beats every motivation trick I know.

Key Takeaways

  • A child will push through hard coding when the goal is genuinely theirs, not one an adult assigned.
  • The motivation comes from the dream (a game on Steam), but the progress comes from breaking that dream into weekly, reachable wins.
  • Counterintuitively, an "impossible" goal can be healthier than an easy one, because it gives a kid a reason to tolerate the boring, hard middle parts.
  • Honesty matters: we do not promise the game will ship, and that honesty keeps the goal motivating instead of becoming a broken promise.
  • The tutor's job here is not to write the game, it is to keep the next step small enough that the kid never feels like quitting.

Table of Contents

The Student and His Fighting Game

One of my game-development students has been learning Unity with me for a while. He is a kid who loves fighting games, the genre, the characters, the timing of a well-landed combo. So when his mother bought him a fighting-game engine to build on, something clicked. He stopped being a kid doing coding exercises and became a kid building his fighting game.

The difference in him was immediate and obvious. Exercises he used to drag through, he now tears into, because every one of them is in service of the thing he actually wants. Hitboxes, animation states, input timing, a health bar that drains correctly: these are hard problems, and a year ago any one of them might have ended a session in frustration. Now they are just the next obstacle between him and his game.

This is what I mean by interest-first. We did not start with "let us learn collision detection." We started with "you want two characters to punch each other," and collision detection became the thing he needed to get there. The motivation was already in the room. My job was to channel it.

Why the Steam Dream Is the Engine

His dream is to get the game on Steam one day. Putting a game on Steam, an actual storefront where strangers could buy and play it, would be an enormous achievement for a kid, and honestly a huge one for us too.

I lean into that dream on purpose, because a big goal does something a small one cannot. It gives a kid a reason to sit through the boring middle. Every real project has a hard, unglamorous stretch where nothing looks finished and progress feels invisible. That stretch is where most kids quit. A dream the size of Steam is what carries him across it. When a feature is tedious, "this gets me closer to shipping" is a stronger reason to continue than any sticker chart I could offer.

I see this pattern across the kids I teach: the ones who stick with coding are almost always the ones chasing something they personally care about. The goal does not have to be realistic to be useful. It has to be theirs. This is the same principle I have written about in keeping kids interested in code through what they already love. A fighting game on Steam is just a particularly vivid version of it.

Breaking a Big Dream Into Weekly Wins

Here is the part that keeps the dream from crushing him. "Build a fighting game and put it on Steam" is paralyzing if you look at it all at once. So we never look at it all at once. Every week we work on one piece small enough to actually finish, and finishing it is the win.

A working punch animation is a win. Two characters that can damage each other is a win. A health bar that reaches zero and triggers a "K.O." is a win. None of these is "the game," but each one is real, visible progress he can see and feel proud of. Stacking those weekly wins is what slowly turns the impossible-sounding dream into an actual thing on the screen.

This is the tutor's real job on a project like this. Not to write the game for him, and not to dampen the Steam dream, but to keep the next step small enough that quitting never feels like the easier option. When a week's piece is the right size, the kid ends the session having beaten something, not having lost to it.

Big Goal to Weekly Steps

Here is roughly how the giant goal breaks down into pieces a kid can actually beat.

Big goalWeekly stepWhat it teachesWhy it is a win
A game on SteamGet one character moving with keyboard inputInput handling, the game loopHe can drive a character he made
Two fightersAdd a second character and basic attacksCollision, hitboxesThe core "fight" finally exists
It feels like a fightAdd health, damage, a K.O. stateGame state, logicA round can actually be won or lost
Looks like a real gameAnimations and a simple UIAnimation states, interfaceIt stops looking like a prototype
Other people can playPackage and test a playable buildBuilds, debugging at scaleSomeone other than him can play it

The table shows the trick: the Steam dream never changes, but on any given week he is only ever fighting one of these rows. That is what makes a hard, long project survivable for a kid.

Staying Honest About What Might Not Happen

I want to be straight about something, because it matters. The game is not finished, and I am not promising it will reach Steam. Shipping a real game is hard for adults, let alone a kid, and plenty of things could mean it never gets there.

That honesty is not a downer, it is part of why the goal keeps working. If I oversold it, promising him it will definitely be on Steam, I would be setting up a broken promise that could sour him on the whole thing the day reality got in the way. Instead we treat Steam as the dream we are aiming at, while the wins we actually celebrate are the weekly ones we can guarantee. He gets the pull of the big goal and the reliable satisfaction of real progress, without me lying to him about the finish line.

For a kid, learning that a huge goal is worth chasing even without a guarantee is itself one of the most valuable things this project teaches. That is a lesson that outlasts any one game. If you want a fuller look at building a child's resilience to challenge, I cover it in my guide on keeping kids motivated through the hard parts of coding.

What Parents Can Take From This

You do not need a fighting game or Unity to use this. The pattern works with any kid and any interest. Find the thing your child genuinely cares about, let the goal be theirs even if it sounds too ambitious, and then help them break it into pieces small enough to finish in a sitting.

The mistake I would warn against is shrinking the dream to make it "realistic." A kid chasing something big and slightly impossible will out-work a kid handed an easy, sensible assignment every time. The size of the dream is the fuel. Your job, and mine, is just to keep the next step small.

You can read more about anchoring coding to a child's interests in some of the related pieces below.


Frequently Asked Questions

How do you keep a kid motivated through a hard coding project? You let the goal be genuinely theirs, then break it into weekly steps small enough to actually finish. The big dream supplies the motivation to push through the boring middle, while the weekly wins supply the steady sense of progress. A tutor's main job is keeping each next step the right size so quitting never feels easier.

Should my kid try to make a video game? If they are interested in games, yes, because the interest does most of the motivational work for you. Games are full of hard, real problems, and a kid will tackle them when the game is one they actually want to build. The key is a goal they chose, not one you assigned.

Is it realistic for a kid to put a game on Steam? It is a long shot, and I do not promise it to my students. Shipping a real game is hard even for adults. But an ambitious goal like Steam is still enormously useful as a direction to aim at, as long as you are honest that it is a dream, not a guarantee.

Won't my child be crushed if the big goal does not work out? Not if you are honest from the start that it is a dream, not a promise, and you celebrate the weekly wins along the way. The real reward is everything the child learns building toward it, which they keep regardless of whether the game ships. Learning to chase a big goal without a guarantee is a lesson in itself.

What is the tutor's role in a project this big? Not to write the game, but to keep the next step small and reachable so the child keeps moving. I help break an overwhelming goal into pieces a kid can actually beat in a week. The child stays the builder, and the sense of ownership is exactly what keeps them going.


The Bottom Line

The strongest motivation I have ever seen in a young coder comes from a goal the child chose, no matter how ambitious, broken into wins small enough to reach this week. My student may or may not get his fighting game on Steam, and we are honest with him about that, but the way he is working through genuinely hard problems is proof that an interest-first, dream-sized goal beats every motivation trick out there.

Is there a big thing your child dreams of building? Book a free Discovery Call and we will figure out how to turn that dream into a real project, broken into steps your child can actually finish.

Enjoyed this article?

Your child can learn this and more with a dedicated 1-on-1 tutor.

Book a Free Discovery Call