Tools · UUID
Minecraft Offline-UUID Generator
Jeder Offline-Minecraft-Server — Bukkit, Spigot, Paper, Purpur, Folia — braucht für jeden Spieler eine stabile Kennung ohne Mojang-Abfrage. Dafür wird "OfflinePlayer:" + Benutzername per MD5 gehasht und als UUID Version 3 gespeichert. Dieses Tool führt dieselbe Berechnung im Browser aus — du erhältst die UUID, die der Server erzeugen würde, bevor der Spieler sich anmeldet.
Minecraft-Benutzernamen haben 1–16 Zeichen. Groß-/Kleinschreibung zählt — Notch und notch ergeben unterschiedliche UUIDs.
Wie Minecraft Offline-UUIDs exakt berechnet
Der gesamte Mechanismus steckt in einer Zeile der Java-Standardbibliothek, die jeder Bukkit-Server seit 2012 aufruft. So in CraftBukkit PlayerProfile:
UUID offlineUUID = UUID.nameUUIDFromBytes(
("OfflinePlayer:" + username)
.getBytes(StandardCharsets.UTF_8)
);UUID.nameUUIDFromBytes ist in RFC 4122 §4.3 als Version-3-UUID definiert: MD5 der Eingabebytes, dann zwei Nibbles für Version und Variante überschreiben:
byte[6]— oberes Nibble auf0x3(UUID Version 3).byte[8]— oberste zwei Bits10(RFC 4122 Variante).
Die 16 Bytes werden als Kleinbuchstaben-Hex mit Bindestrichen 8-4-4-4-12 ausgegeben. Das ist die UUID in ops.json, whitelist.json, world/playerdata/ und jedem Plugin-Speicher.
Warum das Präfix "OfflinePlayer:"?
Ohne Namespace könnte "abc" theoretisch mit einer Mojang-UUID kollidieren. Mit OfflinePlayer: kommen alle Offline-UUIDs aus einem Hash-Raum, den Mojang nie nutzt.
Online-UUID vs. Offline-UUID — der Unterschied
| Eigenschaft | Online-UUID (Mojang) | Offline-UUID |
|---|---|---|
| UUID-Version | Version 4 — zufällig | Version 3 — namensbasiert MD5 |
| Zugewiesen von | Mojang/Microsoft bei Kontoerstellung | Server lokal beim ersten Join |
| Ändert sich bei Rename? | Nein — am Account gebunden | Ja — neuer Name = neuer Hash = neue UUID |
| Braucht Mojang-API | Ja (online-mode=true) | Nein — rein lokal |
| Global eindeutig? | Ja — kryptografisch zufällig | Pro Username — gleicher Name → gleiche UUID überall |
Wann du wirklich eine Offline-UUID brauchst
Die meisten Admins stoßen erst bei Problemen auf Offline-UUIDs. Hier die Situationen, in denen die exakte UUID vor dem Connect wichtig ist:
Operator-Status vor dem ersten Join
ops.json speichert Einträge wie {"uuid":"...","name":"Steve","level":4}. Falsche UUID → doppelter Eintrag beim Join. Offline-UUID hier generieren, in ops.json einfügen — fertig.
Whitelist ohne laufenden Server
Neuer Server oder Wartung — whitelist.json vorab befüllen. Wie bei ops muss die UUID zur Server-Berechnung passen. Jeden Username hier eingeben und Ergebnisse einfügen.
Plugin-Daten-Migration und Reparatur
Plugins speichern pro Spieler <UUID>.yml oder DB-Zeilen. EssentialsX, LuckPerms, Vault-Economy, GriefPrevention, Lands, RPG-Plugins — bei Serverwechsel, korrupten Records oder Backup-Import unter anderer UUID brauchst du die exakte Offline-UUID.
Migration Online-Modus → Offline-Modus
Wechsel online-mode von true zu false = neue UUID für jeden Spieler. Alte Daten unter Mojang-UUID. Mojang-UUID per API, Offline-UUID hier, alle Dateien und DB-Zeilen umbenennen — sonst verlieren Spieler ihren Fortschritt.
Plugins und Admin-Skripte schreiben
Spieler, der nie gejoint ist: Bukkit.getOfflinePlayer(name) kann den Main-Thread blockieren. UUID selbst mit derselben Formel berechnen — Java- oder Python-Output aus diesem Tool nutzen.
BungeeCord- und Velocity-Netzwerke
Proxy im Offline-Modus berechnet Offline-UUID und leitet an Backends weiter — Backend-online-mode ist für UUID-Zuweisung irrelevant. Online-Proxy holt Mojang-UUID. Proxy-Modus kennen, bevor du dich auf dieses Tool für Netzwerke verlässt.
Häufige Fehler und Fallstricke
Falsche Groß-/Kleinschreibung
Usernames sind im Hash case-sensitive. xXDragon_SlayerXx und xxdragon_slayerxx sind verschiedene Offline-UUIDs. Profilseite oder Session-Screen prüfen — nicht raten.
Mojang-UUID auf Offline-Server
UUID von api.mojang.com ist Online-UUID (Version 4). In ops.json auf Offline-Server passt sie nie — der Server erzeugt Version-3 beim Join und ignoriert deinen Eintrag.
Leerzeichen und Sonderzeichen
Vanilla erlaubt Buchstaben, Ziffern, Unterstriche — manche Launcher erlauben mehr. Alles geht in den Hash — Hello World ≠ HelloWorld. Username exakt so einfügen, wie er ist.
Proxy überschreibt die UUID
BungeeCord mit ip_forward: true oder Velocity mit player-info-forwarding-mode = modern sendet ein Login-Paket mit der vom Proxy gewählten UUID. Online-Proxy: Mojang-UUID; Offline-Proxy: Offline-UUID. Backend-Berechnung wird umgangen.
Häufig gestellte Fragen
Was ist eine Minecraft-Offline-UUID?
Eine Version-3-UUID aus MD5("OfflinePlayer:" + username). Server mit online-mode=false nutzen sie ohne Mojang-Session-API. Stabil pro Username, aber unabhängig von der Microsoft-Account-UUID.
Ändert sich die UUID bei Rename?
Ja — Hash des Namens. Rename von Builder123 zu Builder_123 = neue UUID. Daten unter alter UUID sind unsichtbar — Dateien manuell umbenennen.
Welche Server-Software nutzt exakt diese Formel?
CraftBukkit, Spigot, Paper, Purpur, Pufferfish, Folia und praktisch jeder Bukkit-Fork. Vanilla Offline-Modus ebenso. BungeeCord/Velocity im Offline-Modus auch — Online-Proxies leiten Mojang-UUID weiter.
Ist die Offline-UUID case-sensitive?
Ja. MD5 über UTF-8-Rohbytes. Immer die Schreibweise des Clients verwenden — das hasht der Server.
Offline-UUID für LuckPerms?
LuckPerms nutzt Offline-UUID automatisch beim ersten Connect. Für Vorab-Import: Username hier, UUID kopieren. Oder /lp user <username> info ingame zur Bestätigung.
Warum passt meine Offline-UUID nicht zu playerdata?
Drei Ursachen: (1) falsche Schreibweise; (2) Online-Proxy mit Mojang-UUID; (3) Plugin überschreibt UUID-Zuweisung. Log-Zeile UUID of player X is Y ist maßgeblich.
Ist das Tool sicher — werden Usernames gesendet?
Nein. MD5 läuft vollständig im Browser per JavaScript. Kein Username oder UUID verlässt dein Gerät.
Wo finde ich Offline-Mode-Server?
Tausende Java- und Bedrock-Listings auf der MinecraftServer.Buzz Serverliste. Auch Server Cloud oder Minecraft-Service-Status bei Verbindungsproblemen.