Commit Graph

432 Commits

Author SHA1 Message Date
Tristan Gosselin-Hane
180c698ce1 Added support for snapshot 20w17a 2020-04-22 16:36:19 -04:00
Tristan Gosselin-Hane
7380bc2c61 Added support for snapshots 20w13b, 20w14a, 20w15a, 20w16a 2020-04-17 00:07:41 -04:00
Tristan Gosselin-Hane
428a599f40 Added support for snapshot 20w13a 2020-04-16 20:54:51 -04:00
Tristan Gosselin-Hane
76f7b4bdc9 Added support for snapshot 20w12a 2020-03-20 15:00:31 -04:00
Tristan Gosselin-Hane
5c6edf5e44 Added support for snapshot versions up to 20w11a 2020-03-17 00:23:35 -04:00
joo
ff9a0813b6 Add support for 1.15.2-pre1 to 1.15.2 (protocols 576 to 578) 2020-01-23 18:02:10 +01:00
joo
b38adc1aa1 Add pre-release versions between 1.14.4 and 1.15.1; update test config 2020-01-08 16:15:42 +01:00
Sillyfrog
51c618aeb5 Support v1.15.1 2019-12-23 21:53:16 -05:00
Sillyfrog
e1afabcba5 Add support for v1.15 2019-12-23 21:53:10 -05:00
joo
6f2f25656c
Merge pull request #135 from jimchen5209/1.14.4
Upgrade to 1.14.4 (Same Packet Format)
2019-08-16 02:03:42 +02:00
joodicator
bbbd3fb195 Add pre-release versions for 1.14.3 and 1.14.4 2019-08-16 00:16:41 +02:00
Jim Chen
6f54e852d4
Update readme supported list 2019-07-26 15:09:47 +08:00
Jim Chen
c80cfd50fe
Upgrade to 1.14.4(Same Packet Format) 2019-07-26 09:10:35 +08:00
joodicator
997f813a6c Add tests for string representation of PlayerListItemPacket (issue #133) 2019-07-03 19:54:15 +02:00
joodicator
a03e1a7c47 Fix: MutableRecord interprets __slots__ incorrectly (issue #133) 2019-07-03 19:53:30 +02:00
joo
e97458c970
Update README.rst 2019-06-25 15:14:11 +02:00
Sillyfrog
d90f08c503 Update to v1.14.3 (same packet format) 2019-06-25 15:13:17 +02:00
joodicator
e3d2b1a368 Improve metadata and auxiliary methods of existing packets.
* Add multi-attribute aliases to some packets, for user convenience.
* Add support for writing PlayerListItemPacket.
* Add 'fields' attributes to manually-read/written packet classes,
  implementing 'field_string' where appropriate to allow enable the
  default __repr__ implementation.
* Modify data constructors where appropriate so that __repr__
  implementations match their constructor protocols.
* Improve comments on type aliases within packet classes.
* Add/modify tests to cover the new functionality.
2019-06-08 15:39:24 +02:00
joodicator
234e57716c Increment package version to 0.6.0 2019-05-29 18:47:14 +02:00
joodicator
d1e1da85c8 Declare support for 1.14.2 pre-releases 1-4 (481-484); update README 2019-05-29 18:26:06 +02:00
Sillyfrog
6d9d15845a Support for 1.14.2 (same packet format) 2019-05-29 15:37:25 +10:00
joo
b83b33f8df
Merge pull request #125 from SirGhostal/new-packets
* Add Angle type for byte-encoded rotation angles.
* Fix: SpawnPlayerPacket and SpawnObjectPacket use wrong type for pitch/yaw.
* Add FacePlayerPacket and EntityLookPacket.
2019-05-18 03:04:59 +02:00
joodicator
1012ee8640 Revert: Add tests for Angle (were already present) 2019-05-18 02:54:21 +02:00
joodicator
a3357762d7 Add tests for FacePlayerPacket, Angle; fix bugs; misc. changes
* Add alias FacePlayerPacket.target for x, y, z fields.
* Replace FacePlayerPacket.OriginPoint type alias with Origin and
  EntityOrigin aliases.
2019-05-18 02:36:36 +02:00
Zachy
a6c11bbb34 Flake8: Correct E501 line too long (81 > 79 characters) 2019-05-17 21:56:32 +01:00
Zachy
b0a9a3693c Remove white space 2019-05-17 21:45:21 +01:00
Zachy
e8a0e34aef Feedback: Replace FeetEyes convention with OriginPoint for forward compat 2019-05-17 21:38:57 +01:00
Zachy
0b127da0ca Feedback: Correct Fixed Point conversion & take mod of angle send value 2019-05-17 21:31:33 +01:00
Zachy
a60b513e74 Fix import order 2019-05-17 02:15:01 +01:00
Zachy
93f6d269da Fix tests to work with new Angle type@ 2019-05-17 02:09:27 +01:00
Zachy
22008c5c5c New line at end of file 2019-05-15 14:18:49 +01:00
Zachy
3c594a1386 Remove debugging print statement and make send static 2019-05-15 13:59:23 +01:00
Zachy
0fc8c3bbfe Add tests for new Angle type. 2019-05-15 13:52:13 +01:00
Zachy
7361f761f5 Implement type 'Angle', packet 'EntityLookPacket' and fix Packet Types
Remarks: I chose to implement an angle between 0-360 degrees as opposed to -180 - 180. linear transformation, the maths was far simpler converting an UnsignedByte into positive values instead of a Byte into negative and positive
2019-05-15 13:51:31 +01:00
Zachy
d7b560a9f4 Implement FacePlayerPacket
Called when using the teleport chat command and you specify a facing parameter. `/teleport [<targets>] <x> <y> <z> facing`
2019-05-15 01:28:56 +01:00
joodicator
7b1567c352 Improve test coverage wrt protocol versions; other fixes/improvements
Improvements to the test suite:
* List release version names and numbers in minecraft/__init__.py.
* Make some tests, which previously ran for *all* protocol versions,
  run only for release protocol versions (to improve test performance).
* Make some tests, which previously ran only for the latest protocol
  version, run for all release protocol versions (to improve coverage).
* Print each protocol version being tested to the debug log, to help
  identify sources of errors.
* Use the `nose-timer' plugin to show the run time of each test.

Fix errors revealed by increased test coverage:
* Fix: SoundEffectPacket.Pitch is not serialised correctly for early
  protocol versions.
* Fix: handleExceptionTest finishes later than necessary because
  the test overrode an exception handler used internally by
  `_FakeServerTest', causing the server thread to time out after 4s.
* Add support for multiple exception handlers in `Connection'
  (required for the above).

Improvements to data descriptors:
* Make syntax of property declarations more consistent/Pythonic.
* Factor the definition of several aliasing properties into the
  utility methods `attribute_alias' and `multi_attribute_alias',
  which construct suitable data descriptors.
* Define and use the named tuple `Direction' for (pitch, yaw) values.
2019-05-14 18:41:58 +02:00
joodicator
6ef868bc5b Update README.rst 2019-05-13 22:36:36 +02:00
joodicator
b3cf00a856 Add support for Minecraft 1.14.1 Pre Release 1 to 1.14.1 (protocols 478 to 480) 2019-05-13 22:25:40 +02:00
joo
6d62d3956a
Merge pull request #116 from Amund211/packets
Implements the sound effect and use item packets
2019-05-13 22:05:40 +02:00
joodicator
d24b6eaded Update SoundEffectPacket and UseItemPacket to 1.14; misc improvements 2019-05-13 21:58:59 +02:00
joodicator
faf02acf62 Merge branch 'master' into packets 2019-05-13 21:28:02 +02:00
joodicator
e4f8b5583a Fix: networking.types.utility.__all__ is incorrect. 2019-05-13 21:24:41 +02:00
joo
4956d5e70d
Merge pull request #103 from SirGhostal/patch-2 2019-05-13 19:14:37 +02:00
joodicator
41ea36c642 Add test coverage for @listener. 2019-05-13 19:04:35 +02:00
joodicator
24ca96accb Merge branch 'master' into patch-2 2019-05-13 19:02:23 +02:00
joo
7ae6d599fb
Merge pull request #102 from SirGhostal/patch-1
Add RespawnPacket and ServerDifficultyPacket.
2019-05-13 18:39:20 +02:00
joodicator
bf719611ec Update RespawnPacket and ServerDifficultyPacket to 1.14. 2019-05-13 18:23:05 +02:00
joo
d627423949 Merge branch 'master' into patch-1 2019-05-13 18:02:01 +02:00
joodicator
f248006b86 Fix: doc build fails due to unused 'sphinx.ext.pngmath'. 2019-05-11 09:28:57 +02:00
joodicator
612fa8e324 Add support for Minecraft 18w43a to 1.14 (protocols 441 to 477)
This commit introduces two backward-incompatible changes which may break
existing code:

(1) `networking.packets.clientbound.play.SpawnObjectPacket.EntityType'
is no longer accessible as an attribute of the the `SpawnObjectPacket'
class: the values now depend on a `ConnectionContext`, and must be
accessed through an instance, or using `SpawnObjectPacket.field_enum'.
See the text of the `AttributeError` raised from the descriptor for
`SpawnObjectPacket.EntityType` for the full details.

(2) For some subclasses of `networking.types.Type', it is necessary to
call the methods `read_with_context' and `send_with_context' instead of
`read' and `send', supplying a `ConnectionContext' for those data types
- currently only `Position` - whose layout depends on it.
2019-05-11 08:43:51 +02:00