spillerrec / VirtualAA2

2 stars 0 forks source link

VirtualAA2

VirtualAA2 is package-manager/mod installer for AA2. What sets it apart from existing mod installers is that mods can be activated/deactivated without modifying any files by using file system virtualization.

The project is ambitious and has the following goals:

File system virtualization

VirtualAA2 is based on file system virtualization. This makes it possible to create a folder (or partition) which does not take up space on the disk drive, but looks and behaves like a normal folder. The contents are generated when accessed as needed and streamed directly to the application. VirtualAA2 creates a virtual folder containing the entire AA2 installation and can this way add and remove mods dynamically without changing any data on the disk.

Why do this?

AA2 uses .pp archive files which contains many smaller files. Mods which added or modified files in these archives requires you to modify the entire archive. This can be slow, but most importantly it pollutes the original game files with no easy way to tell which are the originals, which are mods, and what have been overwritten. Furthermore, it opens up for a lot of possibilities not possible otherwise without modifying the game code itself.

Reducing installation size

All the game files are stored without compression, which bloats the file size. Even worse, a lot of content in a file is often replicated partially in other files. Because the folder is virtualized, VirtuallAA2 can optimize and compress the game files, and decompress them on the fly without the game knowing any better.

Easing mod development

Mods no longer needs to be packaged to .pp archives which makes it a lot easier to try out your modifications.

Done

In progress

TODO

Big issues