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

×
I was just pondering about Galaxy game file downloads, and what it might take to strip the Galaxy element from them?

Why you might ask?

Well.

(1) I have read a few reports here of updates for games being released for Galaxy ahead of the stand-alone variant, some reputedly well before, and I am unclear on whether all do make it to the stand-a-lone file downloads.

(2) Some of us suspect and fear that the stand-alone files might eventually go the way of the Dodo.

For those not clear on the difference, stand-alone game files are gotten through browser links listed in your GOG game library, as well as through programs like gogrepo.py. With gogrepo.py, you gain the benefit of MD5 checking ... though with browser link downloads, you could do a much slower (but better) MD5 check using my GOGPlus Download Checker program. The stand-alone game files are not set to automatically use Galaxy, which pleases many of us.

Anyway, whatever the case may be, surely it is wise to get ahead of the curve, take some precautions, and look at all avenues when it comes to your GOG library game files.

It seems fairly clear, that GOG installer files are created with InnoSetup, and can be extracted (or checked) using InnoExtract.

So it may be possible, but I don't know, to extract and then strip Galaxy elements, and then repackage those installer files again? Or to run something at install time to do the same thing?

P.S. The gogrepo.py Python program comes in a few flavors, with the forked Kalanyr version having the ability to download Galaxy variants as well as the stand-alone game files. I've also created a program, GOGRepo GUI, that supports either the original gogrepo.py script or the Kalanyr forked version. I've also created a simpler variant that uses gogrepo.py - GOGRepo Simple GUI.
In case you missed it - gog.com/forum/general/whats_updated/post5
Just adds fuel to the fire of what I have been saying.
Post edited November 07, 2020 by Timboli
avatar
Timboli: (1) I have read a few reports here of updates for games being released for Galaxy ahead of the stand-alone variant, some reputedly well before, and I am unclear on whether all do make it to the stand-a-lone file downloads.

(2) Some of us suspect and fear that the stand-alone files might eventually go the way of the Dodo.

So it may be possible, but I don't know, to extract and then strip Galaxy elements, and then repackage those installer files again? Or to run something at install time to do the same thing?
1. Are you asking how to download a GOG game via Galaxy, then remove the Galaxy elements from them in order to create your own offline installer? If so, it's usually a case of:-

a. Install the game via Galaxy (or extract using InnoSetup)

b. Delete unnecessary stuff like webcache.zip, unins000.*, etc, are unnecessary for the game). You can't go removing bundled Galaxy.dll, Galaxy64.dll, GalaxyCSharp.dll, GalaxyCSharpGlue.dll, etc, from the game install folders as the achievements / cloud save stuff is hardcoded inside the game and it's those dll's that handle API calls to the client to stop the game from crashing when offline and running without the client. Same is true of some steam_api.dll or steam_api64.dll files (included in GOG version), they are there because the game is coded around them and GOG uses a "wrapper" of some kind. Some games require Galaxy metadata files like goggame*.info, goggame*.script, goggame*.hashdb to unlock DLC "The Galaxy Way".

c. Find out if the game has any required registry entries (searching the registry for the game name / install folder will usually show any which you can export to a .reg file. Eg, some games here like Operation Flashpoint Cold War Crisis store a serial key in the registry without which the game won't start). Most GOG games are stored in HKLM\SOFTWARE\Wow6432Node\GOG.com\Games\xxxxxxxxxx (unique number per GOG game) registry key.

d. Create your own InnoSetup installer / zip file / self-extracting zip file from those files. If you're going with simple plain .zip / .7z files, it's possible to create .bat files that can automate the extraction of the file to a predesignated location (if you always install to the same place) and automatically add any registry keys / import .reg files. If you have a lot of games you install at once, this can be preferred to the InnoSetup route if you create a .bat installer per game, and then create another .bat that "calls" all the others sequentially you can potentially automate the installation of hundreds of games onto a large HDD / SSD.

e. Finally, some games require standard Windows dependencies (eg, DOT.Net 4.8, various VCRedists (2005, 2008, 2010, 2012, 2013, 2015-2019), OpenAL, etc). They mostly need backing up once (not once per game). If you need a complete list, let me know.

2. After recent events, I don't know what GOG's long-term plan is. I have all mine triple backed up. However, I've also done exactly what you're asking for certain types of games. Eg, Doom Engine games using GZDoom, it's a hell of a lot easier and faster to install GZDoom, add all the relevant WADs (Doom 1-2, Final Doom, Heretic, Hexen, Strife & Hedon), configure each as desired, and then back the lot up into one zip file. Same with DOS games, I can install +200 of them (a mix of GOG games and retail disc games) in just 2-clicks all with pre-configured DOSBox .conf files, controller mapping, icons & shortcut links, etc. Same with games that need a lot of tweaking (eg, Morrowind) or other source ports (Eduke for Duke Nukem, Quakespasm for Quake, about 40x ScummVM games, etc) or several games in a series (eg, Blackwell Quintology saved as one install vs 5x separate GOG installers). Takes a while to setup, but once done it saves so much time when reinstalling & reconfiguring. Let me know if you need any help.
Post edited June 14, 2023 by AB2012
avatar
AB2012: 1. Are you asking how to download a GOG game via Galaxy, then remove the Galaxy elements from them in order to create your own offline installer? If so, it's usually a case of:-
That's the one.
I would extract, make necessary changes and then repackage or zip.
I would want to keep it simple, and so I guess that would mean leaving the DLLs in that you mentioned, providing they don't impact the game negatively ... though ideally I would like to remove all bloatware.
I would only go this route, if stand-alone offline installer files were no longer available from GOG.
Until that feared day, I will continue backing up like you do (4 copies in my case) and using those non Galaxy files.
So this is just an exercise in future proofing ... having something ready just in case (my own automated script/program).

BIG THANKS for all that info. :)
avatar
AB2012: a. Install the game via Galaxy (or extract using InnoSetup)

b. Delete the Galaxy files (stuff like goggame*.info, like goggame*.script, like goggame*.hashdb, goglog.ini, webcache.zip, unins000.*, etc, are unnecessary for the game). Note this only applies to "Galaxy Metadata". You can't go removing bundled Galaxy.dll, Galaxy64.dll, GalaxyCSharp.dll, GalaxyCSharpGlue.dll, etc, from the game install folders as the achievements / cloud save stuff is hardcoded inside the game and it's those dll's that handle API calls to the client to stop the game from crashing when offline and running without the client. Same is true of some steam_api.dll or steam_api64.dll files (included in GOG version), they are there because the game is coded around them and GOG uses a "wrapper" of some kind. The only "solution" to avoiding these (mostly for older games) is simply find an older pre-Galaxified build of the game you may have backed up somewhere.

c. Find out if the game has any required registry entries (searching the registry for the game name / install folder will usually show any which you can export to a .reg file. Eg, some games here like Operation Flashpoint Cold War Crisis store a serial key in the registry without which the game won't start). Most GOG games are stored in HKLM\SOFTWARE\Wow6432Node\GOG.com\Games\xxxxxxxxxx (unique number per GOG game) registry key.

d. Create your own InnoSetup installer / zip file / self-extracting zip file from those files. If you're going with simple plain .zip / .7z files, it's possible to create .bat files that can automate the extraction of the file to a predesignated location (if you always install to the same place) and automatically add any registry keys / import .reg files. If you have a lot of games you install at once, this can be preferred to the InnoSetup route if you create a .bat installer per game, and then create another .bat that "calls" all the others sequentially you can potentially automate the installation of hundreds of games onto a large HDD / SSD.

e. Finally, some games require standard Windows dependencies (eg, DOT.Net 4.8, various VCRedists (2005, 2008, 2010, 2012, 2013, 2015-2019), OpenAL, etc). They mostly need backing up once (not once per game). If you need a complete list, let me know.

2. After recent events, I don't know what GOG's long-term plan is. I have all mine triple backed up. However, I've also done exactly what you're asking for certain types of games. Eg, Doom Engine games using GZDoom, it's a hell of a lot easier and faster to install GZDoom, add all the relevant WADs (Doom 1-2, Final Doom, Heretic, Hexen, Strife & Hedon), configure each as desired, and then back the lot up into one zip file. Same with DOS games, I can install +200 of them (a mix of GOG games and retail disc games) in just 2-clicks all with pre-configured DOSBox .conf files, controller mapping, icons & shortcut links, etc. Same with games that need a lot of tweaking (eg, Morrowind) or other source ports (Eduke for Duke Nukem, Quakespasm for Quake, about 40x ScummVM games, etc) or several games in a series (eg, Blackwell Quintology saved as one install vs 5x separate GOG installers). Takes a while to setup, but once done it saves so much time when reinstalling & reconfiguring. Let me know if you need any help.
Post edited November 08, 2020 by Timboli
avatar
AB2012: c. Find out if the game has any required registry entries (searching the registry for the game name / install folder will usually show any which you can export to a .reg file. Eg, some games here like Operation Flashpoint Cold War Crisis store a serial key in the registry without which the game won't start). Most GOG games are stored in HKLM\SOFTWARE\Wow6432Node\GOG.com\Games\xxxxxxxxxx (unique number per GOG game) registry key.
All GOG games will put them into GOG.com in the registry. I've not found one that needs it from there. Most will need things like: (Using Star Wars Racer as an example)

HKLM\SOFTWARE\WOW6432Node\LucasArts Entertainment Company LLC\Star Wars: Episode I Racer\v1.0

So far from the top of my head its only Rayman Raving Rabbids that needed it in a weird place. (The uninstall entries.)

If you are creating portable versions though then anything that needs HKLM (HKEY_LOCAL_MACHINE) will need to be ran as admin anything under HKLU (HKEY_LOCAL_USER) (Monkey Island 4 for example) does not.

But games like Star Wars will look for LOCAL_MACHINE and not LOCAL_USER.
Post edited November 08, 2020 by RoboPond
I wonder how hard it might be?
Just grab it... I'll let you.

I wonder how hard it might be?
avatar
BlueMooner: Just grab it... I'll let you.
Okay, I've grabbed it ..... now what do I do with it? ;)
avatar
BlueMooner: Just grab it... I'll let you.
avatar
Timboli: Okay, I've grabbed it ..... now what do I do with it? ;)
Just think of a bottle of ketchup...

*Modded: please do not post NSFW links...
Post edited November 10, 2020 by ponczo_
Don't delete any goggame-*.info files. Some dlcs won't work without them.
Since the OP contains links to both Gogrepo GUI versions, it might do with a bump for resumed visibility.
avatar
Timboli: (1) I have read a few reports here of updates for games being released for Galaxy ahead of the stand-alone variant, some reputedly well before, and I am unclear on whether all do make it to the stand-a-lone file downloads.

(2) Some of us suspect and fear that the stand-alone files might eventually go the way of the Dodo.

So it may be possible, but I don't know, to extract and then strip Galaxy elements, and then repackage those installer files again? Or to run something at install time to do the same thing?
avatar
AB2012: 1. Are you asking how to download a GOG game via Galaxy, then remove the Galaxy elements from them in order to create your own offline installer? If so, it's usually a case of:-

a. Install the game via Galaxy (or extract using InnoSetup)

b. Delete the Galaxy files (stuff like goggame*.info, like goggame*.script, like goggame*.hashdb, goglog.ini, webcache.zip, unins000.*, etc, are unnecessary for the game). Note this only applies to "Galaxy Metadata". You can't go removing bundled Galaxy.dll, Galaxy64.dll, GalaxyCSharp.dll, GalaxyCSharpGlue.dll, etc, from the game install folders as the achievements / cloud save stuff is hardcoded inside the game and it's those dll's that handle API calls to the client to stop the game from crashing when offline and running without the client. Same is true of some steam_api.dll or steam_api64.dll files (included in GOG version), they are there because the game is coded around them and GOG uses a "wrapper" of some kind. The only "solution" to avoiding these (mostly for older games) is simply find an older pre-Galaxified build of the game you may have backed up somewhere.

c. Find out if the game has any required registry entries (searching the registry for the game name / install folder will usually show any which you can export to a .reg file. Eg, some games here like Operation Flashpoint Cold War Crisis store a serial key in the registry without which the game won't start). Most GOG games are stored in HKLM\SOFTWARE\Wow6432Node\GOG.com\Games\xxxxxxxxxx (unique number per GOG game) registry key.

d. Create your own InnoSetup installer / zip file / self-extracting zip file from those files. If you're going with simple plain .zip / .7z files, it's possible to create .bat files that can automate the extraction of the file to a predesignated location (if you always install to the same place) and automatically add any registry keys / import .reg files. If you have a lot of games you install at once, this can be preferred to the InnoSetup route if you create a .bat installer per game, and then create another .bat that "calls" all the others sequentially you can potentially automate the installation of hundreds of games onto a large HDD / SSD.

e. Finally, some games require standard Windows dependencies (eg, DOT.Net 4.8, various VCRedists (2005, 2008, 2010, 2012, 2013, 2015-2019), OpenAL, etc). They mostly need backing up once (not once per game). If you need a complete list, let me know.

2. After recent events, I don't know what GOG's long-term plan is. I have all mine triple backed up. However, I've also done exactly what you're asking for certain types of games. Eg, Doom Engine games using GZDoom, it's a hell of a lot easier and faster to install GZDoom, add all the relevant WADs (Doom 1-2, Final Doom, Heretic, Hexen, Strife & Hedon), configure each as desired, and then back the lot up into one zip file. Same with DOS games, I can install +200 of them (a mix of GOG games and retail disc games) in just 2-clicks all with pre-configured DOSBox .conf files, controller mapping, icons & shortcut links, etc. Same with games that need a lot of tweaking (eg, Morrowind) or other source ports (Eduke for Duke Nukem, Quakespasm for Quake, about 40x ScummVM games, etc) or several games in a series (eg, Blackwell Quintology saved as one install vs 5x separate GOG installers). Takes a while to setup, but once done it saves so much time when reinstalling & reconfiguring. Let me know if you need any help.
goggame hashdb and info files sometimes control dlc. I've tested it with Dead Cells for instance, I installed it, ran it to be sure the DLC ran, removed those files and relaunched the game and the DLC wouldn't load. Not sure if it's the hashdb or the info file, but I keep both of those and only delete the goggame ico (icons) files and other ones that aren't important. Wouldn't want to backup a game only to have a simple text file that's like 1kb missing be why your dlc won't work in game. Not all games work like that, but some do and I wouldn't soo carelessly delete goggame files because really they take up no space and can just be considered needed for functionality.
i forgot all about galaxy, i removed it from start up as it made itself have to many issues.

I did like it as a whole tho..

so to my understanding, you can strip it right out and make your own game launcher?

because id be keen to mod it
avatar
BPDMF: goggame hashdb and info files sometimes control dlc. I've tested it with Dead Cells for instance, I installed it, ran it to be sure the DLC ran, removed those files and relaunched the game and the DLC wouldn't load. Not sure if it's the hashdb or the info file, but I keep both of those and only delete the goggame ico (icons) files and other ones that aren't important. Wouldn't want to backup a game only to have a simple text file that's like 1kb missing be why your dlc won't work in game. Not all games work like that, but some do and I wouldn't soo carelessly delete goggame files because really they take up no space and can just be considered needed for functionality.
Yes, GOG have been increasingly encouraging devs to use Galaxy API calls to unlock DLC (instead of having it come pre-unlocked in game like every other game released pre-2018 here) over the past couple of years. I've updated the post with more accurate information to match. (NB: It's generally the .info file that does that. The hashdb isn't needed. As you said though it's usually just a couple of kb so might as well keep it in case they have any more "Great Ideas (tm)" with more Galaxification of offline installers)...