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
Sude: edit: committed
3834c1e Add option to skip fast platform detection
Thanks again Sude, download is working now.

$ lgogdownloader --directory ~/Games/ --platform 4 --no-deb --no-language-packs --download --game pillars_of_eternity --no-platform-detection
Getting game info 1 / 1
Downloading: Tarball archive
/home/didier/Games/pillars_of_eternity/gog_pillars_of_eternity_1.0.0.1.tar.gz
2% ▕▌ ▏ 136.72/6729.66MB @ 749.24kB/s ETA: 2h 30m 10s
avatar
Sude: I noticed this also. It is caused by the platform detection code that I use.
https://github.com/Sude-/lgogdownloader/blob/master/src/downloader.cpp#L2053-L2064
It tries to speed up the detection of supported platforms for games by looking for platform identifier in the game shelf HTML. This fails because for some reason the 'data-title' attribute for Pillars of Eternity doesn't have Linux in it (and it is also missing Mac).

I have written a patch that allows skipping the fast platform detection. I'll commit it as soon as I've cleaned it up.

edit: committed
3834c1e Add option to skip fast platform detection
Your responsiveness is amazing. :)

I installed from source originally using the Makefile in lgogdownloader-2.20.tar.gz source archive. I noticed it putting things like the manual around the system when I installed it, and I don't want any conflicts.

Do I need to remove the old installation before installing the new one? How?

Edit: I should have read the Makefile before posting.
Still not sure whether removing it was necessary, but I did the following:
sudo make uninstall
make clean_release
cd ..
git clone https://github.com/Sude-/lgogdownloader.git
cd lgogdownloader
make release
sudo make install

and yes, it is now working with the --no-platform-detection flag.

Thanks for sharing your good work Sude.
Post edited March 29, 2015 by dukereg
Hi,

Many thanks for the utility, but I believe I've found a bug.

It spits a 404 error when checking the status of Baldurs Gate II, Enhanced Edition, Linux.

ex:

+ ./lgogdownloader --status --platform 4 --game baldurs_gate_2_enhanced_edition
Getting game info 1 / 1
HTTP ERROR: 404
ND baldurs_gate_2_enhanced_edition gog_baldurs_gate_2_enhanced_edition_1.0.0.1.tar.gz
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_ee_manual.zip 5077278 dc30e800a0445b180581335fc1e5bef1
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_avatars.zip 1347132 d2b4a6bdab1177f0dc289080beb27ecd
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_wallpapers.zip 7626426 e875359285cd98e43905bfb657a14eec

./lgogdownloader --version
LGOGDownloader 2.20 git 2fc7fa8

Any thoughts?

David
Hello, thanks for great job.
Unfortunately, cannot compile new version, some problems with rhash, what version I need on Linux Mint?
Right now, I am using deb from
ppa.launchpad.net/nilarimogard/webupd8/ubuntu/pool/main/l/lgogdownloader/ (not links allowed)
but that is old version.

Have a nice day,

Pavel
avatar
Levap: Unfortunately, cannot compile new version, some problems with rhash
If you share your compilation errors here we might be able to help you get it working.
version from sites.google.com/site/gogdownloader/gogdownloader-0-31

$ make
g++ -Wall -O2 -pipe -o gogdownloader gogdownloader.cpp -lhtmlcxx -lcss_parser_pp -lcss_parser -lcurl -ltinyxml -ljsoncpp -lrhash -lboost_regex -lboost_filesystem -lboost_system
In file included from gogdownloader.cpp:14:0:
gogdownloader.h:27:25: fatal error: rhash/rhash.h: Adresář nebo soubor neexistuje
#include <rhash/rhash.h>
^
compilation terminated.
make: *** [gogdownloader] Error 1

"Adresář nebo soubor neexistuje" means: "Directory or file does not exist"

I have installed rhash, librhash-dev and librhash0.

edit:
Arrow is pointing at end of
#include <rhash/rhash.h>
Post edited April 06, 2015 by Levap
avatar
Levap: gogdownloader.h:27:25: fatal error: rhash/rhash.h: Adresář nebo soubor neexistuje
This file should be part of the librhash-dev, but it looks like it is not found in the same place depending of the version of the package.
First check which one of the following files exist on your system:
/usr/include/rhash/rhash.h
/usr/include/rhash.h

If only the second file can be found, run the following two commands as root before giving another try to the compilation:
mkdir /usr/include/rhash
ln -s /usr/include/rhash.h /usr/include/rhash/
avatar
Levap: gogdownloader.h:27:25: fatal error: rhash/rhash.h: Adresář nebo soubor neexistuje
avatar
vv221: This file should be part of the librhash-dev, but it looks like it is not found in the same place depending of the version of the package.
First check which one of the following files exist on your system:
/usr/include/rhash/rhash.h
/usr/include/rhash.h

If only the second file can be found, run the following two commands as root before giving another try to the compilation:

mkdir /usr/include/rhash
ln -s /usr/include/rhash.h /usr/include/rhash/
avatar
vv221:
Bingo it was /usr/include/rhash.h

Also, I discovered I am installing old gogdownloader, instead of a new lgogdownloader.

I think, it work now, Thank You.
LGOGDownloader 2.21
- Make sure that file is regular file when getting local hash
- Fixed crash in Downloader::checkStatus
- Ignore extras without filename
* These are usually extras that haven't been released yet so they can't be downloaded anyway
- Changed jsoncpp include path from <jsoncpp/json/json.h> to <json/json.h>
- Added support for saving serial keys
* Serials are saved to "serials.txt" when using --save-serials with --download and listed in the output when used with --list-details
- Show more info on HTTP error in API::getResponse when using debug build
- Added option to skip fast platform detection
* --no-platform-detection skips the initial fast platform detection and detects the supported platforms from game details which is slower but more accurate.
* Useful in case platform identifier is missing for some games in the game shelf.
- Fixed downloader skipping some files because of uncleared API error state
- Show url in http error messages

https://sites.google.com/site/gogdownloader/lgogdownloader-2.21.tar.gz

sha256: f97f8cd06588d5e22e5544cd4e2cf84456b6322c842e79583846279241a8caf0
md5: 49dfc47041f9e2c56feb4aa284ba2b9a
So with the new feature would it somehow be possible to download all your serials but no games?
avatar
Kristian: So with the new feature would it somehow be possible to download all your serials but no games?
This should do it:
lgogdownloader --download --no-extras --no-patches --no-installers --no-language-packs --save-serials
Well, it still 404's for me on BG2EE.

+ ./lgogdownloader --status --platform 4 --game baldurs_gate_2_enhanced_edition
Getting game info 1 / 1
HTTP ERROR: 404 (http://wpc.11DF.edgecastcdn.net/0011DF/secure/baldurs_gate_2_ee/linux/1.3/gog_baldurs_gate_2_enhanced_edition_1.0.0.1.tar.gz.xml?HEXHASHDELETEDXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&amp;fileExtForIe=.exe)
ND baldurs_gate_2_enhanced_edition gog_baldurs_gate_2_enhanced_edition_1.0.0.1.tar.gz
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_ee_manual.zip 5077278 dc30e800a0445b180581335fc1e5bef1
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_avatars.zip 1347132 d2b4a6bdab1177f0dc289080beb27ecd
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_wallpapers.zip 7626426 e875359285cd98e43905bfb657a14eec

+ ./lgogdownloader --status --no-platform-detection --platform 4 --game baldurs_gate_2_enhanced_edition
Getting game info 1 / 1
HTTP ERROR: 404 (http://wpc.11DF.edgecastcdn.net/0011DF/secure/baldurs_gate_2_ee/linux/1.3/gog_baldurs_gate_2_enhanced_edition_1.0.0.1.tar.gz.xml?HEXHASHDELETEDXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&amp;fileExtForIe=.exe)
ND baldurs_gate_2_enhanced_edition gog_baldurs_gate_2_enhanced_edition_1.0.0.1.tar.gz
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_ee_manual.zip 5077278 dc30e800a0445b180581335fc1e5bef1
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_avatars.zip 1347132 d2b4a6bdab1177f0dc289080beb27ecd
OK baldurs_gate_2_enhanced_edition baldurs_gate_2_wallpapers.zip 7626426 e875359285cd98e43905bfb657a14eec

-bash-4.2$ ./lgogdownloader --version
LGOGDownloader 2.21 git 84c3385
-bash-4.2$

Is there something I can do on my end to help?

David
Post edited April 07, 2015 by zzqzzq_zzq
This is an issue on GOG server side. The linux tarball is missing xml data. Perhaps it would be a good idea to let GOG support know about this.

I've also encountered this with some other linux games. Most recent example being Pillars of Eternity where a dlc is missing xml data.
avatar
Sude: I've also encountered this with some other linux games. Most recent example being Pillars of Eternity where a dlc is missing xml data.
Actually when I do this:

lgogdownloader --platform 4 --download --game pillars_of_eternity

It doesn't download anything at all. Only when I skip platform, it downloads the Windows version. Is that caused by this missing XML?

This also produces nothing:

lgogdownloader --platform 4 --status --game pillars_of_eternity

UPDATE:

Hm. This worked however:

lgogdownloader --no-platform-detection --platform 4 --download --game pillars_of_eternity
Post edited April 07, 2015 by shmerl
avatar
Sude: I've also encountered this with some other linux games. Most recent example being Pillars of Eternity where a dlc is missing xml data.
avatar
shmerl: Actually when I do this:

lgogdownloader --platform 4 --download --game pillars_of_eternity

It doesn't download anything at all. Only when I skip platform, it downloads the Windows version. Is that caused by this missing XML?

This also produces nothing:

lgogdownloader --platform 4 --status --game pillars_of_eternity

UPDATE:

Hm. This worked however:

lgogdownloader --no-platform-detection --platform 4 --download --game pillars_of_eternity
This is caused by the missing platform identifier tag on the game shelf.
"data-title" attribute should be something similar to this: "planescape torment hasbro inc black isle studios roleplaying realtime fantasylinux ubuntu mint osx mac"
but for Pillars of Eternity the "data-title" attribute is "pillars of eternity gog gog unknown unknown unknown"