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 'Mississippi Queen'!

Spielanleitung

Für die Entwicklung eines Computerspielers in einer selbstgewählten Programmiersprache ist außerdem die XML-Dokumentation wichtig.

Herunterladbare PDF-Versionen sind in der Online-Version verlinkt.

Chat

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

YouTube-Tutorial

Es gibt ein Tutorial-Reihe aus YouTube-Videos, um den Einstieg zu Erleichtern.

YouTube Kanal

Downloads

Zum Start reicht der Server. Um dann einen eigenen Computerspieler zu programmieren, dient für gewöhnlich der Quellcode des RandomPlayers als Grundlage.

Der GUI Server

Darin können sowohl menschliche Spieler als auch Computerspieler gegeneinander spielen. Grundlegende Informationen zur Benutzung stehen in der Dokumentation – Der Spielleiter (Server).

Achtung! Damit der Server richtig funktioniert, muss eine Java Laufzeitumgebung in Version 11 oder neuer installiert sein. Wir empfehlen OpenJDK, da bei Oracle inzwischen ein Account gefordert wird. AdoptOpenJDK hat sich inzwischen zu Adoptium und ihre Binaries zu Temurin umbenannt, aber die Funktionalität hat sich nicht geändert.

Der Server kann direkt von GitHub heruntergeladen werden:

Download Linux GUI Server

Download Windows GUI Server

Download Mac GUI Server

Github Releases

Java Zufallsspieler

Der Zufallsspieler (RandomPlayer) ist ein einfacher Computerspieler, der korrekte aber zufällige Züge macht. Der Quelltext dient als Entwicklungsgrundlage. Weitergehende Informationen zum Zufallsspieler befinden sich in der Allgemeinen Dokumentation.

Der Zufallsspieler kann direkt von GitHub heruntergeladen werden:

Download RandomPlayer

Fortgeschrittener Java Spieler

Ein Fortgeschrittener Spieler für 'Mississippi Queen' ist in Arbeit.

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 von GitHub heruntergeladen werden:

Download Testserver

Quellcode für Server & Computerspieler

Der Quellcode ist eher für Fortgeschrittene gedacht, die eigene Veränderungen am Server vornehmen 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 Zufallsspielers

Zur Entwicklung eines Computerspielers 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 Beispielspieler der das Gem nutzt. Der Quellcode ist auch über GitHub verfügbar.

Versionshistorie (Ruby)
Dokumentation (Ruby)

Inoffizielle Zufallsspieler

Hier werden inoffizielle Zufallsspieler (von unseren Mitarbeitern und früheren Teilnehmern) aufgeführt, für die wir jedoch keine offizielle Unterstützung anbieten.

Mississippi Queen (2024)

Rust Client

Hey, Danke für den Fisch! (2023)

C# Client als Nuget Package

C++ Client

Rust Client

Python Client als PyPI Package

Swift Client

TypeScript Client als npm Package

Ostseeschach (2022)

C# Client

Python Client

Blokus (2021)

C# Client

Rust Client

Hive (2020)

C++ Client

Python Client (nutzt im Hintergrund den C++ Player)

Rust Client

Swift Client (ausführliche Dokumentation vorhanden)

Flyer

Unseren Flyer zur Software-Challenge herunterladen