hemtt launch

Launch Arma 3 with your mod and dependencies.

Usage: hemtt launch [OPTIONS] [config]... [-- <passthrough>...]

Arguments:
  [config]...
        Launches with the specified `hemtt.launch.` configurations

  [passthrough]...
        Passthrough additional arguments to Arma 3

Options:
    -e, --executable <executable>
        Arma 3 executable to launch

    

    -i, --instances <instances>
          Launches multiple instances of the game

          [default: 1]

    -Q, --quick
        Skips the build step, launching the last built version

    -b, --binarize
        Use BI's binarize on supported files
        
    --no-rap
        Do not rapify files

    --no-filepatching
        Do not enable filePatching

    -o, --optional <optional>
        Include an optional addon folder

    -O, --all-optionals
        Include all optional addon folders

    -t, --threads <threads>
        Number of threads, defaults to # of CPUs

    -v...
        Verbosity level
        

    -h, --help
        Print help information (use `-h` for a summary)

hemtt launch is used to build and launch a dev version of your mod. It will run the hemtt dev command internally after a few checks, options are passed to the dev command.

You can chain multiple configurations together, and they will be overlayed from left to right. Any arrays will be concatenated, and any duplicate keys will be overridden. With the below configuration, hemtt launch default vn ace would launch with all three configurations. Note that default must be specified when specifying additional configurations, default is only implied when no configurations are specified.

Configuration

hemtt launch requires the mainprefix option to be set.

Launch configurations can be stored in either .hemtt/project.toml under hemtt.launch, or in a separate file under .hemtt/launch.toml. The latter is useful for keeping your main configuration file clean. When using launch.toml, the hemtt.launch key is not required.

.hemtt/project.toml

mainprefix = "z"

# Launched with `hemtt launch`
[hemtt.launch.default]
workshop = [
    "450814997", # CBA_A3's Workshop ID
]
presets = [
    "main", # .html presets from .hemtt/presets/
]
dlc = [
    "Western Sahara",
]
optionals = [
    "caramel",
]
mission = "test.VR" # Mission to launch directly into the editor with
parameters = [
    "-skipIntro",           # These parameters are passed to the Arma 3 executable
    "-noSplash",            # They do not need to be added to your list
    "-showScriptErrors",    # You can add additional parameters here
    "-debug",
    "-filePatching",
]
executable = "arma3" # Default: "arma3_x64"
file_patching = false # Default: true
binarize = true # Default: false
rapify = false # Default: true

# Launched with `hemtt launch vn`
[hemtt.launch.vn]
extends = "default"
dlc = [
    "S.O.G. Prairie Fire",
]

# Launched with `hemtt launch ace`
[hemtt.launch.ace]
extends = "default"
workshop = [
    "463939057", # ACE3's Workshop ID
]

.hemtt/launch.toml

[default]
workshop = [
    "450814997", # CBA_A3's Workshop ID
]

[vn]
extends = "default"
dlc = [
    "S.O.G. Prairie Fire",
]

extends

The name of another configuration to extend. This will merge all arrays with the base configuration, and override any duplicate keys.

workshop

A list of workshop IDs to launch with your mod. These are not subscribed to, and will need to be manually subscribed to in Steam.

presets

A list of .html presets to launch with your mod. Exported from the Arma 3 Launcher, and kept in .hemtt/presets/.

dlc

A list of DLCs to launch with your mod. The fullname or short-code can be used.

Currently supported DLCs:

Full NameShort Code
Contactcontact
Global Mobilizationgm
S.O.G. Prairie Firevn
CSLA Iron Curtaincsla
Western Saharaws
Spearhead 1944spe
Reaction Forcesrf

optionals

A list of optional addon folders to launch with your mod.

mission

The mission to launch directly into the editor with. This can be specified as either the name of a folder in .hemtt/missions/ (e.g., test.VR would launch .hemtt/missions/test.VR/mission.sqm) or the relative (to the project root) path to a mission.sqm file or a folder containing it.

parameters

A list of Startup Parameters to pass to the Arma 3 executable.

executable

The name of the Arma 3 executable to launch. This is usually arma3 or arma3_x64. Do not include the .exe extension, it will be added automatically on Windows. Only paths relative to the Arma 3 directory are supported.

file_patching

Whether to launch Arma 3 with -filePatching. Equivalent to --no-filepatching or -F.

binarize

Whether to use BI's binarize on supported files. Equivalent to --binarize.

rapify

Provides the ability to disable rapify for the launch command. Equivalent to --no-rap.

Options

-i, --instances <instances>

Launches multiple instances of the game. If unspecified, it will default to 1.

hemtt launch -i 2

-Q, --quick

Skips the build step, launching the last built version. Will throw an error if no build has been made, or no symlink exists.

hemtt launch -Q

-e, --executable <executable>

The Arma 3 executable to launch. Overrides the executable option in the configuration file.

hemtt launch -e arma3profiling_x64 # Relative to the Arma 3 directory
hemtt launch -e "C:\Program Files\Steam\steamapps\common\Arma 3\arma3_x64.exe" # Absolute path

--no-filepatching

Do not launch Arma 3 with -filePatching.

Passthrough Options

Any options after -- will be passed to the Arma 3 executable. This is useful for passing additional Startup Parameters.

hemtt launch -- -world=empty -window