← Back to Index

SetActorMotionPacket (40)

This is used for the server to set the velocity of a client actor.
It is primarily relevant for client predicted entities like the player or a boat or horse they are in control of. For most other actor types it does nothing.<br> This is one of the packets that can directly affect player motion, for others, see:<br> - MovePlayerPacket<br> - CorrectPlayerMovePredictionPacket
Field Name Type Field Index Description
Target Runtime ID (Required) ActorRuntimeID 0

ActorRuntimeID

Field Name Type Field Index Description
Actor Runtime ID (Required) varuint64 0
Motion (Required) Vec3 1

Vec3

Field Name Type Field Index Description
X (Required) float 0
Y (Required) float 1
Z (Required) float 2
Tick (Required) PlayerInputTick 2 If this packet is referring to the player or a client predicted vehicle they are in control of, this should be the most recently processed PlayerInputTick from their PlayerAuthInputPacket. Otherwise zero.

PlayerInputTick

Field Name Type Field Index Description
Input tick (Required) varuint64 0 In server authoritative movement mode the client supplies this in PlayerAuthInputPacket. For any client-bound packets containing a tick, the server should supply the tick value corresponding to the most recently processed PlayerAuthInputPacket. This allows the client to adjust any client predictions made while the packet was in flight. If the packet is being sent to the client but not relating to data of the player or a client-predicted vehicle, it can be zero. It is also acceptable to specify zero for players, although this may lead to minor visual flickers and less smooth application of CorrectPlayerMovePredictionPacket.