49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
---
|
|
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)
|