RedstoneRegions
🟡 Updated this yearPreview

🔍 Analysis
- 🏆 #30 of 135 folia mods in this game by downloads
📋 About This Mod
# RedstoneRegions Per-chunk redstone engine switching for Folia. Mark a chunk and its wire ticks 2-14× faster; everything else stays vanilla. If you've run a big server you know the tradeoff. You can set `redstone-implementation: alternate-current` in `paper-world.yml` and get a huge speedup globally. Then some player's piston BUD farm from 2019 quietly stops working and you spend a week figuring out why. Or you keep everything vanilla and watch a 64×64 dust floor eat your tick budget. It's an all-or-nothing switch, and neither "all" nor "nothing" is what you actually want. So this makes it per-chunk instead: ``` /redstone-region set alternate-current ← this chunk only /redstone-region fill 8 alternate-current ← 17×17 chunks around you /redstone-region selection eigencraft ← your WorldEdit selection /redstone-region undo ← oh wait, no ``` The choice persists (stored in chunk PDC), survives restarts, and hot-swaps live, no restart or chunk reload needed. ## The four engines | Mode | Speed | Notes | |---|---|---| | vanilla | 1× | the default. Everything behaves like normal Minecraft. | | alternate-current | 2-14× | Space Walker's algorithm. Two known edge cases, see below. | | eigencraft | 3-5× | almost no edge cases. Good for piston/observer machinery. | | disabled | frozen | wire never updates. For archived builds you want inert. | ## Numbers My benchmark is a 32×32 dust grid, toggled from one lever: | Run | Vanilla | AC | | |---|---|---|---| | Cold | 234 ms | 22 ms | 10.6× | | Warm JIT | 41 ms | 14 ms | 2.9× | | Pre-warmed | 71 ms | 5 ms | 14.2× | The honest takeaway: the "14×" happens when vanilla is at its worst, steady-state is more like 3×. Either is a lot when the vanilla number blows a 50 ms tick. At 64×64 chunks of dust, vanilla overshoots a tick by 6×; AC stays under 2. Cost when you're *not* using it: every wire update passes through a per-chunk dispatcher, which is a StampedLock optimistic read plus a switch, about 50 ns. If even that bothers you there's `timing.mode: sample` (~5 ns at sample-rate 10) or `off` (nothing at all). ## What's in the box The core is the per-chunk switching. Around that, mostly things I ended up needing while running it: - WorldEdit selection support, so you can flip a whole machine room from `//pos1 //pos2` - a BlueMap overlay that draws colored rectangles over non-vanilla chunks, which turned out to be the fastest way to spot "wait, why is *that* chunk on AC" - an optional auto-scanner that flips chunks to AC when their vanilla redstone time crosses a threshold - `` signs so trusted players can flip their own chunks without bugging staff (permission-gated, radius-capped) - `/redstone-region profile` for a live per-chunk readout against the 50 ms budget - `/redstone-region why x y z`, which explains a wire's power level by walking its six neighbors. Sounds silly, saves so much time debugging - `/redstone-region undo` for the last batch, whatever caused it (set, fill, selection, sign, auto-scanner) - an audit log (JSONL, rolled daily, actor + UUID + reason on every flip) and an optional Discord webhook, because on a real server people *will* ask who touched their chunk - PlaceholderAPI placeholders, click-to-teleport chunk coordinates in chat, hot config reload - English and French included; drop a `lang/<code>.yml` for anything else ## Install Jar in `plugins/`, restart, stand somewhere, `/redstone-region set alternate-current`. That's the whole thing. Requirements: Folia 1.21.11 build 6 or later (Luminol and other forks work), Java 21. BlueMap 5.16+, PlaceholderAPI 2.11.7+ and WorldEdit 7.3.19+ are all optional. For WorldEdit, prefer a Folia-patched build. ## Does it actually behave like vanilla? This was the part I was paranoid about, so there's an in-server test harness. Current results, 14/14: - byte-for-byte parity with vanilla across 8 contraptions over 60+ ticks each: dust line, 16×16 grid, 4-tick repeater clock, AND gate, comparator subtraction, torch ladder, torch inverter, dust zigzag - 596 toggles in a 30-second stress run, zero exceptions - 780 + 780 toggles running in two different Folia regions *at the same time*, zero races, zero thread-check failures (this is the case Paper's bundled AC can't currently pass under Folia) - 655 dispatches into the AC engine confirmed by counter, so the routing isn't silently falling back ## How it works, short version As of 1.21.2 Mojang exposes a `RedstoneWireBlock.evaluator` field. At boot we swap it for a dispatcher that checks the chunk's flag and routes the update to the right engine. The AC engine is a port of Space Walker's algorithm, modified to use per-thread WireHandlers. The bundled AC in Paper shares one handler across everything, which is a latent race once Folia runs regions in parallel. Longer version with diagrams: (https://github.com/uncaney/folia-redstone-region/blob/main/docs/ARCHITECTURE.md). ## The edge cases, honestly
# RedstoneRegions
Per-chunk redstone engine switching for Folia. Mark a chunk and its wire ticks 2-14× faster; everything else stays vanilla.
If you've run a big server you know the tradeoff. You can set `redstone-implementation: alternate-current` in `paper-world.yml` and get a huge speedup globally. Then some player's piston BUD farm from 2019 quietly stops working and you spend a week figuring out why. Or you keep everything vanilla and watch a 64×64 dust floor eat your tick budget. It's an all-or-nothing switch, and neither "all" nor "nothing" is what you actually want.
So this makes it per-chunk instead:
``` /redstone-region set alternate-current ← this chunk only /redstone-region fill 8 alternate-current ← 17×17 chunks around you /redstone-region selection eigencraft ← your WorldEdit selection /redstone-region undo ← oh wait, no ```
The choice persists (stored in chunk PDC), survives restarts, and hot-swaps live, no restart or chunk reload needed.
## The four engines
| Mode | Speed | Notes | |---|---|---| | vanilla | 1× | the default. Everything behaves like normal Minecraft. | | alternate-current | 2-14× | Space Walker's algorithm. Two known edge cases, see below. | | eigencraft | 3-5× | almost no edge cases. Good for piston/observer machinery. | | disabled | frozen | wire never updates. For archived builds you want inert. |
My benchmark is a 32×32 dust grid, toggled from one lever:
| Run | Vanilla | AC | | |---|---|---|---| | Cold | 234 ms | 22 ms | 10. 6× | | Warm JIT | 41 ms | 14 ms | 2. 9× | | Pre-warmed | 71 ms | 5 ms | 14. 2× |
The honest takeaway: the "14×" happens when vanilla is at its worst, steady-state is more like 3×. Either is a lot when the vanilla number blows a 50 ms tick. At 64×64 chunks of dust, vanilla overshoots a tick by 6×; AC stays under 2.
Cost when you're not using it: every wire update passes through a per-chunk dispatcher, which is a StampedLock optimistic read plus a switch, about 50 ns. If even that bothers you there's `timing.mode: sample` (~5 ns at sample-rate 10) or `off` (nothing at all).
## What's in the box
The core is the per-chunk switching. Around that, mostly things I ended up needing while running it:
- WorldEdit selection support, so you can flip a whole machine room from `//pos1 //pos2`
- a BlueMap overlay that draws colored rectangles over non-vanilla chunks, which turned out to be the fastest way to spot "wait, why is that chunk on AC"
- an optional auto-scanner that flips chunks to AC when their vanilla redstone time crosses a threshold
- `` signs so trusted players can flip their own chunks without bugging staff (permission-gated, radius-capped)
- `/redstone-region profile` for a live per-chunk readout against the 50 ms budget
- `/redstone-region why x y z`, which explains a wire's power level by walking its six neighbors. Sounds silly, saves so much time debugging
- `/redstone-region undo` for the last batch, whatever caused it (set, fill, selection, sign, auto-scanner)
- an audit log (JSONL, rolled daily, actor + UUID + reason on every flip) and an optional Discord webhook, because on a real server people will ask who touched their chunk
- PlaceholderAPI placeholders, click-to-teleport chunk coordinates in chat, hot config reload
- English and French included; drop a `lang/
.yml` for anything else
Jar in `plugins/`, restart, stand somewhere, `/redstone-region set alternate-current`. That's the whole thing.
Requirements: Folia 1. 21. 11 build 6 or later (Luminol and other forks work), Java 21. BlueMap 5. 16+, PlaceholderAPI 2. 11. 7+ and WorldEdit 7. 3. 19+ are all optional. For WorldEdit, prefer a Folia-patched build.
## Does it actually behave like vanilla?
This was the part I was paranoid about, so there's an in-server test harness. Current results, 14/14:
- byte-for-byte parity with vanilla across 8 contraptions over 60+ ticks each: dust line, 16×16 grid, 4-tick repeater clock, AND gate, comparator subtraction, torch ladder, torch inverter, dust zigzag
- 596 toggles in a 30-second stress run, zero exceptions
- 780 + 780 toggles running in two different Folia regions at the same time, zero races, zero thread-check failures (this is the case Paper's bundled AC can't currently pass under Folia)
- 655 dispatches into the AC engine confirmed by counter, so the routing isn't silently falling back
## How it works, short version
As of 1. 21. 2 Mojang exposes a `RedstoneWireBlock.evaluator` field. At boot we swap it for a dispatcher that checks the chunk's flag and routes the update to the right engine. The AC engine is a port of Space Walker's algorithm, modified to use per-thread WireHandlers. The bundled AC in Paper shares one handler across everything, which is a latent race once Folia runs regions in parallel.
Longer version with diagrams: (https://github.com/uncaney/folia-redstone-region/blob/main/docs/ARCHITECTURE.md).
## The edge cases, honestly
📊 Mod Details
- Game
- Minecraft Plugins
- Author
- modmass
- Version
- 0.2.3+26.2
- Downloads
- 140
- Endorsements
- 2
- Category
- folia
- Created
- 5/7/2026
- Updated
- 7/19/2026
- Game Versions
- 26.2
- Tags
- game-mechanics, optimization, utility
🔧 How to Install Minecraft Plugins Mods
Download from Modrinth. Use Prism Launcher or drop into your mods folder.
📖 Full step-by-step install guide for Minecraft Plugins →
Visit the official mod page for specific installation instructions for this mod.
🎮 Need cheat codes or console commands? Check ur gaming wiki for Minecraft Plugins commands, item IDs, and more.
❓ Frequently Asked Questions
Which Minecraft Plugins versions does RedstoneRegions support?
The author lists 26.2. Other versions may work but are untested by the author.
What is the latest version of RedstoneRegions?
Version 0.2.3+26.2, published 2026-07-19 with 140 downloads recorded at the source.
Keep browsing — more Minecraft Plugins mods await