Much of Nintendo Labo is bound by a strict ruleset. The Toy-Cons, Labo’s cardboard peripherals, must be built as specified to work properly with the game’s included apps. Once you have built them all, though, the experience expands greatly thanks to Toy-Con Garage, an in-game programming toolset. Available in both the Variety and Robot Kits, Toy-Con Garage lets you create new toys and gadgets by setting simple, mechanical reactions to make your Switch, Joy-Cons, and Toy-Cons work in new ways. Here’s how to use the Toy-Con Garage.
Where is it?
The Toy-Con Garage is kind of a secret. The game front-loads its “Make” and “Play” sections to get players building Toy-Cons before trying anything else. You have to work your way through the instructions to construct at least one of the following Toy-Cons: Fishing rod, piano, motorbike, house, or robot, if you have the Robot Kit. Afterward, head over to the Discover section from the main menu. Here you can click on completed Toy-Cons to learn more about how they work. Once you watch one of them, a new icon, initially dubbed “secret lab,” appears at the bottom of the Discover page.
Click on that and voila, you have gained entry into the Toy-Con Garage.
The Toy-Con Garage uses “node-based programming,” a flowchart-like visual language that lets users create simple, input-based tools (or toys) with no coding experience. Labo explains the basic principals of how the system works in a brief tutorial when you first enter the garage. After that, it’s up to you to create your own commands.
From the start, you will notice the screen is very plain. It’s black and white, with small red and blue connector tabs pointing out from the side of each box. Blue connectors belong to input boxes. Red connectors go on output boxes. If you connect an input to an output by drawing a line on the touchscreen, an event is created.
For instance, if your input box says “touch” and your output box says “vibrate” with a 1 and L in the upper lefthand corner, when you touch the input box, the left Joy-Con will vibrate once.
At first glance, it’s not a very elaborate system, but you can make it as complex as you want by modifying inputs, outputs, and introducing middle events that serve as segues between the two.
There are nine types of inputs, many of which can be further modified to create very specific controls schemes. The input is what you have to do to tell the console to execute the output.
- If Touched: Touch the input box to initiate the output command.
- If Shaken: Can either be assigned to left or right Joy-Con.
- If Button is Pressed: Can be assigned to a single button or as many buttons as you like.
- If a Control Stick is Moved: Assigned to either left or right Joy-Con. Can be modified to either up, down, left, right, or any direction.
- If the Joy-Con is Face-Up: Face-Up means any of the six different positions the Joy-Con can be held or rest.
- Console: A combination of If Shaken and Face-Up but using the Switch console instead.
- If an IR Marker is Seen: The IR marker is located on the bottom of the right Joy-Con. It’s the infrared camera. If the console detects the IR through movement, the output is executed.
- Toy-Con: Pertaining to the fishing rod, house, motorbike, and piano. Let’s you execute commands with Toy-Con movement. Alternatively, the robot can be used for this input with the Robot Kit. Sadly, you can’t combine Robot Kit movements with the Variety Kit.
You can also connect two inputs to an output or vice versa, so when you execute an input such as touching the screen, you can make both the screen light up and tell a Joy-Con to vibrate. If an output connects to two inputs, it acts as an OR statement, which means that either input will execute the output.
When you want to change options such as button inputs or Face-Up commands, click on the setting wheel in the lower lefthand corner of the input box. This is where you can further customize your inputs to your liking.
You can also change the size of the input box by dragging the arrow in the lower righthand corner. This is primarily used for touchscreen controls, but if you create a sizable project with many different commands, you may want to make the boxes smaller to avoid cluttering your screen. You can also zoom in and out by pinching and pulling the screen with two fingers.
The output is what happens when the input is committed. There are four outputs:
- Emit IR Light: This one tells the right Joy-Con camera to light up its infrared sensor. You can have up to two Joy-Cons with infrared sensors connected at once.
- Light Up Screen: The output box lights up when the input is executed.
- Make Sound: Music notes play when the input is executed.
- Vibrate: Joy-Con vibrates when input is executed.
Like inputs, you can modify outputs by pressing the setting wheel in the lower righthand corner of the box. For instance, you can modify the “make sound” output from its default piano to sound like a guitar, singing cats, or oddly tuned men and women. As with inputs, you can change the size of the output box. This comes in handy when making different sized light-up nodes.
You can further modify commands by inserting middle blocks between inputs and outputs. There are five middle options, not including the “comments” tool, which lets you write notes, but has no mechanical effect on your creation.
- Counter: The counter keeps track of the number of times an input is executed. You have to attach three inputs to this node, one that makes the counter go up, one that makes it go down, and one that sets it back to zero. As you execute input commands, the output will gradually appear on screen as the counter goes up. For instance, a light-up output will gradually turn the node white as the counter goes up.
- Timer: Adding a timer puts any output on a delay, anywhere from one to 10 seconds.
- NOT: Anything that is not the input will cause the output. So if you set the screen to not light up when you touch it, any time you are not touching it the screen will be lit.
- AND: Combines two inputs for a single output. Using an And box makes it so you need to use both inputs to trigger an output.
- Bullseye: This one’s a little tricky. The bullseye acts more like one half of a two-part input, not a “middle.” The bullseye, when used in conjunction with an IR Marker, allows you to create a target on your Switch screen, which you can trigger with the IR camera on the right Joy-Con. To work, the bullseye must be connected to an IR Marker, and the marker must be placed over the Bullseye as much as possible.
Analog, digital, and range
You will notice that numerous Inputs have analog or digital settings that can be switched through the settings wheel. By default, these are set to “analog.” Analog is more like a slider. For example, if you shake the Joy-Con gently, the output will be less pronounced. If you shake it harshly, the output will be stronger (your screen lights up faster, Joy-Con rumbles harder, etc.)
Digital outputs are more simplistic. No matter how hard you shake the Joy-Con, the output will always be the same.
The range bar further modifies an output’s conditions. Located under the Digital/Analog settings, the bar features a pair of sliders on a scale from 0.00 to 1.00. Moving the left slider increases or decreases the minimum power for an analog output. The right slider starts on the far right of the range bar and can be used to decrease the output’s maximum power. On a digital output, the device will default to the maximum output every time.
Playing, naming, and saving your file
If you want to test your project at any point, simply press the play button on the top of the screen. To go back to edit mode, press the play button again.
Your progress automatically saves when you exit the garage, but if you want to start a new project make sure you save your current one. Click the menu icon in the upper lefthand corner to name and save your project. You can have up to eight projects saved at once.
There is really no wrong way to create a Nintendo Labo app of your own once you understand the basics. Check out these eight playful Labo creations, most of which were made using Toy-Con Garage.