Closed ghost closed 9 years ago
The server is sending packets out of order. At this point I don't plan to support invalid uses of the protocol
Oh okay, so what kind of packets are they sending?
The spawn player packet before the tab list entry for the player.
Told ya @sha-2 :wink:
Vanilla minecraft client doesn't crash on this... https://github.com/thinkofdeath/steven/issues/38
@Szperak doesn't matter, it isn't valid. Best case I turn it into a disconnect.
Thanks.
We don't send packets out of order. We send the Player infos first and then (in the same tick) we send the spawn packet.
@geNAZt That is not how it ends up at the client.
I will fix that later this day
Awesome, in case it helps I grabbed a packet log
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:0 Players:[{UUID:[146 157 200 216 100 70 73 72 191 35 112 161 188 28 152 26] Name:Padasch Properties:[{Name:textures Value:eyJ0aW1lc3RhbXAiOjE0MzMxNTc3NzczNTgsInByb2ZpbGVJZCI6IjkyOWRjOGQ4NjQ0NjQ5NDhiZjIzNzBhMWJjMWM5ODFhIiwicHJvZmlsZU5hbWUiOiJQYWRhc2NoIiwidGV4dHVyZXMiOnsiU0tJTiI6eyJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlL2JhNjdiMGFhOTcyNjI2YjhjZDEwNzI4ODRmNDE2YzZmOGZhMjY0MzlmNjI1ZGZhZTgzYTUxOGMzY2EzNzY3YSJ9fX0= IsSigned:true Signature:L7OXyowrjnT1vj2rgcRDVZ/ZsjoQaXlOQYG0fymMNaRcLgGGszVILVk+Sgt+1pZQlJGTYLQcVGbyCt+lXnKw5M8Q9b65zbxI543j4Yyu2hsH140hrMwh6pEptAvU5qUy7MROgCalE9fw/C3Y/L91CaiIBY8MjhcJcNopWhn/paeq6Ny1U5OuH1BRxcKG3OtIowwA/oDk5Y0gv5+Vn7W7NkZfB30ojMHsjMEQU9eq5fs73/iDPc4Gzd1thqzBKhL5m0NLoIbTzthOUNQ66HSCA9SzgcxQ3UzdZONhUY/+ibAB5H0azP2apMQRSR0s/YB9ReE97xMlFHFFhV4AjyZuDElP7uH2YYJY9JHCMush9Onk5bPz4+PyyNEPo8EJMnpT2tSUIn26Z7xveCf1AVEzrXk0ZU3NOAu5x/NYcDPH4mX0UW93FqyxLk3JZ4FHodpsyvOM4hu4fg0XrQI3aauYkIreyUUYCHmErNEHQICZRHlcgZAg+5Qe2DPUJhfqyWpPMZytt7WoEVTGxb+huw7xVgsPZgQskQcbhYKn2VPLsRXFLDvKOd8V0VfonQfdsFCDVWvc//G6uSBDfRndXqpZsaUXOGbqnz1hL8+AolQWN8EC3Gp5m2cmyMaq7fi0fAgsinc4gbZ0ZLm4WZSSXlhdRyebKuo8fykKD4dNEhojKec=}] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.SpawnPlayer(&{EntityID:29245 UUID:[146 157 200 216 100 70 73 72 191 35 112 161 188 28 152 26] X:-41744 Y:928 Z:5872 Yaw:0 Pitch:0 CurrentItem:0 Metadata:map[18:0 17:0 16:0 9:0 8:0 7:0 6:20 1:300 0:0]})
[connection.go:238] Read: *protocol.EntityMetadata(&{EntityID:29245 Metadata:map[18:0 7:0 6:20 1:300 17:0 16:0 10:0 9:0 8:0 0:0]})
[connection.go:238] Read: *protocol.EntityProperties(&{EntityID:29245 Properties:[{Key:generic.movementSpeed Value:0.10000000149011612 Modifiers:[]} {Key:generic.maxHealth Value:20 Modifiers:[]}]})
[connection.go:238] Read: *protocol.EntityHeadLook(&{EntityID:29245 HeadYaw:2})
[connection.go:238] Read: *protocol.EntityHeadLook(&{EntityID:29245 HeadYaw:2})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:0 Players:[{UUID:[146 157 200 216 100 70 73 72 191 35 112 161 188 28 152 26] Name:Padasch Properties:[{Name:textures Value:eyJ0aW1lc3RhbXAiOjE0MzMxNTc3NzczNTgsInByb2ZpbGVJZCI6IjkyOWRjOGQ4NjQ0NjQ5NDhiZjIzNzBhMWJjMWM5ODFhIiwicHJvZmlsZU5hbWUiOiJQYWRhc2NoIiwidGV4dHVyZXMiOnsiU0tJTiI6eyJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlL2JhNjdiMGFhOTcyNjI2YjhjZDEwNzI4ODRmNDE2YzZmOGZhMjY0MzlmNjI1ZGZhZTgzYTUxOGMzY2EzNzY3YSJ9fX0= IsSigned:true Signature:L7OXyowrjnT1vj2rgcRDVZ/ZsjoQaXlOQYG0fymMNaRcLgGGszVILVk+Sgt+1pZQlJGTYLQcVGbyCt+lXnKw5M8Q9b65zbxI543j4Yyu2hsH140hrMwh6pEptAvU5qUy7MROgCalE9fw/C3Y/L91CaiIBY8MjhcJcNopWhn/paeq6Ny1U5OuH1BRxcKG3OtIowwA/oDk5Y0gv5+Vn7W7NkZfB30ojMHsjMEQU9eq5fs73/iDPc4Gzd1thqzBKhL5m0NLoIbTzthOUNQ66HSCA9SzgcxQ3UzdZONhUY/+ibAB5H0azP2apMQRSR0s/YB9ReE97xMlFHFFhV4AjyZuDElP7uH2YYJY9JHCMush9Onk5bPz4+PyyNEPo8EJMnpT2tSUIn26Z7xveCf1AVEzrXk0ZU3NOAu5x/NYcDPH4mX0UW93FqyxLk3JZ4FHodpsyvOM4hu4fg0XrQI3aauYkIreyUUYCHmErNEHQICZRHlcgZAg+5Qe2DPUJhfqyWpPMZytt7WoEVTGxb+huw7xVgsPZgQskQcbhYKn2VPLsRXFLDvKOd8V0VfonQfdsFCDVWvc//G6uSBDfRndXqpZsaUXOGbqnz1hL8+AolQWN8EC3Gp5m2cmyMaq7fi0fAgsinc4gbZ0ZLm4WZSSXlhdRyebKuo8fykKD4dNEhojKec=}] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.EntityHeadLook(&{EntityID:29244 HeadYaw:3})
[connection.go:238] Read: *protocol.EntityMetadata(&{EntityID:29245 Metadata:map[0:0 18:0 16:0 1:300 8:0 7:0 6:20 17:0 10:0 9:0]})
[connection.go:238] Read: *protocol.EntityProperties(&{EntityID:29245 Properties:[{Key:generic.movementSpeed Value:0.10000000149011612 Modifiers:[]}]})
[connection.go:238] Read: *protocol.KeepAliveClientbound(&{ID:-819192123})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:4 DisplayName: Prefix: Suffix: Flags:0 NameTagVisibility: Color:0 Players:[TadiiiHD]})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:4 Players:[{UUID:[19 205 136 167 218 238 66 203 133 5 100 195 136 169 23 22] Name: Properties:[] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:4 DisplayName: Prefix: Suffix: Flags:0 NameTagVisibility: Color:0 Players:[DiamondCrafter20]})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:4 Players:[{UUID:[255 155 214 165 155 237 74 68 190 176 156 180 5 216 186 211] Name: Properties:[] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:2 DisplayName:g Prefix:§a Suffix: Flags:3 NameTagVisibility:always Color:15 Players:[]})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:3 DisplayName: Prefix: Suffix: Flags:0 NameTagVisibility: Color:0 Players:[Lockenmax]})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:0 Players:[{UUID:[209 198 85 126 152 170 69 41 135 188 234 205 103 160 44 250] Name:Lockenmax Properties:[{Name:textures Value:eyJ0aW1lc3RhbXAiOjE0MzMxNTU2MTg1MzQsInByb2ZpbGVJZCI6ImQxYzY1NTdlOThhYTQ1Mjk4N2JjZWFjZDY3YTAyY2ZhIiwicHJvZmlsZU5hbWUiOiJMb2NrZW5tYXgiLCJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNjIzN2ZlZWVlNTc5Nzc3OThjZThjYjZmOTZlNjFiYWY3MDQ0ZjdhYWE0Y2IyNTc0ODc0Njk5ZTliNjIxNiJ9fX0= IsSigned:true Signature:aDcDLIjIpEgz+EgtaJwMN5EEuaoiDeeaTvgFFi//t+fs1+wsEn4SQJcW1ya8VbJwZjPxoGrz1sAytzsuWXcFAdhwX71mt2eTZz/Dc2/5aNXVrSgj883oGSD2QvNU1lYVWOy5bDdUW/Eszlh6oT5TeH/ZlIkDohVD/rfBmzAsThoDMHLJ4Ry3djvu7Vx0iZjg9SCjLFTSsZ4X8NJ/iaCwchDh3jWlxqHO8pUWYNLmPM5HvmgfGMVyjJuIuM3CETr1X3X+8CI8BlqyGHeLhiqOKcNa/yjuh3ad4sbnJLkstiTGul1elq7pcnInrmehZBR1g6d/Ref6FtS07Bj7BqwAioCxvM74wY1vyhBTXWwkL8/QLob648ZfUqOZD7u+Vj16Y2HSPQSzvI0icPyIHRT9krm7WbMuTdPx6uRDUbqbmfyVZsl7A/oSCz9TURLGJAyT6/nqQS1k7XRA8jFX1ifHRMCsnVBP9Glk7I7iD80tyJ924qZFwyplBs+0DPJ/wqm7ATNKqKT16pXdCKGUsYVj3K0Z4HZKwNf0ggalyICADA/iY6NJ/NT9jbGht/gBnHMp/2E4TNK46vXOjJKbVMOdz6VeVKJpXzJjawVe6y5PQ37egumG4gIBt5gC4FSC3ipbfG/4STfKmEjMNCm8lrusUt2HhYp/BAMgJT0IvXHxfbk=}] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.SpawnPlayer(&{EntityID:29248 UUID:[199 230 97 187 145 14 67 126 128 52 20 152 99 203 91 119] X:-42159 Y:945 Z:5801 Yaw:0 Pitch:0 CurrentItem:0 Metadata:map[8:0 1:300 0:0]})
[entitymodels.go:155] Missing player info for [199 230 97 187 145 14 67 126 128 52 20 152 99 203 91 119]
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:2 Players:[{UUID:[129 20 157 52 5 177 74 26 185 152 113 100 108 222 213 238] Name: Properties:[] GameMode:0 Ping:187 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.TimeUpdate(&{WorldAge:211031705 TimeOfDay:-1201600})
[connection.go:238] Read: *protocol.EntityTeleport(&{EntityID:29212 X:-39064 Y:444 Z:6679 Yaw:0 Pitch:0 OnGround:false})
[connection.go:238] Read: *protocol.EntityDestroy(&{EntityIDs:[29244]})
[connection.go:238] Read: *protocol.EntityDestroy(&{EntityIDs:[29245]})
[connection.go:238] Read: *protocol.EntityDestroy(&{EntityIDs:[29248]})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:2 Players:[{UUID:[164 172 121 239 127 138 71 152 148 203 238 163 115 55 95 2] Name: Properties:[] GameMode:0 Ping:28 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:2 DisplayName:g Prefix:§a Suffix: Flags:3 NameTagVisibility:always Color:15 Players:[]})
[connection.go:238] Read: *protocol.Teams(&{Name:g Mode:3 DisplayName: Prefix: Suffix: Flags:0 NameTagVisibility: Color:0 Players:[rusol]})
[connection.go:238] Read: *protocol.PlayerInfo(&{Action:0 Players:[{UUID:[184 110 161 32 251 101 78 29 131 135 17 125 227 201 205 226] Name:rusol Properties:[{Name:textures Value:eyJ0aW1lc3RhbXAiOjE0MzMxNTc3Nzg3NzYsInByb2ZpbGVJZCI6ImI4NmVhMTIwZmI2NTRlMWQ4Mzg3MTE3ZGUzYzljZGUyIiwicHJvZmlsZU5hbWUiOiJydXNvbCIsInRleHR1cmVzIjp7IlNLSU4iOnsidXJsIjoiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS84M2EzZjI4ZjFlMWNmZTY1YmQzYjhkNWJlOGU0NTY5ZWYxY2RjZGEwNWY2MTdhMTVhODAyOWY2ODEyMzhmOCJ9fX0= IsSigned:true Signature:HC4J3t8XUoZ1WoPkKArXGLpb191dHowgsKBhDSPMk+Hlk8MpWfXV4chHQklhAQdGVR8yWYIK4CbBhO8AKKLmHOzB5lzXzgqjtZWpEpxHsmvsM1ObfKBtAcuujrg4YernuZ8qTi8UIdAxtgfzT+12OYI/DaO5TS1H7hw0QmVovH421Ex1Hpohvi2Vja5c8yfS1g2E/2b0S1hC8LHQgyTDY/sA7ePpx9guJbBZcJMsdjpCvAaFJYA3xObg3berDTTpyzRrU3G9imWopi8nVZtn0MB89y8w7lXaqxp1WGTzXm+NvwD6DxRdVs5WzBOE0DgjtHPjwo2ess3YcH0qP+V81Q05irF37W6MQiIf5fZzuu2WV9hFI4a0mYYe2jKlCrvlwnnchFOeZwJMKuzvT9VAroQzw+YQXgkSo5mMy9GLMXSDlwSMeeO01MMv+uP8Kw1r1zc78FTT6865R5/3QDGz+2vlsxVTeCiV+REzfbdAAafRy0ylJqA+/OS5GxJllbPl5JFSVMZnSSFcToO2Ot2XiWoeM8f/Nll/QAwmL0YpLrQL9wP5PTsS/OfjizMKjmHR3Uf7mgr2iJUWGe9NEtFv6lodQs4/UVl1voWo/qrtS7qIFAXboldj6PmVN81TCpIB6uHDteKCIhmujBymwGGAtJz+qzBTDVWbAUGymCEQPgI=}] GameMode:0 Ping:0 HasDisplay:false DisplayName:<nil>}]})
[connection.go:238] Read: *protocol.SpawnPlayer(&{EntityID:29252 UUID:[184 110 161 32 251 101 78 29 131 135 17 125 227 201 205 226] X:-42000 Y:928 Z:6000 Yaw:0 Pitch:0 CurrentItem:0 Metadata:map[9:0 8:0 7:0 6:20 0:0 18:0 17:0 16:0 1:300]})
[connection.go:238] Read: *protocol.EntityMetadata(&{EntityID:29252 Metadata:map[18:0 17:0 7:0 0:0 16:0 10:0 9:0 8:0 6:20 1:300]})
[connection.go:238] Read: *protocol.EntityProperties(&{EntityID:29252 Properties:[{Key:generic.maxHealth Value:20 Modifiers:[]} {Key:generic.movementSpeed Value:0.10000000149011612 Modifiers:[]}]})
[connection.go:238] Read: *protocol.EntityHeadLook(&{EntityID:29252 HeadYaw:3})
https://gist.github.com/thinkofdeath/2f02f637ec1403f6fd28
(Note that the player is spawned but the info is never sent, they'll be invisible on vanilla)
Awesome. Thanks
After a few seconds on
gommehd.net
steven crashes… Full error log