Programmierwettbewerb für
Schülerinnen und Schüler
Oktober 2025 – April 2026

»Hidden Gems« ist ein Programmierwettbewerb, der sich an Schülerinnen und Schüler richtet, die ihre Fähigkeiten im Bereich der algorithmischen Problemlösung und Programmierung verbessern möchten. In diesem Wettbewerb programmierst du einen Bot, der sich durch ein Labyrinth bewegt, um möglichst schnell und effizient Gems zu finden und einzusammeln.

Im Video siehst du einen Bot, der zufällig durch eine Arena läuft und dabei Gems einsammelt (leider ist er nicht besonders gut darin). Deine Aufgabe ist es, einen Bot zu programmieren, der intelligenter vorgeht und die Gems schneller findet.

Ablauf des Wettbewerbs

Der Wettbewerb läuft über mehrere Monate und besteht aus mehreren Stages. Jede Stage hat ein eigenes Thema und bringt neue Herausforderungen mit sich. Da der Wettbewerb nebenbei zur Schule läuft, sind die Zeiträume so großzügig bemessen, dass du dich auch um deine schulischen Verpflichtungen kümmern kannst. Während jeder Stage gibt es tägliche Scrims, bei denen du siehst, wie dein Bot im Vergleich zu anderen abschneidet. Am Ende jeder Stage treten alle Bots in einem Finale gegeneinander an.

Zeitplan

Beginn Dauer Stage Titel
Mo., 06.10.2025 4 Wochen Stage 0 System Check (optional)
Mo., 03.11.2025 3 Wochen Stage 1 Training Grounds
Mo., 24.11.2025 3 Wochen Stage 2 Dark Signal
Mo., 15.12.2025 6 Wochen Stage 3 Resonance
Mo., 26.01.2026 5 Wochen Stage 4 Signal Array
Mo., 02.03.2026 4 Wochen Stage 5 Portal Nexus
Mo., 30.03.2026 4 Wochen Bonus Stage The Swarm

In Stage 0 kannst du testen, ob dein Bot korrekt funktioniert und ob du ihn erfolgreich einreichen kannst. Diese Stage fließt nicht in die Wertung ein, es handelt sich nur um eine optionale Vorbereitungsphase.

Teilnahme

Die Teilnahme am Wettbewerb ist kostenlos und offen für alle Schülerinnen und Schüler. Du kannst alleine oder im Team teilnehmen und du kannst auch einsteigen, wenn der Wettbewerb bereits begonnen hat. Falls du nicht mehr in die Schule gehst, aber trotzdem teilnehmen möchtest, kannst du außer Konkurrenz mitmachen. Die Anmeldung öffnet am 6. Oktober 2025.

Wie programmiere ich meinen Bot?

Du kannst deinen Bot in einer Programmiersprache deiner Wahl programmieren. Dein Bot bekommt in jeder Runde Informationen über seine Umgebung und muss darauf basierend eine Aktion auswählen. Die Informationen, die dein Bot erhält, werden im JSON-Format bereitgestellt. Dein Bot muss diese Informationen verarbeiten und anschließend eine Aktion zurückgeben, z. B. »gehe nach Norden«.

Damit du gleich loslegen kannst, haben wir ein paar Beispiel-Bots in verschiedenen Programmiersprachen (C++, Perl, Python, Lua, Java, PHP, JavaScript, Ruby, PowerShell, Go, Dart und Julia) vorbereitet, die du als Vorlage verwenden kannst.

Wie teste ich meinen Bot?

Du kannst deinen Bot lokal auf deinem Computer testen, indem du den bereitgestellten Runner verwendest. Der Runner simuliert die Spielumgebung und führt deinen Bot aus. Der Runner ist deterministisch und erstellt – abhängig von einem Seed – immer die gleichen Karten. So kannst du deinen Bot immer wieder auf denselben Karten testen und verbessern. Wir verwenden denselben Runner auf dem offiziellen Server (allerdings mit zufälligen Seeds), sodass du sicher sein kannst, dass dein Bot dort genauso funktioniert wie lokal.

Wie reiche ich meinen Bot ein?

Um deinen Bot einzureichen, musst du uns Lesezugriff auf ein Git-Repository geben, in dem sich der Code deines Bots befindet. Du kannst dafür z. B. GitHub, GitLab oder Bitbucket verwenden. Dieses Repository sollte natürlich privat sein, damit niemand deinen Code sehen kann.