GeyserMC / Geyser

A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition.
https://geysermc.org
MIT License
4.72k stars 676 forks source link

DoubleJump / Knockback #3975

Closed callum5771 closed 1 year ago

callum5771 commented 1 year ago

Describe the bug

Our network proudly uses Geyser to support Bedrock players, we've updated to the latest version of Geyser today and found that the Double-Jump plugin we use works fine on Java (as it had previously) but not on Bedrock, instead of performing a double-jump, the player simply can fly around the lobby freely and no double-jump is actually done.

This worked fine on Build 218, but the update to Build 237 has since broken this functionality. We use Geyser for Velocity and run Floodgate on all Spigot servers behind our proxy, not not Geyser, Geyser only runs on Velocity on our setup.

Plugin in use: https://www.spigotmc.org/resources/infinitejump-double-triple-infinite-jump-1-8-1-20.51522/

To Reproduce

  1. Make a Paper 1.20.1 server with InfiniteJump installed, default settings will do just fine.
  2. Go into survival mode and attempt to double-jump on Java, you should see it works fine.
  3. Go into survival mode and attempt to double-jump on Bedrock, you should fly instead.

Expected behaviour

The player should double-jump, they should leap into the air for a second or two, and come back down again.

Screenshots / Videos

Bedrock (error) - https://youtube.com/shorts/ebNZg2KqRL0 Java (intended function) - https://youtube.com/shorts/7Cf0dzx4l8A

Server Version and Plugins

Our backend Spigot Server: Paper version git-Paper-549 (MC: 1.19.4) (Implementing API version 1.19.4-R0.1-SNAPSHOT) (Git: bc4a664) - this server specifically uses ViaVersion, but it's worth noting the issue persists on the latest version of Minecraft.

Velocity: 3.2.0-SNAPSHOT (git-5ef90c46-b258) Geyser Velocity Version: 2.1.2-SNAPSHOT (git-master-c1d8009) (Java: 1.20, Bedrock: 1.19.80/1.19.81 - 1.20.10)

Geyser Dump

https://dump.geysermc.org/DTXV7Q9pCKWl52L943KVeBEQRRbjpmvX

Geyser Version

2.1.2-SNAPSHOT (git-master-c1d8009)

Minecraft: Bedrock Edition Device/Version

Windows 11 - Bedrock Edition - PC

Additional Context

No response

shawn695 commented 1 year ago

yes another person with a fly issue, for me its only xbox players mobile and bedrock on pc everyone else works as expected. do u know which consoles are effected ?

Montimedici commented 1 year ago

We have the same issue. After a small test by myself I noticed, that the PlayerToggleFlightEvent won't be called for bedrock players on some devices. I tested it myself with an Iphone, Ipad and the Windows 10 Edition on a computer. On the Iphone and on the Ipad the PlayerToggleFlightEvent didn't get called. On the Windows 10 Edition on the computer it was called.

The PlayerToggleFlightEvent is important for any double jump plugin. Can be seen in the source of ur linked double jump plugin: https://github.com/MrMicky-FR/InfiniteJump/blob/master/src/main/java/fr/mrmicky/infinitejump/JumpListener.java

Hope this helps to fix it 👍

shawn695 commented 1 year ago

i have this bug as well in my minigame server, some minigames have the abilitiy to double jump so when they hit double x or space they start to fly

onebeastchris commented 1 year ago

@callum5771 please try updating to the latest version of Geyser; #4001 should resolve this.