Es gibt mehrere Wege wie man das machen kann über die Datenbank oder über Skript Calls.
Ich fange mal mit der Datenbank an, da das für jeden nutzbar ist und diese Methode zu 100% auch im RPG Maker MV geht.
Methode 1 Datenbank:
Wir gehen zuerst in unsere Datenbank, dort gehen wir in Zustände.
Hier werden wir jetzt erstmal ein Passiven Skill erstellen, dafür brauchen wir einen Zustand, der das tut, was wir möchten.
Ich erstelle einen Simplen Max HP + Skill.
Da ich möchte, dass der Skill auf außerhalb des Kampfes aktiv bleibt, habe ich nirgendwo ein Harken gemacht.
Auf der rechten Seite könnt ihr eure Sachen wir ihr mit dem Skill machen wollt auswählen. Was die alle machen, werde ich noch in einem Extrabeitrag erklären.
In meinem Fall will ich das der passive Effekt ist, dass die Max HP um 15% angehoben werden.
Jetzt, da wir den Zustand haben, können wir diesen der Klasse direkt zuteilen, es über den Einsatz eines Skills oder Items machen oder sogar auf Waffen und Rüstungen legen.
Ich mache das jetzt auf eine Rüstung.
Damit bekommt der Träger dann 15% mehr maximal Leben.
Recht einfach und kann wirklich jeder nach machen.
Leider kann das schnell recht langweilig werden, daher gibt es von mir noch eine weitere Methode, die etwas mehr Dynamik ins Spiel bringen kann.
Methode 2 Skript Call:
Zugriff auf die Parameter eines Charakters
Die Parameter eines Charakters sind in der $gameActors-Datenstruktur gespeichert. Jeder Parameter hat eine spezifische ID, die du über die entsprechenden Methoden manipulieren kannst.
Beispiel für Parameter-IDs:
- 0: Max-HP (MHP)
- 1: Max-MP (MMP)
- 2: Angriff (ATK)
- 3: Verteidigung (DEF)
- 4: Magie (MAT)
- 5: Magische Verteidigung (MDF)
- 6: Beweglichkeit (AGI)
- 7: Glück (LUK)
1 Methoden zum Zugriff
- Grundwert ändern: $gameActors.actor(ID).addParam(paramId, value);
Fügt dem Parameter paramId des Akteurs mit der ID ID den Wert value hinzu. - Aktuellen Wert auslesen:
$gameActors.actor(ID).param(paramId);
2 Direktes Beispiel: Max-HP erhöhen
Angenommen, du möchtest dem Charakter mit der ID 1 20 Punkte zu den Max-HP hinzufügen:
$gameActors.actor(1).addParam(0, 20);
Effekt:
- Die Max-HP des Charakters 1 werden dauerhaft um 20 Punkte erhöht.
3 3. Dynamische Anpassung mit Variablen
Du kannst auch Werte basierend auf Variablen dynamisch ändern:
let bonus = $gameVariables.value(20); // Wert der Variable 20
$gameActors.actor(1).addParam(0, bonus); // Bonus zu Max-HP hinzufügen
Effekt:
- Der Wert der Variablen 20 wird als Bonus zu den Max-HP des Charakters hinzugefügt.
4 Anwendung über Gegenstände oder Rüstungen
4.1 Ohne Plugins
Du kannst direkt im Effektbereich eines Gegenstands oder einer Rüstung ein Skript verwenden, um Parameter anzupassen.
Beispiel: Item-Effekt
- Erstelle ein neues Item in der Datenbank → Gegenstände.
- Im Bereich Effekte → Andere → Skript, füge Folgendes ein:
let bonus = $gameVariables.value(20); // Dynamischer Bonus
$gameActors.actor(1).addParam(0, bonus); // Max-HP erhöhen
Effekt:
Wenn das Item verwendet wird, erhöht sich die Max-HP des Charakters um den Wert der Variable.
5 Temporäre Änderungen
Wenn die Anpassung vorübergehend sein soll (z. B. nur bei aktiver Ausrüstung):
$gameActors.actor(1)._paramPlus[0] += 20; // Temporäre Erhöhung
Sobald der Bonus entfernt werden soll:
$gameActors.actor(1)._paramPlus[0] -= 20;
Max-HP um den Wert einer Variablen erhöhen
Wenn du möchtest, dass die Max-HP des Charakters um den Wert von Variable 20 erhöht werden, kannst du Folgendes verwenden:
$gameActors.actor(1)._paramPlus[0] += $gameVariables.value(20);
Erklärung:
- $gameActors.actor(1): Greift auf den Akteur mit der ID 1 zu.
- _paramPlus[0]: Manipuliert den Max-HP-Wert (0 steht für Max-HP).
- $gameVariables.value(20): Holt den aktuellen Wert der Variable 20.
Effekt:
Die Max-HP des Charakters werden um den Wert der Variable 20 erhöht.
6 Rückgängig machen
Falls du den Bonus später wieder entfernen möchtest (z. B. wenn eine Rüstung abgelegt wird oder ein Effekt endet), verwendest du den gleichen Ansatz, aber ziehst den Wert ab:
$gameActors.actor(1)._paramPlus[0] -= $gameVariables.value(20);
7 Anwendung mit Events
- Variable festlegen:
Lege den Wert der Variable, der die Max-HP bestimmt, in einem Event fest:- Befehl: Variable ändern → ID 20 → Wert festlegen: 50 (oder ein anderer Wert).
- Parameter erhöhen:
Verwende das Skript als Teil eines Ereignisbefehls:
$gameActors.actor(1)._paramPlus[0] += $gameVariables.value(20);
Parameter entfernen (falls notwendig):
Um den Bonus wieder zu entfernen:
$gameActors.actor(1)._paramPlus[0] -= $gameVariables.value(20);
Das ist jetzt etwas umfangreicher und kann für mehr Dynamik im Spiel sorgen, ohne Plugins zu nutzen.
Ich habe diese Methode noch nicht im RPG Maker MV getestet.
Viel Spaß damit, ich bin gespannt was ihr daraus macht.