Lacro59 / playnite-successstory-plugin

This plugin shows the game achievements in Playnite.
https://playnite.link
MIT License
167 stars 30 forks source link

Epic achievement #365

Closed ronyn77 closed 2 months ago

ronyn77 commented 1 year ago

Hello,

I've just installed your plugin. I managed to make it work with steam, gog, xbox live and ea (ex origin). Unfortunatelly it does not work with epic games. It didn't load any game achievement. I cannot see any error messages inside playnite.

Anyway, it would be nice to see this plugin working in the fullscreen mode :)

FlyMandi commented 1 year ago

Might be obvious, but Epic achievements are relatively new and scarce, have you checked that your games imported from epic actually have achievements on there?

To understand your issue, do your games show up with 0 achievements, even though you have some, or do they not show achievement progress in the first place?

When you go to load data from a specific game that was imported by the epic library extension, right-click and hit "SuccessStory", does the "refresh data" button show up? image

ronyn77 commented 1 year ago

You were right. I was under the impression that Epic Games was similar to Steam and expected to find achievements for the games I played. However, there are a couple of games in my library that do have achievements. Please take a look at these pictures: https://imgur.com/a/a3abPDW On the Epic Games Store, there are achievements for Rocket League, and I attempted to import them using the SuccessStory plugin. Unfortunately, I am unable to see them on the list.

odahviing commented 1 year ago

Same issue here. It seems like it doesn't import EPIC achivs

pmrpla commented 1 year ago

Same issue here and I've even set achievement permissions to public on Epic.

I've got 10/34 achievements unlocked on Fall Guys and SuccessStory shows 0/34 after refresh.

pmrpla commented 1 year ago

Just checked and this is still issue #337.

Jhanlon95 commented 1 year ago

Can confirm that this is still happening for me too. The issue seems to be that SuccessStory doesn't make use of the OAuth sequence that is expected by Epic games. The flow makes use of an access token and a refresh token.

The refresh token lasting longer than the access token, when the access token has expired a request will be sent with the refresh token to fetch a new access token and refresh token, doing this will allow the user to stay logged in without having to constantly reauthenticate, which will make it that when SuccessStory calls the game's achievement page that the user will still be logged in. It's how the default Epic Games Library plugin ensures that the user is still logged in, I believe this is what needs to be done for SuccessStory too. I have tried looking into it myself multiple times to hopefully raise a pull request but I am not great at the implementation

Jhanlon95 commented 11 months ago

This is still happening for me unlocked achievement in Layers of Fear (2023), Playnite still showing 0/52 unlocked even after right clicking on the game using "SuccessStory" -> "Refresh Data". After reauthenticating with the Epic Library Plugin and doing the same steps the unlocked achievement is now showing as 1/52.

As my last comment mentioned there is now an auth token and a refresh token being used that I believe SuccessStory is not keeping track of, so when the auth token expires it cannot fetch a new one as it doesn't have the refresh token, so when a refresh data is done the user is not logged in

Funsponge commented 9 months ago

Tested this with Alan Wake 2's achievements but returned no results.

29-12 16:21:05.445|INFO |SuccessStory#PluginDatabaseObject`4:RefreshNoLoader(Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa)
29-12 16:21:05.873|INFO |SuccessStory#PluginDatabaseObject`4:Used SuccessStory.Clients.EpicAchievements for Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa
29-12 16:21:08.487|WARN |SuccessStory#EpicApi:Error 404 for Alan Wake 2
29-12 16:21:08.487|INFO |SuccessStory#PluginDatabaseObject`4:No achievements find for Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa

When I manually renew my Epic auth token via the library plugin the achievements were pulled as expected.

29-12 16:27:44.391|INFO |SuccessStory#PluginDatabaseObject`4:RefreshNoLoader(Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa)
29-12 16:27:44.660|INFO |SuccessStory#PluginDatabaseObject`4:Used SuccessStory.Clients.EpicAchievements for Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa
29-12 16:27:48.997|INFO |SuccessStory#PluginDatabaseObject`4:Find 66 achievements find for Alan Wake 2 - 2b567a38-5d54-429e-95ee-90a64532cffa
BLACK4585 commented 8 months ago

Same issue here, would love to see a fix

Lacro59 commented 2 months ago

https://github.com/Lacro59/playnite-successstory-plugin/commit/6e18b787673a605f422aa6dbcd2e6b64ef70cdbd