Userdata Folder Structure

The userdata folder unifies all player and server configuration in a single place, which should be transferrable between different Veloren installations from v0.8 onwards.

The folder will be next to your Veloren executable, or in your repository's root if self-compiling. See where Airshipper stores files if using the launcher.

voxygen/settings.ron

Contains settings for Voxygen, Veloren's official 3D client frontend.

This file is almost entirely configurable through Voxygen's in-game settings UI. For more information, see here.

The main thing not accessible from main game menus is gamepad keybindings, which can only be changed by directly editing the file.

profile.ron

Contains hotbar information per-character and per-server. Should never need to be manually modified.

server/server_config/settings.ron

This file is intended for manual editing, and should never be overwritten by the game. If the file is in an invalid state, the server will emit a warning in including the position of the error, create a settings.template.ron file full of the default values, and start up with all default values.

SettingDescriptionDefault value
gameserver_protocols > Tcp > addressA List of addresses that the game server will listen on. Supports TCP and QUIC, as well as both IPv4 and IPv6. Note that clients will use the port 14004 by default. Changing the port will require to specify it in the client too."0.0.0.0:14004"
auth_server_addressWhen using Some(<value>): The value is the IP address or domain the game server and client will use. If you want to disable authentication, you replace Some(...) with None.Some("https://auth.veloren.net")
query_addressAddress used to query the server. For example by AirShipper to quickly display the player counts and other server info without fully connecting to it.Some("0.0.0.0:14006")
max_playersMaximum number of players connected to the game server.100
world_seedSeed number used to setup the random generation of the world.130626853
server_nameDisplayed server name."Veloren Server"
day_lengthLength of an in-game day in real-world minutes.30
map_fileSets which map to load. See here for allowed values.None
max_view_distanceThe maximum view distance that clients may request. Useful for low-RAM servers.Some(65)
max_player_group_sizeThe maximum party size players can have, for purposes of XP sharing and ignoring friendly fire.6
client_timeoutAmount of time to wait before disconnecting a client who cannot successfully connect.(secs: 40, nanos: 0,)
max_player_for_kill_broadcastWhen using Some(<value>), value is the maximum number of online players where the server will send a death message/notification to the global chat or region. Some(...) can be replaced with None if you never want to globally broadcast death messages in chat.None
calendar_modeShould be left on Auto. Configures the calendar to be used by the server for date-based server events. Other options include None, Timezone(<timezone>) where timezone is a chrono_tz::Tz, or Events([<calendar_event>]) where calendar_event is a list of CalendarEvent.Auto
gameplay > battle_modeCan be Global(mode) or PerPlayer(default: mode), where mode can be PvP or PvE and will be given to each player on join. The difference between Global and PerPlayer is that PerPlayer enables /battlemode command.Global(PvP)
gameplay > explosion_burn_marksDefines whether or not explosion burn marks by players are shown in the world.true
moderation > banned_words_filesList of files containing words to be censored. None are distributed by default.[] (Empty array)
moderation > automodTo enable the auto moderator. If set to true, players will be subject to automated spam/content filters.false
moderation > admins_exemptExempt admins from the auto moderator.true
world > start_timeThe number of in-game seconds after the in-game epoch (12 AM on the first day of the Veloren calendar) that the server should begin at. This value only affects the first server startup. The default is 9 AM since 9 hours * 60 (minutes per hour) * 60 (seconds per minute) = 32400 (seconds)32400

server/server_config/description.ron

Contains the introductory chat message clients get when entering the server, as a quoted string. Can be multiple lines.

Example:

"This is the best Veloren server"

server/server_config/whitelist.ron

Contains a list of whitelisted account IDs, and is considered disabled if empty. Heavily recommended to use the /whitelist add/remove in-game command, rather than manual editing.

Example: Result of using /whitelist add Treeco and /whitelist add treeco2.

[
    "6f15b915-074f-f78d-df88-34fb33e4e13f",
    "3445349e-d03c-64bf-6ecf-a15806275a1f",
]

server/server_config/banlist.ron

Contains a list of banned accounts, and reasons. Heavily recommended to use the /ban and /unban in-game commands, rather than manual editing.

Example: Result of using /ban Treeco General nuisance and /ban treeco2 alt account.

{
    "6f15b915-074f-f78d-df88-34fb33e4e13f": (
        username_when_banned: "treeco2",
        reason: "alt account",
    ),
    "3445349e-d03c-64bf-6ecf-a15806275a1f": (
        username_when_banned: "Treeco",
        reason: "General nuisance",
    ),
}

server/server_config/admins.ron

Contains a list of admin account IDs. Heavily recommended to use admin add/remove from the server's TUI, rather than manual editing. There is no in-game command to permanently add admins, for security reasons.

Example: Result of using admin add Treeco.

[
    "ee193d08-8f5a-4862-a279-1a8c4bd357f3",
]

If you have the TUI disabled or are otherwise unable to use it, you can instead use the server CLI to add/remove admins.

Example:

veloren-server-cli admin add Treeco

server-cli/settings.ron

The settings in this file govern the warning period the server gives for automatic shutdowns for updates.

SettingDescriptionDefault value
update_shutdown_grace_period_secsThe amount of time between the server warning players that it is about to perform a shutdown and the actual shutdown. This provides players a chance to find a waypoint to save their progress. Note that this applies to not just updates, but shutdowns as well.120
update_shutdown_messageThe message that will be shown to players before a server restart occurs."The server is restarting for an update"
web_addressAddress and port on which the game server will expose Prometheus metrics."0.0.0.0:14005"
web_chat_secretSecret API header used to access the chat API. If set to None, the API is unreachable. Can be set to Some("<secret API header>").None
ui_api_secretPublic secret API header used to access the UI API. If set to None, the API is reachable by localhost only. Can be set to Some("<secret public API header>").None
shutdown_signalsList of shutdown signals to use to shutdown the server.[SIGUSR1,]