Loco

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Loco
Titelbild vom Spiel
Spiel Nr. 1095
Bewertung 5.67 Punkte bei 6 Stimmen
Entwickler Antony Crowther
Firma Alligata Software
Verleger Alligata Software
Musiker Ben Daglish
HVSC-Datei /MUSICIANS/D/Daglish_Ben/L_O_C_O.sid
Release 1984
Plattform(en) C64, Atari 400/800, ZX Spectrum
Genre Shoot'em Up
Spielmodi Einzelspieler
Steuerung Icon Port2.pngIcon joystick.png Icon tastatur.png
Medien Icon kassette.png Icon disk525.png
Sprache Sprache:englisch


Beschreibung[Bearbeiten | Quelltext bearbeiten]

Aufbruch zu gefährlicher Fahrt...

Im Spiel Loco muss der Spieler eine Lokomotive mehrfach über einen Rundkurs steuern und sich dabei mit Rauchwolken gegen angreifende Flugzeuge, Zeppeline und Draisinen zur Wehr setzen. Durch eine geschickte Wahl der Fahrstraße füllt die Lokomotive ihren Treibstoffvorrat an Depots entlang der Strecke auf. Sind 5 Runden absolviert — bei einer Fahrtzeit von etwa 55 Sekunden pro Runde —, ohne dass die Lokomotive von einem Gegner getroffen oder mit Treibstoffmangel liegengeblieben ist, so ist das Level erfolgreich abgeschlossen und das nächste startet mit zahlreicheren, schnelleren und aggressiveren Gegnern.

Die Geschichte[Bearbeiten | Quelltext bearbeiten]

Die kleine Lokomotive

... ist praktisch nicht existent. Völlig sinnfrei muss der Spieler eine kleine Lokomotive im Kreis fahren lassen, während Flugzeuge und Zeppeline sie ohne erkennbaren Grund bombardieren und Kamikaze-Draisinen versuchen, sie in die Luft zu sprengen. Am ehesten lässt sich diese Fahrt noch als Flucht vor dem riesigen Bahnhofsvorsteher deuten, der drohend seinen Arm schwenkt (Abbildung rechts).

Hintergrund[Bearbeiten | Quelltext bearbeiten]

Das Spiel Loco ist inspiriert von dem Arcade-Spielautomaten "Super Locomotive", den der Hersteller Sega 1982 auf den Markt brachte und den der Autor von Loco bei einem Sonntagsspaziergang in Blackpool entdeckte. Loco basiert allerdings nur auf den Details, die sich der Antony Crowther innerhalb von 10 Minuten einprägen konnte, während er anderen beim Spielen von "Super Locomotive" zusah[1].


Gestaltung[Bearbeiten | Quelltext bearbeiten]

Die Fahrt der Lokomotive wird auf dem Bildschirm in zwei getrennten Bereichen dargestellt, die mit unterschiedlicher Geschwindigkeit scrollen. In der oberen Bildschirmhälfte ist die Lokomotive vor einer hügeligen Landschaft zu sehen; die untere Hälfte zeigt die Gleisanlagen, die Lokomotive sowie sich nähernde Gegner aus der Vogelperspektive. Da die untere Darstellung gegenüber der Seitenansicht im Maßstab 1:4 verkleinert ist, sind hier Gegner schon zu sehen, lange bevor sie der Lokomotive nahe kommen und gefährlich werden können. Des weiteren bietet diese Ansicht einen Überblick über Treibstoffdepots entlang der Strecke, so dass sich sowohl Gleiswechsel als auch die Abwehr von Gegnern planen lassen.

Grafik[Bearbeiten | Quelltext bearbeiten]

Die Grafikdarstellung findet durchweg im Multicolor-Textmodus statt (Bildschirmspeicher an Adresse $0400, Zeichensatz an $0800). Bemerkenswert ist das ausgefeilte Sprite-Multiplexing, mit dessen Hilfe eine große Zahl von Sprites gleichzeitig dargestellt wird. Für die Umschaltung zwischen den Sprites werden in insgesamt 8 verschiedenenen Rasterzeilen (Zeile 0, 72, 95, 111, 142, 163, 168 und 188) Rasterzeilen-Interrupts ausgelöst. Das nachfolgende Bild zeigt eine typische Szene aus dem zweiten Level; die Lokomotive ist aus sechs, Flugzeuge und Zeppeline jeweils aus 2 Sprites zusammengesetzt.

In turbulenten Szenen sind mehr als 20 Sprites gleichzeitig auf dem Bildschirm zu sehen

Sound[Bearbeiten | Quelltext bearbeiten]

Das Spiel wird untermalt von Jean-Michel Jarres Musikstück "Équinoxe (Part 5)". Die Umsetzung für den Commodore 64 ist nicht nur sehr gut gelungen, sondern passt auch hervorragend zum Motiv der dahinrasenden Lokomotive, indem es an das regelmäßige Rattern der Räder auf den Schienen erinnert.

Zusätzlich werden einige Ereignisse während des Spiels (Schüsse, Explosionen, Auffüllen des Treibstoffs, Erhalt eines Extralebens) durch einfache Geräusche untermalt.

Hinweise[Bearbeiten | Quelltext bearbeiten]

Bedienung[Bearbeiten | Quelltext bearbeiten]

Das Spiel lässt sich wahlweise mit einem Joystick in Port 2 oder mit der Tastatur steuern.

Gestartet wird das Spiel und jedes neue Level mit einem Druck auf die Leertaste oder den Feuerknopf. Anschließend gilt die folgende Zuordnung:

  • Feuerknopf oder R : Rauchwolke ausstoßen. Knopf oder Taste so lange gedrückt halten, bis die Wolke die gewünschte Höhe erreicht hat.
  • Joystick nach oben oder D : An der nächsten Weiche links halten (in der Draufsicht: Auf das nächsthöhere Gleis wechseln).
  • Joystick nach unten oder C : An der nächsten Weiche rechts halten (in der Draufsicht: Auf das nächsttiefere Gleis wechseln).
  • Joystick nach rechts oder F : Geschoss in Fahrtrichtung abfeuern.

Joystickbewegungen und Betätigungen des Feuerknopfes können kombiniert werden. Bewegt man den Joystick nach rechts oben und drückt dabei den Feuerknopf, so feuert die Lokomotive ein Geschoss ab, stößt ein Rauchwölkchen aus und wechselt an der nächsten Weiche das Gleis.

Bildschirmaufbau[Bearbeiten | Quelltext bearbeiten]

Die nachfolgende Illustration zeigt den zweigeteilten Bildschirm sowie die Anzeigeelemente des Spiels. Interessant ist insbesondere die Anzeige des Treibstoffvorrats, um rechtzeitig nachzutanken, und der aktuelle Punktestand (alle 10.000 Punkte gibt es ein Extraleben).

In der obere Bildschirmhälfte wehrt der Spieler angreifende Flugzeuge und Zeppeline mit Rauchwolken ab und bekämpft Draisinen. Die untere Bildschirmhälfte kündigt Angreifer im voraus an und erlaubt es, sich auf sie einzustellen (zum Beispiel einer sich nähernden Draisine auszuweichen oder ein Flugzeug mit einem prophylaktisch ausgestoßenen Rauchwölkchen zu bekämpfen). Treibstoffdepots enlang der Strecke sind nur in der unteren Ansicht erkennbar.

Eines von drei angreifenden Flugzeugen sowie ein Zeppelin sind in der oberen Bildschirmhälfte noch nicht zu sehen, in der Draufsicht im unteren Bildschirmteil aber bereits erkennbar.

Gegner[Bearbeiten | Quelltext bearbeiten]

Loco Flugzeug.gif

Flugzeuge fliegen nur waagrecht und nähern sich der Lokomotive von hinten in einer von drei möglichen Höhen. Sowohl die Flugzeuge als auch die von ihnen abgeworfenen Bomben lassen sich mit Rauchwolken aus dem Schornstein der Lokomotive bekämpfen. Für ein abgeschossenes Flugzeug gibt es je nach Flughöhe zwischen 100 und 250 Punkten, für eine unschädlich gemachte Bombe 50 Punkte.


Loco Zeppelin.gif

Zeppeline nähern sich der Lokomotive von vorn in großer Höhe. Wie Flugzeuge fliegen sie nur waagrecht und lassen sich mit Rauchwolken bekämpfen. Ein abgeschossener Zeppelin ist 200 Punkte wert.


Loco Draisine.gif

Draisinen kommen der Lokomotive auf den Gleisen entgegen und müssen mit Geschossen abgewehrt werden, die die Lokomotive in Fahrtrichtung abfeuert. Eine abgeschossene Draisine wird mit 200 Punkten belohnt.


Loco Treibstoff.gif

Treibstoff nimmt die Lokomotive an Bord, indem sie die blau markierten und mit dem Wort "FUEL" kennzeichneten Felder auf den Gleisanlagen passiert. Der Inhalt ihres 36 Einheiten fassenden Treibstofftanks steigt dadurch um 8 Einheiten, maximal jedoch auf 100%. Punkte gibt es beim Tanken keine.

Tipps[Bearbeiten | Quelltext bearbeiten]

  • Zeppeline können der Lokomotive erst gefährlich werden, wenn sie sich unmittelbar über ihr befinden. Eine im richtigen Moment ausgestoßene Rauchwolke, die den Zeppelin an der Spitze trifft, lässt diesen gar nicht erst so weit kommen (linke Animation der nachfolgenden Galerie).
  • Flugzeuge bewegen sich immer nur waagrecht und fliegen im ersten Level in einer von zwei möglichen Höhen, in späteren Levels in einer von drei Höhen. Erkennt man in der unteren Bildschirmhälfte sich nähernde Flugzeuge, so kann man vorsorglich schon einmal zwei oder drei Rauchwolken in diese Höhen aufsteigen lassen. Mit etwas Glück treffen sie die Flugzeuge dann direkt am linken Bildschirmrand, so dass diese der Lokomotive nie gefährlich werden können (mittlere Animation).
  • Draisinen sind vor allem dann gefährlich, wenn sie erst im letzten Moment durch einen Gleiswechsel auf Kollisionskurs zur Lokomotive gehen und erst Sekundenbruchteile vor dem Zusammenprall bekämpft werden können. Durch ein frühzeitiges Ausweichen auf ein Nebengleis, das für die Draisine nicht erreichbar ist, kann die Lokomotive diese kritische Situation eventuell vermeiden.
  • Bleibt die Lokomotive wegen Treibstoffmangels liegen, so wird sie sofort von zahlreichen Gegnern angegriffen, die sich zudem deutlich schneller bewegen als bisher. In dieser Situation kann sich die Lokomotive durch rasches Ausstoßen vieler Rauchwölkchen eine Art "Schutzschirm" aufbauen, an dem Flugzeuge, Zeppeline und Bomben zerschellen, was in kurzer Zeit noch eine große Anzahl Punkte und möglicherweise sogar ein Extraleben bringen kann.


Ein wohlgezieltes Rauchwölkchen wehrt einen Zeppelin ab.
Mit etwas Geschick lassen sich Flugzeuge sogar bekämpfen, wenn sie gerade erst auf dem Bildschirm erscheinen...
... um ihnen keine Gelegenheit zu einem Bombenangriff zu geben.




Lösung[Bearbeiten | Quelltext bearbeiten]

Die "Lösung" von Loco besteht einfach darin, fehlerfrei über einen längeren Zeitraum hinweg jeden auftauchenden Gegner frühzeitig zu bekämpfen und währenddessen möglichst viele Treibstoffdepots anzusteuern.


Karte

Die nachfolgende Abbildung zeigt die Landschaft, durch die die Lokomotive im Kreis fährt. Die Karte ist 5440 Pixel breit, wird also bei einer Geschwindigkeit von 2 Pixeln pro Bildschirmaufbau alle 54,4 s vollständig durchfahren.

Vollständige Landschaft (obere Bildschirmhälfte)

Die Draufsicht der Gleisanlagen ist gegenüber der Landschaft im Maßstab 1:4 verkleinert, wird also mit einer Geschwindigkeit von 1 Pixel bei jedem zweiten Bildschirmaufbau durchquert. Zur leichteren Orientierung ist an beiden Enden der nachfolgenden Abbildung der Bahnhof eingezeichnet.

Draufsicht auf die Gleisanlagen (mit Bahnhof an jedem der beiden Enden)


Cheats[Bearbeiten | Quelltext bearbeiten]

In der CSDb gibt es Cracks mit Trainerfunktionen:


Loco Trainer.gif

Trainer von Remember mit vier verschiedenenen Optionen
Loco Trainer2.gif

Trainer von Talent mit zwei Optionen



Bewertung[Bearbeiten | Quelltext bearbeiten]

Bewertung der C64-Wiki-Benutzer (10=die beste Note):
5.67 Punkte bei 6 Stimmen (Rang 889).
Zur Stimmabgabe musst Du angemeldet sein.
C64Games 3 23.Juli 2022 - "geht so" - 21799 downs
Lemon64 7,4 23. Juli 2022 - 44 votes
Ready64 6,43 23. Juli 2022 - 7 voti
Rombachs C64-Spieleführer 7 September 1984 - "Urteil 3"
Crash 44% (Presentation 54%, Graphics 48%, Playablity 57%, Addictive qualities 40%, Value for money 51%) Issue 38 (March 1987)
Personal Computer Games 9/10 (Graphics 10/10, Sound 10/10, Originality 4/10, Lasting Interest 5/10) Issue 8 (July 1984)
Your Sinclair 6/10 (Graphics 5/10, Playability 6/10, Value for Money 6/10, Addictiveness 5/10) Issue 16 (April 1987)
Tilt Graphisme 5/5, Animation 4/5, Bruitage 3/5, Intérêt 2/5 N° 17 (Novembre/Décembre 1984)
Universal Videogame List 1.7/5 18. Februar 2023

Kritik[Bearbeiten | Quelltext bearbeiten]

Stephan64: "Hektisches Geballere ohne jede langfristige Strategie, das lediglich die Multitasking-Fähigkeiten des Spielers fordert. Die von mir trotzdem vergebenen 4 Punkte gehen auf das Konto von Ben Daglish, dessen Umsetzung von "Équinoxe (Part 5)" für den C64 meisterhaft gelungen ist."

Rombachs C64-Spieleführer: "Das Spiel macht den Eindruck eines ausgefallenen Ballerspiels, es sei denn auf höheren Spielstufen ändert sich mehr als die Länge der zu befahrenden Strecke und die Anzahl der Gegner (Urteil 3)."[2] Die vollständige Beschreibung des Spiels findet sich hier.

Sonstiges[Bearbeiten | Quelltext bearbeiten]

Cover[Bearbeiten | Quelltext bearbeiten]

Cover der Kassette zum Spiel "Loco"


Inlay[Bearbeiten | Quelltext bearbeiten]

Inlay zum Spiel "Loco"


Kassette[Bearbeiten | Quelltext bearbeiten]

Kassette zum Spiel "Loco"


Videomitschnitt[Bearbeiten | Quelltext bearbeiten]


Longplay des Spiels "Loco"

Bugs[Bearbeiten | Quelltext bearbeiten]

Die Anzahl der verbleibenden Leben ist nicht in einer Variablen gespeichert, deren Wert dann als Dezimalzahl auf dem Bildschirm angezeigt wird, sondern das Spiel initialisiert einfach zu Beginn die Speicherzelle an Adresse $0460 im Video-RAM mit dem Wert $33 (Bildschirmcode für die Zahl "3") und zählt diesen Wert dann je nach Spielsituation herauf oder herunter. Falls man es schafft, insgesamt mehr als als 9 Leben anzusammeln, so ergeben 9 Leben plus 1 Extraleben nicht etwa "10" Leben, sondern ":" (Bildschirmcode $3A, siehe linke Animation der nachfolgenden Galerie).

Greifen mehrere Flugzeuge gleichzeitig an, so zeigen sich zwischen den Sprites Artefakte, die auf ein unsauberes Sprite-Multiplexing hindeuten (rechte Abbildung, der untere Propellerflügel des linken Flugzeugs erscheint oberhalb des rechten).


Loco Bug1.gif

9 Leben plus ein 1 Extraleben ergeben... nicht "10", sondern ":" Leben
Loco Bug2.gif

Unsauberes Sprite-Multiplexing beim Angriff mehrerer Flugzeuge



Trivia[Bearbeiten | Quelltext bearbeiten]

Loco als 3D-Kunst
  • Die Bildschirmanzeige der Spielsituation (Seitenansicht oben, Draufsicht unten) ist bei Loco umgekehrt wie bei Segas Spiel "Super Locomotive", durch das sich der Autor Antony Crowther inspirieren ließ. Dies war nicht beabsichtigt, sondern ist der Tatsache geschuldet, dass Antony nur zehn Minuten lang beim Spielen von "Super Locomotive" zusehen konnte und sich später an die korrekte Bildschirmaufteilung nicht mehr erinnerte.[3]
  • "Équinoxe (Part 5)" von Jean-Michel Jarre wurde als musikalische Untermalung ausgewählt, weil Antony Crowther in der Musik zu "Super Locomotive" ein Stück dieses Komponisten erkannt zu haben glaubte.[4] Tatsächlich basiert die Begleitmusik zu "Super Locomotive" aber auf dem Titel "Rydeen" der japanischen Band "Yellow Magic Orchestra".[5]

Theme[Bearbeiten | Quelltext bearbeiten]

Die nachfolgende Abbildung zeigt die erste Seite der Begleitmelodie in der üblichen Notenschreibweise. Für eine kreative Weiterverwendung stehen die Noten auch als PDF-Dokument (Datei:Loco Theme.pdf) und in der ABC-Musiknotation (Datei:Loco Theme.abc.txt) zur Verfügung.


Musiknoten der Begleitmelodie (erste Seite), rekonstruiert durch Mitprotokollieren aller Schreibzugriffe auf den SID



Schnelllader[Bearbeiten | Quelltext bearbeiten]

Die Kassettenversion von Loco verwendet einen integrierten Software-Schnelllader, der beim Laden automatisch aktiviert wird und den Ladevorgang um etwa den Faktor 8 beschleunigt. Der Schnelllader lädt einfach ein BASIC-Programm (das im Fall von Loco aus einer einzigen Zeile mit einem SYS-Befehl besteht, gefolgt von den Binärdaten des Spiels) in den Hauptspeicher und startet es mit RUN. Dem eigentlichen Programmcode geht dabei eine 4 Byte lange Datenstruktur mit Anfangs- und Endadresse des Programms voraus. Durch eine optimierte Codierung (kürzere Intervalle für 0- und 1-Bits, kein Paritätsbit, keine doppelte Speicherung der Programmdaten) benötigt das Laden von Loco weniger als zwei Minuten, während die Datassettenroutinen des KERNAL für ein Programm dieser Größe rund eine Viertelstunde bräuchten.

Die Schnelllade-Routinen folgen im ersten Datenblock auf der Kassette direkt auf den Dateinamen und befinden sich somit bereits im Speicher, wenn die Meldung "FOUND LOCO BY A.R.C." auf dem Bildschirm erscheint. Anschließend nachgeladen wird nur noch eine kurze Datenstruktur, die sämtliche BASIC-Vektoren mit der Startadresse des Schnellladers überschreibt und damit einen Autostart der Laderoutine vorbereitet. Nach dem Laden der Programmdaten werden zunächst diese Vektoren wiederhergestellt und dann das Programm gestartet.

Der Autor der Routine hat keinerlei Anstrengungen unternommen, die Arbeitsweise des Schnellladers zu verschleiern und damit ein Extrahieren des Programms aus den Banddaten zu erschweren. Bricht man den Ladevorgang beim Erscheinen der Bildschirmmeldung "FOUND LOCO BY A.R.C" mit der RUN/STOP -Taste ab, deaktiviert den Autostart mit dem Befehl POKE 909,96 und startet den Schnelllader dann manuell durch Eingabe von SYS 849, so findet man nach dem Ende das Ladevorgangs das komplette Spiel im Hauptspeicher (im Adressbereich $0801-$BBFF) vor und kann es auflisten, mit RUN starten oder mit einer zuvor an $C000-$CFFF abgelegten Routine auf Diskette speichern.

Die genaue Funktionsweise dieses Schnellladers ist aus dem kommentierten Assemblerlisting ersichtlich. Die Routinen für die Synchronisation sowie für das Lesen eines Bits und eines Bytes sind identisch mit denjenigen im Schnelllader des Spiels "Aquanaut (Interceptor)", und weitgehend identisch mit denjenigen von "Elidon".


Loco Schnelllader.gif

Mit minimalem Aufwand ist der Programmcode von Loco frei zugänglich



Highscore[Bearbeiten | Quelltext bearbeiten]

Topscore von Riffislam
  1. Riffislam - 65.650 (01.01.2023)
  2. Stephan64 - 38.850 (15.07.2022)
  3. Niemand - 0 (tt.mm.jjjj)


2. Platz von Stephan64 3. Platz von Niemand
2. Platz von Stephan64 3. Platz von Niemand


Weblinks[Bearbeiten | Quelltext bearbeiten]

Magazine

Videos[Bearbeiten | Quelltext bearbeiten]

Quellen[Bearbeiten | Quelltext bearbeiten]

  1. Retro Gamer 196, S. 44
  2. Oswald Reim, Martin Scholer: "Rombachs C64-Spieleführer", Rombach, 1984, Seite 207
  3. Retro Gamer 196, S. 44
  4. Retro Gamer 196, S. 44
  5. Wikipedia: "Super Locomotive"


Artikel des Monats.gif Dieser Artikel wurde Artikel des Monats.