Game Builder Garage is Nintendo’s next logical step after Mario Maker. Polygon sat down with the Japanese company for a hands-off preview of the its latest game, which aims to turn everyone into a game developer.
But this game isn’t just for kids. Game Builder Garage is an accessible tool for future developers and game players of all ages. Nintendo’s game isn’t just about teaching everyone to program; it teaches players to think like game developers.
What is Game Builder Garage
Game Builder Garage is a new “maker game” from Nintendo. Like Mario Maker, it inspires players to take existing game ideas and twist them into something new. And like Media Molecule’s Dreams, players are able to build their own game once they master the programming language.
Game Builder Garage uses a visual programming language, which is common for coding tools made for kids, like Scratch. Instead of teaching the player to write actual code, visual programming allows developers — or players, in this case — to place nodes in a program that affect the game they’re building. Simple equations like “if X, do Y” can grow into controls like “if I press A, my character jumps,” or “if my character collides with a wall, my character takes 10 damage.”
This visual programming language is infected with Nintendo’s cutesy vibes. Nodes aren’t simply machines designed to do your bidding, they’re characters with their own personalities. For example, one node counts numbers generated by other nodes. While many of the other nodes were pleasant or soft-spoken, the counter node spoke in all capital letters, signaling its excitement while it told jokes about integers and numbers. It’s the kind of touch that makes a difference when you’re trying to keep a kid’s attention.
But cute characters and bright colors can only take you so far. Game Builder Garage needs players to fail in order to grasp the complexities of game development, but finding the balance between frustration and productive puzzle-solving can be tough. The design of Game Builder Garage allows you to fail gracefully, with backup and support from all your new node friends.
Making failure cute
Our demo started in Alien Blaster, the third of Game Builder Garage’s seven preset games. Each of Game Builder Garage’s presets comes with a host of tutorials, designed to teach players how to make platformers, racing games, escape rooms, or in Alien Blaster’s case, a side-scrolling shooter similar to Gradius or Defender.
The demo we saw for Alien Blaster started a few steps into its tutorial; the controls were already hooked up, and there were a few preset enemies and obstacles on screen. To proceed, Game Builder Garage prompted the player to build another screen filled with aliens and obstacles. Our Nintendo representative added a few foes, then created a few different-sized blocks and dropped them in the play space. Everything here seemed right out of Mario Maker, dragging and dropping pre-built enemies and objects to change their types and sizes.
Once the program was set, we dropped back into the game to check out our changes. But we couldn’t see all our new additions. The game had neglected to tell us we needed to change the game’s camera, called the game screen. It was resting comfortably over where we started, but it wouldn’t extend to the right, where our new additions were waiting.
This failure may seem frustrating, but it’s all by design. The characters joke and laugh about this, making it clear to the player that this is a common — and in this case, intentional — mistake. We hopped back into the code and increased the screen’s height and width. This technically worked, but the game was so zoomed out that we could hardly play it. So our representative decided to go for a classic side-scroller design.
That’s when Game Builder Garage showed how complex game development can be. First, the Nintendo representative built a machine that could connect to the game screen’s X integer, effectively moving it to the right as we increased the value of X. We built a constant node that just represented the number one, and a counter node that counted up once we connected it to the constant. Then we connected the counter to the X integer to move the game screen. When we loaded into the game, the screen launched forward so quickly that we barely even saw our new additions. Another intentional mistake.
Games are complex machines that do exactly what we tell them to. Because we hooked up a constant to a counter, the counter started counting up in integers of one. The number quickly became so large that it instantly pushed the game screen out of bounds. Originally, I thought the way to solve this issue was to replace the constant with a smaller number, causing the counter to count slower and move the screen at a more manageable pace. The actual answer was, of course, far more complex.
To solve the issue of the super-speed screen, we had to add yet another node. We detached the counter node from the game screen and sandwiched a map node between the two. The map node squished our value down into a more manageable number. After a few quick settings from our Nintendo representative, we reattached the new machine and the camera started scrolling at a much more manageable speed.
Failure is the ultimate teacher, and Game Builder Garage provides an easy space for kids or adults to falter while making games. But like a good parent, it picks you up, dusts you off, and encourages a new solution. That’s because Game Builder Garage is less about the result and more about the mentality.
I spoke to the Nintendo representative about the endless possibilities in Game Builder Garage. How would you build a game like Super Mario 3, where there’s a platformer and map screen component? What about inventories? Progressive upgrades like in Super Metroid? If someone were so inclined, could they create the entire suite of Super Nintendo Games in Game Builder Garage? As I asked these questions, the Nintendo rep started mapping out solutions in their head and then aloud. They were problem-solving as we were talking.
They came up with some creative solutions and gave me a theoretical “yes” to all of my questions. But that’s on the high end of play. The real question of Game Builder Garage isn’t “who is this for?” or “what can you do?” It’s “how do you make a game?”
Game Builder Garage is about changing the player’s perception and encouraging them to get into a game designer headspace. Whether a kid playing Game Builder Garage wants to be a developer or just loves playing games, this new tool will help them understand how games work; players can instantly swap between a program they’re playing and a look at the machines underneath. When players jump into a side-scroller like Alien Attack, they’ll understand not only why their character moves when they hit the left stick, but how the game screen itself is constructed.
Our representative told us a story about how they had downloaded another developer’s spin on Alien Attack, which was more like Asteroids. They took us into that person’s game so we could see for ourselves. As our representative played, enemies flew in at a random pattern. Our representative told us they didn’t originally know how the developer made the enemies generate at random in the game, so they “popped the hood,” so to speak, to take a look. There were cannons all around the program, firing from different angles, and a random number generator machine off to the side, sending signals to random cannons, telling them to fire.
It was an impressive machine, a lesson in developing randomness that likely took hours to learn and implement. But it’s something we were able to understand in minutes, because we were curious about someone else’s accomplishments. That’s the power of Game Builder Garage. A sense of curiosity can take players from just enjoying games to understanding the game’s inner workings.
I have no doubt Game Builder Garage will influence future generations of game builders. But more than that, it’ll offer players a peek into just how complex some of their favorite games actually are.