In building a RetroPie Arcade Cabinet, I bought a Fastoe Retropie with RetroPi and 10,000 games. In retrospect this might have been a mistake, but maybe not.
RetroPie has a wonderful menu system to look through games.
However, IMO, 10,000 games is too many to wade through each time you want to play. I can also envision my kids and grandkids scrolling through the games for hours without being able to agree on what to play.
Step 1. Reduce Emulators and Game Count
This is an optional step. You don't have to do it. I'm not going to tell you what to eliminate, but I will tell you my approach.
I started with the idea of favoring games with better graphics. My youngest son, who was 25 at the time I wrote this, said he liked the poor graphics and very retro games. He thought that is what makes the RetroPie cool. He really liked the old gameboy black-and-white graphics. After evaluating the games for a while, I decided against keeping the "very" retro games. For example, the Atari5200 is retro but the Atari2600 are too retro for my tastes. Similarly with the original gameboy being too retro versus the color gameboy.
The controller selection may also limit the number of games or the quality of game play. For example, PlayStation controllers are very full featured whereas the SNES-style controller has far fewer buttons. I was told Diablo on PSX may be unplayable.
Note:
games or emulators can always be restored or removed. I erred on the side of duplicate games. I'll take feedback from users, and restore or remove as appropriate.
the media folders are very large. Initially, I made copies of these in unused. Don't do this. Moving a whole directory to unused is okay.
Step 2. Create an "unused" directory
Instead of deleting roms or directories, I am moved them to an unused directory.
Run the commands:
$ cd RetroPie/roms
$ mkdir unused
I moved the following empty directories to unused (amstradcpc, arcadia, channelf, coleco, crvision, fba, fds, ngp, ngpc, zxspectrum - see table below), using the command:
$ mv <directory-name> unused/.
Step 3. Evaluate and move unwanted emulators
Instead of deleting emulators and the associated roms (games), I moved the ones that I don't think are as interesting to the unused directory.
To evaluate the games, I started emulationstation, then scanned through the titles, and looked at the graphics. Addmittedly, this was a cursory glance.
Examples of those I chose not to keep are: arcade, atarilynx, daphne, gameandwatch, neogeo, ports, videopacc, virtualboy). This reduces the number of games and simplifies the RetroPie menu.
On the MiccroSD Card I bought, each platform has multiple versions (e.g., Atari: 2600, 5200, 7800, lynx; Sega: dreamcast, sega32x, segacd, sg-1000). My eldest son recommended I only keep n64, psx and dreamcast and move the others to unused.
Run the commands:
# start RetroPie
$ emulationstation
# be sure to configure at least: joystick (up, down), select and back buttons
# F4 exits emulationstation back to a terminal
cd RetroPie/roms
$ mv <directory-name> unused/.
Step 4. Evaluate games, and move unwanted games to appropriate unused directory
In Step 3, I moved entire subdirectories. In this step, I am only movving some games within aa subdirectory.
Instead of deleting the roms or games, I created a subdirectory in unused for the console (nes, snes, psx, etc.), and then moved the games that I don't think are as interesting to the proper unused emulator subdirectory. As an example, the Atari directories (platform, emulator or console) have 7 versions of Asteroids. Also, many games run on multiple platforms. IMO, one or at most two versions of Asteroids is sufficient.
I also searched for the best games on each platform. I tried (and failed) to limit each platform to a maximum of 20 games. Again, this is just a personal preference, and doesn't need to be done.
For this, I ssh'd into the RetorPie and used my laptop to move the roms. It was too painful to jump in and out emulationstation to move a game.
After moving games out of a directory, restart emulation and ensure everything works as expected.
The rom directories usually contain a media folder. To ensure I did not accidentally delete the media folder, I ran $ cp -r on the media folder.
Legend for table below
* = Best accccording to oldest son
k = consoles or handhelds my kids and I didn't play. Move to unused.
h = handheld but not gameboy. Move to unused.
U = Unused: ~/RetroPie/roms/unused
In the unused folder, there should be a subfolder for every platform.
Some subfolders will have some games (B), and some will be everything (U).
B = Keep: Have a subdirectory in both ~/RetroPie/roms and in unused for some games
The goal is to minimize the menu by 1) moving most platforms to unused (U),
and 2) only keeping some games