Server configuration

Configure your Vital.sandbox server's runtime behaviour — ports, identity, social links — 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, 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

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

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