Giter VIP home page Giter VIP logo

webgamelauncher's Introduction

webGameLauncher

An early in progress open source implementation of a web based game launcher supporting galaxy's plugin api [src]. This project was created in order to learn how the API works to facilitate creating an integration test for plugin developers.

  • Currently only some of the api calls that galaxy makes to plugins are implemented (enough to startup the generic plugin and retrieve data from an already existing installation) and some incorrectly. See the issues tab for more details.
  • It includes some additional features for experimenting on community requested features such as controller support, implemented for firefox, and meta-data pulling from other sources, currently only IGDB.

Plugin support status

Plugin Status
Generic Starts
Amazon Requires login
Steam Does not login
UPlay Does not login
itch Does not login

Building the Launcher

The project can be build with maven mvn clean package . Update the global variables with your twitch application information, if you want igdb image enrichment.

Running the launcher

First start the launcher's main java function. java -jar target/webGameLauncher-0.0.1-SNAPSHOT-jar-with-dependencies.jar

While the launcher is running you can run, currently one, plugin manually and have that plugin provide data to the launcher.

You can start up the generic plugin with the following command. py -3.7-32 generic.py token 8488

Once it has loaded you can visit http://localhost:8080/games to see your library. You may need to refresh a few times until your library has completely loaded depending on the plugin.

user interface

webgamelauncher's People

Contributors

andrewdwhite avatar

Stargazers

 avatar  avatar

Watchers

 avatar

webgamelauncher's Issues

Implement next_step for web session

The steam plugin requires a login from the next_step RPC. Implement to support #9 .

{"jsonrpc": "2.0", "id": "4", "result": {"next_step": "web_session", "auth_params": {"window_title": "Login to Steam", "window_width": 500, "window_height": 460, "start_uri": "file:///C:/Users/andyn/AppData/Local/GOG.com/Galaxy/plugins/installed/steam_ca27391f-2675-49b1-92c0-896d43afa4f8/steam_network/custom_login/index.html?view=login", "end_uri_regex": ".login_finished."}}}

Implement autoloader for plugins

Implement a scanner of a directory that can automatically populate the found plugins, probably want to look at the manifest.json files, and load/register them up automatically. Will require #13 .

Parse features to accuratly limit the functions called for each plugin

Parse features to accurately limit the functions called for each plugin. The packet looks something like the following.

{"jsonrpc": "2.0", "id": "0", "result": {"platform_name": "amazon", "features": ["ShutdownPlatformClient", "ImportInstalledGames", "ImportOwnedGames", "UninstallGame", "LaunchGame", "ImportOSCompatibility", "LaunchPlatformClient"], "token": "token"}}

Parse notification os_compatibility_import_success

2022-09-19 22:26:28,645 - galaxy.api.jsonrpc - INFO - Sending data: {"jsonrpc": "2.0", "id": "7", "result": null}
2022-09-19 22:26:28,645 - galaxy.api.jsonrpc - INFO - Sending notification: method=os_compatibility_import_success, params={'game_id': '6119ce91-31d4-48dc-9084-e94c8d4c4c26', 'os_compatibility': <OSCompatibility.Windows: 1>}

Import play times

Implement the api call and implement the back end for the launcher to keep track of play times

Re-call some messages at a time in the later future

Some messages like checking the installed games needs to be recalled regularly to reproduce the functionality of galaxy. Implement functionality to do this. May need more research from #1 for knowing which ones are necessary.

Implement notifications from plugins

Some plugins require additional user intervention such as logging in. Add a notification feature to allow the user to know that this needs to be done for them. Supports #10 .

Implement enough of the calls to support the steam plugin

Started sever.
$ java -jar target/webGameLauncher-0.0.1-SNAPSHOT-jar-with-dependencies.jar &> ~/server_output.log

Started steam plugin client.
$ py -3.7-32 plugin.py token 8488

Noticed that the server does not have enough of the functions implemented for the steam client. Need the login features.

server_output.log

Implement start_os_compatibility_import

Implement start_os_compatibility_import

2022-09-19 22:26:28,643 - galaxy.api.jsonrpc - INFO - Handling request: id=7, method=start_os_compatibility_import, params={'game_ids': ['6119ce91-31d4-48dc-9084-e94c8d4c4c26', '66d610ba-d613-4607-8593-206a5fca2d61', '2ad346bf-d6b0-4f34-b462-7e1389727805', '2ebae692-5e13-4ee1-a4bd-1f901bac77c6', 'bf8a5cc7-9776-455c-b49a-d00756b14b28', '654f2d8c-54b9-4358-8a4b-05087d8e308b', 'b95426ba-9d31-46e2-9475-80061ba6d85f', '0fd0cced-4200-4d1c-9584-e43640f6560e', 'd4a9e1a3-a27a-4789-8c44-76781d993f70', '1375e4bd-eb0e-4baa-b44a-b76a1cbcbf95', 'b0601d8b-40fd-436c-b819-e182636a362d', '62a1f06b-e81e-4f53-9cb3-1daf83fb925b', '6dbb49c6-cd4d-416e-b7d0-cad3088d587d', '4be3538b-1215-4d27-ab8c-ec6548a14239', 'd1bce920-1ef8-4d24-aa39-081621e06256', 'b0ebeed0-6964-4096-b99b-9f726f794e89', '08d1b39d-3b89-4a09-ad71-50bd0891a79c', '35eaad3d-6719-4b47-8461-c971fda8f7da', 'd83a9797-bf00-45b3-adb1-daa9ffde990f', '5120c8aa-71ec-40de-b5d4-27c220d35f1f', '1dc3aebe-04aa-4b78-96d9-667ba0ca891f', 'ea502fa9-4b6e-4676-aaee-432e46807ec1', '4cd3fee5-38bf-46e4-a5d7-7dd377231b66', '8c105008-09cb-4049-a10f-f4a6c55aa4c7', 'e47db7ce-ed45-49f8-9309-6e4c189f9176', 'fca4cb06-9ea9-4dab-98fd-b2bdcd2c51c2', '62c80ac3-3aa5-42a8-8048-a29ff819b7a8', 'dd4bdb86-60c8-49a3-8d00-8fc4379a45f3', '2a6974ca-e747-46e9-ba20-512ffbf343d3', '15f94db5-ea1a-4fc3-844e-64d36a96ec59', 'dacf2798-a6a5-4915-a3e1-c6e69a389604', '52f0cdf8-8ef1-473b-8b6c-91eda0b51bbc', 'c0792a8b-36a5-4899-b2ed-ab94416480fd', '939eb130-c1f3-4736-a8c3-114d4540ea6b', '87c79d53-6693-4de1-8973-2122da60603e', 'd0e3cd62-8bd4-4881-a8d0-825a886f8634', 'cf483ab4-5aee-46a1-94fd-f1ad6028d51e', 'd0e01144-55d1-4d39-9c6d-99b851b3c660', '7fbca6ed-dd9d-424a-80b9-26179646ecf5', '7d855d2c-8232-4a39-a945-ed70baee648b', '4b011bc8-4e03-4473-b09f-62f655c2aae9', 'a1deb5e2-8d45-4836-a64a-672cd4ce5a81', '82d8ca92-26ed-4d0a-9ed8-b990c67727d6', '67b7a89f-69e8-4b4d-a0a6-80a5bb6f1f75', 'a9670805-c3fc-4c06-a949-afc0b410756c', '05996bea-0bdf-42a9-970b-02c76b663ca9', '30af9c0e-6dfa-457a-a8af-eab5f243ea80', 'dcece97c-dedf-4090-affd-58f3f0ae839a', 'e9144f0f-a84c-43fd-9280-02b572609706', '76cbab0f-c912-4696-9684-c659af0d85b9', 'd43e7ff9-3b1a-448d-8835-572fe729c157', 'e294d86f-ac1e-451e-b8f2-89123f63246d', 'ee7f090a-e9a2-4635-9636-4a9249b8771c', '69008e07-590b-4ea1-9aa4-f033ef8b9d2c', '97205382-970c-4ec1-b12b-97c762b25e81', 'aa4e1537-0a18-474d-a7f2-8fdf1ee11ce3', 'be3d0669-186a-4717-a1b3-83e1e1fcc329', 'a3cd8e5b-9896-41c7-9cb3-585e020f2303', 'eb22db60-97db-4239-b345-8e540517c454', '10b70606-32b8-462a-ac40-7c3453ee1dd0', '890bd3c5-208c-4a93-b51c-7fc916b5e10f', '5e53587b-3bad-456d-bd73-b7e8b2f62423', 'bd429793-b5a8-4060-bc7c-651aab22992f', 'ec85a9d6-9e83-40c6-9068-c02fdfaac4c2', '9a7bb426-e5d6-4990-bca9-154cdb5dbcd4', '1c8189ab-bcb9-4cc9-8667-057e371a89d1', 'c4d69bc3-f144-4ba1-a883-ea97a0eb058c', 'fa610758-0d0f-4af2-a17c-caf61177cfe7', '6350f1e0-29e9-4186-af20-d9c6d95e6032', 'ec16febb-a04e-44d0-8134-27c894f0f985', 'fbcc4aaa-a6f1-469c-b34e-dc65756f7141', 'cfe75f9c-4583-4efd-842a-a927958ae86e', '8f4bf0e4-4bda-42ca-851c-8523badc979c', 'cdbe10a3-63e6-4efa-837c-6238631cddd1', 'b4f60ea6-0fca-4f41-9ffa-e3b90b3a9ebc', '969ae4a5-eb89-4ae8-858a-182a0ff9194e', 'b5750a8c-652f-4a83-8bfc-82c5eb16fbf5', '5f35c569-55f6-4965-8230-a3775ff949a2', '75790de1-8b94-447d-8c1a-28393eb47215', '2ee6b231-e74f-4d55-b04b-3acc8816d6b7', 'ab770290-3067-45d0-9b10-5aa0d3475a68', '17717725-268b-468a-bfa4-674657464d3d', '864eddfc-f0ae-4aa2-a64a-9007bef4abb4', '99d6f109-8e0a-46ec-93bc-59fdeac739de', 'eeb2fd4c-e7aa-4e73-a1d4-071b90e1060d', 'b302b6a1-5b98-4146-a944-491982086556', 'b3c36d32-49d9-4038-b7f3-a1ae9aa79c66', '0b2fc570-5632-44c3-8d83-0901f144268b', 'd05de3bb-6234-423b-a96d-2cd48d78bd31', '6c7be799-12fb-4f2d-8f6b-844483e42af8', 'eedaf213-ce16-4343-8133-cea98fc9126d', 'c7827e1e-8182-4d9e-bfe1-c625e7b2603b', 'cd488e76-7247-4087-b418-06faaac5e958', '704bc6ca-518d-4284-8604-9bd8fa94599e', '09c9b422-1e05-4da7-8307-42dcb2a9877e', '756758e1-80ec-4564-a100-b9417d1aed0a', '9ebdf97d-7f3e-4235-9412-4ea3c8d133f5', '661f739f-90e4-49eb-a79d-8b50d8fef1e0', 'b6dae532-9785-4db3-9364-2da90271cbf8', '163db846-013b-41cd-bfae-c6033d67f2d9', '80be6c5e-7328-471c-924e-b4e9eb75d512', '0f7fa0ea-639f-4ffa-a79e-9551ab193203', '935097f4-3cea-4e41-b22e-b20edb41e0dd', '345b53a8-5464-427e-9e59-82280938934b', '02eb9df3-491c-4c96-b509-3dc837f3916d', 'f975231e-641b-496c-865c-ef14b31b507a', '9242e234-46a5-4b48-b67c-3795b4c30067', 'bb3a962e-180e-47c2-b2ea-9790fd7d521f', 'e3477a8d-b638-434b-b4d0-559d5610059d', 'ad9998ac-f86d-488e-8d63-727b2d781429', '53c1e73d-af16-48c6-bb3f-4db8cc3e8753', '7700e4ce-5d73-4962-bc3a-431e01a7e95c', 'c9650db1-2e89-40cf-a593-973cff69e367', '782d4c40-a964-436b-9d4c-a86d5f1b5787', 'a1597314-37f8-4ed9-a31c-767bdcf6436e', 'e717af74-a0df-4f4a-a415-887af44c3bb4', 'da7d2f0c-fd75-4b14-81dc-346d109220e7', 'ee62e5c5-bb8a-4e92-be8b-8ae9bb3ec0ee', '7d0c58f3-6fb1-471e-9d78-00d48f237410', '82aa61fa-70b0-4550-87be-6f35cdaea38e', '99b3c529-785f-4b7d-b448-1a25d4b3d21c', '8bf7e683-9157-46e4-9744-2a8729841a12', '1099aa20-6956-41ac-8a5a-e6624d2a05b1', '19ae680d-5c1e-42f6-a276-5a556b40e812', 'a947fa3c-3317-4a96-b06d-3f671d81c44d', '9f710b74-9960-4411-bdfc-3cd846ca812c', '01c9088e-3278-4634-89d6-2a5074b64296', '96427040-1a7d-4884-a0dd-ed08bdaae57e', '477ebfe3-f3a0-470b-9112-e8b9cfbf2510', 'e7c6de90-7b14-4bbf-b722-162f40d77acd', 'a3f5ee11-7f45-4cf2-9dd9-642fb2597124', '25071895-d6cb-49ce-98fe-4a2c3c92b9fc', '90dd5458-e86e-4324-b129-541d4649587b', '372f336e-2387-40db-8ff1-4d2fd218aeb6', 'be2368f5-06d1-4f64-b9f2-e2f896e14bf2', 'c9d1ea59-a0d8-4244-9289-69ab221e4db5', '16fad9ee-75fc-4342-9eb2-e6f526fdddc9', 'e10a6883-3afc-4e14-ba19-6fd0e208677e', '647f3b82-8e8f-426f-b23b-0dda8d68ebf4', '43b6b407-5aba-464d-8ab8-754204ed23a8', '70ec0894-2707-4822-8f6d-b133eff339dd', 'd1994ba2-45b0-476d-8c88-d655cef4e4f0', '1caba129-321f-4cd6-b69f-9947cc673d7f', '3ef92bf8-14d8-42db-bdf6-dd376eab0617', '70f425e7-77e2-4b8c-8d3d-2a25be540fcb', '09fbe8c7-5f5b-4c23-88b7-09aeb2936c7a', '7f279a69-296c-4ab4-b82f-e4c0129c1b70', '22c10eeb-6b68-4b49-a025-e36af43f0bbf', '8bfd8b43-faa3-49f7-aa87-42598dad2dda', '285ee9a5-0bc8-4a6f-8415-aed4cf830e76', '340e2d64-ef20-48dc-842d-f85ad1e06d2a', '2d05b80a-41fe-4da5-9e4d-db7ecfc7dae7', '81394511-4f48-4c64-9833-8e12ef1bb088', '64c8296f-cbea-416b-8947-a89e97a3e97a', '779b8b5e-dcb0-492c-9714-907867ee9c03', 'fc2c93ae-1d67-4c2e-b782-37d5f8ecd598', '551a2cd1-9688-41fa-9a07-6af2df90b6e5', 'ee44bb82-a70f-4f6d-a502-737f1bfef431', '4f603926-ada0-4d8a-9551-0f8185b78710', '8c5a6e9c-c20b-4942-9013-26b4926ce37a', '73df62c7-f228-4f42-9151-9ce56e13f4bb', '3d938a83-ec98-4cfb-a11f-a0fbfee934ef', 'cb1ee645-30be-4887-a612-a081687eec47', '45468b40-7274-424c-b4c4-6b8a08901272', '3a84959a-d38d-4b35-a986-34b7906cc9ca', 'c5ee3ad3-eb8f-481f-84f0-89ac59508064', '77616bb4-bb8e-4029-9ddf-b51a9e5b761d', 'f95b932a-e6e2-4c2e-a6dc-4d6d38d8f92e', 'd238089d-956a-456b-baba-bb68a94b32a3', '4827253e-c4ef-4859-ae88-0f4a4ca59e06', '1b494f5d-78b9-4c9e-a38a-e23c9a29649a', '88046aa6-0e4d-4f5f-b48c-37de955cc815', 'b9e2e744-da24-491c-bb81-5b77d7acde6f', 'da0081f9-946b-4541-bd45-3cfc4a47183e', '5b857b61-570b-4b08-b37b-7455610de1f7', '670651a7-1fb1-4e8f-ab17-caee6bd2f5a9', 'e74afea8-3411-4274-a6b5-d940c9515db0', 'fa070ce3-b0f8-40f5-aa53-aef28e822093', 'd06adfe4-1579-4285-b742-d94533f4f341', 'cdb1066a-11db-42db-a050-3358cd248ae7', '335c61ef-7760-4bf1-89c8-c5f7552d086f', '12b2a663-73da-46cd-938a-5e4fdcac7d38', 'e75792f0-a9ab-4b40-b1e7-7e10d30b5645', '6ea8a67f-b21c-425b-9d1b-ce207e30ae2f', '8f45e476-67d8-4743-9d3c-9004251d70ba', '27cdbe8e-58ff-4d0b-be92-a971d882643c', 'eb46c3ec-c6f2-4173-870d-3eeaaaf5ae9c', '5b20a285-a8ee-49bf-a186-2e64f2e379f3', '88612dcd-7348-4588-89eb-ef41d873de11', 'fe19ef5f-a1e0-4caf-96b4-590b2c022b15', 'a34bbe60-4072-4c4d-93a6-8f4c2023e453', '3209409f-f01c-42a4-8edc-c0aca27f1933', '9fa97b6c-03a4-48de-b05a-77bb123b7690', '63bd3150-1264-4225-8a47-4d3b3a57d7b7', 'ee543796-c5e8-43e7-9e49-9fb4cff615c7', 'd875e876-9389-483a-af28-c5c4062c583b', '7c594d67-625b-4673-a978-7b075306da9b', '7549f0fd-b9be-4ab3-a24c-6413e3e8ac8a', 'amzn1.adg.product.cc25ccb6-449e-4d2c-a435-af2a6e6297c4', 'amzn1.adg.product.ac751ce2-b672-4d69-879f-96c45f290369', 'amzn1.adg.product.93ff4a57-6134-407d-8b18-7c9152ac6de3', 'amzn1.adg.product.0d364464-032c-40c9-a6da-c633a53e3374', 'amzn1.adg.product.20b87aa4-24b1-444b-80d0-8a5cbc277c56', 'amzn1.adg.product.68d0df20-e8ff-495c-903b-ae4a897471e8', 'amzn1.adg.product.715c7943-57b4-4fa1-9315-ad9631321d98', 'amzn1.adg.product.2ff3bc13-075b-42a0-bd4b-5d434848fb30', 'amzn1.adg.product.1ca2ce77-12c9-418c-9171-fea597bdfe54', 'amzn1.adg.product.8fffd0cc-8e7f-4d88-8267-4ab6c49d4239', 'amzn1.adg.product.24a8c798-49fa-4cc0-9505-112d8be51faa', 'amzn1.adg.product.e75a0723-ff30-4fb7-bc0c-edc573d99cd1', 'amzn1.adg.product.23434d56-fe28-4ba1-ba71-e04c90abbb96', 'amzn1.adg.product.9309e573-f790-4f1a-a285-d821cb7cf583', 'amzn1.adg.product.1f9ca5dd-6835-40ee-8ab8-946ebd636caa', 'amzn1.adg.product.deb00d63-00c9-4d80-ae82-2675d328ff07', 'amzn1.adg.product.5dacffa6-c9ff-4c8e-abae-e51e1bbafc80', 'amzn1.adg.product.a0b96333-d610-40d7-9658-2e754c1615ec', 'amzn1.adg.product.13a55926-e6b6-497d-b3af-9d932744d408', 'amzn1.adg.product.5efc992e-6086-4367-b521-c77f877eb396', 'amzn1.adg.product.84602867-465b-4365-9ea9-c108c168b733', 'amzn1.adg.product.71a2ec7f-719c-4278-92ea-9b74a99be7a6', 'amzn1.adg.product.a939e821-78f1-48fb-8392-1e72473a58bc', 'amzn1.adg.product.6dbcae9a-112b-465e-8d56-de7353603436', 'amzn1.adg.product.9c1b385e-9a72-48bc-9700-c5d72b678972', 'amzn1.adg.product.d14f6257-7fa1-4887-a09a-666a6f051a6f', 'amzn1.adg.product.5a2dea57-7759-4312-8cd4-986ac1c46a45', 'amzn1.adg.product.fb6747d7-7f88-49d8-bad4-3fc662531048', 'amzn1.adg.product.6f7b2156-b0d8-460a-b25e-617077be4961', 'amzn1.adg.product.d81c669c-346c-4490-8abf-d1cffa7bc876', 'amzn1.adg.product.6ed13be7-1d52-42b0-af03-9f487492ae93', 'amzn1.adg.product.9e5ecae6-9b15-4d6c-b28c-afedc5fd081a', 'amzn1.adg.product.23dae898-e846-4aad-befb-b3247b81ae4e', 'amzn1.adg.product.68184ab0-16ae-474e-8b3b-02daf82fc6d4', 'amzn1.adg.product.e8e78531-da5e-4651-a75e-357717f42152', 'amzn1.adg.product.f2ba7372-4612-4b8c-ba91-c3d5c833d211', 'amzn1.adg.product.d5f8ee2a-ecae-46dc-b620-52e54778c46f', 'amzn1.adg.product.a10b8ae4-785f-4aa9-bf60-844d9d0b5a25', 'amzn1.adg.product.33c7e483-297f-48ef-95ba-411ff59ca701', 'amzn1.adg.product.86459162-b782-45ad-9900-8073256a94b0', 'amzn1.adg.product.43251731-1ef4-4c83-8318-c16f7cf5fe8e', 'amzn1.adg.product.80e086de-237d-41ca-a02b-da2544049908', 'amzn1.adg.product.726951bc-4400-41bb-9dc3-0f51c1fa8250', 'amzn1.adg.product.d0163c0c-c2a9-4139-b83b-bfe975bfabc4', 'amzn1.adg.product.b5014332-35f9-4da7-a2f3-d12789a67585', 'amzn1.adg.product.a0be5d19-cccb-4afa-a79f-1ac6f1e41444', 'amzn1.adg.product.9a11bfd3-0659-4109-9f8b-2c4e011455ed', 'amzn1.adg.product.df1b00ec-d2df-4fff-937a-8feb4e0c8724', 'amzn1.adg.product.c649ad6b-f119-4b58-9455-e021e306f8e4', 'amzn1.adg.product.fe83dbda-6966-4ba6-b252-33faa24034e4', 'amzn1.adg.product.27f032e9-7a2c-4c0c-a30b-5a5d4b736701', 'amzn1.adg.product.bd27e9f5-7d23-4b4c-ab7c-f3103d1c1b5f', 'amzn1.adg.product.2e2c1fd6-26b3-43ae-a327-868104772841', 'amzn1.adg.product.0dfe3eaa-1825-4500-9b1e-92536545fd51', 'amzn1.adg.product.5fe86d64-2c5a-4ddf-a574-6e32ca7a0031', 'amzn1.adg.product.2cbd524e-6778-4f53-b367-b3255aca792c', 'amzn1.adg.product.8d752461-4a70-4f1c-9bd5-d320afa9c9f1', 'amzn1.adg.product.8292d474-6625-4bcd-89c0-f7bf1763a69e', 'amzn1.adg.product.c82d2124-433c-4d90-beba-e1ea3f57ffd9', 'e778b2fe-5847-41ce-947e-c1539e1f81d3', '6e99c309-1eae-42c5-834a-eceb0b1b5166', 'amzn1.adg.product.16da152f-0092-4b62-8cfe-374b7b8787b3', 'dceac06b-afa9-441c-bcd1-35783bcf87e8', 'amzn1.adg.product.7a7cba4b-e22f-4b25-a3b2-70d513306430', 'amzn1.adg.product.0a76e83e-1ecc-43eb-84bd-93e6675ec697', '13a0d6e1-fce9-4b6c-9f3a-582a0f04b6b7', '694ee5bf-cecc-4a3d-b8fa-298066daaa45', 'amzn1.adg.product.90683494-2e3f-45c8-91cb-c35d659fad55', 'amzn1.adg.product.e13c50c9-d548-4e6f-a85a-7f70308279e8', 'amzn1.adg.product.2d4ef15f-791f-444d-a655-6dd3529fca6e', 'amzn1.adg.product.8d72f45d-9b58-49df-9653-cfab9657b452', 'amzn1.adg.product.778e283c-b65f-4f04-8184-c992bf2dfd95', 'amzn1.adg.product.3daaf7de-e673-483a-86e8-af3942baaf19', 'amzn1.adg.product.334f1d96-0646-4e9b-9613-8747be0c7505', 'amzn1.adg.product.0127edd7-4a35-4991-ab79-ff7601a699da', 'amzn1.adg.product.8320bb7e-a254-4a71-82e2-d5c29cd6a687', 'amzn1.adg.product.79ec5ff2-4f01-4e47-ab46-3d7909ed5572', 'amzn1.adg.product.dc0a809d-b50b-4a55-95ca-9ea42579cd69', 'amzn1.adg.product.8f37f256-d32e-4cc4-abe5-e00eb25cef2e', 'amzn1.adg.product.e3b3a12f-d30d-44eb-8b43-548081dc69fb', 'amzn1.adg.product.2567ea69-d0ac-41d5-bc5f-6cafb38caecf', 'amzn1.adg.product.50ea4b5b-4623-42c5-b052-c26da6006cba', 'amzn1.adg.product.74474738-b55e-45ee-8106-7c3342bfff89', 'amzn1.adg.product.a8a58d6f-77a8-4cfc-971a-4f4be7cf34b8']}

Fix gog database link

The link to the gog database is broken since it was copied from the generic plugin as is. Fix it to link correctly.

Determine Galaxy Side Commands to support galaxy plugins for data sources

Determine all of the Galaxy Side commands to support galaxy plugins as a source of game data.

Sample when there is no client response back:
{"id":"0","jsonrpc":"2.0","method":"get_capabilities","params":{}} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"}
From a fresh reboot (already imported data) from the generic plugin.
plugin-test-97543122-7785-4444-2254-711233556699.log

Check if the unknown notifications should be implemented

When running test using steam plugin noticed that some notifications implemented in this are not what should be sent. Determine if they should be send by the launcher at all.

$ py -3.7-32 plugin.py token 8488
ERROR:galaxy.api.jsonrpc:Received unknown notification: game_time_import_success
ERROR:galaxy.api.jsonrpc:Received unknown notification: game_times_import_finished
ERROR:galaxy.api.jsonrpc:Received unknown notification: local_game_status_changed

WARNING:steam_network.protocol.protobuf_client:Packet for 751 -> EMsg.ClientLogOnResponse with extended header - ignoring
WARNING:steam_network.protocol.protobuf_client:Packet for 751 -> EMsg.ClientLogOnResponse with extended header - ignoring

Process Installed data

Process the data provided as installed:

{"game_id": "6119ce91-31d4-48dc-9084-e94c8d4c4c26", "local_game_state": 1}, {"game_id": "66d610ba-d613-4607-8593-206a5fca2d61", "local_game_state": 1}, {"game_id": "2ad346bf-d6b0-4f34-b462-7e1389727805", "local_game_state": 1}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.