Server configuration

Configure your Vital.sandbox server's runtime behaviour — identity, ports, bootstrapper, and socials — via config.yaml


Overview

Every Vital.server ships with a config.yaml in its root directory, pre-populated with sensible defaults. It is the single source of truth for runtime behaviour — modify the values, restart the server, and changes take effect immediately.

If the config file is absent or malformed, the server falls back to built-in defaults and emits a diagnostic to the console. A missing file is non-fatal.

Where the config lives

  • Fixed locationconfig.yaml must sit at the root of your Vital.server/ directory.
  • Single file — all sections (server, network, http, bootstrap, social) live in this one file.
  • Restart to apply — changes are not hot-reloaded; a server restart is required for any edit to take effect.
Example server layout
Vital.server/
├── config.yaml
└── resources/
    └── ...

Configuration

Default configuration as shipped with every Vital.server.

Vital.server/config.yaml
# =============================================================================
# Vital Sandbox — Server Configuration
# =============================================================================

server:
  name: "Vital.sandbox Server"
  version: "1.0.0"
  description: "A Vital.sandbox server"

network:
  port: 7777
  max_peers: 32

http:
  port: 7778

bootstrap:
  #- "runcode"

social:
  discord: ""
  website: ""

All keys are optional.

  • Every key has a built-in default and can be omitted without error.
  • An absent or malformed config.yaml is non-fatal — the server starts with defaults and logs a warning.

Server

Controls the display name, version string, and description exposed to clients and integrations.

server:
  name: "Vital.sandbox Server"
  version: "1.0.0"
  description: "A Vital.sandbox server"
KeyTypeDefaultDescription
namestring"Vital.sandbox Server"Display name shown in the master-list
versionstring"1.0.0"Free-text version identifier - not validated or compared
descriptionstring""Optional description shown in the master-list

Network

Controls the ENet multiplayer transport layer. Clients connect to the port defined here.

network:
  port: 7777
  max_peers: 32

Both values directly affect client connectivity — change them with care.

  • port — clients and any firewall or port-forwarding rules must be updated to match.
  • max_peers — once the limit is reached, incoming connections are refused until a slot becomes available.
KeyTypeDefaultDescription
portinteger7777UDP/TCP port the ENet multiplayer server listens on
max_peersinteger32Maximum number of concurrent client connections

HTTP

Controls the asset delivery server. Clients fetch assets such as models and textures from this port at runtime.

http:
  port: 7778

The HTTP server operates independently of the ENet transport layer.

  • Both ports must be reachable — blocking either one will result in a failed or degraded session.
  • Separate firewall rules — ensure both ports are open and forwarded correctly in your network configuration.
KeyTypeDefaultDescription
portinteger7778Port the HTTP asset delivery server listens on

Bootstrap

Defines resources that are automatically started after the initial resource scan on server boot. Entries are processed in order and respect full dependency resolution — if a bootstrap resource depends on another resource, that dependency is started first.

bootstrap:
  - "runcode"
  - "gamemode"

Bootstrap runs once at startup, after the resource scan completes.

  • Order is preserved — resources start top-to-bottom as listed.
  • Dependencies are resolved automatically — a resource's deps start before it, even if not listed here.
  • Each entry must be a valid resource name — must match a folder under resources/ (a-z, 0-9, _ only).
  • Already-running resources are skipped — no error is raised if a resource is already running.
ValueTypeDescription
entrystringName of a resource folder under resources/ to start at boot

Social

Defines community links surfaced in the master-list.

social:
  discord: ""
  website: ""
KeyTypeDefaultDescription
discordstring""Discord server invite URL shown in the master-list
websitestring""Community or project website URL shown in the master-list

On this page