Wie erstelle ich einen "Geld-Stehlen-Zauber"?

[zurück]

 
Ist es nicht langweilig für einen Dieb im Spiel, immer nur Items zu stehlen? Geld sollte sich doch auch stehlen lassen, findet ihr nicht auch? Gerade, da heutzutage in Rollenspielen das Geld knapper als knapp ist, sollte man seinem hauseigenem Dieb das "Beschaffen" von Geld ermöglichen.

Voraussetzung ist, dass ihr bereits ein paar Monster angelegt und zu einer "Monster-Party" zusammengefasst habt. Und so gehts:

  1. Begebt euch im RPG-Maker in die Data-Base durch Klick auf den Button oder Drücken der Taste [F8]. Dort wählt ihr die Registerkarte "Skills" aus.
  2. Wählt nun im Listenfeld links eine freie Zahl aus, der ihr den "Geld-Stehlen-Skill" zuweisen wollt. Gebt dann im Feld "Name" dem Skill einen Namen, z.B.: "Geld stehlen".
    Im Feld "Classification" wählt ihr die Option "Switch" aus, im Feld "MP-Cost könnt ihr einen Wert für den MP-Verbrauch eingeben und im Feld "Available at" wählt ihr die Option "Battle".
    Gebt als Explanation eine kurze Erklärung für den Skill ein, z.B.: "Ermöglich das Stehlen von Geld". Als Using-Message könnt ihr das eingeben, was bei Benutzung des Skills als Meldung angezeigt werden soll, z.B.: "Versucht, Geld zu stehlen"
    Im Feld "ON Switch" wählt ihr einen freien Switch aus, der das eigentliche "Stehlen" auslöst und gebt ihm einen passenden Namen, z.B.: "$ stehlen".

So, der Skill wäre erstellt, aber es wird sich während des Kampfes nicht das geringste tun. Um das zu ändern, geht ihr wie folgt vor...

  1. Klickt hierzu in der Data-Base die Registerkarte "Monsters Party" an

  2. Wählt im Listenfeld links eine Monstergruppe aus, die eure Helden bestehlen sollen

  3. Im Feld "Battle Events" wählt ihr im Feld "Trigger" den Switch, der durch Benutzung des Geld-Stehlen-Skills auf ON gesetzt wurde (hier im Beispiel: "$ Stehlen")

  4. In dem Feld mit den Zeichen <> klickt ihr nun doppelt in die Zeile und wählt im Fenster "Event Commands" den Button "Change Switch" aus.
    Hier wählt ihr den Schalter aus, den ihr unter Punkt 2.8 festgelegt habt, nur dass er diesmal auf "OFF" geschaltet wird. Eure Helden sollen ja, wenn der Diebstahl misslingt, es noch einmal versuchen dürfen.

  5. Nun klickt ihr doppelt in die leere Zeile unter der, in der ihr den Switch geändert habt. Wählt im Fenster "Event Commands" den Button "Fork Conditions" aus.
    Im Feld "Conditions" wählt ihr einen neuen Switch aus, den ihr beispielsweise "$ gestohlen" nennen könnt, der auf "OFF" sein muss.
    Wählt noch die Option "Add ELSE Case" aus und bestätigt das ganze mit OK.

  6. Ihr habt nun folgende Fork-Condition erschaffen:
    FORK Optn:Switch [0385:$ gestohlen] OFF
    <>
    ELSE Case
    <>
    END Case
    In der ersten Zeile der Fork-Condition (<>) klickt ihr nun doppelt und wählt im Fenster "Event-Commands" den Button "Change Variable" aus.
    Im Feld "Choose Variable" wählt ihr eine freie Variable aus und gebt ihr einen Namen, beispielsweise "$ Stehlen %".
    Wählt dann noch im Feld "Set" die Option "Set" und im Feld "Operand" die Option "Rand", wo ihr im ersten Feld dahinter eine 1 und im letztem Feld eine 100 eingebt (Stehlwahrscheinlichkeit in Prozent). Bestätigt das ganze mit OK.

  7. Nun legt ihr unter der Variable eine weitere Fork-Condition an, doch diesmal wählt ihr im Feld "Conditions" die Option "Variable" aus und gebt im Feld "Set" eine Zahl zwischen 1 und 100 ein, beispielsweise 50.
    Im Drop-Down-Menü könnt ihr wählen, wie der Wert der Variable zu sein hat. Wählt "Above", wenn die Stehlwahrscheinlichkeit über 50 liegen soll...
    Bestätigt, wenn ihr alles wunschgemäß angelegt habt, das ganze mit OK

  8. In der ersten Zeile dieser neuen Fork-Condition legt ihr fest, wie viel Geld euer "Dieb" gestohlen haben soll. Ihr müsst hier den Umweg über die Variablen gehen, da ein Button "Change Gold Held" hier nicht verfügbar ist. Klickt also doppelt in die erste leere Zeile dieser Fork-Condition und wählt im darauffolgendem Fenster den Button "Change Variable" aus.
    Im Feld "Choose Variable" sucht ihr euch eine freie Variable aus (Merkt euch die Nummer der Variable) und gebt ihr einen Namen, z.B.: "$ gestohlen". Wählt im Feld "Set" die Option Set. Im Feld "Operand" legt ihr nun fest, wie viel Geld eure Helden stehlen können. Wählt beispielsweise die Option "Rand", damit eure Helden immer eine zufällig bestimmte Geldmenge stehlen können. im ersten Feld bei "Rand" gebt ihr den kleinstmöglichen, im Feld rechts daneben den höchstmöglichen Betrag ein. Bestätigt dann das ganze mit OK.

  9. Darunter solltet ihr noch eine Meldung anlegen, die anzeigt, was gestohlen wurde, beispielsweise folgende: "Ich habe \v[Variablennummer] $ gestohlen!"
    Gebt anstatt dem Wort "Variablennummer" die Nummer der Variable ein, in der der Wert für das gestohlene Geld gespeichert wird.

  10. Nun müsst ihr noch einen Switch in der Zeile darunter anlegen, der bei erfolgreichem Stehlen auf "ON" gesetzt wird. In unserem Beispiel wäre das der Switch "$ gestohlen".

  11. In derselben Fork-Condition unter den Worten "ELSE Case" gebt ihr einfach nur eine Message ein, die erscheinen soll, wenn das Stehlen nicht geklappt hat, beispielsweise "Konnte nichts stehlen"

  12. Zurück zur alten Fork-Condition. Geht hier in die unterste Zeile unter den Worten "ELSE Case". Hier gebt ihr eine Meldung für den Fall ein, dass eure Helden das betreffende Monster bereits bestohlen haben.

Und hier nun ein Codebeispiel für das, was nach dem Befolgen der Punkte herauskommen kann:

Alles schön und gut, aber wenn ihr das ganze so lasst, bekommen eure Helden immer noch kein Geld. Es fehlt noch eine winzige Kleinigkeit, nämlich die, dass der "$ gestohlen"-Switch wieder auf OFF gesetzt wird, damit ihr die Monstergruppe, nachdem sie besiegt wurde, erneut bestehlen könnt und eine Funktion, die euch das erbeutete Geld gibt. Und da dies Map-Unabhängig sein soll, gehen wir den Weg über die Common Events, die ihr ebenfalls in der Data-Base findet.

  1. Klickt also innerhalb der Data-Base auf die Registerkarte "Common Events". Wählt dort im Listenfeld links eine freie Zahl aus, der ihr das Event zuweisen wollt und gebt dem Event im Feld "Name" einen Namen (z.B.: $ gestohlen ENDE). Wählt als "Event Start Condition" die Option "Parallel Process" und als "Appearance Conditions Switch" den Switch, den ihr unter Punkt 5 oben als "$ gestohlen" definiert habt, aus.
  2. Klickt doppelt in die leere Zeile des großen Feldes darunter und wählt im darauffolgendem Fenster die erste Registerkarte und dort den Button "Change Gold held".
    Wählt im Feld "Set" die Option "Increase Money" und im Feld "Operand" die Variable, die ihr oben unter Punkt 8 angelegt habt. Bestätigt das ganze dann mit OK.
  3. Danach klickt ihr doppelt in die leere Zeile unter der "Change Gold held"-Funktion und wählt im darauffolgendem Fenster die erste Registerkarte und dort den Button "Change Variable".
    Im Feld "Choose Variable" wählt ihr die Variable aus, die die "Stehlwahrscheinlichkeit" festgelegt hat. Wählt im Feld "Set" die Option "Set" und im Feld "Operand" die Option "Set" und dahinter gebt ihr eine 0 (Null) ein.
  4. Macht das gleiche auch für die Variable, welche die Geldmenge festlegt, die euer "Dieb" gestohlen hat.
  5. Klickt nun doppelt in die leere Zeile unter der zweiten Variable und wählt im darauffolgendem Fenster die erste Registerkarte und dort den Button "Change Switch". Hier wählt ihr den Switch aus, den ihr schon im Feld "Appearance Conditions Switch" des Common Events ausgewählt habt ("$ gestohlen"), nur dass er jetzt auf OFF gesetzt wird. Fertig. Nun noch ein kleines Code-Beispiel:

Beachtet, wie beim Item-Stehlen-Skill auch, dass ihr immer die gleichen Switches und Variablen benutzt, um euch Unmengen von Arbeit zu ersparen. Die Buttons "Copy Page" und "Paste Page" sind sehr hilfreich, wenn ihr euch noch mehr Arbeit ersparen wollt...


[zurück]