Ein Roguelike in C#, das als Schulprojekt für den Einstieg in die Programmierung dienen kann/soll. Es werden Arrays und Dateioperationen behandelt. Vertiefende Themen können aus den Bereichen der Computergrafik (Double Buffering, der künstlichen Intelligenz (Computerspieler) oder der Algorithmik (Wegfindung, Field Of View)) kommen.
Um eine Vorstellung von der Funktionsweise eines Roqugelike zu erhalten, bietet es sich an, ein Spiel zu wagen und es einfach auszuprobieren. Brogue ist ein schönes Beispiel, das es für alle gängigen Plattformen gibt.
Am Beispiel von Roguelikes lassen sich viele unterschiedliche fachliche Konzepte untersuchen.
Wenn man das Dungeon in der TextBox der Windows-Form direkt zeichnet, kann man schon bei kleinen Felder ein Flackern bemerken. Erst das Schreiben in einen Zwischenpuffer - z.B. einen String - und das anschließende Kopieren in die TextBox verhindert das Problem.
Die Generierung des Dungeons kann auf unterschiedliche Arten erfolgen und beliebig kompliziert realisiert werden. Eine einfache Art ist die manuelle Erzeugung und Speicherung in Textdateien, die während des Spiels geladen werden.
Interessanter wird es bei automatisch generierten Dungeons. Das roguebasin-Wiki bietet sich hier als wahre Fundgrube an. Ein einfacher Algorithmus ist hier beschrieben. Eine komplexere Version gibt es an dieser Stelle. Schließlich findet man hier eine Sammlung weiterer Verfahren.
Neben einer Darstellung in Textform kann auch eine grafische Ausgabe existieren. Beide Formen können nebeneinander bestehen, wodurch eine Trennung von Anwendungslogik und Darstellung erforderlich wird, wie es im MVC-Pattern beschrieben wird.
- Wikipedia-Artikel Rogue-like
- roguebasin - englisch sprachige Webseite mit vielen Informationen.
- Video: Roguelikes, and building one (ab Minute 17)
- Finding graphical tiles
Die in diesem Projekt verwendeten Grafiken entstammen dem Tileset von DawnBringer.