Tridents vs /pweather storm
Scorpionvssub opened this issue ยท 10 comments
When a player has the riptide enchant on a trident which lets you go faster in rain, it will also allow the usage of this mechanic when their personal weather is set to storm.
My expectation:
That a player with a trident can only perform these actions when the actuall world is raining while still being able to use the item normally during the day
@pinkpig3777 EssentialsX tells Bukkit to change that player's weather. Riptide behaviour should be based on world weather, not player weather, so if this has somehow broken then it's down to the server not implementing this properly.
In addition, can you actually reliably replicate this yourself?
@SupaHam Well, 2 of my players reported the same issue @Scorpionvssub reported. /pweather allows players to have infinite riptide with trident + elytra. And /pweather is an Essentials / EssentialsX command I thought so... how does it not have to do with EssentialsX? I don't mean this in a smartass way, I mean that I am confused so could you please elaborate?
Ah okay @md678685.
Deleted my old message has it had incorrect information.
UPDATE:
I can replicate the issue after disabling a CMI plugin feature that disables riptide in storms. So to be clear, I CAN use /pweather storm then riptide + elytra to gain speed (while global weather is clear).
Also, worth noting that if you are familiar with CMI, it is not conflicting with EssentialsX. I use them alongside each other. I use Essentials for most commands then use CMI for other additional features.
I've checked how the game implements the riptide effect, and it doesn't appear to check the player weather at any point - it specifically checks the world's weather, not the player's weather. I'm not sure if this caused by the client not being aware that riptide should be disabled?
I was able to replicate this with only EssentialsX installed on 1.13.2 Paper and Spigot installs
[23:04:41 INFO]: Server version: 1.13.2-R0.1-SNAPSHOT git-Paper-485 (MC: 1.13.2)
[23:04:41 INFO]: EssentialsX version: 2.16.0.34
[23:04:41 INFO]: Vault is not installed. Chat and permissions may not work.
[23:23:51 INFO]: Server version: 1.13.2-R0.1-SNAPSHOT git-Spigot-f56e2e7-b634e05 (MC: 1.13.2)
[23:23:51 INFO]: EssentialsX version: 2.16.0.34
[23:23:51 INFO]: Vault is not installed. Chat and permissions may not work.
I recorded the results (on Paper, but both cases were identical): https://youtu.be/GD2gV-frC8M
- 00:00 - 00:15: normal behaviour, world weather set to rain, riptide/elytra works as expected
- 00:20 - 00:40: world weather set to sun, pweather to storm, riptide/elytra works, but part of the audio (trident release) is missing for some reason
- 00:50 - 1:10: world weather set to storm, pweather to sun, trident animation and audio happens, but riptide is not triggered.
Seems like a Bukkit/Spigot bug to me.
Since this doesn't seem to be within the scope of Essentials to fix I'm going to go ahead and close this. If that is a mistake please feel free to re-open it, but I see that most points to this being some sort of other clientside/serverside issue.
This sounds like a vanilla/CB/Spigot bug - all Essentials does is tell the server to set the player's weather.
Although this has nothing to do with EssentialsX, this issue is invalid. I've checked and riptide only works based on the world raining, not the player raining.
Edit: Also, if you are in water, it will trigger riptide, even if it is not raining.
The reason that riptide would activate is that the client thinks that it is raining and therefore would allow riptide to activate, but the server does not think it is raining and would therefore not allow the animation or sound to happen. It's not detected as invalid movement because riptide movement is similar to elytra movement with fireworks.
this is just a guess however