In-file
File configurations are main way of configuration. However many options can be overriden in runtime using the API in Plugins.
# Defines the network interface to bind onAddress = "0.0.0.0"
# Defines the portPort = 25565
# Packet size threshold before compressionCompressionThreshold = 256
# General per player timeout for many operations (in milliseconds)KickTimeout = 10000
# Logging level (valid values are Trace, Debug, Information, Warning, Error, Critical)LogLevel = "Information"
# Predefined list of servers.# Players will be connected to the first one, if not specified otherwise from plugins.Servers = [ { Name = "lobby", Host = "127.0.0.1", Port = 25566 }, { Name = "minigames", Host = "127.0.0.1", Port = 25567 }, { Name = "limbo", Host = "127.0.0.1", Port = 25568 }]
Watchdog
Section titled “Watchdog”Watchdog is a built-in HTTP server that allows you to check status or control the proxy.
# Enables the watchdogEnabled = false
# Defines the network interface to bind onAddress = "*"
# Defines the portPort = 80
Forwarding
Section titled “Forwarding”Forwarding helps to forward player data (IP, UUID, Skin, etc.) to the backend server.
Velocity (Modern)
Section titled “Velocity (Modern)”# Enables Velocity forwardingEnabled = true
# The secret key (should be same as on backend server)Secret = "YourSecretKeyHere"
Plugins Installation
Section titled “Plugins Installation”Plugins are compiled with the *.dll extension in any .NET compatible language. See the Plugin Development Kit section for more details.
- Directory
plugins
is the default location for plugins. - Environment variable
VOID_PLUGINS
might be used to include URLs or Local Paths to plugins, separated by coma or semicolon. - Program argument
--plugin
(short-p
) might be used to include URL or Local Path to plugin.
Examples:
$ ./void-linux-x64 --plugin "/home/YourPlugin1.dll" --plugin "https://example.org/download/YoutPlugin2.dll"
$ VOID_PLUGINS="https://example.org/download/YoutPlugin1.dll;/home/YourPlugin2.dll" ./void-linux-x64
Plugins Configurations (configs/<Plugin>/*.toml)
Section titled “Plugins Configurations (configs/<Plugin>/*.toml)”Each plugin may define one or subset of keyed configuration files in its own directory. Plugins are not required to save or load configurations manually.
All changes on the disk are automatically loaded into existing instance in the memory. Vice versa, all changes in the memory are automatically saved to the disk.
Currently, only TOML format is supported.