Our Robots Have A.I.!

Our Robots Have A.I.!

Hello, RoboEngineers!

Today, we’re excited to share our first glimpse at a long-anticipated feature for RoboCo. Robot programming is underway and our robots have A.I.!

What is Robot Programming and Why Is It So Cool?

In simple terms, robot programming means creating a set of instructions for a robot to carry out. These instructions might be created with written code or with a visual interface.

To some extent, RoboCo has already had a small bit of robot programming via its Controls interface. For example, let’s say I want my dino bot to move forward. For that to happen, I have to hook up some instructions in RoboCo that tell the robot how to do that.

  1. I open the Controls interface
  2. I select the key that I want to map the action to: W on my keyboard
  3. I select all desired parts: All the wheels on the left and right side of the robot
  4. I select my desired action: Spin Forward

Now, whenever I hit the W key, my robot will move forward!

But with only the Controls interface, you are pretty limited in the instructions you can give. You can have lots of actions, but each action has to remain simple like the “Press W to Spin Forward” above. This limitation leaves the player no choice sometimes but to try to grow extra fingers to manage 15+ key commands, like this impressive effort from FGRC21:

Work smarter, not harder, they say. So imagine if you wanted your robot to do more, but do it in a smarter way. For example, you want to:

  • Press just the W key, and thereby tell a four-legged robot to carry out a complex series of motor and piston movements that would make all four of its legs walk forward
  • Automate a robot so it could act entirely on its own
  • Manually control one aspect of your robot, like driving it around, while automating another aspect, like using sensors as an aim assist on a robot claw arm

That’s the power that comes with full robot programming. To make this possible, we needed to add two things to RoboCo: 1) sensor parts like distance, color, etc. that we’ll discuss in a future blog, and 2) a way to give robots far more complex instructions than our Controls interface could support.

The Controls interface is still going to be front and center in RoboCo, as we expect it to be the main thing most players employ. But if you want to take your robot to the next level, then it’s time to flex your typing fingers (and your brain) and get coding!

Even if you don’t plan to program robots yourself, you’ll still benefit from robot programming. People in the community can upload robots they made, complete with their code, to Steam Workshop. That means everyone gets to see more awesome robot creations, and you may even want to download and experiment with some of them yourself.

What Programming Approach Did We Pick?

Now that you know what makes robot programming so exciting, I’m sure your next question is: how will I code my robot in RoboCo? Well, that’s what next week’s blog is for! Next Friday, we’ll reveal what programming language we decided to go with and why we picked that specific language! Until then, we hope this first-ever footage of a robot delivering a soda entirely on its own gets you hyped!

And that’s it for this week’s dev blog! Are you excited about robot programming? Let us know in the comments below, on social media, or within our Discord!

For the latest news on RoboCo, follow us on Twitter, YouTube, Facebook, Instagram, and Tik Tok! You can also connect with other community members and us by joining our official Discord and Reddit

Don’t forget to add RoboCo to your Steam Wishlist!