tralph3 / Steam-Metadata-Editor

An easy to use GUI that edits the metadata of your Steam Apps
GNU General Public License v3.0
161 stars 18 forks source link

Edit game icons in the left column #8

Open kriegift opened 2 years ago

kriegift commented 2 years ago

Hi, would it be possible to add a feature that lets you edit the icons of the games in the left column?

tralph3 commented 2 years ago

I can't recall from the top of my head, but I'm not sure it can be done. I think game icons are assigned an ID, and each application has a specific icon ID attached to them. As such, in order to have custom ones, you would need to upload icons to the Steam server directly, which of course can't be done.

You should be able to replace an icon with an icon of another game tho.

kriegift commented 2 years ago

Thanks for you answer, so we would have to wait for Steam implement it themselves which I assume is unlikely to happen but we will see. So how could I replace an icon with an icon of another game?

tralph3 commented 2 years ago

Well, I tried. If you open the JSON you can see at the very top some entries related to the icon. The data stored there seems to be some kind of hash. If you check the application on SteamDB, you can see the icon in the information section for the application. For instance, this is the one for Insurgency.

I replaced the icon, clienticon, and linuxclienticon keys with the hash of Insurgency Sandstorm. The change was not rejected, (as in, Steam didn't overwrite it), but it had no effect, the icon stayed the same.

It is possible, and actually very likely, that the icon is stored in cache, and so it's using that one. If Steam were forced to rebuild, update, or in some other way, fetch the icon again from its servers, maybe then it would work, because it would try to fetch an icon with a different hash. I do not know how to force Steam to do this tho.

vruhed commented 2 years ago

You should be able to change the icon by going to

.var/app/com.valvesoftware.Steam/.steam/steam/appcache/librarycache

this folder will contain all the icons, logos and headers for the games that you own. The name of the icon you want to change will be (game id_icon.jpg), just move the new icon to the folder (delete the old one) and rename it to the icon you wanted to change. Just restart Steam and you're all set.