The player's gravity is calculated twice on the tick they activate their elytra, causing jump height lower. This happens since 15w41a.
Steps to reproduce:
- Equip an elytra and switch to survival mode.
- Run /tick rate 1 (this happens on normal tick rate, but on low tick rates it can be seen clearly).
- Open the F3 debug screen, face directly down, jump and activate your elytra 2 ticks after you jump (your height should be 0.7532 blocks above ground 2 ticks after you jump).
- Observe your maximum height.
- After you land, jump again, don't activate your elytra.
- Observe your maximum height.
Expected result:
Maximum height in step 4 and step 6 are same. (when you face directly down, the elytra won't reduce your gravity and you should be free falling)
Actual result:
Maximum height in step 4 and step 6 are different. In step 4, the height is 1.00407 blocks. In step 6, the height is 1.25220 blocks.
Analysis:
On the first tick you activate your elytra, your gravity is calculated twice, cause your upward speed to be lower than normal (it has lowered from 0.3332b/t to 0.16477b/t, and normally it is from 0.3332 b/t to 0.24814b/t, so your jump height is lower).