darklinkpower / PlayniteExtensionsCollection

Collection of extensions made for Playnite.
MIT License
331 stars 29 forks source link

[Display Helper] Not working on steam shortcuts #441

Closed cptvincer closed 1 year ago

cptvincer commented 1 year ago

Extension name

Display helper

Bug Description

When launching a game via steam shortcut (like a non-steam game shortcut) display helper isnt working. It flicks, my guess it changes the resolution but then quickly changes it back before the game is launched.

My guess it doesnt recognize as running via steam, like a blank exe or something similar. The workaround is targeting the exe via playnite wich works- but then im not able to run the game with steam overlay and steam input.

Im not sure wether this should be a bug or feature request- but im also noticing playnite is failing to run non-steam games running via steam overall (for example playnite instead of minimizing while the game is running maximizes back) wich i guess isnt the intended behaviour...

To Reproduce

No response

Logs

playnite.log extensions.log

Screenshots

No response

darklinkpower commented 1 year ago

The extension is working correctly as indicated in the extension log. On secind 35 the extension changes the resolution on game start and on second 37 it restores the resolution because the game was detected as stopped by Playnite:

25-09 23:27:35.180|DEBUG|DisplayHelper#DisplayUtilities:Setting configuration of device "\\.\DISPLAY1", 2560x1440, 0, CDS_UPDATEREGISTRY
25-09 23:27:35.282|INFO |DisplayHelper#DisplayUtilities:Display settings changed successfully
25-09 23:27:35.282|INFO |DisplayHelper#DisplayHelper:Stored restore display data. Screen: \\.\DISPLAY1. Resolution 3840x2160. Frequency: 60
25-09 23:27:37.554|DEBUG|DisplayHelper#DisplayUtilities:Setting configuration of device "\\.\DISPLAY1", 3840x2160, 0, CDS_UPDATEREGISTRY
25-09 23:27:37.671|INFO |DisplayHelper#DisplayUtilities:Display settings changed successfully

Which matches what it says in the Playnite log:

25-09 23:27:35.343|DEBUG|ProcessStarter:Starting process: steam://rungameid/12466216544600326144, , X:\jogos\piratas\Terra Alia, False
25-09 23:27:35.757|INFO |GamesEditor:Started Terra Alia game.
25-09 23:27:35.880|DEBUG|Downloader:Downloading string content from https://github.com/davidkgriggs/PS5ish/raw/main/Manifests/Installer_Manifest.yaml using UTF8 encoding.
25-09 23:27:35.913|ERROR|GameExtensions:Failed to get executable from game data.
System.NotSupportedException: The given path's format is not supported.
   at System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
   at System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
   at Playnite.GameExtensions.GetRawExecutablePath(Game game) in C:\projects\playnite\source\Playnite\Extensions\GameExtensions.cs:line 313
25-09 23:27:35.913|ERROR|GameExtensions:Failed to get executable from game data.
System.NotSupportedException: The given path's format is not supported.
   at System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
   at System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
   at Playnite.GameExtensions.GetRawExecutablePath(Game game) in C:\projects\playnite\source\Playnite\Extensions\GameExtensions.cs:line 313
25-09 23:27:35.913|ERROR|GameExtensions:Failed to get executable from game data.
System.NotSupportedException: The given path's format is not supported.
   at System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
   at System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
   at Playnite.GameExtensions.GetRawExecutablePath(Game game) in C:\projects\playnite\source\Playnite\Extensions\GameExtensions.cs:line 313
25-09 23:27:35.926|ERROR|GameExtensions:Failed to get executable from game data.
System.NotSupportedException: The given path's format is not supported.
   at System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
   at System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
   at Playnite.GameExtensions.GetRawExecutablePath(Game game) in C:\projects\playnite\source\Playnite\Extensions\GameExtensions.cs:line 313
25-09 23:27:36.406|DEBUG|Downloader:Downloading string content from https://raw.githubusercontent.com/TheKersalMassive/ReskinPS5/main/Manifests/Installer_Manifest.yaml using UTF8 encoding.
25-09 23:27:36.421|INFO |GamesEditor:Game Terra Alia stopped after 1 seconds.

25-09 23:27:36.421|INFO |GamesEditor:Game Terra Alia stopped after 1 seconds.


So the issue is that you have an incorrect configuration in the game play action in Playnite, it's not an issue in the extension so you need to fix it there. Try changing the tracking mode to folder and setting it to the game directory but you have an error there so I don't know if that will fix it.

P.S.: Also watch out, we generally don't provide support for pirated games 😅