DynamicQuickPatch Plugin für RPG Maker 2003 (DynRPG)
DynamicQuickPatch Plugin für RPG Maker 2003 (DynRPG)
Hallo zusammen!
Ich freue mich, mein neuestes Plugin für RPG Maker 2003 vorzustellen. Es handelt sich um ein dynamisches Speichermodifikations-System, das vollständig über die DynRPG.ini konfiguriert werden kann.
Funktionen
- Komplett konfigurierbar über DynRPG.ini
- Zuordnung von RPG Maker 2003 Variablen zu Speicheradressen
- Unterstützung für drei Wertformate (8-bit, 32-bit und Hex)
- Automatische Speicheraktualisierung bei Variablenänderungen
- Konfigurierbare automatische Updates beim Laden von Spielständen
- Automatische Wiederherstellung der ursprünglichen Speicherwerte beim Starten eines neuen Spiels
- Konfigurierbare Variablen-ID-Bereiche passend zu deiner Spieldatenbank
- Bereichsvalidierung zur Verhinderung ungültiger Speicherschreibvorgänge
- Optionale Debug-Meldungen, die Speicheränderungen anzeigen
Installation
- Platziere die Datei 'DynamicQuickPatch.dll' im DynPlugins-Ordner deines Spiels
- Konfiguriere das Plugin in deiner DynRPG.ini Datei (siehe unten)
Konfiguration
Die gesamte Konfiguration erfolgt in der DynRPG.ini Datei. Hier ist ein Beispiel:
Code:
[dynamic_quickpatch]
; Debug-Meldungen aktivieren oder deaktivieren
ShowDebugMessages=true
; Maximale Variablen-ID (Standard: 1000)
; Stelle dies auf die maximale Variablen-ID in deiner Spieldatenbank ein
MaxVariableId=2000
; QuickPatch-Zuordnung #1 - Beispiel für 8-Bit-Wertzuordnung
QuickPatch1_VariableId=1
QuickPatch1_Address=0x401234
QuickPatch1_Type=8bit
QuickPatch1_OnLoadGame=true
; QuickPatch-Zuordnung #2 - Beispiel für 32-Bit-Wertzuordnung
; Dieser Patch wird beim Laden eines Spielstands NICHT angewendet
QuickPatch2_VariableId=2
QuickPatch2_Address=0x40ABCD
QuickPatch2_Type=32bit
QuickPatch2_OnLoadGame=false
; QuickPatch-Zuordnung #3 - Beispiel für Hex-Wertzuordnung
QuickPatch3_VariableId=3
QuickPatch3_Address=0x410000
QuickPatch3_Type=hex
QuickPatch3_HexValue=90ABCD
; OnLoadGame ist standardmäßig true, wenn nicht angegeben
Unterschied zu normalen Quickpatches
DynRPG's Standard-Quickpatches sind statische Speichermodifikationen, die in der DynRPG.ini-Datei definiert und einmalig beim Laden des Spiels angewendet werden:
Code:
[QuickPatches]
; Versteckt EXP im Hauptmenü und Speicherbildschirm
HideEXP=49E148,EB71,49F1CA,EB67,49F095,EB21
; Verschiebt das Fenster auf dem Titelbildschirm zu den Koordinaten 144/56
MoveTitleWindow=490821,#144,490828,#56
Dieses Plugin erweitert das Konzept, indem es:
- Speichermodifikationen während des Spiels dynamisch ändern lässt
- RPG Maker-Variablen bestimmten Speicheradressen zuordnet
- Den Speicher automatisch aktualisiert, wenn sich Variablen ändern
- Sicherstellt, dass der Speicher beim Laden von Spielständen korrekt aktualisiert und beim Starten eines neuen Spiels zurückgesetzt wird
Arbeiten mit Hex-Werten
Bei Verwendung des Typs 'hex' ist der 'HexValue' statisch und kann den Wert der Variable nicht direkt verwenden. RPG Maker 2003-Variablen können nur Ganzzahlen speichern, keine Hex-Strings. So verwendest du Hex-Werte effektiv:
Variablen als Aktivierungsschalter verwenden
Für Hex-Werte fungiert die Variable als Ein/Aus-Schalter:
- Wenn Variable = 0: Der Patch ist AUS (ursprüngliche Speicherwerte bleiben erhalten)
- Wenn Variable > 0: Der Patch ist EIN (Hex-Wert wird angewendet)
Hier ist ein Beispiel mit den Komponenten des "HideEXP"-Quickpatches:
Code:
; Variable 5 steuert die EXP-Anzeige in Menüs:
; Wert 0 = EXP anzeigen (ursprüngliches Verhalten, Patch inaktiv)
; Wert 1+ = EXP ausblenden (Patch aktiv, verwendet die HideEXP-Quickpatch-Werte)
; Erste Komponente: Modifiziert Code bei 0x49E148
QuickPatch1_VariableId=5
QuickPatch1_Address=0x49E148
QuickPatch1_Type=hex
QuickPatch1_HexValue=EB71
; Zweite Komponente: Modifiziert Code bei 0x49F1CA
QuickPatch2_VariableId=5
QuickPatch2_Address=0x49F1CA
QuickPatch2_Type=hex
QuickPatch2_HexValue=EB67
; Dritte Komponente: Modifiziert Code bei 0x49F095
QuickPatch3_VariableId=5
QuickPatch3_Address=0x49F095
QuickPatch3_Type=hex
QuickPatch3_HexValue=EB21
Alternative: 8-Bit- oder 32-Bit-Werte für dynamische Steuerung
Wenn du direkte numerische Kontrolle über Speicherwerte benötigst, verwende stattdessen die 8-Bit- oder 32-Bit-Typen:
Code:
; Variable 6 steuert ein einzelnes Byte bei 0x49E148
; Wenn du es auf 235 (0xEB in Hex) setzt, würde die Sprunganweisung
; aus dem HideEXP-Quickpatch angewendet werden
QuickPatch4_VariableId=6
QuickPatch4_Address=0x49E148
QuickPatch4_Type=8bit
; Variable 7 steuert die Fenster-X-Position (Beispiel mit 32-Bit-Wert)
QuickPatch5_VariableId=7
QuickPatch5_Address=0x490821
QuickPatch5_Type=32bit
Für die 8-Bit- und 32-Bit-Typen wird der tatsächliche Wert der Variable verwendet, um den Speicher zu modifizieren.
Anforderungen
- RPG Maker 2003 v1.08
- DynRPG 0.32
Download
Das Plugin ist auf GitHub verfügbar: DynamicQuickPatch Plugin für RPG Maker 2003
Bei Fragen oder Feedback stehe ich gerne zur Verfügung!