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
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
Amund Eggen Svandal
1a1b9803f8
Edit definition of SoundEffectPacket
2019-01-13 23:05:51 +00:00
Amund Eggen Svandal
56d1300db1
Updated id of UseItemPacket
2019-01-13 22:06:39 +00:00
L1LxHa
9b43d6f004
Fix hanging indefinitely while making auth-related requests ( #117 )
2019-01-04 20:22:42 -05:00
Amund Eggen Svandal
bea661860d
Add Use Item packet
2019-01-02 01:38:53 +01:00
Amund Eggen Svandal
e21c0d877f
Implement the Sound Effect packet
...
Information gathered from https://wiki.vg/Protocol_version_numbers .
Due to some difficulties the change from "sound_id" to "sound_name" and
the re-implementation of "sound_category" in the packet may be off by
some protocol versions.
2019-01-02 01:38:14 +01:00
Amund Eggen Svandal
c67652d7e8
Add option to invalidate previous access_token
s to authenticate
...
This changes the default behaviour to include `self.client_token`
when using `authenticate`. If `self.client_token` is `None`, a new
token is generated using uuid4 (like the vanilla client does).
2019-01-02 01:16:02 +01:00
Tristan Gosselin-Hane
316ea4d63d
Implemented Player List Header And Footer Packet
2018-11-12 21:22:55 +01:00
joo
527f3d3146
Add support for Minecraft 1.13.2-pre1, 1.13.2-pre2 and 1.13.2 (protocols 402 to 404).
2018-10-26 19:58:20 +01:00
joo
48e1003f42
Fix issue #109 and add regression test.
2018-10-12 17:07:04 +01:00
joo
0eec179f48
Add support for Minecraft 1.13.1 and 1.13.1-pre2 (protocols 400 to 401).
2018-08-23 07:42:28 +01:00
joo
720868fab7
Add support for Minecraft 18w80a to 1.13.1-pre1 (protocols 394 to 399).
2018-08-19 18:11:12 +01:00
Zachy24
103b53a97a
Change case on GameMode
2018-08-15 22:29:18 +01:00
Zachy
409c619eb0
return method
2018-08-15 20:53:13 +01:00
Zachy
6d6a592f07
Add decorator for register_packet_listener()
2018-08-13 01:57:16 +01:00
Zachy24
da103c6d3c
Oops
2018-08-13 01:35:34 +01:00
Zachy24
4ba6a40df6
Add aliases for Enums in Packet Definitions
2018-08-13 00:41:21 +01:00
Zachy
aeaf7b5bcb
Import new enums into Packet Definition
2018-08-12 23:12:45 +01:00
Zachy
ed85cb793a
Implement Enums for Difficulty/Dimension/Gamemode
2018-08-12 23:07:07 +01:00
Zachy
0198476fa9
Fix packet id for protocol versions 47 and 69.
2018-08-12 22:56:16 +01:00
Zachy
e840fab267
Update __init__.py
2018-08-12 11:04:40 +01:00
Zachy
1a114c1b95
Implement clientbound.play.ServerDifficultyPacket
2018-08-12 10:47:50 +01:00
Zachy
d20344cac1
Implement clientbound.play.RespawnPacket
2018-08-12 10:39:11 +01:00
joo
f6f6511788
Remove dead code from connection.py.
2018-07-19 12:21:49 +01:00
joo
adc8d15ddc
Add support for Minecraft 1.13 and 1.13-pre3 to pre10 (protocols 385 to 393).
...
Add clientbound.login.PluginRequestPacket and serverbound.login.PluginResponsePacket.
2018-07-19 09:50:13 +01:00
joo
bea2222c58
Fix: MutableRecord.__ne__ misspelt as '__neq__'.
...
Add tests for MutableRecord and Position.
2018-06-21 07:06:45 +01:00
joo
4b6feda1cb
Various improvements to utility types:
...
- Add operations for Vector.
- Move some tests into test_utility_types.py.
- Add tests for PositionAndLook and Vector.
2018-06-21 06:39:55 +01:00
joo
61598eba75
Divide minecraft.networking.types into multiple modules.
2018-06-20 09:54:17 +01:00
joo
201e075591
Add support for Minecraft pre-release 1.13-pre2 (protocol 384).
2018-06-20 09:50:20 +01:00
Zachy
d3a8cc8dfb
Implement New Type. FixedPointInteger. ( #93 )
...
Fix: SpawnPlayerPacket coordinates read wrongly before protocol 100. Add types.FixedPointInteger.
2018-06-20 05:32:35 +01:00
joo
0a1776f97a
Add support for Minecraft versions 18w22a to 1.13-pre1 (protocols 380 to 383).
2018-06-05 01:14:19 +01:00
joo
d36b652b69
Fix: reconnecting from an exception handler does not work.
2018-05-29 01:14:23 +01:00
joo
c01f194d06
Raise exception on login disconnect instead of silently stopping.
2018-05-28 17:42:08 +01:00
joo
db714f9490
Fix: MapPacket.write_fields() is incorrect.
2018-05-27 17:12:50 +01:00
joo
8578326c2f
Add serialisation and tests for SpawnObjectPacket.
2018-05-27 15:36:13 +01:00
joo
709b80b539
Add serialisation and tests for Explosion, {Multi,}BlockChange, and CombatEvent packets.
2018-05-27 13:28:01 +01:00
joo
92f2eff681
Add several tests for the Connection class.
2018-05-27 07:40:13 +01:00
joo
ab9ca6dfee
Add full connection tests with encryption enabled.
2018-05-27 03:30:43 +01:00
joo
f22447b97a
Add support for Minecraft snapshot 18w21b (protocol 379).
2018-05-25 19:35:32 +01:00
joo
bbf7200220
Add support for Minecraft snapshot 18w21a (protocol 378).
2018-05-24 12:59:06 +01:00
joo
52c0671f4f
Add support for Minecraft snapshots 18w03a-18w20c (protocol 354-377).
2018-05-20 06:58:23 +01:00
joo
67344f2ceb
Add IPv6 support to Connnection.
2018-05-18 12:26:47 +01:00
joo
19a82f51ef
Add serverbound.play.PlayerBlockPlacementPacket.
2018-05-18 06:01:31 +01:00
gurland
c584f29154
Position type fix. Add new PlayerBlockPlacementPacket
2018-05-18 08:50:59 +01:00
joo
c90afe4424
Fix: networking.types.Position.send() doesn't accept a Position.
2018-05-17 06:08:54 +01:00
joo
38fa39a236
Extract Hand enum classes to minecraft.networking.types.
2018-03-02 02:07:25 +00:00
TheSnoozer
5c0c95068f
fix AttributeError: 'Packet' object has no attribute 'name' (should be 'packet_name' - see https://github.com/ammaraskar/pyCraft/blob/master/minecraft/networking/packets/packet.py#L9 )
2018-01-20 19:45:41 -05:00
joo
ece90fcd9d
Fix: MultiBlockChangePacket reads y_coordinate wrongly.
2018-01-13 17:04:39 +00:00
joo
f492adfeff
Add support for Minecraft snapshots 17w43a-18w02a (protocol 341-353).
...
Add support declaration for Minecraft version 1.8.9 (protocol 47).
2018-01-13 01:12:28 +00:00
joo
da7c13076f
Fix: client.handshake.get_packets returns a dict instead of a set.
2018-01-13 01:02:00 +00:00
joo
1766b30983
Remove duplicates from SUPPORTED_PROTOCOL_VERSIONS.
2018-01-07 23:56:31 +00:00
TheSnoozer
821dad72ca
Merge remote-tracking branch 'upstream/testing'
2018-01-03 23:53:58 -05:00
TheSnoozer
860628f64b
the main hand attribute for ClientSettingsPacket was added in 15w31a [Protocol Version is now 49] and causes the client to send more data than the server expects which result in a instant disconnect while connecting to a 1.8.8 server
2017-11-19 23:22:00 -05:00
joo
af559e181a
Remove limits on number of packets read/written per tick.
...
This addresses possible memory leaks or crashes caused by overflowing packet backlogs.
2017-10-10 04:47:50 +01:00
joo
88a5fdc637
Merge branch 'master' into testing
2017-09-24 06:36:52 +01:00
TheSnoozer
61d9695226
support 1.12.2
2017-09-19 18:30:51 -04:00
joo
e9f095de42
Add ClientSettingsPacket and PluginMessagePacket.
...
Improve Packet string representation.
2017-08-24 05:49:32 +01:00
joo
b79e7b5f28
Add tests for early and outgoing packet listeners.
2017-08-22 17:50:16 +01:00
joo
9497aae8fa
Make FakeServer class more reusable, and extract it into its own module.
2017-08-22 14:22:12 +01:00
joo
593c98f168
Add support for early and outgoing packet listeners.
2017-08-21 21:06:28 +01:00
joo
9765e936c9
Fix incorrect packet IDs for PlayerPositionAndLookPacket for old protocol versions.
2017-08-20 07:35:14 +01:00
joo
46e058dd08
Update all tests, docs and code to use new packet names.
2017-08-09 20:53:54 +01:00
joo
f1ae765458
Add docstring about legacy packet names to packets module.
2017-08-09 19:32:07 +01:00
TheSnoozer
61b07f52f2
better packet names to match new packet structure
2017-08-09 16:33:41 +01:00
TheSnoozer
64cf23436b
the class 'Type' needs to have '__slots__ = ()', otherwise every instance of 'Position' will have an unnecessary empty '__dict__' allocated
2017-08-09 16:33:41 +01:00
TheSnoozer
2f0dbf5cbb
fix flake error as suggested
2017-08-09 16:33:41 +01:00
TheSnoozer
7eef61bfde
use 'zlib.decompressobj' to handle the 'faulty' compression correctly as suggested in https://github.com/ammaraskar/pyCraft/pull/68
2017-08-09 16:33:41 +01:00
TheSnoozer
ab71aeeb7d
Revert "deal with faulty compression's"
...
This reverts commit 357340e6dc
.
2017-08-09 16:33:41 +01:00
TheSnoozer
346b3081ec
fix broken tests
2017-08-09 16:33:41 +01:00
TheSnoozer
4a508f935b
use namedtuple for position type and use it as subclass for ClientExplosion.Record
2017-08-09 16:33:41 +01:00
TheSnoozer
8552c6efe5
regorganize packet structure as outlined in https://github.com/ammaraskar/pyCraft/pull/68
2017-08-09 16:33:41 +01:00
TheSnoozer
f8781c19c8
The packet IDs of Entity Velocity (0x3E), Update Health (0x41), Combat Event (0x2D), and Client Status (0x03) changed in [protocol 336 (snapshot 17w31a)]( http://wiki.vg/index.php?title=Pre-release_protocol&oldid=13265 )
2017-08-09 16:33:41 +01:00
TheSnoozer
6137436d03
feedback: add write method
2017-08-09 16:33:41 +01:00
TheSnoozer
5349ff2730
feedback: we can use enum since subclass packets do no vary depending on the type id
2017-08-09 16:33:41 +01:00
TheSnoozer
d8fc742862
feedback: pass x, y, z as arguments since types classes are supposed to abstract away the python types and sending them over the network and calling an encode method before sending breaks that a little.
2017-08-09 16:33:41 +01:00
TheSnoozer
9ab2e1ae69
fix tox -e pylint-errors
2017-08-09 16:33:41 +01:00
TheSnoozer
fdb5a0bb72
fix tox -e flake
2017-08-09 16:33:41 +01:00
TheSnoozer
cc466bb0ea
fixed an issue with mc 1.8.8 where velocity is not being sent and self.data is negative
2017-08-09 16:33:41 +01:00
TheSnoozer
6fbf75203c
add Multi Block Change (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
93227e26fa
add Block Change Packet (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
ca30ff2e74
add spawn object (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
3ad5d1abd5
add Explosion Packet (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
81f2ae4070
add Combat Event Packet (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
fecb1d10e9
add Client Status Packet and allow client to respawn when issuing '/respawn'
2017-08-09 16:33:41 +01:00
TheSnoozer
0dc333237b
add Update Health Packet (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
6f52ceac0d
add Entity Velocity Packet (client bound)
2017-08-09 16:33:41 +01:00
TheSnoozer
9caff502ca
add ClientSpawnPlayer packet
2017-08-09 16:33:41 +01:00
TheSnoozer
42ede3f83d
deal with faulty compression's
2017-08-09 16:33:41 +01:00
joo
9e7e75f9a7
Increment package version to 0.5.0.
2017-08-03 19:08:36 +01:00
joo
33cd42848e
Add version data for Minecraft 1.12.1 (protocol 338).
2017-08-03 18:48:36 +01:00
joo
5aa2d3df59
Add support for Minecraft 17w31a and 1.12.1-pre1 (protocols 336 and 337).
2017-08-03 18:31:00 +01:00
joo
cab8d56746
Revert "Remove unnecessary fileno method from FileObjectWrapper"
...
This partially addresses issue #65 .
This reverts commit c87d7bc6f3
.
2017-07-18 13:39:56 +01:00
Ammar Askar
f450ef5ff4
Add test for reactors
2017-07-16 20:02:50 -07:00
Ammar Askar
d686b6487f
Add testing for MapPacket
2017-07-16 15:18:09 -07:00
Ammar Askar
5b261b840e
Refactor out the action of writing out the packet header.
...
This allows subclasses of Packet to just call the new
method instead of having to duplicate the header writing
and compression code.
2017-07-16 13:40:00 -07:00
Ammar Askar
da967a4e56
Minor coverage improvement for packets
2017-07-16 01:20:08 -07:00
Ammar Askar
c87d7bc6f3
Remove unnecessary fileno method from FileObjectWrapper
2017-07-16 01:03:47 -07:00
Ammar Askar
d8226d266f
Improve tests of types.py
2017-07-16 01:00:14 -07:00