---
title: "Forge Server Extension"
description: "Forge Server is an arma-rs extension for Arma 3 server-side persistence and domain services. It exposes game-facing commands and stores durable state in SurrealDB."
---

## Architecture

SQF modules call `forge_server` through `fnc_extCall`. Small requests use the
direct `callExtension` path, while large payloads are staged through the
transport layer.

```text
SQF module
  -> extension bridge
  -> domain command
  -> service layer
  -> repository
  -> SurrealDB
```

## Configuration

Copy `config.example.toml` to `config.toml` next to the extension DLL before
launching a Forge-enabled server. SurrealDB must also be running before the
server starts, and the values in `config.toml` must match that database.

```toml
[surreal]
endpoint = "127.0.0.1:8000"
namespace = "forge"
database = "main"
username = "root"
password = "root"
connect_timeout_ms = 5000
```

Players and mission designers do not need this file unless they are hosting
locally. Server owners and developers do.

For install links and Forge-specific setup steps, see
[SurrealDB Setup](/getting-started/surrealdb-setup).

## References

- [API Reference](/server-extension/api-reference)
- [Usage Examples](/server-extension/usage-examples)
- [ICOM Usage Guide](/server-extension/icom)
- [Framework Module Guides](/getting-started)
