Set up ViaVersion, ViaBackwards and ViaRewind so players on newer and older Minecraft versions can join your Paper server. Install and limits.
The problem they solve
A Minecraft Java client can normally only join a server on the same version. Mojang releases updates often, and each one splits your audience: players who updated cannot join an old server, and players who stayed on an older version cannot join a new one. The Via plugins translate between versions so players can join anyway.
What each plugin does
- ViaVersion lets players on newer game versions join a server that runs an older version. Install this first.
- ViaBackwards lets players on older game versions join a server that runs a newer version. It needs ViaVersion.
- ViaRewind extends that further back, to much older clients such as 1.8. It needs ViaVersion and ViaBackwards.
Example: if your server runs one version, ViaVersion lets players on newer versions in, ViaBackwards lets players on older versions in, and ViaRewind adds very old versions. Which versions each plugin supports changes with every release, so read the plugin's page for the current range.
Which setup do I need?
- Only newer players are being blocked: ViaVersion.
- Older players are being blocked: ViaVersion plus ViaBackwards.
- You want classic 1.8-era clients: ViaVersion, ViaBackwards and ViaRewind.
- You use Geyser for Bedrock cross-play: Bedrock clients update to the latest game version, so if your Java server is older, ViaVersion helps keep Geyser connections working.
Install on Paper or Purpur
Via plugins are updated often, especially when a new Minecraft version comes out. Update them whenever the server version or the supported client versions change.
- Download the plugins from their official pages (Modrinth, Hangar, SpigotMC or the project's GitHub releases).
- Stop the server.
- Put the .jar files in the plugins folder: ViaVersion, then ViaBackwards and ViaRewind if you need them.
- Start the server and check the console for lines showing the plugins loaded without errors.
- Join with a client on a different version to test.
Install on a proxy
If you run a proxy such as Velocity or BungeeCord in front of several servers, install the Via plugins on the proxy, not on each backend server. The proxy is where the version translation happens, so all your servers behind it benefit at once.
Limits to know about
- Translation is not perfect. Blocks, items and mobs that do not exist in an older version are shown as the closest substitute, so some builds will look different to older clients.
- Combat differs. Modern combat is not the same as 1.8 combat, and Via does not convert it. Servers that care about classic PvP use a separate plugin for that.
- Some resource packs and custom content behave differently across versions.
- Anti-cheat plugins can need configuration to avoid false positives with translated clients.
- Keep your server on a version that your plugins fully support. Via makes joining possible, but the plugins on your server still decide what features work.
Troubleshooting
- Players are kicked with an "Outdated" message: the plugin does not support their version yet. Update Via, or check the supported version range.
- Strange blocks or crashes for older clients: test a clean world and remove custom resource packs to find the cause.
- Via works for some versions but not others: check that ViaBackwards and ViaRewind versions match the ViaVersion version you installed.
- Ask for help with a dump: the Via plugins can generate a debug report from the console that support staff can read.
Frequently asked questions
What is ViaVersion?
ViaVersion is a plugin that lets players on newer Minecraft versions join a server that runs an older version.
What is the difference between ViaVersion, ViaBackwards and ViaRewind?
ViaVersion lets newer clients join older servers. ViaBackwards lets older clients join newer servers. ViaRewind extends that to very old clients such as 1.8, and needs both of the others.
Where do I install ViaVersion?
Put the jar in the plugins folder of your Paper or Purpur server. If you run a proxy such as Velocity, install it on the proxy instead of each backend server.
Does ViaVersion work with Geyser?
Yes. Bedrock clients update to the latest version, so ViaVersion helps keep Geyser connections working when your Java server runs an older version.