Set Entity Motion
Play 0x65, server → client.
play · 0x65 · clientbound (server → client)
Sets an entity’s velocity. The server sends it when an entity is knocked back, launched, or otherwise gets a velocity change that the client should apply. For the local player the client adds the velocity to its own movement.
Sent by the server, read by the client. Listen for it with client.on("SetEntityMotion", (data) => …) on the receiving side.
Fields
| Field | Type | Notes |
|---|---|---|
entityId |
VarInt | |
velocity |
LpVec3 |
Send it
// Launch entity 100 upwards.
await client.sendPacket("SetEntityMotion", { entityId: 100, velocity: [0, 1.5, 0] });
velocity is [x, y, z] in blocks per tick. The client applies it as the entity’s current motion; it does not teleport. Sending it for the player’s own entity ID knocks the player.
Field aliases listed under Notes are accepted as alternative keys when writing.
Source: src/Core/Versions/776/Packets/play/clientbound/SetEntityMotion.ts