amsam0 / voicechat-discord

A mod and plugin to make a bridge between Simple Voice Chat and Discord to allow for players without the mod to hear and speak.
https://modrinth.com/mod/simple-voice-chat-discord-bridge
MIT License
24 stars 7 forks source link

1.20.6 Paper Crash #51

Closed NoPing420 closed 2 months ago

NoPing420 commented 3 months ago

If I try to type DVC in game the server instantly crashes 1.20.6 paper I can't figure out why it is doing this

amsam0 commented 3 months ago

Do you run the command? Also, 1.20.5+ is probably not going to be supported

MQXO commented 3 months ago

I was experiencing a similar issue to the above, however my server recently migrated to fabric (due to the other supported plugins for SVC available), so Ill provide you with as much information as I can on both.

Paper (1.20.6) Typing "/dvc ", and upon typing the space, the server very quickly and without much grace encounters a stack overflow and fills the console with the same error ad infinitum until the server closes itself. Ive attached the crash report here: crash-2024-06-15_16.17.19-server.txt. Its clear enough that its a problem with how commands are registered and served to the player.

Fabric (1.20.6 and 1.21)

Now upon running /dvc start, I get "An unexpected error occurred trying to execute that command" in the chat, and the console reads as follows: [16:00:25 INFO]: [STDERR]: java.lang.IllegalArgumentException: wrong number of arguments: 1 expected: 2 [16:00:25 INFO]: [STDERR]: at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.checkArgumentCount(DirectMethodHandleAccessor.java:329) [16:00:25 INFO]: [STDERR]: at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:101) [16:00:25 INFO]: [STDERR]: at java.base/java.lang.reflect.Method.invoke(Method.java:580) [16:00:25 INFO]: [STDERR]: at dev.naturecodevoid.voicechatdiscord.FabricPlatform.toNative(FabricPlatform.java:124) [16:00:25 INFO]: [STDERR]: at dev.naturecodevoid.voicechatdiscord.FabricPlatform.sendMessage(FabricPlatform.java:80) [16:00:25 INFO]: [STDERR]: at dev.naturecodevoid.voicechatdiscord.SubCommands.start(SubCommands.java:110) [16:00:25 INFO]: [STDERR]: at dev.naturecodevoid.voicechatdiscord.SubCommands.lambda$wrapInTry$0(SubCommands.java:76) [16:00:25 INFO]: [STDERR]: at com.mojang.brigadier.context.ContextChain.runExecutable(ContextChain.java:73) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_8865.method_54416(class_8865.java:29) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_8865.execute(class_8865.java:13) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_8856.method_54405(class_8856.java:8) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_8847.method_54388(class_8847.java:8) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_8854.method_54390(class_8854.java:107) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_2170.method_54313(class_2170.java:381) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_2170.method_9249(class_2170.java:311) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_3244.method_58590(class_3244.java:1295) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_3244.method_44356(class_3244.java:1283) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_3738.run(class_3738.java:18) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_1255.method_18859(class_1255.java:162) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_4093.method_18859(class_4093.java:23) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_24306(MinecraftServer.java:841) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_18859(MinecraftServer.java:168) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_1255.method_16075(class_1255.java:136) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_20415(MinecraftServer.java:823) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_16075(MinecraftServer.java:817) [16:00:25 INFO]: [STDERR]: at net.minecraft.class_1255.method_18857(class_1255.java:145) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_16208(MinecraftServer.java:792) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:696) [16:00:25 INFO]: [STDERR]: at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:275) [16:00:25 INFO]: [STDERR]: at java.base/java.lang.Thread.run(Thread.java:1583)

I also tested this in 1.21 with the latest fabric builds of API and SVC and received the same output.

That combined with the other issue makes me think it has something to do with how commands are dealt with in 1.20.6 (presuming that changed from 1.20.4), I know youre not intending on providing support to any newer versions but I am a little hopeful because you responded to OP fairly quickly.

Many thanks for any help you can provide, it really is a fantastic resource and it was really useful to me and my friends.

amsam0 commented 3 months ago

Yes, the reflection we were using broke. I do not plan on making a fix but may end up doing so due to the amount of people reporting incompatibility with 1.20.5+

alfazzy commented 3 months ago

I am experiencing the same issue unfortunately. Would be amazing if you could get this plugin to support 1.20.5+, it's very useful for getting Bedrock players through Geyser hooked into Simple Voice Chat. Personally I find this plugin a lot simpler to use than using voice chat plugins that rely on a web interface like openaudiomc.

amsam0 commented 3 months ago

I plan to make fixes for 1.20+ this week.

Issues I plan to fix: #39, #27, #48, #44, #45 I will also look into #37 and #11. #11 is least likely to be fixed

amsam0 commented 2 months ago

Update: I have been working on fixes for #11 for a while and hope to have a beta test ready sometime this weekend (the beta test would also include quick fixes to the other issues that prevent usage of the plugin, but those should all be pretty simple). The fix for #11 involves quite substantial changes to the core of the plugin and is likely to have some rough edges, so I'd really appreciate anyone who can help beta test. Please reply or react to this message if you are willing to help.

alfazzy commented 2 months ago

Hey @naturecodevoid, I am open to assist in beta testing if you still need someone! My Discord is @alfazzy.

amsam0 commented 2 months ago

@LeonMT1 @alfazzy Beta test is available at https://github.com/naturecodevoid/voicechat-discord/actions/runs/9744638041 (download the paper or fabric artifact, depending on your platform).

Please reply describing the experience - everything about it is useful to know. I'd like to know what went good, what went bad, if there were any log spams, if there were any warnings or errors in the console, if there were any crashes. Another thing to look out for is performance and speaking delay. It would be really helpful to know if CPU and RAM usage is higher, lower, and if the delay between speaking and hearing both ways is longer or shorter.

If no major issues come up I plan to release on Wednesday.

LeonMT1 commented 2 months ago

@naturecodevoid Is this beta for Minecraft version 1.21 or older?

amsam0 commented 2 months ago

It supports 1.19.4+, so yes.

amsam0 commented 2 months ago

3.0.0 is now out, which fixes this issue.

Paper/Purpur: https://modrinth.com/plugin/simple-voice-chat-discord-bridge/version/3.0.0 Fabric: https://modrinth.com/plugin/simple-voice-chat-discord-bridge/version/zQYUpUdg