An expressive Minecraft utility library revolving around data manipulation and generation.
The goal of this project is to provide a flexible suite of development tools for technical Minecraft players:
- No special syntax, keywords, or anything of the sort. This is just a Python library. You're free to do whatever you'd normally do in Python, importing only the modules you need to import.
- A complete, hierarchical set of commands and their subcommands, as well as frequently used selectors and positions to go along with them.
- A thorough collection of game object and data tags (NBT) representations, for things like blocks, items, and entities.
- Auto-completion, argument suggestion, and type validation for all representations - especially if you're using a capable IDE like PyCharm. No need to pull up the wiki just to make sure you've got the right NBT tag.
- Data file manipulation and generation, including deep reference searching and automatic dependency resolution.
- Map several Minecraft functions and parameters to Python methods that spit out a name and a series of commands dependent on the parameters. All involved functions will be searched for dependencies and generated automatically.
- This goes for any data file in general: loot tables to loot tables, advancements to advancements, advancements to loot tables, advancements to functions, and so on.
- Python 3.6+