Robocode

from Wikipedia, the free encyclopedia
Home screen

Robocode is an open-source - programming game in which virtual robots fighting each other on a playing field. It was developed by Mathew Nelson (originally from IBM ), currently Flemming N. Larsen is the main developer and does updates and bug fixes . It is being further developed by the community.

It was developed in order to be able to learn the programming language Java in a playful way. Due to the simple operation and thanks to the supplied examples, a simple virtual robot (in English : bot) can be developed in just a few minutes .

The game

The players write the software for a virtual robot (a tank), which then competes against other bots (from other players and therefore with different software) on a virtual 2-dimensional battlefield. The bots can move, shoot and sense certain variables in their environment. The best bots therefore have hundreds of lines of software code and follow such different approaches as statistical analyzes, event-based routines or an artificial neural network in their winning strategy .

The game is about programming your own tank so that it is hit as little as possible and hits the tanks of other players as often as possible. The winner is whose robot is the last to remain on the field or, in team games, who has destroyed all robots of the opposing teams.

The game is not an online game , so it is not possible to play games over the Internet . But you can find a variety of control programs (some of which are even available as open source ) on the Internet, which you can then run on your local machine. The control software runs in a shielded environment ; H. there are no security risks involved in running foreign binaries . If you let your own software compete against the third party, you can test the effectiveness of your own software.

Size restrictions

In order to force programmers to limit the functionality of their bots, there are different robot classes, which are characterized by different sizes of the binary files. In this way, it remains open even for beginners to compete with established Robocode players.

One differentiates:

  1. Megabots with no size limit
  2. Minibots with less than 1500 bytes
  3. Microbots with less than 750 bytes
  4. Nanobots with less than 250 bytes

Leagues

There are several Robocode Leagues, the most popular of which are:

RoboRumble @ Home

RoboRumble @ Home is a permanent league that has three different disciplines in all classes. The disciplines are:

  1. 1-on-1, with only 2 robots allowed on the field
  2. melee, a mass battle involving more than two robots; the last one left wins
  3. team, groups compete against each other.

In modes 1-on-1 and melee, each robot competes at least once against each other. In team mode, teams are eliminated after a defeat ( knockout system ).

Robocode Little League

The Robocode Little League specialized in size-restricted bots. The RLL is currently no longer active.

Web links

Commons : Robocode  - album with pictures, videos and audio files
Wikiversity: Project: Robocode  - course materials