Welcome to the Module Library
The Module Library is a central repository for players, designers, and publishers to store or access Vassal modules and related files. Read on for an overview of its structure and some examples.
Concepts
- Pages are projects.
- Projects contain packages.
- Packages contain releases.
- Releases contain files.
- Packages have names.
- Releases have version numbers.
- Release version numbers follow the Semantic Versioning format, which is
x.y.z
for normal releases. - A newly-uploaded module file must have a version number matching the release it is in.
- Projects have owners, and are editable by their owners only.
- Project owners can add and remove owners, including themselves.
For greater detail, see the library documentation.
If you are working with a module that was on a page in the old module library which contained multiple competing modules for the same game, including but not limited to modules listed here, PLEASE CONSULT WITH THE SITE ADMINS BEFORE PROCEEDING by posting in the forum.
Examples
You want to upload version 0.5.0 of the module
battle_for_foo.vmod
. Your project already has a package containing the 0.4.0 release of that module.DO create a release in the existing package with version number 0.5.0 and add the new file to that release.
DON'T create a new package. A package is intended to contain all the releases of a single module.
A game has multiple distinct modules covering the game, maintaned by different people.
DO create a project for each group maintaining a module.
DON'T put competing modules for one game into the same project.
A game has multiple distinct modules for different parts of the game. E.g., an SPI quad, or a game covering serveral American Civil War battles each on their own map. These modules are maintained by the same people and are not alternative modules for the same game.
DO create a package within one project for each module.
DON'T create a project for each module.