CauseChain
You died. Type /why. Get the chain.
Vanilla says you were blown up by TNT. /why names who lit it, the chain, and the crater.
Keep CoreProtect installed. /co i is still who last touched the block. CauseChain answers a different question: how did this become that.
Why install this?
You already run CoreProtect. /co i tells you who last touched a block. Players still respawn into "Steve was blown up by TNT" and staff still guess which TNT, which player, which WorldGuard region.
CauseChain sits next to CoreProtect. After a death, a deny, or a captured chain, /why prints the chain in chat. Keep /co i for rollback. Keep CauseChain for the story.
- Death — respawn, type /why, get igniter + TNT + you
- TNT chain — ignite → chain trigger → explosion, with evidence ids
- Named deny — /why deny after WorldGuard or GriefPrevention blocks a place
- Inspect — click a block you can build on; empty inspect points at /co i
- Bow / dispenser — projectile owner when the platform recorded one; a dispenser stays a dispenser
- WorldEdit //set — one semantic node, not a thousand block clicks
- Paper / Purpur / Folia — 1.21.x and 26.1.2
What /why actually answers
Death
- How did you die? — last death for the player who typed it
- Unknown parent — if the platform never named a cause, chat says unknown. No fake player.
TNT
- Ignite — player lighting TNT
- Chain — TNT priming TNT
- Crater — explosion, blocks, who started it
Protection
- WorldGuard — WorldGuard spawn (visitor) plus the flag
- GriefPrevention — claim owner + trust
- Both — listed together, marked ambiguous
Land inspect
- /why inspect / /why here — captured fire, TNT, WorldEdit on that block
- Empty — names the claim or region, then tells you to run /co i. CauseChain does not store every place/break.
Other traces
- Bow kill — when the projectile owner was recorded
- Dispenser — stays a dispenser
- WorldEdit / FAWE — one op node. FAWE is experimental
- Fire, falling blocks, explosions — when the platform link is defensible
Commands
Player
Code (Text):
/why
/why deny
/why inspect
/why here
/why deny
/why inspect
/why here
Code (Text):
/why — inspect toggle
/chain <id>
/cc status
/cc adapters
/cc explain
/cc export
/cc trace
/cc reload
/chain <id>
/cc status
/cc adapters
/cc explain
/cc export
/cc trace
/cc reload
causechain.why.self and causechain.why.claim default true. Staff nodes default op.
PlaceholderAPI: %causechain_last_death% %causechain_last_deny%
/why has a Share button that copies a Discord-ready line.
Install
Drop CauseChain-1.0.0.jar in plugins/ next to CoreProtect and restart. No extra JARs, no account, no cloud.
Required for the loop: CoreProtect. The JAR still loads without it. Empty inspect still tells you to use /co i.
Optional: WorldGuard, GriefPrevention, WorldEdit / FastAsyncWorldEdit, PlaceholderAPI
Requirements
Built for Paper, Purpur, and Folia.
Spigot and CraftBukkit are not supported. They have not been tested.
- api-version 1.21 (compiled against Paper 1.21.11)
- Smoked this release: Paper 26.1.2 and Purpur 26.1.2 (Java 25.0.2)
- Java 21+ compile. Paper 26.x needs Java 25+ at runtime
- Server-side only. No client mod
- Folia uses region, entity, global, and async schedulers (folia-supported: true). No published Folia stress run. Smoke TNT + death on your Folia jar before you treat it as production-proven.
Minecraft versions on this resource are the versions this release was tested against. 1.20 is not claimed.
Not in this release
- /rewind / rolling the world back
- CoreProtect history lookup
- Logging every successful place/break
- Lands
- Naming every plugin that cancelled a click
- Uploading traces off the server
CauseChain is not affiliated with CoreProtect. Do not ping the CoreProtect author for support.
Privacy
Chat and command text are never stored. Trace upload is not implemented. privacy.telemetry must stay false.
bStats anonymous server counts are on by default. Turn off with privacy.bstats: false or plugins/bStats/config.yml.
DOWNLOAD NOW!!
Docs: https://mbcz.mintlify.app/causechain
Discord: https://discord.com/invite/VQjTVKjs46
Ko-fi: https://ko-fi.com/mbczishim/tip
PayPal: https://www.paypal.com/paypalme/MatthewWatuna
bStats: https://bstats.org/plugin/bukkit/CauseChain/33693
Modrinth: https://modrinth.com/plugin/causechain
License: Apache 2.0.
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.21, 26.1
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
CauseChain | You Died. Type /why. Get the Chain is a free Minecraft Java mod. Compatible with Minecraft 1.21, 26.1. Downloaded 5 times (via Spigot). Download it and open it directly in the game.