Dokumentation und Material


Dokumentation

Allgemeine Dokumentation

Die allgemeine Dokumentation enthält Informationen zur Programmierung im Allgemeinen, zur Programmierung des Computerspielers, zum Wettkampf, zur Bedienung des Wettkampfsystems und alles Weitere, was man als Teilnehmer der Software-Challenge wissen muss.

Dokumentation zum Spiel Hive

Alles zum aktuellen Spiel Hive:

Spielanleitung

und, nur für bei Nutzung einer anderen Sprache als Java oder Ruby nötig:

XML-Dokumentation

PDF-Versionen zum Download sind in den jeweiligen Online-Versionen verlinkt.

Chat

Bei Fragen erreicht man einen Betreuer am besten im Chat auf unserem Discord Server. Auch andere Teilnehmer sind dort um sich auszutauschen. Das eigene Team kann einen privaten Raum bekommen, um Strategien zu diskutieren oder die Entwicklung zu koordinieren.

Downloads

Zum Starten benötigen Sie den Server mit grafischer Oberfläche und den SimpleClient als .jar-Datei. Damit können Sie das Spiel „Mensch gegen Mensch“ und „Mensch gegen Computer“ spielen. Wenn Sie bereit sind, Ihren eigenen Computerspieler zu programmieren, laden Sie noch den SimpleClient als Quellcode und benutzen ihn als Grundlage.

Der Server
(mit grafischer Oberfläche)

Damit können sowohl menschliche Spieler als auch Computerspieler gegeneinander spielen. Informationen zur Benutzung stehen in der Dokumentation – Der Spielleiter (Server) und in der Spielanleitung. Um gegen einen Beispiel-Computerspieler zu spielen, laden Sie sich auch den SimpleClient (s.u.) herunter.

Achtung! Damit der Server richtig funktioniert, muss eine Java Laufzeitumgebung in Version 8 oder neuer installiert sein.

Der Server kann direkt auf GitHub heruntegeladen werden:

Download Server (mit GUI)

SimpleClient

Der SimpleClient ist ein einfacher Computerspieler ohne nennenswerte Intelligenz, der aber das Spiel korrekt spielt. Der Quelltext dient als Anschauung, wie ein Computerspieler für „Hive“ entwickelt werden kann.

Um gegen den SimpleClient zu spielen, muss dieser heruntergeladen und entpackt/extrahiert werden. Wenn man erst den Server und dann den SimpleClient startet, verbindet er sich automatisch und spielt.

Weitergehende Informationen zum SimpleClient befinden sich in der Allgemeinen Dokumentation.

Der SimpleClient kann direkt bei GitHub heruntergeladen werden.

Download SimpleClient

Dort sind es die Dateien, die mit „simpleclient“ beginnen. Die Datei mit der Endung .jar ist die Version, die ausgeführt werden kann. Das andere ist der Quellcode als Basis für einen eigenen Client. Die Links „Source Code“ führen nicht zum Quellcode des SimpleClient sondern zum Quellcode des gesamten Projektes.

Testserver

Der Testserver ist ein Server ohne grafische Oberfläche. Dadurch kann er für automatisierte Tests verwendet werden. Dies wird in der allgemeinen Dokumentation zu automatischen Spielen beschrieben.

Der Testserver kann direkt bei GitHub heruntergeladen werden. Es ist die Datei software-challenge-server.zip.

Download Testserver

Quellcode für Server & Client

Der Quellcode ist eher für Fortgeschrittene gedacht, die eigene Veränderungen am Server vornehmen wollen oder die genauen Abläufe verstehen möchten. Für eine erfolgreiche Teilnahme an der Software-Challenge ist der Server-Quellcode nicht nötig.

Quellcode auf GitHub

Ruby-Version des SimpleClient

Zur Entwicklung eines SimpleClient in Ruby wird lediglich das software_challenge_client Gem benötigt, welches auch direkt von rubygems.org installiert werden kann. Dieser Download beinhaltet den gesamten Quellcode des Gems sowie einen Beispielclient der das Gem nutzt. Der Quellcode ist auch über GitHub verfügbar.

Die Ruby-Version für Hive folgt!

Versionshistorie (Ruby)
Dokumentation (Ruby)

Inoffizielle Clients

Hier werden inoffizielle Clients (etwa von anderen Teilnehmern) aufgeführt, für die wir jedoch keine offizielle Unterstützung anbieten.

C++ Client

Rust Client

Swift Client

Flyer

Unseren Flyer zur Software-Challenge herunterladen.