Assembling an sd7 from pool

Assembling an sd7 from pool

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Post Reply
constatinus
Posts: 31
Joined: 27 Sep 2015, 23:00

Assembling an sd7 from pool

Post by constatinus »

Is there a possibility that you can share games/maps downloaded by pooling (pr-downloader/rapid) by assembling somehow an sd7 from your pool folder? Also is there a possibility that then the other person can disassemble that sd7, like when you use the pr-downloader to download and it downloads the sd7 and then it splits it up to the pool folder (im not sure if it downloads the whole and then splits, or just downloads splited)?
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: Assembling an sd7 from pool

Post by Kloot »

Is there a possibility that you can share games/maps downloaded by pooling (pr-downloader/rapid) by assembling somehow an sd7 from your pool folder?
Yes, this is actually how the ZK project distributes game updates: downloads are split up using the pool, sdz archives for each version are assembled locally by a wrapper tool.

It also happens to be the recommended approach because letting Spring load pool files directly is extremely slow.
User avatar
jamerlan
Balanced Annihilation Developer
Posts: 683
Joined: 20 Oct 2009, 13:04

Re: Assembling an sd7 from pool

Post by jamerlan »

Is springlobby assembling sdz too?
User avatar
Deadnight Warrior
Posts: 183
Joined: 08 Jun 2009, 17:59

Re: Assembling an sd7 from pool

Post by Deadnight Warrior »

constatinus wrote:.. assembling somehow an sd7 from your pool folder?
SD7 is a LZMA compressed 7z archive, and last time I checked Spring didn't support delta filtering in the LZMA SDK as it was using an outdated SDK version. If you use 7-zip newer than 9.x it will automaticaly apply delta filtering to PCM WAVs for better compression, so you'll have to manualy disable this in the command line or Spring will crash when loading such SD7 archives. Non-solid mode is also a must as Spring doesn't load the files in order they're added to the archive. LZMA2 is also not supported (the default compression mode for 7-zip 15.0 and newer).

With all those issues, it's best to use SDZ for now (zip deflate32), which rapid already supports.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Assembling an sd7 from pool

Post by abma »

constatinus wrote:Is there a possibility that you can share games/maps downloaded by pooling (pr-downloader/rapid) by assembling somehow an sd7 from your pool folder? Also is there a possibility that then the other person can disassemble that sd7, like when you use the pr-downloader to download and it downloads the sd7 and then it splits it up to the pool folder (im not sure if it downloads the whole and then splits, or just downloads splited)?
- no map is distributed as sd7.
- the rapid pool folder itself could be shared
- i.e. http://ba.repo.springrts.com/builds/ exists
- MakeZip exits: https://springrts.com/wiki/RapidTools#MakeZip
jamerlan wrote:Is springlobby assembling sdz too?
no.
Kloot wrote:It also happens to be the recommended approach because letting Spring load pool files directly is extremely slow.
this heavily depends on the computer and OS, some factors make it worse:
- windows
- hdd
- virus scanner

if you use linux/sdd/no virus scanner there shouldn't be a difference between sdd / sdz IMHO. sd7/sdz has the drawback that it consumes more diskspace / traffic when multiple versions of the same game are installed.
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: Assembling an sd7 from pool

Post by Kloot »

- windows
- hdd
- virus scanner
That's the majority of users, at least in ZK land.
sd7/sdz has the drawback that it consumes more diskspace / traffic when multiple versions of the same game are installed
It does, but we also live in an era of cheap terabyte-capacity drives and Spring content is *tiny* compared to any modern AAA game.
Post Reply

Return to “Engine”