KasperFranz / BetterChunkLoader

A Chunkloader plugin for SpongeForge
GNU Lesser General Public License v3.0
20 stars 14 forks source link

bcl broken again 3.8.2 pr #52

Closed Chaosx911 closed 3 years ago

Chaosx911 commented 3 years ago

What is the bug? A clear and concise description of what the bug is. java.lang.NullPointerException: null at net.kaikk.mc.bcl.commands.CmdBalance.chunksInfo(CmdBalance.java:41) ~[CmdBalance.class:?] at net.kaikk.mc.bcl.commands.CmdBalance.execute(CmdBalance.java:30) ~[CmdBalance.class:?] at org.spongepowered.api.command.args.ChildCommandElementExecutor.execute(ChildCommandElementExecutor.java:255) ~[ChildCommandElementExecutor.class:1.12.2-2838-7.3.0] at org.spongepowered.api.command.spec.CommandSpec.process(CommandSpec.java:388) ~[CommandSpec.class:1.12.2-2838-7.3.0] at org.spongepowered.common.command.SpongeCommandDispatcher.process(SpongeCommandDispatcher.java:355) ~[SpongeCommandDispatcher.class:1.12.2-2838-7.3.0] at org.spongepowered.common.command.SpongeCommandManager.process(SpongeCommandManager.java:360) [SpongeCommandManager.class:1.12.2-2838-7.3.0] at net.minecraft.command.ServerCommandManager.func_71556_a(SourceFile:665) [dh.class:?] at net.minecraft.network.NetHandlerPlayServer.func_147361_d(NetHandlerPlayServer.java:962) [pa.class:?] at net.minecraft.network.NetHandlerPlayServer.func_147354_a(NetHandlerPlayServer.java:941) [pa.class:?] at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:37) [la.class:?] at net.minecraft.network.play.client.CPacketChatMessage.func_148833_a(SourceFile:9) [la.class:?] at org.spongepowered.common.event.tracking.phase.packet.PacketPhaseUtil.onProcessPacket(PacketPhaseUtil.java:219) [PacketPhaseUtil.class:1.12.2-2838-7.3.0] at net.minecraft.network.PacketThreadUtil$1.redirect$zlc000$impl$redirectToPhaseTracker(SourceFile:540) [hv$1.class:?] at net.minecraft.network.PacketThreadUtil$1.run(SourceFile:13) [hv$1.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_275] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_275] at net.minecraft.util.Util.func_181617_a(SourceFile:46) [h.class:?] at org.spongepowered.common.SpongeImplHooks.onUtilRunTask(SpongeImplHooks.java:310) [SpongeImplHooks.class:1.12.2-2838-7.3.0] at net.minecraft.server.MinecraftServer.redirect$zjg000$onRun(MinecraftServer.java:4682) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:723) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) [nz.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_275]

Sponge Version: spongeforge-1.12.2-2838-7.3.0.jar BetterChunkLoader Version: BetterChunkLoader-3.8.2-RC1 BCLForgeLib Version: -bclforgelib-1.12.2-1.1.jar

KasperFranz commented 3 years ago

Again this is a problem on startup.

Please include any startup errors

Chaosx911 commented 3 years ago

what should i search for in console for that

KasperFranz commented 3 years ago

All log items from betterchunkloader is using the betterchunkloader prefix so thst is a good starting point

Chaosx911 commented 3 years ago

registered extension: GriefDefender Registered extension: LuckPerms Registered extension: nuVotifier Registered extension: Sponge Economy Player Analytics Enabled. Loaded token for website: default Using epoll transport to accept votes. 21:35:30 [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.EventBus.post(EventBus.java:217) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:219) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:197) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at java.lang.reflect.Method.invoke(Method.java:498) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at com.google.common.eventbus.EventBus.post(EventBus.java:217) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.LoadController.redirect$zza000$forgeImpl$PostEvent(LoadController.java:568) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:136) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.Loader.serverStarted(Loader.java:804) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarted(FMLCommonHandler.java:302) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:488) [guru.franz.mc.bcl.config.ConfigLoader:load:80]: at java.lang.Thread.run(Thread.java:748) [java.lang.Throwable:printStackTrace:635]: Caused by: configurate.typesafe.config.ConfigException$Parse: Reader: 24: unbalanced close brace '}' with no open brace (if you intended '}' to be part of a key or string value, try enclosing the key or value in double quotes) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.ConfigDocumentParser$ParseContext.parseError(ConfigDocumentParser.java:201) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.ConfigDocumentParser$ParseContext.parseError(ConfigDocumentParser.java:197) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.ConfigDocumentParser$ParseContext.parseObject(ConfigDocumentParser.java:432) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.ConfigDocumentParser$ParseContext.parse(ConfigDocumentParser.java:646) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.ConfigDocumentParser.parse(ConfigDocumentParser.java:14) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.Parseable.rawParseValue(Parseable.java:260) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.Parseable.rawParseValue(Parseable.java:248) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.Parseable.parseValue(Parseable.java:180) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.Parseable.parseValue(Parseable.java:174) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.impl.Parseable.parse(Parseable.java:299) [java.lang.Throwable:printStackTrace:635]: at configurate.typesafe.config.ConfigFactory.parseReader(ConfigFactory.java:622) [java.lang.Throwable:printStackTrace:635]: at ninja.leaping.configurate.hocon.HoconConfigurationLoader.loadInternal(HoconConfigurationLoader.java:173) [java.lang.Throwable:printStackTrace:635]: at ninja.leaping.configurate.hocon.HoconConfigurationLoader.loadInternal(HoconConfigurationLoader.java:54) [java.lang.Throwable:printStackTrace:635]: at ninja.leaping.configurate.loader.AbstractConfigurationLoader.load(AbstractConfigurationLoader.java:137) [java.lang.Throwable:printStackTrace:635]: ... 42 more Server thread/ERROR 21:35:30 Load failed: null (net.kaikk.mc.bcl.BetterChunkLoader:160)

Chaosx911 commented 3 years ago

thats the error its giving off

KasperFranz commented 3 years ago

Your config is invalid

Chaosx911 commented 3 years ago

ah how can i fix that?

kristi71111 commented 3 years ago

ah how can i fix that?

Make it valid aka reset it

Chaosx911 commented 3 years ago

how would i go about resetting it? deleting it and rebooting server

Sturmfahrt commented 3 years ago

Ok last time anybody touched it was when I setup the MySQL database. it was working then, nobody has touched the config since then. so I have no clue how the config would invalidate itself if nobody touched it.

kristi71111 commented 3 years ago

how would i go about resetting it? deleting it and rebooting server

Yeah and make sure your mysql database is setup correctly. So create it etc and then setup the config correctly.

Sturmfahrt commented 3 years ago

`

The only DataStore available is MySQL atm!

DataStore=MySQL DefaultChunksAmount { Personal=5 World=1 } MaxChunksAmount { Personal=250 World=250 }

Time in hours before player's chunkloaders become inactive.

MaxHoursOffline=72 MySQL { Database=BCL Hostname=localhost Password=BCL_DoggoBorko69 Username=BCL }

Unique name of server

ServerName=DoggoBorko item { type="minecraft:blaze_rod" } } `

Sturmfahrt commented 3 years ago

that is the config.

Chaosx911 commented 3 years ago

right, ehm whats wrong with it exactly? also how to i edit the max amount of chunkloaders as for some reason "defaultchunksamount" classes as the max they can have which is stupid

kristi71111 commented 3 years ago

right, ehm whats wrong with it exactly? also how to i edit the max amount of chunkloaders as for some reason "defaultchunksamount" classes as the max they can have which is stupid

Well clearly your config is not setup correctly since the error is from configurate not parsing values correctly. As I've said wipe your config and tripple check that your mysql information is correct and that the database is already created. Make sure the values are imputted correctly. Then again I'm not the developer of this plugin but I have coded plugins with configs before and it is as Kasper said your config is simply invalid.

Chaosx911 commented 3 years ago

right i see, but do you know how i can change the max amount of chunkloaders people can get as mentioned. its registering as only 5 for personal and 1 for world as their max values

kristi71111 commented 3 years ago

right i see, but do you know how i can change the max amount of chunkloaders people can get as mentioned. its registering as only 5 for personal and 1 for world as their max values

As per plugin documentation on ore example: /lp user kristi71111 meta set bcl.personal 10 this would allow the user to have 10 personal loaders as seen here Ore url for plugin

Chaosx911 commented 3 years ago

ah seems ive got an older version of the sponge/ore page as that wasnt on mine. but would that be how many they have right then or how many they can have at max

Sturmfahrt commented 3 years ago

Well, what I am trying to figure out here is why it's invalid. the fact that is invalid doesn't exactly address the underlying issue here. this is the reason we are here on GitHub so we can find out the underlying issue, As a config doesn't just simply become invalid for no reason at all. with all due respect i trust that kasper at least know's what the issue with the config is.

kristi71111 commented 3 years ago

ah seems ive got an older version of the sponge/ore page as that wasnt on mine. but would that be how many they have right then or how many they can have at max

The meta value is basically they can then have a max of the value you set using em

KasperFranz commented 3 years ago

The original issue reported here has been fixed in 3.8.3 where the plugin now sends proper error messages if someone tries to use an invalid config or invalid datastore.

I have also included H2 as a datastore as an alternative to MySQL.