Closed tralph3 closed 1 year ago
What!? I was giving instructions for ZeroTier all this time? Haha, my bad. I'll fix it right now. Glad to see it working. I'll thank xPaw too.
What!? I was giving instructions for ZeroTier all this time? Haha, my bad. I'll fix it right now. Glad to see it working. I'll thank xPaw too.
Yeah haha, I noticed that when you mentioned it to be packaged as ZeroTier.
Anyway, I tested appending TESTEDIT
to FINAL FANTASY VII REMAKE INTERGRADE
's title, and it seems to work fine as seen in this screenshot:
This was done with Steam shutdown, in case Steam would overwrite the data or corrupt it somehow. Changing the developer, publisher, Steam release date and original release date however won't accept any changes, as then the original metadata is restored by Steam itself apparently.
Update to previous comment: Seems like editing a publisher or developer's name (to Square Enix2 and Square Enix3 for example) won't be changing the actual developer/publisher on the game info section.
Update: Sorting name change seems to work as well (managed to change Spelunky's sorting name to Spelunky 3
, having it appear under Spelunky 2
when pulling up games with the term spelunky
). Now only need to see if those changes last in Game Mode, and whether I can change launch menus.
I can confirm that neither Developer nor Publisher can be changed.
Maybe it's not possible anymore, I'll investigate further.
I can confirm as well that the changes seem to stick on the Steam Deck's Game Mode! It seems that Game Mode's boot sequence does not mess with the modifications made in appinfo.vdf
, luckily. This would make it viable to use it on Steam Deck.
See this screenshot (Spelunky's sort name changed to Spelunky 3
, allowing Spelunky 2 to be ahead in the sorting):
So far, the current functionality has been tested (on Steam Deck):
Also a bug detected: for some reason it thinks some Proton versions got a launch menu to edit. When wanting to edit said menu, an empty window pops up because there are no keys in the selected str
.
The reason it does that is because Proton is of type "Tool", and there are some Tools you might want to modify its launch menu. So, if you have some Proton version installed, then the button will enable.
I'll add a check to not launch it if there's no keys.
Seems like the blank window will still pop up, but this time the program will ask whether you want to create launch options (with your latest commit 699e1fd
.
On a related note: Is it intended behaviour that not every game or tool can create a new launch menu? The Edit launch menu
button is often greyed out for most games due to them not having any launch menus, sadly.
Seems like editing a launch menu would not function as intended. When editing RetroArch
's launch menu to add another Linux option for launching an AppImage, no option is made available on Steam to choose. Editing that of Civilization V
however would result in another option to be presented to the user, but would not launch the linked executable/AppImage.
Edit: Seems to be just not running .AppImage files. Running a different application's start.sh
file got the application to launch under Sid Meier's Civilization V.
To add to my previous comment: if it's possible, would love to see the option to add launch menus for any game to add in wanted mod loaders etc., as described by the example in the current README.md
. Only games with pre-existing launch menus (even invisible ones to the user on Steam) can be edited, from my quick testing.
The button is only available on applications of type "Game", "Tool", "Application" and "Demo". On top of this, it also needs to be installed, that's why it's greyed out for the majority.
Now that I think of it, I don't really know why I added that check. Editing the metadata of uninstalled games shouldn't have any problems.
I think I had added the check to prevent you from opening games that had no launch menus. With the new message in place, there's no need for it anymore.
The button is only available on applications of type "Game", "Tool", "Application" and "Demo". On top of this, it also needs to be installed, that's why it's greyed out for the majority.
This is apparently not the case, see screenshot:
The game Coromon
for example is installed, yet I can't edit a launch menu of it (it does not ship with a launch menu by default). Its Edit launch menu
button is greyed out. Only RetroArch
and Sid Meier's Civilization V
were working examples, of which I can edit a launch menu of.
Checking once again, it seems to be able to only edit games that are installed on the internal SSD. Is it possible to enable the feature for games that are installed on an external (but connected) storage device, like a micro SD card?
I have removed the check already since it's no longer needed. In order to verify if a game is installed or not, I check the libraryfolders.vdf
file which in theory tells me where all the Steam libraries are located in the file system.
It seems tho it may fail at times if using external storage? I don't know how the Steam Deck handles this.
In any case, this shouldn't be an issue anymore. Try the latest commit please.
I have removed the check already since it's no longer needed. In order to verify if a game is installed or not, I check the
libraryfolders.vdf
file which in theory tells me where all the Steam libraries are located in the file system.
My bad, forgot to test the latest commit. It seems fine with detecting launch menus now. However, games that aren't installed on the internal storage can't edit the launch menus (at least, regarding to executables). When clicking on Coromon
's launch menu edit button, it shows the Windows and macOS launch menu items. But when trying to change the executable, or add a new one and change that, the file browser does not show up.
In the Konsole window, it seems to point out that the script can't handle external storage install directories:
Exception in Tkinter callback:
Traceback (most recent call last):
File "/usr/lib/python3.8/tkinter/__init__.py", line 1892, in __call__
return self.func(*args)
File "/opt/sme/steammetadataeditor.py", line 1038, in <lamba>
command=lambda: self.generate_launch_option_string(
File "/opt/sme/steammetadataeditor.py", line 926, in generate_launch_option_string
installDir = self.appInfoVdf.parsedAppInfo[appID]["installDir"]
KeyError: 'installDir'
Is there any way I could assist in finding out why the key installDir
is not found? The path to Coromon
should be /run/media/mmcblk0p1/steamapps/common/Coromon
. This file path is bound to change, as on SteamOS main
(the very latest nightly/beta version), Valve changes it to a different micro SD card mount path that's more in like with other operating systems (though I forgot the exact way of it at the moment).
That path is actually quite normal for removable storage.
The issue here is that it's not finding that other mount point as a Steam library.
Could you share the contents of ~/.local/share/Steam/steamapps/libraryfolders.vdf
?
Yeah, though Valve seems to be bent on changing it to /run/media/deck/<UUID of your storage device>
, which easily breaks a lot of third party apps incl. non-Steam-games added to Steam itself sadly.
Anyhow, here's libraryfolders.vdf
on Pastebin. Coromon's app ID for reference is 1218210
.
Ok, I did some regex magic, it should be working way better now. Give it a shot.
This did the trick! I had to keep Steam shutdown while saving the changes or else it wouldn't detect the added launch options to Coromon
. Thanks for fixing it! It should be all functional right now, from what I can see. Besides the earlier mentioned publisher/developer change (which I made a separate issue for), it should be all functional.
I'm only not sure what changing the "Original Release Date" is for, only changing the Steam release date seems to change it in the game info screen on the client nowadays.
It was there in the metadata, so I thought I'd include it. I guess I should remove that, along with Developer and Publisher sections of the GUI.
Good news: I've got it to boot on the Steam Deck! (with![image](https://user-images.githubusercontent.com/58944808/216199860-7e1a516a-edf2-448e-a217-3226cb0c2d98.png)
9b20527
, not any other commit or gone further than this) See this screenshot:For others wanting to test it on a Steam Deck, these are the steps I took to get it to run:
cd
into the directory you want to compile and store Steam Metadata Editor.git clone https://github.com/tralph3/Steam-Metadata-Editor.git
- Pulling themaster
branch in.cd Steam-Metadata-Editor
git fetch origin pull/26/head:vdf_0x107564428
- Pulling this Pull Request in as the branch's name on GitHub.git checkout vdf_0x107564428
./make_deb.sh
- Compiling the .deb package. Make suremake_deb.sh
is marked Executable! (Right Click -> Properties -> Permissions Tab, check theIs executable
checkbox.)sudo apt install ./Steam-Metadata-Editor.deb
- Installing the .deb package. PressY
to continue the install../steammetadataeditor
- Running the application through Terminal, seeing the window pop up.To uninstall the app, do
sudo apt remove steam-metadata-editor.git
and confirm the action by pressingY
.@tralph3 Might be worth to point out the current
README.md
refers the .deb package to your ZeroTier-GUI project. Will do the correction tomorrow, if it has not been done by then.Another suggestion would be thanking PawX for the repository mentioned in the Issue #24 for figuring out what got added in the
appinfo.vdf
that led to this fix.