feather icon indicating copy to clipboard operation
feather copied to clipboard

Feature: EntityAction

Open Miro-Andrin opened this issue 3 years ago • 2 comments

Feature Request

Handle the EntityAction request in feather/server/src/packet_handlers.rs

Description

This feature request is very similar to #422 but with a lot more values to track.

  • [x] Start sneaking
  • [x] Stop sneaking
  • [ ] Leave bed
  • [x] Start sprinting
  • [x] Stop sprinting
  • [ ] Start jump with horse
  • [ ] Stop jump with horse
  • [ ] Open horse inventory
  • [ ] Start flying with elytra

wiki Notice how there is no StopFlyingEvent, so the server is expected to track this value. How this is kept in synch i have no idea. A reasonable first approximation is that we just don't bother with keeping it in synch, as the physics system is still missing #357. Another noteworthy thing is that the Leave bed packet is not sent by the client if night is changed to day by players sleeping. So a sleep tracking system has to trigger a BedExit event. Open horse inventory is only sent when pressing the inventory key (default: E) while on a horse — all other methods of opening a horse's inventory (involving right-clicking or shift-right-clicking it) do not use this packet.

Miro-Andrin avatar May 11 '21 11:05 Miro-Andrin

Notice how there is no StopFlyingEvent, so the server is expected to track this value. How this is kept in synch i have no idea.

It's just canceled if they land on the ground, right? Elytras do have higher desync issues that most other things.

AL1L avatar May 14 '21 14:05 AL1L

Hey @AL1L, just so you're aware, this is a clean-room project and we should abstain from reading decompiled code from the vanilla server. See https://github.com/feather-rs/feather/blob/main/CONTRIBUTING.md#original-code-code-from-minecraft

aramperes avatar May 25 '21 07:05 aramperes