itchio / itch

🎮 The best way to play your itch.io games
https://itch.io/app
MIT License
2.31k stars 198 forks source link

3rd party install or receipt.json.gz generation? #2963

Open luchillo17 opened 8 months ago

luchillo17 commented 8 months ago

3rd party install or receipt.json.gz generation?

Issue

Lately, there are a lot of games hosted on third-party sites like Mega, some devs say it's because Itch.io imposes limits on game size, regardless of the reason I wanted to install the game in the Itch app installation folder.

Expected solutions

S-p-Ace commented 4 months ago

itch devs sadly (but understandably) don't want to be responsible for third party hosted files -> #2757 (not sure what 'reliability issues' they meant)

This is guaranteed unintended behavior but if you already have an earlier version of the game, you can modify the receipt in order to trick the app to use the new files you have extracted into the game folder. 'Just' update the info for upload and paths for 'files` to match the new version. So in theory an 'import' already works by creating the receipt yourself ... if you know the correct values and know yourself around a shell to compile the file paths)

My Suggestion: provide the devs with a tool/script to generate the info needed for the receipt and let the user provide the path to the downloaded file (zip) of the game. For the import you can then verify the file against the provided info from the dev (file size/checksum, internal file structure...) Maybe show a warning that you don't have control over the contents of third-party hosted game packages and the user should only install them if they trust the author. Then everybody can be happy playing cool games and keeping track of installations and updates.

The import would be started from the game homepage as alternative to 'download'

luchillo17 commented 4 months ago

I guess it's no surprise why Steam is miles ahead...

No, I don't have a previous version, most of these games that have to store their content on third-party sites are too big from the start, some may have demos though, food for thought.

Are you saying I should create the tool? or ask the devs for it? I honestly don't want to deal with it, but on the other hand, I could create a tool, somehow use the API integrations in there, put it in the tools store so it's easy to install, then, let people pay 0 or more.

Honestly, though it should be a base tool of the launcher...