Moorhuhn: Tipps & Tricks

Hier hab ich ein paar Tipps & Tricks zusammengefasst, ehrlichgesagt, weniger Tricks, da man beim MH eigentlich nur ballern muss:), sondern mehr Hex-Cheats.



Hier wird euch nun beschrieben, wie man seine Punkte bei Moorhuhn stark verbessern kann ;):

Zunächst muss man die Datei MOORHUHN.SAV mit einem Hex-Editor (z.B. Hex Workshop) laden. Aus der folgenden Tabelle lässt sich entnehmen, welcher Spielstand zu dem entsprechenden Offset gehört:

16 bis 25 Name "1.Platz"
26 bis 35 Name "2.Platz"
36 bis 45 Name "3.Platz"
46 bis 55 Name "4.Platz"
56 bis 65 Name "5.Platz"
68 und 69 Punkte "1.Platz"
72 und 73 Punkte "2.Platz"
76 und 77 Punkte "3.Platz"
80 und 81 Punkte "4.Platz"
84 und 85 Punkte "5.Platz

Wenn man den gewünschten Spielstand eingeben möchte benötigt man noch einen Dezimal - Hex Konverter (bei Hex Workshop integriert), mit dem der gewünschte Wert ins Hexadezimal-System umgerechnet wird. Aus 1400 Punkten werden dann beispielsweise 0578 (immer 4-stellig). Bevor man diesen Wert in die entsprechenden OFFSET-Positionen einfügt, müssen die ersten beiden Stellen mit den beiden hinteren gedreht werden. Also wird aus der 0578 eine 7805. 
Wenn man das Spiel startet, dann [Alt] [Tab] drückt, findet man die Spieldateien bekanntlich im Verzeichnis c:\windows\temp. Man sollte diese Dateien nun in ein eigenes Verzeichnis kopieren (falls nicht schon geschehen), und einen Commandprompt öffnen, dann kann man folgende Commandline-Optionen hinter dem Spielnamen verwenden: 

windowed Startet das Spiel im Fenstermodus
log <=LOGFILE> Erstellt eine Log Datei
spy Öffnet ein Debugging Fenster
safe Schaltet alle Extrafunktionen ab
nospy Zeigt kein Debuggingfenster
nojoy Sucht nicht nach einem Joystick
noddraw Sucht keinen Directdraw Treiber
nocpucheck Erkennt den Prozessor nicht intern
nodsound Sucht nicht nach Directsound Einstellungen
nonetwork Prüft nicht auf Netzwerkunterstützung
noreg Verwendet nicht die Registry Settings

Jeder, der diesen nervigen Piloten und den Ballonfahrern mal mit Schrot sagen will, dass der Durchflug durch ein Jagdgebiet auf eigene Gefahr erfolgt, kann dies (mit Aufbesserung seines Punktekontos) mittels eines Hex-Editors tun:

Welcher Punktabzug? Adresse:
Ballonfahrer $000043AE (-B1)
Flugzeug $000046DF (-E2)
Flugzeugwerbung $00004799 (-9C)
Wegweiser (keine Pluspunkte!) $00006819 (-1C)


Du kannst zwar für´s auf-den-Wegweiser-Schießen KEINE Punkte bekommen, aber keine abgezogen bekommen, wenn du´s tust, ist doch auch was, oder? 

Folgende Änderungen kann nan an der Datei Moorhuhn.exe durchführen:

Spieldauer:
Ab Adresse 6C17h steht die Spieldauer als 4-byte-Wert in Millisekunden. Defaultwert ist 90-5F-01-00 (= 90.000 ms = 1,5 Minuten). Dementsprechend hat man doppelt so viel Zeit, wenn man 20-BF-02-00 (= 180.000 ms = 3 Minuten) einträgt. Meiner Erfahrung nach sollte man nicht mehr als 80-A2-19-00 (also 1.680.000 ms = 28 Minuten) eintragen, da das Spiel sonst abstürzen kann.

Punkte pro Moorhuhn:
Die folgende Tabelle gibt an, welche Adressen man ändern muss, um zu beeinflussen, wieviel Punkte welcher Gegenstand bringt. Zu beachten ist hier, dass man nur übliche Punktzahlen (5,10,25,-25) eintragen sollte, damit diese vom Spiel auch angezeigt werden können (im Prinzip könnte man auch andere Werte eintragen). Es handelt sich auch hier um 4-Byte Zahlen.

Gegenstand Adresse(n) Defaultwert
Moorhuhn klein 3A84h 19-00-00-00 (= 25)
3C9Dh 19-00-00-00 (= 25)
3F5Eh 19-00-00-00 (= 25)
Moorhuhn mittel 3B18h 0A-00-00-00 (= 10)
3D39h 0A-00-00-00 (= 10)
4092h 0A-00-00-00 (= 10)
Moorhuhn groß 3BACh 05-00-00-00 (= 5)
3DD5h 05-00-00-00 (= 5)
41C8h 05-00-00-00 (= 5)
Moorhuhn vorne [Gockel] 4270h 19-00-00-00 (= 25)
Flugzeug 46DFh E7-FF-FF-FF (= -25)
Werbebanner 4799h E7-FF-FF-FF (= -25)
Ballon 43AEh E7-FF-FF-FF (= -25)
Windmühlenblatt 2E454h 19-00-00-00 (= 25)
Zylinder 2EA71h 19-00-00-00 (= 25)

Punkte bei Schuss auf Straßenschild:
Den Wegweiser habe ich noch nicht geknackt. Wer mit dem letzten Tipp dafür gesorgt hat, dass JEDES Objekt 25 Punkte bringt, ärgert sich schnell, dass der Wegweiser immer noch 25 Punkte Abzug bringt. Will man jemanden sein modifiziertes Moorhuhnspiel mal vorführen, so kann man diesem immerhin einen kleinen Streich spielen. Man kann nämlich bewirken, dass beim Schuss auf das Straßenschild 25 Pluspunkte anzeigt werden, obwohl tatsächlich 25 Punkte abgezogen werden. Ein Unwissender, der nicht auf den Punktestand oben links achtet, kann sich damit leicht den Highscore verderben. Die nötige Änderung:
Trage ab Adresse 681Ah die Byte-Werte 19-00-00-00 ein.

Größe der Moorhühner:
Etwas umständlicher ist es, alle fliegenden Moorhühner groß zu machen.
Dazu müssen ganze Blöcke von je 92 Bytes umkopiert werden:

2E464h-2E4BFh an die Stelle 2E4C0h-2E51Bh kopieren (um mittelgroßes von links kommendes Huhn zu vergrößern)
2E464h-2E4BFh an die Stelle 2E51Ch-2E577h kopieren (um kleines von linkskommendes Huhn zu vergrößern)
2E578h-2E5D3h an die Stelle 2E5D4h-2E62Fh kopieren (um mittelgroßes fallendes Huhn zu vergrößern)
2E578h-2E5D3h an die Stelle 2E630h-2E68Bh kopieren (um kleines fallendes Huhn zu vergrößern)
2E68Ch-2E6E7h an die Stelle 2E6E8h-2E743h kopieren (um mittelgroßes von rechts kommendes Huhn zu vergrößern)
2E68Ch-2E6E7h an die Stelle 2E744h-2E79Fh kopieren (um kleines von rechtskommendes Huhn zu vergrößern)

In diesem Speicherbereich liegen übrigens so ziemlich alle bewegten Objekte, die es im Moorhuhnspiel gibt. Wer also Spaß daran hat, z.B. die Heißluftballone wie abstürzende Moorhühner aussehen zu lassen (sehr schöner Effekt), der kann sich hier austoben.

Munition kippen:
Dieser Effekt hat eigentlich keinen Nutzen, sieht aber sehr schön aus. Einfach mal ausprobieren:
An Adresse 6B89h statt der 08 eine 02 eintragen. Ebenso an der Stelle 79D2h.

Begrüßungs-Text ändern:
Wenn das Spiel schon einen deutschen Namen hat, sollte auch die Aufforderung zur Namenseingabe nicht "ENTER YOUR NAME:" heissen. den gewünschten Text (16 Zeichen) kann man ab Adresse 2EF80h eintragen. Ein paar Vorschläge:

Folgende Änderungen kann man an der Datei Moorhuhn.sav durchführen:

Name des letzten Spielers und Highscore manipulieren:
Die Datei Moorhuhn.sav enthält die Highscoreliste und ist sehr simpel aufgebaut. Ab Position 04h steht der Name des letzten Spielers. Dieser Name wird vorgeschlagen, wenn man seinen Namen eingeben soll. Der Name darf maximal 10 Zeichen lang sein und muss mit 00h abgeschlossen werden. Dasselbe gilt für die Namen, die in der Highscoreliste stehen (Nur entfällt nun das 00h-Byte an Ende, sofern der Name die volle Länge von 10 Zeichen einnimmt). Sie stehen an den Adressen 10h, 1Ah, 24h, 2Eh und 38h. Die zugehörigen Punkte stehen in der üblichen 4-Byte-Notierung an den Positionen 44h,48h,4Ch,50h,54h. Ach ja! Wenn man den Vorschlags-Namen (an Adr 04h) ändert, darf man nicht vergessen, die Länge des Strings (ohne Endmarkierung) an der Position 00h einzutragen. Vergisst man dies, funktioniert die Namenseingabe nicht korrekt und die Highscoreliste wird unter Umständen völlig zerstört.