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.2.tar.gz (72.0 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.2-py3-none-any.whl (80.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flaremc-0.5.2.tar.gz
  • Upload date:
  • Size: 72.0 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.2.tar.gz
Algorithm Hash digest
SHA256 a6df0d9e4c23de796a8991b8321c0f2b90b298a53d73b5cd97f0c7365ec21e52
MD5 d7f964c48b5532436e63a3302a50e6f9
BLAKE2b-256 f4ece6a3f95423dc19f324de2cc8136d3bea582b659482bd67e1544b235220d0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: flaremc-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 80.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1e515fc1844c372c7167bcdccb73f74bed95cf124a428627b64a6646843a70e1
MD5 3fafc929253aa460cbd43205dff0c1a9
BLAKE2b-256 b042ba317de5c14dd52c19752d00f57586f78901c308683f9f5b1f5e812bd381

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