Electroblob's Wizardry

Electroblob's Wizardry

18M Downloads

Containment field causes players to constantly rubberband on server

TheMightyMcGrew opened this issue · 14 comments

commented

Please read the guide for contributing before posting.

Minecraft version: 1.12.2
Wizardry version: 4.2.11
Environment: Server

Issue details: When a player enters the shrines they act as normal, spawn a containment field, spawn 3 wizards, the problem is when they touch the containment field for any reason (i.e. they try to run or a wizard knocks them into it somehow) then they get stuck in this seizure of glitching because the containment wall is trying to throw them but it cant let go or wont let go or something, and they just get wrecked because they cant move, relogging doesnt help, client reset doesnt help, it takes nothing short of admin commands to get them out of it.

commented

Is the server log complaining about flying? Just wondering if that's causing it. Containment fields only ever push the player inwards, they can't 'hang on' to the player, so something else must be causing the player to rubberband.

commented

No our server has flying enabled due to flight potentials from other mods, unfortunately players havent reached that point yet, otherwise they may have had a potential way out. I didn't mean to purvey that the wall was literally "hanging" onto a player, but the player touches the wall and then begins the violent rubberbanding of trying to be shot back inwards as you indicated should be happening, and not actually getting shot. And its not some kind of desync that i can tell because the wizard proceed to walk over to the player who is stuck at the wall and kills them

commented

Seconding this issue. Got near a shrine which spawned several wizards and created a containment field. Immediately got knocked back into the wall and I was doing the usual glitchy spaz-out (the kind that happens if you're standing in a block that's desynced) that even rubberbands the direction you are facing. Could not leave with commands, or by switching into Creative or Spectator mode.

Only way I was able to get out was to /home teleport, which didn't actually take me anywhere as I was still contained, but briefly unloaded the chunks and allowed me to wedge myself out long enough to kill the wizards in creative mode.

commented

Okay, thanks both for the additional information. I will have a look at that bit of code and see if I can alter how the bounce back happens to prevent this issue.

commented

Hey! I just wanted to follow up with this issue and see if there's anything I can do to help out or give information to resolve the problem. Thank you for the great mod <3

commented

Hi! Not sure what else can be done to investigate, short of throwing yourself at a containment field repeatedly and seeing what does or doesn't cause the rubberbanding. I have been testing this on a local server and the behaviour is certainly more erratic than in singleplayer, though I only managed to get it to rubberband once, and that was only briefly. I suspect this is a result of server lag and subsequent desyncing of the player's position. Re-logging ought to fix it but according to OP it doesn't.

commented

Narrowed it down to this line, in case anyone else was looking:


Now to work out why that is a problem...

commented

Thanks for continuing to look into this!

commented

Just wanted to let you know that players are still experiencing this on my server. I don't know if it has anything to do with lag but it does seem to occur to players who are physically further from the server (ie. the server is closest to me and I haven't experienced this issue yet). Flying is allowed on the server and Gotta Go Fast is installed.

commented

@faeldray Thanks for the new info. Any chance you could check the server log and see if the message "Player moved wrongly!" is still appearing or not? If that message is still there, my fix didn't work, but if it isn't then the problem is definitely due to connection latency.

commented

It took some sleuthing and thankfully(?) one of the players complained once when they were stuck in the containment field, so I found a place in the log where it happened. There's no "player moved wrongly" messages, but there is definitely record of lag. That player also lives pretty far from the server, like another continent far.

[00:22:06] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 4463ms behind, skipping 89 tick(s)
[00:22:12] [Server thread/INFO] [net.minecraft.server.dedicated.DedicatedServer]: wolforce has made the advancement [Righteousness]
[00:22:12] [Server thread/INFO] [ebwizardry]: Synchronising advancements for wolforce
[00:22:38] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 17941ms behind, skipping 358 tick(s)
[00:22:41] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 3106ms behind, skipping 62 tick(s)
[00:23:09] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 11969ms behind, skipping 239 tick(s)
[00:23:17] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 4641ms behind, skipping 92 tick(s)
[00:23:42] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 10411ms behind, skipping 208 tick(s)
[00:24:07] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 15395ms behind, skipping 307 tick(s)
[00:24:11] [Server thread/WARN] [net.minecraft.server.MinecraftServer]: Can't keep up! Did the system time change, or is the server overloaded? Running 3292ms behind, skipping 65 tick(s)
[00:24:32] [Server thread/INFO] [net.minecraft.server.dedicated.DedicatedServer]: wolforce was killed by Wizard using magic
[00:24:32] [Server thread/INFO] [tombstone]: The last known grave of wolforce is at location [name:Last Grave, x:-500, y:66, z:856] in the dimension 0

commented

Unsure if this is still being worked on, but I experienced this last night as well. Console was showing a bunch of "Player moved wrongly!" And yes, it seemed the only way to fix was to teleport the affected players to myself, since I was also inside the containment.

Could it be that it's throwing the player too hard? I've seen similar, but not quite as bad, if you're mining too fast and get stuck inside a block that doesn't appear to be there, but actually is.

EDIT: Now that I think about it, it sort of seems like it's not pushing you far enough, so you get stuck in an endless loop of it pushing you.

commented

Console was showing a bunch of "Player moved wrongly!"

That's really helpful, thank you. I think I know what's causing it now, the vanilla safety checking system for player movement doesn't like me setting the player's position like that.

commented

I'm still having this glitch on 1.12.2 on my server
and as reported, wouldn't there be a way to disable the server's fix for the move? With Spigot and others...
thx

Edit: when I do the /effect clear
the glitch disappears for a moment.
But are afected again when the Wizard attacks.
So, have a way to disable the "Containment" effect?
Thx again