forge/docs/README.md
2026-05-28 18:53:40 -05:00

4.3 KiB

Forge Documentation

Forge is split into a shared Arma addon, Arma client addons, Arma server addons, a Rust server extension, shared Rust domain crates, and web UI build tooling. This directory collects framework-level documentation for those pieces.

Arma Addon Layout

Forge now ships three Arma addon packages:

  • @forge_mod: shared client/server config classes required by Forge missions. It owns shared definitions such as Forge task Eden modules and the custom body bag vehicle config.
  • @forge_client: client-side UX, browser UIs, keybinds, and local player integrations. It depends on @forge_mod.
  • @forge_server: server-only runtime systems, extension bridge code, and authoritative mission/task execution. It depends on @forge_mod but should not be required by clients.

Mission requiredAddons should reference shared mission-facing classes through forge_mod_* addons, not forge_server_*, so clients can load and edit missions without installing the server-only mod.

Launch Prerequisites

Before starting a Forge-enabled dedicated server or local multiplayer test, server owners and developers must:

  1. Start SurrealDB.
  2. Place config.toml beside forge_server_x64.dll.
  3. Keep the config.toml SurrealDB endpoint, namespace, database, username, and password aligned with the running database.
  4. Load @forge_mod with the server's normal mod list and @forge_server as a server-only mod.

Mission designers and players do not need to run SurrealDB unless they are hosting locally, but they do need @forge_mod for Forge mission config classes. Players also load @forge_client for player-facing UI. See SurrealDB Setup for the full setup path.

Start Here

  • Framework Architecture: how SQF, web UIs, Rust services, repositories, and SurrealDB fit together.
  • Module Reference: module inventory for gameplay domains, extension command groups, client addons, server addons, and Rust crates.
  • Development Guide: how to add or change a module without breaking the framework boundaries.
  • Mission Designer Guide: how to place Eden objects, garage markers, and CAD-compatible task modules for playable missions.
  • Player Guide: how players use CAD, phone, bank, store, locker, garage, and economy services during missions.
  • SurrealDB Setup: where to get SurrealDB or Surrealist and how to connect Forge to it for local or live use.

Server and Extension Usage Guides

Client Usage Guides