Skip to content

ra101/PokeShelf

Repository files navigation

source_code download download

Stars Forks License Open Issues Contributors


📄 Prerequisite

There various methods to make a Pokémon fangames. The most notable ones are:

  • Using Pokémon Essentials, A base RPG Maker XP project that comes with its own debugger, map connector and alot of free tools, It is community driven project, and is always up-to-date! RPG-Maker-XP only compiles games to Windows, so these are essentially Windows only games!
  • By ROM Hacking, These are created by editing the base ROM of legally owned Pokémon game, We will be taking only GameBoy Series and Nintendo DS in account, since they have the most used games as base Image. These Fangames are made for their respective console, but can be played on any device using Emulator!

💼 About

"Those who play Pokémon Games, typically have alot of them" ~ My Experience

PokéShelf is a living gallery that hosts all games downloaded/installed by the User, May it be Essentials game or GBx/NDS ROM!

  • PokéShelf itself is themed like a Pokémon game menu, with almost no mouse input and key bindings similar to Emulators and Essentials game, all this to maintain the Immersion.
  • Once Configured, Play Games Directly from PokeShelf, even the ones that require Emulator!
  • You can Add Custom Background Image/Video and Custom Music for each fangame.
  • Auto Add functionality for BG and Music for most of the Essentials Games, To enable this functionality with ROMs or with your incompatible Essentials Game, Check the BG Auto-Add Guide.
  • Lastly, A Quit-to-Tray Option, if required, I personally never used It.

💥 Get Started

You are First Encountered with the Splash Screen, Add a game in order to get in the Shelf.


( θ ) Controls:

Action Key
Escape <Esc><X>
Navigation ⬆️ │ <Shift-Tab> ; ⬇️ │ <Tab>
Adjust Value ⬅️ ; ➡️
Enter <Enter><C><Z><Space>


( I ) Open Options by Press Alt + S (S as in Settings) or Click on Options in Menu Bar.

Alt + S

  • Adjust Music Volume

  • Adjust Screen Size, >= L recommended

  • You can't update Game Order within Shelf, Edit it in config.json.

  • Add GBx Emulator if you intend to add GameBoy ROMs, VisualBoy Advance is tested and recommended, It can emulate all GameBoy Series consoles (.gb, .gbc, .gba)

  • Add NDS Emulator if you intend to add Nintendo DS ROMs, DeSmuME is tested and recommended.

  • Activate Quit-to-Tray Option, if required

  • Save to remember this for next time, Cancel to revert back or Press Esc to simply use these settings as a one time thing.



( II ) Open Add Game by Press Ctrl + A (A as in Add) or Click on Game > Add Game in Menu Bar.

Ctrl + A

  • Add Essentials Game (.exe) or GBx ROM (.gb, .gbc, .gba) or NDS ROM (.nds). (While Adding ROMs make sure to have already added respective Emulator or else Save Button won't work)

  • As soon as you add Game, Auto Add functionality would kick in for BG Image/Video and BG Music, But incase it doesn't, You have ability to Manualy Select Both of Them

    • File type for BG Image/Video: .png, .jpg, .jpeg, .bmp, .gif, .mp4, .mkv, .webm, .avi, .mov
    • File type for BG Music: .wav, .ogg, .flac (unfortunately .mid is not yet supported)
    • If it doesn't kick in, To enable this functionality with ROMs or with your incompatible Essentials Game, Check the BG Auto-Add Guide, and go to edit menu and readd the game.
  • Press Save, It will send into the Shelf Screen, with your game displayed on front, Cancel will send you back to Spash Screen.



( III ) Once A Game is Added, You can go to Shelf Screen by Ctrl + S (S as in Shelf) or Click on Game > PokeShelf in Menu Bar.

Ctrl + S

  • You can use <Left>-<Right> to navigate b/w Games; Press <Enter> to Exit Shelf and Start the selected Game!

  • To Remove Game, Simpily naviagte to the game you want to remove and Press Ctrl + R (R as in Remove) or Click on Game > Remove Game in Menu Bar.

    Ctrl + R

  • To Edit Game, Simpily naviagte to the game you want to edit and Press Ctrl + E (E as in Edit) or Click on Game > Edit Game in Menu Bar.

    Ctrl + E



( IV ) To get Details about the app, Press Alt + A (A as in About) or Click on About in Menu Bar.

Alt + A



📜 How BG Auto-Add Works!

Background files are added automacially for Essentials Games, This is see how a typical Essentials Game Folder Structure Looks:

So, Shelf automatically looks for
  • BG Img/Vid in ./Graphics/Titles/
  • BG Music in ./Audio/BGM/

Priority List for File Name:

Lower the Rank, Higher the Priority

  1. Shelf: for example, shelf.gif , SHelf.mp4, ShElf.ogg

  2. GameName :

    • Folder Name for an Essentials Game, e.g.:eSsEnstiAls gAme.png, Pokemon Uranium.wav
    • ROM File Name for ROM, e.g.: radical-red-v2.3a.jpg, unbound-v1.1.3.1.ogg
  3. Title : First file with name starting with title, e.g.: title1.mkv, TitLe-random.flac

  4. Splash : First file with name starting with splash, e.g.: splash151.mkv, splash-splish.ogg


To Make your Essentials Game PokéShelf Compactible, Developers are Recommended to use Shelf


Recommended Folder Structure for ROMs:

Since Shelf is already checking for files in ./Graphics/Titles/ and ./Audio/BGM/, We can create those folders and just add files there, (for each of the roms)

Shelf, Title and Spalsh will display the same Image for all the ROMs, therefore GameName is the only one applicable when you have more than one ROM.

To Make your Fan ROM PokéShelf Compactible, Developers are Recommended to use GameName



🤙Contact Me

Protonmail Telegram


Made with ❤️ by〈 RA 〉