Table of Contents
Lesen des Minecraft Sourcecodes
Lesen des Minecraft Sourcecodes ist eine wichtige Eigenschaft beim Modden. Das ist hauptsächlich, weil
- die meisten Sachen in Minecraft nicht dokumentiert sind
- Dokumentationen/Tutorials veralten ziemlich schnell
Um den Minecraft Sourcecodes zu lesen, musst du diese erst generieren. Siehe den Abschnitt “Generating Minecraft Sources” in Einrichtung einer Mod-Entwicklungsumgebung.
Suchen nach einer Minecraft-Klasse
Um eine Minecraft-Klasse zu suchen, folge diesen Schritten:
IntelliJ IDEA
- Öffne das Such-Panel mit
Ctrl + N
- Stelle den Suchbereich auf
Project and Libraries
oder weiter. - Gib den Kassennamen in die Suchzeile ein
Visual Studio Code
- Öffne das Such-Panel mit
Ctrl + P
- Suche den Klassennamen mit dem Prefix
#
In Visual Studio Code kannst du auch Ctrl + T
nutzen, um die Klassensuche direkt zu öffnen.
Das Finden der gesuchten Klasse
Das Finden des Codes den du suchst, ist eine herausfordernde Aufgabe. Hier paar einfache Tipps.
- Nutze die Möglichkeiten der IDE, den relevanten Code, wie
Call hierarchy
,Method hierarchy
oderType hierarchy
. - Schau in Open-Source-Mods nach, die ähnlich wie die ist, die du machen willst.
- Wenn du neuen Inhalt hinzufügen möchtest, ist die Wahrscheinlichkeit groß, dass du auf die Register, definiert in
net.minecraft.util.registry.Registry
, zugreifen musst. - Merk dir, dass alles immer in der Main-Klasse (
net.minecraft.client.main.Main
für den Client,net.minecraft.server.Main
für den Server).
Lesen des Bytecodes
Lesen des Bytecodes ist gelegentlich nötig, da
- Mixins im Bytecode arbeiten und nicht im Sourcecode. Verstehen des Bytecodes ist essentiell, wenn du komplexe Mixins schreibst.
- Decompiler (FernFlower) sind nicht perfekt. Es produziert manchmal ungültigen Java-Code wie
int i = true;
.
Wenn du nicht mit Java-Bytecode vertraut bist, lese die JVM Spezifikationen.
Um den Bytecode zu sehen, folge diesen Schritten.
IntelliJ IDEA
- Öffne die Klasse, die du in Bytecode sehen möchtest
- Wähle
View
aus dem Hauptmenü - Wähle
Show Bytecode
Andere Programme
Wenn deine IDE Bytecode nicht anzeigen kann, kannst du Bytecode-Viewer, wie https://github.com/Konloch/bytecode-viewer.
FAQ
Wo ist der generierten Sourcecode?
Es befindet sich entweder im Gradle-Cache des Benutzers (~/.gradle/caches/fabric-loom
) oder im Gradle-Cache des Projekts (./.gradle/loom-cache
).
Du kannst die Source-JAR-Datei außerhalb Ihrer IDE verwenden.