Skip to content

Manifest

Every mod requires a manifest.json file in its root directory. This file defines the mod's metadata, permissions, and configuration.

Example

json
{
    "id": "my-awesome-mod",
    "name": "My Awesome Mod",
    "version": "1.0.0",
    "author": "YourName",
    "description": "An awesome mod that adds new quests and features.",
    "apiVersion": 1,
    "permissions": ["events", "network", "filesystem"],
    "dependencies": ["other-mod-id"],
    "cover": "cover.png",
    "tags": ["quest", "network", "story"]
}

Fields

FieldTypeRequiredDescription
idstringYesUnique mod identifier. Use lowercase with hyphens.
namestringYesDisplay name shown in the Mods menu.
versionstringYesSemantic version (e.g. 1.0.0).
authorstringYesMod author name.
descriptionstringYesShort description of the mod.
apiVersionnumberYesSDK API version. Currently 1.
permissionsstring[]NoRequired permissions.
dependenciesstring[]NoIDs of mods that must be loaded first.
coverstringNoPreview image path (used in Workshop).
tagsstring[]NoTags for Workshop categorization.
workshopIdstringNoSteam Workshop item ID (set automatically on upload).

ID Guidelines

  • Use lowercase letters, numbers, and hyphens only
  • Must be unique across all mods
  • Examples: stealth-missions, network-toolkit, cyber-story

Version

Follow Semantic Versioning:

  • Major (2.0.0): Breaking changes
  • Minor (1.1.0): New features, backward compatible
  • Patch (1.0.1): Bug fixes

Dependencies

If your mod requires another mod to be loaded first, list its ID:

json
{
    "dependencies": ["core-library", "network-utils"]
}

The mod loader ensures dependencies are loaded before your mod. If a dependency is missing, your mod will not load.

HotBunny Interactive Entertainment Inc.