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!

Neueste Beiträge

DWX hakt nach: Wie stellt man Daten besonders lesbar dar?
Dass das Design von Websites maßgeblich für die Lesbarkeit der Inhalte verantwortlich ist, ist klar. Das gleiche gilt aber auch für die Aufbereitung von Daten für Berichte. Worauf besonders zu achten ist, erklären Dr. Ina Humpert und Dr. Julia Norget.
3 Minuten
27. Jun 2025
DWX hakt nach: Wie gestaltet man intuitive User Experiences?
DWX hakt nach: Wie gestaltet man intuitive User Experiences? Intuitive Bedienbarkeit klingt gut – doch wie gelingt sie in der Praxis? UX-Expertin Vicky Pirker verrät auf der Developer Week, worauf es wirklich ankommt. Hier gibt sie vorab einen Einblick in ihre Session.
4 Minuten
27. Jun 2025
„Sieh die KI als Juniorentwickler“
CTO Christian Weyer fühlt sich jung wie schon lange nicht mehr. Woran das liegt und warum er keine Angst um seinen Job hat, erzählt er im dotnetpro-Interview.
15 Minuten
27. Jun 2025
Miscellaneous

Das könnte Dich auch interessieren

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
Mythos Motivation - Teamentwicklung
Entwickler bringen Arbeitsfreude und Engagement meist schon von Haus aus mit. Diesen inneren Antrieb zu erhalten sollte für Führungskräfte im Fokus stehen.
13 Minuten
19. Jan 2017
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige