Player collisions
Rafalll opened this issue · 10 comments
Server Version: PaperSpigot 1.16.2
OldCombatMechanics version: dev build #45
Server Log File: https://pastebin.com/Jfqt3ME6
Debug Log: https://pastebin.com/5zfFQc80
OldCombatMechanics config file: https://pastebin.com/Y1eCFrAu
## Problem Description
Once the option to disable collisions between players is enabled, the plugin kicks a player out of the server.
### To Reproduce
1. Upload the plugin
2. Change the disable-player-collisions setting to true
disable-player-collisions:
enabled: true
worlds: []
3. Reload
4. Leave the server and try to join to server
Hey, thank you for the report. I have a few questions:
- Do you have any other plugins displaying scoreboards or changing player tab-list colours?
- Does this happen when only you join or do you need multiple players on the server?
- Does this happen if you use just OCM and no other plugin?
A minimal set of plugins to cause this (I'd suspect OCM + some tablist/scoreboard plugin(s)) would be greatly appreciated.
This is a somewhat known bug, but I have never been able to reproduce any of the bug reports, so if you could list your plugins or even condense it down to just a few that make it fail, I'd have something to work with and hopefully find the root cause.
Have a nice day :)
Tablist: CMI (https://www.spigotmc.org/resources/cmi-270-commands-insane-kits-portals-essentials-economy-mysql-sqlite-much-more.3742/)
Scoreboards: AnimatedScoreboard (https://www.spigotmc.org/resources/animatedscoreboard.20848/)
I can send you all the plugins I use in private message, preferably if you have a discord :)
2. This happens with every player joining the server
3. I didn't check it
You too :)
I checked it quickly and it looks like after disabling the AnimatedScoreboard plugin the option to disable collisions between players works well. I'll check it more deeply, but I can give you that information for now.
Hm. Maybe there is something interesting in your AnimatedScoreboard config? I can not reproduce it with just AnimatedScoreboard and OCM.
Also, are you behind bungee or a comparable reverse proxy?
I set up waterfall in a docker container and it still works (run via sudo docker run --rm -it --network host waterfall
).
FROM openjdk:8
RUN apt update -y && apt install --yes git bash maven
RUN git config --global user.name "Test" && git config --global user.email "[email protected]"
RUN git clone https://github.com/PaperMC/Waterfall /tmp/Waterfall && cd /tmp/Waterfall && ./waterfall b
RUN mkdir /home/Waterfall && cp /tmp/Waterfall/Waterfall-Proxy/bootstrap/target/Waterfall.jar /home/Waterfall
WORKDIR /home/Waterfall
ENTRYPOINT ["java", "-jar", "/home/Waterfall/Waterfall.jar"]
AnimaredScoreboards prints the following message:
[22:11:39] [Server thread/ERROR]: [AnimatedScoreboard] This version of minecraft isn't confirmed working yet and thus the plugin might not work as expected. This means that ASB switched over to the old Bukkit implementation which is incompatible with other scoreboard plugins. You will not get any support when using AnimatedScoreboard on this server!
So I am kinda out of ideas for reproducing the bug, if you can not narrow it down to a few plugins causing the trouble :/ As far as I can tell I am as close to your setup as I can get, based off of the information you provided so far?
I've updated all my plugins to the latest versions and checked if it kick players away when joining the server with the option player collisions disabled (enabled: true). Surprisingly, it doesn't kick, but I accidentally discovered that when you turn off the scorebord (command: /animatedscoreboard toggle) with this option on, it kick away player.
Of course, if I set disable-player-collisions to false everything is good.
There is one error on the proxy server: https://pastebin.com/0H5gyxrx
-
I decided to disconnect the main server survival from the proxy server and see if the error disappears, the error is gone. The option to disable collisions between players worked well, without any problems.
-
I connect the proxy server to server main again, but I disabled all my proxy plugins, turn on the server proxy and main, joined the server and tried to disable the scoreboard again with command /animatedscoreboard toggle and again kick me out of the server with the same error.
-
To make sure the problem is only between these two plugins, I disabled all other plugins on the main server except these two: animatedscoreboard and oldcombatmechanics. I turned on the server and the problem is still the same.
-
I still checked if there is any error in the paper files or if there is no problem with the worlds. So I've create a new server with default configurations and new worlds, I've uploaded two plugins with configurations. Same problem again.
Below I send ready files to download and to check, I checked and with this configuration goes to see this error.
(http://www.mediafire.com/file/0l768yn9pqriybi/file)
- Turn on the proxy (water)
- Turn on the server (test)
- Join the server
- Give yourself an op
- Try to disable the scorebord with the command /animatedscoreboard toggle
I'll add that I was trying to find the reason for throwing out players when a player joins the server, but after a couple of hours of searching I didn't feel like it, it was too tiring.
@Rafalll Thank you so much! I could reproduce the error now (I think it is the same bug also causing 3 or 4 other issues but I wasn't able to reproduce it before).
I spent my last few hours debugging this garbage and came up with a patch you can find on my fork.
As you might not want to build this from source yourself, I attached a build to this comment. Just unzip that and you should find the jar inside.
Let me know if that fixes the issue while still disabling player collisions. In my tests I managed to break the collision feature a few times, as minecraft is a bit finicky, but I hope I squashed all of those bugs now.