Type object
File match hemtt.json hemtt.toml
Schema URL https://catalog.lintel.tools/schemas/schemastore/hemtt/latest.json
Source https://www.schemastore.org/hemtt-0.6.2.json

Versions

Validate with Lintel

npx @lintel/lintel check
Type: object

The hemtt.json or hemtt.toml file is used to configure your HEMTT Project. All examples are done using JSON, but both files support every feature of HEMTT. hemtt.toml will be used if both files are present.

Properties

name string required

Long name of your project.

Default: ""
Examples: "Advanced Banana Environment"
pattern=^(.*)$
prefix string required

Prefix used for CBA macros and the release directory name.

Default: ""
Examples: "ABE3"
pattern=^(.*)$
author string required

Author of the project.

Default: ""
Examples: "ACE Mod Team"
pattern=^(.*)$
version string

HEMTT will look for addons/main/script_version.hpp and use it for the version number. If you are not using the CBA project structure or do not have that file you can add a version number in the HEMTT project file.

Default: ""
Examples: "1.0.0.0"
pattern=^(.*)$
files string[]

HEMTT will copy the files to the release directory after a successful release build. Supports glob patterns.

Default: null
include string[]

HEMTT will include matching relative or absolute paths when building.

Default: null
exclude string[]

HEMTT will exclude matching files when building.

Default: null
optionals string[]

HEMTT will build the specified addons from the ./optionals folder.

Default: null
folder_optionals boolean

HEMTT will by default build optionals into their own mod folders, which can be directly launched by the user. This can be turned off to build optional PBOs directly into optionals folder.

Default: false
Examples: false
skip string[]

HEMTT will skip building the specified addons.

Default: null
headerexts string[]

HEMTT will apply specified header extensions to each PBO. Supports templating.

Default: null
modname string

HEMTT will use the specified mod name (without @) to form @mod folder. Supports templating.

Default: ""
Examples: "my_mod"
pattern=^(.*)$
keyname string

HEMTT will use the specified key name for .bikey and .biprivatekey names. Supports templating.

Default: ""
Examples: "my_key"
pattern=^(.*)$
signame string

HEMTT will use the specified signature name as part of the full signature (.bisign) name. Supports templating.

Default: ""
Examples: "my_custom_name"
pattern=^(.*)$
sigversion integer

HEMTT will use the specified signature version. Currently Supported: V2, V3 (Experimental).

Default: 2
Examples: 3
reuse_private_key boolean

If set to true, HEMTT will use (and reuse) releases/keys/{keyname}.biprivatekey. It will be generated if it doesn't exist. The default behaviour is to generate a new private key each time and discard it immediately. HEMTT strongly recommends that you only reuse the key if you are making a client-side mod where it will not matter if clients are running different versions of the mod.

Default: false
Examples: false
postbuild string[]
Default: null
prebuild string[]
Default: null
releasebuild string[]
Default: null
scripts Record<string, object>
Default: null

Definitions

parallel-requires-foreach-to-be-true object
is-parallel-true
parallel enum
Values: true