Shpoike / Quakespasm

Extra bloaty junk to modernise stuff a bit.
http://triptohell.info/moodles/qss/
GNU General Public License v2.0
190 stars 41 forks source link

Bug in pk3 support #48

Closed mattreecebentley closed 3 years ago

mattreecebentley commented 3 years ago

Hi there- when using large numbers of textures in a pk3 (eg. 5gb for AD) the textures will not show up in-game. However when the same pk3 is extracted to the AD folder (creating a 'textures' subfolder) the textures load fine. There must be some kind of bug in the pk3 handling that makes it freak out when either dealing with large numbers of files, or possibly large sizes of pk3 files. I'm unsure which of the two it is. If necessary I can upload a test setup which reliably fails. Cheers-

Shpoike commented 3 years ago

the underlying filesystem code does not support seeking beyond 2gb. QSS is meant to support the zip64 extensions (on account of sharing FTE's zip code), but when it can't read the end of the file at all, it can't actually read any of the filetable etc, so any zip64 support is irrelevant. Other engines will have similar issues too, so if compat is something you care about then you'll need to split the files up anyway - just split it up into three pk3s instead of one.

mattreecebentley commented 3 years ago

No such issues exist in darkplaces, but good to know for the context of quakespasm-

Shpoike commented 3 years ago

This should be resolved by https://github.com/Shpoike/Quakespasm/commit/3ac910c32d0ab1f9757571a380959d12171dbbe5 pk3 files larger than 2gb should now work, and thanks to zip64 support pk3 files larger than 4gb should also work.

mattreecebentley commented 3 years ago

That's great!