Skip to content

Mod directory structure

mwierzchos edited this page Dec 10, 2025 · 2 revisions

Basic mod structure

When creating a Timberborn mod, you store it in the Documents/Timberborn/Mods directory, with each mod having its own subfolder. This is also where manually downloaded mods should be placed.

Example:

Documents/
└── Timberborn/
    └── Mods/
        └── MyFirstMod/
            ├── AssetBundles/
            │   └── ModAssets.assets
            ├── Goods/
            │   ├── Good.Berries.json
            │   └── Good.Moonshine.json
            ├── Localizations/
            │   └── enUS_myMod.csv
            ├── Materials/
            │   └── Beavers/
            │       └── Folktails/
            │           └── Adult/
            │               ├── BeaverAdult1.Folktails.png
            │               ├── BeaverAdult2.Folktails.png
            │               └── BeaverAdult3.Folktails.png
            ├── Recipes/
            │   └── Recipe.Antidote.json
            ├── Sprites/
            │   └── Goods/
            │       ├── MoonshineIcon.png
            │       └── MoonshineIcon.png.meta.json
            ├── Code.dll
            └── manifest.json

Compatibility versions

If you want your mod to be compatible with multiple versions of the game - for example, Stable and Experimental - you can place version-specific builds of your mod in subfolders corresponding to those versions.

Each subfolder must be named version-x, where x is the game version. You can use any number of digits, so both version-0.6 and version-0.6.8.4 are valid.

The game loads the version folder that is closest but not higher than the game's current version.

Example:

Documents/
└── Timberborn/
    └── Mods/
        └── MyFirstMod/
            ├── version-0.6/
            │   ├── AssetBundles/
            │   │  └── ModAssets.assets
            │   ├── Code.dll
            │   └── manifest.json
            └── version-0.7/
                ├── AssetBundles/
                │  └── ModAssets.assets
                ├── Code.dll
                └── manifest.json

If any version-x folder is present, the root folder content will be ignored.


Manifest

Each mod must include a manifest.json file in its root folder.

Example:

{
  "Name": "My First Mod",
  "Version": "0.1",
  "Id": "Mechanistry.MyFirstMod",
  "MinimumGameVersion": "0.0.0.0",
  "Description": "The very first mod.",
  "RequiredMods": [
    {
      "Id": "AnotherMod",
      "MinimumVersion": "0.1"
    }
  ],
  "OptionalMods": [
    {
      "Id": "YetAnotherMod"
    }
  ]
}

Note that Name, Version, Id, and MinimumGameVersion are required fields. The rest can be omitted.

Id should be unique across all mods, so it’s a good practice to use your username or domain as a prefix.

RequiredMods and OptionalMods define your mod’s dependencies. The game loads these mods before yours. The difference is that missing RequiredMods trigger a warning icon in the Mod Manager, while missing OptionalMods do not.


Clone this wiki locally