Open roblabla opened 9 years ago
See https://github.com/SpockBotMC/SpockBot/pull/172/files on that topic
This is needed to support command block updating. An example of updating is:
client->server: play custom_payload :
{"channel":"MC|AdvCdm","data":{"type":"Buffer","data":[0,0,0,0,0,0,0,0,71,255,255,255,189,17,47,116,112,32,114,111,109,49,53,48,52,32,48,32,48,32,48,1]}}
https://gist.github.com/rom1504/742a400592260329bcb1 : started to work on it
http://wiki.vg/Plugin_channel is more up to date
Some of that currently put in mineflayer, https://github.com/PrismarineJS/mineflayer/blob/master/lib/plugins/command_block.js, it will move here when ready I think.
and/or to https://github.com/PrismarineJS/minecraft-data right? (protocol definition)
Plugin channels would also be useful for https://github.com/PrismarineJS/node-minecraft-protocol/issues/114 Forge Support - FML/Forge has several of its own used during handshaking
yeah and minecraft-data
https://github.com/PrismarineJS/node-minecraft-protocol/pull/423 brings parsing of channel to the client and server with registration/unregistration. Missing for this issue:
client.write("custom_payload",{channel:channel,data:proto.createPacketBuffer(channel,packet)});
)edit : checking things in https://github.com/rom1504/node-minecraft-protocol/commit/a0717a1232f83799bd87fb7e918392cb175183d4
Minecraft defines a couple of packets through the Custom Payload mechanism. Currently, node-mc-proto decodes every custom payload as a simple byte array, and API users are left to decode those themselves. This issues proposes two things
We might want to support and manage the "Register/Unregister" channel automagically for this.
In 1.8, the official channels (Ignoring the custom channel management ones) are :
MC|AdvCdm
MC|Beacon
MC|BEdit
MC|BSign
MC|BOpen
MC|ItemName
MC|RPack
(Deprecated, use Resource Pack Send (Play, 0x48, clientbound) and Resource Pack Status (Play, 0x19, serverbound) packets)
MC|TrList
MC|TrSel
MC|PingHost
(Deprecated in 1.7)
MC|Brand