Commit graph

138 commits

Author SHA1 Message Date
roblabla
f29f501ea7 Packets are async. Stalls at crypto.randomBytes 2015-02-05 18:02:34 +00:00
Will Franzen
426a01249c Start on parsing compressed packets 2015-01-02 11:50:54 -06:00
roblabla
d657371b6b Fix compression. Implement position. Add some debugging utilities. 2015-01-01 22:20:47 +00:00
Will Franzen
00241c4044 Fix crash when trying to write to socket 2014-12-31 12:26:59 -06:00
Will Franzen
52078273fe Fix silly typos 2014-12-31 12:24:13 -06:00
Will Franzen
2c02ebfde9 Merge branch 'zlib-compression' into packets-1.8
Conflicts:
	lib/protocol.js
2014-12-31 12:19:49 -06:00
Will Franzen
17e78c11f6 Implement @roblabla's changes 2014-12-31 12:17:17 -06:00
Will Franzen
3121c0fdcc Switch to varint where I was doubting wiki.vg 2014-12-30 13:06:48 -06:00
Will Franzen
46e5637a3c Fix stupid typos 2014-12-30 12:59:57 -06:00
Will Franzen
b12beb3265 Implement title packet 2014-12-30 12:55:38 -06:00
Will Franzen
255957c6ef Implement world_border packet 2014-12-30 12:40:30 -06:00
Will Franzen
7efeba68de Change protocol version number 2014-12-30 12:24:39 -06:00
Will Franzen
29a93f319e Start on updating protocol to 1.8 2014-12-30 12:23:58 -06:00
Will Franzen
675d358dec Finish adding compression to pipeline (see note)
It's 3 AM and I know theres a pretty big chance none of this code makes sense.
Everything needs to be tested, as well as I need to figure out if encryption
comes after compression or not.
2014-12-30 02:55:04 -06:00
Will Franzen
cfa30d9e1d Add packets to protocol and threshold to client 2014-12-30 02:08:21 -06:00
Frase
bcbcf5ef7f Update yggdrasil.js to fix bug
This fixes a crash that occurs on line 310 of index.js where it tries to read the value of client.session.selectedProfile.id which doesn't exist if the session was acquired by a refresh with old auth details.
2014-11-22 21:01:59 +08:00
roblabla
baaac91055 Set no delay on stream if it's TCP. Fixes #38 2014-10-29 00:30:33 +01:00
Robin Lambertz
b8ea176fb7 Use proper for loop in getField, fixes #103
some tools add custom functions to Array, which breaks for/in loops on array.
2014-10-17 18:28:38 +02:00
roblabla
e76d2743e1 Patch UUID processing (Fixes #92) 2014-09-05 12:49:39 +02:00
Robin Lambertz
f80b2aa1b3 Fix nullable state code not working. 2014-05-14 23:49:37 +02:00
Robin Lambertz
9181fe9517 Merge pull request #89 from innoying/patch-3
Fix Spawn Object Packet Parsing
2014-05-14 23:46:24 +02:00
Robin Lambertz
2804fcda44 Merge pull request #87 from innoying/patch-1
Fix entityMetadata reads
2014-05-14 23:46:12 +02:00
Luke Young
61b7a0c20a Better condition fix 2014-05-14 13:46:29 -05:00
Luke Young
5f349d338d Revert "Fix team scoreboard"
This reverts commit 95bacd4bfd.
2014-05-14 13:45:46 -05:00
Luke Young
833df2039c Fix Spawn Object Packet Parsing
If read fails a pre-condition within a container, skip it
2014-05-14 13:44:43 -05:00
Luke Young
95bacd4bfd Fix team scoreboard
Because the team scoreboard values are optional, they should not always be included in the written response.
2014-05-13 23:42:13 -05:00
Luke Young
97bf07b3ad Fix entityMetadata reads
Seems to have been broken at some point. This pull request fixes it.
2014-05-13 23:01:08 -05:00
deathcap
cda8847b44 Emit a 'raw' event for all raw buffers (in addition to per-packet-type) 2014-04-29 19:58:23 -07:00
roblabla
1c4bced44d Fix typo in type name of packet play.0x04 2014-04-13 18:05:54 +02:00
roblabla
19c252ae6a Another tiny mistake fixed 2014-04-13 18:04:28 +02:00
roblabla
19434979bd Fix couple in protocol 2014-04-13 14:25:45 +02:00
roblabla
d7f3e5cd05 Support 1.7.6 protocol 2014-04-11 20:03:24 +02:00
roblabla
c1a5b8294b woops, add back the 'packet' event 2014-04-11 02:08:17 +02:00
roblabla
b7dd1ba04e Remove old debug code 2014-04-11 01:48:42 +02:00
roblabla
0a4b365242 Add opportunistic parsing. 2014-04-11 01:48:06 +02:00
roblabla
457df31b0b Container, array, buffer and count types added 2014-04-04 10:32:20 +02:00
roblabla
c0ba7f8127 Proper generic read/write/sizeOf functions 2014-04-01 15:43:57 +02:00
roblabla
7b9f170fb2 Fix bug in sizeOfMatchArray making the tests fail 2014-03-31 00:07:30 +02:00
roblabla
ffef3f97b5 Merge branch 'master' into feature-packetnames
Conflicts:
	lib/protocol.js
2014-03-31 00:01:49 +02:00
roblabla
2d40fec760 Fix #73 - this string should be unlimited 2014-03-16 18:52:17 +01:00
roblabla
2f90252eaa Merge upstream, fix mistakes in examples 2014-03-16 18:14:55 +01:00
roblabla
244ad8ed39 Use ProtocolLib naming scheme. Use hasOwnProperty instead of equality 2014-03-16 18:06:57 +01:00
DannyAAM
aa0402979e modify some packet variable name
fix chat problem with multi-byte characters
2014-02-22 18:52:24 +08:00
deathcap
0cd3ed13d9 Add packet names 2014-01-13 21:56:56 -08:00
roblabla
875d10ed0b Protocol 1.7 support, Yggdrasil login support, new Client State API 2014-01-06 00:57:18 +01:00
darthfett
9b274df54a Cleanup: terminate all statements with semicolons, remove unnecessary semicolons, remove unused variables, add hasOwnProperty checks in 'for x in y' loops. 2013-11-19 16:55:30 -07:00
Matt Bell
5e75cdf75d Updated protocol version to support 1.6.4 2013-09-26 15:35:41 -07:00
Florian Wesch
de220e1fa1 set unavailable fields to null 2013-08-26 14:22:53 +02:00
Florian Wesch
170566d700 New way to handle conditional fields in packets
Some packets have conditional fields. The previous way to handle
those was to provide a single condition for each packet type
which determined if additional fields are appended to the packet.
Unfortunately this is not enough for some packets: They have
complex conditions that cannot be expressed this way.

This diff changes the way conditional fields are handled: For
each field in each packet there is a new optional 'condition'
function which will be called with the packet data. Only if
the 'condition' function returns true, the field is de/encoded.

This diff also adds new (previously missing) conditions.
2013-08-26 13:00:28 +02:00
roblabla
6a530522a6 Add an unlimited string length for server chat packet 2013-08-07 19:05:59 +02:00