A feladat
A robotfoci bajnokság egy olyan rendszer, melyen keresztül különböző programnyelveken készült, különböző platformokon futtatott autonóm ügynökök játszhatnak egymás ellen, az európai labdarúgás szabályai szerint. Egy mérkőzés a hagyományos kliens/szerver architektúra keretein belül történik. A fociszerver biztosítja a virtuális focipályát és szimulálja a játékosok, valamint a labda mozgását, a kliens pedig egyetlen focista viselkedését vezérli. A szerver és a kliensek közötti kommunikáció UDP/IP protokollal történik.
A fociszerver két részre tagolódik: a szerverre és a hozzá kapcsolódó monitorra. A szerver szimulálja a labda és a játékosok mozgását, kommunikál a kliensekkel és vezérli a játékot a szabályoknak megfelelően. A monitor megjeleníti a virtuális focipályát, a játékosokat és a labdát. Egy szerverhez több monitor is kapcsolódhat.
Egy kliens a szerverhez UDP/IP protokollal kapcsolódik. A kliens a hálózaton keresztül küldi a játékost vezérlő utasításokat, és fogadja a játékos érzékszervei által közvetített információkat. Más szóval, a kliensprogram a játékos agya: a látottak és hallottak alapján mérlegel, dönt, majd a kívánt cselekvést elküldi a szervernek. Minden kliens egy és csakis egy játékost vezérelhet – ahány játékos van a csapatban, annyi kliens program fut. A kliensek közötti kommunikáció kizárólag a szerveren keresztül történhet, a say és hear utasítások segítségével.
A verseny során a feladat négy modul megírása: kliensek, szerver, monitor és egy webes felület. Az egyes komponenseket külön-külön értékeljük, a kliensekből álló csapat (max. 6 játékos) tudását pedig bajnokságon mérjük össze a többi versenyzőével. A 22. órában még egy kiegészítésre számíthattok, hogy leteszteljük, mennyire jól van megtervezve a rendszer, mennyire tudtok megküzdeni a last minute módosítási igényekkel.