The configuration file is located in plugins/ViaVersion/config.yml. It uses the YAML Syntax. The config is split into sections, you can see these by looking at the comments prefixed with #.
...
These options affect all versions, even when it isn't being handled by ViaVersion.
checkforupdates
check-for-updates
- default: true (Boolean)
This option indicates whether we should check for updates when the server boots and when an operator logs in, this can be a huge benefit to ensure that bugs are fixed as soon as new versions are available. We use update.viaversion.com to handle checking for updates, so ensure that it is allowed through your firewall if you wish to use this feature.
Note: this was renamed from checkforupdates so you have to adjust the new setting to match the value of the old one
send-supported-versions
- default: false (Boolean)
...
This allows you to block certain versions from logging into your server, every Minecraft version has a special number assigned to it called a Protocol Version. You can view a list of them here and find a generator here. For example, if you wanted to block 1.10 Minecraft you can see from that list that the number is 210. You would then change your config to, block-protocols: [210]
, you can then add as many protocols as required separated by a comma if you wish to block more.
...
This allows you to block certain versions from logging into your server, it is similar to block-protocols but allows you to use version names like "1.17" or "<1.17". For example ["<1.17"] would block allow versions less than 1.17. The less than operator and greater than operator are both supported for these versions. See here for a generator
block-disconnect-msg
- default: "You are using an unsupported Minecraft version!" (String)
...
Due to changes in Minecraft some conversion errors may happen with unusual block ids / item ids / biome ids, this will hide warnings we print to the console.
Global Packet Limiter Options
When building ViaVersion we came across a suppress-text-component-conversion-warnings
- default: true (Boolean)
This can be disabled for debugging purposes if text in chat/entities/items shows an error tag.
Global Packet Limiter Options
When building ViaVersion we came across a lot of issues with exploits where people could send lots of packets and crash a server (Just as a general Minecraft fault). To combat this we included a simple packet limiting system, which should work out of the box.
...
The default will be filled with the lowest version your proxy can handle. You can view a list of them here. The key is the BungeeCord / Velocity server name from your config.yml and the integer is the protocol version from the previous link.
...
Get the world names which should be returned for each vanilla dimension
...
translate-ocelot-to-cat
- default: false (Boolean)
If disabled, tamed cats will be displayed as ocelots to 1.14+ clients on 1.
...
This options only apply to you if you use a 1.8 server, these enable consistent visuals / gameplays across future versions where features have changed.
prevent-collision
- default: true (Boolean)
In 1.9, players can now push each other. To prevent this when scoreboard teams are sent ViaVersion can set the collision to not happen so that the gameplay is balanced. (Plugins like ColoredTags use teams)
auto-team
- default: true (Boolean)
Most servers don't use scoreboard plugins, in this case we send our own team to the player to prevent them colliding with other players. If you use a plugin like ColoredTags you should turn this off. Furthermore if you are having issues with Bungee and teams, consider turning it off too.
suppress-metadata-errors
- default: false (Boolean)
Due to changes in 1.9 and above to how entity data is sent some plugins send data that we can't find the 1.9 equivalent for (Usually means they're doing something wrong!). When this happens we'll tell you all the info in your config and you will need to debug and work out which plugin is causing this and contact the author, (these are related to the NMS class called Datawatcher).
Alternatively, you can just suppress metadata errors but this means mobs may look different on 1.9 to 1.8, but most of the time this is fine.
shield-blocking
- default: true (Boolean) - Note: On BungeeCord the client will not be able to see them self blocking.
In 1.9, the blocking animation when you right click a sword was removed. It's not possible to simulate meaning 1.9 would not be able to see 1.8 blocking, as an alternative you can visually see these as shields. These do not change any game play and just allow 1.9 to see clients blocking and perform the blocking action with a sword themselves.
Disabling this will mean that 1.9 clients will not be able to see players blocking and will not be able to block properly.13 servers. Otherwise, ocelots (tamed and untamed) will be displayed as cats.
enforce-secure-chat
- default: false (Boolean)
Determines the value sent to 1.19+ clients on join if currently not accessible by ViaVersion.
It is not recommended to fake this value if your server is running 1.19 or later, as 1.20.5 clients have stricter chat handling and may get kicked otherwise.
handle-invalid-item-count
- default: false (Boolean)
andles items with invalid count values (higher than max stack size) on 1.20.3 servers.
1.9 & 1.10 clients on 1.8 servers options
This options only apply to you if you use a 1.8 server, these enable consistent visuals / gameplays across future versions where features have changed.
prevent-collision
- default: true (Boolean)
In 1.9, players can now push each other. To prevent this when scoreboard teams are sent ViaVersion can set the collision to not happen so that the gameplay is balanced. (Plugins like ColoredTags use teams)
auto-team
- default: true (Boolean)
Most servers don't use scoreboard plugins, in this case we send our own team to the player to prevent them colliding with other players. If you use a plugin like ColoredTags you should turn this off. Furthermore if you are having issues with Bungee and teams, consider turning it off too.
suppress-metadata-errors
- default: false (Boolean)
Due to changes in 1.9 and above to how entity data is sent some plugins send data that we can't find the 1.9 equivalent for (Usually means they're doing something wrong!). When this happens we'll tell you all the info in your config and you will need to debug and work out which plugin is causing this and contact the author, (these are related to the NMS class called Datawatcher).
Alternatively, you can just suppress metadata errors but this means mobs may look different on 1.9 to 1.8, but most of the time this is fine.
shield-blocking
- default: true (Boolean) - Note: On BungeeCord the client will not be able to see them self blocking.
In 1.9, the blocking animation when you right click a sword was removed. It's not possible to simulate meaning 1.9 would not be able to see 1.8 blocking, as an alternative you can visually see these as shields. These do not change any game play and just allow 1.9 to see clients blocking and perform the blocking action with a sword themselves.
Disabling this will mean that 1.9 clients will not be able to see players blocking and will not be able to block properly.
no-delay-shield-blocking
- default: false (Boolean)
If this setting is active, the main hand is used instead of the off-hand to trigger the blocking of the player. With the main hand the blocking starts way faster. (Requires "show-shield-when-sword-in-hand
" to be false
)
show-shield-when-sword-in-hand
- default: false (Boolean)
If this setting is active, the shield will appear immediately for 1.9+ when you hold a sword in your main hand. The shield disappears when you switch to another item. (Requires "shield-blocking
" to be true
)
simulate-pt
- default: true (Boolean)
...