Timboli: I really like using
gogcli.exe with my GUI, and have done for many months now.
But .....
I've had to tolerate slow download speeds, and it appears to be deliberate on GOG's part, if maybe only because they don't have enough servers in my region.
I'm not entirely sure about the server issue though, as I often get good speeds for game extras.
I should be able to get around 5 MB/s and I do if I use a program like
Free Download Manager 5, or as I said, if a game extra ... in many cases.
As soon as I download an EXE or BIN file, I am only getting around 2 MB/s, using gogcli.exe ... often less. On a good day I might get up to 3.1 MB/s. A few months ago I used to always get around 5 MB/s, except in the middle of a big sale.
I cannot really blame
gogcli.exe though, as I get the same slow speed using a browser link and browser downloader.
I'm away from home (and thus my home storage server) and will be for the next ~3 weeks, but I'll do some benchmarks when I get back and compare this to my home internet speed.
Timboli: Currently I am thinking GOG are limiting the speed of a single download thread, because with
FDM 5, which is multi-thread, I can get the 5 MB/s that my connection supports.
It would sure be nice, if gogcli.exe supported at least one more downloading thread. Resume would be nice too, but not as important as I have a pretty stable web connection.
The only other way to deal with this, would be to pass the file download links to
FDM 5 via the command-line, but alas it only has very basic CLI support, and it doesn't deal with the format the links are in, except when you pass them via the browser. So a way to reveal the true links would be nice, though we may run afoul of the cookie requirement verification, with FDM 5 acting independently from the browser.
So right now, with any largish game download, I am back to clicking on each file download link and using
FDM 5, to get a decent download speed. Clicking with ALT key held down in every case.
And then of course, I need to independently verify (validate) each downloaded file or group of files, rather than have it all done for me automatically with the one DOWNLOAD button click.
gogcli is technically concurrent when you download several files (the client accepts an argument dictating the max concurrency that you want), but for a single file, you are correct in your claim that it has a concurrency of 1.
The http protocol does allow you to specify ranges which would could theoretically allow higher concurrency per download, but its a fair amount of overhead (especially when you consider that I support 2 storage solutions: local disk and s3) and I'd want make sure the overhead is warranted first.