networking - Java/Minecraft - How to read/understand packets -
i have written packet sniffer in java , works perfect have text file integers , dont know how decode them. tried use : minecraft protocol, still can't decode packets...
output:
[client] 15 [client] 0 [client] 47 [client] 9 [client] 108 [client] 111 [client] 99 [client] 97 [client] 108 [client] 104 [client] 111 [client] 115 [client] 116 [client] 30 [client] 97 [client] 1 [client] 1 [client] 0 [server] 118 [server] 0 [server] 116 [server] 123 [server] 34 [server] 100 [server] 101 [server] 115 [server] 99 [server] 114 [server] 105 [server] 112 [server] 116 [server] 105 [server] 111 [server] 110 [server] 34 [server] 58 [server] 34 [server] 65 [server] 32 [server] 77 [server] 105 [server] 110 [server] 101 [server] 99 [server] 114 [server] 97 [server] 102 [server] 116 [server] 32 [server] 83 [server] 101 [server] 114 [server] 118 [server] 101 [server] 114 [server] 34 [server] 44 [server] 34 [server] 112 [server] 108 [server] 97 [server] 121 [server] 101 [server] 114 [server] 115 [server] 34 [server] 58 [server] 123 [server] 34 [server] 109 [server] 97 [server] 120 [server] 34 [server] 58 [server] 50 [server] 48 [server] 44 [server] 34 [server] 111 [server] 110 [server] 108 [server] 105 [server] 110 [server] 101 [server] 34 [server] 58 [server] 48 [server] 125 [server] 44 [server] 34 [server] 118 [server] 101 [server] 114 [server] 115 [server] 105 [server] 111 [server] 110 [server] 34 [server] 58 [server] 123 [server] 34 [server] 110 [server] 97 [server] 109 [server] 101 [server] 34 [server] 58 [server] 34 [server] 83 [server] 112 [server] 105 [server] 103 [server] 111 [server] 116 [server] 32 [server] 49 [server] 46 [server] 56 [server] 46 [server] 55 [server] 34 [server] 44 [server] 34 [server] 112 [server] 114 [server] 111 [server] 116 [server] 111 [server] 99 [server] 111 [server] 108 [server] 34 [server] 58 [server] 52 [server] 55 [server] 125 [server] 125 [client] 9 [client] 1 [client] 0 [client] 0 [client] 0 [client] 0 [client] 10 [client] 158 [client] 220 [client] 203 [server] 9 [server] 1 [server] 0 [server] 0 [server] 0 [server] 0 [server] 10 [server] 158 [server] 220 [server] 203 [server] -1 [client] -1 i appreciate if has answer.
it seems no integer higher 255, single byte per line output. packet seeing might compressed, impossible without seeing configuration of minecraft user/server. if compressed - need unzip them before able analyze them.
to decoding, highly recommend wireshark. download , re-run network capture. compare decoded output of program. wireshark give meaning of each data member in packet.
edit: part of decoding unclear you? using pen , paper , windows calculator in programming mode here decoding of first packet:
15 - varint - length of packet 0 - varint - packet id - handshake 47 - varint - protocol version following bytes length prefixed server address in utf-8: 9 - lenght 108 - l 111 - o 99 - c 97 - 108 - l 104 - h 111 - o 115 - s 116 - t following 2 bytes server port in unsigned short format (i guess 7777) 30 97 1 - varint - next state last 2 bytes unclear me.
in short - each packet:
- find length of packet
- find packet type
- using packet type decode rest
Comments
Post a Comment