Export the whole guide: select Print / Save as PDF, then choose Save as PDF in your browser's print dialog.

Rust Role Play — Server Administrator Guide

Help for customers installing, configuring and running a Rust Role Play server. Last reviewed: 27 October 2026.

Use this guide to set up a server, author its role-play content and help players. Configuration names are included so you can find settings; programming instructions are outside its scope. Defaults are starting points, not a complete server design. Features described as opt-in need explicit configuration. Test the activities you enable on a staging server before opening them to players.

Introduction and overview

The framework consists of Core, UI and a Persistence provider, with optional gameplay plugins built on it. Core and UI are framework components rather than plugin products. Persistence is both a framework component and a plugin product. This guide covers installation, configuration, content authoring and operations. The User guide explains the player journey and everyday activities.

Start with Getting started, then configure each installed module using the directory below. Use the linked setup references for detailed configuration and recovery procedures.

Framework and gameplay reference

Component or gameplay plugin Detailed setup and operations
RPCore Core settings
RPPersistence Persistence and readiness
RPUI Interface, help and profiles
RPOnboarding Arrival scenarios
RPProfessions Profession authoring
RPSkills Skills and progression
RPEconomy Currencies and payments
RPCrafting Recipes and production
RPBuilding Building and foundations
RPBots NPCs and services
RPQuests Objectives and rewards
RPFactions Membership and territory
RPPlaces Places and grid ownership
RPBusinesses Ownership and commerce
RPTraders Trader offers
RPStocks Market and broker
RPRelationships Character contacts
RPFarming Farm access and records
RPJustice Incidents and custody

Contents

Getting started

1. Prepare the server

Install the customer Core extension and module files using Customer server installation. The Core package supplies compiled DLLs; other module packages supply their merged plugin files.

Start with a working Rust dedicated server and its supported Oxide or Carbon installation. Use a matching set of release plugins and their supplied dependencies. For an Oxide layout, merged plugin files go in oxide/plugins and generated configuration files in oxide/config. Follow the installed framework's own plugin location on Carbon. Deploy the distributable plugins rather than individual development source fragments.

The server suite currently uses MySQL through RPPersistence. A Microsoft SQL Server (MSSQL) provider is planned as a drop-in replacement. One provider will be included according to the customer's initial selection; the alternate provider will be an optional purchase. MSSQL is not yet implemented. The framework and gameplay plugins must use the same Persistence service contract regardless of provider. Prepare a dedicated RP database/schema and credentials with the permissions required for the supplied schema and routine installation. Keep credentials in the server configuration; do not publish them in player help or staff screenshots.

Install the matching database changes supplied with your release. First startup creates feature tables, but do not assume that it installs every settlement routine needed for paid actions. Review the release database instructions before enabling purchases or automatic crafting.

2. Bring up the foundation

Use this practical startup order: RPPersistence → RPCore → RPUI → feature plugins. Wait for storage readiness before authoring or accepting player purchases. Open /rpadmin, check the Persistence section, and confirm that the expected module sections appear.

Set Core's WorldId to a stable, explicit name for this map generation, such as rp-main-2026-10. Use a new ID when replacing the world with an unrelated map. Places, Businesses and Traders have world settings and synchronize with Core where supported. Check those sections rather than assuming old settings now refer to the new map. Crafting's PhysicalOrderWorld is an explicit separate setting and must match the intended physical inventory generation.

3. Choose the gameplay modules

Module Administrator purpose Setup relationship
RPCore Character identity, command policy and action rules Shared foundation
RPBuilding Building recipes, grade upgrades and foundation allowances Requires Core and Persistence; custom ingredients use Crafting
RPPersistence Durable records and database readiness Shared foundation
RPUI Admin screen, HUD, shared pickers and player help Shared foundation
RPOnboarding New-player journey Standard journey needs Professions and Core identity
RPProfessions Work, eligibility, tiers, XP and payouts Skills links and paid selections need their providers
RPSkills Skill trees, owned ranks and supported abilities Optional profession, faction, quest and payment gates
RPEconomy Currencies, balances, transfers, exchange and item prices Required for configured monetary actions
RPCrafting Custom items, recipes, upgrades and physical orders Providers required for configured gates and paid orders
RPBots NPC contacts, movement, gathering and interactions Enable only interactions supported by installed providers
RPQuests Objectives and rewards Each configured gate/reward needs its owning module
RPFactions Membership, reputation, wars and territory Paid actions need Economy
RPPlaces Named places and grid ownership Stable world identity
RPBusinesses Place-bound businesses, staffing and commerce Places for locations; Economy for payments; Stocks for IPOs
RPTraders Bot-accessed offers, stock and purchases Matching trader bot, world and payment setup
RPStocks Digital stock instruments and broker Economy for trading; Businesses for IPOs
RPRelationships Consented character contacts Core identity and durable storage
RPFarming Farm work, livestock and crop provenance Core identity, Businesses access and ready storage
RPJustice Allegations, evidence review, warrants/custody records and corrective release Core WorldId/character identity; disabled until staff enable it

Feature modules can be omitted when the server does not use them. A missing optional bonus provider contributes no bonus. A missing provider for an explicit requirement or payment blocks that action; it should not make a paid or restricted action free.

4. Author in dependency order

  1. Establish currencies, wallet mode, prices and world identity.
  2. Create factions and at least one enabled, visible profession available to a new player. Keep a free entry profession if the arrival flow relies on it.
  3. Create skill trees and skills, then profession skill bindings and requirements.
  4. Create recipes, quests, places, businesses and trader offers.
  5. Create bots and attach valid quest, training, profession or trader targets.
  6. Finish onboarding last so every referenced item and bot already exists.
  7. Validate and save or publish each catalog using its owning screen. Check rejection messages and test player eligibility.

5. Walk the player journey

Use an ordinary test account with no staff permissions. Connect, finish the arrival stages, select a profession, create a character, open /help, then try one activity and its reward. Reconnect and verify progress. Test a restricted option with an ineligible character as well as an eligible one. Restart once to confirm catalogs and durable player state return.

For commerce, verify price, payment receipt and actual goods separately. For opt-in automatic crafting, include a full inventory and an interrupted order in the release checks. A quote or pending record is not proof of delivery.

Administration and common controls

Open /rpadmin to toggle the shared administrator screen. It requires server administrator access or rpui.admin. Individual feature actions can have stricter permissions; permission to open the shell does not authorize every destructive operation. Persistence reset requires server administrator access.

Select the module in the left-hand list. Press the header ? for that module's focused help. A missing help provider shows an unavailable message. The screen suppresses the normal HUD while open and restores it on close. Close popups before returning to gameplay.

Control or term Meaning
Enabled The definition can participate in its owning system
Visible The option appears in the relevant player list; visibility alone is not an access rule
Published A supported catalog definition has been released to players
Save Commits settings or a definition; wait for its success message
Validate Checks the definition before publication; repair the reported issue
Reload configuration Reads saved configuration; it may not restart every service
Reload plugin Restarts that module and can interrupt active interactions or orders
Stable ID / shortname / slug Identifier used by other content; changing a label does not update references

Use the item picker whenever provided. Rust items have machine shortnames such as wood and stones; display names alone do not identify them. A skin and custom display name can distinguish a variant, but not every consumer supports variant matching in the same way. Check the owning system before assuming a skinned vanilla item is a custom recipe item.

Core's Commands lists control visibility and permission policy. Review both. Hiding a command from player help is not a replacement for its access restrictions.

Core and persistence settings

Core

Setting Purpose and operational guidance
WorldId Shared world identity. Core accepts 1–48 lowercase letters, numbers, dots, underscores or hyphens, beginning with a letter or number. Set it before world-bound content.
SuiteVersion Configured suite version label; editing it does not install an update.
SaveIntervalSeconds Periodic Core saves; default 300 seconds, minimum 60. Do not confuse the interval with a guaranteed receipt for a purchase.
MaxNpcs Suite NPC limit setting; default 250. Also review Bots' separate MaxBots and each definition's active count.
TimeZone Server's configured time-zone setting; default UTC. Verify displayed times before using timed content.
CustomTokens Shared named text values for supported token templates. Keep values short and plain; invalid keys or markup/control characters are rejected.
StoryHooks Enabled rumors and leads for character-facing story content. Give each a unique ID, title, rumor and lead. These texts do not create a quest automatically.

In Core → Action Rules, enable each supported source and set strength from 0 to 3. Strength 0 removes that source's influence; 1 applies its normal factor; higher values amplify its effect. Start at 1 and compare actual gameplay before increasing it.

Current supported examples are Skills bonuses to tree damage (wood-damage, 5% per owned rank) and custom-craft profession XP (craft-xp, 3% per owned rank). Factions can reduce tree damage to 80% in authoritative enemy territory during an active war. Missing providers are skipped. A multiplier is not a new reward: multiplying zero XP still awards zero.

Foundation allowances

Open Building / Foundation limits to set the starting allowance, daily grant, earning mode, streak increment, multiplier, caps, gap behavior, optional unclaimed ownership counting, and admin bypass. Changes save immediately. Limits default to enabled, four starting foundations, and two per additional played day. Day one grants only the starting allowance. Rewards use Building's TimeZone and occur once per day played, including staying connected over midnight; offline days never generate catch-up grants.

Example Admin settings Allowance on days 1, 2, 3
Two per day Fixed daily; Initial 4; Daily 2 4 → 6 → 8
Increasing consecutive-day reward Streak +; Initial 4; Daily 1; Increment 1 4 → 6 → 9
Double each played day Allowance ×; Initial 4; Multiplier 2 4 → 8 → 16

Streak × also supports multiplying the daily grant. A missed day can reset the streak without removing past rewards. Starting allowance changes affect new enrollments; caps never confiscate existing grants. Skill perks and named rewards add to the allowance and do not compound with daily growth.

A base's square and triangle foundations count once against every player directly authorized on its controlling TC or with an authorized Rust teammate. Limits are individual. Losing that access frees the allowance; new authorized players receive the base's usage. Capturing an oversized base is permitted. At or above the allowance, players cannot add foundations, but existing pieces remain. Other construction is unaffected.

By default, foundations with no TC authorization are excluded. This also leaves cupboard-free building possible. The optional No TC: owner setting counts cupboard-free foundations against their placer/team; leave it off for strict authorization-only behavior. Players see usage in /help → Foundations and Profile. In Skills, assign Builder’s Allowance to a published skill for two extra foundations per owned rank, using the highest applicable rank.

Allowance progress saves through Persistence by Core WorldId. Keep that ID to preserve allowances across a wipe, or choose a new ID for fresh enrollment. Configure the ID before player enrollment. See Foundation allowances for all settings, earning examples, and operation details.

Foundation reward administration is available under Building / Foundation limits → Players. Inspect an enrolled player, enter an amount and reason, choose Grant/Revoke, and explicitly confirm. The screen shows permanent reward/adjustment receipts and recent daily earnings. Unconfirmed retries keep the same receipt ID. Revocation reduces allowance without deleting existing structures.

Quest editors now include a Foundations reward amount, shown in player previews and delivered through a durable foundation receipt via Core. Apply the matching quest-reward and completion baselines through Persistence before authoring these rewards. Old-world claims remain pinned to their original World ID. See Foundation rewards and administration for operation and upgrade details.

Persistence

Setting or action Purpose
Host, Port MySQL endpoint; defaults 127.0.0.1 and 3306
ConnectionDatabase Initial connection database; default mysql
SchemaName RP data schema; default rust_role_play. Servers sharing it can affect each other's data.
Username, Password Connection credentials. Set securely in configuration; credentials are omitted from the administrator display.
PersistentConnection Keeps the database connection open when enabled; default true
Reload Rereads saved settings
Reconnect Closes and reopens the connection; confirm readiness afterward
Load Sample Data Adds an idempotent tour with 10 labelled fictional players and examples across the installed RP modules

Reset Default Data deletes the entire configured RP schema, including characters, wallets, transactions, catalogs, businesses, bots and land. It affects all servers sharing that schema. It is a development/test reset, not a map wipe or a recovery button.

For a new test server, use Load Sample Data to populate the admin screens with varied professions, skills, progression and world records. The reserved sample IDs cannot collide with real Steam accounts, and repeated loads do not duplicate or overwrite rows. Use Reset Default Data afterward to remove the sample tour and return to a fresh database with only the built-in catalogs.

Back up any data you need first. Open the reset confirmation, verify its schema name, then confirm within 45 seconds or cancel. Reset is unavailable when ConnectionDatabase equals the schema being removed. It restores built-in skill and stock samples, reloads the suite and lets modules recreate/seed their records. Other configuration settings are retained. Check readiness and logs afterward; reset does not restore deleted player data.

Interface, help and player profiles

HudEnabledByDefault controls initial HUD visibility. Players use /hud to toggle and /hud edit to arrange panels. The compact interaction strip provides Help, HUD toggle and HUD editing controls. /help opens the journal and the available module help pages.

Interface setting Effect
MoveStep, ResizeStep Size of each HUD editor adjustment; default 0.025
Minimum/maximum panel width and height Bounds on player-resized panels, expressed as fractions of the screen
ConfigurationPanelAnchorMin / Max Position and extent of the HUD configuration strip
Theme colors and fonts Shared visual appearance; check contrast and legibility

In /rpadmin > Interface, the theme picker lists the saved server themes. Rust is the initial default, using charcoal surfaces, warm neutral text, oxide-red accents and native-style icon colors. Rust cannot be renamed, edited or deleted; clone it to customise the palette. On the first upgrade, the previously saved database theme (or existing configuration if no database theme exists) is preserved as weed paradise, including icon colors and fonts. Later restarts preserve the selected theme and do not recreate deleted presets.

Theme management requires RPPersistence and the installed RPUI schema. Presets and the active selection share one record in the existing RPUI.ui_theme table. Changes appear after persistence is verified; stale concurrent edits are rejected. The original legacy default row is retained for recovery. Configuration keeps the active startup appearance and a legacy backup, while MySQL owns the theme library. If storage is unavailable, restore the provider/schema and use Reload themes. Do not clear the library to recover a failed save. The SetUiTheme plugin API can update the active custom preset; its true result means a save was queued, and Rust remains protected.

Feature screens may also have their own theme, anchor rectangle and scroll settings. Anchor coordinates run from 0 to 1. RGBA color fields use four numbers from 0 to 1, with the last controlling opacity; bot label colors use their own hex-color field. Keep compact layouts usable at different resolutions.

Player Profile presents character information and progress as a role-play résumé. Contacts and notes belong in the journal. Profession, skill, quest and other help pages reflect the installed modules and current availability. Use these pages to check what an ordinary player can actually discover.

Optional gameplay plugins

Gameplay plugins can be omitted with the framework installed. Core and UI are framework components; the selected Persistence provider is a required framework component that is also supplied as a plugin product. These components are not optional gameplay plugins. Disabling a module removes its own services; content explicitly requiring its currency, profession, custom item, location or other authority remains unavailable. It does not automatically waive those requirements.

With RPCrafting absent, crafting uses native Rust behavior and Core does not apply crafting-speed perks. Onboarding skips stages for absent Professions, Bots and plugin-specific guides. Before unloading crafting on a live server, resolve pending physical-custody orders; retained escrow protections can outlive the plugin.

Onboarding

In /rpadmin → Core, use Onboarding required: ON/OFF (RequireOnboarding in the RPCore configuration). The default is ON when RPOnboarding is loaded. With RPOnboarding unloaded, or with this switch OFF, Core automatically creates missing characters using the player's display name and issues their initial government ID through the normal identity service. Identity settings and persistence must be ready for ID issuance. Existing characters, professions and issued IDs are preserved.

If RPProfessions is installed, automatic provisioning assigns the first eligible free profession in its configured sort order. Disabled, restricted and paid professions keep their normal requirements; if none qualifies, players remain without an automatic profession until an eligible one is configured. No selection fee is charged.

Turn the switch ON after installing RPOnboarding to require players without a completed run to start or resume the scenario, including players previously provisioned automatically. Their existing character and profession satisfy those stages without resetting progress. Turning it OFF hides the tracker and pauses the scenario while keeping saved progress for later. Skipping onboarding does not award scenario-completion achievements or pretend native Tutorial Island was completed.

To replace Rust's survival tutorial with the server's role-play tour, select RP template, validate and publish in the Onboarding editor. This disables Tutorial Island and introduces professions, character creation, the journal, quests, businesses and justice through the native-looking mission tracker. The optional Rust template restores the built-in island flow; see Built-in Tutorial Island setup and recovery.

Open the Onboarding section to edit the arrival scenario. The standard flow is Welcome → introductory activities → Profession → Character → Complete. The current stage appears as a non-blocking top-left mission tracker with live (current/required) objective counts. Players can use /onboarding hide, /onboarding show, and /onboarding action; /professions also opens the profession system.

Field Meaning
ScenarioId, Version Identity of the published journey; publishing moves every unfinished run to the new version
Stage ID Unique stable ID within the scenario
Title / Details Player-facing instructions; titles up to 80 characters, details up to 512
Type Welcome, Gather, Craft, Profession, Character, Guide, Complete, Objectives, Interact or NativeTutorial
Target / Amount Item shortname and positive count for Gather/Craft; enabled bot ID for Interact
Guide target journal, profile, commands, or a registered module ID such as RPQuests, RPBusinesses or RPJustice
Skin ID / custom name Optional Gather/Craft variant filters; leave unset when the basic item is intended
Objectives A multi-objective stage supports 1–8 Gather/Craft objectives with unique IDs and type/target combinations

A valid scenario has 3–32 stages, begins with Welcome, contains exactly one Profession stage before exactly one Character stage, and ends with exactly one Complete stage. Counts are 1–10,000; Interact uses one interaction. Validate before publishing. Publication forcibly resets onboarding for unfinished players: stage, objectives, character pointer and native tutorial witness are discarded and restarted on the new version. It does not delete separate profession or character records, and completed onboarding remains complete.

Ensure required resources are reachable and required recipes can be crafted. Do not require a profession-locked item before profession selection. An Interact stage must reference an enabled, reachable bot. Test the route without staff privileges and after reconnecting. Reset only the intended test player's run when testing changes; do not reset the whole schema.

Professions and skills

Professions

Create a profession with a stable ID, category, name, description and icon. Review Enabled, Visible, and InitiallySelectable separately. Configure tiers and selection rules before making it part of onboarding.

Setting group Effect
DefaultMaxProfessions Normal simultaneous profession limit; default 1
ShowLockedProfessionsInPlayerUi Whether players see unavailable choices
Selection rules Required rank/level, VIP, fee and currency, profession-limit override, or admin-only restriction
Tier order / XP thresholds Progression order and total accumulated XP needed; defaults Novice 0, Skilled 2,500, Master 10,000
Tier descriptions, perks and requirements Explain progression to players; verify that any promised effect has a supported gameplay consumer
Gameplay Enabled / XP multiplier Turns gameplay XP tracking on and adjusts awards
XP rules Match a profession, activity and optional item list. Empty item list matches every item for that activity.
XP per action / per unit Flat award plus an amount-dependent award; large gathered stacks can amplify per-unit rewards
Payouts Enabled / multiplier / currency Controls monetary rewards independently of XP
Payout per action / per unit Flat and quantity-based monetary rewards
Notification interval Rate of XP notices; zero disables notices
Save interval Periodic profession progress save; minimum 30 seconds

Gameplay rule activities include Gather, GatherBonus, Farm and Hunt. Avoid duplicate matching rules unless cumulative rewards are intended. Compare base gathering and bonus gathering when balancing.

Use /rpadmin → Professions with server administrator access. The alphabetical role list and player role/tier lists scroll to show all entries. The player HUD shows saved tier and XP and refreshes after progress changes.

Editor tab Administrative work
Role Enter a unique stable ID in the create field, then press Enter. New roles start disabled, hidden and unavailable for selection. Edit name, category, description, Rust item icon shortname, fee/currency, required rank/level, profession-limit override and flags. Open Skill bindings for the existing skills editor.
Content Add, edit or remove starting perks and tier perks/requirement notes; edit each tier description. Add missing content for an existing progression tier. Each list supports 32 entries of up to 160 characters; descriptions support 400. Requirement notes do not enforce eligibility. Perks need a consuming module to implement behavior; adding text alone does not grant an ability. Use selection rules and skill bindings for gates.
Progression Set the server profession limit, locked-role visibility, save interval and total XP thresholds for existing tiers. Tier names/order remain stable for referenced content.
Gameplay Set global XP/payout switches, multipliers, payout currency and chat interval. Select a role, add a disabled earning rule, choose its activity, enter item/prefab filters and amounts, then enable it. Select existing rules to edit or remove them.

Press Enter to apply a field in memory. Save Config validates and persists the complete configuration and skill bindings. Reload Config discards unsaved edits. If another admin changes settings or reloads the configuration, an older edit is rejected and the screen refreshes; retry with the current values. Current player progress and payment receipts are retained. Removing every earning rule leaves an empty list after reload; sample rules are not silently recreated.

Rule XP or payout is (per action + per unit × produced units) × multiplier. Matching rules accumulate. Item filters use the existing case-insensitive substring matching: a fragment may match several item names or animal prefabs. Comma-separated filters are alternatives; a blank list matches every item for that activity. Enter full shortnames when narrow matching is intended, but remember that the matching behavior is still substring-based. New rules start disabled with zero amounts. Gameplay Enabled governs this module's gameplay earning path; it does not disable independently authored quest rewards or admin XP grants.

Limits: 256 roles, 512 earning rules, up to 32 filters per rule; simultaneous profession limits 1–12; required levels 1–100,000; save interval 30–86,400 seconds; chat interval 0–86,400 seconds; positive XP multiplier and nonnegative payout multiplier up to 1,000,000. XP amounts/thresholds accept finite values up to 1,000,000,000,000; fees and per-rule payouts up to 1,000,000,000. Thresholds must not decrease across tiers. Existing earned XP/tiers are kept when thresholds change; subsequent XP evaluates progression. Non-finite thresholds pause automatic promotion until repaired. Use the header ? for the in-game walkthrough. Icon edits must use a Rust item shortname known to the server; blank clears the icon. Existing unknown icon values remain editable. Player help scrolls through all starting perks, tier notes/perks and enabled skill bindings.

Paid picker selections use the same exact-wallet confirmation as trainer enrollment: the player selects the role again within 30 seconds to confirm the quoted fee. A saved character, ready persistence and supported Economy settlement are required. Pending enrollment waits for the original receipt. Keep a free role available for the onboarding profession step that precedes character creation.

Skill bindings connect a profession to an existing skill. They can add tier, minimum profession XP, player level, faction/rank/reputation, quest completion and currency requirements. A binding advertises eligibility; it is not proof that the character owns the skill. Keep the entry path achievable and avoid circular requirements.

In Professions → Content, set Starting foundation bonus and Extra foundations at this tier. Tier amounts are incremental: a starting bonus of 2, Novice bonus of 1 and Apprentice bonus of 3 give an Apprentice 6 extra foundations. Bonuses stack across owned, enabled professions. Unknown tiers do not unlock tier bonuses. Players see configured perks and their active bonus in /help → Professions; Building’s Foundations help shows total allowance and usage. Removing/disabling a profession or lowering its tier recalculates the bonus without deleting foundations. Save Config retains these settings. See Profession foundation perks.

Skills

Skills → Ownership provides player inspection, reviewed rank changes, cascading prerequisite revocations, full respec and actor/reason audit history. Apply the supplied Skills ownership baseline through Persistence before using these controls. Optional Free rank upgrades, Paid upgrades and Player respec default to off. Help buttons prepare a review; /skillprogress confirm <operation ID> confirms it. Free upgrades keep profession/prerequisite gates, paid first-rank unlocks are unchanged, and respec refunds nothing. See Skill ownership and progression for setup and receipt recovery.

Paid next-rank upgrades require the supplied paid-rank database routines and exact-wallet Economy. In Skills → Catalog, select a skill, open Rank prices, enter a currency ID and amount for each target rank, then Save draft. Enable Paid upgrades in Ownership. Free upgrades take precedence when enabled. Players review through Help → Skills and confirm the displayed rank/price within 30 seconds using /skillprogress paidconfirm <request ID>. /skillprogress paidstatus recovers the original account receipt after interruption. Payment, one rank increment and the audit entry commit together; missing requirements, changed catalog/character, insufficient funds or expiry reject without charging. Rank 1 still requires acquisition; nothing is automatically granted. See Paid skill rank upgrades.

Create and publish a tree, then create its skills. Set each skill's tree, title, description, category, icon, maximum rank, enabled/published state and parent skills. Avoid parent cycles and unpublished prerequisites. Link only supported Skill Actions/abilities; descriptive text alone does not implement an ability.

Parent ownership and configured external requirements are checked when unlocking. A displayed preview is not a completed unlock, payment or active effect. When training through a bot, the Skills/Professions systems still decide requirements and costs.

The Skill actions picker includes Node Indicators, Instant Node Harvest, Instant Tree Harvest, Resource Finder, and Speed Running. Assign an action, then open its Settings button. Configure duration, cooldown, range, selected targets, or running speed as appropriate, and save/publish the skill and tree. Existing catalogs are preserved; new/reset sample catalogs include example definitions. Ownership is still required before activation.

Defaults are 15 seconds with a 30-second cooldown; resource actions use 100 metres and Speed Running uses ×1.25. Authoring and final modifier bounds are duration 1–120 seconds, range 1–250 metres, cooldown 0–300 seconds and running speed ×1–×2. Node targets are stone/metal/sulfur. Resource Finder supports mushrooms, corn, pumpkins, potatoes, hemp and berry colours; player-owned planter crops are excluded. Optional plugin modifiers can alter duration, range, cooldown and speed independently when an ability is activated.

Players activate through Special Skills, /skillbar, or /skill <action> [target]; for example /skill node-indicator sulfur, /skill instant-node metal, /skill instant-tree, /skill resource-finder mushroom, and /skill speed-run. The private radar/list shows every matching resource within range. /skill stop <action> closes/cancels an effect without shortening its lockout. Only one resource viewer is shown at a time. Viewer range follows the player; instant harvesting uses an area centered on activation and still requires a normal tool hit within ordinary reach. Native tool wear, gathering bonuses, delivery and XP hooks still apply, including the completion pass; per-action XP can fire for both the initial gather and completion. Speed Running boosts grounded sprinting forward, not walking/crouching/swimming. Effects stop on expiry, death, sleep, wounds, disconnect, ownership loss or catalog replacement; current-session cooldowns remain through reconnect/catalog edits. See Resource and running skills for setup examples and the full release checks.

The picker also includes twelve timed actions: Hunter's Sense, Efficient Gatherer, Tool Care, Field Medic, Farmer's Touch, Sure Footed, Deep Diver, Weatherproof, Craft Focus, Mechanic, Pathfinder, and Team Rally. Each has its own duration and cooldown. Open Settings to set its effect multiplier, range, speed or animal filters where applicable. Default effect is ×1.25: +25% yield/healing/repair or 20% less damage/wear/oxygen loss/craft duration. Effect supports ×1–×3. For example, /skill deep-diver activates breath/swimming bonuses; /skill hunters-sense wolf finds wolves. Assign visible bar slots in /skillbar edit; the Special Skills panel scrolls through every owned action.

In Core → Action Rules, new Skills rows control gathering, tool wear, healing/revives, crop yield, fall/cold/heat damage, oxygen loss, native crafting time, repairs and team protection. Startup adds missing rows while preserving existing toggles and strength settings. Bonuses require successful native actions; item consumption, costs, workbench checks and repair/medical restrictions still apply. Craft Focus affects native player crafting rather than custom paid orders. Farmer's Touch improves harvest yield rather than growth speed, Field Medic improves restored health rather than animation speed, and Weatherproof reduces cold/heat damage rather than changing global temperature.

Pathfinder requires a loaded quest-navigation provider and an unfinished Explore destination inside its range (250 metres by default); it shows distance and compass bearing without advancing quests. Team Rally requires a Rust team and protects its nearby members against combat damage (20 metres by default); the strongest rally wins, and changing teams ends the caster's aura. Hunter's Sense excludes owned animals and shares the private viewer slot with resource finding and Pathfinder. See Extended special skills for the full action list, settings and gameplay limits.

Fourteen additional actions add Fisherman's Instinct, Salvager, Merchant's Eye, Negotiator, Repair Specialist, Tracking, Animal Handler, Rescue Carry, Scavenger's Sense, Surveyor, Business Insight, Instructor, Quiet Steps and Pack Mule. Configure them in the same picker/settings workflow. Pack Mule adds an extra-slot setting; Repair Specialist adds an administrator-authored fee/currency. Activate the owned skill, then use /skillservice rescue|repair <Steam ID> or /skillservice instruct <Steam ID> <skill ID> to offer a nearby player a service. The recipient must accept; paid instruction requires a separate price confirmation. /skillservice release ends a carry and /skillrepair status checks an interrupted repair without charging again.

Enable a merchant's discount limit using administrator console rptraders.negotiation <trader ID> <0–25 percent>; missing policy means no discount. Install the updated trader settlement/checkout SQL before enabling discounts. Pack Mule preserves occupied overflow and drains it after expiry; automatic intake pauses while overflow remains. Paid repairs journal original equipment and exact-wallet receipts; uncertain native delivery is held for operator review. See Social and utility skills for schema deployment, provider contracts, recorded production/cost limits and recovery controls.

For movement abilities, explain duration, cooldown and limits in player-facing text. For Multi Jump, make the allowed extra jumps and cooldown clear and verify the HUD indication. Test passive bonuses on an owned, published skill and compare with an unowned character. A skill's maximum rank is different from a profession's XP tier.

Profession crafting access and material efficiency

With Professions and Crafting loaded, open /rpadmin → Professions, select a profession, then select its Crafting tab. Add item opens the shared picker filtered to enabled craftable vanilla items and RPCrafting custom definitions. The list contains the items assigned to this profession; unassigned items keep their existing crafting rules. An assigned item requires at least one of its configured professions at the required level. Additional existing Crafting requirements, such as faction and station requirements, still apply.

For each item, set Minimum profession level and Must learn recipe. With learning off, reaching the level grants access through Crafting's recipe book. With learning on, the player must also explicitly unlock the recipe in Crafting or, for a vanilla item, know its native blueprint. A custom item's DefaultUnlocked setting does not count as explicit learning when this switch is on. The recipe book can start assigned vanilla recipes without permanently granting a native blueprint. Native crafting and recipe-book queues enforce the same profession gate before taking materials.

XP per level sets this profession's numeric level spacing: level = 1 + floor(profession XP / XP per level), capped at 100,000. The default is 1,000 XP per level. Level 1 starts at 0 XP; existing named tiers and XP records are unchanged. Changing this interval immediately changes effective crafting levels. The same numeric level is now included in profession-state API snapshots.

Add Usage reduction rows with a level and percentage, for example level 2 → 2%, level 5 → 3%, level 10 → 8%. The highest reached level row supplies that profession's reduction; percentages do not add together. Players with several eligible professions receive the best single reduction. The player must meet the item's minimum craft level and any learning requirement to receive its usage perk. Disabled professions, missing custom definitions or unavailable providers contribute no discount.

Usage reductions apply to that material in RPBuilding placement and grade upgrades, for both native construction costs and custom building recipes. They change materials consumed when building, rather than the ingredients needed to manufacture the material. Cupboard upkeep, repairs, tools, ammunition and unrelated item uses keep their existing rules. Costs are rounded up and remain at least one per required item/skin group. For example, a 20% reduction makes 10 cement cost 8; an 8% reduction on 10 still costs 10, while an 8% reduction on 100 costs 92. Affordability uses the reduced amount and payment takes exactly that amount. No materials are refunded or fabricated to implement the discount.

Press Save crafting to persist this profession's entire list and level spacing. This is separate from the profession's Save Config button. Discard / Reload reads the current saved list. Rules live in MySQL through Core/Persistence; saves use an exact previous-policy check and readback so a stale administrator cannot overwrite a newer edit. Failed or uncertain saves require a reload. Persisted gates continue to reject configured recipes when Professions is unavailable; optional material discounts fall back to full costs. If policy storage is still loading, crafting access stays closed until it is verified.

Economy

Create currencies before assigning fees or rewards. The default catalog includes cash, scrap and crypto, but each has its own wallet and rules.

Currency field Meaning
ID / name / symbol Stable identifier plus player-facing labels
Enabled / default currency Available market and fallback currency for supported actions
Decimal places Precision from 0 to 4; do not change precision on populated wallets without a reviewed migration
Starting / minimum / maximum balance Opening funds and balance bounds; changing starting funds is not a grant to existing accounts
Transfers enabled / minimum amount / fee percent Per-currency player-transfer policy; the Wallet transfer switch also applies
Physical enabled / item shortname / skin / display name Inventory representation where supported; a matching-looking item is not automatically credited money
Wallet save interval Periodic wallet save; minimum 30 seconds
Wallet.UseExactUnitWallets Selects the exact-unit wallet path; default false. Reload the plugin to change modes.

Wallet modes use different transaction paths. Use the mode required by the matching release and database routines, and validate the actions your server exposes before opening them. Older read-mode notes are historical: subsequent work adds individual exact transaction paths, but legacy synchronous money calls and physical currency conversion remain restricted in exact mode. Do not toggle modes on a populated live server as a quick repair. Currency definition edits are locked while exact mode is active.

Prices and exchange

Pricing Enabled controls central buy/sell lookups. DefaultItemValue is the fallback base value; currency multipliers adjust that fallback. BuyMarkupPercent increases the price a player pays, and SellReturnPercent controls the share paid back on sale. With base value 100, markup 15% and return 60%, the normal buy quote is 115 and sell quote 60. These prices apply to consumers using Economy pricing; a trader offer has its own configured offer price.

Create item-specific values in Economy's price editor. Vanilla entries use the shortname; supported variants include skin and display name. A value of -1 blocks buying and selling in that currency. Verify both the base entry and a variant rather than assuming every skinned copy has the same value.

Exchange is off by default. Each enabled pair has source currency, target currency, rate, minimum source amount and fee. One source unit buys Rate target units before fee handling. A negative pair fee uses the global fee. AllowInverseRates permits an inverted pair when supported. Check rounded quotes in both directions and ensure a round trip cannot generate money.

For interrupted transfers, recover the original request with /paystatus and inspect the terminal receipt before initiating a replacement. Do not compensate a player solely because a callback timed out.

Crafting and custom items

Author custom items in Crafting's editor. Definitions and modifiers are database-backed; tuning settings remain in configuration. Do not expect editing an old catalog copy in configuration to replace the live catalog.

Item field Gameplay meaning
Shortname Stable custom identity, such as rp.prospector.pickaxe; preserve it once items exist
Parent shortname Vanilla item used as the basis of the custom item
Name / description / category / sort order Player-facing identity and organization
Skin ID Appearance; does not by itself supply gameplay bonuses
Maximum stack / repairable Stack capacity and repair eligibility
Enabled / craftable Availability and whether players may produce it
Default unlocked Recipe is known without a separate unlock
Workbench level Required nearby workbench capability
Ingredients Required shortnames and amounts; review supported skin/name behavior for the chosen crafting path
Unlock requirements Conditions and cost for acquiring the recipe
Craft requirements Conditions and cost checked for each craft after unlock
Profession XP Per-successful-craft XP map on supported reward paths

Profession requirements accept at least one of the listed professions; an empty list does not require a profession. Additional gates include tier/level, faction, permission, VIP and admin-only. Economy is required for nonzero currency costs. An unlocked recipe can still be blocked by its craft requirements or workbench level.

CostMultiplier adjusts configured crafting currency costs. CraftXpMultiplier adjusts supported profession XP awards. ShowLockedRecipes keeps unavailable recipes visible with requirements. Save interval has a 30-second minimum.

Modifiers are separately authored upgrades. Set allowed categories/shortnames, explicit exclusions, custom-items-only if needed, maximum stacks, ingredients and requirements. Condition multiplier changes durability; suffix and skin identify the upgrade. Free-form stat entries need a module that actually applies them. Do not promise a gathering bonus merely because a stat label exists.

Physical orders and automatic production

These controls are opt-in and default off:

Progression setting Effect
EnablePhysicalOrderProposals Enables quoting and proposing physical orders
EnableAutomaticProduction Enables the automatic payment/material/production workflow
EnableNativeCustody Enables the built-in protected inventory custody path
PhysicalOrderWorld Explicit world-generation key for physical orders
PhysicalCustodyPlugin Empty selects native custody when enabled; a nonblank value names a compatible external provider

For built-in automatic production, enable the three switches, set the explicit world key and leave the external provider name empty. Install the matching crafting database routines, including the native custody update, and reload after changing mode/world. Native production currently supports ordinary quoted items with exact shortname/skin; condition, nested contents, custom names, text and special instance data are outside that path's supported item set. Do not assume every authored custom recipe qualifies.

A quote is read-only. Proposal confirmation alone does not start production. In automatic mode, Start crafting reserves funds/materials and starts the saved order. It then holds ingredients, waits for the craft time, produces output, captures held payment once and delivers to the original character. Free orders do not require an Economy payment.

Full inventory can pause delivery. Ask the player to make space; output is not dropped as a fallback. Disconnects, reloads or uncertain item changes can stop an order for review. Restart does not automatically replay physical actions or reconstruct missing goods. Automatic item delivery also does not guarantee profession XP: this path's completion rewards remain a separate concern.

Player tools: /craft, /craft unlock <shortname>, /craft status, /craft quote <recipe> [quantity], /craft orders, /craft order [id], /craft ordercancel <id> and /craft orderack <id>. Cancellation is subject to order state; it is not permission to erase uncertain custody. Acknowledgment records receipt handling rather than granting another output.

For an interrupted native order, retain its order ID and inspect with rpcrafting.native.inspect <order> <user> from an authorized console/admin context. Preserve the inspection, database records and world save. Do not delete protected containers, unlock consumed inputs or grant replacement goods until the actual item and payment state has been reviewed.

Building and foundation limits

Install the matching RPCore and RPBuilding versions together. RPBuilding now owns foundation allowances, earning rules, placement restrictions, player adjustments and foundation help. Existing skill/profession bonuses and quest rewards continue through Core's compatibility API. On the first successful startup, Building imports the old Core foundation settings and time zone once. Subsequent changes belong in Building. Existing allowance and immutable reward records retain their permanent database names and World ID scope; no data copy or reenrollment is required.

Open /rpadmin and select Building. The catalog shows the server's building-plan pieces with their native images, including square/triangle foundations, floors, walls, frames, roofs and stairs. Select a piece and a grade, then Add ingredient. The shared picker includes registered custom items from RPCrafting as well as vanilla items. Set the quantity for each ingredient in the recipe rows, and press Save override. Unsaved edits do not affect players. Discard edits reloads the active recipe, and Restore vanilla removes that piece/grade override.

For example, a Wall / Wood recipe can require 4 dimensional lumber and 10 nails; Wall / Stone can require 6 concrete. Define those custom items in RPCrafting first, then select their actual custom definitions in Building. Names and quantities are server choices; these examples are not automatically seeded items or recipes. Each piece and target grade has an independent recipe. Twig controls normal building-plan placement; higher grades control upgrades. Overrides charge the full authored recipe, without adding the native wood or stone cost. Same-grade skin changes retain native behavior. Pieces and grades without an override use native costs.

Recipes require 1-16 ingredient rows with positive whole quantities up to 1,000,000 per row. Building takes ingredients from the main inventory and belt, with exact custom item IDs and any selected skin restriction. A vanilla parent item cannot substitute for a custom item. Affordability checks do not take materials. Failed placement or insufficient ingredients do not charge a partial recipe. A missing/disabled custom definition blocks its configured recipe. Native building privilege, placement, damage cooldown and skin ownership checks still run. This feature changes placement and upgrade costs; it does not change cupboard upkeep or repair recipes.

Recipes are server-wide definitions stored in MySQL through RPPersistence. A save or removal becomes active after database readback confirms it. Building pauses construction while recipe storage is unavailable or loading; pending saves pause their affected recipe. Keep the database and RPBuilding configuration in backups. Foundation allowances remain scoped by Core's World ID. Use Foundation limits in Building to configure starting allowances, daily/streak earning and per-player grants or revocations. Existing allowances and earned amounts remain intact when the starting allowance changes.

Before enabling overrides on a live server, verify images and layout in the Rust client, select custom lumber/nails/concrete, and test placement and upgrades with only those materials. Confirm exact consumption, missing-material rejection, vanilla behavior without an override, foundation limits, a restart and a temporary Crafting/Persistence outage. Compilation and isolated tests do not replace this client/server acceptance pass.

Bots

Create an NPC definition in Bots, give it a stable ID, name, role and greeting, then choose an anchor and behavior. Start with one active bot and test before increasing its count.

Settings Effect and setup advice
ServerId Server identity for bot data; use a deliberate value in multi-server setups
MaxBots Global Bots limit; default 24
Interaction range / respawn seconds Default 3 metres and 90 seconds
Recorded voice playback / native brain Explicit feature switches; defaults false. Enable only the intended supported mode.
Quarantined IDs Bots withheld from normal activity for diagnosis; investigate before releasing them
Enabled / maximum active / names Availability, copies and name pool; provide enough names for the count
Fixed / monument / prefab anchor Spawn location strategy; multiple monuments use available monument locations
Home radius / Stay, Wander, Patrol Allowed movement area and route choice
Walk, Run, Sneak, Crawl, Duck Selected gait options; test the intended terrain
Sit Off / Allow / Force Whether a usable seat is optional or required
Flee / health threshold / social Reaction and ambient interaction behavior
Initiative, resource focus, sociability, running, hunting, tree/node focus 0–100 preferences; they do not guarantee a valid reachable target
Gather item list / trees / nodes / carcasses Resources the bot may seek; enable the matching source type
Loot item list Items allowed for looting; separate from gathering
Lootable Whether players can loot the bot

Use the equipment picker for compatible wearables and the six belt slots. Set skin and quantity where appropriate. Equip a usable hatchet for trees and a suitable mining tool for ore. Selecting wood or ore without the matching tool, reachable target and enabled source does not create a working harvesting route.

Use Move Here, Go To Bot and the waypoint viewer to check anchors and patrol routes. Monument-relative fixed positions support relocation with the monument, but verify them after a wipe. A bot's position must be navigable; putting it inside a building, terrain or an inaccessible chair can stop movement.

Configure interaction choices as Talk, Quest Offer, Balance, Price Check, Train Skill, Join Profession or Browse Goods. Set the target ID from the owning module. Training requirements come from Skills/Professions; a bot does not bypass a fee or prerequisite. Browse Goods must refer to the trader identity used by the offers.

Labels have an enabled switch, token template, color and optional faction visibility filter. Use the token picker rather than guessing names; {bot.name} is the basic name token. A faction-only label needs the correct faction. Recorded audio has clip, minimum/maximum interval, radius and proximity-entry behavior; use an interval that does not overwhelm nearby players.

Quests

Create each quest with an ID, name, description, category and objectives. Set enabled/visible separately. Configure repeatability, repeat cooldown and time limit: zero disables the corresponding timer. Global MaxActiveQuests defaults to 5; locked-list visibility is configurable.

Objectives use the target required by their type: item shortname, entity/prefab, monument or supported interaction target. Distinguish Gather, Collect, Loot and Craft instead of assuming merely holding an item completes all of them. Set positive counts and clear objective descriptions. Test the actual activity through which players will complete the quest.

Requirements can include faction/rank/reputation, profession/tier, VIP or admin-only. Rewards can include currency, profession XP, faction reputation and items. Keep those providers installed if the authored quest depends on them. Currency reward multiplier, profession XP multiplier, profession perk bonus and faction perk bonus can increase the configured reward; check the final eligible-player result when balancing.

The save interval controls periodic progress persistence; expiry checks default to 30 seconds. Attach a published/available quest to a bot using the quest's ID. Objective completion and reward delivery are distinct states. Review a pending reward before repeating it or granting manual compensation, especially for physical items.

Factions

Set faction/member limits, player-created-faction policy, creation cost/currency and rank order. Seeds define initial faction IDs, names, tags, descriptions, NPC status, enabled state and open-join policy. Keep rank order consistent with quest and skill requirements.

Reputation settings define bounds, starting reputation, decay enabled and daily amount toward zero. Maintenance interval controls decay and war checks; default 600 seconds. War settings include enabled, declaration fee/currency, required rank, automatic truce hours and cooldown before another war. Defaults are 72-hour automatic truce and 24-hour cooldown.

To create a spatial territory, select an enabled faction and use Claim 100m Here at the intended center. Overlap with another enabled faction is rejected. A named influence zone without spatial bounds does not establish an owner for location-based action rules.

Faction territory and RPPlaces grid land are separate records. Assigning a grid to a faction does not automatically create a circular territory or activate the war tree-damage modifier. Neither should be assumed to enforce Rust building protection unless a separate installed system explicitly does so.

Places, land and businesses

Places and grid ownership

Open /rpadmin > Places. Use Setup for the required steps, Place manager for named sites, Land for optional grid ownership, and Settings for world identity and refresh timing. The admin header ? opens the same setup and troubleshooting guidance in-game. Editing requires a server administrator or rpplaces.admin; access to RPAdmin alone does not grant Places editing permission.

Required setup: create, review, publish

  1. Check Setup before creating content. Set a stable shared Core World ID for this map generation. Load RPPersistence and apply the RPPlaces baseline through persistence administration. Refresh data retries loading places and grid owners and shows what remains unavailable.
  2. Stand at the centre of the site. Creation and Move centre here use your actual position, including height.
  3. Place manager > New place: enter a unique slug, a kind and a public title. Slugs contain 1-40 lowercase letters, digits or hyphens and begin with a letter or digit. Titles contain 1-80 visible characters. Kinds are farm, food, courier, market and civic. Press Enter after editing an input so its value is applied, then click Create unpublished here.
  4. Review the saved site. New places start unpublished, with a 12 m service radius. Select the saved row, check the centre, use Move centre here if needed, and set Service radius to 2-100 m with Save radius. Save title updates the public name. The slug stays fixed. Use Kind to choose a different category and Save kind to apply it.
  5. Click Publish. An unpublished site is hidden from player listings and unavailable as an enabled business location. Unpublish hides it again and makes place-bound services unavailable until it is published again. Successful and unconfirmed saves appear in both the admin screen and chat; after an unconfirmed save, refresh and inspect the saved state before retrying.
  6. Verify in player Help > World places. Walk within 250 m of the centre to discover it. A listing shows the distance and whether you are inside its much smaller service radius. Refresh nearby recalculates the nearby list for your current position. /places gives a short chat list.

Discovery range and service radius are different. Seeing a site within 250 m does not mean you are close enough to perform a place-bound business action. Walk inside its configured 2-100 m service radius. Business ownership, job, profession, inventory and payment requirements still apply.

A published place is a location, not a business. To offer commerce, separately create or bind a business in Businesses > Manager > New, choose the published place, assign an owner or server operation, and activate the business. The place's kind categorizes its location; it does not create a shop, stock inventory, set prices or grant staff jobs. Players can open Businesses directly from World places Help when the business plugin is installed.

Chat equivalents (administrator permission required):

/rpplace add market-square market Market Square
/rpplace radius market-square 15
/rpplace enable market-square
/rpplace move market-square
/rpplace title market-square Central Market
/rpplace kind market-square civic
/rpplace disable market-square
/rpplace list

Optional grid ownership

Land assigns an owner to a separate 150 m grid cell. Columns begin with A at the west edge, with rows numbered from the north. Enter a valid grid on this map or click Use my grid. Select the owner type and enter its ID and a readable display name, then Assign owner. The screen shows the recorded owner. Clear selected grid asks for confirmation before removing that owner record.

Owner type Required ID and additional checks
Player Numeric player/Steam ID; a readable owner name
Faction Existing faction ID; RPFactions must allow land claims for that faction and have room under its configured claim limit
Server Stable key such as civic; a readable owner name

Grid ownership records do not define a purchase price, transfer money, grant building permissions, or establish a player acquisition policy. A cell with no recorded owner is not automatically free to claim or build on. Named places, grid owners and faction territory are independent records; one does not create the others.

/rpland set G5 player 76561190000000000 Character Name
/rpland set G5 faction settlers Settlers
/rpland set G5 server civic Town Square
/rpland show G5
/rpland clear G5

Faction territory circles on Rust's map use RPFactions influence-zone bounds. In Factions, Claim 100m Here creates a bounded territory. Assigning a Places grid to a faction does not create that map circle. Named claims without coordinates are not drawable. See faction map settings. The former custom land-marker panel remains removed; the Places Land tab edits ownership records.

Settings and troubleshooting

What you see Required action
No World ID or the wrong map's sites Set/check the shared Core World ID in Settings. Changing it switches which saved place and land records are loaded; keep Businesses aligned too.
Place or land storage unavailable Load RPPersistence, apply its RPPlaces baseline, then use Refresh data. Wait for loading to complete before saving.
Unpublished site or invisible player listing Select the site and Publish, then stand within 250 m and refresh World places Help.
Site is listed but a service says you are outside Walk inside its service radius; check the centre and radius in Place manager.
Published location offers no service Create/bind and activate the business separately in Businesses; check the business's own requirements.
Faction land assignment rejected Check the faction ID, land capability, claim allowance and Factions availability.
Grid owner exists but no faction map circle Configure a separate bounded claim in Factions.
Save unconfirmed Refresh the list/ownership and inspect the saved values before repeating the action.

Refresh interval defaults to 60 seconds, bounded to 30-300. Settings save when you submit the field with Enter. Reload RPPlaces to apply a changed recurring refresh interval; Refresh data requests an immediate read without changing that interval. Other servers' edits can take until the next refresh to appear.

Businesses

Create the place first, then its business with a stable slug, title, kind and place reference. Assign ownership and review active status. Manage staff and owner access through the business controls; a named place alone does not create a business or its stock.

Review stock intake, listings, customer orders, courier custody and payment states as separate steps. A reserved unit is not a completed sale, and a courier handoff is not proof that the customer received it. Investigate interrupted deposits and deliveries before returning goods or paying twice.

Business settings include World ID and refresh interval plus IPO valuation inputs: per-kind base value, active-staff value and stocked-unit value. Defaults are 25,000 base, 10,000 per active staff member and 5 per stocked unit. Listing bonus defaults to 3%; owner buy cooldown defaults to 24 hours. These affect the initial IPO, not later market prices.

Traders and stocks

Traders

Create offers under the trader ID used by its bot's Browse Goods choice. An offer specifies offer ID, item shortname, skin, units per offer, currency, price, stock and enabled state. Use the same world context. Players visit the configured bot to buy; the Traders help page shows offers and current stock.

Confirm both units per offer and quantity selected. Offer price is separately authored from Economy's fallback item value. A stock count or successful payment does not prove physical delivery. Use the delivery review controls for interrupted purchases and preserve the original order.

Stocks

Stocks are fictional digital assets, traded through /stock. They are not physical inventory items or direct ownership of a business.

Instrument setting Effect
Ticker / name / story Stable market identity and explanation
Published / halted Market availability and trading suspension
Risk Descriptive risk label; review actual tuning too
Starting / floor / ceiling price Initial value and price bounds
Average daily return Configured price drift, not guaranteed profit
Volatility / mean reversion per tick Variation and pull toward the configured reference behavior
Update minutes Price-update cadence
Spread / fee percent Buy/sell difference and transaction charges
Maximum shares / per-player maximum Market and holding limits

Players use /stockstatus to recover an interrupted trade and /stock receipts to inspect history. /stock candles <ticker> [15|60|1440] summarizes recorded price samples. Candles are not executed-trade volume, and missing samples remain gaps.

An active business can list once. The owner requests /businessipo quote <slug> <total shares> <owner shares> and confirms with /stockipo <slug> <ticker> <total shares> <owner shares>. Valuation comes from server settings and actual business activity. At least 49% must be public; owner holdings cannot exceed 51%, including later purchases.

Current behavior: the owner retains the chosen shares without paying and receives the public float's starting value plus the configured bonus. At value 100,000 with 100,000 shares and a 50% public float, the default 3% bonus produces 51,500 cash plus 50,000 retained shares. Subsequent public purchases pay the server market, not the business owner. Owner repurchases obey the cooldown and 51% cap.

The IPO is a one-time snapshot. Later business staffing/stock does not reprice the issued instrument, and market price changes do not alter business ownership or inventory. Do not promise future market features, such as splits, as existing administration controls.

Relationships and contacts

Use Relationships for player-character contacts and consented requests. Bot contacts and player contacts support journal use but are not the same as faction membership or business employment. Review the contact inbox and visibility rules when helping a player who cannot see another character. Personal notes are journal content, not instructions that change the other player's profile or permissions.

Farming

RPFarming records business-authorized work, native livestock registration and lineage, husbandry and crop provenance. Install the matching Farming schema and wait for storage and animal snapshots to be ready. Core provides character identity; RPBusinesses authorizes work; profession XP needs its configured provider.

  1. Create the farm's place and business. Give the intended character current ownership or an accepted staff role.
  2. As an ordinary test character, run /farming work <farm business> using its slug. Missing Business authority or unready records must block access.
  3. Look at a supported cow or sheep within interaction range and use /farming register. Inspect with /farming inspect and list the herd with /farming herd.
  4. Test supported native husbandry/crop activity and inspect records. Verify configured Farmer XP separately.
  5. End the session with /farming release. Recheck after access changes and reconnecting.

Sessions expire and current business access is revalidated for recorded work. Character changes or access loss can invalidate a session. Durable registration does not recreate a missing native animal after a world replacement.

Authorized staff can use /rpfarming reload to reload storage and entity indexes; it requires server administrator access or rpfarming.admin. For missing records, inspect schema readiness, entity matching, character, business slug and access. Preserve animal/business IDs when investigating lineage or duplicates. Validate native farming on the matching Rust build before opening it to players.

Justice and incident review

RPJustice starts disabled. Set Core WorldId, open /rpadmin → Justice → Settings, and enable it when staff are ready. Configure death capture, player-report cooldown, maximum warrant duration and maximum custody duration. The default maxima are 1440 and 60 minutes. Provider lists use comma-separated exact names of trusted installed server plugins; leave them empty until an adapter is intentionally configured. Refresh returns to the case list.

A recorded death or /justice report <kind> <subject Steam ID or 0> <reason> is an allegation, never a finding of guilt. Kinds are death, theft, contraband, raid and other. Theft/contraband/raid detectors are future integrations; players can report them now. The report command prints an ID. If submission is uncertain, use /justice retry <report ID> <kind> <subject> <same reason> rather than filing it again.

Staff select a case, investigate, add evidence references, then issue a reasoned warrant if warranted. Evidence references must be reviewed by staff; a reference does not prove the allegation. Warrant and custody actions require a positive duration within the configured maximum. Pursuit records who is pursuing the warrant. Custody records a release deadline; this first slice does not teleport, imprison, restrict movement, confiscate items or charge fines. These effects need separately reviewed owner integrations.

Choose an action, enter its reason and press Confirm action. Every successful action records the staff actor and before/after history. Repeated confirmation of an unchanged draft safely recovers the same operation. Use New operation to refresh the expected case revision before another action; resolve an unknown result first. A stale result requires another inspection, not blind repeated changes.

Correct a false report with the Correct action and a clear reason. This preserves the original report/evidence, marks the case corrected, revokes its warrant and releases that case's custody. Dismiss and Close also end its authority. Release alone annotates release without deciding guilt. Each case is independent: another case may still have active custody.

Grant staff rpjustice.view plus the relevant permissions: rpjustice.investigate, rpjustice.warrant, rpjustice.custody, rpjustice.correct and rpjustice.config. Full Rust admins have access to all controls. Investigation includes case dismissal/closure and the resulting release. Keep correction/configuration grants limited to the intended roles.

Players use /help → Justice for their current character's recent reports and cases, or /justice read <case ID> for a known older case. Evidence and moderator audit remain staff-only. Refresh updates deadlines. Disconnect does not release custody early; recorded deadlines continue while offline. Changing Core WorldId scopes the new map away from old authority while retaining old records. Always use a new WorldId for a new unrelated map. Disabling Justice makes its authority unavailable to adapters.

The inbox shows the latest 200 permitted cases. Case history is preserved, with bounded evidence/audit capacity and reserved room for release/correction. Native death observation is best effort while storage/identity is ready; no record should be assumed saved after an uncertain error. Monetary fines, physical custody, appeals and optional medical/insurance/respawn policies remain later slices.

How the systems interact

Example What happens What an administrator must configure
New player arrives Onboarding runs activities, opens profession selection, then Core character creation Valid published journey and an achievable profession
Miner learns a skill Profession binding describes gates; Skills verifies ownership/unlock; Economy handles a configured fee Published skill/tree, valid binding and supported wallet path
Bot offers training Bot routes the choice to the owning progression system Enabled bot, correct target ID, reachable requirements
Player crafts an upgraded tool Unlock eligibility differs from per-craft conditions; modifier has another target/cost check Recipe, workbench, ingredients, fees and supported effects
Player cuts a tree Core can apply owned Skills and authoritative faction-war modifiers Action rules, published owned skill and valid spatial territory
Quest pays for work Quests tracks objectives, then each provider delivers its reward component Supported targets, reward providers and review of pending components
Business sells stock Business stock/reservations, payment and delivery each have their own state Place, ownership/staff, listing and delivery setup
Grid is faction-owned Places shows the recorded owner and player-selected markers Grid assignment and map settings; territory is configured separately
Business completes an IPO Stocks stores a digital listing based on the initial business quote Active business, unique ticker, float rules and Economy

For a simple launch scenario, create a free lumberjack profession, a basic wood-gathering quest, a published passive wood skill and a greeter bot offering the quest. Let onboarding use vanilla resource tasks. Add paid recipe unlocks only after validating balances and settlement. Add business commerce and advanced custody after that base loop works.

Daily operations, updates and wipes

Daily administration

Check database readiness, loaded modules, blocked purchases/rewards, bot navigation and support reports. Make content changes through the owning screen, confirm persistence, then check the player-facing view. Record significant price, payout and requirement changes so staff can explain them.

For a support case, capture Steam/account ID, character identity, world ID, module, order/request ID, approximate time and visible status. Keep logs and the original receipt. Resolve the original operation before issuing replacement money or items.

Updates and backups

Back up plugin configurations, the complete RP schema and the relevant Rust world saves together. For orders with held physical goods, retain their ledgers and evidence alongside the save. A database-only restore or an older world-only restore can leave money and inventory at different points.

Pause relevant commerce before a database migration. Apply the release's migrations in order, deploy matching plugins and reload/restart as instructed. Confirm storage readiness before reopening transactions. Plugin reloads can interrupt active orders; do not use repeated reloads as a recovery strategy.

Map wipes

Decide separately which character, progression and economic data should persist. A Rust map wipe does not inherently reset the RP database. Use a new world-generation ID for an unrelated map, verify Places/Businesses/Traders, and set Crafting's physical world explicitly. Reposition world content and validate monument-relative bots.

When restoring the same physical world, preserve its world key and custody ledgers. Native restart scans protect retained item identities and can temporarily pause inventory operations. If the scan or guards fail, repair the migration/ledger and reload; deleting records to bypass the pause can allow duplicated or lost items.

Troubleshooting and player support

Symptom First checks and response
RPAdmin missing or denied RPUI loaded, server admin or rpui.admin; inspect feature-specific access afterward
Module section missing Owning plugin loaded and registered; check its startup log
Persistence not ready / missing table or routine Endpoint, credentials, schema and matching release migrations; reconnect only after correcting settings
Arrival cannot advance Published scenario, accessible target, profession available, stage order and player's pinned version
Option visible but locked Enabled/published state, parent ownership, profession tier/XP, faction, quest, permission and payment provider
Skill has no effect Owned rank, supported ability/action, publication and Core action-rule strength
Bot stationary or not harvesting Enabled/quarantine state, anchor/navmesh, gait, home radius, reachable source, selected items and equipped tool
Land absent or wrong Core/module World ID, successful assignment, global map switch and the player's category filters
Trader has no goods Matching bot trader ID, world, enabled offer and stock
Balance changed but goods missing Original payment and delivery states; investigate custody rather than taking a second payment
Craft order paused Inventory space, original character/session, mode/world/provider readiness; preserve order and inspect retained custody
Inventory locked after restore Native recovery scan and retained UID protections; investigate logs and saved custody state
Quest complete but reward pending Reward-provider readiness and recorded component receipt; avoid duplicate physical rewards
IPO rejected Active owner/business, unique ticker, one-time listing, float/holding rules and share-count valuation rounding

If a status is unknown, treat it as unresolved. A loading screen, timeout, pending receipt or missing live item observation is not proof that nothing happened. Escalate with the original IDs and evidence rather than resetting the player's entire history.

Skills player help details (3 October 2026)

The Skills section in /help now lists the complete published catalog in one compact scroll. Select a skill to see its full description, each prerequisite and every published profession unlock source. Owned, available and locked indicators retain their current meaning; an available indicator is advisory and the normal unlock path still checks requirements.

The details scroll also explains every assigned action and its configured duration, cooldown, relevant range, targets, speed/effect multiplier, extra slots or repair fee. These are base settings: optional activation modifiers can change the actual result. Cooldown follows the active period. Instant-harvest range uses the activation position and still needs a valid gathering-tool hit. Repair, instruction and rescue show their service command and require recipient acceptance. Multi Jump shows its base 15-second duration, 20-second cooldown and two total jumps; its modifiers can change those values.

Large catalogs and long source/requirement lists scroll without the previous 24-skill pages or five-source cutoff. This display does not grant ranks or change prices.

Government identity tags

Trader purchases now use fresh Core ID decisions and confirmed capped discounts; see Trader government-ID checkout for setup, the 30-second confirmation flow and saved-checkout recovery. Set the merchant cap with rptraders.negotiation; the best ID or skill discount applies without stacking.

For the ready-made RPSkills counterfeiting catalog definition and the private draft template for existing catalogs, see Counterfeiting skill setup. The template grants no ownership. Skills owns ranks and acquisition; Core owns forgery policy, fake claims and all credential creation.

Core provides physical native ID credentials, a Government ID Help subsection and Admin → Core → Government ID settings. Onboarding requests one neutral tag after saved completion. Players use /id for profile/privacy/profession/color settings, /id close, /id claim or /id replace <approved bot ID>. Admins or rpcore.identity.issue holders can use /id issue <Steam ID> near the recipient; rpcore.identity.admin controls identity configuration. Counterfeiting requires the separately defined Skills-owned configured skill/rank; forged claims do not grant roles.

Configure native faction/profession tag mappings, optional portrait/issuer providers and NPC presentation/registry policies. Steam/avatar disclosure is private by default. Native camera portraits are enabled by Identity.AllowCameraPortraits; the admin editor exposes Allow camera portraits. Players authorize a nearby instant-camera photographer through /id portrait, review privately, then save or discard. Headshot disclosure is public by default and can be hidden in Government ID settings. See Camera portraits for clearing and limits. Core returns NPC access/discount terms; RPTraders applies them through its confirmed checkout route. Do not gate replacement vendors behind an ID requirement. After uncertain or lost delivery, use an approved replacement rather than reminting. For hooks, config examples, durability limits and the live acceptance matrix see Government identity tags.

Custom profession and skill artwork

Deploy 512×512 PNGs under RPUI/icons in the framework data directory, map stable IDs to relative files in RPUI's CustomIcons configuration, and run rpui.icons.reload. Assign each profession or skill's PNG asset ID in its administrator editor; keep Rust item shortnames and skill symbols configured as fallbacks. Artwork appears in profession selection and Help details, and in the skill HUD and Help details. See Custom profession and skill icons for deployment examples, limits, reloads and troubleshooting.

Faction directory, recruitment, and achievement scoring

The player Help menu's Factions page lists factions with their banner or managed RPUI logo, member count, recruitment status, score, and a server-rank placeholder. Rank is intentionally shown as Pending. Faction detail shows accomplishments and a scrolling member roster; selecting a player shows their recorded world accomplishments, including contributions made before changing factions. The directory exposes public display names. Government identity claims retain their separate privacy rules.

For an open player faction, Request to join submits the leader's form. Owners and positions with members.approve can edit up to 12 required or optional questions and the logo asset ID, then review saved answers under Requests. Submitted questions are preserved with the answers when the leader changes the form. Approval checks current reviewer authority, capacity, membership, and join cooldown in the same database transaction that adds the recruit. Closed factions can continue using explicit invitations (/faction inbox). Ordinary direct joining and old application chat commands now direct players to the Help form; explicit administrator overrides remain available.

In /rpadmin > Factions > Achievement scoring, set points per unit for each supported metric. Every metric starts at 1 point. A value of 0 removes its score contribution; changing weights recalculates scores from saved counts. Provider availability is displayed. The initial catalog tracks:

Metric Source Unit
NPC kills / enemy player kills at war Factions Kills credited to a player
Resources gathered / crops harvested Factions Item units collected
Quest completions Quests Confirmed quest completion receipts
Scenario completions Onboarding Completed scenario versions per player
Business sales / items sold Businesses Delivered customer orders with settled payments; credited to the saved business owner
Stock trades / shares Stocks Committed stock orders, including buys and sells
Arrests Justice Confirmed custody entries, credited to the recording officer
Land claims Factions Territory zones currently owned, rather than a lifetime claim count

Activity is attributed to the player's faction when the event is received. Durable receipts prevent duplicate credit. Counters start with activity observed by these versions of the plugins; historical activities are not reconstructed. Pending achievement writes are retried in memory, so a process crash before storage commits or an absent/unavailable tracking provider can lose unrecorded activity. Totals are scoped to the Core world ID; forms and membership remain faction configuration. Scoring does not currently include RPPlaces property ownership or automatic shop transactions that lack these customer-order receipts.

In the bot editor, Faction selects an enabled NPC faction separately from label visibility. Assigned combat bots treat declared enemies as hostile and allies/same-faction actors as friendly, with neutral actors excluded from combat targeting. Existing combat enablement, senses, safe-zone exclusions, and chase limits still apply. Hostile actors cannot start bot services. Friendly bots can socialize across roles and provide nearby injured allies with bandage/syringe aid when they have medical items in their main inventory and positive Helpfulness; each aid consumes an item and has a cooldown. Unassigned bots retain their configured behavior.

Before loading these builds on a server, apply the updated RPFactions baseline from the persistence administration screen. Feature plugins only check schema readiness; they do not install it automatically. Validate faction UI, NPC targeting/aid, and concurrent application reviews on a staging Rust server with MySQL before deployment.

Building icon colors

In /rpadmin > Interface > Theme, Icon Color and Selected Icon Color control the tint of building-plan icons. Icon Background Color and Selected Icon Background Color control their card backgrounds. Choose or clone an editable theme first. Values use the RGBA theme format; Save changes persists them and Use theme activates that preset. The migrated weed paradise retains its existing icon tint. L/U stairs use explicit native sprite paths; spiral stairs use Rust's bundled stair symbol rather than an unverified image path.

Back to top · All documentation