Extension Guidelines

1. Setup

1.1 Requirements

  • Rust
  • cargo-make
    cargo install --no-default-features --force cargo-make

1.2 Recomendations

1.3 Rust Resources


2 Development

2.1 Code Standards

  1. Rust API Guidelines for naming should be followed
  2. All code should be formatted with cargo fmt
  3. All code should be free from errors and warnings
  4. Tests should be written where applicable

2.2 Local Development

Running cargo make debug will compile the project for x32 and x64 and move the built libraries to ace.dll and ace_x64.dll.

The library can be debugged with the following .vscode/launch.json file. Replace all sections in {} with the appropriate path.

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lldb",
            "request": "launch",
            "name": "Debug",
            "program": "{Path to Arma}\\arma3_x64.exe",
            "args": ["-mod=\"{Path to CBA};{Path to ACE development folder}\""],
            "cwd": "{Path to Arma}"
        }
    ]
}

Use the Run and Debug tab in VSCode to launch Arma, or Press F5.

2.3 Release

Release versions can be built using cargo make release.