I'm not typically one to get overly nostalgic, but as someone who loves gaming, I do have a lot of love for retro games in general, and I recognize there are a lot that I haven't played yet and would like to get to eventually. These days, it's unfeasible to wait around for a lot of these older games to be put on modern platforms via legitimate means, so at times, I need to resort to emulation.
But setting up emulators on my devices can get tedious and cumbersome. I need to have the ROMs and emulators on different devices, and they may offer different experiences depending on whether I'm using Windows, Linux, or macOS. But what if we could avoid all that hassle and host those games on a server and play them from any device, with the ability to continue playing across devices?
As per usual, self-hosting offers a great solution thanks to something called RetroAssembly. This self-hosted game library offers a great retro gaming experience that works right in the browser. Let's take a closer look.
20 classic games you should play if you have a Nintendo Switch Online subscription
With over 300 games on offer, here are some great starting points
Setting up RetroAssembly
It's very easy
Getting started with RetroAssembly was one of the easiest self-hosting projects I've done on my TrueNAS machine. While the project isn't available directly on the app repository in TrueNAS, I was able to Dockge to deploy the Docker container easily with a compose file. There really isn't much you need to define aside from just choosing where to store the data for the container. It's also a relatively small download, with the latest version being under 70MB. Long story short, it was up and running very quickly.
It doesn't get much more complicated once the container is running, either. You can simply create your account and login to start adding games to your library, which you upload from your computer onto the Docker instance. That means you'll need to provide your own game files, but otherwise, it's very easy to set up. Games are automatically sorted by platform, and keyboard controls are set out of the box, so you're very quickly ready to get started.
5 reasons why Batocera is the best OS for retro gaming emulation
It has everything retro gamers need
It supports a lot of old platforms
But no 3D rendering
RetroAssembly comes with support for a fairly wide range of consoles retro consoles, going as far back as the Fairchild Channel f (the world's first video game console with interchangeable cartridges), and going right up to what you might call the end of the 2D era, with platforms like the Game Boy Advance and Virtual Boy being the closest you can get. Platforms with mostly 3D graphics aren't supported, but that's completely fine for something you'll likely be running on fairly weak hardware.
Out of the box, Retro Assembly comes with support for the Atari 2600, NES, SNES, Game Boy, Came Boy Color, Game Boy Advance, Sega Genesis, and some arcade titles. In the settings, though, you can enable support for additional platforms, which include the Atari 7800, Magnavox Odyssey, Sega Master System, and some regional variants of other platforms like the Super Famicom (the Japanese SNES) or the Sega Mega Drive (the European version of the Genesis).
You can upload files in various formats and the system will still be able to run them and organize them into different platforms. What's more, it actually connects to the internet to pull relevant metadata, including boxart, screenshots, trailers, and descriptions, so you can browse your library and immediately have a sense of what each game is all about, which makes it a very pleasant experience to navigate.
I turned my old Windows PC into a retro gaming console — here's how you can do it too
EmulationStation can turn your old PC into a proper source of nostalgic fun
The emulation itself is pretty solid from what I've been able to tell. I tried NES, Game Boy, Game Boy Color, and Game Boy Advance games, and they all seem to run completely fine. These are platforms that have been more than figured out at this point, so it's really easy to run most of these titles without too much hassle. I didn't notice any glitches that wouldn't be there normally, and the controls were also responsive. I do wish that Game Boy games gave me the option to choose the color palette, like many emulators do.
I did find it a little annoying that the control guide that's shown over each game is the same for all platforms, though, because in some cases, it left controls out. You have to go into the settings to find button mapping for things like the L and R buttons.
I can play my games anywhere
My games and save data are always ready
Easily the best part about using RetroAssembly is that now, I can access these games from any of my devices at any time. Not only are the games themselves stored on my NAS, but the save data is too, so I can start playing on my desktop and continue on my laptop, or even on my phone. And yes, RetroAssembly does offer a mobile layout for touchscreens with on-screen buttons, too. It's not perfect, but for slower-paced titles, it works fine. Of course, you can also pair controllers with your PC and play the games that way.
If there's any feature that could be interesting to add here, it would be integration with something like Retro Achievements. I'm not much of an achievement fan myself, but a lot of these games don't have a lot of depth or replay value intrinsic to them, so a platform like Retro Achievements gives you more goals to work towards and specific challenges to complete. I know that would give some players a new way to enjoy their games, so having it built into the library would be very interesting.
5 amazing self-hosted apps for gamers
Fancy yourself a home labber and a gamer? Here are five gaming-oriented services you can run on your local hardware
Otherwise, of course, support for more platforms would be great, and a simple web wrapper for mobile that disabled zoom support would also help, as I found myself accidentally zooming while trying to play games at times. But aside from that, this is already a fantastic solution.
If you're someone who enjoys a retro gaming throwback and you also have a setup you can use for self-hosting, I highly recommend checking out RetroAssembly. There's also an online version available if you don't want to host it yourself.
