EssentialsX

EssentialsX

2M Downloads

Issue with dimensional travel while in spectator mode

Bob1nz opened this issue ยท 8 comments

commented

Hello there seems to be a problem where players who are not OP will fall into the void when teleporting to a player in another dimension while in spectator mode.
This issues is not present when the player is OP or when Essentials is not loaded and the player teleports correctly and does not fall.

Essentials is the only plugin loaded using 2.0.1-b354 for 1.10
Using CraftBukkit version git-Bukkit-9856d8a (MC: 1.10) (Implementing API version 1.10-R0.1-SNAPSHOT)

commented

Hey. You should note that Multiverse has world-specific gamemodes. This means that when a normal (not op) player leaves world A and goes to world B their gamemode will be set to whatever it is set to in Multiverse, by default this is Survival gamemode.

If a player is op and teleports from world A to world B, their gamemode is retained as opposed to being set to the world default gamemode as can be configured in Multiverse.

commented

There is no multiverse installed.

commented

I'm having the same issue. When running only Craftbukkit/Spigot, spectator teleportation works as expected. When Essentials is installed is when this issue occurs.

Current status of server. Fresh build of CraftBukkit and Build #359 of EssentialsX:
bukkitversionplugins

Update 0:59 UTC: Using /tpa from command line from spectator account produces same result.

Update 1:16 UTC: Assigning the permissions fly && fly.safelogin permissions seems to fix the issue.

Update 1:25 UTC: It seems that the spectator account is checked for flight permissions and if it doesn't have the permission, flight is removed and the spectator falls through the world.

commented

I think that if ( Player.getGameMode != SPECTATOR ) before the check for fly permission will fix the issue.

commented

Based on what I am reading, you shouldn't need essentials.fly.safelogin. However, you seem to have provided the fix, I'll test and get back to you.

commented

Yes, I've tested without essentials.fly.safelogin and it works as expected with only essentials.fly.

commented

This has been fixed in a267fb1. You can grab the fix from build 360 on the CI server.

Thanks for your help @kz5ee.

commented

No problem! Thanks for the super quick fix!