Been working on this for a while, just finished the "polished" version and pushed to github.
Feedback welcomed !pkHouse
A local bank system for Pokemon games on Nintendo Switch.
Move Pokemon between your save files and local bank storage.
Disclaimer
This software is provided "as-is" without any warranty.
While the app has been tested, it may contain bugs that could corrupt or damage your save files.
Use at your own risk and always backup first !
The author is not responsible for any data loss or damage to your save data.
This is why the automatic backup system exists — always verify your backups before making changes.
If you need to restore a backup, use a save manager such as Checkpoint or JKSV to import the backup files back onto your Switch.
Supported Games
| Game | Tested Version | Save Format | Boxes | Slots/Box |
|---|---|---|---|---|
| Pokemon Let's Go Pikachu | 1.0.2 | BEEF blocks (savedata.bin) | 40 | 25 |
| Pokemon Let's Go Eevee | 1.0.2 | BEEF blocks (savedata.bin) | 40 | 25 |
| Pokemon Sword | 1.3.2 | SCBlock (main) | 32 | 30 |
| Pokemon Shield | 1.3.2 | SCBlock (main) | 32 | 30 |
| Pokemon Brilliant Diamond | 1.3.0 | Flat binary (SaveData.bin) | 40 | 30 |
| Pokemon Shining Pearl | 1.3.0 | Flat binary (SaveData.bin) | 40 | 30 |
| Pokemon Legends: Arceus | 1.1.1 | SCBlock (main) | 32 | 30 |
| Pokemon Scarlet | 4.0.0 | SCBlock (main) | 32 | 30 |
| Pokemon Violet | 4.0.0 | SCBlock (main) | 32 | 30 |
| Pokemon Legends: Z-A | 2.0.1 | SCBlock (main) | 32 | 30 |
Each box holds 30 Pokemon slots.
Note: Moving Pokemon between different games is not supported. Banks are separated by game family because transferred Pokemon would lack the HOME Tracker ID required for cross-game compatibility.
Features
Profile Selection
On Switch, pkHouse loads all user profiles from the system.Select your profile, then choose a game.
The app detects which games have save data for the selected profile.
Your profile name is shown alongside the game name in all views.
Two-Panel Box Viewer
The main view displays your game save on the left and your bank on the right, side by side.Navigate freely between both panels to move Pokemon back and forth.
Pick & Place
Press A on a Pokemon to pick it up, navigate to any slot (in either panel), and press A again to place it.Placing on an occupied slot swaps the two Pokemon.
Press B to cancel and return the Pokemon to its original slot.
Multi-Select
Toggle selection on individual Pokemon in the current box with Y.Selected slots display a numbered badge showing the pick-up order.
Press A to pick up all selected Pokemon, then navigate to another box and press A to place them into the first available empty slots (in selection order).
The destination must have enough empty slots for the entire group.
Press B to cancel and return all Pokemon to their original positions.
Selection is cleared when switching boxes or panels.
Pokemon Details
Press X on any Pokemon to view detailed information:- Species, level, gender
- National Pokedex number
- Original Trainer (OT) and Trainer ID
- Nature and Ability
- All 4 moves
- IVs (perfect 31s highlighted in gold)
- EVs
Bank System
Banks are local.bin files stored per game family.Paired games share the same bank folder, so you can move Pokemon between versions (e.g. Sword and Shield).
| Game Family | Bank Folder |
|---|---|
| Let's Go Pikachu / Eevee | banks/LetsGo/ |
| Sword / Shield | banks/SwordShield/ |
| Brilliant Diamond / Shining Pearl | banks/BDSP/ |
| Legends: Arceus | banks/LegendsArceus/ |
| Scarlet / Violet | banks/ScarletViolet/ |
| Legends: Z-A | banks/LegendsZA/ |
From the bank selector you can:
- Create a new bank (up to 32-character name)
- Rename an existing bank
- Delete a bank (with confirmation)
The bank list shows the number of occupied slots for each bank.
You can switch between banks from the main view via the menu, with or without saving first.
Backup System
When loading a game save on Switch, an automatic backup is created before any modifications:
backups/<profile>/<game>/<profile>_YYYY-MM-DD_HH-MM-SS/
This is a full copy of the mounted save directory.
The backup is only created once when initially selecting a game — switching banks does not trigger additional backups.
Running
Applet mode is not supported due to memory constraints.Launch in Title Override mode.
Launching in Applet mode will simply tell you it can't run in this mode.
Save Integrity
- SCBlock saves (ZA, SV, SwSh, PLA): Decrypted, modified, and re-encrypted. A round-trip verification runs on load to confirm the cycle is lossless.
- BDSP saves: Flat binary with MD5 checksum, recalculated on every save.
- All saves are written in-place to preserve the Switch filesystem journal.
Credits
- PKHeX by kwsch — PokeCrypto research and save structure reference
- JKSV by J-D-K — Save backup and write logic reference
- Built with libnx and SDL2
https://github.com/Insektaure/pkHouse
Screenshots below !
Attachments
-
001.jpg51.1 KB · Views: 38 -
014.jpg82.3 KB · Views: 25 -
013.jpg76.5 KB · Views: 19 -
012.jpg70 KB · Views: 39 -
011.jpg99.5 KB · Views: 23 -
010.jpg82.9 KB · Views: 25 -
009.jpg99.8 KB · Views: 17 -
008.jpg99.6 KB · Views: 21 -
007.jpg95.6 KB · Views: 30 -
006.jpg99.4 KB · Views: 36 -
005.jpg28.7 KB · Views: 29 -
004.jpg25 KB · Views: 36 -
003.jpg81.3 KB · Views: 22 -
002.jpg36.2 KB · Views: 22
Last edited by Insektaure,











