Minecraft-client networking library in Python
Go to file
laundmo 2947aa6619
Added listener decorator documentation (#161)
* added decorator example to connection.rst

since decorators are more pythonic, it was put in front of the register method.

* Expanded listener decorator docstring

* changed autofunction to autodecorator

* removed whitespace in empty line

* remvoed trailing whitespace

i didn't even edit there WTF
2020-08-17 17:49:25 +02:00
bin Update testing configuration: 2017-05-19 11:58:14 +01:00
docs Added listener decorator documentation (#161) 2020-08-17 17:49:25 +02:00
minecraft Added listener decorator documentation (#161) 2020-08-17 17:49:25 +02:00
tests Add support for v1.15 2019-12-23 21:53:10 -05:00
.gitignore Re-add pycharm/intellij files to .gitignore 2015-04-02 21:07:26 +05:00
.travis.yml Add pre-release versions between 1.14.4 and 1.15.1; update test config 2020-01-08 16:15:42 +01:00
LICENSE Licensed under Apache License, Version 2.0 2012-10-10 14:29:32 +05:00
MANIFEST.in Switched to using pylintrc file instead of command line options. 2015-04-06 15:47:22 +02:00
pylintrc Switched to using pylintrc file instead of command line options. 2015-04-06 15:47:22 +02:00
README.rst Add support for 1.15.2-pre1 to 1.15.2 (protocols 576 to 578) 2020-01-23 18:02:10 +01:00
requirements.txt Remove support for Python 3.3. Add Python 3.6 to autotests as default version. 2018-05-18 06:00:35 +01:00
setup.py Add minecraft.networking.types to setup.py to fix #97. 2018-06-25 15:20:05 +01:00
start.py start.py: allow IPv6 addresses to be given in square brackets. 2018-05-18 12:27:06 +01:00
tox.ini Add pre-release versions between 1.14.4 and 1.15.1; update test config 2020-01-08 16:15:42 +01:00

pyCraft
=======
.. image:: https://travis-ci.org/ammaraskar/pyCraft.svg?branch=master
    :target: https://travis-ci.org/ammaraskar/pyCraft
.. image:: https://readthedocs.org/projects/pycraft/badge/?version=latest
    :target: https://pycraft.readthedocs.org/en/latest
.. image:: https://coveralls.io/repos/ammaraskar/pyCraft/badge.svg?branch=master 
    :target: https://coveralls.io/r/ammaraskar/pyCraft?branch=master


Minecraft Python Client Library!

This projects aims to be a modern, Python3-compatible, well-documented library for
communication with a MineCraft server.

Detailed information for developers can be found here:
`<http://pycraft.readthedocs.org/en/latest/>`_.

``start.py`` is a basic example of a headless client using the library
Use ``start.py --help`` for the options.

Supported Minecraft versions
----------------------------
pyCraft is compatible with the following Minecraft releases:

* 1.8, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.8.7, 1.8.8, 1.8.9
* 1.9, 1.9.1, 1.9.2, 1.9.3, 1.9.4
* 1.10, 1.10.1, 1.10.2
* 1.11, 1.11.1, 1.11.2
* 1.12, 1.12.1, 1.12.2
* 1.13, 1.13.1, 1.13.2
* 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4
* 1.15, 1.15.1, 1.15.2

In addition, some development snapshots and pre-release versions are supported:
`<minecraft/__init__.py>`_ contains a full list of supported Minecraft versions
and corresponding protocol version numbers.

Supported functionality
-----------------------
Although pyCraft is compatible any supported server, only a subset of all
packets are currently decoded or encoded by the library: those necessary
to remain connected to the server, those used for chat, and some others.

Developers wishing to use other functionality with pyCraft can contribute by
implementing packet classes for the desired packets, adding them under
`<minecraft/networking/packets>`_, and sending a pull request.

Supported Python versions
-------------------------
pyCraft is compatible with (at least) the following Python implementations:

* Python 2.7
* Python 3.5
* Python 3.6
* Python 3.7
* Python 3.8
* PyPy

Requirements
------------
- `cryptography <https://github.com/pyca/cryptography#cryptography>`_
- `requests <http://docs.python-requests.org/en/latest/>`_
- `future <http://python-future.org/>`_

The requirements are also stored in ``requirements.txt``

See the installation instructions for the cryptography library here: `<https://cryptography.io/en/latest/installation/>`_
but essentially ``pip install -r requirements.txt`` should cover everything.

Contact
-------
This project currently has 2 main developers, *Ammar Askar* and *Jeppe Klitgaard*.

GitHub
^^^^^^
The preferred method of communication is via this GitHub page.

Mail
^^^^
We can be contacted by mail:

* Ammar Askar `ammar@ammaraskar.com <mailto:ammar@ammaraskar.com>`_
* Jeppe Klitgaard `jeppe@dapj.dk <mailto:jeppe@dapj.dk>`_

IRC
^^^
We can often be found on the ``minecraftdev`` IRC on
`irc.esper.net <https://www.esper.net/>`_

We go by the names of ``ammar2`` and ``dkkline``.