3DS RNG Tool

From GameBrew
3DS RNG Tool
3dsrngtool.png
General
Authorwwwwwwzx
TypeHack Utilities
Version1.0.6
LicenseMIT License
Last Updated2024/04/08
Links
Download
Website
Source

The 3DS RNG Tool is a randomization tool made for main 3DS Pokemon games. Some parts should work with PokeCalcNTR using NTR-CFW.

This tool is a complete rewrite based off SMEncounterRNGTool with largely improved performance and the following features:

  • Gen6 RNG, including stationary Pokemon, Mystery Gift Pokemon, wild Pokemon (75%), Eggs, and ID.
  • Transporter RNG for transferred Virtual Console Pokemon.
  • Gen7 stationary, Mystery Gift, and wild Pokemon RNG from the SMEncounterRNGTool.
  • Gen7 egg RNG and ID RNG based on Quandra's PokemonSunMoonRNGTool.
  • Several Gen7 egg RNG modifications that are more practical.

Screenshots

3dsrngtool-01.png3dsrngtool-02.png

Changelog

v1.0.6

  • Many enhancements and bug fixes (merged from #94).

v1.0.5

  • Fixes freezing in 1.0.4.

v1.0.4

  • Initial support for RNGing square shiny in Gen 8.
  • A Pokemon is square shiny if TSV = PSV (shiny) and TRV = PRV.
  • Definition of TRV (Trainer Residual Value, or you can call it TSSV: Trainer square shiny value).
    • TRV is the last 4 bits of TID xor SID, a value between 0 and 15 and it can be presented in a one-digit hex number.
    • TRV = (TID ^ SID) & 0xF.
    • TID ^ SID = (TSV << 4) | TRV. TRV is independant of TSV.
  • How to get your TRV.
    • Check your TID and SID again. Run script here.
    • In Gen 7, find your in-game 6 digits ID and TSV. Run script here. You may get at most two possible results.
    • Use updated Battle Video tool (KeyBV) to dump the trainer info.
    • As always, NTR Helper will update the TRV for you.

v1.0.3

  • Improved Tiny Timeline Tool.
    • Added Pokeradar patches RNG.
    • Added Auto-Calibration for soaring advance type.
    • Added XY ID RNG timeline method.
    • Added ORAS Kyogre/Groudon timeline method for Sync.
    • Allowed custom encounter rate of FS.
    • Fixed crash of TTT context menu.
  • Allowed "odd" delay method for wormhole Zapdos.
  • Added Unown (ORAS), Minior (Gen7) form RNG.
  • Renamed profile file.
  • Fixed Crabrawler gender generation.
  • Fixed slow gen6 stationary timeline generation in mainform.
  • Reduced reseeding lag of OneClick function.
  • Misc cleanup.

v1.0.2

  • Updated Gen7 initial seed APIs.
  • Added TID/SID combo search for Mystery Gifts renaming.
  • Reworked Gen6 TinyMT timeline stuffs.
    • Improved TinyMT timeline calculation performance.
    • Fixed Gen6 Synchronize results.
    • Fixed Rock Smash method.
    • Added normal wild template.
    • Added White/Black Flute effect in ORAS.
    • More features are working in progress.
  • Improved translation method.

v1.0.1

  • Added Gen7 ambush encounters RNG .
  • Added timeline leap calculator for stationary and event (PCalc only).
    • Efficiency was improved from 30 spreads per second to 630+ possible spreads per second.
    • Including menu method, especially for Xurkitree and Nihilego.
    • Added Gen6 frame advance column for odd/even.
  • Added SOS RNG UI tweaks.
  • Fixed WonderCards reading.

v1.0.0

  • Added SOS RNG.
  • Unlocked partner cap Pikachu shininess.
  • Updated USUM 1.2 wifi patch.
  • Added fishing item slots info.
  • Allow customized clock image (Format: \Clock_XX.jpg).
  • Added random berry table from berry piles.
  • Fixed several wormhole delay calculation.
  • Simplified Gen6 synchro check (maximum memory intensity required).

Credit

  • Zaksabeast, Zep715, Real96, Admiral Fish and Shiny_Sylveon for great teamworks on gen6 development.
    • Zaksabeast and Admiral Fish for building up the plugin.
    • Real96 for testing and lots of good advice.
    • Zep715 for figuring out tons of infomation from the assembly.
    • Shiny_Sylveon for contributions to Gen6 Egg RNG.
  • odanado for making Gen7 RNG API, which make us find initial seed mush faster.
  • Kaphotics for PkHeX, KeyBV and Pk3DS. I borrowed some code from the PKHeX Core Library and extracted ROM info using Pk3DS.
  • 44670 for NTRClient.

External links

Advertising: