Software-Challenge Dokumentation

Das Wettkampfsystem

Das Wettkampfsystem ist die Plattform, auf der die Computerspieler der einzelnen Schulen gegeneinander antreten. Die Teams können sich dabei nicht nur im Wettkampf, sondern auch in Freundschaftsspielen mit ihren Gegnern messen. Außerdem liefert es alle Informationen rund um den Wettkampf, wie z.B. die Ergebnisse der einzelnen Spieltage oder die Anzahl der Mitglieder in den einzelnen Teams.

Die Weboberfläche

Die Startseite der Weboberfläche

Die Weboberfläche ist unter der URL http://contest.software-challenge.de erreichbar. Alle Informationen, die den Ablauf des Wettkampfs betreffen (z.B. Terminplan, News oder Rangliste) sind auch ohne Anmeldung verfügbar. Man muss sich nur am System anmelden, wenn man auf seinen Kurs, bzw. auf seinen Computerspieler zugreifen möchte. Im Wettkampfsystem findet die gesamte Wettkampfverwaltung statt. Hier können die Clients abgegeben, getestet und aktiviert werden und es kann der aktuelle Wettkampfstand abgerufen werden (Rangliste, Spieltage, etc.).

Auswahl

Bevor man Informationen über den Wettkampf bekommt, muss man die betreffende Saison und die Wettkampfgruppe auswählen. Dies ist auch wenn man sich anmeldet zu beachten. Über die beiden Buttons in der oberen Leiste, bekommt man alle verfügbaren Saisons angezeigt, und wenn man eine ausgewählt hat, sieht man auch die Gruppen dazu. Anschließend kann man die Informationen einsehen. Standardmäßig ist die aktuellste Saison im System aktiv.

Frei verfügbare Informationen

Saison

Aktuelles

Hier sind alle News zum Wettkampf einsehbar. Die neusten News werden auch immer oben neben dem Logo angezeigt. Alles Wichtige zum Wettkampf erscheint hier.

Wettkampf

Spieltage

Screenshot des Terminplans

Der Terminplan kann erst aufgerufen werden, wenn die einzelnen Spieltage für den Wettkampf feststehen und eine Gruppe ausgewählt wurde. Die blauen Einträge im Kalender zeigen an, welche Spieltage noch austehen, wärend die grünen schon gespielt sind. Mit einem Klick auf einen Eintrag gelangt man direkt zur Spieltagübersicht.

XX. Spieltag

wettkampfsystem spieltaguebersicht

Auf dieser Seite kann man sehen, welche Schulen an dem Spieltag aufeinander treffen bzw. trafen. Wurde der Spieltag schon ausgetragen, kann man sich die Ergebnisse und den Verlauf der einzelnen Spiele anschauen.

Rangliste

Screenshot der Rangliste

Der Link erscheint erst, wenn der Wettkampf gestartet wurde. Auf dieser Seite gibt es drei Tabellen:

  • Die Hauptrangliste: Hier können die einzelnen Teams sehen, wo sie im Vergleich zu allen Kontrahenten stehen.

  • Aufteilung nach Teamerfahrung: Zu Beginn einer neuen Runde der Software-Challenge werden die Teams von den Organisatoren nach Rücksprache mit den Lehrkräften in Einsteiger oder Fortgeschritten eingestuft. So kann für die Einsteiger eine separate Rangliste angezeigt werden und die Teams können ihre Leistung besser einschätzen. Diese Einstufung hat weder Auswirkungen auf den Verlauf der Software-Challenge, noch auf die Vergabe der Preise.

Finale

Hier findet sich die Übersicht über die Finalteilnehmer. Diese ist erst verfügbar, wenn die Teilnehmer feststehen.

Teams

Alle Teams

Die Teamtabelle

Hier werden die teilnehmenden Teams mit ihren Ansprechpartnern und Tutoren tabellarisch aufgelistet. Durch einen Klick auf die Lupe gelangt man zur Begegnungsliste für das entsprechende Team.

Meine Teams

Angemeldete Benutzer können hier eine Übersicht über die von Ihnen betreuten Teams finden.

Nur mit Anmeldung verfügbar

Verbindlich anmelden

Link zur verbindlichen Anmeldung

Vor der Wettkampfphase muss man ein oder mehrere vorangemeldete Teams verbindlich anmelden. Hierzu klickt man nach dem Login auf den Link "Teams verbindlich anmelden" unten auf der Startseite (siehe Bild). Auf der folgenden Seite wird eine Liste der eigenen Teams angezeigt. Um ein Team verbindlich anzumelden, klickt man in der Spalte "Teilnahme" auf die Checkbox (

Checkbox zur verbindlichen Anmeldung
).

Meine Teams

Hier sind alle Teams aufgelistet, auf die man Zugriff hat. Mit einem Klick auf die Lupe am Ende der Zeile gelangt man in die Teamdetails.

Personen

Dialog

Hier werden alle Personen des Teams augelistet.

Person hinzufügen

Neue Personen kann man über die Schaltfläche "Person hinzufügen" am oberen Bildschirmrand einladen. Dabei können Tutoren sowohl Lehrkräfte, als auch Schülerinnen und Schüler hinzufügen, während Lehrkräfte nur Schülerinnen und Schüler hinzufügen dürfen. Schülerinnen und Schüler haben in dieser Hinsicht keinerlei Rechte.

Hinweis: Es muss nicht jede Schülerin und jeder Schüler eingetragen werden und über Zugangsdaten erhalten. Es reicht, wenn sich die Teammitglieder am Server anmelden können, die den Computerspieler hochladen.

Mit den Symbolen neben den Teammitgliedern kann man sich die Personendetails anschauen, sie bearbeiten oder das Mitglied aus dem Team werfen.

Wenn man eine neue Person ins Team aufnehmen will, kann man sich entscheiden, ob man eine neue Person erstellt oder eine im System bekannte Person einlädt.

Ganz unten auf der Personenseite kann man die Schülerinnen- und Schüler-Anzahl des Teams eintragen. Hierzu zählen auch Schülerinnen und Schüler, die keine eigenen Zugangsdaten für das Wettkampfsystem haben. Diese Zahl wird sowohl für die Presse als auch für statistische Zwecke gebraucht und sollte in jedem Fall stimmen.

Benachrichtigungen

Für Personen mit Zugangsdaten kann neben den Personendetails eingestellt werden, unter welchen Umständen diese Personen eine e-Mail mit einer entsprechenden Benachrichtigung erhalten sollen. Dabei gibt es folgende Optionen:

  • Ein Spieltag wurde gespielt

  • In einem Ihrer Teams gibt es noch keinen spielbereiten Computerspieler für den nahenden Spieltag

  • Es gibt Neuigkeiten zum Wettbewerb

  • Eines ihrer Tickets wurde geändert

Computerspieler

In dieser Rubrik kann man die Computerspieler hochladen und verwalten. Bevor man einen Computerspieler hochlädt, muss der Computerspieler abgabefertig gemacht werden.

Übersicht der eingesendeten Computerspieler

Oben am rechten Rand befindet sich die Schaltfläche, um neue Computerspieler hinzuzufügen. Diese führt zu einem Formular, mit dem man das ZIP-Archiv des Computerspielers hochladen kann.

Forumlar zum Einsenden eines Computerspielers

Man kann dem Spieler einen Namen geben, damit man ihn in der Liste der hochgeladenen Spieler später besser erkennt. Man kann auch noch zusätzliche Parameter festlegen, die dem Computerspieler beim Start übergeben werden. Dies ist nützlich, wenn der Computerspieler verschiedene Spielstrategien unterstützt und man diese per Parameter auswählen kann. Dann muss man den Computerspieler nur einmal hochladen (die Parameter kann man auch später verändern). Die Angabe eines Namens und von Parametern ist optional.

Als letztes muss noch die Umgebung (das Docker Image) gewählt werden, in der der Computerspieler auf dem Wettkampfsystem ausgeführt werden soll. Verwendet der Computerspieler eine der beiden offiziell unterstützten Programmiersprachen Java und Ruby, kann hier einfach das entsprechende ausgewählt werden. Ansonsten hängt es von der gewählten Programmiersprache ab, ob eine passende Umgebung angeboten wird. Sollte sich nichts finden, installieren wir gern etwas passendes nach.

Wurde ein Spieler erfolgreich hochgeladen, befindet er sich in der Liste aller Spieler des Teams. Hier kann man mit dem Link "Testen" seine Turnierfähigkeit prüfen. Der Spieler spielt dann zweimal gegen den Zufallsspieler. Ein Haken in einem grünen Kreis symbolisiert einen erfolgreichen Test. Das Logbuch über den Testlauf kann mit dem Link "Logs" aufgerufen werden. Unter Umständen muss noch die richtige Startdatei eingestellt werden. Dafür kann man rechts in der Spalte "Hauptdatei" auf den entsprechenden Link klicken und im folgenden Dateimenü die richtige Startdatei auswählen.

Mit dem '+' kann man einen Kommentar an den Computerspieler heften, so dass man ihn besser von den anderen unterscheiden kann.

Mit dem Link "Aktivieren" markiert man den Spieler als denjenigen, der das nächste Spiel auf dem Wettkampfsystem spielen soll. Dies kann ein Freundschaftsspiel oder ein Spiel des Wettkampfes sein.

Hinweis: Es nimmt der jeweils aktive Computerspieler am Spieltag teil. Die Frist für das Aktivieren eines Clients, der an einem Spieltag teilnehmen soll, endet am Spieltag um 0 Uhr. Bei späterer Aktivierung kann nicht garantiert werden, dass der neue statt des bisherigen Clients am Spieltag teilnimmt. Ist an einem Spieltag kein Computerspieler aktiviert, nimmt das Team nicht an der Begegnung dieses Spieltages teil und die betreffenden Spiele zählen als verloren.

Freundschaftsspiele

Um sich schon vor dem Wettkampf einen Eindruck von der Stärke des eigenen Teams zu machen, kann man mit seinen Gegnern Freundschaftsspiele absolvieren.

Um ein Freundschaftsspiel zu spielen gibt es zwei Möglichkeiten: Man fordert einen (oder alle) Gegner heraus oder man nimmt eine Herausforderung an.

Durch einen Klick auf das Ergebnis eines gespielten Freundschaftsspiels kann man es sich im Detail anschauen.

Verfügbare Schnittstellen

Im folgenden können Schnittstellen gefunden werden mit denen man mit dem Wettkampfsystem interagieren kann.

Replays

Man kann direkt auf unter "Replay herunterladen" auf der jeweiligen Match-Seite einen Link finden, der z.B. wie folgt aussieht: …​/wettbewerb/2010/spieltage/XXXX/matches/XXXX/rounds/XXXX bei einem normalen GET-Request erhält man das Replay-Archiv (also ein GZip Archiv). Um die Replays z.B. in einer eigenen Anwendung zu verwenden, kann man sich auch vom Server bereits entpackte und an das Format des Replay-Viewers angepasste XML-Files zurückgeben lassen. Dies kann zum Einen durch einen XML-Header des Requests geschehen oder zum Anderen einfach durch das Anhängen der Endung .xml an den oben genannten Link.

Wenn größere Mengen Replays benötigt werden, empfehlen wir die Standard-Archive vorzuziehen und dann lokal zu entpacken, da diese schon fertig gepackt auf dem Server vorliegen und somit schneller und mit weniger Last für das System zur Verfügung gestellt werden können.