Issue with dimensional travel while in spectator mode
Bob1nz opened this issue ยท 8 comments
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)
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.
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:
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.
I think that if ( Player.getGameMode != SPECTATOR )
before the check for fly permission will fix the issue.
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.
Yes, I've tested without essentials.fly.safelogin
and it works as expected with only essentials.fly
.