It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
Magnitus: Version 0.9.0 is out.
Goodo.

Haven't looked at that yet, but just did a quick search of the help, and cannot see an option to get changelog data.

Are you looking at adding something for that, title or ID based, or know of an easy way to download it?

I think I saw something posted about that in the gogrepo thread, way back.
avatar
Timboli: Haven't looked at that yet, but just did a quick search of the help, and cannot see an option to get changelog data.

Are you looking at adding something for that, title or ID based, or know of an easy way to download it?

I think I saw something posted about that in the gogrepo thread, way back.
If you mean changelog from GOG.com, sure I can add something if they support it in the api, though I'll be frank, it won't be high on my list of priorities. Probably won't get done right away.

At this point, my 3 tops priority will be:
- Add a repair command to be able to restore the backup with as few downloads as possible in case something gets messed up (corruption, accidental manual deletion, etc)
- Add games metadata (pictures, description if possible, video link, etc) and a web dashboard to view them
- See if I can do something about the login

Edit: Actually, I'm looking at the endpoints as part of my metadata strategy right now and I don't think getting the changelogs will be difficult at all.
Post edited March 15, 2021 by Magnitus
avatar
Timboli: Haven't looked at that yet, but just did a quick search of the help, and cannot see an option to get changelog data.

Are you looking at adding something for that, title or ID based, or know of an easy way to download it?

I think I saw something posted about that in the gogrepo thread, way back.
btw, I think I misinterpreted your need here (I was looking at your changelog inquiry, but not the context in which you were making it).

If you want to get just the ids of new games and games that GOG reports as updated, you can run: "gogcli update generate"

That will generate an updates.json file (default destination if you don't specify something else in the arguments) with just the ids of new and updated games (separates in one entry for new games and one entry for updated games).

From there, you can update your manifest with it using the "gogcli manifest update" command ("gogcli manifest update --help" for arguments details)
Post edited March 15, 2021 by Magnitus
avatar
Magnitus: btw, I think I misinterpreted your need here (I was looking at your changelog inquiry, but not the context in which you were making it).
No, you got it right the first time, and what you said in that regard sounds promising.

I probably shouldn't have mentioned ID and Title, as that may have ended up confusing the issue ... my apology.

Changelog information about changes (bugfixes, improvements, new features, bonuses, etc) to the game, for each installer (and new updates) or patch would be great, along with a description of the game itself would also be grand.

----------------------------------------

I've also done an update for GOGcli GUI, but not a Release. See the following for detail and download link.

https://www.gog.com/forum/general/gogcli_gui_frontend_downloader_and_validator/post5
Post edited March 15, 2021 by Timboli
Ok, slight snag. About 700+ games into my backup, I hit this error:

addFileAction(gameId=1207666703, fileInfo={Kind=installer, Name=setup_devils_dare_1.0_(21250).exe, ...}, ...) -> Download file size of 176438984 does not match expected file size of 176840944

Intuitively, I thought maybe gog had violated the cardinal assumption I was making that file names would be unique for a given category (installer or extra) of a given game and sure enough, examination of my manifest confirmed it:

{
"Language": "english",
"Os": "windows",
"Url": "/downloads/devils_dare/en1installer0",
"Title": "Devil's Dare 悪魔の挑戦 (Part 1 of 2)",
"Name": "setup_devils_dare_1.0_(21250).exe",
"Version": "1.0",
"Date": "",
"EstimatedSize": "168 MB",
"VerifiedSize": 176840944,
"Checksum": "8a47f42c56af459c7ae38cfecee11935"
},
{
"Language": "english",
"Os": "windows",
"Url": "/downloads/devils_dare/en1installer1",
"Title": "Devil's Dare 悪魔の挑戦 (Part 2 of 2)",
"Name": "setup_devils_dare_1.0_(21250).exe",
"Version": "1.0",
"Date": "",
"EstimatedSize": "168 MB",
"VerifiedSize": 176438984,
"Checksum": "c5003a315c935c374c21719e3225ee9e"
},

Part 1 and 2 of the Windows' installer have the exact same filename.

I'll have to adjust manifest generation to deterministically add a suffix to file names that are the same to differentiate them.

Will be included in the next release.
avatar
Magnitus: Ok, slight snag. About 700+ games into my backup, I hit this error:

addFileAction(gameId=1207666703, fileInfo={Kind=installer, Name=setup_devils_dare_1.0_(21250).exe, ...}, ...) -> Download file size of 176438984 does not match expected file size of 176840944

Intuitively, I thought maybe gog had violated the cardinal assumption I was making that file names would be unique for a given category (installer or extra) of a given game and sure enough, examination of my manifest confirmed it:
This is a known issue and an error on GOG's side.

I and others have had it happen a few times ... two that I can specifically recall.

In both cases, GOG were listing the one set of files twice, with the same filename, but with different checksums.

We reported it and GOG removed the double up.

I don't recall specifically, but in one instance there was only one file, so unlike they listed, no Part 1 of 2 and Part 2 of 2 in reality.

There are some threads at the forum discussing this occasional error. And in both instances I saw, it happened late on a Friday, so probably rushed by GOG before the weekend, and not fixed until Monday.
Post edited March 17, 2021 by Timboli
avatar
Timboli: This is a known issue and an error on GOG's side.

I and others have had it happen a few times ... two that I can specifically recall.

In both cases, GOG were listing the one set of files twice, with the same filename, but with different checksums.

We reported it and GOG removed the double up.

I don't recall specifically, but in one instance there was only one file, so no Part 1 of 2 and Part 2 of 2.

There are some threads at the forum discussing this occasional error. And in both instances I saw, it happened late on a Friday, so probably rushed by GOG before the weekend, and not fixed until Monday.
I think it might have been a while since that game got updated so I'm not sure when they'll act on it (there are also 4 dangling files on other games observable from the game shelf which I suspect have been there for a while).

In this case, my work around (which I'm testing right now) is to just increment with a [...].

So in the above case, it will be:
setup_devils_dare_1.0_(21250).exe
setup_devils_dare_1.0_(21250)[1].exe

I've added sorting to the listed files by filename, then title and finally by url so which file will get which number when there are duplicates will be deterministic across manifest generations.

I'm also listing duplicates in a separate file so the user can look at it and perform further manual adjustments on the manifest based on it if he/she so wishes before applying/updating to the storage.

I think its a reasonable way of handling something that leaves a lot to the interpretation.
Post edited March 17, 2021 by Magnitus
avatar
Magnitus: I think it might have been a while since that game got updated so I'm not sure when they'll act on it (there are also 4 dangling files on other games observable from the game shelf which I suspect have been there for a while).
It may never have been reported or they forgot to act on it ... neither would surprise me.

avatar
Magnitus: In this case, my work around (which I'm testing right now) is to just increment with a [...].

So in the above case, it will be:
setup_devils_dare_1.0_(21250).exe
setup_devils_dare_1.0_(21250)[1].exe
Sounds good, as it sure beats the second download overwriting the first and then getting a checksum error after. I have an option in my GUI now to prevent that happening, but that means you miss out on the second copy, which might be a better one. Actually, I don't recall whether my Listview settings would allow a second same named file anyway ... need to check that.

avatar
Magnitus: I've added sorting to the listed files by filename, then title and finally by url so which file will get which number will be deterministic across manifest generations.

I'm also listing duplicates in a separate file so the user can look at it and perform further manual adjustments on the manifest based on it if he/she so wishes before applying/updating to the storage.

I think its a reasonable way of handling something that leaves a lot to the interpretation.
Sounds reasonable to me.
Holy molly, they have a lot of duplicates. My json file of duplicates is 851 lines long (only for linux, windows, english, french, spanish, japanese... would probably be longer otherwise).

Something I'm noticing looking at it casually are clashing installer names across languages (ex: For moto racer, the english and spanish installer have the exact same file name).

They should really have some automated way of naming their files (across oses, languages, etc) as in, they just submit the file with the right os/language/etc parameters and the automaton figures out the name. They seem to be doing a lot of mistakes.

Edit: I think I'll have to manually review each entry in that list against my backup so far just to be on the safe side ><

Edit 2: Ok, I counted and its 198 instances of duplicate file names in my manifest.
Post edited March 17, 2021 by Magnitus
avatar
Magnitus: So in the above case, it will be:
setup_devils_dare_1.0_(21250).exe
setup_devils_dare_1.0_(21250)[1].exe
May I suggest you do "setup_devils_dare_1.0_(21250)(1).exe" instead, so as to be compatible with gogrepoc. This way, if someone were to use your application with a library already downloaded with gogrepoc, there would be no conflict.
avatar
Magnitus: Edit 2: Ok, I counted and its 198 instances of duplicate file names in my manifest.
Is it really an issue, if there is a language specified for that entry in the manifest?

------------------------------------------------------------

For your interest, I did manage to track down the first of those games with duplicate listings. Can't recall the name of the other one, but both happened last year.

Extracted from a post in my GOGPlus Download Checker thread.

I got three Verify errors, due to same game files missing. This was due to some mistake by GOG for the latest release ARMA games, which you can read about here.
Here's another from last year - https://www.gog.com/forum/general/the_riftbreaker_prologue_duplicate_downloads
Post edited March 17, 2021 by Timboli
avatar
mrkgnao: May I suggest you do "setup_devils_dare_1.0_(21250)(1).exe" instead, so as to be compatible with gogrepoc. This way, if someone were to use your application with a library already downloaded with gogrepoc, there would be no conflict.
Sure, I can do that. I was a bit paranoid about further name clashes given that gog seems to enjoy using parentheses in file names (but square brackets, not so much), but I can make it a configurable parameter.

avatar
Timboli: Is it really an issue, if there is a language specified for that entry in the manifest?
Sure, however, the storage currently use the game id/installers|extras/filename as the path (both for the file system and s3).

Even if I included the language as a path parameter, it would not make every file name clash incidence go away.

Anyways, I'll sleep on it.
Post edited March 17, 2021 by Magnitus
avatar
Magnitus: Even if I included the language as a path parameter, it would not make every file name clash incidence go away.

Anyways, I'll sleep on it.
No worries, you are the expert. BOL :)
Post edited March 19, 2021 by Timboli
avatar
Magnitus: ex: For moto racer, the english and spanish installer have the exact same file name).
as far as I remember these are actually the same installer(same hash), unlike the example above.
ie. the installer is multi-language, and the api gives you entries for each language that all point to the same installer.
avatar
Magnitus: ex: For moto racer, the english and spanish installer have the exact same file name).
avatar
immi101: as far as I remember these are actually the same installer(same hash), unlike the example above.
ie. the installer is multi-language, and the api gives you entries for each language that all point to the same installer.
Omg, you're right:

{
"Language": "english",
"Os": "windows",
"Url": "/downloads/moto_racer/en1installer0",
"Title": "Moto Racer",
"Name": "setup_moto_racer_2.1.0.11.exe",
"Version": "",
"Date": "",
"EstimatedSize": "328 MB",
"VerifiedSize": 344579880,
"Checksum": "569adc66f21a050388633d813a96544c"
},
{
"Language": "spanish",
"Os": "windows",
"Url": "/downloads/moto_racer/es1installer0",
"Title": "Moto Racer",
"Name": "setup_moto_racer_2.1.0.11[1].exe",
"Version": "",
"Date": "",
"EstimatedSize": "328 MB",
"VerifiedSize": 344579880,
"Checksum": "569adc66f21a050388633d813a96544c"
},
{
"Language": "french",
"Os": "windows",
"Url": "/downloads/moto_racer/fr1installer0",
"Title": "Moto Racer",
"Name": "setup_moto_racer_2.1.0.11[2].exe",
"Version": "",
"Date": "",
"EstimatedSize": "328 MB",
"VerifiedSize": 344579880,
"Checksum": "569adc66f21a050388633d813a96544c"
}

This is an optimisation I can't ignore. It will save a lot of room. However, it probably means I need to rethink the language format in the manifest to make it an array.

Arggh, GOG! ><...
Post edited March 17, 2021 by Magnitus