Hindernisse

Dieser Artikel beschreibt, wie man Hindernisse erstellt. Diese Hindern den Spieler an das Fortschreiten. Es werden auch Kopfnussbäume beschrieben. Die meisten Hindernisse kann man durch das Einsetzen einer Attacke loswerden.

Weiterführende Links
  • Events
    • Viele Hindernisse sind Events.
  • Tilesets
    • Manche Hindernisse sind Tiles mit bestimmten Terrain Tags.
  • Fortbewegen
    • Dieser Artikel gibt Information über das Surfen und Tauchen.
  • Feldattacken
    • Dieser Artikel beschreibt, wie man Attacken außerhalb des Kampfes nutzt. Diese können dazu verwendet werden, um Hindernisse zu zerstören.

 

Inhalt

Event-Hindernisse

Es handelt sich hierbei um nicht-passierbare Events. Die meisten können jedoch bewegt oder zerstört werden. Diese Events sind:

  • Bäume, die zerschnitten werden können (Zerschneider).
  • Rissige Steine, die zertrümmert werden können (Zertrümmerer).
  • Felsen, die bewegt werden können (Stärke).
  • NPCs, die den Weg versperren.

Zerschneiderbäume

Ein Baum, das mit Zerschneider zerschnitten werden kann, sieht folgendermaßen aus:

Es sollte auch Tree als Namen besitzen, da überprüft wird, ob sich vor dem Spieler ein Event befindet, auf der die Attacke eingesetzt werden kann, wenn dieser Zerschneider aus dem Menü auswählt. Ist dies der Fall, dann wird Zerschneider benutzt.

Die Move Route-Befehle sind dazu da, das Event zu animieren.

Das Script in der Bedingung enthält eine Nachricht, welche This tree looks like it can be cut down. lautet. Der Spieler wird dann gefragt, ob er die Attacke benutzen möchte. Danach wird die Attacke nach Möglichkeit eingesetzt. Es ist deswegen nicht erforderlich die Nachricht manuell einzufügen.

Wird der Baum zerschnitten, dann verschwindet das Event nur, bis die Map wieder betreten wird. Danach erscheint der Baum wieder. Um den Baum dauerhaft zu entfernen, ersetze pbEraseThisEvent durch ein Befehl, welches den Self Switch A auf ON stellt und erstelle eine zweite, leere Seite, welche als Bedingung diesen Self Switch A hat.

Zertrümmererfelsen

Ein rissiger Stein kann mit der Attacke Zertrümmerer zerstört werden. Dieser enthält folgende Befehle:

Es sollte auch Rock als Namen besitzen, da überprüft wird, ob sich vor dem Spieler ein Event befindet, auf der die Attacke eingesetzt werden kann, wenn dieser Zertrümmerer aus dem Menü auswählt. Ist dies der Fall, dann wird Zertrümmerer benutzt.

Die Move Route-Befehle sind dazu da, das Event zu animieren.

Das Script in der Bedingung enthält eine Nachricht, welche It’s a rugged rock, but a Pokémon may be able to smash it. lautet. Der Spieler wird dann gefragt, ob er die Attacke benutzen möchte. Danach wird die Attacke nach Möglichkeit eingesetzt. Es ist deswegen nicht erforderlich die Nachricht manuell einzufügen.

Wird ein rissiger Felsen zertrümmert, dann existiert eine 25% Chance, dass ein wildes Pokémon auftaucht (wenn der RockSmash-Encounter definiert wurde). Die Methode, die das bestimmt, befindet sich im Script-Bereich PField_FieldMoves.

Wird der Felsen zertrümmert, dann verschwindet das Event nur, bis die Map wieder betreten wird. Danach erscheint der Felsen wieder. Um den Felsen dauerhaft zu entfernen, ersetze pbEraseThisEvent durch ein Befehl, welches den Self Switch A auf ON stellt und erstelle eine zweite, leere Seite, welche als Bedingung diesen Self Switch A hat.

Stärkefelsen

Ein Felsen, das mit der Attacke Stärke bewegt werden kann, sollte nicht durch den Action Button-Trigger ausgelöst werden, sondern durch Player Touch, sodass sich der Felsen bewegt, wenn der Spieler diesen berührt. Das Event sollte folgenden Befehl enthalten:

Es sollte auch Boulder als Namen besitzen, da überprüft wird, ob sich vor dem Spieler ein Event befindet, auf der die Attacke eingesetzt werden kann, wenn dieser Stärke aus dem Menü auswählt. Ist dies der Fall, dann wird Stärke benutzt.

Das Script überprüft, ob die Attacke Stärke bereits eingesetzt wurde. Ist dies der Fall, dann bewegt es den Felsen. Die Prozedur (die Frage, ob man Stärke einsetzen möchte) wird von einem Script erledigt, welches überprüft, ob man vor einem Event namens Boulder steht. Ist dies der Fall, wird eine Methode aufgerufen, um den Spieler zu fragen, ob er Stärke einsetzen möchte. Siehe den Artikel Feldattacken für mehr Informationen.

Ein bewegter Felsen wird zu seiner Ursprungsposition zurückkehren, wenn der Spieler die Map verlässt. Manche Rätseln erfordern es, dass der Felsen auf seine neue Position bleibt (z.B auf einen Schalter) oder dass er verschwindet (z.B wenn er in ein Loch geschoben wird). Um dies zu bewerkstelligen, sollte man ein Control Event benutzen, das ständig die Koordinaten des Felsen als Parallel Process prüft und diesen ggf. verschwinden lässt, wenn er eine bestimmte Position erreicht hat (indem man auf eine neue Seite des Felsen-Events geht und die Prozedur mit Self Switches bestimmt).

Kopfnussbäume

Kopfnussbäume sind genau genommen keine Hindernisse, da sie nie überwindet werden können. Da sie jedoch ähnlich funktionieren, werden sie hier ebenfalls behandelt.

Ein Baum, welches mit der Attacke Kopfnuss zum Schütteln gebracht werden kann, besitzt folgende Befehle:

Es sollte auch HeadbuttTree als Namen besitzen, da überprüft wird, ob sich vor dem Spieler ein Event befindet, auf der die Attacke eingesetzt werden kann, wenn dieser Kopfnuss aus dem Menü auswählt. Ist dies der Fall, dann wird Kopfnuss benutzt.

Das Script in der Bedingung enthält eine Nachricht, welche A Pokémon could be in this tree. Maybe a Pokémon could shake it. lautet. Der Spieler wird dann gefragt, ob er die Attacke benutzen möchte. Danach wird die Attacke nach Möglichkeit eingesetzt. Es ist deswegen nicht erforderlich die Nachricht manuell einzufügen.

Wird ein Baum geschüttelt, dann existiert eine Chance, dass ein wildes Pokémon auftaucht (wenn der HeadbuttLow– und/oder HeadbuttHight-Encounter definiert wurde). Die Methode pbHeadbuttEffect, die dafür zuständig ist, befindet sich im Script-Bereich PField_FieldMoves. Die Berechnung der Chance auf ein wildes Pokémon und welche Kopfnuss-Encounter Methode benutzt wird, ist etwas kompliziert und benutzt u.a die Koordinaten des Baums, sowie die ID-Nummer des Trainers. Die Chance beträgt entweder 10%, 50% oder 80%, je nach Berechnung. Beträgt sie 10%, dann wird HeadbuttLow benutzt, ansonsten HeadbuttHigh.

Terrain Tags-Hindernisse

Es gibt Tiles mit bestimmten Terrain Tags, welches die Fortbewegung des Spielers verhindern oder einschränken. Diese sind:

  • 1 – Abhänge
  • 5, 6, 7, 8, 9 – Wassertiles (für Surfer)
  • 5 – Tiefes Wasser (für Taucher)
  • 8 – Wasserfälle (für Kaskade)
  • 12 – Eis

Die Bewegungseinschränkungen dieser Tiles (außer Eis-Tiles) werden durch ihre Passability-Eigenschaft definiert, anstatt durch ihre spezielle Eigenschaften als Tile. Diese Terrain Tags hier sind nur erwähnenswert, da sie die Bewegung des Spielers beeinflussen, wenn sie über diese Tiles gehen (siehe den Artikel Tilesets):

  • 1 – Der Spieler springt über dieses Tile, anstatt darüber zu gehen.
  • 5, 6, 7, 8, 9 – Können dank Surfer durchquert werden.
  • 5 – Kann ein Map-Wechsel bewirken, wenn man die Attacke Taucher einsetzt (siehe unten).
  • 8 – Der Spieler durchquert diese Tiles automatisch, entweder durch das Surfen nach unten oder durch das Einsetzen von Kaskade, um nach oben zu gelangen.
  • 12 – Der Spieler rutscht in eine Richtung, bis er auf etwas trifft.

Wasserfälle

Wasserfälle besitzen zwei verschiedene Terrain Tags: 8 (der Hauptteil) und 9 (die Spitze).

Der Hauptteil kann nicht durch Surfer betreten werden, sondern man muss mit diesem Tile interagieren (mit der Attacke Kaskade). Steigt der Spieler einen Wasserfall auf, dann bewegt er sich solange, bis er sich nicht mehr auf einen Tile mit einem der beiden Terrain Tags befindet.

Die Spitze des Wasserfalls ist die oberste Reihe. Surft der Spieler auf die Spitze des Wasserfalls, dann fällt er automatisch runter, bis er sich nicht mehr auf einen Tile mit einem der beiden Terrain Tags befindet.

Während der Spieler dem Wasserfall erklimmt/runtersteigt wird er keine wilden Pokémon begegnen.

Unterwassergebiete

Es gibt ein Terrain Tag für tiefes Wasser (5). Nutzt der Spieler die Attacke Taucher, während er auf so einen Tile surft, teleportiert er sich auf eine andere Map. Diese Map wird durch die DiveMapMetadata definiert. Alle Maps, die tiefes Wasser besitzen und erreichbar sind, müssen diese Metadata besitzen. Auch Unterwassermaps müssen diese besitzen (in diesem Fall beziehen die sich auf die Oberflächenmaps). Mehrere Maps können nicht die selbe DiveMapMetadata besitzen.

Die Unterwassermap muss dieselbe Größe haben, wie die Obeflächenmap. Das liegt daran, dass der Spieler, wenn er Taucher einsetzt, an derselben Stelle teleportiert wird, auf der er sich vorher befand. Aus diesem Grund sollten sich an diese Stellen keine Hindernisse befinden, auf die der Spieler landen könnte.

Es gibt eine Einstellung im Script-Bereich Settings, welche DIVINGSURFACEANYWHERE lautet. Ist dieser auf true, dann kann der Spieler von überall die Oberfläche erreichen, egal an welcher Stelle des Unterwassers er sich befindet. Ist dieser auf false, dann kann er nur an die Oberfläche, wenn er sich unter einer tiefen Wasserstelle befindet.

Man benötigt eine spezielle Methode, damit der Spieler zwischen mehrere Maps gehen kann, während er im Unterwasser surft (z.B für Unterwasserhöhlen). Siehe den Artikel Map-Übergang für weitere Informationen.