Difference between revisions of "Plugin channels"
Line 20: | Line 20: | ||
Remote texture packs. | Remote texture packs. | ||
+ | This contains a string representing the url to get the texture pack from, followed by null (\0000) and then '16'. | ||
=== <code>MC|TrList</code> === | === <code>MC|TrList</code> === |
Revision as of 17:59, 18 August 2012
Plugin channels are implemented using packet 0xFA, allowing client mods and server plugins to communicate without cluttering up chat. This post by Dinnerbone is a good introduction and basic documentation.
Contents
Channels internal to Minecraft
As of 1.3, Minecraft itself started using plugin channels to implement new features. These internal channel names are prefixed by MC|
.
MC|BEdit
Client to server
When a player edits an unsigned book.
This payload is simply a set of bytes corresponding to an ItemStack. It is serialized / deserialized exactly the same as itemstacks in packets.
MC|BSign
Client to server
When a player signs a book. This payload is simply a set of bytes corresponding to an ItemStack. It is serialized / deserialized exactly the same as itemstacks in packets.
MC|TPack
Two-Way
Remote texture packs. This contains a string representing the url to get the texture pack from, followed by null (\0000) and then '16'.
MC|TrList
Two-Way
The list of trades a villager NPC is offering.
MC|TrSel
Client to server
When a player selects a specific trade offered by a villager NPC. It contains a single int id corresponding to the selected slot int the players current (trading) inventory.
Notable community plugin channels
Channels listed in this section are not Mojang-sanctioned. This is just a likely-incomplete list of channels used by mods/plugins popular within the Minecraft community.