This page will guide you on installing ViaVersion, after installing you will have a protocol compatible server allowing more client versions to join.
If your setup uses BungeeCord you only need to install it on either BungeeCord or the servers behind the bungee (whether they are Spigot / Sponge etc).
If you choose to use BungeeCord, note that you will not be able to see yourself blocking.
You must use one of the following versions to allow certain versions, 1.8.x means any 1.8 version like 1.8.8.
|Server Version||Clients can connect with|
|1.8.x||1.8.x, 1.9.x, 1.10.x, 1.11.x, 1.12.x, 1.13.x, 1.14.x|
|1.9.x||1.9.x, 1.10.x, 1.11.x, 1.12.x, 1.13.x, 1.14.x|
|1.10.x||1.10.x, 1.11.x, 1.12.x, 1.13.x, 1.14.x|
|1.11.x||1.11.x, 1.12.x, 1.13.x, 1.14.x|
|1.12.x||1.12.x, 1.13.x, 1.14.x|
Note: Future versions like 1.15 will work on all of the above due to how the plugin is built. (Excluding issues where noted)
You may also use ViaBackwards for 1.9/1.10/1.11 support on 1.9/1.10/1.11/1.12 servers and ViaRewind will allow 1.8/1.7.
If you wish to use ProtocolSupport, for 1.8.8 servers use build 388. Otherwise try the according build, late-bind may not function properly when using ProtocolSupport + ViaVersion. ViaRewind may also be a alternative solution to ProtocolSupport.
If you are using BKCommonLib for 1.8.8, consider using this build. If you use Orebfuscator for 1.8 use this special version here.
Some users have had issues with SkinRestorer, we're unable to provide a fix for this at this point in time. (Ensure you're updated)
There are some login issues with Citizens2 and items that don't exist, ensure you're not using things like MONSTER_EGG durability 0.
You can download the latest release from the top of https://www.spigotmc.org/resources/viaversion.19254/updates, download this to your plugin folder.
If you are using command line you can use the following for stable builds:
wget -O ViaVersion.jar http://myles.us/ViaVersion/latest.jar
curl -o ViaVersion.jar http://myles.us/ViaVersion/latest.jar
For development builds you can find them on our build server, https://ci.viaversion.com/job/ViaVersion/
Once you have downloaded your ViaVersion.jar to the plugins folder, simply run your server.
ViaVersion will not work properly if you use a plugin manager and other plugins, please reboot your server. Additionally make sure to read your startup log in case there are any errors!
BungeeCord works by detecting the protocol of the sub servers, to read more about configuring this to work better click here.
ViaVersion should work out of the box, in some cases you might run into a few issues. We have a built-in packet limiter to avoid exploits which from time to time may be tripped, see our configuration page for notes on how to disable this if needed.
Check out our documentation on our config.yml here.
/viaversion - Displays the version and avaliable commands
/viaversion autoteam - Toggles autoteam, a 1.8 feature for stopping colliding.
/viaversion debug - Enables debug mode (Note: This should only be used if you're requested to, or know what you're doing!)
/viaversion displayleaks - Tells netty to enable ResourceLeakDetector (Note: This should only be used if you're requested to, or know what you're doing!)
/viaversion dontbugme - Toggles telling you about new updates when you login / in the console. (This can be useful to get bug fixes as fast as we release them)
/viaversion dump - Gives you a link with useful information you can provide to us to help us support you.
/viaversion list - Provides a list of all users connected and their versions (also includes ProtocolSupport if installed)
/viaversion pps - Displays a list of all users packets per second.
/viaversion reload - Reloads the config (some options may require a reboot)
/viaversion probe - Probes servers for versions (BungeeCord only)
The permission for these commands is
You may need to disable autoteam if you use a tag plugin like ColoredTags, use /viaver autoteam to disable. Alternatively you can modify your config.yml.
Ensure you have updated BungeeCord to the latest version if you use it, otherwise take a look at your startup log and ensure you're connecting to the right server and that ViaVersion is installed.
My players are being kicked with /reload?! And I'm having issues after /reload!?
We kick players when using ProtocolLib to stop the server crashing on reload, also you should probably use a PluginManager instead. If you're updating ViaVersion a reboot is much better than a reload as it means it will take full effect.
I can't use new blocks?
Our aim is to provide compatibility and balanced gameplay. This is not a feature of ViaVersion nor is it planned.
BungeeCord isn't working?!
If you are using our plugin on BungeeCord itself, it may take a few minutes for ViaVersion to probe your protocols of your subservers, you can read here for more info.
Otherwise ensure your BungeeCord is updated.
If you use Title plugins on BungeeCord try without them, some may be outdated.
I'm getting weird packet errors?
If you're using 1.8, you might want to check your plugins, read our compatibility guide. Some plugins require chunks being sent in a server tick which ViaVersion modifies these outside of.
If you're on 1.9 there's a chance you're using a bad build (use the latest 1.9 build).
ViaVersion is causing TPS lag in timings?
ViaVersion for versions 1.9 and above on 1.8 has to simulate player ticking for them to eat, draw bows etc. This means our plugin looks like it's causing lag but it's actually calling Minecraft server methods. You can turn of nms-player-ticking in the config to use an alternate method which won't touch timings but may cause issues with anti-cheat.
If you believe the issue is a bug, and not a configuration issue report it here on GitHub.
For support use the Discussion section on our Spigot page.
For live support, (EU times mostly) you can use our Discord server.