Giratina RNG Abuse


This section of the guide aims to provide a worked example for how to RNG abuse Giratina.

If you have made it this far, you should already have the initial setup completed and have a general understanding of how to use Moarencounterbots and the RNG abuse scripts.


This part of the guide is still a WIP! Check back later when it's complete.

Don't understand how to use the tools/scripts yet? Click here to go back!
Getting Started (Delay Calculation):

You will need to calculate the rough delay for this encounter. The term 'delay' refers to how long it takes for the Pokemon to generate after the final A Press. Since the number of frames that advance during the cutscene is variable, it's important to take a few practice attempts to determine a delay that is consistent for you.

By pressing the Y Button the player will tumble in whatever direction they are currently facing. This movement tech is used to enter the cutscene loading zone that initiates the battle with Giratina. For the purposes of this guide this will be referred to as the "tumble method".

The tumble method is more consistent than simply walking towards Giratina, as it allows the player to be less precise with their exact positioning.
Calculating Delay (Step-By-Step)
  • Save outside Giratina as close as you can before the cutscene loading zone, anywhere within a single "tumble" distance is acceptable.
  • Press the Home button (⌂) to freeze the RNG state, then check your current seed by running EncBotCopySeedLA in Moarencounterbots.
  • Paste your seed produced in the Logs tab into the Main RNG script, then search without filters. This will provide the starting frame.
  • Quickly unpause the game, then quickly tumble towards Giratina (using above GIF as a reference) to initiate the cutscene and enter the battle.
  • Use PokeViewer.NET View function to read the details of the encounter, take note of the PID of the Giratina.
  • Search for the PID in the search results of the Main RNG script, you can manually search through results or use CTRL+F).
  • Take note of advancement that generated Giratina, this will be your delay for this attempt. Repeat this process a few more times to get a rough average delay.

Figure 1 - Calculating Delay



After following the delay calculation steps and searching for the PID of the encountered Giratina, we find that it was generated on frame x. Therefore, our delay for this attempt is x. After 5 attempts, we have the following delay values:

Attempt Delay Value
Attempt 1 x
Attempt 2 x
Attempt 3 x
Attempt 4 x
Attempt 5 x

This means a safe delay value to target in future attempts is x-x. The delay values shown here are based on how quickly I was able to use the tumble method to initiate the battle, your results may vary.

Now that we have a rough delay range, it's time to focus on finding a suitable seed and target frame.

Figure 2 - Setting Filters



In this example, the filters are configured to search for any Giratina with 6 perfect IVs (31/31/31/31/31/31). You can further customize the filters if desired, such as specifying a particular nature or optimizing for 0 IV values, such as 0 Attack.

Figure 3 - Target Frame Found



Great! We discovered a xyz natured Giratina in xyz advances within a cluster of y. A cluster refers to a group of frames that produce the same end result; the larger the cluster, the greater the chances of hitting the correct target frame.

Now, we need to advance close to our target frame. Monitor your RNG state by running EncBotRNGMonitorLA in Moarencounterbots; this will track the number of advancements that occur in real time.

Figure 4 - RNG State Monitoring Using EncBotRNGMonitorLA



The RNG state at in Turnback Cave advances at a slow rate. Moving to a more populated area allows you to advance the RNG state much more quickly. In the example image above, the player is standing next to a large body of water in an area densely populated with Pokemon.

Consider leaving Turnback Cave and heading to a location where the RNG state advances more rapidly if you need to cover a large amount of frame advancements. If you have moved locations, make sure to leave enough time to reposition yourself to avoid overshooting your target frame.

Example

If it takes you roughly 3,000 frames to get back to Giratina from your position, start to head back to it at roughly ~3500 frames away from your target, leave enough time to reposition yourself to avoid overshooting!

Figure 5 - Advancing To The Target



We are now back inside Giratina's cave and xyz frames away from the target, now it is time to get as close as possible to it and wait for the optimal time to use the tumble method and initiate the battle.

Figure 6 - Tumble method positioning



Stay as close as possible to Giratina (pictured above), and let EncBotRNGMonitorLA run until the Logs tab displays the correct target frame. You can use the Home button (⌂) to close in on your target frame at your own pace.

x (earliest target frame) - y (delay) = z (frame to press A)

Figure 7 - Hitting The Target Frame



Here we can see the target is now on frame x after re-entering the seed into the script. The calculated delay from earlier is roughly y. This means that once the SysBot log output displays that we are on frame z we have reached the desired target frame.

Once you reach the expected target frame, unpause the game and quickly use the tumble method to initiate the cutscene, then inspect the Giratina using PokeViewer.NET View function to see if the correct target frame was hit.

Figure 8 - Result Found!



We hit our target frame and have secured a Giratina with 6 perfect IVs! That's all there is to it!