Files
runicgateway.com/src/content/docs/docs/rust/index.mdx
wtclaude e0b2885cd7
All checks were successful
PR checks / checks (pull_request) Successful in 5m26s
fix(facts): quote 2026-10-30's releases, and the moderation that 1.21.0 brought
check:facts went red on seven facts after the day's releases: Module API
1.21.0, Module-Rust v0.7.0 (coreApi ^1.21.0), Module-uo v1.4.1,
Rust-Plugins v0.3.1, and the Rust bundle 2026.10.30 (plugin v0.3.1).
platform.json now quotes them, verified 2026-10-30.

Re-reading the pages that quote them: Module API 1.21.0 is report, block
and hide, so the Moderation page's Reports section described a queue
that no longer exists (forum-only, and "handling a report never touches
the content"). It now covers chat-line reports, the report snapshot,
Hide for everyone from the queue, and what members do for themselves
(Hide for me, Block, Account -> Blocked). The Rust docs' Feed row names
the chat-line menu. The app's menu is not mentioned: the app release
that carries it (v0.7.0) has not shipped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-30 17:30:39 -05:00

103 lines
7.0 KiB
Plaintext

---
title: The Rust module
description: What the rust module adds to a site, the pieces that connect it to a Rust server running Oxide or Carbon, and where each page in this group fits.
---
import platform from '../../../../data/platform.json';
The `rust` module turns a Runic Gateway site into a *Rust* community's site. It follows any
number of Rust servers, each running **Oxide** or **Carbon**. Everything in this group is
specific to it; the rest of the documentation is core, and describes the platform in core's
own words.
## The pieces
| Piece | What it is | Release |
|---|---|---|
| **The module** | [`Module-Rust`](https://gitea.whitlocktech.com/RunicGateway/Module-Rust) — every Rust screen on the site | {platform.releases['Module-Rust']} |
| **The sidecar** | [`Rust-Link`](https://gitea.whitlocktech.com/RunicGateway/Rust-Link), the **rust-link sidecar** — the only part of the bridge that listens on a network | {platform.games.rust.bundle.sidecar} |
| **The bridge plugin** | [`Rust-Plugins`](https://gitea.whitlocktech.com/RunicGateway/Rust-Plugins) — `RunicGateway.cs`, one file that runs unchanged on Oxide and Carbon, plus its optional helpers | {platform.games.rust.bundle.plugin} |
| **RunicNPC** | [`runicnpc-rust`](https://gitea.whitlocktech.com/RunicGateway/runicnpc-rust) — our NPC plugin, which the bridge drives for every NPC an event places. **Required** | {platform.games.rust.bundle.runicnpc} |
The sidecar, the bridge plugin and RunicNPC are installed together on the game host as a
**bundle** — {platform.games.rust.bundle.tag} today, speaking protocol
{platform.games.rust.protocol}. A bundle is an exact set CI has checked, never "the latest of
each". **One sidecar serves one Rust server**: a community running six servers runs six
sidecars, each with its own port, database and token, and the site holds six rows.
The bundle needs Oxide {platform.games.rust.bundle.oxideMin} or Carbon
{platform.games.rust.bundle.carbonMin} or newer, and the uMod plugins
{platform.games.rust.bundle.requiresPlugins.join(' and ')}. RunicNPC will not load without
Kits, so a server without it cannot place NPCs in an event.
## What the module adds
Install it from **Admin → Modules** like any module — the install manifest is the
`module-rust-<version>.json` asset on
[its releases page](https://gitea.whitlocktech.com/RunicGateway/Module-Rust/releases). It
needs Module API {platform.games.rust.module.coreApi}.
**For visitors**, at `/rust`: every server as it last reported itself, and a page per server
with six tabs.
| Tab | What it shows |
|---|---|
| **Feed** | Kills, chat, comings and goings, the server's own story, RunicNPC bosses, and Rust's world events — cargo, helicopters, airdrops — as they happen. A signed-in member can report a chat line, hide it for themself or block the player from its `⋯` menu, and staff can hide a line for everyone ([Moderation](/docs/administration/moderation/)) |
| **Leaderboard** | Per wipe: kills, deaths, NPC kills, structures, time played, and the chat titles players have earned |
| **Online** | Who is on right now |
| **Map** | The [live map](/docs/rust/the-live-map/): the server's own map picture, with layers |
| **Wipes** | Every wipe the site has seen. The next one, once the server has a wipe schedule, is in the page's header |
| **Clans** | Each clan's name, colour, score and members |
A server's **clans are the site's [Teams](/docs/administration/teams/)**, so a clan gets a
page, a feed for its members, and core's Team notifications. Who may see a clan's roster —
and who may see a named player at all — is an operator's choice, set on
[Who sees who is online](/docs/rust/who-sees-who-is-online/).
**For players**, at `/player/rust`: linking a Steam account, what they can do in game, their
NPC kills, coins and backpack. See [Linking Steam accounts](/docs/rust/linking-steam-accounts/).
**For staff**, seven screens in the admin sidebar, each covered in this group:
| Sidebar row | Page here |
|---|---|
| Rust servers | [Connect the site](/docs/rust/connect-the-site/) |
| Rust permissions | [Permissions and groups](/docs/rust/permissions-and-groups/) |
| Rust mod config | [Mod config from the site](/docs/rust/mod-config/) |
| Rust visibility | [Who sees who is online](/docs/rust/who-sees-who-is-online/) |
| Rust zone presets | [Events, zones and rewards](/docs/rust/events-zones-and-rewards/) |
| Rust NPC profiles | [NPC profiles](/docs/rust/runicnpc/npc-profiles/), in the RunicNPC subgroup |
| Rust NPC placements | [NPC placements](/docs/rust/runicnpc/npc-placements/), in the RunicNPC subgroup |
The module also adds a **Rust** section to each user's page under **Admin → Users** (their
linked Steam accounts, permissions, coins and backpack), Rust steps and triggers to core's
[Scheduled events](/docs/administration/events/), and Rust triggers to
[Engagement rules](/docs/administration/engagement-rules/) — *your base was raided*, *a server
wiped*, *a new kills leader* and more.
Its capabilities are {platform.games.rust.module.capabilities.join(', ')}.
Until a server is connected, its pages exist and report it as offline. That is the same
thing the public site does when a server goes down, and it is designed to be unremarkable:
every list, count and last-reported time comes from what the site stored.
## In this group
| Page | Read it when |
|---|---|
| [Install the bridge](/docs/rust/install-the-bridge/) | Setting a Rust server up: the installer, a Pterodactyl egg, or by hand |
| [Connect the site](/docs/rust/connect-the-site/) | Adding the server to the site, and the rest of its settings |
| [Verify the bridge](/docs/rust/verify-the-bridge/) | Proving the server, the sidecar and the site are really talking |
| [Linking Steam accounts](/docs/rust/linking-steam-accounts/) | Joining a player's Steam account to their site account |
| [Permissions and groups](/docs/rust/permissions-and-groups/) | Granting permissions and managing groups from the site |
| [Mod config from the site](/docs/rust/mod-config/) | Editing your plugins' config files without a file manager |
| [Who sees who is online](/docs/rust/who-sees-who-is-online/) | Deciding what the public sees: names, rosters, map layers |
| [Events, zones and rewards](/docs/rust/events-zones-and-rewards/) | Running scheduled events on a Rust server |
| [Optional plugins](/docs/rust/optional-plugins/) | What each supported uMod plugin adds, and two that catch operators out |
| [The live map](/docs/rust/the-live-map/) | What the map shows, and where the picture comes from |
| [Troubleshooting](/docs/rust/troubleshooting/) | Something on the game side is wrong |
| [sidecar.toml](/docs/rust/sidecar-toml/) | Changing the sidecar's binds, token, store or history |
| [RunicGateway.json](/docs/rust/runicgateway-json/) | Changing the bridge plugin's own settings and bounds |
| [Event kinds](/docs/rust/event-kinds/) | Knowing what the server can tell the site, and who may see each |
| [RunicNPC](/docs/rust/runicnpc/) | Our NPC plugin: placing NPCs, their profiles, and its API for other plugins — eight pages of its own |