Code CI Docs CI Test Coverage Code Quality Latest PyPI version Apache License

Minecraft Interactive World Builder

Warning

This is a work in progress. There are now enough tutorials to learn the fundamentals of Python and enough functionality to have some fun interacting with Minecraft from Python code.

I will continue to expand the tutorials and add more features to the library.

This project is intended as a fun way to learn the Python Programming Language. However, experienced Python programmers can also use this library to create Minecraft worlds with interactive Python features (TODO: API documentation is pending).

Minecraft Interactive World Builder has the following features:

  • Use Python to create anything inside of Minecraft worlds.

  • Call Python code when events occur inside the world.

  • Use an iPython prompt to interact with the world by typing Python commands

  • Have your player inside the world execute Python code by placing command signs or activating switches/levers with Python actions.

All instructions on how to set up a Minecraft Server and the Python developer environment are included. There are step by step tutorials to introduce Python Programming and the features of Minecraft Interactive World Builder.

See Introduction to begin.

PyPI

pip install mciwb

Source code

https://github.com/gilesknap/mciwb

Documentation

https://gilesknap.github.io/mciwb

Releases

https://github.com/gilesknap/mciwb/releases

Credits

This project would not be possible without mcipc, which provides the client library for Minecraft RCON.

How the documentation is structured

Documentation is split into four categories, also accessible from links in the side-bar.

Tutorials

Tutorials for installation, library and commandline usage. New users start here.

How-to Guides

Practical step-by-step guides for the more experienced user.

Explanations

Explanation of how the library works and why it works that way.

Reference

Detailed information including autogenerated code documentation.

About the documentation

Why is the documentation structured this way?