Disguised Chat
Play 0x21, server → client.
play · 0x21 · clientbound (server → client)
Shows a chat message without a signature, formatted as a player chat message using the chat type, name, and optional target. The server uses it for messages such as /say and other unsigned player-style output. The client formats it in the chat using the given chat type but does not verify it.
Sent by the server, read by the client. Listen for it with client.on("DisguisedChat", (data) => …) on the receiving side.
Fields
| Field | Type | Notes |
|---|---|---|
message |
NBT | |
type |
ChatTypesHolder | also chatType, subscriptionType |
name |
NBT | also senderName |
target |
Optional | also targetName |
Send it
await client.sendPacket("DisguisedChat", {
message: /* NBT */,
type: /* ChatTypesHolder */,
name: /* NBT */,
target: /* Optional */,
});
Field aliases listed under Notes are accepted as alternative keys when writing.
Source: src/Core/Versions/776/Packets/play/clientbound/DisguisedChat.ts