Skip to content

Instantly share code, notes, and snippets.

@rom1504
Last active September 3, 2015 21:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rom1504/f02fabb92123e16aa52b to your computer and use it in GitHub Desktop.
Save rom1504/f02fabb92123e16aa52b to your computer and use it in GitHub Desktop.
unnamed protocol
{
"types": {
"varint": "native",
"string": "native",
"ushort": "native",
"ubyte": "native",
"long": "native",
"buffer": "native",
"int": "native",
"byte": "native",
"bool": "native",
"short": "native",
"slot": "native",
"position": "native",
"float": "native",
"double": "native",
"UUID": "native",
"option": "native",
"entityMetadata": "native",
"entityMetadataItem": [
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "byte",
"1": "short",
"2": "int",
"3": "float",
"4": "string",
"5": "slot",
"6": [
"container",
[
"int",
"int",
"int"
]
],
"7": [
"container",
[
"float",
"float",
"float"
]
]
}
}
],
"container": "native",
"switch": "native",
"void": "native",
"array": "native",
"restBuffer": "native"
},
"states": {
"handshaking": {
"toClient": {},
"toServer": {
"0x00": [
"varint",
"string",
"ushort",
"varint"
],
"0xfe": [
"ubyte"
]
}
},
"status": {
"toClient": {
"0x00": [
"string"
],
"0x01": [
"long"
]
},
"toServer": {
"0x00": [],
"0x01": [
"long"
]
}
},
"login": {
"toClient": {
"0x00": [
"string"
],
"0x01": [
"string",
[
"buffer",
{
"countType": "varint"
}
],
[
"buffer",
{
"countType": "varint"
}
]
],
"0x02": [
"string",
"string"
],
"0x03": [
"varint"
]
},
"toServer": {
"0x00": [
"string"
],
"0x01": [
[
"buffer",
{
"countType": "varint"
}
],
[
"buffer",
{
"countType": "varint"
}
]
]
}
},
"play": {
"toClient": {
"0x00": [
"varint"
],
"0x01": [
"int",
"ubyte",
"byte",
"ubyte",
"ubyte",
"string",
"bool"
],
"0x02": [
"string",
"byte"
],
"0x03": [
"long",
"long"
],
"0x04": [
"varint",
"short",
"slot"
],
"0x05": [
"position"
],
"0x06": [
"float",
"varint",
"float"
],
"0x07": [
"int",
"ubyte",
"ubyte",
"string"
],
"0x08": [
"double",
"double",
"double",
"float",
"float",
"byte"
],
"0x09": [
"byte"
],
"0x0a": [
"varint",
"position"
],
"0x0b": [
"varint",
"ubyte"
],
"0x0c": [
"varint",
"UUID",
"int",
"int",
"int",
"byte",
"byte",
"short",
"entityMetadata"
],
"0x0d": [
"varint",
"varint"
],
"0x0e": [
"varint",
"byte",
"int",
"int",
"int",
"byte",
"byte",
[
"container",
[
"int",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "short"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "short"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "short"
}
]
]
]
],
"0x0f": [
"varint",
"ubyte",
"int",
"int",
"int",
"byte",
"byte",
"byte",
"short",
"short",
"short",
"entityMetadata"
],
"0x10": [
"varint",
"string",
"position",
"ubyte"
],
"0x11": [
"varint",
"int",
"int",
"int",
"short"
],
"0x12": [
"varint",
"short",
"short",
"short"
],
"0x13": [
[
"array",
{
"type": "varint",
"countType": "varint"
}
]
],
"0x14": [
"varint"
],
"0x15": [
"varint",
"byte",
"byte",
"byte",
"bool"
],
"0x16": [
"varint",
"byte",
"byte",
"bool"
],
"0x17": [
"varint",
"byte",
"byte",
"byte",
"byte",
"byte",
"bool"
],
"0x18": [
"varint",
"int",
"int",
"int",
"byte",
"byte",
"bool"
],
"0x19": [
"varint",
"byte"
],
"0x1a": [
"int",
"byte"
],
"0x1b": [
"int",
"int",
"bool"
],
"0x1c": [
"varint",
"entityMetadata"
],
"0x1d": [
"varint",
"byte",
"byte",
"varint",
"bool"
],
"0x1e": [
"varint",
"byte"
],
"0x1f": [
"float",
"varint",
"varint"
],
"0x20": [
"varint",
[
"array",
{
"type": [
"container",
[
"string",
"double",
[
"array",
{
"type": [
"container",
[
"UUID",
"double",
"byte"
]
],
"countType": "varint"
}
]
]
],
"countType": "int"
}
]
],
"0x21": [
"int",
"int",
"bool",
"ushort",
[
"buffer",
{
"countType": "varint"
}
]
],
"0x22": [
"int",
"int",
[
"array",
{
"type": [
"container",
[
"ubyte",
"ubyte",
"varint"
]
],
"countType": "varint"
}
]
],
"0x23": [
"position",
"varint"
],
"0x24": [
"position",
"ubyte",
"ubyte",
"varint"
],
"0x25": [
"varint",
"position",
"byte"
],
"0x26": [
"bool",
[
"array",
{
"type": [
"container",
[
"int",
"int",
"ushort"
]
],
"countType": "varint"
}
],
"restBuffer"
],
"0x27": [
"float",
"float",
"float",
"float",
[
"array",
{
"type": [
"container",
[
"byte",
"byte",
"byte"
]
],
"countType": "int"
}
],
"float",
"float",
"float"
],
"0x28": [
"int",
"position",
"int",
"bool"
],
"0x29": [
"string",
"int",
"int",
"int",
"float",
"ubyte"
],
"0x2a": [
"int",
"bool",
"float",
"float",
"float",
"float",
"float",
"float",
"float",
"int",
[
"array",
"too lazy for this"
]
],
"0x2b": [
"ubyte",
"float"
],
"0x2c": [
"varint",
"byte",
"int",
"int",
"int"
],
"0x2d": [
"ubyte",
"string",
"string",
"ubyte",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"EntityHorse": "int"
},
"default": "void"
}
]
],
"0x2e": [
"ubyte"
],
"0x2f": [
"byte",
"short",
"slot"
],
"0x30": [
"ubyte",
[
"array",
{
"type": "slot",
"countType": "short"
}
]
],
"0x31": [
"ubyte",
"short",
"short"
],
"0x32": [
"byte",
"short",
"bool"
],
"0x33": [
"position",
"string",
"string",
"string",
"string"
],
"0x34": [
"varint",
"byte",
[
"array",
{
"type": [
"container",
[
"byte",
"byte",
"byte"
]
],
"countType": "varint"
}
],
"byte",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "byte"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "byte"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": "byte"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "void"
},
"default": [
"buffer",
{
"countType": "varint"
}
]
}
]
],
"0x35": [
"position",
"ubyte",
"restBuffer"
],
"0x36": [
"position"
],
"0x37": [
[
"array",
{
"type": [
"container",
[
"string",
"varint"
]
],
"countType": "varint"
}
]
],
"0x38": [
"varint",
[
"array",
{
"type": [
"container",
[
"UUID",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": [
"array",
{
"type": [
"container",
[
"string",
"string",
"bool",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"true": "string"
},
"default": "void"
}
]
]
],
"countType": "varint"
}
]
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "varint",
"1": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "varint",
"2": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": [
"option",
"string"
],
"3": [
"option",
"string"
]
},
"default": "void"
}
]
]
],
"countType": "varint"
}
]
],
"0x39": [
"byte",
"float",
"float"
],
"0x3a": [
[
"array",
{
"type": "string",
"countType": "varint"
}
]
],
"0x3b": [
"string",
"byte",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
]
],
"0x3c": [
"string",
"byte",
"string",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "void"
},
"default": "varint"
}
]
],
"0x3d": [
"byte",
"string"
],
"0x3e": [
"string",
"byte",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "byte",
"2": "byte"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"2": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "byte",
"2": "byte"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": [
"array",
{
"type": "string",
"countType": "varint"
}
],
"3": [
"array",
{
"type": "string",
"countType": "varint"
}
],
"4": [
"array",
{
"type": "string",
"countType": "varint"
}
]
},
"default": "void"
}
]
],
"0x3f": [
"string",
"restBuffer"
],
"0x40": [
"string"
],
"0x41": [
"ubyte"
],
"0x42": [
"varint",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "int",
"2": "int"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "string"
},
"default": "void"
}
]
],
"0x43": [
"varint"
],
"0x44": [
"varint",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "double"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "double",
"3": "double"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "double",
"3": "double"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "double",
"3": "double"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "double",
"3": "double"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"1": "varint",
"3": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"3": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"3": "varint",
"4": "varint"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"3": "varint",
"5": "varint"
},
"default": "void"
}
]
],
"0x45": [
"varint",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"0": "string",
"1": "string"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "int"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "int"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "int"
},
"default": "void"
}
]
],
"0x46": [
"varint"
],
"0x47": [
"string",
"string"
],
"0x48": [
"string",
"string"
],
"0x49": [
"varint",
"restBuffer"
]
},
"toServer": {
"0x00": [
"varint"
],
"0x01": [
"string"
],
"0x02": [
"varint",
"varint",
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "float"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "float"
},
"default": "void"
}
],
[
"switch",
{
"compareTo": "too lazy for this",
"fields": {
"2": "float"
},
"default": "void"
}
]
],
"0x03": [
"bool"
],
"0x04": [
"double",
"double",
"double",
"bool"
],
"0x05": [
"float",
"float",
"bool"
],
"0x06": [
"double",
"double",
"double",
"float",
"float",
"bool"
],
"0x07": [
"byte",
"position",
"byte"
],
"0x08": [
"position",
"byte",
"slot",
"byte",
"byte",
"byte"
],
"0x09": [
"short"
],
"0x0a": [],
"0x0b": [
"varint",
"varint",
"varint"
],
"0x0c": [
"float",
"float",
"ubyte"
],
"0x0d": [
"ubyte"
],
"0x0e": [
"ubyte",
"short",
"byte",
"short",
"byte",
"slot"
],
"0x0f": [
"byte",
"short",
"bool"
],
"0x10": [
"short",
"slot"
],
"0x11": [
"byte",
"byte"
],
"0x12": [
"position",
"string",
"string",
"string",
"string"
],
"0x13": [
"byte",
"float",
"float"
],
"0x14": [
"string",
[
"option",
"position"
]
],
"0x15": [
"string",
"byte",
"byte",
"bool",
"ubyte"
],
"0x16": [
"varint"
],
"0x17": [
"string",
"restBuffer"
],
"0x18": [
"UUID"
],
"0x19": [
"string",
"varint"
]
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment