Simply a ZIP file containing the same directory tree as smc/data.
We don't change that much.
- Change all file access functions to use PHYSFS_* functions.
- Add smc/data to the search path in the main function.
- Add the functionality to automatically add all files in <settings>/smc/packages to the search path.
And that should do it!
PHYSFS website: http://icculus.org/physfs/
Simple, fast, and easy! The beauty of PhysFS is that it not only supports normal directories in search paths but it supports transparent ZIP reading along with other files such as WADs and Quake packages.
P.S. I'll create a patch soon for this. It's not much more work then using sed!