• 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!

Ich habe ein Problem mit McJobs

TheTrialGamer

Minecrafter
Registriert
7 Mai 2020
Beiträge
4
Diamanten
300
Wenn ich einen job habe und Blöcke abbaue dann steht in der Console:

[K[33;1m[13:37:05 WARN]: [mcjobs] Plugin mcjobs v3.8.12 generated an exception while executing task 100
java.lang.IllegalStateException: UserBalanceUpdateEvent may only be triggered synchronously.
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:595) ~[minecraft_server.jar:git-Paper-241]
at com.earth2me.essentials.User.setMoney(User.java:418) ~[?:?]
at com.earth2me.essentials.api.Economy.setMoney(Economy.java:122) ~[?:?]
at com.earth2me.essentials.api.Economy.add(Economy.java:149) ~[?:?]
at com.earth2me.essentials.api.Economy.add(Economy.java:141) ~[?:?]
at net.milkbowl.vault.economy.plugins.Economy_Essentials.tryDepositPlayer(Economy_Essentials.java:149) ~[?:?]
at net.milkbowl.vault.economy.plugins.Economy_Essentials.depositPlayer(Economy_Essentials.java:180) ~[?:?]
at net.milkbowl.vault.economy.AbstractEconomy.depositPlayer(AbstractEconomy.java:50) ~[?:?]
at com.dmgkz.mcjobs.playerjobs.pay.PayMoney.makeEconomyCall(PayMoney.java:253) ~[?:?]
at com.dmgkz.mcjobs.scheduler.McJobsComp.run(McJobsComp.java:81) ~[?:?]
at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84) ~[minecraft_server.jar:git-Paper-241]
at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[minecraft_server.jar:git-Paper-241]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[minecraft_server.jar:git-Paper-241]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_222]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_222]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222]
[m>

Weiß jemand wo dort das Problem liegt und wie man es löst?
P.s: bei dem smily in der ersten Zeile steht eine drei mit einem doppelpunkt davor.
 

Phoenix616

Kuhfänger
Registriert
11 Mai 2019
Beiträge
69
Diamanten
396
Minecraft
Phoenix616
Das Problem ist dass McJobs anscheinend versucht die Balance eines Spielers in einem asynchronen Thread zu ändern was so nicht funktioniert da Essentials dabei ein Event feuert welches nicht asynchron gefeuert werden kann. Das Problem kannst du selber nicht wirklich lösen, da muss der Entwickler von McJobs seinen Code fixen und die Geldänderungen nicht mehr asynchron ausführen. (Was generell besser ist bei Geld-Transaktionen um Exploits zu verhindern)

Die einzige Möglichkeit für dich das Problem zu lösen wäre ein anderes Economy-Plugin als Essentials zu nutzen welches zumindest keine Probleme mit asynchronen Geldänderungen hat, allerdings gibt es wenige die dies auch richtig und ohne potentielle Probleme unterstützen.
 

Phoenix616

Kuhfänger
Registriert
11 Mai 2019
Beiträge
69
Diamanten
396
Minecraft
Phoenix616
Also soweit ich den Code von CraftConomy3 kenne sollte genau dieses Problem da nicht auftreten. Allerdings habe ich selber McJobs noch nicht genutzt, könnte also sein dass dies noch andere Probleme erzeugen kann da die VaultAPI generell nicht als threadsafe angesehen wird und die meisten Economy-Plugins eine solche Verwendung also nicht erwarten. Ich würde dir auf jeden fall dringendst empfehlen den Fehler an den Entwickler von McJobs weiterzuleiten, die falsche Nutzung von asynchronen Threads kann schnell zu noch mehr Fehlern führen.
 

TheTrialGamer

Minecrafter
Registriert
7 Mai 2020
Beiträge
4
Diamanten
300
Hallo Phoenix616,
Das Economy-Plugin funktionirt.
Weißt du wie die API con CraftEconomy für die Balance des Spielers heißt? Da ich nämlich die Balance in einem Scoreboard anzeigen möchte.
[EDIT]:
oder kann mir dabei jemand anderes helfen??
 
Zuletzt bearbeitet:
Oben