Maniac Patch

Maniac Patch ist ein inoffizielles Addon von BingShan1024 für den RPG Maker 2003 1.12 und eine Grundvoraussetzung, um Destiny auf die RPG_RT.exe selbiger Version anzuwenden. Dies liegt daran, dass beim Erarbeiten der Kompatibilität zwischen Destiny und dieser Engine-Version aus Aufwandsgründen zur Wahl stand, den sehr mächtigen und viel umfassenden Maniac Patch entweder vorauszusetzen oder gar nicht unterstützen zu können.

Patchversionen

Beim Anwenden des Patches stehen eine "im"- ("Immediately"), sowie eine "pf"-Version ("Per frame") zur Auswahl, was dafür steht, zu welchem Zeitpunkt die Engine den Zustand aller Events updatet. "Immediately" stellt dabei das Standardverhalten des RPG Makers dar, bei dem dieser Prozess nach jeder Operation geschieht, die etwas beeinflussen könnte, während "Per frame" diese Überprüfung nur einmal zwischen den Frames erledigt.

Sich für letztere Methode zu entscheiden, kann Performancevorteile mit sich bringen, ist jedoch zu bestehenden Spielen, die möglicherweise auf dem bekannten Verhalten zu stark aufbauen, inkompatibel.

Neue Eventbefehle

Maniac Patch fügt dem RPG Maker einige neue Eventbefehle hinzu.

Get Save Info

Speichert die Informationen über einen Spielstand (1~...), die auch vom Standard-Spielstandmenü abgefragt werden würden (Datums- (Format: JJMMTT) und Zeitstempel, Face-IDs, Level, HP), in mehreren Variablen. Nicht vorhandene Spielstände werden daran erkannt, dass als Datum eine 0 ausgegeben wird.

Save

Speichert einen Spielstand (1~...), ohne das Spielstandmenü aufzurufen. Es kann eine Variable bestimmt werden, die auf 1 oder 0 gesetzt wird, je nachdem, ob der Befehl erfolgreich ausgeführt wurde.

Load

Lädt einen Spielstand (1~...), ohne das Spielstandmenü aufzurufen. Der zu ladende Spielstand kann, muss jedoch nicht zuvor automatisiert überprüft werden, um den Befehl bei einem Fehler abzubrechen.

End Load Process

Momentan ohne Funktion.

Get Mouse Position

Fragt ab und speichert, wo sich die Maus momentan befindet, als Basis dient die Standardauflösung 320×240. Kann im DirectDraw-Vollbildmodus zu Problemen führen.

Set Mouse Position

Setzt die Maus (beschränkt auf Koordinaten innerhalb des Spielfensters) auf die angegebene Position, als Basis dient die Standardauflösung 320×240. Kann im DirectDraw-Vollbildmodus zu Problemen führen.

Show String Picture

Generiert mit einer beliebigen Systemgrafik, Font und Schriftgröße ein Picture aus dem angegebenen Text. Die Ausführung des Befehls wird durch Deaktivieren von Hintergrund, Rahmen und/oder Schatten beschleunigt.

Get Picture Info

Speichert die derzeitige Position und Abmessungen eines Pictures. Mehrere Formate sind möglich.

Control Battle

Erlaubt das forcierte Ausführen von ATB-Fortlauf, DamagePop, Anvisieren, Zustandsverteilung und Statuswertänderung. Funktioniert nur im Kampf und wird bei Kampfende abgebrochen.

Control ATB Gauge

Verändert den Status einer ATB-Leiste (0~300000).

Change Battle Command EX

Verändert die Gruppenbefehle für die Heldenfront (Kämpfen/Automatik/Flucht, inklusive Forcierung von Sieg oder Niederlage) temporär und kann den Reihe-Befehl an- und ausschalten. Funktioniert nur im Kampf und wird bei Kampfende zurückgesetzt.

Get Battle Info

Speichert diverse Kampfdaten von Helden oder Gegnern, bzw. deren Gruppen. Außerhalb eines Kampfes ohne Funktion.

Control Variable Array

Verändert Variablenwerte in einem bestimmten Bereich auf verschiedene mögliche Arten (kopieren, vertauschen, aufsteigend/absteigend sortieren, zufällig anordnen). Klassische arithmetische und logische Operatoren (siehe "Control Variables" unter "Veränderte Eventbefehle") sind ebenfalls möglich.

Key Input Proc EX

Erweiterte, separierte Version des normalen Inputbefehls, jedoch ohne Wartemöglichkeit. Kann den Status der gesamten Tastatur oder des ersten Gamepads gleichzeitig auslesen (wird in einem Variablenbereich gespeichert) oder eine Taste per Keycode (0~255), bzw. einen von bis zu 12 Buttons sowie die Steuerkreuzrichtungen abfragen. Zudem können Gamepad-Buttons mit Tasten verknüpft werden.

Rewrite Map

Verändert das Tile auf der unteren oder oberen Ebene an einer beliebigen Position. Änderungen werden nicht durch Spielstände gespeichert und gehen bei einem Teleport verloren.

Control Global Save

Verwaltet die Datei "Save.gls" (öffnen/schließen/speichern), in der spielstandübergreifende Daten hinterlassen werden können.

Change Picture ID

Kann ein Picture auf eine andere ID verschieben, Pictures tauschen oder einen bestimmten ID-Bereich shiften. Wird ein Picture verschoben, wird das zuvor auf der Ziel-ID befindliche gelöscht.

Set Game Option

Nimmt direkte Änderungen am Verhalten der Engine vor (Spiel ohne Fensterfokus nicht pausieren, FatalMix-Features (angepeilte FPS verändern (1~...), TestPlay (de-)aktivieren, Text mit RShift-Taste sofort anzeigen und automatisch schließen), Anzahl an Pictures (1~...) verändern, FrameSkip-Frequenz bestimmen (0, 1/5, 1/3, 1/2).

Call Command

Manueller Aufruf eines anderen Befehls per ID mit beliebigen Parametern. Nur für sehr erfahrene Anwender gedacht und funktioniert mit einigen Befehlen nicht (Message Options, Battle Processing1, Shop Processing1, Inn Processing1, Conditional Branch, Loop, Show Message2, Note2).

Veränderte Eventbefehle

Diverse existente Eventbefehle werden durch Maniac Patch verändert/erweitert.

Show Picture

Move Picture

Erase Picture

Conditional Branch

Key Input Process

Die Maustasten (L/M/R) sowie das Mausrad können abgefragt werden. Wird das Mausrad abgefragt, muss die Wartefunktion jedoch zwingend aktiviert werden.

Control Variables

Dieser Befehl besitzt ein neues Alternativlayout, welches im Menü des Programms aktiviert werden kann.

Call Event

CommonEvents können per Variable oder variabler Var-ID bestimmt werden.

Loop

Schleifen können wahlweise unendlich, X mal (Index kann in Variable gespeichert werden), von A bis B (fest oder Variablen) hoch-/runterzählend oder gekoppelt an eine Bedingung (anfangs-/endgesteuert) ausgeführt werden.

Break Loop

Das Verhalten innerhalb verschachtelter Loops, wenn ein tieferer LoopStart vor dem Ende der laufenden Schleife existiert, verursacht keine falschen Code-Sprünge mehr.

Battle Processing

Das Aufblitzen bei Kampfbeginn kann ausgeschalten werden.

Sonstige Änderungen

Auch außerhalb von Eventbefehlen werden beim Anwenden des Patches einige Details im RPG Maker sowie in RPG_RT.exe verändert.

Editor und Engine

Editor

Engine