josefnemec / playniteextensions Goto Github PK
View Code? Open in Web Editor NEWExtensions for Playnite game launcher and manager.
License: MIT License
Extensions for Playnite game launcher and manager.
License: MIT License
Currently we detect installed Battle.net games using SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\
registry entries. Problem is that Battle.net client doesn't properly create appropriate entries if the game for just imported and not installed (doesn't affect all games). User has to repair game installation in order for Playnite to pick up the game as installed.
We should use c:\Users\All Users\Battle.net\Agent\product.db
file (has hidden flag) that Battle.net client itself uses to store information about installed games. The file is a protobuf binary dump.
It looks like this would either require reworking of the Steam plugin, or adding SortingName to the data that metadata providers can provide, but the SortingName for a game can be provided for Steam games from their app info.
Like Playnite, Steam only populates this field when sort name is meant to override the game's name for the purposes of sorting. It's in the common section, with keyname of SortAs.
If also adding support to pulling the SortingName from metadata providers, it's as simple as adding a few lines to SteamMetadataProvider.UpdateGameWithMetadata.
if (metadata.ProductDetails["common"]["SortAs"] != KeyValue.Invalid)
{
game.SortingName = metadata.ProductDetails["common"]["SortAs"].Value;
}
A full list of games with this key set (5000+) is available via SteamDB at https://steamdb.info/search/?a=app_keynames&type=-1&keyname=290&operator=4&keyvalue= (requires Steam login to use that search)
Is there a way to launch an itch.io game through the client's launch command, similar to GOG Galaxy? The client features a sandboxing security system that saves games in a different location than the where the executable would save by default. This means I don't get the same game save files if I launched through Playnite, than if I were to launch them through the itch.io client.
When an HTML-based game launches through itch.io it opens in an uncluttered webview window, where opening it currently in playnite opens it in the default browser.
Now that JosefNemec/Playnite#112 is done -- thanks for that! -- it'd be great if games from other platforms beyond PC (which I assume maps to Windows) are parsed as well. I'm mainly thinking about my long list of Android games but maybe further breaking down PC into Linux and Mac would also be nice?
Issue - I imported the game collection (Haunted Cities) from itch.io, and the Play button links to one of the three games (Grandmother) instead of opening up a launcher to select which of the three games to play.
The example game can be found here: https://kittyhorrorshow.itch.io/haunted-cities
Expected Behavior - When clicking Play within Playnite, a game selector should come up similar to the way itch.io starts this collection. Specifically, when clicking on Launch within itch.io, this game selector comes up.
Workaround - Under the Links section of the game's profile in Playnite, I added links to the executables for each of the other two games.
Replication - In itch.io install Haunted Cities. In Playnite, update the itch.io game library. In Playnite, select Haunted Cities, and click on "Play." The game "Grandmother" starts instead of a launcher to select which game to play. Note: This same issue occurs with Haunted Cities 2 and Haunted Cities 3.
I'd consider this a relatively low priority request since there's a work around for this issue.
Check for existing issue
Could not find this issue in the ticket system.
Describe the bug
Steam version of these games are not imported:
These games gave errors on import, but they are in the library?
To Reproduce
Screenshots
Steam versions of Alone in the Dark in Playnite
https://s1.imagebanana.com/file/200511/BslUXHWu.PNG
Alone in the Dark in my Steam client
https://s1.imagebanana.com/file/200511/UBNveZW0.PNG
Diagnostics ID
2020-05-11 08:34:04.5872|INFO:Importing games from Steam plugin.
2020-05-11 08:34:04.5872|INFO:Steam game Das Geisterschiff Remixed is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.5872|INFO:Steam game Enderal - Forgotten Stories OST is not properly installed or it's a soundtrack, skipping.
... other soundtrack skipping removed ...
2020-05-11 08:34:04.5983|INFO:Steam game Velvet Assassin is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.5983|INFO:Steam game XCOM: Enemy Unknown is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6223|INFO:Steam game Mordheim: City of the Damned is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6323|INFO:Steam game Sword Coast Legends is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6464|INFO:Steam game Orcs Must Die! Unchained is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6584|INFO:Steam game Trillion is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6584|INFO:Steam game The Walking Dead: A New Frontier is not properly installed or it's a soundtrack, skipping.
2020-05-11 08:34:04.6835|INFO:Steam game Yume Nikki is not properly installed or it's a soundtrack, skipping.
....
2020-05-11 08:34:04.7075|DEBUG:Found 457 installed Steam games.
2020-05-11 08:34:04.7075|DEBUG:Downloading string content from https://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?key=redacted&include_appinfo=1&include_played_free_games=1&format=json&steamid=76561198055778112 using System.Text.UTF8Encoding encoding.
2020-05-11 08:34:06.1173|DEBUG:Found 6631 library Steam games.
It is funny that my Steam client says that I have 7255 games (see https://s1.imagebanana.com/file/200511/UBNveZW0.PNG), Playnite finds 6631/6680 games (see https://s2.imagebanana.com/file/200511/06oL0YkF.PNG ) and my online profile states that I have licensed 4622 games (https://steamcommunity.com/id/shakeyourbunny). I also checked the latter games tab where it could not locate the three Alone in the Dark games I do have.
Alone in the Dark 1: appid 548090 https://s1.imagebanana.com/file/200511/nXUvl9Wg.PNG
Alone in the Dark 2: appid 548890 https://s1.imagebanana.com/file/200511/ehWueJaU.PNG
Alone in the Dark 3: appid 548900 https://s2.imagebanana.com/file/200511/PtvbNEo9.PNG
SteamDB entry for the series: https://steamdb.info/search/?a=app&q=Alone+in+the+Dark&type=1&category=0
Add option to start the game instead of installing it if it's available for steaming.
Original request: https://www.reddit.com/r/playnite/comments/8zdjsj/request_compatibility_with_steam_streaming_for/
This is similar to JosefNemec/Playnite#1455, but for GOG. It would be nice to be able to have the option to import the vertical covers that GOG Galaxy 2.0 uses as opposed to the horizontal ones that are imported by default. It seems like some of the covers might be from IDGB (like Beneath a Steel Sky (1994)), but others are not, such as their covers for the Master of Orion series or Stargunner (1996). Also, I completely understand if they're just not returned by whatever API you're using right now.
Edit: This also might apply to backgrounds, but I don't think they have any differences between what's imported and what's displayed.
The ask:
Please add functionality to manually re-sync categories from Steam and to Steam. (And, if any other libraries end up with category support, to sync with those too).
Background:
When I first imported my Steam library, it copied over my categories. However, when I later changed those categories, then much later came back to Playnite, the changes were not reflected in Playnite when it did the main library sync operation. I couldn't find any way to manually sync them.
It would also be great if I could sync the other direction, and have category updates made in Playnite reflected in Steam.
Related:
This would be an extension of the functionality from JosefNemec/Playnite#39.
Thanks!
Original request:
I got 2 Accounts and i use one via Family sharing so i don't have to switch all the time. Is there a way for me to import both libraries?
When trying to authenticate with Epic using Google auth, I get an error reading, "pollingId is invalid" with Epic styling (red text on a dark gray background) after successful authentication with Google. Playnite does not register the authentication attempt as successful. Bummer. I can't import Epic uninstalled games since my account is Google auth based.
Currently the tags for Steam games are taken from the "features" part of the Steam store which usually contains information such as Partial controller support, Steam Cloud, Steam Trading Cards, etc. My suggestion is to also add user-defined tags into the metadata. It would improve the functionality when trying to filter library for tags such as Story rich, Great Soundtrack or Open World.
It would be great to be able to choose in wich language I want to have the downloaded details. I'm a spaniard, but live in Switzerland.
My option would be to have the details in either spanish or english. BUT for Steam and Origin games the details are downloaded only in english, from GOG everything is in german... it's quite a mess.
It's a suggestion that sooner or later would come.
I'm totally in love with Playnite and only use it from yesterday. THANK YOU!!!
Description
When I launch blizzard games,
it often happens (70% of the time) that the launcher battlenet starts but waits for you to click on "Play".
The problem often occurs when the launcher service is not yet started on the computer.
My friend also has the same problem.
To Reproduce
start warzone/coldwar in playnite
screenshot
https://www.youtube.com/watch?v=-6yXOk-P6vw
Diagnostics ID
Playnite Version : 8.11
Battlenet launcher : 1.31.2.12679
Windows 10 Pro 1909 ( Build 18363.1979 )
I see this issue seem to be fixed : JosefNemec/Playnite#692
Currently, when searching IGDB for game metadata, only Name and Year is shown in the search results. This makes it difficult to chose the correct title when a game is released for multiple platforms:
It would be nice to have Platform listed in the search results, so the correct item can be selected.
Hello, so today I downloaded the new EA desktop app because of the ea play/ xbox game pass pc merger. And so I decided to delete origin, and my EA desktop games now don't work with playnite. Any way you can implement EA desktop to playnite?
According to the GOG Galaxy implementation here while PlayGTAV.exe
should be used to launch the game, GTA5.exe
should be used for play time tracking.
There seems to be no way for distinguishing DRM-free and Trove games, other than the icon (Troves get no icon). Can this be implemented somehow? Maybe games need a new attribute? Or Humble library can be split in two? (owned vs Trove)
Steam Video is cataloged as normal however when it tries to "Install" the videos it goes into a perpetual install loop.
I personally feel the way to solve it will be to remove all steam videos to the library. But that is up to the dev's consideration.
Also with Kung Fury Specifically the metadata is for Kung Fury: Street Rage
Is it possible to auto fill the platform field with "PC"? At the moment the platform field is not touched and you have to set it manually to PC.
As there are only PC games on Steam it should be safe to set this by default to "PC".
steamcmd.exe app_info_print 438100
C:\Program Files (x86)\Steam\appcache\appinfo.vdf
-> https://github.com/shravan2x/Gameloop.Vdf or https://github.com/SteamDatabase/SteamAppInfoAs per the Discord discussion, some images for some games are not appearing in the dialog box where you get to pick a background. As you explained, sometimes these images don't exist for some games, but it seems to be consistent in that games imported via the Steam integration do not show the first four images and yet entering the same game as a manual entry means that they then do show up when using the plugin to search for metadata.
Examples I have tried with include PUBG, Portal 2, Phantom Doctrine and Race Arcade, but like I said, it does appear to be this way for any game imported using the steam library integration.
Hello there! Appreciate a lot of your work, I'm using your extension a lot for my offline Playnite library. :) Just wanted to report you some trouble that I have.
When I'm manually downloading the metadata, using the exact same name of the game, sometimes it doesn't find it. (I would say 50% of the time or more) Have to to put the game APP number (Don't have trouble with that).
Because it is not really reliable, have to search via google first.
Example : Game name "Salthe" https://store.steampowered.com/app/1357840/
Second trouble : Sometimes the extension just doesn't do anything :
https://store.steampowered.com/app/924520/
https://store.steampowered.com/app/1418090/
Thank you for your time!
The new Blizzard Arcade Collection, which include The Lost Vikings and Blackthorne, is not imported when updating the Battle.net game library. I'm using the new, redesigned Battle.net application (version 1.31.3.12685) and Playnite 8.11 on Windows 10 Pro ver 20H2.
This function does work, but I don't really want to use it regularly.
Describe the solution you'd like
I would like to log into my uplay account on Playnite and be able to view/install games that are currently not installed on my device from my Uplay account.
Steps to reproduce:
What happens is: the game closes (that's good), however, two things need to happen:
If you point me to the current C# butler client stuff, I might be able to give more concrete advice, as I've had to figure out the whole lifecycle thing for itch itself, and it's pretty hard to get exactly right (especially with butler auto-updates).
Check for existing issue
Did not immediatly see one
Describe the bug
When importing steam categories (multiple times) Playnite seems to ignore games where the categories have been removed in steam. Those games will remain having the previous category from before the category was removed in steam.
Only workaround is erasing all categories from steam games before doing a new catgories import
To Reproduce
The game will still be in the same category as before the category was removed in steam. Either playnite does not remove the categories of these games or it does not loop over steam games that have no category set (in order to see it has now no category set)
Screenshots
See my video here https://youtu.be/Nov9QCzzGPM
Diagnostics ID
Please generate diagnostics package from "About Playnite" menu and attach identifier you received. If the issue is a crash bug, you can generate diag. package directly from crash dialog.
Currently the itch extension only imports games from the "Owned Items" section of our Itch Library. I have many free games I'd like to have show up in Playnite without having them installed.
I propose a way to have collections be imported as well. I'm not familiar with the API enough to know if that's possible, but ideally in the itch import settings we could choose from a list of collections to also import, and an option to import from all collections (even newly created ones). If that's not feasible from a UI standpoint, I think a sensible default could be importing the standard "Library" collection on Itch.
Origin reports error that a game is not activated. This started happening after some Origin update and doesn't affect all games, mainly newer ones.
Workaround is to point game's Play action directly to game's executable.
JosefNemec/Playnite#622 added an option to close game client after game exits. I was able to find a graceful way to close original launcher for all libraries except Epic. It doesn't respond to any standard termination signals and there doesn't seem to be cmdline argument to shut it down (like Steam or Galaxy has).
Right now we just kill the process, which is not ideal.
Would it be possible to tinker with the playtime with UPlay games like Far Cry 5 because even though I've spent probably 67 hours on the game, it shows that I've only played the game for like 54 minutes because the launching part of the game through Ubisoft is what's counted by Playnite.
So this is actually the problem I had in my last post, I'll try to be more clear this time: For example, I have Splinter Cell Conviction installed through Uplay, it shows up in the library with only the usual "Platform: PC" description. But when I download the metadata with the default settings it doesn't change anything, it's still a blank description. This happens for a number of Uplay games. Downloading the metadata manually through the edit panel works, but don't know why I have a feeling the description is not how it used to be. My memory might be wrong, though, but I'm certain of the first issue.
Check for existing issue
I did not find anything when searching for the word "paradox" or looking through the results for "steam" on GitHub.
Describe the bug
I play Paradox games (Stellaris and Crusader Kings III) quite a bit and launch all of my games through Playnite. For recent Paradox games (the above, but not Crusader Kings II, for instance), Paradox uses a launcher to allow you to configure mods and DLC access, as well as jump straight back into your current save (the Paradox Launcher v2, which is apparently different than the Paradox Launcher). When launching the games through Steam, the launcher will come up and then allow you to start the game.
Recently (although I'm not quite sure when), this broke time tracking for those games. Clicking the play button in Playnite will launch the game through Steam, but almost immediately, the play button will go back to displaying "play" and the session will not be tracked for time. I have confirmed that this is the case in safe mode (with no plug-ins) as well.
Work Around
If you just launch the games through their executables, time tracking works fine, although the launcher is not used. I'll be doing this for now.
Diagnostics ID
cf81e4b1-110c-4d58-9e54-a74538f76b25, if you need it.
Equivalent of Steam categories.
Four standard types: COMPLETED, NEXT TO PLAY, BACKLOG, FAVORITE
User can add new tags at:
https://www.gog.com/account/settings/tags
Describe the solution you'd like
If a user wants to install a game that is currently not installed on his PC through Playnite. Playnite should automatically open the browser sending the user to download page for the needed game launcher if the user does not already have the launcher installed on the system.
Currently it only has a simple popup window that askes the user to install the required launcher.
Playnite is not using additional info about release dates from IGDB.
File: Technocop (USA).md
Platform: Sega Genesis
IGDB result: Techno Cop (1988) - OK, other versions were released in 1988, but Genesis version was released in 1990 and info about that is on IGDB page (https://www.igdb.com/games/techno-cop).
Yet Playnite (4.31) sets date as 1988.
Check for existing issue
I have not seen this issue reported yet.
Describe the bug
Steam sometimes seems to track the state of the Playnite application instead of the underlying game that gets started, and it says the game(s) are still running until I fully close Playnite.
To Reproduce
I'm not sure what actually causes this. It does not happen all the time. I ran Slay the Spire about three times, but after I had played it for a couple hours the fourth time, the next day when I tried to run it, Steam said that the app was already running.
So the only steps to reproduce I have are:
I expect it to run, but instead Steam says it's already running.
Workaround: Close Playnite and open it again. Steam will detect that the game has closed. Obviously, restarting the computer also works.
This happened with the games Terraria and Slay the Spire.
Screenshots
I can take a screenshot of the Steam error I get if it happens again and if you don't know what I mean.
Diagnostics ID
N/A
Describe the bug
I purchased Planescape: Torment: Enhanced Edition from GOG. I installed it using the offline installer, and Playnite correctly picked it up and added it to my library. It launches fine from the "installation finished" screen and from Windows Explorer, but when I run the same commandline from Playnite I see an error message.
To Reproduce
Diagnostics ID
db214d95-de75-4c09-a762-e6d013d616bf
Hey!
As discussed on my Reddit Post:
https://www.reddit.com/r/playnite/comments/eu68ne/hiding_games_not_owned
Would be great to have the ability to filter games from other users accounts, as a recap, after setting up my partner as a second user on my PC and installing Playnite for her to sort her games, as we share the same install location for the physical copies of games (Drive D:) Playnite will show all games installed regardless of who owns that copy of the game.
Check for existing issue
Please use issue search in the repository if the bug is something really obvious there's a high change it was already reported.
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
If it's not clear from the description how to reproduce the issue please add clear steps to reproduce the behavior.
Screenshots
If applicable, add screenshots to help explain your problem.
Diagnostics ID
Please generate diagnostics package from "About Playnite" menu and attach identifier you received. If the issue is a crash bug, you can generate diag. package directly from crash dialog.
I didn't see any tickets about it. Bethesda and Epic have their own launchers. While Epic's is more complex due to its support of Unreal Engine, it's still something that would be fun to have. Bethesda are getting more and more games in theirs so that would be great.
I have made the installation of your extension on my playnite but when i close GTA 5 the launcher is still open.
I have seen there is an old comment like mine but i don't know if you have fixed it or not ^^
Currently with the Battle.net extension, Crash Bandicoot 4 does not import.
Creating a manual entry pointing to the game EXE is not sufficient as the game then fails the Battle.net online check, though pointing to battle.net.exe with the parameters --exec="launch WLBY" can at least launch the game.
The different demos of Origin, there are appearing as a complete game in the Playnite library.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.