Arclight icon indicating copy to clipboard operation
Arclight copied to clipboard

Serious: Plugins, related to Player NPC, are crashing for player NPC

Open vgrynch opened this issue 1 year ago • 3 comments

I have confirmed that ...

  • [X] Arclight is up to date
  • [X] all dependencies are installed
  • [X] all plugins and mods are up to date
  • [X] unable to reproduce in Spigot
  • [X] unable to reproduce in Forge

Arclight version

v4.0.2-1.19.2-Forge

OS & Java versions

Java 17, Debian or Windows OS

Plugins and Mods

Irrelevant (fails with only GSit plugin installed)

Description

When trying to use GSit plugin, certain commands do not work., For example, the /lay command causes the following crash in the console (see below). Also, when trying to create a player NPC with any NPC plugin (zNPCs for example, or any other), it produces exactly the same crash in logs and NPC cannot be created.

org.bukkit.command.CommandException: Unhandled exception executing command 'lay' in plugin GSit v1.4.10
	at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[arclight-1.19.2-1.0.2-4a870b30.jar%23245!/:arclight-1.19.2-1.0.2-4a870b30] {re:classloading}
	at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[arclight-1.19.2-1.0.2-4a870b30.jar%23245!/:arclight-1.19.2-1.0.2-4a870b30] {re:mixin,re:classloading,re:mixin}
	at org.bukkit.craftbukkit.v1_19_R1.CraftServer.dispatchCommand(CraftServerMixin.java:833) ~[arclight-1.19.2-1.0.2-4a870b30.jar%23245!/:arclight-1.19.2-1.0.2-4a870b30] {re:mixin,re:classloading,pl:mixin:APP:mixins.arclight.bukkit.json:CraftServerMixin,pl:mixin:A,re:mixin}
	at org.bukkit.craftbukkit.v1_19_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:50) ~[arclight-1.19.2-1.0.2-4a870b30.jar%23245!/:arclight-1.19.2-1.0.2-4a870b30] {re:classloading}
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:263) ~[brigadier-1.0.18.jar%23107!/:?] {re:mixin}
	at net.minecraft.commands.Commands.m_242674_(CommandsMixin.java:240) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.arclight.core.json:commands.CommandsMixin,pl:mixin:APP:pcf.mixins.json:command.CommandsMixin,pl:mixin:A}
	at net.minecraft.server.network.ServerGamePacketListenerImpl.m_242600_(ServerPlayNetHandlerMixin.java:2872) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$12(ServerPlayNetHandlerMixin.java:1217) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.util.thread.BlockableEventLoop.m_18693_(BlockableEventLoop.java:68) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,re:mixin,pl:accesstransformer:B}
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?] {}
	at net.minecraft.server.TickTask.run(TickTask.java:18) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:classloading,re:mixin}
	at net.minecraft.util.thread.BlockableEventLoop.m_6367_(BlockableEventLoop.java:157) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,re:mixin,pl:accesstransformer:B}
	at net.minecraft.util.thread.ReentrantBlockableEventLoop.m_6367_(ReentrantBlockableEventLoop.java:23) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,re:computing_frames,re:classloading,re:mixin}
	at net.minecraft.server.MinecraftServer.m_6367_(MinecraftServerMixin.java:763) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_6367_(MinecraftServerMixin.java:157) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.util.thread.BlockableEventLoop.m_7245_(BlockableEventLoop.java:131) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_129961_(MinecraftServerMixin.java:746) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_7245_(MinecraftServerMixin.java:740) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.util.thread.BlockableEventLoop.m_18701_(BlockableEventLoop.java:140) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_130012_(MinecraftServerMixin.java:726) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_130011_(MinecraftServerMixin.java:2131) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at net.minecraft.server.MinecraftServer.m_206580_(MinecraftServerMixin.java:244) ~[server-1.19.2-20220805.130853-srg.jar%23333!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A,re:mixin,pl:accesstransformer:B}
	at java.lang.Thread.run(Thread.java:833) [?:?] {re:mixin}
Caused by: java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.Byte (java.lang.Integer and java.lang.Byte are in module java.base of loader 'bootstrap')
	at dev.geco.gsit.mcv.v1_19_R1_2.objects.GPoseSeat.spawn(GPoseSeat.java:132) ~[?:?] {}
	at dev.geco.gsit.manager.PoseManager.createPose(PoseManager.java:110) ~[?:?] {}
	at dev.geco.gsit.manager.PoseManager.createPose(PoseManager.java:62) ~[?:?] {}
	at dev.geco.gsit.cmd.GLayCommand.onCommand(GLayCommand.java:114) ~[?:?] {}
	at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[arclight-1.19.2-1.0.2-4a870b30.jar%23245!/:arclight-1.19.2-1.0.2-4a870b30] {re:classloading}
	... 22 more
``

### Step to reproduce

Install GSit plugin or some NPC plugin that adds player NPCS
Try to use player-related features (certain commands for GSit or add player NPC)
Observe the mentioned crash (java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.Byte) in the console, and the command does not work.

### Logs

_No response_

### Server pack link (Optional)

_No response_

vgrynch avatar Sep 21 '23 22:09 vgrynch

Any update on this? Looks like a trivial issue with types conversion.

vgrynch avatar Oct 11 '23 06:10 vgrynch

Yes this is a trivial type conversion issue which seems not on Arclight side. Maybe you should ask the gsit author.

IzzelAliz avatar Oct 22 '23 04:10 IzzelAliz

The problem is that this appears in multiple plugins, not only in GSit.

vgrynch avatar Oct 22 '23 19:10 vgrynch