The ziploader loads game resources and mods from zip archives in addition to plain old directories.
Game resources are the common directory and the UFO and TFTD directories. These can be put into common.zip, UFO.zip and TFTD.zip respectively, in a datadir. The archives must contain the top level or respective directory - that is common.zip/common/Language is wrong, the code expects common.zip/Language, UFO.zip/GEODATA, etc.
Mods.
A subdirectory is considered a mod if it has a metadata.yml file at its top level.
A zip archive can either contain a single mod, when the metadata.yml file is at the top level, or multiple mods in top level subdirectories. Ones without metadata.yml are ignored.
An example is the standard.zip. It has multiple mods - all the bundled ones in fact.
Mods are identified by their id from metadata.yml. Zip archive and subdirectory names are irrelevant.
It there is a metadata.yml file but it lacks the id attribute, the mod id is taken to be the subdirectory's name. (This should be deprecated and removed).
Removed in OXCE 7.3 (causing a lot more trouble than what it's worth):
TODO:
Mod loading order.
Dependencies.
The VFS and ruleset/language/other parsing/lookup rules.
User and Data directory locations and search order.