---
title: Move Player Pos Rot
description: "Play 0x1F, client → server."
---

`play` · `0x1F` · **serverbound** (client → server)

Updates both position and rotation. `x`, `y`, `z` are absolute feet coordinates, `yaw` and `pitch` are in degrees, and `flags` contains on-ground and horizontal-collision bits. Sent when the player both moves and looks around in the same tick.

Sent by the client, read by the server. Listen for it with `client.on("MovePlayerPosRot", (data) => …)` on the receiving side.

## Fields

| Field | Type | Notes |
|---|---|---|
| `x` | Double |  |
| `y` | Double |  |
| `z` | Double |  |
| `yaw` | Float |  |
| `pitch` | Float |  |
| `flags` | MovementFlags |  |

## Send it

```ts
await client.sendPacket("MovePlayerPosRot", {
  x: /* Double */,
  y: /* Double */,
  z: /* Double */,
  yaw: /* Float */,
  pitch: /* Float */,
  flags: /* MovementFlags */,
});
```

Field aliases listed under Notes are accepted as alternative keys when writing.

Source: [`src/Core/Versions/776/Packets/play/serverbound/MovePlayerPosRot.ts`](https://github.com/GDLev/mc-protocol/blob/master/src/Core/Versions/776/Packets/play/serverbound/MovePlayerPosRot.ts)
