Angel-Pokémon

Dieser Artikel beschreibt das Angeln.

Weiterführende Links

 

Inhalt

Wo man angeln kann

Man kann angeln, indem man vor einem Wassertile steht (also Tiles mit dem Terrain Tags 5, 6, 7, 8 oder 9). Der Spieler kann angeln, wenn er auf dem Land steht oder während er surft.

Angel-Sprites

Angeln beinhaltet einen Sprite des Spielers, der ihn beim Angeln zeigt. Es gibt nur eine Versionen dieser Animation. Dieser wird durch die Metadaten des Spielecharakters bestimmt. Wie bei allen anderen Charakter-Grafiken, nimmt auch das Angel-Charset Rücksicht auf mögliche Outfits des Spielers.

Encounter-Typen

Es gibt drei Encounter-Typen, die für das Angeln verwendet werden:

  • OldRood (Angel)
  • GoodRod (Profiangel)
  • SuperRod (Superangel)

Der einzige Unterschied zwischen den drei Encounter-Typen ist die Anzahl der Einträge (2, 3 und 5). Sie müssen nicht zwangsläufig in der Reihenfolge „am schlechtesten -> am besten“ verwendet werden. Siehe den Artikel Wilde Pokémon für mehr Informationen.

Scripts

Die Angel-Scripts sind alle im Script-Bereich PField_Field gespeichert. Die Hauptmethode wird pbFishing genannt. Hier eine Erklärung, wie diese Methode funktioniert:

Die erste Methode definiert zwei Werte: bitechance (Wahrscheinlichkeit, dass etwas anbeißt) und hookchance (Wahrscheinlichkeit, dass nach dem Einziehen der Angel ein Kampf entsteht). Beide Werte sind standardmäßig auf 65% gesetzt.

Dann wird die Methode pbFishingBegin aufgerufen, welches die Angel-Animation abspielt.

Eine zufällige Zahl (time) wird ausgewählt (2 + rand(10) Punkte). Danach wird die Methode pbWaitMessage aufgerufen, welche „. . . . .“ anzeigt, mit der Geschwindigkeit eines Punktes pro 0,5 Sekunden. Die Anzahl der Punkte wird von time vorgegeben. Wenn der Spieler den A- oder B-Knopf drückt, während die Nachricht angezeigt wird, wird das Angeln mit der Nachricht „Not even a nibble…“ abgebrochen.

Wird das Angeln nicht abgebrochen, dann wird wieder eine zufällige Zahl generiert (eine von 100). Wenn diese Zahl größer als bitechance ist oder kein Angel-Encounter für die bestimmte Angel definiert wurde, dann wird das Angeln mit der Nachricht „Not even a nibble…“ abgebrochen. Ist es weniger als bitechance, dann wird die Methode pbWaitForInput aufgerufen, welches die Nachricht „Oh! A bite!“ am Ende der Punkte eingeblendet. Es wird dann eine kurze Zeit ((15 + rand(6)) / 40 Sekunden) auf den Spieler gewartet, damit dieser entweder den A- oder B-Knopf drückt. Geschieht dies nicht innerhalb des Zeitraumes, dann wird das Angeln mit der Nachricht „It got away…“ abgebrochen.

Sollte der Spieler in der Lage sein, den Knopf gerade dann zu drücken, wenn die Zahl gleich groß ist wie bitechance, dann wird eine dritte Zahl ausgesucht (eine von 100). Ist diese Zahl kleiner als hookchance, dann wurde ein Pokémon geangelt und ein Kampf startet. Ist die Zahl größer als hookchance, dann wiederholt sich die Prozedur (also alles nach dem Angelauswurf). Allerdings wird bitechance und hookchance um 15 erhöht (wodurch die Chance steigt, dass ein Pokémon anbeißt). Dies passiert solange, bis entweder der Spieler ein Pokémon am Land zieht (wodurch ein Kampf beginnt) oder es fehlschlägt.

Am Ende der Sitzung (sowohl bei Erfolg, als auch bei Nichterfolg) wird die Methode pbFishingEnd aufgerufen, was einfach nur eine Umkehrung der Angelauswurf-Animation ist (die Angel wird wieder eingefahren). Danach startet ein Kampf (falls das Angeln erfolgreich war).

Automatisches Anbeißen

Es gibt die Einstellung FISHINGAUTOHOOK im Script-Bereich Settings. Ist dieser auf true, dann wird automatisch ein Pokémon am Land gezogen, ohne dass man vorher einen Reaktionstest erledigen muss.