bartok765 / galaxy_blizzard_plugin Goto Github PK
View Code? Open in Web Editor NEWGOG Galaxy 2.0 plugin for Blizzard
License: MIT License
GOG Galaxy 2.0 plugin for Blizzard
License: MIT License
Blizzard CN account is separate from the Blizzard Global account.
https://develop.battle.net/documentation/guides/using-oauth
Region | Authorize URI | Token URI |
---|---|---|
US, EU, APAC | https://{region} .battle.net/oauth/authorize |
https://{region} .battle.net/oauth/token |
CN | https://www.battlenet.com.cn/oauth/authorize | https://www.battlenet.com.cn/oauth/token |
The rest is the same, except for a few games that are missing.
Could you create a plugin for Blizzard CN?
Such as galaxy_blizzardcn_plugin
.
Thank you!
Describe the bug
While you make a difference between World of Wacraft and WoW Classic,
there is no way to switch between live/ptr/beta realms before you hit play
Expected behavior
Have a small menu where you can set a default realm and switch between them before starting the game.
Hello! After installing Warcraft 3 classical (wich goes within battle.net now) GOG says that I have owned Warcraft III Reforged, but I only have classical version.
Diablo 4 does not appear in the list of Battle.Net playable games.
Tried editing the definitions.py file and adding in the game info under TITLE_ID and Blizzard games but this just crashes the plugin.
The TITLE ID XXXXXXX is replaced with the number from my battle.net profile for the game.
XXXXXXX: RegionalGameInfo('fenris', True)
BlizzardGame('fenris', 'Diablo IV', 'FENRIS')
Basically this plugin works mostly fine. I got it straight from GOG. Only issue is that Modern Warfare 2 Campaign Remastered doesn't show up in the library. Is there any way to fix this? Is there something that needs to be done that I'm not doing?
Hi there! Not a bug, just wondering if there's an update to add to introduce COD BoCW integration. Thanks!
Hi.
We would like to fork your repo and keep track based on the work being done here, if you agree.
This is because we have no time to keep developing the integration on our side and you've solved some build issues itself. It's also beneficial that your repo is not a fork, as we can sync it using our fork-updater like for example https://github.com/FriendsOfGalaxy/galaxy-integration-rockstar
The syncing code can be found here: https://github.com/FriendsOfGalaxy/galaxy-integrations-updater
I see that you already added manifest.json to src
so it should work out of the box (I hope).
Showing achievements in GOG Galaxy 2.0 for Blizzard games would be nice.
However this is currently limited to games which already have achievement data in the game properties that GOG Galaxy uses.
We currently have no way to add achievements by ourselves. We're bound to GOG adding the achievements for the games, before we can show them via the Blizzard integration (see Issue gogcom/galaxy-integrations-python-api#125).
Describe the bug
We can't talk to people from our battle net friendlist and not with our guilds although the smartphone app and desktop app support it
Expected behavior
See other peoples online status, what they are playing, chars they might use and get into the wow guild chat.
The question is, can we do that ? Since there is no official api, one would have to unpin the application traffic and check their protocol and re-implement it.
Looking at the Mobile App, this seems to be an implementation of XMPP as there is a xmpp library inside.
Hi folks,
my maintenance of this plugin sadly won't be continued, so I got an idea to share this repository with more people that have write access by transferring it into the GitHub organization.
What do you think? What should I remember about for transition? What you like to be added?
I'm marking all former contributors:
@vlad-glint
@FriendsOfGalaxy
@felipeparaujo
@BradleyPJ
@Stanzilla
@piergud
@wanze
@saitho
@elkangaroo
@jordantram
@duffyboyo
@nwarrenfl
@BradB111
Describe the bug
In the Galaxy client, diablo 2: resurrected is marked as owned and was added to the recent games list.
It was installed during the beta weekend (which would explain the entry in the recent games list)
I uninstalled the beta, the "recent game" entry won't be removed.
If that is intended, debatable.
BUT:
it is still marked as owned and ready for install.
The Bnet Client shows the shop link on the D2 resurrected section, which is expected as i didn't buy the game yet.
The api says:
`
titleId | 5198665 |
localizedGameName | "Diablo® II: Resurrected™" |
gameAccountName | null |
gameAccountUniqueId | |
gameAccountId | NUMBER |
gameServiceRegionId | 100 |
programId | 5198665 |
gameAccountRegion | "GLOBAL" |
regionalGameFranchiseIconFilename | "diablo-ii-resurrected.svg" |
gameAccountStatus | "Good" |
lastPlayedDateMillis | 162752447000 |
titleHasSubscriptions | false |
titleHasGameTime | false |
accountSubscriptionView | null |
gameTimeView | null |
displayOrder | 9007 |
customDownloadLink | null |
I can trigger the install from galaxy , will check later what happens then.
I would have expected the game is NOT listed as owned, since beta is over and i don't own the game and that the recent games entry vanishes when the beta was uninstalled.
I have for historic reasons 2 WoW Folders on 2 drives
One for retail and one for PTR/Classic/Beta.
While everything is marked as installed in the battle-net launcher and can be run from there,
GoG marks WoW Classic as not installed.
Diablo Immortal released in Open Beta on PC, but Galaxy isn't picking it up as a game. It's in the database, but listed as "Other".
Does Blizzard not give you time played for World of Warcraft from the api and you rely on gog starting games through bnet exe and count time running yourself? The WoW Beta seems to be missing entirely from my stats.
You can pre-order and test Diablo2:Resurrected already.
What would you need to add this to the gog integration to make the cover and the game visible in the galaxy launcher?
So I'm going to add a 2 in 1 type of issue here, apologies if that isn't allowed.
World of Warcraft Classic now has it's own game page where as previously it was only an option you could select under the drop down menu for World of Warcraft. This made it so when you clicked play through GOG Galaxy, all it did was open BNET so you had to select play AGAIN in order to launch the game. Maybe now since it has it's own page in BNET it can be launched just by clicking play in GOG? And if so it should launch Burning Crusade Classic since that is the version most people will be playing on.
World of Warcraft Classic and Burning Crusade Classic should have their own tabs in the GOG Galaxy BNET integration. Pretty self explanatory, they're separate games with separate servers so they should each have their own card.
Thanks for the integration. I have been unable to get Call of Duty: MW2CR to show up in the integration. Is this possible to show up in the integration?
I have tested on my machine , sure about the fact that need additional _psutil_windows.cp37-win32.pyd file to make the plugin work right.
Galaxy version : 2.0.13Beta 32bits
OS version win10 home edition V18363.719 64 bits
plugin version: 1.0.2
python version: 3.7 64bits
Personal guess this problem only occurred on windows, and it is not the plugin itself problem, But if whose user install the plugin from source and his python version is 64 bits would cause this issue.
Hello! I have both Warcraft 3 Reign of Chaos and The Frozen Throne buyed as classical games, and both appears on my Blizzard account, but on gog galaxy only The Frozen Throne is detected. Both games are uninstalled.
Shouldn't both games be detected instead only The Frozen Throne?
I don't know If I have to put some more information, Here I let the log.
I got the Blizzard Arcade Collection and while it shows up in the Battle.net client it doesn't seem to be detected by the plugin. I'm guessing you may need to manually add support/detection for this?
There are several issues on the GOG issue tracker that reported game time tracking was not working.
Issues before PR #7 which reintroduced game time tracking for Overwatch (might be redundant):
We may have to check that again.
I recently installed WarCraft 3 Reforged on my computer. Although the game gets detected as owned by GOG Battle.net integration, I only see the Install button, not the Play option. However, the Play button appears on WarCraft III The Frozen Throne, although the classic version is not installed. Neither button does anything.
Maybe it's worth mentioning that I have the new beta version of Battle.net client installed.
Hi there,
I'm the maintainer of https://github.com/alfg/overwatch-api, and I noticed you use https://owapi.io as an integration for your project (Thank you!).
I am curious why you are using the user agent defined at:
galaxy_blizzard_plugin/src/consts.py
Line 30 in 67acded
And if it's possible to use a custom user-agent as part of your HTTP client requests. I am not familiar with the GOG Galaxy client and it's plugin ecosystem, so I may be missing some context.
Thank you.
I can successful login into the Battle.net, but after the login window closes ist states "offline - retry", i open the window again and can login.
I also deinstalled and re-installed the plugin several times, without success
Can you add to the README the instructions on how uninstall this plugin?
Describe the bug
Regarding to 1.1.0 update, almost everything work fine but I found an issue with diablo3.
Probably because of unknown id for d3cn
. Someone from China that have d3cn has to check result of his backend_client.get_owned_games()
to find this unknown id.
To Reproduce
Logs
2020-03-20 20:47:37,635 - root - INFO - Adding ? 暗黑破壞神III to installed games
2020-03-20 20:47:37,641 - root - DEBUG - Detected installation begin
2020-03-20 20:47:37,641 - root - INFO - Changing game ? state to LocalGameState.None_
2020-03-20 20:47:37,641 - galaxy.api.jsonrpc - INFO - Sending notification: method=local_game_status_changed, params={'local_game': LocalGame(game_id='?', local_game_state=<LocalGameState.None_: 0>)}
2020-03-20 20:47:37,641 - galaxy.api.jsonrpc - DEBUG - Sending 125 bytes of data
When integrated via GoG2.0 Integration, and launching the game from the list, i.e Modern Warfare, its loads up Battle.Net Launcher, signing out my original default and uses me to sign in back from the connection in GoG, and it does not launch the game. I've tried to add a custom path to the executable, but still, when clicking on "Play" its loads up the Launcher, would be nice to direct the default launch parameters to the actual path of the game.
The API (https://account.blizzard.com/api/games-and-subs) has stopped reporting partner games like CoD. We have to find alternative solution to report all owned games.
One idea is to rely on https://account.blizzard.com/api/transactions
In worst case scenario we can base on local client.
Describe the bug
Plugin often loses authentication causing a login approx. once per 24 hours
To Reproduce
Wait 1-2 days
Expected behaviour
For the plugin to not lose authentication.
Attached logs
Let me know if any are required and which ones required if so.
From logs given by @micpp42 in #50
Traceback (most recent call last):
File "C:\Users\micpp\AppData\Local\GOG.com\Galaxy\plugins\installed\battlenet_ba170431-0649-482f-863b-d248592f1842\galaxy\task_manager.py", line 21, in task_wrapper
result = await coro
File "C:\Users\micpp\AppData\Local\GOG.com\Galaxy\plugins\installed\battlenet_ba170431-0649-482f-863b-d248592f1842\local_client_base.py", line 214, in register_local_data_watcher
if not self._load_local_files():
File "C:\Users\micpp\AppData\Local\GOG.com\Galaxy\plugins\installed\battlenet_ba170431-0649-482f-863b-d248592f1842\local_client_base.py", line 159, in _load_local_files
self.database_parser = DatabaseParser(product_db)
File "C:\Users\micpp\AppData\Local\GOG.com\Galaxy\plugins\installed\battlenet_ba170431-0649-482f-863b-d248592f1842\parsers.py", line 60, in __init__
self.parse()
File "C:\Users\micpp\AppData\Local\GOG.com\Galaxy\plugins\installed\battlenet_ba170431-0649-482f-863b-d248592f1842\parsers.py", line 94, in parse
self.products[ngdp_code] = ProductDbInfo(uninstall_tag, ngdp_code, install_path, version, playable, installed)
TypeError: __init__() takes from 2 to 6 positional arguments but 7 were given
I'd like to see my Overwatch playtime in the Galaxy Launcher.
The playtime can be grabbed from the official Overwatch player profiles or a fanmade API.
Playtime is divided into quick play and ranked play - and have to be added to get a total play time.
URL: https://playoverwatch.com/en-us/career/pc/[username]-[number]
Example: https://playoverwatch.com/en-us/career/pc/saitho-2703
Total playtime for Quick play is located in the category "Game" as "Time played" (HH:MM:SS).
Playtime for competitive play is located at the same place, but one has to switch to competitive stats "tab" above the statistics.
URL: https://ow-api.com/v1/stats/pc/eu/[username]%23[number]/complete
Example: https://ow-api.com/v1/stats/pc/eu/saitho%232703/complete
Total playtime is located in quickPlayStats.careerStats.allHeroes.game.timePlayed
and competitiveStats.careerStats.allHeroes.game.timePlayed
.
Vanguard has not been added to GOG yet but I saw last year for cold war there is a way to manually enter a code into the Definitions.py file and was wondering what the format would be to add vanguard
I don't see the Original Warcraft III in the BNET integration. I don't own reforged but I have the Orginal, have it installed, and it's fully launchable through BNET.
Describe the bug
GoG shows Destiny2 being available from both Steam and Bnet.
If you hit install in the gog section, bnet starts up and complains about not being able to install the game at this moment. I doubt the reccomended bnet launcher update will fix this anytime soon as it isn't even shown as a partner game.
A clear and concise description of what you expected to happen.
Not offer the game for installation at all.
My battle.net games are shown as not installed.
It is shown as installed(play button activated) when I first integrate battle.net to GOG Galaxy.
But if I restart GOG Galaxy, all battle.net games are shown as not installed.
BTW my battle.net games are installed at drive D (CoD MW for example - D:\battle.net\Call of Duty Modern Warfare) but I dont think that matters anyway.
None of my installed games are shown as installed.
Expected: Duh, of course I'd like my installed games with a "Play" button instead of an "Install" button.
Suspicion: all the games need updates (stupid razznfrazzn Battle.net not updating games if you haven't played them "recently" (whatever that actually means, but I digress)).
Suspicion confirmed: after updating, "Install" changes to "Play". So, sigh, it's actually a bug in Galaxy 2.0, since GOG games always update automatically (if not changed from default setting). I guess.
About 3 days ago, the Battle.net plugin started crashing immediately after startup. The message "Connecting..." appears for a little while, followed by "Not responding" and "Plugin has crashed Retry".
I tried disconnecting and reconnecting my Battle.net account, I even tried removing the FriendsOfGalaxy application from my Battle.net account and readded it through the plugin login process, but with no result.
The last log lines from %PROGRAMDATA%\GOG.com\Galaxy\logs\plugin-battle-net... are the following (I removed the token from the first line):
20-01-08 23:54:56,336 - root - DEBUG - Sending data: {"jsonrpc": "2.0", "id": "0", "result": {"platform_name": "battlenet", "features": ["ImportOwnedGames", "LaunchPlatformClient", "UninstallGame", "LaunchGame", "ImportInstalledGames", "InstallGame", "ShutdownPlatformClient"], "token": "SOMEGUID"}}
2020-01-08 23:54:56,506 - galaxy.api.jsonrpc - DEBUG - Received 75 bytes of data
2020-01-08 23:54:56,506 - galaxy.api.jsonrpc - INFO - Handling request: id=1, method=initialize_cache, params={'data': ''}
2020-01-08 23:54:56,506 - galaxy.task_manager - DEBUG - Task manager plugin internal: creating task 0 (tick)
2020-01-08 23:54:56,506 - root - DEBUG - Sending data: {"jsonrpc": "2.0", "id": "1", "result": null}
2020-01-08 23:54:56,606 - galaxy.api.jsonrpc - DEBUG - Received 54 bytes of data
2020-01-08 23:54:56,606 - galaxy.api.jsonrpc - INFO - Handling request: id=2, method=ping, params={}
2020-01-08 23:54:56,607 - root - DEBUG - Sending data: {"jsonrpc": "2.0", "id": "2", "result": null}
2020-01-08 23:54:56,925 - galaxy.api.jsonrpc - DEBUG - Received 68 bytes of data
2020-01-08 23:54:56,925 - galaxy.api.jsonrpc - INFO - Handling request: id=3, method=import_local_games, params={}
2020-01-08 23:54:56,925 - galaxy.task_manager - DEBUG - Task manager jsonrpc server: creating task 0 (import_local_games)
2020-01-08 23:54:56,925 - galaxy.task_manager - DEBUG - Task manager plugin external: creating task 0 (import_local_games)
2020-01-08 23:54:57,145 - galaxy.api.jsonrpc - DEBUG - Received 7761 bytes of data
2020-01-08 23:54:57,145 - galaxy.api.jsonrpc - INFO - Handling request: id=4, method=init_authentication, params={'stored_credentials': ''}
2020-01-08 23:54:57,145 - galaxy.task_manager - DEBUG - Task manager jsonrpc server: creating task 1 (init_authentication)
2020-01-08 23:54:57,146 - galaxy.task_manager - DEBUG - Task manager plugin external: creating task 1 (init_authentication)
Diablo 2 resurrected installed via Battle.net is not populating on GOG.
Crash Bandicoot 4: It's About Time doesn't get imported in GOG Galaxy.
EDIT:
Made a pull request:
#56
After some searching, I found following JSON object about the game when going to my account:
{
"titleId": 1464615513,
"localizedGameName": "Crash Bandicoot™ 4: It’s About Time",
"gameAccountName": null,
"gameAccountUniqueId": {
"gameAccountId": 952609785,
"gameServiceRegionId": 2,
"programId": 1464615513
},
"gameAccountRegion": "EU",
"regionalGameFranchiseIconFilename": "crash-bandicoot-4.svg",
"gameAccountStatus": "Good",
"lastPlayedDateMillis": null,
"titleHasSubscriptions": false,
"titleHasGameTime": false,
"accountSubscriptionView": null,
"gameTimeView": null,
"displayOrder": 2000,
"customDownloadLink": null
}
Anyways, hope this helps :)
I have BattleNet since 4 or more years but doesnt track my game time, All other game integrations work perfectly but BTN doesnt track
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.