ViaVersion + ViaBackwards: Multi-Version-Support auf einem Minecraft-Server
Minecraft bringt alle sechs Monate eine neue Version heraus, und die Spielerschaft verteilt sich ueber den gesamten Bereich von 1.8 bis zur aktuellsten Ausgabe. Manche bleiben wegen Piratenserver bei 1.12, andere sitzen fuer ein Modpack auf 1.16.5 fest, wieder andere warten auf Optimierungen in der neuen Version. Wenn der Server genau eine Version vorschreibt, faellt die Haelfte der Zielgruppe weg.
Das Via Project loest das. Drei Plugins (ViaVersion, ViaBackwards, ViaRewind) erlauben einen Server auf aktueller 1.21 bei gleichzeitiger Annahme von Clients ab 1.8. Das ist Industriestandard: Hypixel, Mineplex und praktisch jedes grosse Projekt setzt Via standardmaessig ein.
Dieser Guide erklaert die Funktionsweise der Protokollkompatibilitaet, die Installation auf Paper, Velocity und BungeeCord, die Versions-Supportmatrix, die Performance-Kosten und typische Fehler.
Das Problem verschiedener Versionen
Das Minecraft-Protokoll aendert sich mit jeder Major-Version. Zwischen 1.8 und 1.21 wurde folgendes umgebaut:
- Chunk-Format (legacy chunk format hin zu palette format ab 1.13)
- Item-System (numerische IDs hin zu namespaced strings)
- NBT-Strukturen fuer Entity und Tile Entity
- Netzwerkprotokoll-Pakete (neue IDs, neue Felder, entfernte Pakete)
- Kampfmechanik (1.8 ohne Cooldown, 1.9+ mit Attack-Cooldown)
- Dimension-Registry (ab 1.16+ dynamisch, auf 1.12 fest)
- Login-Sequenz (neue Konfigurationsphase ab 1.20.2+)
Ohne Kompatibilitaet kriegt ein 1.21-Client beim Verbinden zu einem 1.20-Server "Outdated server" und fliegt raus. In die andere Richtung genauso.
Was das Via Project ist
Das Via Project besteht aus drei verbundenen Plugins:
| Plugin | Aufgabe | Wann noetig |
|---|---|---|
| ViaVersion | Kern, alter Server nimmt neue Clients an | praktisch immer |
| ViaBackwards | neuer Server nimmt alte Clients an | wenn Server neuer als Client |
| ViaRewind | Unterstuetzung sehr alter Clients 1.7 bis 1.9 | separat |
Alle drei arbeiten zusammen. ViaBackwards braucht ViaVersion, ViaRewind braucht beide fuer den vollen Bereich.
Wie der Protokoll-Remap funktioniert
ViaVersion faengt Netzwerkpakete zwischen Client und Server ab und schreibt sie on-the-fly um.
Stellen Sie sich einen 1.21-Client und einen 1.20.4-Server vor. Der Client sendet einen Handshake mit protocol_version=767 (1.21). Der Server erwartet 765 (1.20.4). Ohne ViaVersion antwortet der Server "Outdated client".
Mit ViaVersion auf dem Server:
- Client sendet 1.21-Handshake
- ViaVersion faengt ab, merkt sich die echte Client-Version
- Ersetzt den Handshake durch 1.20.4, bevor er den Server erreicht
- Server akzeptiert den Client als 1.20.4
- Danach wird jedes ein- und ausgehende Paket zwischen den Formaten 1.21 und 1.20.4 umgeschrieben
Fuer jede Versions-Kombination liefert Via einen Satz "Protokolle" im Code: was umbenannt wurde, was entfernt wurde, wie jedes Feld konvertiert wird. Bei 1.21 zu 1.20.4 zu 1.19.4 zu 1.18.2 zu 1.17.1 und so weiter baut sich die Transformationskette automatisch auf.
ViaVersion: Vorwaertskompatibilitaet
ViaVersion laesst neue Clients auf einem alten Server spielen. Beispiel: Paper 1.16.5 Server (festgenagelt durch ein grosses Modpack, das nicht aktualisiert werden kann), Clients auf 1.21.
ViaVersion in plugins/ legen. Fertig. Nach einem Neustart koennen 1.17, 1.18, 1.19, 1.20, 1.21 Clients sich zum 1.16.5 Server verbinden.
Was funktioniert:
- Bewegung, Angriffe, Weltinteraktion
- Chat und Befehle
- die meisten Bloecke und Items
- Entities und Mob-Spawn
Was automatisch NICHT laeuft:
- neue Bloecke (Kupfer, Sculk) erscheinen als Platzhalter auf dem Client (etwa als schlichter Stein)
- neue Items (Mace, Trial Key) werden als Bedrock oder Air dargestellt
- neue Entities (Warden, Breeze) rendern nicht korrekt
- neue Mechaniken (Trial Spawner, Crafter) funktionieren nicht, der Server kennt sie nicht
ViaVersion rechnet sich, wenn der Server aus irgendeinem Grund nicht aktualisiert werden kann und Spieler keine alte Version installieren moechten.
ViaBackwards: Rueckwaertskompatibilitaet
Der umgekehrte Fall. Server auf 1.21, Clients kommen mit 1.17, 1.18, 1.19, 1.20. Sie sollen spielen koennen.
ViaVersion plus ViaBackwards installieren. ViaBackwards fuegt den umgekehrten Remap hinzu: der Server sendet 1.21-Pakete, ViaBackwards wandelt sie in das Format des Clients um.
Der spannendste Teil von ViaBackwards ist das Item Remapping. Auf dem 1.21-Server hat ein Spieler eine Mace im Inventar. Der 1.20.6-Client kennt Mace nicht. ViaBackwards tauscht sie visuell gegen etwas Aehnliches (iron_sword) und fuegt im Lore den Hinweis [1.21 item: mace] ein. Den Client kaputt machen ist keine Option, also ersetzt Via unbekannte Items immer durch den naechsten Aequivalent.
Analog bei Bloecken: copper_bulb wird zu redstone_lamp, trial_spawner wird zu mob_spawner, vault wird zu einem Fass mit Beschriftung und so weiter.
ViaRewind: Legacy-Clients
ViaBackwards unterstuetzt im Schnitt 4 bis 5 Major-Versionen zurueck (aktuell 1.17+). Fuer 1.8 und 1.9 braucht es ein separates Plugin, ViaRewind.
ViaRewind ist eine schwerere Krueckenloesung. Zwischen 1.8 und 1.9 hat Mojang die Kampfmechanik umgebaut (Attack Cooldown, Dual Wielding, Schilde). Zwischen 1.12 und 1.13 wurde das Inventarformat umgestellt (numerische Item-IDs hin zu namespaced Strings, das "Flattening"). Jede dieser Aenderungen verlangt komplexe Logik in Via, um neue Mechaniken fuer den alten Client zu emulieren.
ViaRewind deckt ab:
- 1.7.10 (ueber ViaLegacy, separates Plugin fuer sehr alte Clients)
- 1.8.x
- 1.9.x
- teilweise 1.10, 1.11, 1.12
Auf einem 1.8-Client funktioniert PvP wie 1.8: kein Cooldown, keine Schilde, alte Hitbox. Das ist wichtig: Projekte mit 1.8 PvP-Community halten absichtlich einen 1.21-Server mit Via, damit 1.8-Spieler das gewohnte Gameplay bekommen und 1.21-Spieler das moderne.
Supportmatrix
Stand 2026. Vor dem Produktiv-Deploy bei viaversion.com pruefen.
ViaVersion
| Serverversion | Unterstuetzte Clients |
|---|---|
| 1.8.x | 1.8 bis 1.21.x (ueber Via) |
| 1.12.2 | 1.12.2 bis 1.21.x |
| 1.16.5 | 1.16.5 bis 1.21.x |
| 1.18.2 | 1.18.2 bis 1.21.x |
| 1.19.4 | 1.19.4 bis 1.21.x |
| 1.20.4 | 1.20.4 bis 1.21.x |
| 1.21.x | 1.21.x bis 1.21.x (nur gleiche Version) |
ViaBackwards
| Serverversion | Unterstuetzte aeltere Clients |
|---|---|
| 1.21.x | 1.17 bis 1.21 |
| 1.20.x | 1.16 bis 1.20 |
| 1.19.x | 1.15 bis 1.19 |
| 1.18.x | 1.14 bis 1.18 |
ViaRewind
| Serverversion | Unterstuetzte Legacy-Clients |
|---|---|
| 1.21.x + Via | 1.8.x bis 1.12.x |
| 1.20.x + Via | 1.8.x bis 1.12.x |
| 1.19.x + Via | 1.8.x bis 1.12.x |
Die Kombination ViaVersion + ViaBackwards + ViaRewind auf Paper 1.21 liefert den vollen Bereich 1.8 bis 1.21. Mehr geht ohne kundenspezifische Entwicklung nicht.
Installation auf Paper / Spigot / Purpur
Der einfachste Fall. Standalone-Server.
- Die aktuellen Versionen aller drei Plugins von Modrinth laden
- Die JAR-Dateien in
plugins/ablegen:
plugins/
ViaVersion-5.x.x.jar
ViaBackwards-5.x.x.jar
ViaRewind-4.x.x.jar
- Server neu starten
- Konsole sollte zeigen:
[ViaVersion] Loaded 1.8 -> 1.21 protocols
[ViaBackwards] Loaded 1.17 -> 1.21 backward protocols
[ViaRewind] Loaded 1.7 -> 1.12 rewind protocols
- Pruefung per Befehl:
/viaversion list
Zeigt verbundene Spieler und ihre tatsaechlichen Clientversionen.
Installation auf Velocity
Velocity ist der moderne Proxy fuer Server-Netzwerke. Dort verhaelt sich Via anders: es laeuft auf dem Proxy, und jeder Backend-Server braucht kein eigenes Via.
Proxy plugins/:
plugins/
ViaVersion-5.x.x.jar
ViaBackwards-5.x.x.jar
ViaRewind-4.x.x.jar
Proxy plugins/viaversion/config.yml:
# Velocity-spezifisch
velocity-ping-interval: 60
velocity-ping-save: true
# Protokolle, die der Proxy annimmt
check-for-updates: false
# Backend-Server nicht anfassen
# Via verhandelt mit jedem einzeln
Vorteile von Via auf Velocity:
- eine Konfiguration fuer das gesamte Netz
- weniger CPU-Overhead: Remap erfolgt am Proxy, Backends erhalten native Pakete
- einfachere Versionsverwaltung
Nachteile:
- der Via-Verkehr laeuft durch den Proxy, etwas mehr Netz-Overhead
- wenn ein Backend eine andere Version als der Proxy hat, braucht es dort trotzdem Via
Empfehlung fuer Netze
Fuer kleine Netze (2 bis 3 Server gleicher Version) reicht Via auf dem Proxy. Fuer gemischte Konfigurationen (eine 1.21-Lobby, eine 1.8 PvP-Arena) Via auf jedem Server mit Versionsunterschied.
Installation auf BungeeCord
BungeeCord wird unterstuetzt, aber Velocity ist performance-technisch deutlich besser. Wenn kein konkreter Grund gegen Velocity spricht, wechseln.
Fuer BungeeCord:
plugins/
ViaVersion-5.x.x.jar
ViaBackwards-5.x.x.jar
ViaRewind-4.x.x.jar
Konfiguration plugins/ViaVersion/config.yml:
bungee-ping-interval: 60
bungee-ping-save: true
Auf Backends ist Via nicht noetig, solange die Backends die gleiche Protokollversion wie der Proxy nutzen.
Wichtige config.yml-Einstellungen
Die Datei plugins/ViaVersion/config.yml enthaelt Dutzende Optionen. Die wichtigsten im Ueberblick.
fix-non-full-blocks
# Korrigiert Hitboxen nicht-voller Bloecke fuer neue Clients auf altem Server
fix-non-full-blocks: true
Wird gebraucht, wenn neue Clients sich mit einem alten Server verbinden. Beispiel: 1.13+ Client mit flattened Bloecken auf 1.12.2 Server. Ohne diese Option werden einige Block-Hitboxen (Zaeune, Mauern) falsch berechnet.
auto-team
# Erstellt automatisch Teams, damit Namensschilder ueber Koepfen korrekt angezeigt werden
auto-team: true
Wichtig fuer 1.8-Clients. In 1.8 wurden Teams benutzt, um Nametags zu verstecken (Unsichtbarkeit). Ohne auto-team arbeiten Plugins wie NPCs oder vanish schlecht fuer 1.8-Clients.
remap-pings
remap-pings: true
Korrigiert den Serverlisten-Ping fuer Clients aller Versionen. Ohne diese Option sehen einige aeltere Clients den Server gar nicht in der Liste.
1-13-team-colour-change
1-13-team-colour-change: true
Korrigiert Team-Farben fuer Clients vor 1.13. Nuetzlich fuer PvP-Server mit gefaerbten Team-Tags.
chunk-border-fix
chunk-border-fix: true
Behebt Artefakte an Chunk-Grenzen fuer alte Clients auf einem neuen Server.
fix-infested-block-breaking
fix-infested-block-breaking: true
Kleiner, aber nerviger Fix. Ohne ihn brechen Infested-Bloecke fuer 1.14+ Clients zu langsam.
Performance
Protokoll-Remap ist nicht kostenlos. Jedes Paket zwischen Client und Server (in beide Richtungen) geht durch eine Kette von Konvertern.
Der Overhead haengt vom Versionsabstand ab:
| Abstand | CPU-Overhead pro Spieler |
|---|---|
| keiner (Client = Server) | ~0% |
| 1 Version (1.21 Client auf 1.20.4) | 3-5% |
| 3 Versionen (1.21 Client auf 1.19.4) | 8-12% |
| 5-8 Versionen (1.21 Client auf 1.16.5) | 15-25% |
| Maximum (1.21 Server, 1.8 Client ueber Rewind) | 25-40% |
Die Zahlen sind Richtwerte und haengen von der Serverlast ab. Der teuerste Remap sind Chunk-Daten (besonders das 1.13 Flattening: alte numerische IDs hin zu palette format).
Optimierung
Wenn ein 1.21-Server 70% der Spieler auf 1.21 und 30% auf aelteren Versionen hat, braucht es keine spezielle Anpassung, jede moderne CPU schafft das.
Bei Servern mit 300+ gleichzeitigen Spielern auf gemischten Versionen lohnen sich:
- Groesserer Thread-Pool fuer Via:
# config.yml
velocity-pinger-thread-count: 4
chunk-border-fix: true
fix-non-full-blocksabschalten, wenn die meisten Clients auf einer Version sind- ViaVersion auf dem Velocity-Proxy statt auf Paper, das entlastet die Backends
Pre-1.13 Flattening
Ein eigener Schmerzpunkt. Wenn ein 1.12-Client sich mit einem 1.13+ Server verbindet, konvertiert ViaRewind jeden Block und jedes Item zwischen zwei Identifikationssystemen (numerische IDs hin zu namespaced). Auf einem Chunk mit Tausenden Bloecken ist das messbar.
Fuer Server mit hohem Anteil an alten Clients ist ein separater 1.12.2-Server guenstiger als alles durch Rewind zu fuehren.
Grenzen
Via ist nicht magisch. Was es nicht kann:
Neue Bloecke und Items
Copper Bulb, Trial Spawner, Mace, Breeze Rod, Vault, alles neu in 1.21. Fuer einen 1.20-Client substituiert Via sie visuell, aber die Funktionalitaet fehlt. Ein 1.20-Spieler kann mit einem Crafter nicht interagieren (neuer 1.21-Block), der Client kennt den Befehl schlicht nicht.
Neue Dimensionen und Biome
Spawnt der Server eine Welt in einem neuen Biom (Cherry Grove aus 1.20), sieht ein 1.19-Client nur Plains, falsche Textur, falsche Partikel.
Neue Animationen und Features
Armadillo (neue 1.21 Entity) kann auf einem 1.20-Client gar nicht rendern oder als Schwein erscheinen. Neue Animationen wie Smite Wolf oder spezielle Attacken spielen auf alten Clients nicht ab.
Resource Packs
Resource Packs sind an eine konkrete Version gebunden. Ein Pack fuer 1.21 laeuft nicht auf einem 1.17-Client. Fuer Cross-Version-Server entweder mehrere Packs anbieten oder ein minimales Pack, das mit allen Zielen kompatibel ist.
PvP: 1.8 versus modern
Grosses Thema fuer Server mit PvP-Community.
1.8 PvP: Klick-Spam, kein Cooldown, lange Hitbox, kritische Treffer im Sprung. Der Kampf ist sehr schnell, Reaktion und Aim entscheiden.
1.9+ PvP: Attack Cooldown (Schwert-Ladeanzeige), Schilde blocken Schaden, Dual Wielding. Der Kampf ist langsamer, Timing entscheidet.
Wer einen 1.8-Server ueber ViaVersion betreibt und 1.21-Clients akzeptiert, stellt 1.21-Spieler auf 1.8-Mechanik (der Server ist 1.8, also gelten 1.8-Regeln). Das ist das typische Hypixel-Stil PvP-Setup.
Wer einen 1.21-Server mit ViaBackwards und ViaRewind betreibt und 1.8-Clients akzeptiert, stellt 1.8-Spieler auf 1.21-Mechanik. Viele 1.8-Spieler wollen das nicht, sie kommen fuer das alte PvP.
Fazit: Fuer einen PvP-Server die Zielmechanik festlegen und die passende Basis waehlen.
Troubleshooting
"Outdated server" / "Outdated client"
Das haeufigste Problem. Moegliche Ursachen:
- Client ist neuer als die maximale von ViaVersion unterstuetzte Version. ViaVersion aktualisieren.
- ViaVersion ist nicht geladen. Konsole pruefen.
- ViaVersion-Cache beschaedigt.
plugins/ViaVersion/cache/loeschen und neu starten.
Invalid packet / client disconnected
Meist bedeutet es einen abgebrochenen Remap auf einem nicht unterstuetzten Paket. Oft schickt ein Client-Mod eigene Pakete. Loesung:
- Client auf inkompatible Mods pruefen (altes Schematica, altes BetterFPS).
- ViaVersion auf die neueste Version updaten.
debug: truein config.yml setzen und nachsehen, welches Paket genau bricht.
NBT-Schaden beim Item-Transfer zwischen Versionen
1.20-Client haelt eine Mace von einem 1.21-Server. Beim Speichern kann die NBT-Struktur korrupt werden, weil der Client neue Felder nicht kennt. Via behandelt das normalerweise sauber, aber wenn der Spieler das Item ablegt und wieder aufhebt, ist Datenverlust moeglich.
Loesung:
handle-invalid-player-data: truein config.yml aktivieren- Spielern auf alten Versionen keine neuen Items direkt geben
Chunks werden nicht geladen
Meist ein Konflikt mit ProtocolLib oder einem anderen Paket-manipulierenden Plugin. Sicherstellen, dass ProtocolLib mit der Paper- und Via-Version kompatibel ist. Beide aktualisieren.
"Your protocol is not supported"
Der Client ist sehr alt (1.6.4 oder aelter) oder ein Beta-Snapshot, den Via nicht unterstuetzt. Nicht jede Version wird gestuetzt, insbesondere aufgegebene Pre-Releases und Snapshots nicht.
Via + ProtocolLib
ProtocolLib wird von vielen Plugins benutzt, um Pakete abzufangen (HolographicDisplays, NPC-Plugins, TAB-Plugins).
Via und ProtocolLib koennen sich ins Gehege kommen, weil beide Pakete umschreiben. Ueblicherweise laeuft Via zuerst, ProtocolLib danach, oder umgekehrt. Die falsche Reihenfolge erzeugt kaputte Pakete.
Loesung:
- beide auf die neuesten Builds aktualisieren
- in
config.ymlvon ProtocolLibhandshake-hook-mode: LATEsetzen - jedes Plugin, das ProtocolLib verwendet, einzeln testen
Wenn Probleme auftauchen, ProtocolLib kurzzeitig deaktivieren und pruefen, ob Via allein laeuft.
Via + Geyser
Geyser erlaubt Bedrock-Clients den Zugriff auf einen Java-Server. Separate Aufgabe: Via kuemmert sich um Java-Clients, Geyser um Bedrock.
Beide sind kompatibel und laufen oft zusammen. Installationsreihenfolge:
- Geyser in
plugins/ - ViaVersion + ViaBackwards + (falls noetig) ViaRewind in
plugins/ - Floodgate (fuer die Authentifizierung von Bedrock-Spielern ohne Microsoft-Account)
Keine Konflikte, die Plugins arbeiten auf verschiedenen Ebenen: Geyser uebersetzt Bedrock-Protokoll in Java-Protokoll, Via uebersetzt zwischen Java-Protokollversionen.
Best Practices
Grosser Bereich oder Stabilitaet
Ein Server, der 1.8 bis 1.21 aufnimmt, ist ein sehr weiter Bereich. Vorteile: maximale potentielle Zielgruppe. Nachteile: CPU-Overhead, Bugs an Versionsnahtstellen, schwieriger zu pflegen.
Empfehlung: den Bereich aufnehmen, den die reale Zielgruppe wirklich braucht. Ein Survival-Server mit ernsthaften modernen Features deckelt bei 1.19+. Ein PvP-Projekt mit 1.8-Community baut den vollen Via- und Rewind-Stack und akzeptiert die damit verbundenen Probleme.
Via regelmaessig aktualisieren
Das Via Project entwickelt sich aktiv. Jede Major-Version von Minecraft braucht ein Via-Update. Einen Update-Reminder einrichten (per Plugin oder simplen Kalendereintrag) und vor dem Deploy den Changelog lesen.
Exotische Client-Mods meiden
Viele Via-Probleme sind nicht die Schuld von Via, sondern stammen von kundenspezifischen Client-Modifikationen (Feather Client, Lunar Client, Badlion). Die zerstoeren haeufig den Packet-Flow. Wenn ein Spieler Probleme meldet, ist die erste Frage "was ist auf dem Client installiert".
Jede neue Version testen
1.21.4 ist da? Via aktualisieren, Testspielsitzung mit neuem Client auf altem Server durchfuehren. Logs ansehen. Probleme tauchen oft in spezifischen Szenarien auf (ein bestimmtes Item, ein bestimmter Mob).
Server-Absicherung und DDoS
Cross-Version-Server sind beliebt und werden haeufiger angegriffen, mehr Spieler bedeuten mehr neidische Konkurrenten, unzufriedene Admins anderer Projekte, schlichte Trolle. Ueber die normale TCP-Filterung hinaus sicherstellen, dass Via unter Last sauber arbeitet.
MineGuard laesst Minecraft-Verkehr durch einen Filter laufen und verwirft Muell-Pakete, bevor sie den Server erreichen. Via sitzt obendrauf, es ist egal, woher das Paket kommt, solange es ein valider Handshake ist. Beide Schichten stapeln sich sauber.
Fazit
Das Via Project ist eine notwendige Komponente fuer jeden ernsthaften Minecraft-Server, der ein Publikum ueber mehrere Versionen hinweg aufnehmen moechte. ViaVersion ist praktisch immer erforderlich, ViaBackwards wird gebraucht, sobald der Server neuer als der uebliche Client ist, ViaRewind ergaenzt die Unterstuetzung fuer die Legacy-1.8-Zielgruppe.
Die Installation ist denkbar simpel: JAR-Dateien in plugins/ legen und neu starten. Die Feinjustierung: ein Dutzend Optionen in config.yml, die meisten davon bereits mit sinnvollen Defaults.
Die Grundregel: die Kosten verstehen. Via ist nicht CPU-frei, und neue Server-Features erreichen keine alten Clients. Den Bereich waehlen, der zur realen Zielgruppe passt, nicht den theoretisch maximal moeglichen.
Schützen Sie Ihren Server vor DDoS-Angriffen
Kostenloser Schutz mit 5-Minuten-Einrichtung. 1 TB Traffic inklusive.
Kostenlos testenWeitere Artikel
Bestes Minecraft Server Hosting 2026 - Ranking und Vergleich
Ehrliches Ranking von Minecraft-Hosting-Anbietern 2026. Wir testen Leistung, vergleichen Preise und pruefen DDoS-Schutz. Top 10 Anbieter mit detaillierten Vor- und Nachteilen.
Minecraft Server TPS-Optimierung: Vollstaendiger Guide
Alle Methoden zur TPS-Steigerung: Paper- und Purpur-Einstellungen, Plugin-Audits, Welt-Vorgenerierung, View Distance und DDoS-Schutz gegen Performance-Killer.
Minecraft Server unter Windows: Schritt-fuer-Schritt Anleitung
Komplette Anleitung zum Betrieb eines Minecraft-Servers unter Windows: Java installieren, Paper herunterladen, start.bat mit JVM-Flags erstellen, Portweiterleitung, Firewall-Regeln, Autostart mit NSSM und haeufige Windows-Probleme.