I had a bit of spare time this evening, so I scratched an itch I've had for a while.
As you may realise, there's a ton of duplicated files inside the TAC files (because they contain the images of the separate disks from the original, which had to hold copies of the same data).
Since the TAD is just a map of hashes to offsets it occurred to me that you could just point the offset for a duplicate file to the original, saving a bit of space. I wrote this python file to do it, and it seems to work (nb. I've done very little testing!). It'll shave about 1.2gb off the install size if you run it for the disk_xxx tacs.
The command line is:
CompressTAC.py <source with no extension> <destination with no extension>
e.g.
CompressTAC.py E:\SteamLibrary\steamapps\common\SMLaunch\sm2\archives\dx11\data\disk_5b7bcbc7 disk_5b7bcbc7
It will not work if source and destination are the same...
Er... I doubt anyone really cares about saving a mere gig, but I just thought I'd put it out there...!
As you may realise, there's a ton of duplicated files inside the TAC files (because they contain the images of the separate disks from the original, which had to hold copies of the same data).
Since the TAD is just a map of hashes to offsets it occurred to me that you could just point the offset for a duplicate file to the original, saving a bit of space. I wrote this python file to do it, and it seems to work (nb. I've done very little testing!). It'll shave about 1.2gb off the install size if you run it for the disk_xxx tacs.
The command line is:
CompressTAC.py <source with no extension> <destination with no extension>
e.g.
CompressTAC.py E:\SteamLibrary\steamapps\common\SMLaunch\sm2\archives\dx11\data\disk_5b7bcbc7 disk_5b7bcbc7
It will not work if source and destination are the same...
Er... I doubt anyone really cares about saving a mere gig, but I just thought I'd put it out there...!