In-file
File configurations are the primary way to configure Void. However, many options can be overridden at 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
# Allow players to connect without Mojang authenticationOffline = false
# 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.
Modern (Velocity)
Section titled “Modern (Velocity)”Read more in Modern (Velocity) forwarding.
# Enables Velocity forwardingEnabled = true
# The secret key (should be the same as on the backend server)Secret = "YourSecretKeyHere"
Plugin Installation
Section titled “Plugin 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 to install plugins. - Environment variable
VOID_PLUGINS
might be used to add URLs or local paths to run plugins, separated by comma or semicolon. - Program argument
--plugin
(alias-p
) might be used to add URL or local path to a plugin.
$ ./void-linux-x64 --plugin "/home/YourPlugin1.dll" --plugin "https://example.org/download/YourPlugin2.dll"
$ VOID_PLUGINS="https://example.org/download/YourPlugin1.dll;/home/YourPlugin2.dll" ./void-linux-x64
Plugin Configurations (configs/<Plugin>/*.toml)
Section titled “Plugin Configurations (configs/<Plugin>/*.toml)”Each plugin may define one or a 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 an existing instance in memory. Vice versa, all changes in the memory are automatically saved to the disk. This automatic saving can be disabled via program argument.
Currently, only TOML format is supported.