GamerJoep/MinetopiaVehicles

Unable to use `mtv restore` due to "an internal error"

Closed this issue · 3 comments

About

I tried to get a vehicle from the database after my server crashes and the offline guy still riding my fighter jet. I can't perform action anymore, but im sure this is not the crash fault because this issue happend before the lastest crash.

  • Minecraft version: 1.19.4
  • Server software: Purpur
  • Plugin version: 2.5.0 (lastest)

When and why?

The bug occur in an unknown timeline, occur for an unknown reason (debug message below) as i know then before the issue the command is fully stable and usable to everyone.

Documentation

Debugging informations:

[17:06:56] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'mtv' in plugin MTVehicles v2.5.0
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[purpur-api-1.19.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.19.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_19_R3.CraftServer.dispatchCommand(CraftServer.java:943) ~[purpur-1.19.4.jar:git-Purpur-1985]
at org.bukkit.craftbukkit.v1_19_R3.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[purpur-1.19.4.jar:git-Purpur-1985]
at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:264) ~[purpur-1.19.4.jar:?]
at net.minecraft.commands.CommandDispatcher.performCommand(CommandDispatcher.java:330) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.commands.CommandDispatcher.a(CommandDispatcher.java:314) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:2389) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.network.PlayerConnection.lambda$handleChatCommand$21(PlayerConnection.java:2349) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.util.thread.IAsyncTaskHandler.b(IAsyncTaskHandler.java:59) ~[purpur-1.19.4.jar:git-Purpur-1985]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source) ~[?:?]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.util.thread.IAsyncTaskHandler.d(IAsyncTaskHandler.java:153) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(IAsyncTaskHandlerReentrant.java:24) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1369) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.util.thread.IAsyncTaskHandler.x(IAsyncTaskHandler.java:126) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.bi(MinecraftServer.java:1346) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1339) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.util.thread.IAsyncTaskHandler.c(IAsyncTaskHandler.java:136) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.i_(MinecraftServer.java:1317) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1205) ~[purpur-1.19.4.jar:git-Purpur-1985]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:325) ~[purpur-1.19.4.jar:git-Purpur-1985]
at java.lang.Thread.run(Unknown Source) ~[?:?]
Caused by: java.lang.NullPointerException: Cannot invoke "Object.toString()" because the return value of "nl.mtvehicles.core.infrastructure.dataconfig.VehicleDataConfig.get(String, nl.mtvehicles.core.infrastructure.dataconfig.VehicleDataConfig$Option)" is null
at nl.mtvehicles.core.infrastructure.utils.MenuUtils.restoreCMD(MenuUtils.java:290) ~[?:?]
at nl.mtvehicles.core.commands.vehiclesubs.VehicleRestore.execute(VehicleRestore.java:25) ~[?:?]
at nl.mtvehicles.core.infrastructure.models.MTVSubCommand.onExecute(MTVSubCommand.java:54) ~[?:?]
at nl.mtvehicles.core.commands.VehicleSubCommandManager.execute(VehicleSubCommandManager.java:69) ~[?:?]
at nl.mtvehicles.core.infrastructure.models.MTVCommand.onCommand(MTVCommand.java:21) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.19.4-R0.1-SNAPSHOT.jar:?]
... 23 more

Photo:
image

vehicle restore menu will only duplicate vehicles

Okay, but i need it to duplicate my lost vehicles that are still exists in database

Your VehicleData is corrupted.

image

Apparently the vehicle is missing the SKIN_ITEM option but it may not be the only issue.