Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

Da ist der Wurm drin

Kennen Sie noch den Klassiker Worm? Mit den Cursortasten steuert man einen Wurm. Wenn er Nahrung einsammeln kann, wird er länger. Wie programmiert man so etwas?
Das Spiel „Worm“ erfordert keinen leistungsstarken Rechner. Nicht mal ein grafisches Display ist erforderlich, es genügt eine simple Textkonsole. Mithilfe der Richtungstasten steuert man einen Wurm über den Bildschirm. Der Wurm bewegt sich schrittweise weiter und wird auf der Konsole durch eine Folge von Zeichen dargestellt, zum Beispiel aus einer Folge von „X“.

Spielablauf

Zu Beginn erfolgt etwa alle 250 Millisekunden ein Schritt des Wurms. Das lässt genügend Reaktionszeit. Bewegt sich der Wurm an den Rand des Bildschirms, wird er je nach Spielregeln entweder am gegenüberliegenden Rand wieder eingesetzt, oder das Spiel ist zu Ende. Auf keinen Fall darf der Wurm in sich selbst gesteuert werden, dann ist das Spiel beendet.Auf dem Spielfeld liegt an zufälligen Positionen „Nahrung“. Krabbelt der Wurm über diesen Block, nimmt er die Nahrung auf und wächst. Er wird um ein Zeichen länger. Das erhöht einerseits den Punktestand, erhöht aber gleichzeitig auch den Schwierigkeitsgrad. Denn je länger der Wurm wird, desto schwieriger wird es, nicht in ihn hineinzusteuern. Der Wurm ist zu Beginn des Spiels ein Zeichen groß.Am unteren Rand des Spielfelds wird der Punktestand angezeigt. Mit jedem Schritt, den der Wurm krabbelt, wird der Zähler um die Länge des Wurms erhöht. Anfangs also in Einerschritten. Je länger der Wurm durch Fressen von Nahrung wird, desto schneller steigen die Punkte an. Allerdings wird es auch schwieriger, den Wurm so zu steuern, dass er nicht über sich selbst läuft und dadurch stirbt.

Variation 1

Die Position der Nahrung kann variiert werden. Zu Beginn liegt die Nahrung immer in der Mitte des Spielfelds. Später im Spielverlauf werden dann zufällige Positionen gewählt. Es ist darauf zu achten, dass die Nahrung nicht an einer Position „innerhalb des „Wurms“ auftaucht. Aber dies ist bereits ein fortgeschrittenes Feature des Spiels. Zunächst genügt die fixe Position in der Mitte.

Variation 2

Eine weitere Variation des Spiels ist über die Schrittgeschwindigkeit möglich. Zu Beginn wird alle 250 Millisekunden ein Update des Wurms ausgeführt. Somit krabbelt der Wurm alle 250 Millisekunden eine Zeichenposi­tion auf dem Bildschirm weiter. Je länger das Spiel bereits läuft, desto schneller kann es werden. Probieren Sie, die Geschwindigkeit schrittweise zu erhöhen, abhängig von der Dauer des Spiels und der Länge des Wurms.

Übungsziel

Der Fokus der Übung liegt auf den Werten Wandelbarkeit und Korrektheit. Für die Wandelbarkeit ist es hilfreich, vor der Implementation einen Entwurf zu erstellen. So kann sichergestellt werden, dass wesentliche Prinzipien wie das Single Responsibility Principle eingehalten werden. Für die Korrektheit sorgen automatisierte Tests. Diese sorgen gleichzeitig für die Wandelbarkeit. Denn nach einer Änderung kann durch die Ausführung der Tests geprüft werden, ob die Anforderungen noch korrekt umgesetzt sind.Ich wünsche Ihnen viel Spaß mit dem Wurm!
Miscellaneous

Neueste Beiträge

OpenTelemetry als Fundament einer vertrauenswürdigen Observability-Infrastruktur
Observability wird zum Bindeglied zwischen Technologie und Sicherheit, zwischen Erkennen und Handeln, zwischen operativer Realität und strategischer Steuerung.
5 Minuten
17. Mär 2026
Mit Entitäten strukturierte Informationen extrahieren - Low Code/No Code und KI mit Copilot Studio, Teil 2
Entitäten in Copilot Studio strukturieren Benutzereingaben als typisierte, wiederverwendbare Informationen. Sie erkennen und extrahieren aus unstrukturierter Sprache klar definierte Daten für Dialoglogik und zur Übergabe an Aktionen (Power Automate, Konnektoren/Plug-ins).
7 Minuten
23. Mär 2026
SignalRC und Ping - Der DDC-Truck, Teil 10
Wie schnell ist die Verbindung zwischen Browser und Fahrzeug eigentlich?
9 Minuten
26. Mär 2026

Das könnte Dich auch interessieren

Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
UIs für Linux - Bedienoberflächen entwickeln mithilfe von C#, .NET und Avalonia
Es gibt viele UI-Frameworks für .NET, doch nur sehr wenige davon unterstützen Linux. Avalonia schafft als etabliertes Open-Source-Projekt Abhilfe.
16 Minuten
16. Jun 2025
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige