This is a (work-in-progress) upgrade to the game systems for US distributions of Pokemon Platinum.
Since the project is still in-progress, it is more sensible to list out the goals for the project than a list of presently-implemented features.
- A completely revamped and upgraded Battle Engine sporting feature parity with Generation 8:
- Hidden Abilities
- Mega Evolution + Primal Reversion
- Pokedex Expansion of all mons up through generation 8
- Ability Expansion of all abilities up through generation 8
- Updated effects for moves and abilities present in vanilla generation 4
- Configuration options and code to implement new functionality for battle systems, item systems, etc.
- Decompiled data files represented as easily-editable code structures.
- Support for enemy trainers with fully-customized competitive parties, including EV spreads, specific IV spreads, and explicit ability and nature specifications.
- Download and install the Microsoft .NET Framework.
- Choose the Developer Pack option.
- If you have a different version of the .NET Framework already installed, then you may use the newest version which you have installed rather than the linked version.
- Edit your environment variables.
- In the search bar in the Start Menu, search for "environment variables" and click on Edit the system environment variables. Wait for a new window to pop up titled System Properties.
- Click on Environment Variables... in the bottom right of the new window. Wait for a new window to pop up titled Environment Variables.
- In the lower half of the Environment Variables window, look for a variable called Path and highlight it.
- Click Edit on the lower half of the Environment Variables window. A third new window will open titled Edit environment variable.
- In this new window, press New, then Browse....
- Navigate to This PC → Local Disk → Windows → Microsoft .NET → Framework.
- Select the newest version in this folder (the last item in the list), then click OK.
- In the Edit environment variable window, click OK.
- In the Environment Variables window, click OK.
- In the System Properties window, click OK.
- Enable Windows Subsystem for Linux.
- Open your command prompt as Administrator.
- In the search bar in the Start Menu, search for "cmd", right-click on Command Prompt, and click Run as Administrator.
- Execute the following command:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all
. - After the process is complete and once prompted to do so, restart your PC by entering "Y".
- While rebooting your system, enable virtualization in your BIOS. This will vary by system, but you can find a general sketch of the instructions here.
- Open your command prompt as Administrator.
- Install Ubuntu.
- In the search bar in the Start Menu, search for "store" and click on Microsoft Store.
- In the search bar, search for "Ubuntu".
- Click the blue Get button.
- Once installation is complete, launch Ubuntu from its page in the Microsoft Store to finish setup.
- Once setup is complete, enter a username and password for the system.
- Open WSL.
- Open the Run window by pressing the Windows key and R at the same time.
- Type
wsl
into the window and press Enter.
- Update WSL.
- In WSL, type
sudo apt update
and press Enter. - After the update process completes, type
sudo apt upgrade
and press Enter. This process may take a long time. - When prompted to confirm that WSL should restart automatically during package updates, select Yes and press Enter.
- In WSL, type
- Install necessary packages.
- In WSL, run the following commands as preliminary dependencies:
sudo apt-get install build-essential git libpng-dev gdebi-core python3 python3-pip cmake automake
pip3 install ndspy
- Still in WSL, run the following commands to install
dkp-pacman
:wget https://apt.devkitpro.org/install-devkitpro-pacman
chmod +x ./install-devkitpro-pacman
sudo ./install-devkitpro-pacman
- In WSL, run the following commands as preliminary dependencies:
- Install devkitPro.
- In WSL, run
dkp-pacman -S gba-dev
, then press Enter when prompted to choose what to download from thegba-dev
library. - Close and re-open WSL so that changes applied by
dkp-pacman
will be loaded. - Run the following commands in order:
export DEVKITPRO=/opt/devkitpro
echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
export DEVKITARM=$DEVKITPRO/devkitARM
echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
cd Documents
(or wherever else you want to store your project)git clone https://github.com/lhearachel/plat-engine.git
- In WSL, run
From here, continue to Build Instructions.
- Download and install devkitPro.
- Use the Mac download (
.pkg
) and instructions here.
- Use the Mac download (
- Install Homebrew.
- Run the following in Terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
.
- Run the following in Terminal:
- Run the following commands:
xcode-select --install
brew install python3
brew install libpng
brew install automake
pip3 install ndspy
- Download and install Mono.
- Use the instructions here.
- Finish setting up devkitPro.
- In Terminal, run
dkp-pacman -S gba-dev
, then press Enter when prompted to choose what to download from thegba-dev
library. - Close and re-open Terminal so that changes applied by
dkp-pacman
will be loaded. - Run the following commands in order:
export DEVKITPRO=/opt/devkitpro
echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
export DEVKITARM=$DEVKITPRO/devkitARM
echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
cd Documents
(or wherever else you want to store your project)git clone https://github.com/lhearachel/plat-engine.git
- In Terminal, run
From here, continue to Build Instructions.
These instructions are, at present, only for Debian-based systems.
- Download and install devkitPro.
- Use the download and instructions here.
- In Terminal, run the following commands:
sudo apt-get install libpng-dev build-essential cmake python3-pip git automake
pip3 install ndspy
dkp-pacman -S gba-dev
- Close and re-open Terminal, then run the following commands:
export DEVKITPRO=/opt/devkitpro
echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
export DEVKITARM=$DEVKITPRO/devkitARM
echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
cd Documents
(or wherever else you want to store your project)git clone https://github.com/lhearachel/plat-engine.git
From here, continue to Build Instructions.
- Get your ROM.
- Before running any builds, verify that your ROM's checksum matches the checksum for a verified dump of Pokemon Platinum (US) (Rev 1).
- On Windows: Open your command prompt and run the following command:
certutil -hashfile [file location] SHA256
. - On Mac OSX: Open your Terminal and run the following command:
shasum -a 256 [file location]
. - On Linux: Open your Terminal and run the following command:
sha256sum [file location]
.
- On Windows: Open your command prompt and run the following command:
- Verify the output of whatever command you ran above against the following:
fbce4c4def0c7797f8dd238a3d7a5e48b4a7e3abd86890ac65f6321cef781bdb
. - It is highly recommended that you do all scripting and mapping updates to this file before you run the build process for the engine, then apply the engine at the end!
- Before running any builds, verify that your ROM's checksum matches the checksum for a verified dump of Pokemon Platinum (US) (Rev 1).
- Place your ROM in the same directory as this file and rename it to
rom.nds
. - In Terminal/WSL, navigate to this directory.
- Run
./install_deps.sh
. This will compile most of the tools that the engine needs to build. - Run
make
. - After the above process is complete, a new file will appear in this folder named
test.nds
. This new file is a copy of your ROM with the engine applied to it.