Code Structure of the Universal Pokémon Randomizer FVX
This page is for aspiring developers, and others who are curious about the source code of the Universal Pokémon Randomizer FVX.
The Randomizer is divided into five modules. There are also some assorted folders like gradle and .github, but most editing is done inside these modules:
-
docs: The Randomizer’s website, also holding the release notes. -
devtools: Developer tools, primarily for generating resources forromio/random. -
random: The randomization logic, and also the GUI. -
romio: The interface to the game files (ROMs). -
utils: Various utilities such as compressors, most of them ports of external code.
When working on the Randomizer, you will most likely work inside random and/or romio, and document your changes inside docs.
Each module depends on the modules below it in the above list, and can thus access their code, but not vice versa. This is enforced by the build system. E.g., Item (from romio) can be used inside ItemRandomizer (from random), but the reverse would not be possible.
Wiki pages:
- Randomizing the 3DS games
- About Java
- Building the Universal Pokémon Randomizer FVX
- CLI Randomizer
- Custom Player Graphics
- Estimated Evolution Levels
- Evolutions
- Home
- Important Info
- Items
- Known Issues
- Move Names
- Moves
- Movesets
- New Feature Summary
- Pokemon Base Statistics
- Static Pokemon
- Code Structure of the Universal Pokémon Randomizer FVX
- Wild Pokemon
Universal Pokémon Randomizer FVX