You Got A Question? Ask    GNOME Community!


Enter the world of artificial intelligence with Robocode!

This post was made with an older stylesheet


Admittedly, the most relaxing and fun way to learn something is by playing a game that encapsulates the concept/logic behind it. Robocode is an open source game that lets you easily set and tweak the movements and firing behavior of a virtual robo-tank, thus helping you to enter the world of basic artificial intelligence development.

The aim of the game is to create the “smartest” robot that will be in a position to kill any kind of enemy before it gets destroyed. Characteristically, the motto of the game is “build the best, destroy the rest”


robocodefight

What you see in the above screenshot are some sample robots with different behavior pattern, fighting each other in a ten-round game of virtual destruction. Our job here is to determine how “MyFirstRobot” could change behavior in order to become better against all the other robots, taking into account all the different fighting characteristics that our enemies exhibit.

Creating a new robot on Robocode is a piece of cake, but creating the ultimate fighting machine may take some constructive and logically imaginative time :)


woguerobot

This is how a new robot sample looks like. You can keep tweaking movement and gun rotating values, load the other included robots to see how to implement new abilities or use other commands for your bot, or just go ahead and dig in the API to find all you’ll ever need. Compiling your newly created robot is done in-game, by the included Robocode java compiler.

There are also many physics factors to take into account when programming a robo-tank on Robocode like the bullet velocity and its power, or the turning speed and forward speed and how all these values are connected mathematically to create precisely what you want.

Other more advanced abilities include guessing technics for robots.

GuessFactors

An illustration of GuessFactors, in this case using precise-predicted max escape angles

You will find yourself spending hours of “coding” your robot and after you created the best killing machine you may want to create its nemesis etc. It’s a never ending story of limitless imagination and creation joy.


newgame

The only thing that I found to be missing really from Robocode is the ability to go multi-player. It would be fantastic if I had the ability to connect to the internet and fight other people’s robots, but the ability to compile, package and upload your robot somewhat mitigates the misfortune of the multi-player absence.

Other than that, Robocode is a simple and straight forward way to start developing basic AI and one of the best ways for children to learn basic programming and how words and numbers reflect into real motion and behavior changing.

  Robocode Homepage


 
  We can't watch comments unless G+ provides an API or if you send a notification, e.g +World Of Gnome
     Sometimes is better to place your questions on GNOME Community
  • Ade Malsasa Akbar

    It is impressive that not just KTurtle I have found about programming for child. Now I know this great app exist :) Thank you, Wogue.