Basalt
Template authoring

Schema overview

The top-level structure of a Basalt template.

A template is one JSON object, validated against template.schema.json. Reference the schema in your file to get editor completion:

{ "$schema": "https://basalt.host/schemas/template.schema.json" }

Top-level properties

Prop

Type

No additional properties are allowed anywhere in the document; the schema is strict, which keeps typos from silently doing nothing.

The settings object

Prop

Type

File browser rules

"fileBrowser": {
  "rootFolder": "/data",
  "readOnlyPaths": ["/data/eula.txt"],
  "hiddenPaths": ["/data/libraries", "/data/.cache"]
}
  • rootFolder: where browsing starts; users never see anything above it.
  • readOnlyPaths: visible but protected from edits and deletion.
  • hiddenPaths: not shown at all.

Versioning your template

version identifies the template revision, while settings.versions lists the game versions it can run; don't confuse the two. Instances record the template version they were deployed with, and only pick up newer revisions when re-deployed.

On this page