Minecraft: Bedrock Edition development kit
Project description
mcaddon
Utility functions for creating Minecraft Bedrock Add-Ons.
Documentation: https://mcaddon.readthedocs.io/
Installation
Install the module with pip:
pip3 install mcaddon
Update existing installation: pip3 install mcaddon --upgrade
Requirements
Name | Description |
---|---|
mclang |
Read and write to .lang files. |
molang |
Molang to Python Translator & interpreter written in pure Python. |
commentjson |
Add Python and JavaScript style comments in your JSON files. |
jsonschema |
An implementation of JSON Schema validation for Python |
chevron |
Mustache templating language renderer |
Pillow |
Python Imaging Library (Fork) |
numpy |
Fundamental package for array computing in Python |
PyGLM |
OpenGL Mathematics library for Python |
Our Goal?
Our goal is to create a library that can create a mcaddon or mcpack from the ground up using Python.
Features
- Load packs from any format version.
- Supports mustache logic-less templates.
Examples
Block
from mcaddon import *
blk = Block('test:on_interact_change_state_block')
blk.add_component(OnInteractComponent(event='test_event'))
blk.add_event('test_event', SetBlockProperty({'custom:direction': "1"}))
blk.save('block.json')
Item
from mcaddon import *
blk = Item('minecraft:blaze_rod')
blk.add_component(FuelComponent(12.0))
blk.add_component(MaxStackSizeComponent(64))
blk.add_component(IconComponent('blaze_rod'))
blk.add_component(HandEquippedComponent(True))
blk.add_component(DisplayNameComponent('Blaze Rod'))
blk.save('item.json')
Command-line interface
usage: mcaddon [-h] [-V] [-W [<file>]]
options:
-h, --help show this help message and exit
-V, --version print the mcaddon version number and exit.
-W [<file>], --watch [<file>]
Watches this Python file for changes.
Road map
- Resource packs
- animation_controllers
- animations
- attachables
- biomes_client.json
- block models
- entity
- flipbook_textures.json
- font
- materials
- particles
- pieces
- render_controllers
- sounds
- sounds.json
- texture set
- ui
- blocks.json
- entity models
- item_textures.json
- terrain_textures.json
- texts
- textures
- Behavior packs
- entities
- spawn_rules
- structures
- blocks
- cameras
- feature_rules
- features
- items
- loot_tables
- recipes
- texts
- trading
- volume
- block_culling
- Skin packs
- Addons
- contents.json
- cli
- update mcaddon/mcpack
- Support to load all format versions. (At least all versions that are used in vanilla packs)
- Support to import packs. (for both singleplayer and on dedicated server)
- Make Model and Texture support common 3D rendering libraries; pygame, moderngl, etc
- Toolchain to load packs
- scripting - Convert Python to the Official Minecraft Scripting and API.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mcaddon-0.0.3.tar.gz
(127.3 kB
view details)
File details
Details for the file mcaddon-0.0.3.tar.gz
.
File metadata
- Download URL: mcaddon-0.0.3.tar.gz
- Upload date:
- Size: 127.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d81da542dd142d274b8fa00fdf007e72416d032a2143ea87f978b239afce5ef |
|
MD5 | 7abdd420ae4c3318d6e87d94c3deb178 |
|
BLAKE2b-256 | 28a17042ad57db8d43c886b55b6fe03dcd701bc7b738301f7c4a967547690916 |