r/steamgrid • u/Babinok • 24d ago
Meta I made a free tool that adds non-Steam games with covers from Steam and SteamGridDB (vertical, horizontal, hero, logo)
Hi everyone!
I got tired of adding non-Steam games as blank shortcuts with no artwork, so I made a small Windows tool for it: Steam Commander.
What it does:
- Two-panel library browser: point each panel at any folder (e.g. HDD and SSD), with search, sorting, folder sizes and a marker for games already in your Steam library
- Adds non-Steam games with auto-detected exe and launch options, either one at a time or in batch mode
- Game card editor: title, executable, start folder, launch parameters and four cover slots (vertical, horizontal, hero, logo)
- Covers from official Steam assets and SteamGridDB (needs a free API key)
- Moves game folders between the two panels with progress and free-space checks, and updates the Steam shortcut to the new path
- Backup and restore of shortcuts.vdf
- UI in 6 languages
It's free and open source (MIT), written in PowerShell/WinForms. The exe is not code-signed, so Windows SmartScreen may show a warning. The source and the build workflow are public on GitHub, so you can check it or build it yourself.
Download: https://github.com/Hetfield1985/Steam-Commander/releases/latest
Source: https://github.com/Hetfield1985/Steam-Commander
This is my first public release, so I'd really appreciate any feedback, bug reports or feature ideas.
5
u/hoodmajinbuu 23d ago
But I enjoy downloading it from SteamGrid and assigning them manually, its therapeutic.
1
u/CylixrDoesStuff 23d ago
100% thats the whole reason i dont download any of those automatic apps to do it, i like picking and choosing myself
2
u/mmaxamms 23d ago
Just gave it a shot. It's interesting, but, the use case seems fairly... niche? If you often find yourself bouncing games between larger slower drives and smaller speedier ones, or you have a very specifically organized drive with non-standard titles, I could totally see a use case for it.
Personally though, I'll most likely stick with manually importing games and hitting them with Steam Art Manager or, using BoilR to import the more difficult games (like windows UWP games), and correcting them with SAM if I don't like the art BoilR auto-populates
Very cool job though OP! I appreciate the work done, even if the end result is not for me 😄
1
u/Babinok 23d ago
I'll be happy to hear what didn't suit you in my program, how is boilr better and what functions should I add?
1
u/mmaxamms 23d ago
- Integration/detection from common launchers (Itch, epic, GOG, etc). Even just a basic detection of the default install locations for these apps as a quickly selectable drop down menu would go a long way. Specific control and customization over folder options is great, but, convenience with optional advanced options is always going to be better for the vast majority of users
- Icon Customization. I may be in the minority here, but, one of the things I love about SAM or BoilR is the ability to apply SteamGrid custom icons. I want to be able to make a desktop shortcut of the steam import so when launched, it lists my shortcut as my activity to my steam friends, without having to deal with the low-res of a lot of default icons from smaller projects.
- Support for animated Grids/Backgrounds/Logos. Its one of the nicest features of SteamGrid to me. I may not use it on a lot of games, because it can be a memory hog, but being able to apply them to some of my favorite/most-played games is a really nice touch that truly adds that personal touch that I'm looking for when adding custom art
1
u/Babinok 22d ago
Thanks for the feedback, all these improvements are planned for future versions of the program. The current release evolved from a simple script I wrote to easily move games between my SSD (which is always low on space) and my HDD (which stores a large number of games), consequently, it currently offers only basic functionality, with further improvements still to come.
1
u/Babinok 22d ago
I’ve added icon support in the new version especially for you—give it a try.
1
u/mmaxamms 20d ago
Apologies, I don't check reddit too often during the week, only just saw this. Love the fact that the Icons were added!
Sadly, I've run into issues with your program actually adding the game it says it's going to. Deleted my shortcut to the windows (Non-steam) version of Elder Scrolls Online, and attempted to import it using your app. While it allows me to change all the art around, claims it's adding the shortcut into steam, and even restarts steam, nothing actually gets added 😅
1
u/Babinok 19d ago
Thanks a lot for the detailed feedback, really appreciate you taking the time to write this up!
A couple of questions so I can pin down what's happening:
**1.** Does this happen with **every** game you try to add, or just this one (Elder Scrolls Online)? **2.** Could you double-check in the app's Settings that the **Steam folder** and the **profile** selected actually match the Steam install and account you're currently using? If you've ever had more than one Steam install (e.g. reinstalled to a different drive) or use multiple Steam accounts on this PC, it's possible the app is writing the shortcut to a different install/profile than the one Steam is actually launching with.That'll help me narrow down whether this is a path/profile mismatch or something else entirely.
1
u/mmaxamms 19d ago
I know for a fact it was the correct drive, I checked that, along with all toggles in the options, before testing.
It turned out to be a profile mismatch! It connected to a profile I didn't even know existed to be honest 😅 Turns out, in the pre-BoilR/Steam Commander days, when I used UWPHook for windows apps, it loaded them into a non-existent "Profile 0" (which may have had something to do with an older steam beta from years ago? Search results are... sparse on information).
I had thought "0" was a placeholder for the currently logged in account, like the way certain other SGDB apps have used in the past, that one is my mistake! Tested on another game (Into The Breach from Epic, had previously installed from BoilR, deleted it and re-imported it using commander) and everything seems to have worked
2
u/docvalentine 23d ago
since this must be editing steam's database already, is there any chance it could be made to edit other steam game's attributes (display name, sort order, etc)
1
u/docvalentine 22d ago
Your response to my question was removed for some reason so I didn't get to read it. I think you are asking for clarification.
What I mean to ask, is that there is currently no way within Steam to rename Steam games or manage any of their other metadata. If you want to remove the (TM) from certain titles or standardize a series, you need to use a third party tool. There are also games with incorrect or missing dates, and so on.
The best such tool sucks. Is there any chance that you could add this capability to your tool to make it sort of an all-in-one library manager?
1
u/Babinok 22d ago
Do you mean changing the displayed metadata for licensed games directly in the Steam library? I believe this may be possible, although I'm not sure how widely requested the feature is or whether it can be done safely. If there is enough user demand, I'll consider implementing it.
1
u/docvalentine 22d ago
yes. it can be done but the current best tool for doing it is sort of clunky
since you are already manipulating appmanifests (i assume) i think you've already done the hard part
1
u/Babinok 21d ago
My program currently works with the shortcuts.vdf file, which contains information about third-party games added to Steam. Licensed games are stored separately, mainly in appmanifest_*.acf files inside Steam’s steamapps folders. I can look into supporting those files as well, so the program can work with both third-party and licensed games.
2
u/digitalrelic 11d ago
Just wanted to share that I've been using your app and it's been great. I love that it defaults searching for official Steam artwork primarily and then SteamGridDB. Sometimes SteamGridDB just randomly doesn't have art for some titles for weeks/months (if ever). Minecraft Dungeons II is a good example of this.
Anyway, thanks for building this!
1
u/Adn0nnymous 23d ago
fuuuuck my ass was literally trying to write a program literally exactly for this but i wasn’t good enough yet. this looks fire though
13
u/MarcusBofan 24d ago
i don't mean to burst your bubble, but doesn't SGDBoop already do a majority, if not all of this? Plus, it's on the SteamGridDb site itself, so it's way more reputable
https://www.steamgriddb.com/boop
https://github.com/SteamGridDB/SGDBoop