Dieses Klassendiagramm zeigt die alle Klassen der neuen Schnittstelle, über die die Arena mit dem Roboter kommunizieren kann. Die Objektstruktur entspricht in etwa der, die auch für die interne Verwaltung in der Arena verwendet werden wird, und wurde deswegen in "vereinfachter" Form übernommen, um den Roboter nur mit den wirklich für ihn notwendigen Daten zu versorgen, und so ein Mogeln weitestgehend auszuschließen.

    Klasse Beschreibung
    AbstractRobotAction Abstrakte Klasse, die der Roboter zurückgibt, um seinen Befehlswunsch auszudrücken.
    CardData Klasse, die die Informationen über eine Spielkarte enthält.
    ExchangeAction Klasse, die Roboter zurückgibt, wenn er gleichzeitig eine Karte von dem vor ihm liegenden Feld aufheben und eine andere dort plazieren möchte.
    Exit Der Ausgang.
    FieldData Informationen über ein Feld in der Arena.
    ItemData Abstrakte Klasse, von der alle Items abgeleitet sind, die auf den Feldern plaziert sein können.
    MoveAction Klasse, die Roboter zurückgibt, wenn er einen Schritt nach vorne unternehmen will.
    NoAction Klasse, die Roboter zurückgibt, wenn er nichts tun möchte.
    PickupAction Klasse, die Roboter zurückgibt, wenn er eine Karte auf dem vor ihm liegenden Feld aufheben möchte.
    PutAction Klasse, die Roboter zurückgibt, wenn er eine Karte auf das vor ihm liegende Feld plazieren möchte.
    Recharger Ein Brunnen.
    RobotData Datencontainer, der dem Roboter-Thread übergeben wird, wenn die Arena dessen nächstes Kommando abfragt.
    RobotFunctions Interface, das der Roboter-Thread implementieren muß, um die notwendige Schnittstelle für die Kommunikation mit der Arena zur Verfügung zu stellen.
    RotateAction Klasse, die Roboter zurückgibt, wenn er sich drehen möchte.
    VirtualRobot Ein anderer Roboter.
    Wall Eine Wand.
    Wormhole Ein Wurmloch.