ViaVersion: spelers op verschillende Minecraft-versies toelaten
ViaVersion is een plugin voor Paper- en Purpur-servers waarmee spelers met een nieuwere Minecraft-client kunnen verbinden met een server die op een oudere versie draait. De aanvulling ViaBackwards doet precies het omgekeerde: die laat clients van oudere versies binnen op een nieuwere server. Samen zorgen ze dat je server bereikbaar blijft voor iedereen, en dat is sinds 2026 relevanter dan ooit: Minecraft Java stapte over op jaargebaseerde versienummers, met 26.1 "Tiny Takeover" in maart 2026 en 26.2 "Chaos Cubed" in juni 2026, terwijl 1.21 "Tricky Trials" nog altijd de meest gespeelde versie op Nederlandse servers is.
Hoe werkt protocolvertaling eigenlijk?
Een Minecraft-client en een Minecraft-server praten met elkaar via een vast protocol: genummerde pakketjes die dingen zeggen als "speler beweegt naar deze coordinaten", "plaats dit blok" of "toon dit scherm". Elke Minecraft-versie heeft een eigen protocolnummer en een eigen indeling van die pakketjes.
Bij het verbinden stuurt je client dat nummer als allereerste. Komt het niet overeen met wat de server verwacht, dan krijg je de bekende melding dat je client verouderd is of juist te nieuw, en gaat de verbinding direct dicht. Er wordt geen poging gedaan om er samen uit te komen.
ViaVersion gaat precies op dat punt tussen client en server in staan. De plugin herkent het protocolnummer van de binnenkomende speler en zet ieder pakket ter plekke om naar de vorm die de server begrijpt, en alles wat terugkomt naar de vorm die de client begrijpt. Voor de server lijkt het alsof er een client van de eigen versie verbindt, voor de speler alsof de server op zijn versie draait. Er is dus geen server die "alle versies" spreekt; er loopt een vertaler tussendoor.
Wat is het verschil tussen ViaVersion, ViaBackwards en ViaRewind?
De drie plugins komen uit dezelfde familie en doen hetzelfde trucje in verschillende richtingen. Je installeert ze naast elkaar en ze bouwen op elkaar voort.
| Plugin | Richting | Wanneer je hem nodig hebt |
|---|---|---|
| ViaVersion | Nieuwere client naar oudere server | Je server blijft bewust op een oudere versie, maar spelers die al geupdatet hebben moeten er wel op kunnen. Dit is de basis; de andere twee werken niet zonder. |
| ViaBackwards | Oudere client naar nieuwere server | Je server draait op de nieuwste versie en je wilt spelers die nog niet zijn overgestapt niet buitensluiten. |
| ViaRewind | Aanvulling op ViaBackwards | Je wilt ook de heel oude clients van voor de grote combat-herziening toelaten, het soort versie dat op klassieke PvP-servers nog leeft. |
De meeste publieke servers draaien ViaVersion en ViaBackwards samen, zodat er een venster van versies ontstaat waarbinnen iedereen kan verbinden. ViaRewind zet je er alleen bij als je publiek daarom vraagt: hoe verder je terug vertaalt, hoe meer er onderweg sneuvelt.
Hoe installeer je ViaVersion op een Paper-server?
- Controleer je serversoftware. Paper is voor de meeste servers de standaardkeuze en Purpur werkt net zo goed, want dat is een fork van Paper met dezelfde plugincompatibiliteit. Op Folia, het experimentele multithreaded Paper, breken de meeste bestaande plugins.
- Download de jars van ViaVersion en ViaBackwards die bij jouw serverversie horen, beide uit dezelfde release-reeks. Dus geen gloednieuwe ViaBackwards bij een oude ViaVersion.
- Zet de bestanden in de map
plugins. In het Pterodactyl-paneel doe je dat via de bestandsbeheerder; slepen en neerzetten volstaat. - Herstart de server volledig. Gebruik geen
/reload: Via haakt diep in de netwerklaag in en moet bij het opstarten geladen worden. - Kijk de console na. Je ziet welke protocolversies geladen zijn. Een melding over ontbrekende mappings betekent dat de jars niet bij elkaar of niet bij je serverversie passen.
- Test met minstens twee clientversies: loop over de map en controleer of blokken plaatsen, kisten openen en chat werken.
- Stel in
plugins/ViaVersion/config.ymleventueel een onder- of bovengrens in als je bepaalde versies niet wilt toelaten.
Wat vertaalt wel en wat niet?
De kern van het spel vertaalt goed. Bewegen, blokken plaatsen en breken, vechten, chat, inventory, kisten, handelen met dorpelingen: mechanieken die al jaren vrijwel hetzelfde werken en netjes omgezet worden. Voor een survival- of SMP-server is dat het overgrote deel van de ervaring.
Waar het misgaat, is bij alles wat in de ene versie wel bestaat en in de andere niet. Dat is een harde grens, geen kwestie van beter vertalen. Een blok dat pas in een nieuwere versie is toegevoegd, zit simpelweg niet in de bestanden van een oudere client: die kan het niet tekenen, want hij weet niet hoe het eruitziet. Via stuurt er dan een bestaand blok voor in de plaats dat er enigszins op lijkt, of anders lucht. Een speler op een oude client ziet dus iets anders staan dan er werkelijk staat, of ziet niets en botst tegen een muur die voor hem onzichtbaar is. De server bepaalt namelijk waar de blokken staan, niet de client.
Hetzelfde geldt voor nieuwe mobs, items, geluiden en deeltjeseffecten. Nieuwe schermen, zoals de interfaces die met de Trial Chambers en Vaults van 1.21 meekwamen, verschijnen onvolledig of helemaal niet. Ook resourcepacks horen bij een specifieke versie en worden door afwijkende clients vaak geweigerd. Let daarnaast op plugins die op exacte pakketvolgorde rekenen, zoals anticheat: die kunnen raar gaan doen zodra er een vertaallaag tussen zit. Test dat eerst apart.
Waarom is dit handig voor een publieke server?
Omdat niemand hoeft te wisselen. Dat klinkt klein, maar het is het hele punt. Met 26.1 in maart, 26.2 in juni en 26.3 al in snapshots met onder meer het nieuwe "dappled forest"-biome, zit je publiek nooit allemaal op dezelfde versie. Een deel blijft hangen op 1.21 omdat hun mods, shaders of prestatie-instellingen daarop draaien, een ander deel update meteen. Kies je zonder Via een versie, dan sluit je automatisch een van beide groepen buiten.
Voor een server die je met vrienden deelt of via Discord promoot, scheelt dat veel gedoe: je deelt een IP-adres en iedereen komt binnen, zonder uitleg over launcher-profielen en zonder halverwege het seizoen een verplichte update. Wil je ook Bedrock-spelers toelaten, dan is Geyser met Floodgate de tegenhanger aan die kant. Via en Geyser bijten elkaar niet en draaien vaak naast elkaar, samen met de basisplugins uit ons overzicht van de belangrijkste Minecraft-plugins.
Waarom je dit op een modded server juist niet moet doen
Bij mods gaat de vlieger niet op. Plugins draaien uitsluitend server-side op verder vanilla mechanieken; mods worden door een modloader geladen en voegen echt nieuwe blokken, items, mobs en dimensies toe, en die moeten op server en client identiek zijn. All the Mods 10 draait op NeoForge met Minecraft 1.21.1 en 400 tot 500 mods, RLCraft op Forge met 1.12.2. Er valt daar niets te vertalen: de content bestaat aan de andere kant helemaal niet.
Daar komt bij dat Via een Bukkit-plugin is. Een pure Forge- of NeoForge-server laadt geen plugins, dus je krijgt hem er niet eens in. Hybride serversoftware die mods en plugins combineert bestaat wel, maar is fragiel en loopt achter op versies. Voor een modpack is de juiste aanpak simpelweg dat iedereen hetzelfde pack in dezelfde versie installeert. Hoe dat gaat, staat in onze uitleg over modpacks installeren.
Wat kost het aan prestaties?
Vertalen is werk, en dat gebeurt per speler en per pakket. Bij het opstarten laadt Via bovendien mapping-tabellen voor elke ondersteunde versie in het geheugen. Op een server met een handvol spelers merk je daar weinig van. Zit je met grote spelersaantallen verspreid over veel protocolversies, dan wordt het wel meetbaar in je TPS. Meet dat met de plugin spark voordat je gaat gokken waar je lag vandaan komt; in ons artikel over je Minecraft-server optimaliseren staat hoe je zo'n profiel leest.
Draai je een netwerk met meerdere servers achter een proxy, dan kun je Via ook daar neerzetten in plaats van op elke backend-server apart. Bij MC-Node begint zo'n proxy bij 0,50 euro voor 512 MB BungeeCord en zitten gewone servers op de budgetlijn op 1,10 euro per GB RAM per maand op vrijwel elk pakket, dus 4 GB komt uit op 4,40 euro; wat er verder in zit, zie je bij Minecraft-hosting bij MC-Node.
Reken tot slot op iets meer supportwerk. Hoe breder je versievenster, hoe vaker een bugmelding eigenlijk een vertaalprobleem blijkt. Een grens op de versies die je echt wilt bedienen is rustiger dan alles toelaten.
Veelgestelde vragen
Moeten spelers zelf iets installeren voor ViaVersion? Nee. ViaVersion draait volledig server-side, net als EssentialsX of LuckPerms. Spelers verbinden gewoon met het IP-adres en merken niets van de vertaallaag. Dat is het verschil met een modpack als All the Mods 10, waar iedereen dezelfde NeoForge-modlijst op Minecraft 1.21.1 moet installeren.
Werkt ViaVersion op een Forge- of NeoForge-server? Nee. Via is een plugin voor Bukkit-achtige software zoals Paper en Purpur, en een pure Forge- of NeoForge-server laadt geen plugins. Het zou ook niet helpen: mods voegen echte blokken en items toe die in een andere versie niet bestaan en dus niet te vertalen zijn.
Kan ik op 26.2 draaien en toch spelers op 1.21 toelaten? Ja, daarvoor installeer je ViaVersion en ViaBackwards samen. ViaBackwards vertaalt de nieuwere serverdata terug naar wat de oudere client begrijpt. Content die pas in 26.1 of 26.2 is toegevoegd, verschijnt voor die spelers wel als vervangend blok of item, of helemaal niet.
Werkt het samen met Geyser voor Bedrock-spelers? Ja. Geyser met Floodgate vertaalt het Bedrock-protocol naar Java, terwijl ViaVersion en ViaBackwards tussen Java-versies onderling vertalen. Ze zitten elkaar niet in de weg en draaien op veel servers naast elkaar op dezelfde Paper-installatie.
Kost ViaVersion prestaties? Ja, maar beperkt. Elke vertaalde speler kost wat extra CPU en de mapping-tabellen kosten geheugen bij het opstarten. Met een handvol spelers merk je er niets van; bij honderden spelers verspreid over veel versies wordt het meetbaar. Meet dat met spark.