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
ILjaID: Hi, sorry for the late reply, only now got my hands on it. When running download after calling update once I'm getting next exception:

Traceback (most recent call last):
File "gogrepoc.py", line 2779, in <module>
main(process_argv(sys.argv))
File "gogrepoc.py", line 2541, in main
cmd_download(args.savedir, args.skipextras, args.skipids, args.dryrun, args.ids,args.os,args.lang,args.skipgalaxy,args.skipstandalone,args.skipshared, args.skipfiles,args.downloadlimit)
File "gogrepoc.py", line 1529, in cmd_download
handle_game_renames(savedir,items,dryrun)
File "gogrepoc.py", line 512, in handle_game_renames
_ = game.galaxyDownloads
File "gogrepoc.py", line 257, in __getattr__
raise AttributeError(key)
AttributeError: galaxyDownloads

I have Python 3.8 installed from MS store.

It's not a huge deal though, I was planning full manifest update anyway, so I've just backed up the old one (in case you want it for debug or whatever) and rerun update in new folder, the manifest generated by clean run works as expected and is compatible with already downloaded installers and folder structure.
avatar
Kalanyr: Hmmm. I know what's caused that error, so it's all good. Thank you for the report.
No problem, thanks again for the great work!
Is there a way to get it to pick up hidden games instead of skipping them? Without having to hack the script.

I've got hundreds of them and don't fancy having to unhide them all to get a proper grab.
avatar
neorapsta: Is there a way to get it to pick up hidden games instead of skipping them? Without having to hack the script.

I've got hundreds of them and don't fancy having to unhide them all to get a proper grab.
I don't think it should skip hidden games by default, you should have to add the flag -skiphidden for it to do that.
GOG seems to have resumed marking games as updated on the website, it doesn't seem retrospective, so you'll have to do a full update to catch stuff updated in the period where they weren't marking things (please don't all do it now and leave it to whenever you'd normally do your monthly/however long full update instead and/or use -ids to check a specific game before you install it)
Seems like they are trying to make it retrospective, at least, 66 gamess marked as updated over the last 2 days, the vast majority of which didn't actually have changed files relevant to my full update 3 days ago.
avatar
Kalanyr: Seems like they are trying to make it retrospective, at least, 66 gamess marked as updated over the last 2 days, the vast majority of which didn't actually have changed files relevant to my full update 3 days ago.
Problem is however, and is the same with doing a full scan, how do you know you want the latest version. In a lot of cases the change log has nothing added, or does not actually say what the changes are. Wizardry 8 is one example where, for a lot of people the latest version does not work, but the previous one does (and has more content). It’s all a bit of a mess and means manually going through everything, or in my case just don’t bother downloading the latest version unless you know it adds something, there was sometime back a push to get all offline installers to have the galaxy features added, which was never mentioned in the logs.
avatar
Kalanyr: Seems like they are trying to make it retrospective, at least, 66 gamess marked as updated over the last 2 days, the vast majority of which didn't actually have changed files relevant to my full update 3 days ago.
avatar
nightcraw1er.488: Problem is however, and is the same with doing a full scan, how do you know you want the latest version. In a lot of cases the change log has nothing added, or does not actually say what the changes are. Wizardry 8 is one example where, for a lot of people the latest version does not work, but the previous one does (and has more content). It’s all a bit of a mess and means manually going through everything, or in my case just don’t bother downloading the latest version unless you know it adds something, there was sometime back a push to get all offline installers to have the galaxy features added, which was never mentioned in the logs.
This is one of my great frustrations. Every time I do a full update, I go through and examine the changelogs associated with the games in my orphaned directory one by one. If the changelog contains no new information then I search around GOG discussions, Steam and others as necessary to try and find out what the changes are and if people are having issues with the new version. If the changes don't appear to have broken anything and have actually improved the game then I delete the orphaned files. However, if there are issues with the update, e.g. it breaks something, or is an update that is in fact a retrograde step, then I keep a backup of the orphaned files. Pain in the proverbial to do but I don't see a way to avoid having to do this. Based on past experience, I certainly don't see GOG ensuring that updated changelogs are provided with each new update.
I know few, if any, are interested in or even using my Windows Powershell script (frontend) for gogrepo.py but I've fixed a bug that was preventing downloaded files from being verified when doing an incremental library update. The new version can be downloaded from here:

https://1drv.ms/u/s!AkusSFHlKO4LnlFm4PUvlbh879wA?e=cefUKO
I just bought a soundtrack for a game - it shows in the Extras section of the download page, but updating the manifest doesn't detect it, nor does running download, well, download it.

My commands to do both are:
For manifest:
gogrepoc.py update -os windows linux -lang en pl -skiphidden -nolog

For download:
gogrepoc.py download -nolog

Help?

Edit: Deleting the manifest file and recreating it worked.
Post edited May 28, 2020 by piranha1
avatar
piranha1: I just bought a soundtrack for a game - it shows in the Extras section of the download page, but updating the manifest doesn't detect it, nor does running download, well, download it.

My commands to do both are:
For manifest:
gogrepoc.py update -os windows linux -lang en pl -skiphidden -nolog

For download:
gogrepoc.py download -nolog

Help?

Edit: Deleting the manifest file and recreating it worked.
The default behavior is to download thing marked as new (games you've bought since the last update) and updated (things marked as updated by GOG) unfortunately buying DLC for a game doesn't set either of those flags. You can use the -ids parameter on an update to specify updating a particular (set of) game(s) by either their short title (which is used to name the folder) or their numeric ID (which you can find in !info.txt).

Also as a generally request (not directed at you specifically) please stop deleting manifests as a first attempt to fix things, all it does is force a full update, which you can do using the -full parameter. And try to limit those as much as is practically possible (I'd recommend no more than 1 / month) , as they will make 1-2 orders of magnitude more requests to GOG if you have a large collection than the default update behavior will.

It only makes sense to delete your manifest if it can't be read/processed for some reason. And please let me know if that happens so I can fix whatever's causing it.
Post edited May 29, 2020 by Kalanyr
avatar
piranha1: gogrepoc.py update -os windows linux -lang en pl -skiphidden -nolog [..]
gogrepoc.py download -nolog [..]
avatar
Kalanyr: The default behavior is to download thing marked as new (games you've bought since the last update) and updated (things marked as updated by GOG) unfortunately buying DLC for a game doesn't set either of those flags.
[..] force a full update, which you can do using the -full parameter. [..]
Wait, I thought those parameters considered all differences between your files and Gog's ones.
They don't detect new DLCs instead? O_o
I have never deleted the manifest so far..

Does the -full parameter exist in the stable version by the way?
Post edited May 29, 2020 by phaolo
avatar
Kalanyr: The default behavior is to download thing marked as new (games you've bought since the last update) and updated (things marked as updated by GOG) unfortunately buying DLC for a game doesn't set either of those flags.
[..] force a full update, which you can do using the -full parameter. [..]
avatar
phaolo: Wait, I thought those parameters considered all differences between your files and Gog's ones.
They don't detect new DLCs instead? O_o
I have never deleted the manifest so far..

Does the -full parameter exist in the stable version by the way?
No, that would basically take as long as a full update because the filename is available only at the last call, it's why it takes so long to update games with lots of files because it has to make an additional call for every file to get the name. I wish GOG marked games as updated when you bought DLC, they certainly could.

It should be on stable that's one of the earliest changes I made
Post edited May 29, 2020 by Kalanyr
avatar
Kalanyr: Also as a generally request (not directed at you specifically) please stop deleting manifests as a first attempt to fix things, all it does is force a full update, which you can do using the -full parameter. And try to limit those as much as is practically possible (I'd recommend no more than 1 / month) , as they will make 1-2 orders of magnitude more requests to GOG if you have a large collection than the default update behavior will.

It only makes sense to delete your manifest if it can't be read/processed for some reason. And please let me know if that happens so I can fix whatever's causing it.
Sure, that makes sense.

While at it, is there a command to remove a game from the manifest file when updating?

As in, I had two versions of a game (original and Director's Cut), and after what people on its subforum told me about the differences between the two (I didn't get around to playing that one yet), I decided I only care about the DC version, and set the other as hidden - but the script doesn't remove it from Manifest then. I once tried editing it manually in a similiar situation, but ended up breaking it and having to recreate it from scratch (yeah, should have made a backup first), so while I could probably figure it out (step one: use Notepad++ intead of a Windows' one) I'd rather use the script for that, if it's possible?
Post edited May 30, 2020 by piranha1
avatar
Kalanyr: Also as a generally request (not directed at you specifically) please stop deleting manifests as a first attempt to fix things, all it does is force a full update, which you can do using the -full parameter. And try to limit those as much as is practically possible (I'd recommend no more than 1 / month) , as they will make 1-2 orders of magnitude more requests to GOG if you have a large collection than the default update behavior will.

It only makes sense to delete your manifest if it can't be read/processed for some reason. And please let me know if that happens so I can fix whatever's causing it.
avatar
piranha1: Sure, that makes sense.

While at it, is there a command to remove a game from the manifest file when updating?

As in, I had two versions of a game (original and Director's Cut), and after what people on its subforum told me about the differences between the two (I didn't get around to playing that one yet), I decided I only care about the DC version, and set the other as hidden - but the script doesn't remove it from Manifest then. I once tried editing it manually in a similiar situation, but ended up breaking it and having to recreate it from scratch (yeah, should have made a backup first), so while I could probably figure it out (step one: use Notepad++ intead of a Windows' one) I'd rather use the script for that, if it's possible?
If you want to not have hidden games included you should add -skiphidden to all future update commands. It should then remove those the next time a -skiphidden update interacts with them via any of
. A -full update
. Being specified in the -ids command
. Being marked as updated in a standard update (maybe, it's possible this one isn't implemented due to some potential issues I think I solved but maybe didn't)
I already have -skiphidden added permanently (using a .bat file to update my manifest), didn't think of the -ids though, thanks. :)