Dokumentation

Allgemeine Dokumentation zur Software-Challenge

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.

Hier geht es zur allgemeinen Dokumentation

Spielanleitung Piranhas
XML-Dokumentation Piranhas
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.

Downloads

Zum Starten brauchen Sie den Server mit grafischer Oberfläche und den Simple Client als JAR. 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 Simple Client als Quellcode und benutzen ihn als Basis.

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.

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

Download Server

Der Server kann direkt auf GitHub heruntergeladen 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 „Piranhas“ 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.

Downdload Simple Client

Der Client kann direkt bei GitHub heruntergeladen werden. Dort sind es die Dateien, die mit "simpleclient" beginnen. Die Datei mit der Endung .jar ist die Version als Ausführbare JAR, 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.

Download SimpleClient

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 (software-challenge-server.zip)

Quellcode Server & Client

Dieser 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.
Zum 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.

Versionshistorie (Ruby)

Dokumentation (Ruby)

Inoffizielle Clients

Jan-Hendrik Matthes, der Schüler bei der Software-Challenge betreut, hat einen Client in Swift geschrieben. Wir bieten keine offizielle Ünterstützung für diesen Client, aber er ist eventuell trotzdem interessant:

inoffizieller Client in Swift