
Last updated: 30NOV2021 (see Changelog for details)
UPDATE: PortMaster has recently created a one-stop shop for all things related to running ports on retro handhelds. I recommend checking out their website and my most recent PortMaster guide instead of the guide below; I’m leaving this page up for posterity’s sake only. To get started, head over to their Games tab, find the game you want to run, and check out their instructions on that page. If you run into any issues, their discord server is also a great place to start.
Let’s figure out how to play Shovel Knight: Treasure Trove on various retro handheld devices. We will primarily focus the install guide on the RG351P and RG351M, but additional instructions for other RK3326 devices are also found below.
Anbernic RG351P (ArkOS final, TheRA, 351ELEC)
Anbernic RG351M (ArkOS final, TheRA, 351ELEC)
Anbernic RG351V (ArkOS, TheRA, 351ELEC)
Anbernic RG351MP (ArkOS, TheRA, 351ELEC)
PowKiddy RGB10 (ArkOS)
GameForce Chi (ArkOS)
RK2020 (ArkOS)
ODROID Go Advance (ArkOS)
ODROID Go Super (The RetroArena, RetroOZ)
PowKiddy RGB10 Max (The Retro Arena, RetroOZ)
I’ve been playing this game for a few days now and I really love it. It reminds me of a cross between the Duck Tales and Mega Man NES games, with some lite RPG elements. Fair warning, the games are pretty difficult, but there are cheat codes available if that’s your thing.
Big shoutout to developer JohnnyonFlame for getting this port up and running on these devices. He’s also the developer who made all of those awesome Super Mario 64 ports possible! If you have the means to do so, please consider donating a coffee to show your support for his work.
Table of Contents Purchase and download the game GOG-specific instructions Steam-specific instructions Load the game onto your device A note on controls Changelog
Purchase and download the game
In order to play Shovel Knight: Treasure Trove, you will need the game files from the Linux version of this game. I recommend buying the game from the Humble Store, since the games will already be in the appropriate file system. Be sure to watch for sales, since the MSRP for this game ($40) is pretty steep. However, bear in mind that by purchasing this game, you are getting four games in one, and you can also play it on your home PC or Mac, too.
If you already own the game via GOG.com or Steam, see the instructions below on how to extract the game files.
Once you have purchased the game, download the Linux version onto your computer. Extract the .tar file twice using 7Zip (or Archive Utility if you are on a Mac), and you should have a folder named and organized as such:
shovelknight > 64 (folder) > 32 (folder) > data (folder) > shovelknight (binary file) > softwarelicense.txt
GOG-specific instructions
If you happen to already own the game via GOG.com, it’s easy to extract the Linux data files. Once you have purchased the game from GOG.com, it will show up in your library. Go into the Games section on your profile, and click the arrow at the bottom-right of your Shovel Knight game, and select “View Downloads”. Change the system to Linux, and then click on the link under “Download Game Installers”.
The downloaded file will be in .sh format. All you have to do is change the file extension from .sh to .gz, and then open it with 7zip. Inside you will find all of the game data files you need, organized as such:
shovelknight > 64 (folder) > 32 (folder) > data (folder) > shovelknight (binary file) > softwarelicense.txt
Steam-specific instructions
If you happen to already own the game via Steam, here are instructions on how to download the Linux version of Shovel Knight via a Windows PC. Thanks to dhimdi and yalsi86 on Reddit for figuring out the method:
- Press Win+R and open “steam://open/console” (Steam will now show console command)
- Enter “download_depot 250760 250764” (It will eventually show download location)
You will end up with having: 32 (folder), 64 (folder), data (folder) - You don’t need the shovelknight (binary) and softwarelicense.txt in the main folder, the Steam Linux version is already set.
Note: The game will prompt you that it doesn’t find the Steam client (duh!) each time you go back to the main menu of the game.. a bit annoying!
This method can be done when trying to download the Linux version of other games via Steam. The App ID and Depot ID of the game can be found on the site steamdb.info. When you search for a game on this site you’ll immediately see the App ID. Scroll down a bit and click on Depots. Here you’ll find all the available OS versions of the game and the corresponding Depot ID. The download command in the steam console is: download_depot <appid> <depotid>
Load the game onto your device
Update: as of 30NOV 2021, Shovel Knight is working via PortMaster, which simplifies the experience significantly.
Here are the instructions from PortMaster to get the game up and running. In short, install PortMaster, then move the shovelknight game data files into the shovelknight/gamedata folder.
A note on controls
In my testing, the most important part for me was to confirm that all buttons were registering on the various devices. That being said, some of the buttons may not correspond to what you prefer on your specific device. Luckily, the Shovel Knight options menu lets you remap the entire controller to your liking, so it just takes a few moments to set up the controls on your device.



ODROID Go Super and RGB10 Max instructions (RetroOZ)
You can play this game in stunning widescreen with the ODROID Go Super running the latest (0.45b and higher) version of RetroOZ.
The .045b version will come with everything you need other than the shovelknight data file itself. So to install, just copy the shovelknight folder from your purchased Linux version of the game into the “ports” folder on your RetroOZ SD card. Just like magic, it works! This should work for the RGB10 Max as well, as long as it’s running the correct version of RetroOZ.
Changelog
30NOV2021
– changed to PortMaster instructions
13MAY2021
– added link to cheats database
– added GOG instructions
12MAY2021
– added OGS and RGB10 Max instructions
10MAY2021
– added Steam instructions
– updated zip file with licenses
– added info about ArkOS pre-load on RG351V
09MAY2021
– published guide
Please, s30 too
LikeLike
This port is really good! I’m a few hours in and I see myself finishing this game on the rg351m.
LikeLike
Wow, this is super cool! Maybe I’ll finally get around to playing my copy of Shovel Knight haha. Is there any chance that box86 could be used to run more Linux games on this device? Looking at their compatability list, there are a lot of interesting games on there (e.g. Hitman, Fez, Stardew Valley, Baba is you, Fallout 2, Paper Please, Cave Story +, Nuclear Throne, Binding of Isaac, Freedom Planet, etc.) I don’t know how well these would all work without mouse support, but if Shovel Knight can run, then perhaps other games could run as well.
LikeLike
i don’t know why, but i follow instructions and i can’t see the port category when i start the console
LikeLike
My guess is you’re using 351ELEC, which auto-hides the ports folder. Go into the Main Menu > Game Collection Settings > Systems Displayed and make sure that PORTS is checked.
LikeLike
I have the GOG version of the game. When I download the Linux files, it’s only a .sh. How do I make this work?
LikeLike
Nevermind! I see you addressed this. Thanks!
LikeLike
Thanks for this guide, and thanks to JohnnyonFlame for porting Shovel Knight over! The game plays great on the RG351V with 351ELEC. I ran into a bit of a problem with the controls though. I followed the guide and replaced the contents of the .sh file with the code under the 351ELEC/ArkOS section, but for some reason the B button brought up the Curios menu, which should’ve been the Select button, both Y and Select were Attack, and the A button was Jump. I had to go back into the .sh file and swap the input values for Select, B and A around so the buttons were mapped correctly.
I’m not sure if there was a mistake in the button mapping or if the problem was on my device’s end. It’s all good now, though. The game’s playing just fine.
LikeLike
Yes, I was mostly preoccupied with just making sure that the buttons worked than making sure they’re keyed correctly. I made a section called “A note about controls” which addresses this. Luckily you figured it out, that the game allows you to completely remap the buttons to your liking!
LikeLike
Ah, that was my bad. I must’ve skipped over that part. My apologies.
LikeLike
For everybody wondering, I have gotten it to work with the Steam Version of the game using the following steps:
– open Win+R and steam://open/console
– type in “download_depot 250760 250764”
– verify that the folder structure looks like the one mentioned above, without “softwarelicense” and the binary in the main folder
– transfer this folder to the “shovelknight” folder in your ports part of the ROM partition.
LikeLike
Just to clarify regarding Steam on Windows to download the Linux version:
1. Press Win+R and open “steam://open/console”
(Steam will now show console command)
2. Enter “download_depot 250760 250764”
(It will eventually show download location)
You will end up with having:
32 (folder), 64 (folder), data (folder)
You don’t need the “shovelknight (binary)” and “softwarelicense.txt” in the main folder as mentioned by the guide, the Steam Linux version is already set.
Now follow the rest of the guide and simply enjoy this game!
Note: The game will prompt you that it doesn’t find the Steam client (duh!) each time you go back to the main menu of the game.. a bit annoying!
LikeLike
Now to my question, does anyone know where the save files are located which the game creates to store your progress? I’m using 351ELEC. Much appreciated if anyone does know?
LikeLike
So I found it finally for 351Elec:
/storage/.local/share/Yacht Club Games/Shovel Knight
LikeLike
Hi, I need help. I also responded to your Reddit comment just now too.
I installed Shovel Knight and played halfway through, then got a larger micro SD card and copied all the media over to the new card but now all of my save data is missing on the new card for Shovel Knight only. I can’t find the location of the save data and I don’t have the file structure that you posted as far as I can see.
There are no obvious save files that I can see. I’ve searched the card and there are no Yacht Club Games folders or even storage/.local/share file pathway.
LikeLike
Hey there!
Do you believe the other games tested with box86/64 would run on rg351? Like owlboy, mark of the ninja, into the breach, ftl?
LikeLike
From what JohnnyonFlame told me, a LOT of games don’t run with box86, so it’ll be a lot of trial and error until he (or someone else in the community) finds other games that will run as well as this one. But there’s hope! Owlboy would be great.
LikeLike
The game works great on 351ELEC!
Scraping doesn’t seem to be working…
Any chance you can upload the box art & video for us?
Thanks again for another great tutorial!
LikeLike
very nice ! !
it works for me on Arkos but not on 351elec 😦
LikeLike
Same for me. Returns to EmuStation each time I tried on the 351P 😦
I noticed that the paths in the .sh file point to “/rom/ports/…” where on 351elec the path could be “/storage/roms/ports…”
I tried changing the .sh file accordingly, but no success: keeps on returning to EmuStation. I will keep an eye here to see if an update on this is provided. I am as well interested to see if someone got this running on 351P running 351elec.
LikeLike
Nope! Ignore my previous post… All is good in the .sh file, I just forgot to copy the “data” folder…
Stupid me 🙂
LikeLike
are you running the last version of 351elec ?
LikeLike
It can be cool to do a review of “how it works” so maybe other people can try to make other games compatible (i actually tryingto make FEZ work on RG351M)
LikeLike
Hey I ended up buying on GOG and downloaded the Linux version and extracted but the folders I have are: Data, meta and scripts, I did a little digging and if you go to data\noarch\game then it has the folders/files you mentioned and I can then follow your instructions. Love your videos and all the ports you have done are great on my RG351v.
Hope the helps!!
LikeLiked by 1 person
For the RG351V you can put the data files on the 2nd microSD card. To do this modify the *.sh file. Where it lists /roms/ports/* change it to /roms2/ports/* in all 6 locations.
This will point the script to the 2nd microSD card letting it load from there.
Unfortunately I don’t own this game to verify, but it should work just fine.
LikeLike
Game and controls all working fine. Issue I have is that there are no button combos to exit the game. When I go through the in game options to exit then the game does shut down but produces the red software error every time. This then remains on screen for a few seconds before getting back into 351ELEC.
Any ideas of a cleaner way to sort this out?
LikeLike
*Using RG351M
LikeLike
Hey can I do the on the boy boy pocket go?
LikeLike
Bit boy*
LikeLike
Hello, I don’t reach to launch the game.
I’ve followed the instructions (rg351p / ArkOS / Steam version). When I launch the game from Ports menu on ArkOS, I can see the ArkOS launching command lines, and after about 4 sec, I’m being brought back to the main menu of Ports games.
I’ve double checked the files and everything looks ok. I’ve got my “shovelknight” folder in my EASYROMS/PORTS folder, and in this folder I’ve got the “32”, “64” and “data” folders you mentioned above.
I’ve also put in EASYROMS the “box86” folder and the “Shovel Knight.sh” file.
Could you please help me? Others ports like MineCraft are working well.
LikeLike
I downloaded from GOG, followed your instructions and changed the extension from “.sh” to “.gz”. I then opened it with 7-ZIP and I don’t have the same folders as you. I have “data”, “meta”, and “scripts” folders, nothing else. Could I have done something wrong? Or did GOG maybe update their Shovel Knight files or something?
LikeLike
Never mind, got it! Like superjoltman said above, you have to unzip that folder, then go into data/noarch/game to find the right folders and files.
Remember to put all the files/folders from the guide into this path: ports/shovelknight/gamedata/shovelknight
LikeLike
Hi, i’m new to linux. how do you change the file extension from .sh to .gz?
cheers
LikeLike
Please update the guide
For steam version
Rename the depot_250764 folder to shovelknight.
Copy the renamed shovelknight folder to /ports/shovelknight//gamedata
LikeLike
I cannot make it work at all, I own the game on Steam download the corresponding files and folders, I add them to the ports folder but the game doesn’t run… I don’t understand what I’m doing wrong…
LikeLike