• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Seed zu pack.png gefunden

Chrisliebär❤️

nur echt mit ❤️
Moderator
Registriert
19 Mai 2014
Beiträge
1.671
Diamanten
673
Vermutlich für die meisten völlig unbekannt, gibt es eine Szene von Minecraft Spielern, die Werkzeuge und Tools entwickelt haben, mit denen man grundsätzlich aus einem einzelnen Screenshot der generierten Landschaft den kompletten Seed berechnen kann. Beispielsweise wurde auf diese Weise pewdiepies Singleplayer Seed über Merkmale in seinem Videos berechnet aber auch der Seed anderer Projekte, wurde auf diese Weise bestimmt. Auf der selben Welt, wie sein Idol zu spielen, mag vielleicht noch komisch sein, aber auf PVP Servern, bedeutet der Seed, dass man die exakten Positionen von wertvollen Ressourcen exakt vorberechnen kann, ohne dass man auf irgendwelche Cheats angewiesen ist.

Warum ist das jetzt eine Neugikeit? Weil sich eine Community gebildet hat, welche versucht einzelne Seeds aus sehr wenig verfügbaren Daten zu extrahieren. Erst vor einigen Wochen, macht die News die Runde, dass der Seed des ehemaligen Hauptmenüvideos gefunden wurde. Für die, die nicht wissen, was damit gemeint ist, es handelt sich um diese Welt:
1599319959767.png


In den aktuellen Versionen, wurde der Hintergrund ausgetauscht, aber für einige Spieler hatte der kurze Clip genug Bedeutung, dass sie sich auf die Suche gemacht haben und fündig wurden. Aber das soll hier eigentlich gar nicht das Thema sein. Wer sich trotzdem für die Geschichte hinter dem Title Screen interessiert, findet im Spoiler mehr Informationen.

Benötigte Version: Beta 1.7.3 (ggf. im Launcher historische Versionen aktivieren)
Koordinaten: X=61, Y=75, Z=-68
Seed: 2151901553968352745 oder 8091867987493326313

Sehr gutes Video, dass auch auf viele technische Fragen eingeht:


Heute geht es um etwas wesentlich Älteres und Schwierigeres: pack.png. Das ist die Standardgrafik, die Minecraft für Texturepacks läd, welche kein eigenes Symbol mitbringen und es ist die Grafik, die man in Graustufen als Serversymbol in der Serverliste sieht, wenn der Server kein Icon zur Verfügung gestellt hat. Es handelt sich um diese Grafik:
1599320710918.png


Den meisten dürfte dieses Bild sehr bekannt vor kommen, auch wenn ihm niemand wirklich viel Aufmerksamkeit geschenkt hat. Außerdem ist das die einzige Version dieses Bildes, dass die Zeit überlebt hat. Es gibt nur diese Version mit 128x128 Pixeln. Die Suche nach dem Seed für pack.png hat inzwischen sogar Notch erreicht, welcher zwar keine zusätzlichen Informationen besteuern konnte, aber zumindest bestätigten konnte, dass die Informationen über den Ursprung dieser Welt der Zeit zum Opfer gefallen sind. Das hat sich heute geändert, der Seed für pack.png wurde gefunden.

1599321291135.png


Der Besuch dieser Welt gestaltet sich allerdings etwas schwieriger, da diese alte Minecraftversion keine Eingabe eines Seeds erlaubt. @Taminoful hat daher mit einem NBT Editor den Seed und die Spielerkoordinaten in eine vorgenerierte Welt gepackt, ich hab daraus die angehängte "World1.zip" gemacht. Den Ordner "World1" müsst ihr dafür einfach in den "saves" Ordner eurer alten Minecraftversion packen. Meines Wissens nach, sind aktuelle Minecraftclients nicht mehr in der Lage solche alten Welten zu konvertieren. Der Download befindet sich am Anhang.
Seed: 3257840388504953787
Koordinaten: x=49, z=0
Benötigte Version: a1.2.2a (im Launcher historische Versionen aktivieren)


Was dieses Projekt so besonders macht, ist nicht nur dass man nun ein Stück Minecraftgeschichte erforschen kann, sondern vor allem der technische Aufwand, der hinter solchen Projekten steckt. Der Raum der Seeds in Minecraft, ist 2^64 Elemente groß. Ausgerechnet ist das 18.446.744.073.709.551.616. Der naive Ansatz wäre alle diese Welten zu generieren und dann jede dieser Welten nach exakt diesem Muster abzusuchen. Es braucht keinen Taschenrechner (der bringt bei diesen Zahlen eh nichts mehr) um festzustellen, dass das unmöglich ist, selbst wenn sich jeder einzelne Mensch an der Suche beteiligen würde.

Der Trick, der bei der Suche verwendet wurde, ist natürlich zuerst das Ausschlussverfahren. Die Welt kann nicht in einem Generator erzeugt worden sein, welcher erst nach dem Release von pack.png entwickelt wurde. Außerdem konnte in der Datei ein Zeitstempel gefunden werden, der den genauen Zeitpunkt angibt, zu welchem diese Grafik gespeichert wurde. Da der Mapgenerator in diesem Zeitraum nicht angefasst wurde, waren die möglichen Versionen stark eingeschränkt. Eine zusätzliche Sorge war, dass es sich um einen Entwicklerbuild handeln könnte, der nie veröffentlich wurde, das stellte sich aber als falsch raus. Aber wie funktioniert das ganze nun technisch? Dazu muss man wissen, dass ein Computer keinen Zufall kennt. Es berechnet exakt das, was im Programmcode steht. Wie bekommt man also scheinbare Zufallszahlen: Man nimmt irgendwelche Werte, die sehr zufällig aussehen (z.B die Mausbewegungen der letzten Stunde) und füttert damit einen Pseudozufallszahlen Generator. Dieser initiale Wert wird auch Seed genannt und solange man den selben Seed benutzt, wird der Generator die selbe Folge an Zufallszahlen generieren. Ich hab hierzu auch ein Video finden können, dass das Verfahren mit einem sehr einfach Algorithmus beschreibt, es gibt aber auch deutlich komplexere Verfahren, die nicht so anfällig sind.

Normale Zufallsgeneratoren, die keinen kryptografischen Ansprüchen genügen müssen (und damit auch der Minecraftgenerator), lassen sich oft sehr gut zurückrechnen. Kennt man beispielsweise den Algorithmus aus obigem Video, aber nicht die Konstanten a oder b, so reichen gerade mal zwei Zufallszahlen, um die Gleichung nach a und b auflösen zu können. Damit bekommt man dann zwar nicht den Seed, aber kann in beide Richtungen Zufallszahlen generieren.

Im Falle von Minecraft sind alle diese Parameter bekannt. Außerdem nutzt Minecraft ein mehrstufiges System an Zufallsgeneratoren, so dass beispielsweise der Seed für einen Chunk sich nur aus dem Weltseed und den Chunkkoordinaten zusammen setzt. Wenn man die Ausgabe des Generators kennt, kann man den Seed zurück rechnen. In manchen Fällen werden Bits abgeschnitten oder eine Gleichung kann nicht mehr eindeutig gelöst werden. Das bedeutet von der anderen Seite aber auch, dass mehrere Seeds das selbe Ergebnis erzeugen können. Anhang der Features im Chunk, kann man dann versuchen einen Zusammehang zwischen dem Weltseed und der entstandenten Welt zu erzeugen. Je mehr Informationen man über die Welt hat, desto mehr Informationen kann man zusammen setzen um die Gleichung zu lösen. Bei pack.png sind jedoch kaum solche Informationen vorhanden, das Bild ist zu klein. Teil des Projekts war daher sogar ein Upscaler Neural Network, welches mit anderen Welten und Seeds trainiert wurde, um das Bild in einer höheren Auflösung auszurechnen.

1599324023850.png


Und so haben viele tausend Minecraftspieler versucht mehr und mehr Informationen über den Seed zu gewinnen. Wo sind beispielsweise die Chunkgrenzen? Und vor allem: Wie sehen die Wolken aus, denn die Wolken in Minecraft sind ebenfalls prozedural generiert, aber unabhängig vom Seed der Welt. Während das Terrain selbst ausschließlich über den Worldseed generiert wird, werden Wasserquellen, wie diese im Bild, über den Chunkseed generiert. Da zudem die Wasserhöhe bekannt ist, kann die exakte Höhe der Wasserquelle in Blöcken bestimmt werden. Die Suche beschränkte sich damit auf Chunkseeds, welche eine Wasserquelle in entsprechender Höhe erzeugen können. Über die ungefähre bekannte Position in der Spielwelt, wurden dann alle Chunkseeds durchsucht, die solch eine Wasserquelle erzeugen würden und die damit verbundenen Weltseeds bestimmt, die einen solchen Chunk in der ungefähren Umgebung erzeugen könnten. Damit verbliebt nur noch eine automatische Suche, bis der Seed eventuell gefunden wurde.

Hier noch ein paar englische Videos, welche vor allem auch dokumentieren, wie sich die Techniken zur Seedrekonstruktion entwickelt habem.



Und in einigen Tagen vermutlich auch ein Video zum pack.png Seed.


Und zum Abschluss natürlich die Website des Projekts selbst: https://packpng.com/
 

Anhänge

  • World1.zip
    3,1 MB · Aufrufe: 232

Chrisliebär❤️

nur echt mit ❤️
Moderator
Registriert
19 Mai 2014
Beiträge
1.671
Diamanten
673
Inzwischen ist auch das Video von "SalC1" draußen, welcher das Projekt mehr oder weniger begonnen hat. Leider auf englisch, aber das werden wir nicht ändern können. Lernt Englisch, das braucht ihr im Leben!


Da sind so viele verschiedene Wissenschaften in diesem Projekt. Das ist ein wunderschönes Beispiel für moderne Computerforensik, Mathematik und numerische Statistik.
 

wbkkramer

Ehemaliges Teammitglied
Ehem. Teammitglied
Registriert
11 Januar 2015
Beiträge
53
Alter
34
Diamanten
190
Ich hatte so viel Gänsehaut beim ansehen des Videos. HAMMER.

Also liebe Kinder, passt gut in Mathe auf. Ihr werdet es brauchen!
 

Matthias

I'm a rocket ship on my way to Mars
Administrator
Registriert
6 Juli 2011
Beiträge
1.530
Alter
17
Diamanten
48
Minecraft
Matthias
Danke für den ausführlichen Thread, war spannnd zu lesen!
 
Oben