Installing Steam Deck Plugins

Good Morning Friends! I have to admit I have slowed down a bit on my whole “Steam Deck Nonsense” largely because I will not get my upgraded storage until early October. After reviewing my options I decided to go with an OEM drive originally designed for the Microsoft Surface, but provides 1TB of storage and fits the 2230 single-sided form factor required by the Steam Deck. This seemed to provide the most bang for the buck as 2TB drives are a wee bit out of my price range for the moment sitting around $600. Over time it is a certainty that the price will go down, but 1TB appears to be the largest reasonable option for the 2230 form factor. If you ONLY care about parity with the highest stock Steam Deck unit… you can pick up the 512GB for around $20.

So let’s play a game and talk about the total cost of what my unit is going to ultimately be versus the highest stock model. We know that the premium version comes with a special anti-glare screen treatment and 512 GB of internal storage. My unit will have 1TB of internal storage, so roughly twice the space but for sake of this experiment we are only going to see if my upgraded version could beat the price of the stock premium version. Let’s add up the components that I have added or will be adding to my unit.

  • Base 64GB eMMC Steam Deck – $399.00
  • WD PC SN530 M.2 2230 SSD 1TB NVMe – $134.60
  • Anti-Glare Screen Protector – $3.33 ($9.99 in a 3 pack)

So my finished unit is going to be $536.93 and will have a similar anti-glare screen with the benefit of it being a screen protector and having twice the internal storage and still come in $112.07 cheaper than the deluxe model. If you add in the 512 GB SD card I am also using with the unit, and the 20,000mAh power bank that I am using with the unit, you end up around price parity. However, you end up with a package that allows me to recharge the Steam Deck three times and have three times the storage capacity. Basically, I still think it is well worth the investment of time, to go with that base model and upgrade yourself and the pricing for storage will only get cheaper over time.

Installing Decky and Power Tools

Like I said before, I have slowed down configuring items on the Steam Deck that require a novel application of my time. My theory is that I should be able to clone my existing hard drive onto the much larger 1TB model when it comes in, but in case that fails… I don’t want to get too deep into the woods that it will be a challenge to bring my unit back up to where I am currently. If I have to wipe and start from scratch, I have a relatively minimal investment timewise currently. There is one thing however that I have been using quite a bit and have not really talked about and that is Power Tools. Essentially Decky is a plugin manager, and Power Tools is the default plugin that installs which allows you to modify various system settings on a game-by-game basis. This is terribly useful especially when it comes to emulation because it seems if you throttle the total core count it increases the speed that each individual core runs at.

Unlike most mods we might add to the Steam Deck, we are actually going to begin in Game Mode. The first step is that we need to go into Settings and the System menu and enable Developer Mode. Be very careful when you are in this menu because Format SD Card is located precariously below the option we need to toggle on shown in the screenshot above. Enabling Developer Mode is different from say unlocking your file system, and is a relatively safe operation.

Once enabled, you will now have a new option in the settings menu all the way at the bottom labeled Developer. In this screen, you are going to specifically toggle on something labeled “CEF Remote Debugging”. This is what allows Decky to install plugins from the storefront. Incidentally, while you are in this menu, you might also want to untick “Enable Wifi Power Management” because one of the problems with the Steam Deck is that in order to save battery life, it often drastically reduces WiFi transmit strength.

Next up we need to actually install Decky. In order to install this, we are going to need our old friend the console app, which means you will need to boot into Desktop Mode. As always you will have needed to set a password with the “passwd” command that I covered in a previous article. Next up we are going to get the install command for Decky from the project GitHub page. You are going to paste the following command into Konsole:

curl -L https://github.com/SteamDeckHomebrew/decky-loader/raw/main/dist/install_prerelease.sh | sh

This will install Decky to your steam deck. You will be prompted to enter the password that you set previously with the passwd command. Once everything finishes, reboot your device which will load into Game Mode by default. You have to reboot in order for the plugin to take effect, so simply returning to Game Mode is not sufficient.

If everything went as expected, you should see a new menu icon at the bottom of the menu when you click the “…” button. This will be where all Decky plugins can be located, and by default, you will have a single plugin loaded called PowerTools.

At the top of this menu on the right hand side next to the name Decky, you will now also have a storefront page that allows you to browse and install plugins. The storefront will allow you to install an addon or select a previous version if for some reason something is not supported in the most current version. I’ve never had to do this and for the most part, just install the latest version of everything. I guess let’s talk a bit about the plugins that I personally find useful.

vibrantDeck

VibrantDeck is essentially a very rudimentary version of a tool like ReShade for the Steam Deck. You can configure it globally like I have, just to increase the color saturation a bit, or enable per-game profiles for more granular control. While you can’t do some of the crazy screen effects like you can with ReShade, you can steak the settings to make the Steam Deck image a little more pleasing to your preferences. I personally feel like by default the Steam Deck is a little bit desaturated, and this can resolve that easily.

CSS Loader

CSS Loader essentially allows you to style the theme elements of the Deck as well as configure various visual tweaks. For example, if you scroll back up to the first image in this post, you will notice that all of my Deck icons have a slightly rounded edge to them. I achieved this by installing the Round theme element which allows you to control the curve intensity on most images. I also have one that similarly applies a rounded effect to the virtual keyboard that overrides my existing rainbow keyboard theme. There are a bunch of themes that folks have created that do various things, so it is well worth spending some time browsing. I personally landed on Obsidian because it is essentially the default theme of the Steam Deck with the ability to change the background colors.

DeckFAQs

This one is admittedly a bit frivolous, but I come from an era when GameFAQs mattered. This essentially gives you rapid access to text-based game guides from within steam. By default, it will take whatever game you are playing as the search parameter, but you can also submit your own queries. Ultimately if you click through to a guide it will load the full text-based guide in an overlay window on the deck. Admittedly you could do ALL of this on your phone, and would probably have a better experience but I mostly installed the plugin for nostalgia sake and for those rare times when I am playing something that I want a walkthrough on like FFV for tidbits of information I might not remember when doing a playthrough.

ProtonDB Badges

This one is pretty straightforward, but it allows you to apply the compatibility information to your hover-over effect on Steam games. This will tell you quickly if a game is fully compatible, works with issues, or is not supported at all. Steam maintains a list of games that are completely verified to work with the Deck, but often times most of your library has some support that might require something as simple as occasionally doing mouse input with the trackpad. What you really care about however is how well the game might run, and there is an external resource called ProtonDB that does this.

If you look at 7 Days to Die in your library you see the standard information icon, that you can click through and get additional information.

If you click through to the game profile, you can now see a ProtonDB badge in the top left corner of the profile indicating that the game has been platinum certified to run under proton.

If you want even MORE information, you can click on the badge and it will bring up the full game profile on ProtonDB. In this case for example it shows that 7 Days to Die not only runs under Proton, but it actually natively supports Linux, so the game should run excellently.

The Steam Deck continues to be a phenomenal piece of hardware that walks that line between ease of use and enthusiast shenanigans. Like I said I am mostly in a holding pattern as I wait for storage before I go too much deeper down this rabbit hole. Probably my next wave of modifications will be to get specific games working on the deck. I want to try and get Final Fantasy XIV, GW2, and World of Warcraft Dragonflight Alpha running. All of those will require a specific brand of nonsense that I do not relish doing a second time if my clone disk idea does not work as intended.

Cyberpunk needs a Taxi System

Good Morning Friends. Sometimes in a game, it is the little things that you really enjoy. Last night I had this thought about how much I enjoyed Cyberpunk 2077 when someone else is driving the car. My entire adult life I have been the primary driver in our household, for various reasons… but not the least of which my wife has significant issues. As a result, I never get to just chill out and gaze out the window watching the scenery go by as I did as a child. So I deeply enjoy the experience of when an NPC drives me around from point a to point b while on a mission. There is just something so cool about the way that this tech works in-game, and I wish honestly that it were an option to just hop in a taxi instead of using the fast travel system.

Another thing that I really dig about Cyberpunk is how Night City has more of a sense of presence than almost any other game that I have played. While set in the future, there are absolutely places that feel like places I have been before. The texture of the city is recognizable, especially as it fades into areas that blend more and more industrial development. Living in Oklahoma there are lots of areas where there is prolific petroleum industry debris jutted right up against an attempt at residential areas. The poorer the area, the more the zoning lines blend and fade into each other. Basically, it is a believable space for me to inhabit while living in this future punk late capitalism hellscape.

I’m going through a weird time where I am bouncing pretty heavily between games. I spent some time over the weekend chipping away at Diablo III Season 27, and also some time poking around Path of Exile. While I have largely wrapped my goals up, I still have a stack of maps and tablets to run through and do when nothing else sounds right. I got this really dumb or lucky drop depending on your perspective and found 38 maps in one single kill. It seems that I had a combination of an affix that turns ALL loot drops into maps and that was combined with another affix that causes everything to drop a mirrored copy. So that means I have a ton of maps to play with and even managed to get a few divines to drop last night.

I am still in a bit of a holding pattern waiting for the Greatsword/Brimstone Sands patch to drop. I spent a lot of time poking around the PTR, but have largely tapered that off given that it is throwaway progress. I am sufficiently happy with what I have seen as far as leveling speed and ease of leveling professions. I am still angling for a restart when the patch drops, and I kinda just want to get that all over with. I hate living in this limbo of not quite knowing for certain what that process is going to look like and when it is going to happen. I am still occasionally poking my head in, farming a bit of gypsum and getting a few expertise raises a day on my main. However, I really want to start fresh and experience all of the new content from scratch… and have it NOT be on a PTR server.

The Second Death of G4

This is going to be a bit of an odd topic, but it is a whirlwind of half-remembered memories, expectations, and the second death of G4. Starting on the 14th we began to hear news of significant layoffs at G4TV and these have continued over the last few weeks to where most of the talent originally running the rebooted shows is gone. I specifically chose the above image from the early marketing material, because every single one of those hosts is now long gone from the network. A quick check on a recent episode shows that it seems the remaining members are Gina Darling, Kassem G., Will Neff, and Vanessa Guerrero. I hope that they can reboot the concept of the network and turn it into something that actually becomes viable.

However, I feel like we need to take a step back from the death of G4 and talk a bit about its bizarre return last November. When I first heard about the return in October, it was indicated that there would be a major cable television presence for the rebooted network. However at least in the case of Cox… I never did see it added to the channel lineup. Instead, the shows were a blending of Twitch Live streams that seemed to go on for untold hours, and a series of edited shows being posted on YouTube. It didn’t seem as much of a “Network” as it did a weird case of nostalgia not quite living up to reality. The shows that I managed to catch just weren’t all that enjoyable to watch. The mental image I had of the show that I remembered fondly… didn’t quite live up to the modern reality.

This is the point where we get into faulty memories. In my head, I remember going home after work each day and turning on Attack of the Show while I was dealing with sorting out dinner and then eventually sitting down to consume it. The key piece that I was forgetting what I was so fondly remembering was actually TechTV and not G4. Then the show that I remember watching was actually The Screensavers and not necessarily Attack of the Show. At this point in history, Slashdot was essentially the internet newspaper, and I remember going home each day and watching TechTV and getting some more behind-the-scenes information on those stories. I remember skits, but I mostly remembered enjoying just a bunch of tech and gaming news being thrown at me in quick bites as I sat down to eat dinner.

After some digging, I remember the TechTV and G4 merger, and the broader rebranding… and the show that was taking the same slot as Screensavers was Attack of the Show. THIS is the version that I remember, the one with Kevin Rose, Kevin Pereria, Patrick Norton, eventually Olivia Munn, and occasionally Morgan Webb and Adam Sessler visiting from their shows. Watching through the clip of this first episode after the merger, it still feels a lot more like Screensavers than the show that would be rebooted last November. There were a few more skits, but still a heavy emphasis on tech and gaming news. I think maybe the problem is that over the years they lost most of their hard-hitting tech enthusiasts and were only left with folks like Kevin Pereria that were more gameshow hosts than technologists. I know Kevin Rose for example left to found Digg and eventually Rev3, the later producing a lot of content similar to the original TechTV.

So I think the core problem with the return of G4… is that on some level it was a play for the attention of folks who remembered the channel fondly. The problem at least for me specifically is the version of the show that I remembered fondly… is not the version that was ultimately taken off the air in 2013. The version that seems to have been resurrected is this format that was mostly made up of largely not terribly humorous skits. I am not sure that version is the one that anyone wanted. I am not exactly certain when I stopped watching Attack of the Show, but I faded away from it long before the 2010s. In the post-WoW era, most of my time was spent engaged in an MMORPG as opposed to watching television in any form. I do however remember in the vanilla/bc era that several of us would talk about things that we saw on Attack of the Show, so it was still something I was consuming then.

I think what ultimately lead to the obsolescence of G4 originally, is that the internet changed around it. Internet and ultimately gaming culture when TechTV launched centered around GameFAQs, Slashdot, Flash Animations, and grainy Quicktime exports on sites like Ebaums World. This is a time before YouTube and Reddit, and as a result, we were starved for any sort of content that actually focused on our interests be they geek or gamer. Then YouTube launched and technology evolved to the point where anyone anywhere could create fan-based content. Now you are drowning in a sea of options all vying for your attention, and as a result, we have all spread out to consume different sorts of content. Essentially Attack of the Show is trying to do a bunch of things… that other channels now specialize in and as a result often just do better.

  • Quick Gaming News – Maybe you should check out CheckPoint which does a quick rundown of major gaming topics and is actually funny.
  • Skit Comedy – Maybe you might prefer Good Mythical Morning and Good Mythical More which deliver a daily dose of good-natured skits.
  • Behind the Scenes – Maybe you might enjoy NoClip which deep dives into the story behind the creation of various gaming franchises.
  • Detailed Tech News – My personal favorite here is probably The WAN Show from Linus Tech Tips.

Essentially everything that I used to get from TechTV/G4 I have found another source for on YouTube. So when the channel relaunched back in November I gave it a shot… but largely found the streams difficult to watch and the YouTube clips were fragmented across a half dozen individual channels making it very hard to follow anything. Something like the WAN Show has ballooned from an hour to two hours, but it is something that requires very little of me and that I can have playing in the background while I do other things. The nature of how Attack of the Show was produced and existed mostly on Twitch… a platform that I do not regularly consume, makes it a bit of a frustrating mess to actually watch. Having commercial breaks built into a Twitch stream… that was for broadcast television breaks… also felt really weird.

I have to admit when I first heard about G4 coming back I was a little bit excited, in part because I do have fond memories of that era. The problem is that what it provides, we already had in an overwhelming bounty. In the post YouTube era, we have ready access to extremely detailed content on whatever niche we want to consume and it is available 24 hours a day and 7 days a week. Coming back G4 had to compete with an army of specialists and generalists who are all focusing on their segment of audience and doing a better job of serving them. While what G4 did at the time was unique, it now just feels like yet another high production value channel… in a sea of high production value channels. So what I see is a project that spent a lot of money on something that no one actually asked for, and hinged upon nostalgia that never really paid off.

I wish everyone involved with the most modern incarnation of G4 the best of luck, but I cannot visualize a world where they can pull out of this tailspin.

Steam Deck Emulation

Good morning friends! Friday and throughout the weekend I attempted to mark another thing off my Steam Deck ToDo list. This morning I am going to do a half-assed job of walking you through how I got a sizeable number of emulators up and running on my device. Essentially I am leaning heavily upon something called EmuDeck, which is less an emulator and more a series of scripts that configure emulators for you, and install what you need to add all of the individual games to steam. If things go successfully you end up with something similar to the above screenshot, with beautiful images representing each game and the ability to launch them directly from steam while in game mode. I am going to attempt to walk you through the logical order of getting things set up.

Installing EmuDeck

The first thing that you need to do is download EmuDeck. This is going to work much better if you launch your web browser of choice while in Desktop Mode on your steam deck. Visit https://www.emudeck.com/ and click on the download menu option, then the download app button. This will drop an executable package in your download folder by default.

Open up the Dolphin file browser and browse to your download directory. Before you can do anything you are going to need to open up properties on the item that just downloaded and click over to the permissions tab and make sure “Is Executable” is checked. Once you have done this double-click the file and this should begin the install process for EmuDeck.

I am not going to walk you through the entire setup process for EmuDeck, there are other guides out there like the above video that do a much better job of this. Essentially there are two choices that matter, the first is if you want to do the Easy setup or the Expert setup. The Easy setup will have very minimal options and largely just configure everything for you. It will however skip a few things that might be useful, like a drive for gyro controls that you can use with the switch/wiiu emulators. The expert mode will require keyboard input however so make sure you are at minimum remoting into your deck through the steam link like that I talked about last week. The other major choice will be if you want to install it to your local storage or an SD card. I chose the latter for reasons I will get into later, there can be significant problems if you fill up your internal storage.

Enabling SFTP for File Transfer

In theory, EmuDeck just installed a slew of folders and emulators on your device, but next, you are going to have to transfer some ROM files before you can make any meaningful progress. I am not going to tell you how to acquire ROM files, other than to say that you should dump your own ROMs for legal reasons. In order to get the files over to your deck, we are going to need some reliable method of transfer. I looked into a large number of options, but given that the Steam deck is just a Linux device, the most straightforward seems to be enabling SSH and then using SFTP. If you are following along my journey you should have set a password for your device. If you have not done that yet, please refer back to my previous article. Type the following command into Konsole:

sudo systemctl enable sshd

This will prompt you to enter the password for your account, and when you do so it will enable the SSH daemon to start on boot. However, in order to get this running the first time, you will need to restart your steam deck and we have one step to check while we are in Game Mode, so don’t go right back into Desktop Mode quite yet.

You should know your password, but we need to verify while in game mode what your console hostname is set to. The default for this is “steamdeck” but in theory, while you were configuring other options you might have changed this not understanding what it is used for. To check what your hostname is go to settings > system and scroll down until you find an argument called hostname. You can see in the above screenshot that mine is still set to the default which is “steamdeck”.

Next, you are going to need an SFTP client, and this is entirely your choice. There are many options, but I just happened to have Filezilla because I have been using it for decades. Ultimately in order to connect to your Steam Deck you need the following information:

  • Host – you should have just seen that in the previous step
  • Port – you should be able to leave this blank, but if your client requires this set enter port 22.
  • User – you should enter “deck” for your username.
  • Password – the system password that you configured previously in Konsole.

If this works you should be connected to the filesystem of your steam deck remotely. By default, you will be in the /home/deck/ directory, but you should be able to change this to wherever you need to go. If you chose to install EmuDeck to your SD Card and formatted your SD Card in the steam deck… you should be able to reach those files from the following path:

/run/media/mmcblk0p1

If you chose to install EmuDeck to your local storage, then the path for you should be the following:

/home/deck/emudeck/backend

In theory, you are going to be spending all of your time in either /roms or /bios and in the ROMs directory EmuDeck will have stubbed out the correct folder structure for each system. Copy your legally obtained ROM files into these directories and we can proceed with the next steps. If you are using the internal storage of your device, please be careful not to copy too much data during this process. Keep a close eye on the storage limits for your device. If you fill the internal storage and the system does not have enough room to write temporary files, it will appear bricked and go into a bootup loop. I will talk a bit about that later, this is fixable.

Configuring your Games

Boot back into Desktop Mode, and EmuDeck should have dropped a shortcut to something called the Steam Rom Manager onto your desktop. For this step, I had to find a screenshot from the internet because running the Rom Manager will disconnect Steam LInk. You will need to complete this step on the physical hardware or through some sort of port replicator that doesn’t rely on Steam Link. Essentially you want to click the Preview tab in the sidebar, then click the Generate App List button that appears at the bottom of the screen. At the top of the screen, there will be a countdown of sorts for “Remaining Providers” once this reaches zero you can click the “Save App List” button at the bottom and every game that the Rom Manager has found will be registered with Steam as a new game.

At this point, I suggest you close the Rom Manager and open Steam while in desktop mode on your device. This will re-enable Steam Link and allow you to connect back in remotely again, which is highly suggested for this next step. We are going to return to our old friend Boilr, that I talked about in the previous article. It is my experience that the results of what Steam Rom Manager files for images, is going to be very hit and miss. As a result, I used Boilr to plug any gaps that the Manager failed to find images for. This is going to be very time-consuming because each time you set an image and go back to the listing of games… it will reset your position back to the top of the list causing you to endlessly scroll to find where you left off. However, the end result was very “worth it” for me because it gives me pretty images for each game on my list.

Once you have finished setting all of the game images, click the button at the bottom of the screen with the Controller and Steam icon. This will export all of your game data to Steam so that it shows up correctly when you are in game mode. If you boot back into Game Mode, you will in theory see a bunch of grid images in place of the ugly grey rectangles and get an interface that looks something like the image at the beginning of this post. Now you should be able to sit back and enjoy the fruits of your effort.

Troubleshooting Issues

Ultimately you are going to get some games and more specifically platforms… to work without any issues. Others are going to require a lot of troubleshooting to get working correctly. Currently, I have the following platforms working under the combination of emulators that this process installs.

  • Dreamcast
  • Gameboy Advance
  • Genesis
  • Nintendo
  • Nintendo 64
  • PlayStation
  • PSP
  • Super Nintendo
  • Turbografx 16

Of the emulators that I have moved data over to the SD Card for, I cannot seem to get 32X and Sega CD working, but have also not spent a ton of time troubleshooting those. Thankfully on the EmuDeck GitHub page, there is a cheat sheet of sorts that lists what types of ROMs and Archives each emulator will support. This is not 100% correct at all times, however, because for Dreamcast it clearly states that it will support 7zip archives, and the Rom Manager identified those games… but I could not get ANY of the Dreamcast games to load until I extracted them to individual directories.

The biggest thing that you will run into with any of the semi-modern consoles is that they require a BIOS image in order to work. This is essentially how emulator developers get around the copyrighted portions of code, but rely on you to acquire a legally dumped boot image. You will have to research what is needed for each system, but once I supplied the correct BIOS for Dreamcast and Playstation those games started working beautifully. I need to put in some research into how DuckStation handles multidisk games, because right now the only PS1 game that I have copied over that is working, is Castlevania Symphony of the Night.

So You Bricked Your Steam Deck

This is not my image, but I absolutely went through this when I copied files to the wrong location. Essentially it is possible to get into a boot loop where you just see a cursor… before rebooting again and it goes on forever. Essentially in my case, this was caused by getting confused and accidentally flooding my internal storage with ROMs… eating up all of the remaining space. As I said earlier if you fill your internal storage too full and the system cannot create certain temporary files on boot… it will get stuck in this loop.

Thankfully Valve foresaw this happening and has provided bootable media that can fix it. The Steam Recovery disk is in theory designed to allow you to reinstall the operating system or nuke your home directory, but it is so much more valuable than that. It is essentially a “live” version of SteamOS that boots from removable storage. Thankfully I had spare SD Cards laying around, and in order to use that method, it requires at least 8GB of storage. You can in theory also do this off a bootable thumb drive connected to the USB C port via an A to C adapter of some sort.

How I got around NOT deleting all of my progress, was that while in the Live OS I just opened up Dolphin and browsed to the directory where I had copied the ROMs… then deleted them. After doing this make sure you also remove them from the Trash as they will still be taking up disk space until you have done this step. In theory, you should be able to reboot and your pricey toy comes back to life. If you did something more severe to bung up your system, you can use the disk to reinstall the base operating system from scratch. As I said I did not want to take this step if I could help it, because it would have undone all of the work I had already finished on getting things running on my device.

What’s Next?

I think the next big thing that is on my radar is getting both PlayStation remote play and Xbox remote play working. Other than that, however, I think my Deck is in a pretty good state. I want to fiddle around a bit more with the emulators that I technically have installed but are not working for whatever reason. The big one for me would be able to get Breath of the Wild working with durability cheats, and maybe work a bit on getting some 3DS games loading successfully.

I think everything else is probably going to wait until I get my 1TB m.2 drive from eBay. I picked up an M.2 to USB adapter and I have high hopes of using it and Clonezilla to effectively clone all of my progress from my 64GB internal drive to the new 1TB internal. I mostly don’t want to do too much effort if I know I might possibly have to start over from scratch again with a fresh operating system install. Thankfully however I already have the recovery disk primed to install the operating system fresh on the new drive if it comes to that.