Maniac Patch

Aus Makerpendium.de
マニアクス
Kein Bild verfügbar
Webseite bingshan1024.github.io
Erstellt von BingShan1024
Betriebssystem Windows
Für Maker/Engine RPG Maker 2003 1.12a
Sprache Japanisch
Englisch
Aktuelle Version mp211010
tpc211010
Veröffentlichung 9. August 2018
10. Oktober 2021
Herunterladen Klick

Maniac Patch, auch Maniacs (マニアクス) oder manipa (まにぱ) genannt, ist ein inoffizielles umfangreiches Addon für die aktuelle Version des RPG Maker 2003 von BingShan1024, das stetig weiterentwickelt wird. Es enthält eine Vielzahl an erweiterten und neuen Funktionen, wie etwa sofortiges Laden/Speichern, Mausabfrage, mehr verwendbare Tasten oder das Manipulieren des Kampf- und Mapbildschirms.

Das dazugehörige Patchprogramm, das Änderungen am RPG Maker selbst, sowie der RPG_RT.exe vornimmt, ist zudem in der Lage, die Software auf japanisch zurück zu übersetzen.

Der Maniac Patch ist ausschließlich mit der aktuellsten DRM-freien Version kompatibel, die auf Steam erhältlich ist. Auf RPGMakerWeb erworbene Fassungen des Makers, sowie ältere, funktionieren nicht.

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.

IPS-Patches für RPG_RT, die mit Maniacs 200128 kompatibel sind, funktionieren auch mit 210414, da sich die Spielanwendung bei diesem Update im Gegensatz zum Makerprogramm nicht verändert hat. Ab Version 210519 ist grundsätzlich wegen der kompletten Restrukturierung der Engine davon auszugehen, dass IPS-Patches, die für RPG2003 1.12 gedacht sind, nicht mehr kompatibel sind.

Neue Befehle

Erklärung
セーブ情報の取得
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.
ATBゲージの操作
Control ATB Gauge
Verändert den Status einer ATB-Leiste (0~300000).
戦闘コマンドの変更EX
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 Befehle") sind ebenfalls möglich.
キー入力の処理EX
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.
ピクチャのID変更
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).
  • 1: Lauffähig, wenn keine Zusatzzweige bestimmt werden.
  • 2: Zusätzliche Zeilen sind nicht möglich.

TPC-exklusive Befehle

Maniac Patch kann seit Version 210519 auf das Tool TPC zugreifen, um Eventcode in einem eigenen Scriptformat zu bearbeiten. Neben einer genaueren Kontrolle über bereits bekannte Befehle gibt es einige Funktionen, die nur über TPC verfügbar sind. Um diese zu verwenden, muss sich das Programm im Ordner des Makers befinden. Ist dies erfüllt, kann es im Eventeditor über F3 (Hinzufügen), F2 (Bearbeiten) oder das Kontextmenü aufgerufen werden.

Erklärung
文字列変数の操作
Control String Variables
Bietet diverse Funktionen, um Texte wie Variablen zu speichern und zu verarbeiten (Zuweisen, Verbinden, Einfügen, Ersetzen, Teil-String, Array-Join, Datei laden, in Zahl convertieren, Länge ermitteln, Inhalt suchen, Zerteilen, als Datei speichern, Zeilentrennung). Unterstützt Texte, Variablen und Switches inklusive Pointer sowie die Namensfelder aller Datenbankinhalte sowie Namen von MapEvents und Gruppenhelden.
ゲーム情報の取得
Get Game Info
Zugriff auf einige allgemeine Spiel- und Enginedaten (Mapgröße, Tiles auf Position oder Rechteck, Spielfenstergröße, Pixelfarbe auf Position oder Rechteck auf dem Spielbildschirm).
ピクチャの編集
Edit Picture
Pixelfarbe auf Position oder Rechteck auf einem Picture verändern.
画像の出力
Output Image
Ein Picture oder den Spielbildschirm als 32bit-Grafikdatei speichern.
キャラの動作追加
Add Move Route
Einem Event, Vehicle oder der Spielerfigur eine Bewegungsanweisung hinzufügen.
ピクチャ編集(チップ)
Edit Picture (Tile)
Zeichnet Tiles aus dem ChipSet auf ein Picture.

Veränderte Befehle

Erklärung
ピクチャ表示
Show Picture
  • Ein genauer Drehwinkel, sowie Blending (Multiplizieren, Linear abwedeln, Ineinanderkopieren) kann eingestellt werden
  • Pictures können horizontal/vertikal gespiegelt werden
  • ID, Position, Zoom und Transparenz können mit variablen Var-IDs bestimmt werden
  • Die Position kann von einem anderen Ankerpunkt als dem Zentrum ausgehen.
ピクチャ移動
Move Picture
  • Ein genauer Drehwinkel, sowie Blending (Multiplizieren, Linear abwedeln, Ineinanderkopieren) kann eingestellt werden
  • ID, Position, Zoom und Transparenz können mit variablen Variablen-IDs bestimmt werden
  • Wartezeit kann mit einer Variable oder einer variablen Var-ID, sowie mit negativen Werten (verändert die Berechnung von Zehntelsekunden auf eine genaue Frame-Anzahl) angegeben werden
  • Die Position kann von einem anderen Ankerpunkt als dem Zentrum ausgehen.
ピクチャ消去
Erase Picture
  • Das zu löschende Picture kann mit einer variablen Var-ID bestimmt werden.
  • Mehrere zu löschende Picture-Bereiche können mit Variablen angegeben werden.
  • Alle Pictures gleichzeitig löschen wurde als Schnellfunktion eingefügt.
条件分岐
Conditional Branch
  • Die Switch- oder Variablen-ID kann per Variable angegeben werden.
  • Die ID der Vergleichsvariable für Variablen kann per Variable angegeben werden.
  • Es kann abgefragt werden, ob in genau diesem Moment ein Spielstand geladen wurde, ein Gamepad angeschlossen ist oder das Spielfenster im Fokus ist.
キー入力の処理
Key Input Processing
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.
  • Klassische arithmetische Operatoren (=, +, -, *, /, %) sind weiterhin vertreten
  • Logische Operationen: OR, AND, XOR, Bitverschieber (SHL, SHR)
  • Komplexe Operatoren: Potenzierung ab, Quadratwurzel √(a)*c, sin(a/b)*c, cos(a/b)*c, atan2(Y=a, X=b)*c
  • Vergleichsoperatoren: Kleineren, bzw. größeren Wert von a und b speichern
  • Absoluter Betrag (negative Zahlen positiv ausgeben)
  • Zufall zwischen a und b
  • Ternäre Operationen
  • Maniacs-Versionskennzeichen
  • ID und ATB-Status von Helden und Gegnern
  • Derzeitiges Datum, aktuelle Uhrzeit und verstrichene Frames
  • Switchzustand in einer Variable speichern (OFF=0, ON=1)
  • Gegenstände, Helden, Events und Gegner, von denen Daten gelesen werden, per Variable bestimmen
  • Gruppenmitglieder als Option hinzugefügt
イベントの呼び出し
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

Editor und Engine

  • Die Wertgrenzen für Variablen wurde von -9.999.999~9.999.999 zu -2.147.483.648~2.147.483.647 (32bit-DWORD-Grenzen) geändert.
  • CommonEvents können als Trigger den Beginn eines Kampfes (entspricht Runde 0) haben oder parallel zu selbigem verlaufen.
  • Gegnern kann eine eigene Animation für Standardangriffe zugewiesen werden (wird beim Bearbeiten des Spiels mit anderen Editorversionen auf 1 zurückgesetzt).
  • OGG Vorbis wird als Audioformat inklusive des Loop-Standards (LOOPSTART und LOOPLENGTH) unterstützt ("accord.dll", erstellt auf Basis des gemeinfreien OGG-Decoders stb_vorbis).

Seit mp210519:

  • String-Variablen wurden hinzugefügt (nur über TPC verfügbar).
  • Viele bestehende Befehle können zusätzliche Variablenpointer verwenden (nur über TPC verfügbar).
  • Grafikdateien können in 32bit ohne Paletten genutzt werden, im Editor haben sie jedoch keine Vorschau und Alphawerte werden nicht unterstützt (0 bedeutet unsichtbar, alles andere komplett sichtbar).

Editor

  • Über Shift+Enter oder den Kontextmenübefehl "InsertEx" können Eventbefehle in eine Codeseite eingefügt werden, die normalerweise nicht zur Event-Kategorie (Map-/CommonEvent, BattleEvent) passen.
  • Die Anordnung der Eventbefehlsauswahl und die Sichtbarkeit der Befehle selbst kann beliebig verändert werden, auch während der Maker offen ist. Erreichbar ist die Funktion als externes Programm aus dem Eventcode-Kontextmenü heraus und versetzt den RPG Maker in einen TestPlay-Wartezustand.
  • Spielprojekte können mit wenigen Klicks ein komplettes Backup von sich erstellen. Der jeweilige Sicherungsordner wird nach Datum und Uhrzeit der Anlegung benannt.
  • Es kann eine "RPG2003.ini" angelegt werden, die im INI-Bereich "[rpg2003]" mit den Konstanten "FontName" und "FontSize" die Schriftart der Programmoberfläche überschreibt.
  • Die Grafikänderungs-Funktion in Bewegungsrouten unterstützt nun auch, wie die normale Eventlaufgrafik-Auswahl die Blickrichtung und den Schrittstatus, dies dient jedoch nur zum Vereinfachen der Vorschau und hat keinen Einfluss auf die Daten.
  • Bei Problemen mit mehrkernigen Prozessoren kann im Menü des Programms die Option "SingleProcAffinity" aktiviert werden.
  • Der "Abbrechen"-Button der Datenbank und den Editoren für Events und Bewegungsrouten kann versteckt oder deaktiviert werden. Letztere Einstellung verhindert zudem das Schließen selbiger Fenster per ESC-Taste.

Seit mp211010:

  • Die Trefferrate von Skills anders verrechnen.
  • Namen von Switches und Variablen können im TPC-Editor bearbeitet werden.
  • Der TPC-Editor verwendet nun zur Syntaxhervorhebung Footy2.

Engine

  • Nachrichten können mit einem Mausklick bestätigt werden (rechte Maustaste bei Auswahlen zählt als Abbruch).
  • Im neuen Ordner "Font" können TTF-Schriftarten hinterlegt und beim Spielstart geladen werden.
  • Die japanische Version kann für sie spezifische Zeichen (Kanji, etc.) unabhängig von der Systemsprache darstellen.
  • Buffs und Debuffs für Geist und Tempo wurden so angepasst, dass ein gleichzeitiges Halbieren und Verdoppeln nun korrekt abläuft.
  • Das Schadenslimit pro Aktion im Kampf wurde deutlich angehoben.
  • Die Ausführbarkeit von Befehlen wie "Show Picture", "Call Event" oder "Control Variables" wurde beschleunigt.
  • In Version pf-190526 wurde die maximale Menge an Befehlen, die ein Event pro Frame verarbeiten kann, von 10.000 auf 200.000 erhöht.

Seit mp210519:

  • Die Performance, wie sich unter anderem an Benchmarks mit s2k3mp destroyer festmachen lässt, wurde in der pf-Version massiv verbessert.
  • Der innere Vertiefungsrahmen des Spielfensters sowie der Minimieren- und Maximieren-Button wurden entfernt.
  • Das F9-Menü wurde durch ein Debuggingfenster ersetzt, das Switches, Variablen, String-Variablen, MapEvents und Pictures überwacht.
  • F10 zum Abbrechen der Eventverarbeitung hat keine Funktion mehr.
  • F12 resettet das Spiel wieder wie vor RPG2003-1.10 zum Titelbildschirm ohne Alt drücken zu müssen.
  • Der genau wie im Editor auch bei laufendem Spielgeschehen nutzbare Dungeon-Generator wurde in der Engine abgeschaltet.
  • Die Bedienung der Nachrichtendialogbox über die Maustasten ist standardmäßig deaktiviert.
  • Das Spielfenster verschieben pausiert das Geschehen nicht mehr.
  • RPG_RT.ini kann um "RunTimePackageKey" (anderer Registrierungsschlüssel für das benötigte RTP) sowie "WinW" und "WinH" (Spielbildschirm-Breite und -Höhe verändern) erweitert werden und benötigt keinen "FullPackageFlag"-Eintrag mehr, um einen RTP-Fehler zu verhindern.
  • Zahleneingaben in der Nachrichtendialogbox sind nun auch mit den Zifferntasten bedienbar.
  • Die ExFont muss nicht mehr per Hack ersetzt werden, stattdessen reicht es, eine geeignete Grafik im Ordner "System" mit dem Dateinamen "exfont" zu platzieren.

Seit mp210530:

  • Es können Daten zum gerade im Interpreter laufenden Event abgerufen werden.
  • Variablen können mit den Operanden "Lerp", "Sum", "Amin" und "Amax" verrechnet werden.
  • Variablenbereiche können dereferenziert und sortiert werden.
  • Das Verzeichnis der ExFont-Grafikdatei wurde von "System" auf "Font" geändert.

Seit mp210809:

  • Einige Erweiterungen von EasyRPG werden unterstützt.
  • Die bis zum nächsten Level nötigen Erfahrungspunkte für Helden oder Partyslots können ermittelt werden.
  • Es können Unterordner im Textverzeichnis für String-Variablen angelegt und automatisch erstellt werden.
  • Der Blitzeffekt auf Spielerfigur/Fahrzeugen/Events akzeptiert nun Pointer als Parameter.
  • Schleifen können durch anhand der Events auf der Map iterieren.
  • Die ID vom derzeitigen ChipSet sowie die definierten und derzeitigen Faces und Laufgrafiken von Helden sind abrufbar.
  • Abfrage der momentanen Koordinaten des Spielbildschirms im Verhältnis zur Map.
  • Per Bedingung überprüfen, ob ein Event als gelöscht markiert wurde.
  • 32bit-Pictures können nun Alphawerte besitzen, sie können jedoch per Befehl ignoriert werden.

Seit mp211010:

  • Ordnerlimits bei der Dateiausgabe von String-Variablen wurden aufgehoben.
  • Löschen von Substrings aus String-Variablen.
  • Inhalte in String-Variablen per Regexp ersetzen/löschen/trimmen.
  • Mehrere Buffer für Animationen.
  • Animationen rückwärts und auf Picture-, XY- oder Variablen-Positionen abspielen.
  • Zoom für Breite und Höhe von Pictures getrennt bestimmen.
  • SpriteSheet-Animationen auf einen Teil der Quelle beschränken.
  • Variablen-Pointer für Texte in String-Pictures verwenden.
  • Datei-Output überprüfen.
  • Schwarzen Bildschirm beim Laden eines Spielstands deaktivieren.
  • Zeichensatz für Dateilese- und -schreibvorgänge in der RPG_RT.ini festlegen.

Links

Öffnen
● Audio-Themen