Skip to content
This repository was archived by the owner on May 10, 2026. It is now read-only.

runtoolkit/macroEngine-dp

πŸ”§ Advanced Macro Engine

Minecraft Java Edition 1.20.3–26.1+ | Multiplayer-Safe | Pure Datapack


Warning

This repository is archived. macroEngine has been superseded by dataLib β€” a modular, multi-version datapack library under the runtoolkit organization. No further updates will be made here.


commits issues pull requests license


Current version: v5.1.0



πŸ›‘οΈ This is a Minecraft Datapack β€” it contains no executables or scripts outside of .mcfunction files. Some antivirus software may flag .mcfunction files as suspicious due to macro-like syntax. This is a false positive. The pack has been scanned on VirusTotal and returned clean. Only download from this official repository. Do not trust redistributed or repackaged versions from third-party sources.


πŸ“š Documentation

Full API reference, guides, and examples are available in the GitHub Wiki.

Page Description
Installation How to install and load the datapack
Storage Architecture macro:engine, macro:input, macro:output layout
Overlay System Multi-version overlay structure
Admin Guide macro.admin tag, permissions, debug tools
Changelog Full version history

πŸ“¦ Installation

1. Place macroEngine-v5.1.0 into <world>/datapacks/
2. /reload
3. /function ame_load:load/yes
4. /tag @s add macro.admin

πŸ—οΈ Storage Architecture

macro:engine  (persistent data)
β”œβ”€β”€ global
β”‚   β”œβ”€β”€ version: "v5.1.0"
β”‚   └── tick: <int>
β”œβ”€β”€ players
β”‚   └── Steve { coins:150, level:5, xp:2300, online:1b, ... }
β”œβ”€β”€ queue
β”‚   └── [{func:"mypack:event/end", delay:100}]
β”œβ”€β”€ cooldowns
β”‚   └── Steve { fireball: 2460, dash: 1870 }  ← expiry ticks
└── events
    └── on_join: [{func:"mypack:welcome"}, {func:"mypack:xp_bonus"}]

macro:input   (sending data to a function)
macro:output  (receiving results from a function)

πŸ” Predicate Reference

Used with execute if predicate <id>.

Predicate Description
macro:is_survival Player is in survival mode
macro:is_creative Player is in creative mode
macro:has_empty_mainhand Main hand is empty
macro:is_full_health Player is at full health (20 HP)
macro:is_sneaking Player is sneaking
macro:is_sprinting Player is sprinting
macro:is_burning Player is on fire
macro:is_on_ground Player is on the ground
macro:is_daytime Daytime (0–12000 ticks)
macro:is_raining It is raining
macro:is_thundering There is a thunderstorm
macro:in_overworld Player is in the Overworld
macro:in_nether Player is in the Nether
macro:in_end Player is in the End

Full reference: Predicate Reference


πŸ“¦ Dependencies

Lantern Load

Repository: https://github.com/LanternMC/load
License: BSD 0-Clause (public domain)

Provides deterministic load order, version tracking, and pre/load/post-load hooks.

# Check if macroEngine is loaded
execute if score macroEngine load.status matches 1.. run say macroEngine is loaded

# Get version (major*10000 + minor*100 + patch β†’ v5.1.0 = 50000)
scoreboard players get macroEngine load.status

StringLib

Repository: https://github.com/CMDred/StringLib
License: MIT

Bundled under the stringlib namespace. Exposed via macro:core/lib/string/*.

Function Description
lib/string/concat Join a string array
lib/string/find Find substring index
lib/string/replace Replace substring
lib/string/split Split by separator
lib/string/insert Insert at index
lib/string/to_lowercase Lowercase (A–Z, fast)
lib/string/to_uppercase Uppercase (a–z, fast)
lib/string/to_number String β†’ numeric NBT
lib/string/to_string Value β†’ string

All functions read from macro:input and write to macro:output string.result.

data modify storage macro:input string set value "Hello World"
data modify storage macro:input find set value "World"
data modify storage macro:input replace set value "Everyone"
function macro:core/lib/string/replace
# macro:output string.result β†’ "Hello Everyone"

πŸ“‘ API Modules

Module Wiki
πŸ• Cooldown API-Cooldown
πŸ“‘ Event API-Event
🏳️ Flag & State API-Flag-State
πŸͺ Hook API-Hook
πŸ–±οΈ Interaction API-Interaction
πŸŽ’ Inventory API-Inventory
πŸ“š Library API-Library
πŸ”’ Math API-Math
πŸ” Permission API-Permission
πŸ‘€ Player API-Player
πŸ”€ String API-String
πŸͺ„ Wand API-Wand
🌍 World & Geo API-World-Geo

πŸ’¬ Support

Issues Discussions


Advanced Macro Engine v5.1.0 | MC Java 1.20.3–26.1+ | Pure Datapack

About

Advanced Macro Engine [Minecraft 1.20.3-26.1+]

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors