BDSP RNG Manipulation (CFW)

A guide for manipulating encounters, gifts & eggs in BDSP, using moarencounterbots by Lusamine and PokeFinder by Admiral-Fish.
Introduction

RNG manipulation in Brilliant Diamond/Shining Pearl is used to control the details of upcoming encounters/gifts/eggs. It is possible to predict values such as IVs, Nature, Marks, Shiny Status, Size (Jumbo/Teensy Mark in SV), Gender and more! It is also possible to manipulate your Trainer ID for cosmetic purposes. The table below contains information about the types of RNG, provides example images, and provides details of each RNG type.

RNG Type Description
Static

Encounters initiated by pressing the A button, can be found in fixed locations on the map.

Examples Legendaries, Mythicals, Drifloon, Spiritomb, Rotom, Honey Tree.
Wild

Encounters initiated at random in grass/caves/water, or by using Honey/Sweet Scent.

Examples Legendaries, Mythicals, Drifloon, Spiritomb, Rotom, Honey Tree.
Fishing

Encounters initiated by throwing your fishing rod into a body of water.

Examples Any case where the player has used the Old/Good/Super Rod in a body of water.
Gift Pokémon or eggs recieved from NPCs or through Mystery Gift distribution feature.
Eggs Eggs recieved from the Day-Care couple in Solaceon Town (NOT NPC EGGS).
Underground Encounters initiated by entering a cave inside the Sinnoh Grand Underground.
PokéRadar Encounters initiated by using the PokéRadar and entering a shaking grass patch.
Trainer ID Your 6 digit Trainer ID, usually manipulated for cosmetic purposes.

Software Installation

This section provides setup and installation instructions and an overview of the tools used for RNG.
Required Software
Tools and Applications
Installation Instructions
  1. Download PokeFinder and extract the contents of the download to a clean, empty folder inside a known location on your computer.
  2. Download SysBot.NET - Moarencounterbots and extract the contents of the download to a clean, empty folder inside a known location on your computer.
  3. Download PokeViewer.NET and extract the contents of the download to a clean, empty folder inside a known location on your computer.
  4. Download sys-botbase and extract the atmosphere folder to the root of your Switch SD card, then reboot the console into your chosen CFW environment.
  5. Download LINQPad installer and run the setup wizard until complete, this program is required to run the PokéRadar scripts.
  6. Download the PokéRadar scripts and place them inside a folder next to LINQPad.exe for easy access.

Information - A pre-compiled (direct download) version of the SysBot.NET fork used in this guide has been provided in the download links above. This build is considered fine for 99% of people and will be updated periodically when major changes are added. To use the absolute latest of the program you will need to compile and configure it yourself using the Moarencounterbots build guide.

Program Overview

Start here if you are unfamiliar with how to use PokeFinder, Moarencounterbots & PokeViewer.

Figure 1 - PokeFinder Overview

main-page-1
PokeFinder Overview

PokeFinder is used calculate upcoming advances based on your current seed. When launching PokeFinder for the first time a smaller window with multiple tabs will appear. For Brilliant Diamond & Shining Pearl we will be using the Gen 8 tab. When clicking the tab you will see multiple options for each type of RNG.

Each of these windows will appear visually similar and will work fairly similarly in practice. More information about how to set up for a particular type of RNG will be covered later. In the above image the Wild button was selected and a larger window appeared. It contains various field for the user to enter information into:

  • Left Side - Search conditions, type of encounter, seed input & # of advances.
  • Center - Pokémon details, such as species to hunt or parents for egg encounters.
  • Right Side - Set search filters for desired results (e.g. shiny or high IV targets).
  • Top - Manage profiles, input save file information.
  • Bottom - Display all results that match the given search perameters.

Figure 2 - PokeFinder Profile

main-page-2
PokeFinder Overview

PokeFinder profiles should be configured properly before attempting to RNG abuse Pokémon. This will ensure that the search results given by PokeFinder are displayed correctly. Setting up your profile is particularly important for shiny egg RNG.

PokeFinder requires the internal (5 digit) Trainer ID/Secret ID of your save file to produce the correct PID. These IDs should not be confused with your 6 digit in-game Trainer ID. If you do not yet know your internal ID values you can easily find using PKHeX:

Profile Configuration
  1. Open an existing BDSP save file in PKHeX (save management tutorial).
  2. Right-click any Pokémon with the TID/SID you wish to check and click View.
  3. Navigate to the OT/Misc tab, then hover over the TID field with your mouse.
  4. Your 5 digit TID/SID will be displayed here, enter these values into Notepad or similar.
  5. Open PokeFinder and select an encounter type (Egg/Gift/Wild/Static/Underground).
  6. Click the Manager button at the top of the window to open a subwindow.
  7. Click New and give your profile a name, then enter your IDs.
  8. Select the relevant checkboxes on the right to match your save file, then click Done.

If you plan to manipulate your IDs for cosmetic purposes you can skip this section of the guide for now and revisit after your desired IDs have been obtained.


Figure 3 - Moarencounterbots Configuration

main-page-3
Moarencounterbots Initial Configuration

Moarencounterbots is used for monitoring RNG seeds and automating the main bulk of the RNG advancement process. By default the program is configured to work with the latest games (not BDSP). To fix this issue you will need to the Mode by do the following:

Initial Bot Configuration
  1. Open SysBot.exe once then close it again to generate a file named config.json.
  2. Open config.json in a text editor like Notepad.
  3. Change the Mode to 2 (this represents BDSP) and save the changes.
  4. Reboot the program, you should now see BDSP in the program header.
  5. Navigate to the Hub tab and open the EncounterRNGBS dropdown menu.
  6. Change DisplaySeedMode from the default Bit32 option.
    • If you are using PokeFinder, set this option to Bit64PokeFinder.
    • If you are using LINQPad scripts, set this option to Bit128.
  7. In any case, set the MonitorRefreshRate to 0.
  8. Close the program to lock in your settings configuration and relaunch SysBot.exe.
Connectivity Confirmation
  1. Open the Homebrew Menu on your console, then press the Y button.
  2. Type the IP address displayed here into the assigned field on the SysBot window.
  3. Open BDSP and enter the overworld in-game.
  4. Select EncBotRNGMonitorBS from the dropdown menu on the right.
  5. Add the bot and click Start All to confirm that it is functioning properly.

If the active bot does not respond with a 🟩 (or there is an error in the Logs tab) this means that something went wrong. Visit the official SysBot.NET Wiki and follow the troubleshooting instructions. Do not continue following this guide until the bot is functioning properly.


Figure 4 - Moarencounterbots Overview

main-page-4
Moarencounterbots Overview

When launching SysBot.NET we can see 3 different tabs at the top of the window labelled Bots, Hub & Logs. Each of these tabs have their own uses.

Bot Tabs
  1. Bots - Add, remove or restart any of the bots in the dropdown menu on the right.
  2. Hub - The central hub for determining how your bot operates.
  3. Logs - Monitor any currently active bots to ensure a smooth operation.
Bot Types
  1. EncBotRNGMonitorBS - Monitor your RNG seed in real time.
  2. EncBotCopySeedBS - Copy your RNG seed to clipboard at any point.
  3. EncBotTIDBS - Automate the process of TID RNG abuse.
  4. EncBotDexFlipBS - Automatically advance the RNG state until a given point by flipping PokéDex pages.

Visit the official Moarencounterbots Wiki for more detailed information about program features.


Figure 5 - PokeViewer.NET Overview

main-page-5

PokeViewer Overview

When launching PokeViewer.exe we can see the connectivity functionality is similar to Moarencounterbots. PokeViewer is used to read the details of a Pokémon during a battle or found inside boxes which is important for troubleshooting in the event that a target frame is missed and some calibration is required.

To connect your console to PokeViewer, find your console's local IP address by opening the Homebrew Menu and pressing the Y button. Enter this IP address into the designated field. Then click Connect once you are standing in the overworld in-game.

Main Features
  1. EncounterView - Used to view the details of an opposing Pokémon during a battle.
  2. BoxView - Used to view the details of a Pokémon located inside boxes.

Visit the official PokeViewer Wiki for more detailed information about program features.

Important - At this stage the three main programs (PokeFinder, SysBot.NET & PokeViewer.NET) should be configured properly configured and you should have a basic understanding of how to use them. Setting up LINQPad scripts for PokéRadar RNG manipulation will be covered on the PokéRadar page.

The Process

Identify which type of RNG manipulation suits your needs/goals, then click the button that applies to you.
TRAINER ID (TID)! STATIC ENCOUNTERS! STATIC GIFTS! WILD ENCOUNTER! FISHING ENCOUNTER! EGG REDEMPTION! GRAND UNDERGROUND! POKERADAR!