Robocode - nauka Javy na 'wojnie'

Robocode jest grą, przy okazji której można uczyć się i doskonalić techniki programowania w Javie. Przy pomocy tego języka programowania tworzy się roboty, które następnie wystawia się do walki na arenie. Projekt gry został ostatnio udostępniony w serwisie SourceForge jako open-source.

Robocode

Robocode

Celem gry jest stworzenie programu-robota, który walczy na arenie z podobnymi do siebie przeciwnikami. Podobnymi - czyli też programami, ale każdy z nich może działać całkiem inaczej i jest to ograniczone tylko pomysłowością programisty.

Najprostsze roboty (patrz ramka) mogą po prostu poruszać się do przodu i do tyłu, obracać działko dookoła i strzelać, gdy w zasięgu znajdzie się przeciwnik. Jak widać stworzenie 'niezbyt mądrego' robota jest bardzo proste - wystarczy kilka linijek kodu, lecz dodanie mu troszkę inteligencji, zaprogramowanie taktyki walki, uników i zaawansowanej logiki działania stwarza już nie lada wyzwanie dla programistów.


  public class SimpleRobot extends Robot 
  { 

    // run: zachowanie robota
    public void run() { 
      while(true) { 
        ahead(100); // do przodu
        turnGunRight(360); // obróć działko
        back(100); // do tyłu
        turnGunRight(360); // obróć działko
      } 
    } 

    // onScannedRobot: Inny robot w zasięgu
    public void onScannedRobot(ScannedRobotEvent e) { 
      fire(1); // strzelaj!!!
    } 
  }

Więcej o grze można dowiedzieć się na stronie domowej projektu. Tam też znajdziemy linki do zewnętrznych witryn skupiających wokół siebie miłośników Robocode.

Gra wymaga zainstalowanej Javy w wersji minimum 1.3 i działa na wszystkich platformach, na które jest ona dostępna.

Strona domowa Robocode


Zobacz również