Jump to content
  • Advertisement
Sign in to follow this  
Tachikoma

Suggestions for Archiving Game Assets

This topic is 4162 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Been searching for similar topics in this forum but I couldn't find anything very useful. I apologize in advance if this has been asked before. I am researching various file formats for storing game assets in an archive of some sort. I need a public domain and non-proprietary archiving format. It should be available as an multi-platform SDK (or library) to be used in my existing projects. Data compression is not that important (if necessary, I could use zlib for that anyway) and I don't care about encryption either. I suppose I could implement my own archiving format, but I do not want to write various support tools to allow packing and unpacking the archive. I would like to use third party tools for such tasks. The closest candidate so far is the .tar format. I had a look at the libtar project, but I'm having trouble building it under Windows (VC++ 8.0 or MinGW). It uses a ./configure shell script to create the necessary makefiles, which requires a *nix environment. If anyone has tips & tricks to get the lib to compile under Windows, I'd appreciate your help. The Quake II .pak format is also interesting, but I'm not 100% sure about the legal issues surrounding the use of this format in my applications. Nor am I aware of a .pak SDK/library. If you have suggestions of other archiving formats that meet the above criteria, I'd love to know about it - thanks. :)

Share this post


Link to post
Share on other sites
Advertisement
Why not just use ZIP? (That's what PAK is, actually; it's just renamed.) Plenty of cross-platform libraries are available.

Share this post


Link to post
Share on other sites
Quote:
Original post by Sneftel
Why not just use ZIP? (That's what PAK is, actually; it's just renamed.) Plenty of cross-platform libraries are available.


Only Q3/4 PAK files are renamed ZIPs, Quake and QuakeII PAK files are a custom format. I highly recommend ZIP files, as well, though, they are quite versatile and easy to author (what with all the free ZIP explorers you can find online).

Share this post


Link to post
Share on other sites
To tell the truth, I'm not sure about the legality of the ZIP format. I believe it's all released under some type of public license, which means you can use it to your hearts content. For a commercial product, I'm sure you'd want to check it out, though. I do know that the official ZIP library is available online, in full code or precompiled versions.

ZLib.net

From their site:

A Massively Spiffy Yet Delicately Unobtrusive Compression Library
(Also Free, Not to Mention Unencumbered by Patents)
(Not Related to the Linux zlibc Compressing File-I/O Library)


:)

Share this post


Link to post
Share on other sites
Theres also PhysFS, which as far as I can tell works very similar to quake pak files with a priority mechanism and support for zip files.

As for the legality of .pak files, iD have in the past stated that they don't care about other people using/loading/saving from their own formats, just as long as they don't use the actual quake tools (qvis and all that malarky).

Share this post


Link to post
Share on other sites
ZIP does not have patent problems. It was actually invented to get around LZW patent problems, but LZW is actually fine now too because all the patents have expired.

Share this post


Link to post
Share on other sites
I just had a very quick look at libzip and seems like it's something I want. However, like just like libtar seems like it also requires a *nix platform to compile. I'll take a closer look when I get home.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!