Skip to content
mc-protocol
Esc
↑↓navigate↵open⌘Jpreview
On this page

Light Update

Play 0x30, server → client.

play · 0x30 · clientbound (server → client)

Updates the sky and block light data for the chunk at chunkX, chunkZ. The bit masks say which sections have data or are fully empty, and the arrays hold the 2048-byte nibble arrays per section. The client replaces the light data for those sections and rerenders them.

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

Fields

Field Type Notes
chunkX VarInt
chunkZ VarInt
skyLightMask Array
blockLightMask Array
emptySkyLightMask Array
emptyBlockLightMask Array
skyLight Array
blockLight Array

Send it

await client.sendPacket("LightUpdate", {
  chunkX: /* VarInt */,
  chunkZ: /* VarInt */,
  skyLightMask: /* Array */,
  blockLightMask: /* Array */,
  emptySkyLightMask: /* Array */,
  emptyBlockLightMask: /* Array */,
  skyLight: /* Array */,
  blockLight: /* Array */,
});

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

Source: src/Core/Versions/776/Packets/play/clientbound/LightUpdate.ts

Was this page helpful?