Skip to main content

Flare datapack compiler framework

Project description

Flare Logo

Flare 🔥

Programmatic Minecraft Datapacks in Python

Write Minecraft logic using full Python power: scores, NBT, execute chains, recursion, and more. Compile to optimized datapacks instantly.


Read the full documentation at: flare.oguzhanumutlu.com


What is Flare?

Flare is a modern framework for building Minecraft datapacks natively in Python. It bridges the gap between Python's high-level elegance and Minecraft's native mcfunction performance. You can use standard Python syntax, variables, and math, and Flare automatically translates and compiles your logic into highly-optimized, scoreboard-driven datapacks.

Installation

pip install flaremc

Quick Start: Advanced Math & NBT

With Flare, writing advanced datapack logic is incredibly clean. Below is a quick example of defining variables, doing advanced floating-point math natively in Minecraft, running terminal commands, and interacting with NBT.

from flare import namespace, score, math, nbt, expand

# Define your datapack namespace
namespace("my_pack")

# Declare a scoreboard variable and initialize it to 10
x = score(10)

# Compute math dynamically using native scoreboard approximations (Taylor series, CORDIC, etc.)
# All complex math compiles to highly optimized raw scoreboard operations!
result = math.sin(x) * math.sqrt(x)

# Print the dynamic float result back to the game seamlessly
print(f"The result is: {result}")

# Interact seamlessly with Minecraft's NBT environment
player_data = @a.Data[dict]

# Flare smartly manages conditional blocks and inlines commands when appropriate
if expand(x > 5):
    say "X is greater than 5!"
    kill @e[type=zombie, distance=..10]

Compile & Run

To compile your datapack to a .mcfunction structure, simply run:

flare main.py

To compile and immediately run it using the built-in emulator:

flare main.py --run

Documentation

Ready to unleash the full power of Python in Minecraft?

Check out the interactive playground and full documentation at flare.oguzhanumutlu.com!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flaremc-0.5.0.tar.gz (71.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flaremc-0.5.0-py3-none-any.whl (79.9 kB view details)

Uploaded Python 3

File details

Details for the file flaremc-0.5.0.tar.gz.

File metadata

  • Download URL: flaremc-0.5.0.tar.gz
  • Upload date:
  • Size: 71.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for flaremc-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1d3d822e3932f520751665a9538deccb44ae1f2aabf1faaaf8c16f78684eb291
MD5 1d6adb5c4c422313f529be42cd6e7801
BLAKE2b-256 e6bde6a900db2a2c47c0700e31dacb6caf76311d50e5756fd9f20a5fe5148593

See more details on using hashes here.

File details

Details for the file flaremc-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: flaremc-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 79.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for flaremc-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 61ad605617ddca06b5344f07df61a74ac59c2e6b8005d488426ef32c3e586906
MD5 b851b135da5c862e3183e3d462da4865
BLAKE2b-256 48cdfb0517ce0c753a6c74e4e184b522acb22f004db365506b68d9f2e982647b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page