docs: wording, consistency

This commit is contained in:
əlemi 2023-11-20 19:25:50 +01:00
parent 338f6c91cc
commit 13475e65e8
Signed by: alemi
GPG key ID: A4895B84D311642C

View file

@ -1,16 +1,16 @@
# aiocraft
**an asyncio-driven headless client library for block game with packet definitions**
aiocraft is a collection of types, definitions and utils to build minecraft clients without involving the official client and Java
aiocraft is a collection of types, definitions and utils to build minecraft clients without the official Java implementation
it is built on top of [PrismarineJS/minecraft-data](https://github.com/PrismarineJS/minecraft-data), which contains definitions for all types across all versions.
it is built on top of [PrismarineJS/minecraft-data](https://github.com/PrismarineJS/minecraft-data), which contains definitions for all types across all versions
aiocraft provides a raw implementation of a client but it isn't ready to be used, if you're looking for a convenient client library take a look at **[Treepuncher](https://git.alemi.dev/treepuncher/about)**
## Packets
The whole Minecraft protocol from `0.30c` to `1.19.3` is compiled and available.
Feature flags to only include certain protocol versions are planned.
All types and packets are instantiable and serializable on all supported protocols:
the whole Minecraft protocol from `0.30c` to `1.19.3` is compiled and available
feature flags to only include certain protocol versions are planned
all types and packets are instantiable and serializable on all supported protocols:
```
from aiocraft.proto import PacketArmAnimation
a_packet = PacketArmAnimation(hand=0)
@ -18,8 +18,8 @@ await client.dispatcher.write(a_packet)
```
## Client
An abstract client is provided, but it's supposed to be extended (like in **[Treepuncher](https://git.alemi.dev/treepuncher/about)**)
Such client includes all game phases implemented and both a `.join()` or a `.info()` method to handle the flow.
an abstract client implementation is provided, but it's supposed to be extended (like in **[Treepuncher](https://git.alemi.dev/treepuncher/about)**)
the abstract client implements flows for all game phases and both a `.join()` or a `.info()` method to easily start the login flow
## Types
aiocraft defines these minecraft types:
@ -41,5 +41,5 @@ more types are planned but still not generated:
* `Item` (with constants)
## World
A chunk parser is provided with native code (Rust + PyO3). It is pretty fast but the abstract client doesn't make use of it.
a chunk parser is provided with native code (Rust + PyO3). It is pretty fast but the abstract client doesn't make use of it