Cholo

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Cholo
Titelbild des Spiels
Titelbild des Spiels
Spiel Nr. 1307
Bewertung 7.50 Punkte bei 2 Stimmen
Entwickler Glyn Williams, Joey Headen
Firma Solid Image
Verleger Firebird
Release 1987
Plattform(en) BBC Micro, Amstrad CPC, C64, ZX Spectrum
Genre Simulation, Actionadventure
Spielmodi Einzelspieler
Steuerung
Medien
Sprache Sprache:englisch Sprache:deutsch


Beschreibung[Bearbeiten | Quelltext bearbeiten]

Das Spiel "Cholo" versetzt den Spieler in die von einem Atomkrieg zerstörte Metropole gleichen Namens. Durch die Ruinen dieser Stadt muss er einen kleinen Roboter namens "Rizzo" steuern, um nach dem Abklingen der radioaktiven Strahlung die in einem Bunker eingeschlossenen Überlebenden zu befreien. Auf welchem Weg dies geschehen soll, ist beim Start des Spiels völlig unklar; allerdings kann Rizzo an diversen Computern in den Gebäuden der Stadt andocken und auf diese Weise Textdateien mit wertvollen Hinweisen erhalten. Ferner finden sich auf diesen Computern teilweise Programme, mit denen sich die Fähigkeiten des Roboters erweitern lassen.

Auf seinem Weg durch die Stadt Cholo muss sich der Spieler vor anderen Robotern hüten, die Rizzo als Feind einstufen und teilweise sogar bekämpfen. Mit etwas Geschick kann der Spieler aber die Kontrolle über einige dieser Roboter übernehmen und sie fortan für die Erfüllung seiner Mission nutzen. Da sich diese Roboter hinsichtlich ihrer Fähigkeiten, beispielsweise ihrer Bewaffnung oder ihrer Widerstandsfähigkeit gegen radioaktive Strahlung, unterscheiden, ist für spezielle Aufgaben ein solcher Einsatz anderer Robotertypen sogar unabdingbar.

Schafft es der Spieler, anhand von gefundenen Hinweisen und mit Hilfe der von ihm kontrollierten Roboter, die Tür des Atombunkers aufzubrechen, so ist seine Mission erfolgreich abgeschlossen: Der überlebende Rest der Menschheit ist befreit und kann nun von Cholo aus die Erde wieder besiedeln.

Die Geschichte[Bearbeiten | Quelltext bearbeiten]

Dem Spiel liegt ein ausführliches Handbuch etwa im Format DIN A5 bei, in dem die Steuerung des Roboters sowie das Andocken an Computer und die Übernahme feindlicher Roboter ausführlich erläutert wird. Den größten Teil des Handbuchs nimmt aber die mehr als 40-seitige Hintergrundgeschichte des Spiels ein, die zwar in der deutschen Version zahlreiche Druckfehler enthält, ansonsten aber spannend geschrieben und durchaus lesenswert ist. Die folgenden Abschnitte fassen diese Vorgeschichte des Spiels kurz zusammen; wer sich intensiver mit "Cholo" beschäftigen möchte, für den empfiehlt sich aber die Lektüre der Hintergrundgeschichte in der Original-Bedienungsanleitung (S. 9—50).

Als Folge eines Atomkriegs ist die Erde verwüstet, und nur die Bewohner der Metropole Cholo haben in einem hochmodernen, unterirdischen Strahlenschutzbunker das Inferno überlebt. Seit Jahrhunderten wartet dieser verbliebene Rest der Menschheit nun Generation für Generation darauf, dass die radioaktive Strahlung an der Erdoberfläche soweit abklingt, dass die Menschen ihren Schutzraum endlich verlassen und die Erde neu besiedeln können. Geleitet wird diese Notgemeinschaft von einem hochentwickelten Computer, der zwar nicht sichtbar in Erscheinung tritt, jedoch über Lautsprecher mit einzelnen Bunkerbewohnern kommuniziert. Eine große Zahl von Medizinern und Psychologen sorgt dafür, dass sich die Menschen in ihr Schicksal fügen und sich willig die Wartezeit mit Computerspielen und anderen Zerstreuungen vertreiben.

Eine Ausnahme bildet ein kleines Team von Wartungstechnikern, das die technische Infrastruktur des Bunkers instand hält. Auch Jared, die vierundzwanzigjährige Hauptfigur der Geschichte, ist Teil dieses Teams. Zwar spielt auch er gern Computerspiele und erzielt in dem populären Spiel "RAT" sogar Bestleistungen, aber mit der Zugehörigkeit zum Wartungsteam hat er sich seinen Lebenstraum erfüllt: Er kann sein Interesse für Technik in den Dienst der Gemeinschaft stellen, anstatt untätig abzuwarten.

Eines Tages meldet das Überwachungssystem einen Sabotageversuch an der Infrastruktur des Bunkers. Als Verursacher kommen nur die Mitglieder des Wartungsteams in Frage, und der Verdacht fällt auf Jared. Obwohl dieser seine Unschuld beteuert, identifiziert ein Lügendetektor ihn als Täter. Jared wird aufgrund der Schwere des Vergehens aus der Gemeinschaft ausgestoßen und in eine Zone gebracht, aus der es keine Rückkehr gibt.

Dort kommt es zu einer Gegenüberstellung mit dem zentralen Computer, der ihn in die wahre Situation der Bunkerbewohner einweiht: An der Erdoberfläche hat die radioaktive Strahlung bereits seit Jahrhunderten ein ungefährliches Maß erreicht, so dass menschliches Leben außerhalb des Schutzbaus längst wieder möglich wäre. Allerdings lässt sich die Bunkertür nur von außen öffnen, und das Kommunikationssystem, das einen entsprechenden Befehl an die hierfür oberirdisch bereitstehenden Roboter übermitteln sollte, wurde im Krieg zerstört. Die einzige Chance auf Rettung ist ein kleiner Roboter vom Typ "Rat" an der Erdoberfläche, der sich von einem Terminal neben dem Zentralcomputer aus fernsteuern lässt.

Es stellt sich schließlich heraus, dass der zuvor gemeldete Sabotageversuch nur vorgetäuscht war, um Jared von den restlichen Bunkerbewohnern isolieren zu können, ohne dass diese Verdacht schöpfen und von ihrer tatsächlichen Situation erfahren. Aufgrund seiner Höchstleistungen im Computerspiel "RAT" — das in Wirklichkeit einen Simulator für die Steuerung dieses kleinen Roboters darstellt — ist Jared dazu ausersehen, seine Fähigkeiten zur Befreiung der Menschheit einzusetzen. Und natürlich schlüpft nun der Spieler in Jareds Rolle, während sich sein Commodore 64 in das Terminal verwandelt, das die Verbindung zum rettenden Roboter an der Erdoberfläche herstellt.

Gestaltung[Bearbeiten | Quelltext bearbeiten]

Während des ganzen Spiels ist auf dem Bildschirm ein Steuerungsterminal mit diversen Anzeigeelementen zu sehen. Den größten Anteil des Bildschirms nimmt links oben ein 160 × 136 Pixel großer Monitor ein, der in Drahtgitterdarstellung wahlweise eine Auswahl der zur Verfügung stehenden Roboter anzeigt oder ― während der Nutzung eines solchen Geräts ― das Bild wiedergibt, das die eingebaute Kamera des Roboters übermittelt. Unterhalb dieses Monitors ist in insgesamt vier Anzeigefeldern zu sehen, welche Zusatzprogramme und Textdateien momentan im Speicher des Roboters vorhanden sind.

Daneben besitzt das Terminal einen Textbildschirm mit einer Größe von 16 x 13 Zeichen (128 x 104 Pixeln), in dem Meldungen zum Verlauf des Spiels angezeigt werden, ferner einen Radarschirm von 64 × 64 Pixeln Größe sowie mehrere kleinere Messgeräte (Kompass, Strahlungsmessgerät und Schadensanzeige).


Zu Spielbeginn kontrolliert der Spieler nur einen kleinen Roboter vom Typ "RAT"
Patrouille durch die Ruinen von Cholo...
... und durch das menschenleere Zentralcomputergebäude



Grafik[Bearbeiten | Quelltext bearbeiten]

Die Grafikdarstellung erfolgt durchweg im Monocolor-Grafikmodus (Bitmap an Adresse $E000, Bildschirmspeicher an $CC00). Sprites werden vom Programm nicht verwendet; der einzige Spezialeffekt des VIC, der zum Einsatz kommt, ist ein pixelweises vertikales Scrollen, das die Bildschirmanzeige erzittern lässt, sobald der vom Spieler gesteuerte Roboter mit einem Hindernis kollidiert.

Die Frequenz, mit der die dreidimensionale Anzeige der Umgebung aufgefrischt wird, erscheint insbesondere verglichen mit den heutige üblichen Frame-Raten außergewöhnlich niedrig. Eine Analyse des Maschinencode zeigt allerdings, dass sich die Entwickler von "Cholo" erkennbar Mühe gegeben haben, die Rechenleistung des Commodore 64 bestmöglich auszunutzen. So wird die Drahtgitterdarstellung zunächst kompakt im Adressbereich $AE00—$B89F aufgebaut und anschießend — dank Loop Unrolling und kombiniertem Umkopieren und Löschen — mit der maximal möglichen Geschwindigkeit in die entsprechenden Zeilen des Bitmap-Speichers übertragen.

Sound[Bearbeiten | Quelltext bearbeiten]

Die Soundausgabe des Spiels ist sehr spärlich und beschränkt sich auf die schlichte, einstimmige Untermalung von Ereignissen im Spiel. Nur bei wenigen Anlässen erklingen komplexere Tonsequenzen (siehe Abschnitt "Theme").

Hinweise[Bearbeiten | Quelltext bearbeiten]

Das Ziel des Spiels "Cholo" geht aus der Hintergrundgeschichte, die dem Programm beiliegt, nur vage hervor: Die nach einem Atomkrieg in einem Strahlenschutzbunker eingesperrten Bewohner der Stadt Cholo sollen durch Öffnen des Bunkereingangs befreit werden — und das einzige Hilfsmittel, das dazu zunächst zur Verfügung steht, ist ein kleiner, schwach gepanzerter und mit einer Ionenkanone bewaffneter Roboter namens "Rizzo" vom Typ "Rat" (zu deutsch: "Ratte"). Dieser befindet sich bei Spielbeginn im Zentralcomputergebäude, südwestlich der Kreuzung "Main Street/Bridge Street", die sich auf der dem Spiel beiliegenden Karte finden lässt.

Der Spieler muss nun selbst herausfinden, mit welchen Schritten sich die gestellte Aufgabe lösen lässt, denn anfangs weiß er weder, wo sich der Bunker befindet, noch mit welchen Mitteln er diesen öffnen kann. Die Anleitung erläutert allerdings — zusätzlich zu den Kommandos für die Steuerung — die ersten Schritte recht ausführlich und konkret:

Zum einen lässt sich mit Rizzo die Kontrolle über andere Roboter übernehmen, indem man diese zunächst durch Schüsse betäubt, dann mit ihnen kollidiert und sich schließlich durch Eingabe eines Passworts bei ihnen einloggt. Beim Verlassen des Zentralcomputergebäudes, in dem sich Rizzo zu Beginn des Spiels befindet, trifft er beispielsweise direkt auf einen Roboter vom Typ "Hacker", den er auf diese Weise kapern kann (linke Animation der nachfolgenden Galerie) — aber beim Beschuss sollte man nur so viele Schüsse abgeben wie unbedingt nötig, um den ins Visier genommenen Roboter nicht unbeabsichtigt zu zerstören (mittlere Animation).

Zum anderen stehen in einigen Gebäuden von Cholo Computer, auf denen sich interessante Programme und Textdateien finden, so dass man auch nach diesen Ausschau halten sollte. Beispielsweise befindet sich in der südwestlichen Ecke des Zentralcomputergebäudes der Computer "Cyber1", an den man durch sanftes Anstoßen andocken kann, um die auf ihm gespeicherte Textdatei mit den Passwörtern aller Roboter auszulesen (rechte Animation).


Verlässt man direkt bei Spielstart das Gebäude, so ist der Roboter "Igor" vom Typ "Hacker" eine leichte Beute
Bei der Übernahme anderer Roboter sollte man nicht über das Ziel hinausschießen (im wörtlichen Sinne!)
Als erstes sollte man sich beim Computer "Cyber1" einloggen, um die Liste der Passwörter zu erhalten



Bildschirmaufbau[Bearbeiten | Quelltext bearbeiten]

Der nachfolgende Screenshot zeigt und erläutert den Bildschirmaufbau während der Steuerung eines Roboters. Im Menü-Modus sind dagegen auf dem Monitor links oben reihum alle Roboter zu sehen, die sich unter der Kontrolle des Spielers befinden und dementsprechend für die nächste Aktion ausgewählt werden können (siehe beispielsweise die linke Animation im Abschnitt "Gestaltung").

Typische Szene aus dem Spiel



Bedienung[Bearbeiten | Quelltext bearbeiten]

"Cholo" wird wahlweise mit einem Joystick in Port 2 oder mit der Tastatur gesteuert. Für einige Funktionen wie das Aktivieren des Menü-Modus, das Ein- und Ausschalten des Pause-Modus, das Laden und Speichern des Spielstands sowie spezielle Roboter-Steuerkommandos ist die Tastatur zwingend erforderlich:

  • RESTORE : Wechsel in den Menü-Modus
  • CRSR ⇓ : Pause-Modus einschalten
  • CRSR ⇒ : Pause-Modus ausschalten

Direkt nach dem Start des Programms befindet sich das Spiel im Menü-Modus; der Spieler kann also mit einem Druck auf den Feuerknopf direkt die Kontrolle über seinen zu diesem Zeitpunkt einzigen Roboter "Rizzo" vom Typ "Rat" übernehmen.

Kommandos nur im Menü-Modus:

  • F1 : Laden eines zuvor gesicherten Spielstands (anschließend muss der maximal 6 Zeichen lange Dateiname eingegeben, ggf. mit RETURN  abgeschlossen und mit Y  bestätigt werden).
  • F3 : Sichern des momentanen Spielstands (anschließend muss der maximal 6 Zeichen lange Dateiname eingegeben, ggf. mit RETURN  abgeschlossen und mit Y  bestätigt werden).
  • Joystick nach links oder Z : Vorigen Rampak wählen
  • Joystick nach rechts oder X : Nächsten Rampak wählen
  • SPACE : Momentan gewählten Rampak aktivieren (Textdatei lesen oder Programm ausführen)
  • Joystick nach vorne oder ; : Vorigen Roboter anzeigen
  • Joystick zurück oder / : Nächsten Roboter anzeigen
  • Feuerknopf drücken oder RETURN : Momentan angezeigten Roboter auswählen und zum Spiel zurückkehren

Wenn mit einem Computer oder Roboter verbunden:

  • Joystick nach vorne/Joystick zurück oder ; /\ : Auswahl zwischen den Optionen "Read" (Datei vom Computer/Roboter lesen), "Write" (Datei auf den Computer/Roboter schreiben) und "Disconnect" (Verbindung trennen)
  • Joystick nach links/Joystick nach rechts oder X /Z : Auswahl zwischen den Dateien auf dem Computer/Roboter
  • Feuerknopf drücken oder RETURN : Bestätigen einer ausgewählten Option/Datei

Steuerung der Roboter während des Spiels:

  • Joystick nach links oder X : Nach links drehen
  • Joystick nach rechts oder Z : Nach rechts drehen
  • Joystick nach vorne oder ; : Beschleunigen
  • Joystick zurück oder \ : Abbremsen (beim Schiff auch: Rückwärts beschleunigen)
  • Feuerknopf drücken oder RETURN : Ionenkanone abfeuern (falls vorhanden)

Zusätzliche Tasten zur Steuerung des Fliegenden Auges (Flyeye):

  • RETURN : Nach oben (höher fliegen)
  • SPACE : Nach unten (niedriger fliegen)
  • < : Nach links bewegen
  • > : Nach rechts bewegen
  • = : Kamera nach oben drehen
  •  : Kamera nach unten drehen
  • Joystick nach links oder Z : Nach links drehen
  • Joystick nach rechts oder X : Nach rechts drehen

Tasten zur Steuerung der Kameras:

  • Joystick nach vorne oder ; : Nach unten drehen
  • Joystick zurück oder \ : Nach oben drehen
  • Joystick nach links oder Z : Nach links drehen
  • Joystick nach rechts oder X : Nach rechts drehen

Tasten zur Steuerung des Flugzeugs:

  • Joystick nach vorne oder ; : Sinkflug
  • Joystick zurück oder \ : Steigflug
  • Joystick nach links oder Z : Linkskurve
  • Joystick nach rechts oder X : Rechtskurve
  • RETURN : Beschleunigen (mehr Schub)
  • SPACE : Verlangsamen (weniger Schub)

Tipps[Bearbeiten | Quelltext bearbeiten]

  • Zu Beginn des allerersten Spiels sollte man innerhalb des Zentralcomputergebäudes den Computer "Cyber1" aufsuchen und mit ihm Verbindung aufnehmen, um die Liste der Passwörter zu erhalten (linke Animation der nachfolgenden Galerie). Da sich diese Passwörter von Spiel zu Spiel nicht ändern, kann man sie sich notieren und anschließend nach und nach den einzelnen Robotern zuordnen.
  • Möchte man sich bei einem Roboter einloggen und weiß noch nicht, welches der Passwörter auf der Liste für diesen Roboter passt, so gibt man nach der ersten Kontaktaufnahme probeweise nacheinander die Passwörter von der Liste ein. Bricht der Roboter nach drei falsch eingegebenen Passwörtern die Verbindung ab, so stellt man erneut den Kontakt her und hat dann drei weitere Login-Versuche. Zuvor sollte man den angesteuerten Roboter durch mindestens zwei Schüsse betäuben, damit dieser nicht dank Selbstheilung vorzeitig wieder mobil wird und sich weiteren Login-Versuchen durch Flucht entzieht.
  • Direkt am Wasser, auf Inseln, Brücken oder Piers ist besondere Vorsicht geboten: Fällt ein Roboter ins Wasser, so ist er verloren. Daher am besten vorsichtshalber den Spielstand speichern, bevor man einen Roboter dorthin steuert.
  • Jeder Robotertyp verfügt über spezielle Fähigkeiten, die er in bestimmten Situationen einsetzen kann. Um welche Fähigkeiten es sich dabei handelt, lässt sich häufig aus dem Namen oder dem Typ des Roboters erahnen: "DrJohn" vom Typ "Doctor" kann zum Beispiel Roboter wiederbeleben, die durch Schüsse von Wachrobotern ausgefallen sind (linke Animation der nachfolgenden Galerie).
  • Laut Anleitung hat der Bunkereingang die Form eines Tetraeders — und am Nordende der "Main Street" findet sich ein solches, allerdings streng bewachtes Gebäude (mittlere Animation).
  • Mit dem Roboter "Anneka" vom Typ "Flyeye" kann man die Umgebung von Cholo erkunden, sofern die Strahlenbelastung dies zulässt — wahlweise zur Orientierung bei nachfolgenden Aktionen oder einfach aus Spaß (rechte Illustration).
  • Möchte man eine Pause einlegen, so sollte man nach Möglichkeit nicht in den Pause-Modus schalten, sondern stattdessen die Kontrolle an einen Roboter an einem ungefährlichen Ort übergeben (zum Beispiel an Anneka im Stadtzentrum). Auf diese Weise kann der Selbstheilungsmechanismus für alle Roboter weiterhin sein Werk tun. Allerdings kann dieser Mechanismus die Roboter nicht vollständig wiederherstellen: Während die Skala für Schäden von 0 (völlig intakt) bis 55 (schwerst beschädigt) reicht, reduziert der Mechanismus etwa alle 25 Sekunden den Schaden nur so lange jeweils um eine Einheit, bis das Minimum von 10 Einheiten erreicht ist.
  • Wie empfindlich ein Roboter auf Beschuss reagiert und wie schnell er sich dementsprechend betäuben lässt, ist von Typ zu Typ verschieden. So nehmen die Schäden beim explosiven Roboter "Koke" pro Treffer um 6 Einheiten zu, bei Hacker "Igor" und beim Doctor "DrJohn" um 4 Einheiten, beim Flyeye "Anneka" und bei den Wachrobotern um 2 und beim schwer gepanzerten Gort nur um 1.


Der Roboter "DrJohn" vom Typ "Doctor" kann einen von Wachrobotern zerstörten Kollegen wiederbeleben
Laut Anleitung hat der Bunkereingang die Form eines Tetraeders — und ist offensichtlich streng bewacht
Mit Flyeye "Anneka" lässt sich die Umgebung von Cholo erkunden — hier zum Beispiel der Leuchttum im Südosten




Lösung[Bearbeiten | Quelltext bearbeiten]

Der Lösungsweg, von dem Zeitpunkt, an dem man die Kontrolle über den kleinen Roboter "Rizzo" vom Typ "Rat" übernimmt, bis zur Befreiung der restlichen Menschheit aus dem Strahlenschutzbunker, gliedert sich in zahlreiche Schritte, die sich in zwei Kategorien einteilen lassen:

  • Schritte, die bei jeder Partie erforderlich sind, beispielsweise die Übernahme der Kontrolle über bestimmte andere Roboter. Diese Schritte sind in der nachfolgenden Beschreibung in normaler (gerader) Schriftart erläutert.
  • Gelegentlich ist es auch erforderlich, Informationen einzuholen, die im weiterem Spielverlauf benötigt werden, beispielsweise Passwörter oder Hinweise. Sie ändern sich von Partie zu Partie nicht und brauchen daher nur ein einziges Mal in Erfahrung gebracht werden, um sie dann für alle weiteren Spiele zu notieren. Diese Schritte sind nachfolgend in kursiver Schrift erklärt. Sie können auch ganz ausgelassen werden, wenn die betreffenden Informationen aus der nachfolgenden Beschreibung des Lösungswegs entnommen werden.

Karte[Bearbeiten | Quelltext bearbeiten]

Dem Spiel liegt eine Karte aus der Zeit vor dem Krieg (aus dem März 2611) bei, auf die sich alle Ortsangaben in der nachfolgenden Beschreibung beziehen (siehe Abschnitt "Zubehör"). Die nachfolgende Illustration zeigt eine verkleinerte Version dieser Karte, in die die Positionen aller Computer (grün) sowie die Orte, an denen sich die im Spiel benötigten Roboter üblicherweise finden lassen (rot), eingezeichnet sind. Ein blauer Hinweis zeigt zudem den Eingang zum Atomschutzbunker, in dem die Einwohner von Cholo gefangen sind.


Stadtplan von Cholo mit den üblichen Fundorten der Roboter und den Standorten der Computer.



Pläne[Bearbeiten | Quelltext bearbeiten]

Die Computer, auf denen Erweiterungsprogramme für die Roboter und Textdateien mit wertvollen Hinweisen gespeichert sind, befinden sich allesamt in verschiedenen Gebäuden in der Stadt Cholo. Um diese Computer und auch die teilweise hier deponierten Roboter aufzusuchen, sind Pläne sehr hilfreich, da im Gebäudeinneren das Radar inaktiv ist und nur der Kompass bei der Orientierung helfen kann.

Insgesamt fünf Bauten in Cholo lassen sich betreten, wobei sich der Eingang jeweils auf der Nordseite befindet und immer lediglich das Erdgeschoss zugänglich ist. Die nachfolgenden Pläne zeigen den internen Aufbau dieser Gebäude. Auf den Plänen sind jeweils nur diejenigen Elemente zu sehen, die bei der Navigation von Bedeutung sind: Hindernisse in Form von Wänden, Schreibtischen (dargestellt als weiße Rechtecke) und toten Robotern sowie Computer und Roboter, die erforderlich sind, um das Spiel zu lösen. Elemente, die keinen Einfluss auf die Bewegungen des vom Spieler gesteuerten Roboters haben (Fenster, schlanke Säulen und Deckenlampen) sind dagegen nicht eingezeichnet.



Zentralcomputergebäude
(grün: Computer "Cyber1")

Kirche auf Logic Island
(grün: Computer "Cyber2")

Gebäude am Golfplatz im Nordosten
(grün: Computer "Cyber3", rot: Roboter "Gort", blau: tote Roboter)




Zentrales Gebäude auf der unkartierten Insel
(grün: Computer "Cyber4", rot: Kamera "Ridley" und Roboter "Koke")

Alan M. Turing Science Institute
(grün: Computer "Cyber5")



Step by Step[Bearbeiten | Quelltext bearbeiten]

Das Spiel beginnt jeweils damit, dass der Spieler die Kontrolle über den kleinen Roboter "Rizzo" vom Typ "Rat" übernimmt. Dieser befindet sich im Inneren des Zentralcomputergebäudes und ist dort mit Blickrichtung Norden platziert.

  • Der Lösungsweg von "Cholo" besteht im wesentlichen darin, die Kontrolle über mehr und mehr Roboter in der gleichnamigen Stadt zu übernehmen und mit ihrer Hilfe zuletzt die Menschheit aus ihrem Strahlenschutzbunker zu befreien. Jeder Roboter ist durch ein aus fünf oder sechs Zeichen bestehendes Passwort gegen unbefugte Login-Versuche geschützt. Mit Hilfe von Zusatzprogrammen, die sich auf Computern in verschiedenen Gebäuden finden lassen, können die Roboter zusätzliche Fähigkeiten erwerben.
    Die Liste dieser Passwörter ist auf dem Computer 'Cyber1' gespeichert, der in der südöstlichen Ecke des Zentralcomputergebäudes zu finden ist. Der Spieler muss also einmalig diesen Computer aufsuchen und seinen Roboter mit ihm in Kontakt bringen. Anschließend kopiert er die auf dem Computer gespeicherte Datei "PasslText" in einen seiner Rampaks, trennt die Verbindung zum Computer wieder und lässt sich dann den Inhalt der Datei auf dem kleinen Textbildschirm anzeigen. Durch Ausprobieren (siehe Abschnitt "Tipps") ordnet er die angezeigten Passwörter nach und nach den verschiedenen Robotern zu.
    Die folgende Tabelle listet die einzelnen Roboter mit Namen, Typ, Passwort, initialem Aufenthaltsort und speziellen Eigenschaften auf. Im Spiel wirklich benötigt wird nur das Passwort für den Hacker "Igor" ("PLUGIN"). Alle anderen Passwörter werden automatisch ermittelt, sofern man zur Übernahme entweder Igor oder einen anderen, mit entsprechenden Hacking-Fähigkeiten nachgerüsteten Roboter einsetzt. Die Angaben zum Aufenthaltsort beziehen sich auf die Ortsnamen in der mitgelieferten Karte.
Bild Name Typ Passwort Bewaffnet Fundort Bemerkungen
Rizzo Rat REBELS Ja Im Zentralcomputergebäude
(südwestliche Ecke der Kreuzung Main Street/Bridge Street)
Von Spielginn an unter Kontrolle des Spielers
Gort Leady KLAATU Ja Im Flachbau südlich des Golfplatzes
(ganz im Nordosten)
Unempfindlich gegen Radioaktivität
Stark gepanzert, daher schwer zu betäuben (40 Schüsse)
Koke Cola LOREAN Nein Im mittleren Gebäude der unkartierten Insel
(ganz im Südosten)
Unempfindlich gegen Radioaktivität
Explosiv, daher bei Übernahme nicht öfter beschießen als nötig
Igor Hacker PLUGIN Nein Vor dem Zentralcomputergebäude
(Bridge Street, westlich der Kreuzung Main Street/Bridge Street)
Errät Passwörter von Robotern
Findet versteckte Dateien auf Computern
Ridley Camera LEGEND Nein Im mittleren Gebäude der unkartierten Insel
(ganz im Südosten)
Verrät auf dem Radarschirm die Lage der unkartierten Insel
Lässt nur rechts einen schmalen Durchgang zu Computer "Cyber4"
DrJohn Doctor STETHO Nein Zwischen den Pyramiden östlich der Brücke Bewegt sich sehr schnell
Kann bei Kontakt Roboter wiederbeleben, die von Wachen zerstört wurden
Anneka Flyeye BRAZIL Nein Neben dem Zentralcomputergebäude
(Main Street, südlich der Kreuzung Main Street/Bridge Street)
Kann fliegen und damit auch Wasserflächen überqueren
Felini Camera ACTION Nein Auf dem mittleren Gebäude der unkartierten Insel
(ganz im Südosten)
Verrät auf dem Radarschirm die Lage der unkartierten Insel
Aviata Plane FLYBOY Nein Auf dem Flugplatz am Cassandra Aerodrome
(ganz im Nordwesten)
Einstieg über Spitze des Flugzeugs
Queen Ship FREDDY Nein Am Pier östlich des Hafens
(im Südwesten)
Einstieg über Teleporter am Pier
Skum01 Guard PHILBY Ja Patrouilliert an zahlreichen Orten Für die Lösung des Spiels nicht erforderlich
Skum02 Guard MCLEAN Ja Patrouilliert an zahlreichen Orten Für die Lösung des Spiels nicht erforderlich
Skum03 Guard BLUNT Ja Patrouilliert an zahlreichen Orten Für die Lösung des Spiels nicht erforderlich
Skum04 Guard HOLLIS Ja Patrouilliert an zahlreichen Orten Für die Lösung des Spiels nicht erforderlich
  • Bei jedem Start des Spiels ist der Roboter "Igor" vom Typ "Hacker" direkt vor dem Eingang des Zentralcomputergebäudes zu finden, ergreift aber sofort die Flucht in Richtung Osten. In der nächsten Querstraße nach rechts (gen Süden) befindet sich zudem der Roboter "Anneka" vom Typ "Flyeye" in Bodennähe und damit in Reichweite von Rizzos Ionenkanone. Mit etwas Geschick kann man beide Roboter durch Schüsse betäuben und anschließend unter Kontrolle bringen (mittlere Animation der Galerie); das Passwort für den Hacker "Igor" lautet "PLUGIN", dasjenige für das Fliegende Auge "Anneka" lautet "BRAZIL". Sollte Anneka bereits abgehoben haben und damit für die Ionenkanone von Rizzo unerreichbar sein, so braucht es etwas Geduld und möglicherweise einen Ortswechsel, bis Anneka erneut landet.
  • Wie der Robotertyp "Hacker" schon erahnen lässt, hat Roboter "Igor" besondere Fähigkeiten im Umgang mit Computern. Daher sollte man ihn zurück in das Zentralcomputergebäude steuern und dort Kontakt mit dem Computer "Cyber1" aufnehmen. Igor findet auf dem Computer ein nützliches Programm namens "RadarPrg", das er in einen seiner Rampaks kopieren sollte, bevor er die Verbindung zu "Cyber1" wieder trennt. Anschließend sollte Igor dieses Programm an möglichst viele vom Spieler kontrollierte Roboter weitergeben, denn dieses Programm ersetzt den Stadtplan auf dem Radarschirm durch eine Übersicht, die die nähere Umgebung einschließlich der dort vorhandenen Roboter anzeigt (rechte Animation). Falls nötig, kann dieses Programm durch explizites Ausführen (siehe Abschnitt "Bedienung") auch wieder deaktiviert werden, wenn statt eines Radarbilds der näheren Umgebung wieder der Stadtplan benötigt wird.


Auf dem Computer "Cyber1" findet sich die Liste aller Passwörter für die Roboter
Rund 80 Sekunden nach Spielstart sind bereits drei Roboter unter Kontrolle
Nur der Hacker "Igor" findet auf dem Computer "Cyber1" das Radar-Programm



Inhalt der Datei "ReadmTxt"
  • Anneka (Flyeye) fliegt zur Insel "Logic Island" (vom Zentralcomputergebäude aus zunächst auf der "Main Street" nach Süden, dann nach dem zweiten Häuserblock nach cOsten, und positioniert sich auf dem Teleporter neben der Kirche. Igor (Hacker) nimmt den gleichen Weg, steuert dann aber den Teleporter auf dem Pier gegenüber der Insel an. Sobald Igor dort ankommt — oder spätestens, nachdem man noch einmal auf Anneka umgeschaltet hat — tauschen die beiden Roboter die Plätze. Igor geht in die Kirche und tastet sich der Wand entlang zum Computer "Cyber2" vor (linke Animation der nachfolgenden Galerie). Dort erhält er das Programm "SurvyPrg", mit dessen Hilfe nun zusätzlich zwei fest installierte Kameras mit den Namen "Felini" und "Ridley" genutzt werden können.
    Für das Lösen des Spiels sind diese Kameras zwar nicht erforderlich, allerdings erfährt der Spieler durch sie von der Existenz und der Lage einer in der Karte nicht eingezeichneten Insel. Wie die Strahlungsmessgeräte der Kameras erkennen lassen, ist diese Insel allerdings radioaktiv verseucht.
    Ebenfalls auf dem Computer "Cyber2" zu finden, aber für die Lösung des Spiels ohne Bedeutung ist die Datei "ReadmTxt" — sie enthält nur die Würdigung der Programmierer (siehe Illustration rechts).


Computer "Cyber2" in der Kirche auf Logic Island
Kamera "Felini" und die von ihr aufgenommene Umgebung
Kamera "Ridley" und die von ihr aufgenommene Umgebung



  • Als nächstes sollte man mit Rizzo (Rat) und Igor (Hacker) die Brücke über den McNeil River am Ostende der Bridge Road überqueren. Die Brücke wird von vier Wachen gesichert, die auf alle Roboter, die die Brücke überqueren wollen, das Feuer eröffnen (linke Animation der nachfolgenden Galerie). Am einfachsten lässt man einen der Roboter so lange vorrücken, bis die Schadensanzeige etwa auf 75% steht, und wechselt dann auf den anderen und verfährt genauso. Anschließend schaltet man auf "Anneka" (Flyeye) um und vertreibt sich etwas die Zeit, während die beiden anderen Roboter sich selbst reparieren. Nach einigen Minuten wiederholt man diesen Ablauf mit den inzwischen weitgehend instand gesetzten Robotern — so lange, bis Rizzo und Igor das gegenüberliegende Ufer erreicht haben.
  • Rizzo (Rat) bleibt nun an der Brücke zurück, während Igor (Hacker) nach Süden zum "Alan M. Turing Science Institute" fährt (mittlere Animation). Dort sucht er im Hauptgebäude den Computer "Cyber5" auf und lässt sich von ihm das Programm "Hack1Prg" geben (rechte Animation). Damit hat man nun zusätzlich die Kontrolle über "Queen", einen Roboter in Form eines Schiffes, der in der Nähe des Hafens von Cholo vor Anker liegt.


Die Brücke über den McNeil River wird von vier Wachrobotern gesichert
Direkt hinter der Brücke geht es nach Süden zum "Alan M. Turing Science Institute"
Versteckt im Zentrum des "Alan M. Turing Science Institute" stehen mehrere Exemplare des Computers "Cyber5"



  • Igor (Hacker) kehrt nun zur Brücke zurück und gibt dem dort wartenden Rizzo (Rat) eine Kopie des Programms "Hack1Prg". Daraufhin macht sich Rizzo auf den Weg zwischen den Pyramiden hindurch nach Osten. Hinter der letzten Pyramide biegt er nach Norden ab und fährt in Richtung Golfplatz bis zu einem großen, flachen Bauwerk. In diesem Gebäude findet er zum einen den Computer "Cyber3", an dem er dank des Programms "Hack1Prg" andocken kann und von dem er sich das Programm "Hack2Prg" geben lässt. Zum anderen stößt er dort in einer Nische neben toten Kollegen auf den Roboter "Gort" vom Typ "Leady". Die Kontrolle über diesen Roboter lässt dank des Programms "Hack1Prg" ohne Passwort übernehmen, nachdem Rizzo ihn durch Beschuss betäubt hat. Anschließend überträgt Rizzo alle Programme aus seinen Rampaks in den Speicher von Gort.


Zwischen Pyramiden hindurch macht sich Rizzo auf den Weg zum Gebäude am Golfplatz
Dank des Programms "Hack1Prg" findet Rizzo auf dem Computer "Cyber3" das Programm "Hack2Prg"
In einer Nische versteckt wartet der Roboter "Gort" vom Typ "Leadie" auf seine Reaktivierung



Hinweis zur Lösung, gefunden auf dem Computer "Cyber5" im "Alan M. Turing Science Institute"
  • Rizzo (Rat) verlässt nun das Gebäude, fährt zur Brücke und von dort nochmals zum "Alan M. Turing Science Institute", sucht in dem Gebäude erneut den Computer "Cyber5" auf und verbindet sich ein weiteres Mal mit ihm. Dank des von "Cyber3" übernommenen Programms "Hack2Prg" findet er in diesem Computer nun eine zusätzliche Textdatei "C-C-CTxt". Rizzo überträgt diese Datei in seinen Speicher (indem er das bereits auf mehreren anderen Robotern gesicherte Programm "SurvyPrg" überschreibt) und lässt sie anschließend auf dem Meldungsbildschirm ausgeben. Sie enthält den entscheidenden Hinweis, wie die Tür des Atomschutzbunkers aufgebrochen werden kann: Der bisher noch unbekannte Roboter "Koke" ist an einen ebenfalls noch nicht in Erscheinung getretenen Roboter namens "Flyboy" anzukoppeln, bevor beide zusammen gezielt zum Absturz gebracht werden.
  • Gort (Leadie) bewegt sich ebenfalls zur Brücke und überquert sie. Eventuelle Pausen, die nötig werden, damit sich seine durch Schüsse von Wachen erlittenen Schäden wieder reparieren können, nutzt man am besten, um schon einmal das Schiff "Queen" in den Hafen zu bringen. Hierbei ist es nur wichtig, die richtige Position für das Anlegen zu wählen; ein Abbremsen des Schiffes vor dem Erreichen des Stegs ist nicht erforderlich (linke Animation der nachfolgenden Galerie).
  • Ist Gort endlich im Stadtzentrum angekommen, so bewegt er sich über die Main Street südwärts zum Hafen und besteigt dort das Schiff "Queen", indem er auf den Teleporter in der Nähe des Piers fährt. Queen bringt ihn zu einer radioaktiv verseuchten Insel ganz im Südosten (ebenfalls linke Animation der nachfolgenden Galerie). Die Anlegestelle befindet sich auf der Südseite der Insel und muss wieder exakt, aber mit beliebiger Geschwindigkeit angesteuert werden. Die Existenz und die Lage der Insel ist dank der beiden Kameras "Felini" und "Ridley" bekannt.
  • Schaltet man die Kontrolle vom Schiff "Queen" auf den Roboter "Gort" (Leadie) um, so wird dieser auf die Insel versetzt. Da Gort beim Manövrieren auf dem schmalen Landungssteg leicht ins Wasser fallen kann, empfiehlt es sich, an dieser Stelle des Spielstand abzuspeichern. Gort macht sich dann auf den Weg nach Norden zum zentralen Gebäude — eine Aktion, die nur er vollbringen kann, da er als einziger unempfindlich gegen die auf der Insel vorhandene radioaktive Strahlung ist. Im Inneren stößt Gort zunächst auf die an der Decke befestigte Kamera "Ridley". Falls er sich in diesem Raum ganz an der rechten Wand entlang bewegt, so kann er eine Kollision mit der Kamera vermeiden und stattdessen den als Computer getarnten Roboter "Koke" vom Typ "Cola" zunächst durch Schüsse betäuben und dann mit ihm Verbindung aufnehmen (rechte Animation).


Die Überfahrt zur unkartierten, radioaktiv verseuchten Insel dauert mehr als 5 Minuten
Nach der Ankunft an der südlichen Küste der Insel macht sich Gort auf den Weg zum zentralen Gebäude
Ganz rechts entlang der Wand kann sich Gort an der Kamera "Ridley" vorbeiquetschen



  • Gort (Leadie) kopiert die in seinen Rampaks gespeicherten Dateien auf Koke (Cola) um kann danach an Ort und Stelle zurückbleiben, während sich Koke auf den Weg zurück zum Festland macht. In einem Gang ganz in der Nähe kann er noch Kontakt zum Computer "Cyber4" aufnehmen, auf dem er die Datei "AtmosTxt" findet. Vermutlich sollte diese Datei eine Beschreibung enthalten, wo sich der Bunkereingang befindet; allerdings ist die Datei leer bzw. lässt sich nicht lesen. Da sich auch sonst keine Funktion hat, kann der Besuch bei "Cyber4" unterbleiben.
  • Koke (Cola) kehrt zum Hafen der Insel zurück, wo noch das Schiff "Queen" liegt. Über den Teleporter am Pier begibt er sich an Bord, lässt sich in den Hafen von Cholo zurückbringen und verlässt dort das Schiff, indem man nach dem Anlegen die Steuerung wieder von "Queen" auf "Koke" umschaltet. Wieder an Land, macht sich Gort auf den direkten Weg nach Nordwesten zum Flughafen. Auf der Startbahn findet er den Roboter "Aviata" vom Typ "Plane" vor und dockt an seiner Spitze an, um die Kontrolle zu übernehmen. Die daraufhin erscheinende Meldung des Flugzeugs verrät sein Passwort "Flyboy", das bereits im Hinweis in der Textdatei "C-C-CTxt" genannt wurde (linke Animation der nachfolgenden Galerie).
  • Koke (Cola) dockt ein zweites Mal an der Spitze des Flugzeugs "Aviata" an und gelangt dadurch an Bord. Nun muss das Flugzeug nur noch zum Bunkereingang (nördlich des Stadtzentrums) geflogen und dort zum Absturz gebracht werden. Die Steuerung ist sehr gewöhnungsbedürftig, da das Flugzeug nicht dauerhaft eine Kurve fliegen kann, ohne seitlich wegzukippen. Zunächst muss das Flugzeug aber durch anhaltendes Drücken der RETURN -Taste für rund 20 Sekunden auf die zum Abheben nötige Geschwindigkeit gebracht werden, welche durch einen kurzen Signalton zurückgemeldet wird. In die mittleren Animation sind dann rechts unten die Joystickbewegungen eingeblendet, die nötig sind, um Aviata in der richtigen Höhe direkt zum Bunkereingang fliegen zu lassen: Eine erste Auslenkung des Joysticks für 2 Sekunden nach unten zum Abheben, danach abwechselnd mehrfach für je 1 Sekunde nach links und nach unten.
  • Nach dem Absturz wartet noch ein kurzer Schreck auf den Spieler, denn auf dem Textbildschirm erscheint lapidar die Meldung "The End. Or is it?" (zu deutsch: "[Das ist] das Ende. Oder etwa nicht?"). Nach etwas mehr als 10 endlosen Sekunden wird er dann aber für seine Leistung, für die Befreiung der Einwohner von Cholo aus ihrem Atomschutzbunker, mit einem Feuerwerk belohnt (rechte Animation).


Roboter "Koke" macht sich querfeldein auf den Weg vom Schiff zum Flughafen
Die Steuerung des Flugzeug-Roboters "Aviata" ist höchst gewöhnungsbedüftig
Mit Koke an Bord fliegt Aviata nach Nordosten und stürzt gezielt auf den Bunkereingang



Beschränkt man sich auf die notwendigen Teilschritte, ignoriert also alle Textdateien und verzichtet auf das Nahbereichs-Radar und die Kontrolle der Kamera-Roboter, so lässt sich "Cholo" ziemlich exakt innerhalb einer Stunde lösen (einschließlich der beiden je 5 Minuten dauernden Schiffspassagen zwischen der Stadt und der unkartierten Insel, zuzüglich eventueller Wartezeiten für die Selbstheilung der Roboter).


Cheats[Bearbeiten | Quelltext bearbeiten]

Im Internet gibt es keine Cheats mit einer Trainerfunktion. Die im Abschnitt "Interne Datenstrukturen" vorgestellten Möglichkeiten, einen gespeicherten Spielstand zu manipulieren, eröffnen aber zahlreiche Wege, um das Spiel in einer von den Autoren nicht vorgesehenen Weise zu vereinfachen.

Interne Datenstrukturen[Bearbeiten | Quelltext bearbeiten]

Für die Entwicklung eigener Trainerfunktionen und für die Analyse oder Manipulation der vom Spiel genutzten Daten sind Kenntnisse der Speicherbelegung und der internen Arbeitsweise hilfreich. Die folgende Tabelle stellt daher eine Reihe von Informationen über "Cholo" zusammen.

Adresse
im Speicher
Offset in Datei
(gesicherter Spielstand)
Inhalt Bemerkungen
$0054-$0055 Nord/Süd-Position des aktuellen Roboters Südgrenze=$0000 ... Nordgrenze=$FFFF
$0064-$0065 Ost/West-Position des aktuellen Roboters Westgrenze=$0000 ... Ostgrenze=$FFFF
$0067-$0068 Höhe über Grund des aktuellen Roboters Erdboden=$0000 ... Gipfelhöhe=$1FFF
$0071 Nummer des aktuellen Roboters 0=Rat "Rizzo", 1=Leady "Gort", 2=Cola "Koke", 3=Hacker "Igor", 4=Camera "Ridley",
5=Doctor "DrJohn", 6=Flyeye "Anneka", 7=Camera "Felini", 8=Plane "Aviata", 9=Ship "Queen",
10=Guard "Skum1", 11=Guard "Skum2", 12=Guard "Skum3, 13=Guard "Skum4"
$4056-$40C5 0-167 Positionen der Roboter
$4056: Rat "Rizzo"
$405E: Leady "Gort"
$4066: Cola "Koke"
$406E: Hacker "Igor"
$4076: Camera "Ridley"
$407E: Doctor "DrJohn"
$4086: Flyeye "Anneka"
$408E: Camera "Felini"
$4096: Plane "Aviata"
$409E: Ship "Queen"
$40A6: Guard "Skum1"
$40AE: Guard "Skum2"
$40B6: Guard "Skum3"
$40BE: Guard "Skum4"
+0, Bit 4..2: Typ des Roboters (%xxx000xx=Rat, %xxx001xx=Leady, %xxx010xx=Cola, %xxx011xx=Hacker, ...)
+0, Bit 1..0: Blickrichtung (%xxxxxx00=Norden, %xxxxxx01=Osten, %xxxxxx10=Westen, %xxxxxx11=Süden)
+2..3: Ost/West-Position ($0000..$FFFF, little endian)
+4..5: Höhe über Grund ($0000..$1FFF, little endian)
+6..7: Süd/Nord-Position ($0000..$FFFF, little endian)
$4296-$42D7 578-643 Namen der Roboter-Typen $4296: "RAT ", $429C: "LEADIE", $42A2: "COLA ", $42A8; "HACKER", $42AE: "TANK ", $42B4: "GUARD ", $42BA: "DOCTOR", $43C0: "FLYEYE", $43C6: "CAMERA", $43CC: "PLANE ", $43D2: "SHIP "
$42D8-$42E1 644-657 Meereshöhe des Aufenthaltsorts
$42D8: Rat "Rizzo"
$42D9: Leady "Gort"
$42DA: Cola "Koke"
$42DB: Hacker "Igor"
$42DC: Camera "Ridley"
$42DD: Doctor "DrJohn"
$42DE: Flyeye "Anneka"
$42DF: Camera "Felini"
$42E0: Plane "Aviata"
$42E1: Ship "Queen"
0..255
$42E3-$4336 655-738 Namen der Roboter $42E3: "RIZZO ", $42E9: "GORT ", $42EF: "KOKE ", $42F5: "IGOR ", $42FB: "RIDLEY", $4301: "DRJOHN", $4307: "ANNEKA", $430D: "FELINI", $4313: "AVIATA", $4319: "QUEEN ", $431F; "SKUM01", $4325: "SKUM02", $432B: "SKUM03", $4331: "SKUM04"
$4337-$438A 739-822 Passwörter der Roboter $4337: "REBELS", $433D: "KLAATU", $4343: "LOREAN", $4349 "PLUGIN", $434F: "LEGEND", $4355: "STETHO", $435B: "BRAZIL", $4361: "ACTION", $4367: "FLYBOY", $436D: "FREDDY", $4373: "PHILBY", $4379: "MCLEAN", $437F: "BLUNT ", $4385: "HOLLIS"
$43B5-$43C2 865-878 Zustand der Roboter
$43B5: Rat "Rizzo"
$43B6: Leady "Gort"
$43B7: Cola "Koke"
$43B8: Hacker "Igor"
$43B9: Camera "Ridley"
$43BA: Doctor "DrJohn"
$43BB: Flyeye "Anneka"
$43BC: Camera "Felini"
$43BD: Plane "Aviata"
$43BE: Ship "Queen"
$43BF: Guard "Skum1"
$43C0: Guard "Skum2"
$43C1: Guard "Skum3"
$43C2: Guard "Skum4"
%0xxxxxxx: übernommen, %1xxxxxxxx: frei
Bit 5-0: Schaden (0=unbeschädigt, 1-39: beschädigt, 40-55: betäubt)
$43FB-$4408 935-948 Inhalte der Rampaks als Bitmap
$43FB: Rat "Rizzo"
$43FC: Leady "Gort"
$43FD: Cola "Koke"
$43FE: Hacker "Igor"
$43FF: Camera "Ridley"
$4400: Doctor "DrJohn"
$4401: Flyeye "Anneka"
$4402: Camera "Felini"
$4404: Plane "Aviata"
$4404: Ship "Queen"
$4405: Guard "Skum1"
$4406: Guard "Skum2"
$4407: Guard "Skum3"
$4408: Guard "Skum4"
%xxxxxxx1: "PasslTxt", %xxxxxx1x: "Hack1Prg", %xxxxx1xx: "Hack2Prg", %xxxx1xxx: "RadarPrg",
%xxx1xxxx: "ReadmTxt", %xx1xxxxx: "C-C-CTxt", %x1xxxxxx: "AtmosTxt"%1xxxxxxx: "SurvyPrg"
$441C-$445B 968-1031 Namen der Dateien $441C: "PasslTxt", $4424: "Hack1Prg", $442C: "Hack2Prg", $4434: "RadarPrg", $443C: "ReadmTxt", $4444: "C-C-CTxt", 444C: "AtmosTxt", $4454: "SurvyPrg"
Parade aller Robotertypen (gekürzt um einige Duplikate)

Die Informationen in der obigen Tabelle lassen sich auch zur Manipulation der Dateien nutzen, in denen der momentane Spielstand festgehalten wird, denn hierbei handelt es sich einfach um eine Kopie des Speicherbereichs $4056—$4460. Die zweite Spalte der Tabelle gibt daher den Offset der Werte innerhalb der Spielstands-Datei an. Trägt man beispielsweise ab Offset 865 insgesamt 14 Nullbytes ein und lädt den Spielstand dann wieder, so hat man anschließend die Kontrolle über alle Roboter des Spiels (Animation rechts, aus Gründen der Speicherplatzersparnis um die mehrfach vorhandenen Wachroboter gekürzt). Füllt man zudem den Bereich 935-948 mit dem Wert $8E (dezimal 142), so sind zudem alle Roboter im Besitz aller wichtigen Programme.

Die Position der Roboter wird sowohl in Nord/Süd-Richtung als auch in Ost/West-Richtung jeweils durch einen 16-Bit-Wert angegeben, wobei die Kanten des Spielplans im Süden bzw. Westen die Koordinate $0000, im Norden bzw. im Osten die Koordinate $FFFF haben. Ein Überschreiten der Ränder wird dadurch verhindert, dass dort eine hohe Strahlenbelastung herrscht und jeder Roboter vor dem Erreichen des Spielplanrands zugrundegeht.

Die Wände aller Gebäude, die sich betreten lassen, zeigen exakt in eine der Himmelsrichtungen. Jedes derartige Bauwerk ist quadratisch und hat im oben beschriebenen Koordinatensystem eine Ausdehnung von 1024 × 1024 Einheiten; die Koordinaten der Gebäudeecken sind ganzzahlige Vielfache von 256. Die Bauten sind im Inneren von Wänden unterteilt, deren Abstände 128 Einheiten oder ein ganzzahliges Vielfaches davon betragen, so dass in jeder Himmelsrichtung maximal 8 Räume bzw. Flure nebeneinander liegen können (siehe Abschnitt "Pläne").

Bewertung[Bearbeiten | Quelltext bearbeiten]

Bewertung der C64-Wiki-Benutzer (10=die beste Note):
7.50 Punkte bei 2 Stimmen.
Zur Stimmabgabe musst Du angemeldet sein.
Lemon64 6,7 1. Juni 2025 - 23 votes
Zzap64! 62% (Presentation 79%, Graphics 68%, Sound 48%, Hookability 53%, Lastability 73%, Value 44% No. 25 (May 1987)
Commodore User 9/10 (Graphics 8/10, Sound 3/10, Toughness 8/10, Endurance 9/10, Value 8/10) No. 43 (April 1987)
Your Commodore Originality 8/10, Graphics 6/10, Playability 7/10, Value 7/10 No. 33 (June 1987)
Computer and Video Games Graphics 8/10, Sound 7/10, Value 6/10, Playability 8/10 No. 68 (June 1987)
Happy Computer 81% (Grafik 50%, Sound & Musik 7%) Spiele-Sonderheft 3
Aktueller Software-Markt Grafik 8/12, Sound 8/12, Spielablauf 10/12, Motivation 11/12, Preis/Leistung 11/12 Nr. 5 (Mai 1987)
Your Sinclair 72°/100° Issue 41 (May 1989)
Datormagazin 3.3/5 (Grafik 3/5, Ljud 2/5, Spielvärde 5/5, Priswärde 3/5) No. 4-5 (June-July 1987)
Universal Videogame List 3.8/5 1. Juni 2025


Kritik[Bearbeiten | Quelltext bearbeiten]

Stephan64: "Cholo war damals eines der wenigen Spiele, die ich im Original hatte — und ich habe mir die Zähne daran ausgebissen. Ich war hochmotiviert dank der packenden Hintergrundgeschichte und fasziniert von der Möglichkeit, auf beliebigen Wegen durch die Ruinenstadt Cholo streifen zu können — aber was war zu tun? Durch Manipulation von gespeicherten Spielständen hatte ich schnell die Kontrolle über alle Roboter, aber der Sinn des Spiels blieb mir bis zuletzt ein Rätsel. Wie schön, dass sich das nun nach fast 40 Jahren doch noch geklärt hat... und 7 Punkte von mir für ein faszinierendes Spiel, das allerdings seiner Zeit voraus war und etwas mehr Rechenleistung benötigt hätte, als der C64 bieten konnte."

Sonstiges[Bearbeiten | Quelltext bearbeiten]

Cover[Bearbeiten | Quelltext bearbeiten]


Cover der Kassettenversion
Rückseite der Kassettenversion



Inlay[Bearbeiten | Quelltext bearbeiten]


Inlay der Kassettenversion



Kassette[Bearbeiten | Quelltext bearbeiten]

Kassette zum Spiel "Cholo"

Theme[Bearbeiten | Quelltext bearbeiten]

Während des Spiels sind meist nur einstimmige, kurze Geräusche zu hören, die das Spielgeschehen untermalen. Die einzigen Anlässe, bei denen etwas komplexere Tonsequenzen erklingen, sind das Andocken an einen anderen Roboter und das Verlassen des Schiffs. Die nachfolgende Galerie zeigt diese Tonsequenzen in der üblichen Notenschreibweise, wobei jeweils zum nächsten Halbton hin gerundet werden musste, da das Programm nur das höherwertige Byte des Frequenzregisters beschreibt. Für eine kreative Weiterverwendung aller Melodien stehen die Noten auch als PDF-Dokument (Datei:Cholo Theme PDF.pdf) und in der ABC-Musiknotation (Datei:Cholo Theme.abc.txt) zur Verfügung.


Tonsequenz beim Andocken an einen Roboter, rekonstruiert durch Mitprotokollieren aller Schreibzugriffe auf den SID
Tonsequenz beim Verlassen des Schiffs



Videomitschnitt[Bearbeiten | Quelltext bearbeiten]


Longplay auf dem BBC Micro

Bugs[Bearbeiten | Quelltext bearbeiten]

Das Spiel "Cholo" weist zahlreiche Bugs auf, die allerdings den Spaß nicht oder nur in geringen Maße trüben. Zum einen handelt es sich dabei um Anzeigefehler, wenn die Darstellungsroutinen des Programms überfordert sind oder die zugrundeliegenden Objektkoordinaten nicht korrekt sind:

  • Die Entscheidung, welche Objekte sichtbar sind und welche nicht, trifft das Programm teils zu großzügig, teils zu restriktiv. Das Anzeigen von eigentlich verdeckten Kanten (zu sehen bei zahlreichen Animationen in diesem Artikel) lässt sich bei Drahtgitterdarstellung durchaus akzeptieren; das Ausblenden von Objekten, auf die die Kamera direkt gerichtet ist, ist dagegen störend (linke Animation der nachfolgenden Galerie; das pyramidenförmige in der Mitte des Monitors verschwindet zeitweise).
  • Bei der Positionierung des Schiffes wird offensichtlich die Höhenangabe fehlerhaft berechnet, so dass das Schiff gelegentlich in der Luft mehrere Meter über dem Pier ankert (rechte Illustration).


Fehlerhaftes Ausblenden von Objekten
Eine unkorrekte Berechnung der Höhe lässt das Schiff im Hafen schweben



Zum anderen gibt es zahlreiche Fehler, die erkennen lassen, dass vor der Veröffentlichung des Spiels vor allem solche Programmpfade getestet wurden, die zur Erfüllung der Mission (der Befreiung der im Atombunker eingeschlossenen Überlebenden) erforderlich sind. Nutzt man die Freiheitsgrade, die das Spiel bietet, in anderer Weise, so kommt es an zahlreichen Stellen zu teils absonderlichen Fehlfunktionen:

  • Da die Roboter (mit Ausnahme des Schiffes) keinen Rückwärtsgang haben, kann es passieren, dass sie in einer Ecke eines Gebäudes festhängen und nicht mehr herausmanövrieren können (linke Animation der nachfolgenden Galerie).
  • Falls der Roboter "Koke" vom Typ "Cola" das Flugzeug "Aviata" wieder verlassen möchte, nachdem er es bereits betreten hat, so findet er sich nicht etwa auf dem Rollfeld wieder, sondern im Hafen — und fällt entweder direkt ins Wasser oder kollidiert periodisch mit dem dort ankernden Schiff "Queen" (mittlere Animation).
  • Falls man gleich zu Spielbeginn den Roboter "Rizzo" vom Typ "Rat" direkt zum Hafen steuert und dort ins Meer plumpsen lässt, so findet man sich nach einem Neustart im Hafenbecken wieder, wo sich der Roboter über das Wasser bewegen kann (rechte Animation).


Rizzo (Rat) hängt in einer Ecke eines Gebäudes fest
Einmal ins Flugzeug "Aviata" eingestiegen, sollte der Roboter "Koke" (Cola) nicht noch einmal aussteigen
Nach einem Sturz ins Hafenbecken wird Rizzo (Rat) zum Schiff


Zuletzt fällt noch auf, dass die Textdatei "AtmosTxt" zwar erst nach langen und aufwendigen Vorbereitungen gefunden werden kann, dann aber leer ist bzw. sich nicht lesen lässt. Vermutlich sollte sie eine Ortsangabe oder Wegbeschreibung zur Spitze des Bunkereingangs liefern.

Schnelllader[Bearbeiten | Quelltext bearbeiten]

Die Kassettenversion von Cholo verwendet gleich zwei unabhängige, integrierte Software-Schnelllader, die beim Laden automatisch aktiviert werden, den Ladevorgang aber nur etwa um den Faktor 3,2 beschleunigen. Eine detaillierte Analyse der Laderoutinen offenbart den Grund für diese eher dürftige Performance: Zum einen enthält der erste geladene Programmteil gar nicht den Schnelllader, sondern nur eine kurze Befehlssequenz, die ihrerseits dann mit Hilfe des Kernals ein 512 Byte großes Modul mit dem ersten der beiden Lader einliest.

Zum anderen verwenden diese Laderoutinen dann zwar kürzere Codierungen für 0- und 1-Bits als der Kernal, sind aber ansonsten vor allem darauf optimiert, ihre eigene Arbeitsweise zu verschleiern und ein Rekonstruieren des Spiels durch Analyse der Banddaten zu verhindern. Hierzu gehört auch, dass der erste nachgeladene Programmabschnitt durch XOR-Verknüpfung mit dem Code des Schnellladers verschlüsselt ist; dadurch besteht er — anders als sonst üblich — zu fast als 50% aus 1-Bits, welche wiederum durch längere Impulse codiert werden.

Beide Schnelllade-Routinen lesen eine beliebig lange Folge von Blocks vom Band und platzieren diese — nicht notwendigerweise direkt aufeinanderfolgend — im Hauptspeicher des C64. Der erste Block ist dabei nur 64 Bytes lang und enthält einen zusätzlichen Schlüssel, der in den Adressbereich $0200...$023F übertragen und später zur Decodierung des Programmcode genutzt wird; alle weiteren Blocks sind 256 Bytes lang. Der erste Schnelllader nimmt zudem vor jedem Block eine erneute Synchronisierung des C64 mit dem Datenstrom vor und verschwendet dadurch viel Zeit und auch Platz auf der Kassette.

Die erste Schnelllade-Routine erwartet vor jedem Block einen 4 Byte langen Header, der das Synchronisationszeichen des Folgeblocks (1 Byte), die Blocknummer (1 Byte) und die Ladeadresse (2 Bytes im Little Endian-Format) enthalten. In Block Nummer 0 schließen sich an diesen Header 64 Datenbytes an, ansonsten 256 Datenbytes. Anstatt die Datenstruktur nun aber mit der Prüfsumme abzuschließen, kommt nun noch ein Byte, das angibt, wie viele zusätzliche Füllbytes (zwischen 1 und 31 Bytes) folgen, die lediglich überlesen und ignoriert werden. Allein schon dieser Ballast erhöht das Datenvolumen bei 72 Blocks und einer durchschnittlichen Anzahl von rund 15 Füllbytes (zzgl. Längenangabe) pro Block um insgesamt 1076 Bytes. Auf die sich anschließende Prüfsumme folgt noch eine Adresse, die nach dem Laden des Blocks angesprungen wird und meist auf den Schnelllader selbst zeigt; zudem sind in den Datenstrom insgesamt 4 Blocks eingestreut, mit denen sich der Schnelllader teilweise selbst überschreibt. Viele der hier beschriebenen Datenelemente sollen wohl nur dem Zweck dienen, eine Rekonstruktion der Programmdaten zu erschweren.

Die erste Schnelllade-Routine lädt einen Programmabschnitt an Adresse $1100...$52FF und einen Decodierer an $C400–$C4FF, und übergibt dann die Kontrolle an den soeben geladenen Decodierer. Dieser entschlüsselt daraufhin zunächst sich selbst und dann den anfangs geladenen Programmabschnitt, bevor er einen darin an Adresse $5100–$52FF enthaltenen, zweiten Schnellader an Adresse $C500 umkopiert und ausführt. Zuvor extrahiert er noch aus den bereits geladenen Daten den Ladebildschirm (Bitmap wird umkopiert von $3100 nach $E000 und Video-RAM von $2D00 nach $CC00), füllt das Farb-RAM mit dem Wert $03 (Code für Bildschirmfarbe "Türkis") und schaltet dann den VIC in den Multicolor-Bitmap-Modus.

Der zweite Lader wiederum erwartet vor jedem weiteren Datenblock auf Band einen 7 Byte langen Header, der die Blocknummer (1 Byte), die Ladeadresse, die Endadresse der gesamten Blocksequenz und die Einsprungadresse des enthaltenen Programmteils (alle Adressen jeweils 2 Bytes im Little Endian-Format, Einsprungadresse $0000 bedeutet "Programmteil nach dem Laden nicht anspringen") enthalten. Er lädt zwei weitere, unverschlüsselte Programmabschnitte in den Speicherbereiche $3000...$ACFF und $E000...$FFFF. Der Sprungvektor wird allerdings nicht genutzt, sondern der Schnellader zerstört zuletzt noch die Decodierroutine durch Überschreiben mir Nullbytes und löst dann einen BRK-Befehl aus, der schließlich zur Startadresse $4461 des Spiels führt.

Ebenfalls nicht genutzt wird die kuriose Funktionalität, dass der Schnelllader periodisch den Sprungvektor für die USR-Funktion prüft und mit dessen Defaultwert $B242 vergleicht. Ergibt sich dabei eine Abweichung, so wird die geänderte USR-Funktion über einen Unterprogrammaufruf angesprungen. Lässt man also beispielsweise den USR-Vektor durch Eingabe der folgenden Befehle auf die Kaltstart-Routine des C64 zeigen, so löst der Schnelllader nach wenigen Sekunden einen Reset des Rechners aus:

POKE 785,226 : POKE 786,252 

Der Schnelllader von "Cholo" ist identisch mit demjenigen von "Spiky Harold" und sehr ähnlich zu demjenigen von "Willow Pattern". Seine genaue Funktionsweise ist aus dem kommentierten Assemblerlisting ersichtlich.

Emulator-Einstellungen[Bearbeiten | Quelltext bearbeiten]

Obwohl sich die Autoren des Spiels sichtlich Mühe gegeben haben, den Maschinencode des Spiels zu optimieren, sind die niedrige Frame-Rate und die resultierenden langsamen Bewegungen der Roboter doch nach einiger Zeit etwas störend. Lädt man das Programm dagegen auf einem Emulator und stellt dessen Geschwindigkeit auf etwa 300% der Leistung eines realen Commodore 64 ein, so lässt sich "Cholo" flüssig spielen.

Trivia[Bearbeiten | Quelltext bearbeiten]

  • Eine Vorschau auf das Spiel in der Zeitschrift "Computer and Video Games" (siehe Abschnitt "Weblinks") informiert darüber, welchen ursprünglichen Zweck die verschiedenen Roboter-Typen hatten. So sollte das fliegende Auge "Anneka" ursprünglich den Straßenverkehr in Cholo überwachen; Doktor "DrJohn" war für dezentrale Reparaturen von defekten Robotern vorgesehen.
  • Nimmt man an, dass an den Schreibtischen in den Gebäuden einstmals Menschen ihren Arbeitsplatz hatten und die Tische dementsprechend rund 2 m breit sein sollten, so lassen sich auf Grundlage der Objektkoordinaten (siehe Abschnitt "Interne Datenstrukturen") die Abmessungen der Spielwelt abschätzen: Die Gänge in den Gebäuden sind demnach rund 4 m breit; die quadratischen Gebäude haben eine Grundfläche von 32 × 32 m und die Stadt Cholo erstreckt sich über ein Gebiet von rund 2 × 2 km. Die maximale Flughöhe des fliegenden Auges "Anneka" und des Flugzeugs "Aviata" beträgt rund 250 m und die maximale Geschwindigkeit von Aviata liegt bei rund 16 m/s (knapp 60 km/h). Alle anderen Roboter erreichen im Freien eine Geschwindigkeit von rund 8 m/s (knapp 30 km/h), innerhalb von Gebäuden rund 45 cm/s (1,5 km/h).
  • Die Sequenz von Nullen und Einsen, die beim Andocken an einen anderen Roboter auf dem Hauptmonitor erscheint, ist keine codierte Geheimbotschaft, sondern einfach eine Auflistung des jeweils niederwertigsten Bits aller Speicherzellen im Adressbereich $FF50—$044F (mit Wraparound von $FFFF nach $0000, also unter anderem von Zeropage und Stack).

Zubehör[Bearbeiten | Quelltext bearbeiten]

Dem Spiel liegt ein Stadtplan von Cholo mit den Abmessungen 27,5 × 40 cm bei. Obwohl die Anleitung ausdrücklich darauf hinweist, dass dieser Plan die Struktur von Cholo vor dem Krieg zeigt, ist er doch beim Navigieren sehr hilfreich. Allerdings ist beispielsweise die Lage des Flughafens falsch eingezeichnet, dessen Rollfeld deutlich weiter nördlich und von Wald umgeben sein müsste. Des weiteren ist die Karte bewusst unvollständig (siehe Abschnitt "Lösung").


Stadtplan von Cholo



Highscore[Bearbeiten | Quelltext bearbeiten]

In diesem Spiel ist keine Highscore sinnvoll.

Weblinks[Bearbeiten | Quelltext bearbeiten]

Wikipedia: Cholo_(video_game) Sprache:english
Magazine