Advanced Macro Engine
๐ก Updated this yearโ ๏ธ Install Order ยท 2 steps
Install in this order, then this mod last โ most mods fail to load without their framework and dependencies in place.
๐ผ๏ธ Gallery (1 images)
๐ Analysis
- ๐ 0.0% endorsement rate
- ๐ #180 of 185 datapack mods in this game by downloads
๐ About This Mod
# ๐ง macroEngine **Minecraft Java Edition 26.2 | Multiplayer-Safe | Pure Datapack** (https://github.com/runtoolkit/macroEngine/actions/workflows/ci.yml/badge.svg)](https://github.com/runtoolkit/macroEngine/actions/workflows/ci.yml) (https://img.shields.io/badge/License-MIT-green?style=for-the-badge)](LICENSE) --- > Current version: **v6.1.0** --- > **This datapack was considered safe to use as of its last release, but it no longer receives security improvements, bug fixes, or new features. There is no "up to date" version to move to.** > > **Do not copy `macroengine:input` or `macroengine:engine` into your own datapack.** It is an internal implementation detail and may change without notice between releases. > โ ๏ธ **Do not use v5.1.1.** That version bound `_rt_origin.mcfunction` to the load tag, causing it to run automatically on every load with no safe removal path. Fixed in later versions โ always use the latest release. --- > โ ๏ธ A `/reload` is still required after installation or after adding the load hook below. Automatic first-join initialization is not implemented in this version โ do not rely on this until verified in-game with repeated reloads. --- > ๐ก๏ธ **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 (https://www.virustotal.com) and returned clean. > **Only download from this official repository.** Do not trust redistributed or repackaged versions from third-party sources. --- ## ๐ฆ Installation 1. Download the latest release from the (https://modrinth.com/datapack/macroengine/versions) and place the `.zip` into `<world>/datapacks/`. 2. Add the following logic to your datapack's `load` tag. Replace `<namespace>` with your own datapack's namespace (e.g. `mypack`) โ this applies only to the function names, never to `macroengine:engine`, which is MacroEngine's own fixed storage and must not be changed: ```mcfunction #> <namespace>:load execute unless data storage macroengine:engine {global:{loaded:1b}} run function <namespace>:load_macroengine ``` ```mcfunction #> <namespace>:load_macroengine # Guard checks the SAME storage/path the trigger condition checks (macroengine:engine global.loaded). execute if data storage macroengine:engine {global:{loaded:1b}} run return 0 function macroengine:setup data modify storage macroengine:engine global.loaded set value 1b ``` > **v6.1.0 change:** macroEngine no longer auto-starts via `minecraft:load`. The > old `function macroengine_load:main` entry point (and the LanternMC `load:` > tag chain it depended on) is gone. Consuming packs must call > `function macroengine:setup` explicitly โ either from their own manual > `<namespace>:load_macroengine` guard (as above) or once by an admin. <details> <summary>Fixed bug: duplicate load trigger (click to expand)</summary> An earlier version checked `macroengine:engine {global:{loaded:1b}}` in the trigger but set `<namespace>:engine loaded_macroengine` in the guard โ two different storages, two different paths. The set never satisfied the trigger's condition, so `load_macroengine` re-ran every time the load tag fired. This doesn't crash anything, but it silently re-triggers `dl_load:load/yes` and `fork_no` on every reload, which can accumulate side effects depending on what those functions do. Both the check and the set must target `macroengine:engine global.loaded`. If you're updating from an older copy of this README, verify by reloading multiple times and confirming `load_macroengine` does NOT re-run after the first load. </details> --- ## ๐๏ธ Storage Architecture ``` macroengine:engine (persistent data) โโโ global โ โโโ version: "v6.1.0" โ โโโ loaded: 1b โ โโโ tick: <int> โโโ players โ โโโ Steve { coins:150, level:5, xp:2300, online:1b, ... } โโโ queue โ โโโ โโโ cooldowns โ โโโ Steve { fireball: 2460, dash: 1870 } โ expiry ticks โโโ events โโโ on_join: macroengine:input (sending data to a function) macroengine:output (receiving results from a function) ``` **Note:** All MacroEngine-owned state lives under the `macroengine:` namespace only. Never mix a consuming pack's own namespace into MacroEngine's load-flag logic โ that mismatch was the source of the bug above. --- ## ๐ฆ Dependencies ### Lantern Load โ **removed in v6.1.0** **Repository:** https://github.com/LanternMC/load **License:** BSD 0-Clause (public domain) Previously provided deterministic load order, version tracking, and pre/load/post-load hooks via the `load:` namespace tag chain. As of v6.1.0 this dependency is gone entirely โ macroEngine starts via a manual `function macroengine:setup` call instead (see the Load Guard section above). `data/load/` no
# ๐ง macroEngine
Minecraft Java Edition 26. 2 | Multiplayer-Safe | Pure Datapack
[!(https://github.com/runtoolkit/macroEngine/actions/workflows/ci.yml/badge.svg)](https://github.com/runtoolkit/macroEngine/actions/workflows/ci.yml) [!(https://img.shields.io/badge/License-MIT-green?style=for-the-badge)](LICENSE)
- --
- > Current version: v6. 1. 0
- --
> This datapack was considered safe to use as of its last release, but it no longer receives security improvements, bug fixes, or new features. There is no "up to date" version to move to. > > Do not copy `macroengine:input` or `macroengine:engine` into your own datapack. It is an internal implementation detail and may change without notice between releases.
> โ ๏ธ Do not use v5. 1. 1. That version bound `_rt_origin.mcfunction` to the load tag, causing it to run automatically on every load with no safe removal path. Fixed in later versions โ always use the latest release.
> โ ๏ธ A `/reload` is still required after installation or after adding the load hook below. Automatic first-join initialization is not implemented in this version โ do not rely on this until verified in-game with repeated reloads.
> ๐ก๏ธ 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 (https://www.virustotal.com) and returned clean. > Only download from this official repository. Do not trust redistributed or repackaged versions from third-party sources.
## ๐ฆ Installation
1. Download the latest release from the (https://modrinth.com/datapack/macroengine/versions) and place the `.zip` into `
2. Add the following logic to your datapack's `load` tag. Replace `
```mcfunction
#>
```mcfunction
#>
# Guard checks the SAME storage/path the trigger condition checks (macroengine:engine global.loaded). execute if data storage macroengine:engine {global:{loaded:1b}} run return 0
function macroengine:setup
data modify storage macroengine:engine global.loaded set value 1b ```
> v6. 1. 0 change: macroEngine no longer auto-starts via `minecraft:load`. The
> old `function macroengine_load:main` entry point (and the LanternMC `load:`
> tag chain it depended on) is gone. Consuming packs must call
> `function macroengine:setup` explicitly โ either from their own manual
> `
Fixed bug: duplicate load trigger (click to expand)
An earlier version checked `macroengine:engine {global:{loaded:1b}}` in the trigger but set `
Both the check and the set must target `macroengine:engine global.loaded`. If you're updating from an older copy of this README, verify by reloading multiple times and confirming `load_macroengine` does NOT re-run after the first load.
## ๐๏ธ Storage Architecture
```
macroengine:engine (persistent data)
โโโ global
โ โโโ version: "v6. 1. 0"
โ โโโ loaded: 1b
โ โโโ tick:
macroengine:input (sending data to a function) macroengine:output (receiving results from a function) ```
## ๐ฆ Dependencies
### Lantern Load โ removed in v6. 1. 0 Repository: https://github.com/LanternMC/load License: BSD 0-Clause (public domain)
Previously provided deterministic load order, version tracking, and pre/load/post-load hooks via the `load:` namespace tag chain. As of v6. 1. 0 this dependency is gone entirely โ macroEngine starts via a manual `function macroengine:setup` call instead (see the Load Guard section above). `data/load/` no
๐ Mod Details
- Game
- Minecraft Mods
- Author
- tickwarden
- Version
- v5.1.0-updated6+mod
- Downloads
- 949
- Endorsements
- 0
- Category
- datapack
- Created
- 5/1/2026
- Updated
- 5/9/2026
- Game Versions
- 1.20.3, 1.20.4, 23w51a, 23w51b, 24w03a
- Tags
- library, management, technology
๐ง How to Install Minecraft Mods Mods
Download from Modrinth. Use Prism Launcher or drop into your mods folder.
๐ Full step-by-step install guide for Minecraft Mods โ
Visit the official mod page for specific installation instructions for this mod.
๐ฎ Need cheat codes or console commands? Check ur gaming wiki for Minecraft Mods commands, item IDs, and more.
โ Frequently Asked Questions
Which Minecraft Mods versions does Advanced Macro Engine support?
The author lists 1.20.3, 1.20.4, 23w51a, 23w51b, 24w03a, 24w03b. Other versions may work but are untested by the author.
What is the latest version of Advanced Macro Engine?
Version v5.1.0-updated6+mod, published 2026-05-09 with 949 downloads recorded at the source.
Keep browsing โ more Minecraft Mods mods await
