Skip to content

Build KAM with SQFC

MiszczuZPolski edited this page May 6, 2023 · 4 revisions

1. Requirements

  • Arma 3
  • Arma 3 Tools (available on Steam)
  • Run Arma 3 and Arma 3 Tools directly from steam once to install registry entries (and again after every update)
  • [Windows] PowerShell v3.0+ (pre-installed on Windows 8 or newer)
  • ACE3 local clone of the repository
  • CBA local clone of the repository
  • KAM local clone of the repository
  • HEMTT (>=v1.3.2) in project root

2. Getting source code

To actually get the KAM source code on your machine, it is recommended that you use Git. Tutorials for this are all around the web, and it allows you to track your changes and easily update your local copy.

If you just want to create a quick and dirty build, you can also directly download the source code using the "Download ZIP" button on the front page of the GitHub repo.

3.Setup and building using HEMTT

Replace hemtt with hemtt.exe on Windows. P-drive is not required for HEMTT or file patching.

3.1 Initial Setup

Download HEMTT and place the executable in project root (Windows and Linux - binarization supported only on Windows at this time).

3.1.1 File Patching Setup

KAM comes pre-configured for testing with file patching using only CBA's and ACE's latest published version. You must subscribe to CBA_A3 and [ACE3] (https://steamcommunity.com/sharedfiles/filedetails/?id=463939057) on the Workshop.

3.2 Creating a Development Build

Run $ hemtt dev to build the mod for use with file patching (with links to the original addon folders) without binarization (faster and often not needed for development). This will populate the .hemttout/dev folder with unbinarized PBOs, with links back to the original addon folders. You cannot distribute this build to others.

Run $ hemtt launch to run KAM with pre-configured file patching. Uses $ hemtt dev before launching Arma.

3.3 Creating a Test Build

To create a development build to test changes or to debug something, run $ hemtt build in the root folder. This will populate the .hemttout/build folder with binarized PBOs. This type of build is meant for sharing, group testing, but not for release.

3.4 Creating a Release Build

To create a complete build that you can use without the source files, with full binarization and all optimizations, run $ hemtt release in the root folder. This will populate the .hemttout/release folder with binarized PBOs and an archive in releases that you can redistribute. These handle like those of any other mod.

4. Important/Useful Information

  • hemtt pulls the version from addons/main/script_version.hpp
  • powershell -Command Remove-Item './addons/*' -Recurse -Include *.sqfc can delete every .sqfc file in the addons folder.

5. Feedback

  • This isn't a very professional tutorial. So you need some technical background to get it work. If there is anything we can optimize in this tutorial, then let us know on our Discord