Es gibt da dieses eine Spiel, das mich seit 28 Jahren verfolgt. Erschienen auf der Magic Disk 64 02/90 war ich von dem simplen Spielprinzip so fasziniert, dass ich es seitdem für alle möglichen Systeme, auf denen ich mal programmieren wollte, wenigstens einmal angefangen habe umzusetzen. Es ist so etwas wie mein Hello World.
Dieses Spiel nennt sich SHIFT. Es ist wohl am ehesten eine Mischung aus Chip's Challenge und Sokoban. Ziel ist es, mit seiner Spielfigur alle Herzen eines Levels in Löcher zu verschieben. Sind alle Herzen verschwunden, wird der nächste Level gestartet. Es gibt div. Extras, die man einsammeln kann und mehrere Bonuslevel. Erschwert wird das ganze durch Einbahnstraßen, tödliche Wände, verschlossene Türen, usw.
Das ganze sieht im ersten Level so aus:
Ich glaube, ich kenne dieses Spiel in und auswändig. Und ehrlich gesagt, gibt es viele Dinge, die mich nerven. Es gibt div. kleinere Bugs, bspw. werden Multicolor-Chars plötzlich einfarbig, wenn sie verschoben oder eingesammelt werden. Die Bonuslevel sind auch fast unschaffbar, wenn man sie nicht auswendig kennt und die tödlichen Wände nerven zum größten Teil einfach.
Geschrieben ist SHIFT in BASIC, wahrscheinlich verwendet es aber auch ein paar Assembler-Routinen. Die auf Dauer nervtötende Musik wurde mit dem Sound-Monitor gemacht.
Seit einigen Wochen programmiere ich wieder auf dem C64 (bzw. nutze CBMprgStudio). Und ja, ich bastle gerade an meiner eigenen SHIFT-Version. Ich nenne sie SHIFT REMIX, weil ich div. Bugs ausmerzen und das Spielkonzept generell aufbessern möchte, ohne es zu verfälschen.
Aktuell schreibe es auch nur in BASIC. Erste Schritte in Assembler habe ich zwar unternommen, aber ich bin noch nicht soweit zu verstehen, wie ich ein
in Assembler umsetze. Deshalb erstmal BASIC.
Oh, der lange Einführungstext soll eigentlich nur auf das folgende Bild verweisen. Den heute Abend bin ich meinem Traum ein großes Stück näher gekommen. Ich hab den Multicolor-Mode aktiviert und mein Charset wird geladen. Außerdem kann ich die Spielfigur mit meinem Joystick über den Bildschirm bewegen und Herzen verschieben.
Und so sieht meine Version bisher aus:
Der ein oder andere wird das lächerlich finden, aber ich bin mächtig stolz und deshalb musste ich das jetzt zeigen. Ist immerhin mein erster BASIC V2-Code seit Mitte der 90er.