VirtualFileSystem

From Spring
Revision as of 11:58, 17 April 2011 by Jk (talk | contribs) (→Engine Usage)
Jump to navigationJump to search

Development < VirtualFileSystem

VFS

The Virtual File System is the unified layer to access the different archives used at runtime. So you can access map, game & config files via the same interface.

Archive Hierarchy

When loading a new archive (sdz, sd7, sdd) it overrides existing file references in the VFS, so the order archives are loaded is very important. So here it is:

  • game
    • springcontent.sdz
    • game dependencies
    • game archive itself
  • map
    • maphelper.sdz
    • map dependencies
    • map archive itself
  • raw fs (only for unsynced data)

Extra Informations

Spring's VFS is lowercase only. Also it is extremely recommended to use linux style path separators, e.g. "foo/bar.txt" and not "foo\bar.txt".


Engine Read Files

The engine access a few files directly, most of them are lua files which access other files themselves. Here the list of files that must exist in the VFS (some of them don't have to be in the game/map archive cause there are fallback solution in springcontent.sdz & maphelper.sdz):