Ein mrpack ist eine ZIP-Datei, die lügt, eine ZIP-Datei zu sein
Wenn du eine .mrpack in .zip umbenennst, erhältst du ein Manifest und einen Overrides-Ordner, aber keine Mods – die JARs liegen auf Modrinths CDN und werden per Hash abgerufen.
Ein .mrpack ist ein ZIP-Archiv, also funktioniert das Umbenennen in .zip und das Entpacken – und liefert fast nichts Brauchbares. Du bekommst ein modrinth.index.json, einen overrides-Ordner und überhaupt keine Mods. Die JARs waren nie darin.
Warum die Mods fehlen
Modrinth-Pakete speichern ein Manifest, keine Nutzdaten. Jeder Eintrag in modrinth.index.json listet eine Download-URL sowie einen SHA-1- und einen SHA-512-Hash für die Datei, die diese URL zurückgeben soll. Der Launcher liest das Manifest, ruft jede Datei ab, überprüft den Hash und legt sie erst dann in der Instanz ab.
Dieses Design hält Pakete klein und ermöglicht ein Paket-Update, ohne jedes JAR erneut hochzuladen. Es bedeutet aber auch, dass ein Paket offline unbrauchbar ist, bis es einmal aufgelöst wurde.
Was das Manifest tatsächlich enthält
| Feld | Bedeutung |
|---|---|
formatVersion | Schemaversion des Manifests |
game | Immer "minecraft" – die Versionen stehen in dependencies |
files | Array aus path, hashes, downloads, env |
dependencies | Loader- und Minecraft-Versionen, die zuerst installiert werden |
Das Feld env bei jeder Datei ist das, das die Leute übersehen. Es gibt – getrennt für client und server – an, ob die Datei required, optional oder unsupported ist – und eine Datei ohne env ist auf beiden erforderlich. Eine als client-only markierte Mod sollte gar nicht erst in den mods-Ordner eines Servers kopiert werden – genau das ist eine häufige Ursache für einen Server, der nicht startet.
Die Hash-Prüfung ist nicht optional
Wenn der SHA-1 einer heruntergeladenen Datei nicht zum Manifest passt, ist die Datei falsch: ein abgebrochener Download, eine als JAR gespeicherte CDN-Fehlerseite oder ein manipulierter Mirror. Ein Konverter, der die Überprüfung überspringt, packt dir ohne Weiteres eine kaputte Instanz zusammen. Die Überprüfung ist der ganze Grund, das lokal zu erledigen, statt einem beliebigen Repack zu vertrauen.
Client- versus Server-Ausgabe
Dasselbe Manifest erzeugt je nach Ziel zwei verschiedene Archive:
- Client-Paket – alles, plus
overrides, zusammengeführt im Instanz-Stammverzeichnis, bereit für einen Launcher, der ein ZIP akzeptiert. - Server-Paket – Einträge überspringen, deren
env.serverunsupportedist, den Rest behalten undserver-overrides/überoverrides/legen statt überclient-overrides/.
Nur Java Edition. Bedrock hat kein äquivalentes Format; Bedrock-Add-ons sind .mcaddon/.mcpack-Archive mit einem manifest.json von völlig anderer Form, und kein Modrinth-Paket lässt sich darauf auflösen.
Overrides überschreiben, sie führen nicht zusammen
Dateien unter overrides/ werden über die Instanz kopiert, nachdem die Mods platziert wurden. Eine Konfigurationsdatei in Overrides ersetzt die Standardkonfiguration der Mod vollständig. Wenn ein Paket eine Konfiguration in Overrides mitliefert und du diese Konfiguration zusätzlich in der Instanz bearbeitest, gewinnt beim nächsten Auflösen die Overrides-Kopie.
Konvertiere ein Manifest, überprüfe jeden Hash und erhalte ein launcher- oder serverbereites ZIP im MRPACK to ZIP Converter.