samsface / godot-steam-api

Godot Steam integration using GDNative.
400 stars 16 forks source link

Plugin unable to connect after Godot version change #18

Closed RPicster closed 2 years ago

RPicster commented 2 years ago

Describe the issue When changing Godot versions (e.g. 3.4.4 > 3.5 or 3.4.3 > 3.4.4) the plugin seems to stop working. I get the error message that the plugin is unable to connect to Steam.

Fix What helped now for a second time was completely removing the plugin and deleting the directoy in addons - then doing a clean install.

samsface commented 2 years ago

I think I know the issue.

When we run the game from Godot (so not launched from Steam), steam knows the appid by looking at the exe and seeing if there is a file named "steam_appid.txt" in the same directory as the exe.

The Steam section of the project settings actually creates this file during the import of the sdk dlls. So this file gets written into the install location of Godot. So is it possible that the new install is removing that file or maybe you're installing into a new directory with the version suffixed (e.g. C:/program files/godotv3.5 -> C:/program files/godotv3.6)

RPicster commented 2 years ago

What you described was exactly the problem - I tested it again when changing version. The question now is only how to communicate this "problem" effectively?

RPicster commented 2 years ago

Ok, getting back here to document how I handle version changes now. Like you said, the file is in the directory of the Godot version, so if I use a new version, the first thing I do is to copy over the steam_appid.txt file and everything works 😵

samsface commented 2 years ago

Another person has hit this issue. Reopening and will close again once I've added an error/test message that the file is missing.

samsface commented 2 years ago

Added a check that gives a better error message when that file is missing.