Java, Minecraft HackedClient Error?
Guten Tag,
Ich programmiere einen Minecraft HackedClient. Dazu benutze ich logischerweise Eclipse. Ich habe erst das Gerüst gemacht, Module bestehen noch keine.
Immer wenn ich den Client starte (debug oder normal) crasht er, sobald ich eine Welt betrete. Den Client code ich für die 1.8.8. Im Projekt werden mir keine Fehler angezeigt, versucht habe ich ebenfalls: Project -> Clean... | hat aber nicht geklappt.
Die Fehler die mir angezeigt werden sind nicht von mir gecodet, sollten also keine Fehler ergeben.
Crash:
[Client thread/FATAL]: Unreported exception thrown!
java.lang.NoSuchMethodError: net.minecraft.client.renderer.EntityRenderer$1.<init>(Lnet/minecraft/client/renderer/EntityRenderer;)V
at net.minecraft.client.renderer.EntityRenderer.getMouseOver(EntityRenderer.java:493) ~[bin/:?]
at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1504) ~[bin/:?]
at net.minecraft.client.renderer.EntityRenderer.func_181560_a(EntityRenderer.java:1324) ~[bin/:?]
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1132) ~[bin/:?]
at net.minecraft.client.Minecraft.run(Minecraft.java:424) [bin/:?]
at net.minecraft.client.main.Main.main(Main.java:113) [bin/:?]
at Start.main(Start.java:11) [bin/:?]
Specs, mit denen der Client auf meinem PC gestartet wird:
CPU: Intel Core i7 7700 | 8 Kern | 3,6GHz
GPU: NVIDIA GeForce GTX 1070 | 8GB Grafikspeicher
RAM: Mein PC: 32 GB | Minecraft zugewiesen: 16GB
4 Antworten
EntityRenderer$1.<init>
<init> steht meistens für new EntityRenderer(parameters)
Vielleicht wurden falsche Parameter übergeben, weshalb der jetzt nicht mehr den Konstruktor finden kann.
EntityRenderer#getMouseOver
Hast du hier in dieser Methode vielleicht irgendwas verändert?
Dann wäre es am besten, wenn du es rückgängig machst, oder die richtigen Parameter verwendest, falls dort eine neue Instanz von EntityRenderer erstellt wird.
new EntityRenderer$1(this)
von ersetze zu:
new EntityRenderer(this)
Wäre ein Versuch wert.
Schon komisch, hat der Client denn jemals funktioniert, also konntest du ihn jemals starten?
Ja, hab letztens mal Killaura gemacht. Hab mich dann aber erinnert, dass ich den HackedClient für GrieferGames machen will (für den Server programmiertes AFK-Farming + viel Zeug zum bauen, weil GrieferGames grösster CityBuild-Server ist). Die Killaura habe ich dann wieder gelöscht (hab mir da auch nicht gross mühe gegeben). Danach funktionierte der Client nicht mehr.
Dann hast du beim Löschen irgendwo einen Fehler eingebaut. Vergleich die Klassen die du geändert hast mit den Original-Klassen oder ersetze sie durch die Original-Klassen.
Hab nur bei einer Klasse ein 'private' auf 'public' geändert.
Sonst habe ich nur die Killaura Klasse erstellt und dann wieder gelöscht.
Wenn du nichts an der EntityRenderer Klasse verändert hast, weiß ich auch nicht, woran es liegen könnte.
Mit EntityRenderer hatte ich immer Probleme. Erst konnte er EntityRenderer$1 und EntityRenderer$2 nie importieren, obwohl die Klassen existiert haben. Das konnte ich dann mit dem Project -> Clean... beheben.
Naja, trotzdem Danke, du hast es versucht.
EntityRenderer$1 und EntityRenderer$2 sollten eigentlich auch gar nicht existieren. Ist schon seltsam.
In der EntityRenderer Klasse kommen diese beiden aber öfters vor, dort werden sie logischerweise dann auch importiert (da wo ich den Fehler erst hatte).
Aber wieso müssten die denn gar nicht existieren? Hast du auch schon Clients gemacht? Existierten die bei dir nie?
Ja, ich habe auch schon mal einen Client gemacht, aber da haben diese Klassen nicht existiert. Ein Fehler beim Decompilen? Ich habe keine Ahnung.
Sonst lösche ich die beiden mal, muss ja vermutlich sowieso von Vorne anfangen.
Einfach noch einmal decompilen und die Base in den neuen Ordner verschieben.
hab die beiden jetzt gelöscht, da entstehen so viele Fehler, dass es nicht mehr schön ist ;)
Hab da mal zwischendrin ein Backup gemacht, ich arbeite einfach von dem her weiter.
Hab jetzt alles neu decompiled, hab aber genau den Selben Fehler wieder xD
Ich verstehe das irgendwie nicht mehr.
Arbeite doch einfach vom Backup weiter oder probiere einen anderen MCP-Release aus
Vom Backup her habe ich ebenfalls genau das selbe Problem. Jetzt nach dem kompletten neu Anfangen komischerweise auch.
Du hast doch geschrieben, das "Project -> Clean" geholfen hat, funktioniert das immer noch?
Das funktioniert nur, wenn er die Klassen EntityRenderer$1 und $2 nicht importieren kann.
Aber jetzt bin ich wieder so weit, wie die Frage eigentlich. Wenn ich in eine Welt gehe, crasht das Spiel und im Log steht dann das, was bei der Frage steht.
https://masterof13fps.de/forums/ vlt bekommst du da bessere hilfe
Hallo Agiger03,
Dazu benutze ich logischerweise Eclipse.
Warum logischerweise Eclipse?
NoSuchMethodError
Da wird wohl vom EntityRenderer eine nicht vorhandene Methode aufgerufen. Da passen dann wohl einige Versionen nicht zusammen.
Evtl. gehst Du einfach mal mit nem Debugger durch, aber letztendlich wirst Du auch nur sehen, dass da bestimmte Libs nicht zusammen passen.
Gruß
Hatte mich nur wegen des "logischerweise" gewundert, gibt ja noch andere IDEs für die Java-Entwicklung.
Gruß
Ja, aber ich kenne keinen der für HackedClients etwas anderes benutzt. Eclipse ist da so das gängigste.
Ich kenne viele die IntelliJ Idea benutzen, um Hack Clients zu entwickeln
Mir wäre auch ziemlich schleierhaft warum das IDE spezifisch sein sollte. IDEs werden ja geradezu dafür ausgelegt möglichst generisch zu sein und möglichst viele Aufgaben effizient umsetzen zu können.
Gruß
Meinst du der Fehler ist IDE spezifisch, oder was meinst du mit spezifisch?
Mit spezifisch meine ich, dass die "HackedClient"-Entwicklung nur mit einer bestimmten IDE durchgeführt werden können soll.
Da würde ich mal gern wissen, welche Funktion Eclipse bietet, die dies so vorteilhaft machen würde.
Gruß
Das Minecraft Coder Pack hat eine Datei die das Projekt direkt importiert. Bei IntelliJ Idea muss man erst noch ein paar Variablen setzen, bevor man damit anfangen kann.
Vielleicht sollte ich mal etwas für Minecraft coden und dann natürlich mit IntelliJ. Würde dazu ja gern mal ein Tutorial machen, also Software-Entwicklung allgemein, auf Basis von Minecraft.
...gibt aber wohl schon gefühlt 1000 Tutorials mit dem Ansatz.
Gruß
Mach mal weniger RAM. Java kommt mit so viel nicht klar.
An alle, die das problem auch haben:
Ihr braucht GUAVA, das ist eine Java library von google
Jetzt hab ich aber das Problem, dass das Spiel beim starten flackert und dann im loop bleibt
Also angeblich entsteht der Fehler in folgender Zeile:
Die Zeile ist von Mojang gecodet (gehört zum normalen Minecraft), sollte also keine Fehler haben, ebenfalls ist nichts rot unterstrichen.