squid830: The issues going this route would be the risk of potentially trashing someone's installation if there's an error in the process
Mirrorio: Potentially trashing someone's installation.
Or HDD.
Or CPU.
Or whatever.
Alas, if the patch needs more space on HDD than unpatched game needs - why not forcing full game redownload?
Or initiating game folder repair?
Or downloading diffs between packed unpatched game files vs packed patched game files?
You're not expecting different end users having different checksums of same files of same game version, do you?
I believe it appears to be more a case of GOG using tools that in the case of patching Cyberpunk at least require:
- the files already on the disk to be uncompressed to a temp folder
- the files from the installer to be unpacked and possibly uncompressed further to a different temp folder
- these two files then merged into a third file
- this third file then recompressed and copied into the Cyberpunk directory
- all temp files erased to get our massive GB back
BTW I agree that they could most likely easily use a tool that unpacks, repacks and merges on the fly, or as you state do a binary merge (tbh binary merges can be a pain - if the project contains a lot of files, then the most logical thing would be to just straight up replace individual files. Cyberpunk has 90% of its content in the archive directory, which is split into 31 files. The problem is these are all "archive" files, and large patches no doubt replace stuff in a whole bunch of these...
Hopefully they only patch one archive file at a time - but it wouldn't surprise me if these 16GB archive files expand to 50GB, which is then tripled if they do a bunch of copying and then re-archiving...