Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Creators
Details
Your bedrock is a map to your base
Bedrock is generated from the world seed. Seeds on big SMPs get cracked, and once one is public, a screenshot showing a handful of bedrock blocks can be searched against the generator and turned back into your coordinates. Nether roof shots are the classic case.
Install it and stop thinking about it. The bedrock you see is ordinary bedrock that happens to correspond to nowhere.

Bedrock Shroud redraws the bedrock layers on your client from a 128-bit secret generated on your machine and stored nowhere else. What you see is a genuine sample of the same distribution Minecraft itself generates from, so it reads as ordinary bedrock and survives inspection. It just matches no real location, so searching for it finds nothing.
It is not an X-ray mod, and nothing desyncs. Only bedrock and the plain stone of the bedrock layers are ever exchanged, and only for each other:
- Nothing is hidden. Ores, chests, fluids, spawners and anything a player placed are untouched.
- Air stays air. Holes you dug in the Nether roof are still there, still where you left them.
- Physics is unaffected. Collision, ray tracing and block breaking all use the real world, so you cannot walk into a wall that is not there.
- No packet changes. Everything your client sends is built from the real world, so not one byte differs from an unmodified client. There is no desync to detect, because there is no desync. Only your picture of the world differs.
Seeing the real thing
The disguise is convincing enough to fool you, which is a problem when you actually need to work down there. Hold the reveal key and the truth comes back for as long as you hold it.
| B | Hold to see the true bedrock, or switch it to a toggle |
| New pattern | Throw the secret away and redraw everything from a fresh one |
| Settings | In the kUI hub, or on a keybind of its own if you do not use kUI |
While the truth is on screen a REVEALING TRUE BEDROCK banner sits across the top, as a reminder not to screenshot it. There is deliberately no badge the rest of the time: it would show up in exactly the screenshots this exists to make safe, and it would tell anyone looking that the bedrock in frame is not worth trusting. No banner means what you are looking at is shrouded.
Keep your config to yourself
Your key lives in config/bedrockshroud.json. Do not share that file, and never ship one in a
modpack. Anyone holding those two numbers can reproduce every pattern you see and work out which
bedrock in your screenshots was real. A pack shipping a bedrockshroud.json would hand all of its
users the same key, and breaking one would break every one of them.
Is it actually working?
The settings screen reports what it has been observed doing, not what you have switched on. It
reads Active: Sodium hook confirmed or Active: vanilla hook confirmed only once the mod has
genuinely redrawn a block. Until then it says On, not yet confirmed, because the hook only runs on
blocks in the bedrock layers and standing on the surface never triggers it. Go down to bedrock and
reopen the screen.
That distinction matters more than it sounds. A renderer hook that quietly stopped matching after an update does not crash and does not look like anything, and a player who wrongly believes they are covered is the one who posts the screenshot.
What it does not protect
Bedrock is the easiest leak to close, not the only one. Distinctive terrain, a ravine, a structure or
a biome edge in frame is still searchable against the seed, and F3 gives up your coordinates
directly whatever the bedrock says. Sound is still honest too, so audio in a recording can tell
bedrock and deepslate apart. Screenshots cannot.
Requirements
Fabric 1.21.8, client-side only. Needs Fabric API. Nothing to install on the server, and it works anywhere you play: vanilla, Paper, modded. Sodium is supported with a dedicated hook, and kUI is optional, adding the settings to the shared hub.
This is a technical statement, not a promise about any particular server's rules. Nothing here is detectable, but a server that forbids client mods as a matter of policy is a rules question rather than a detection one.

Vanilla places bedrock on a vertical gradient: a straight line of probability across five blocks, running 1.0, 0.8, 0.6, 0.4, 0.2 upward from Y -64 and mirrored under the Nether roof. That is the whole rule, and it is why the bottom layer is solid and the four above it look speckled.
Bedrock Shroud re-rolls exactly those four layers using the same probabilities, keyed by a SplitMix64 hash over your secret and the block position. Measured across 1.44M columns per layer, the output matches vanilla's frequencies to within about a part in a thousand, and two different secrets produce statistically independent patterns. There is no generator state to run backwards, so recovering the key means brute forcing 128 bits. It is keyed per server and per dimension, so one compromise stays one compromise.
Replaced bedrock takes on whatever stone actually surrounds it, rather than one fixed block per dimension. That detail matters more than it sounds: a lone deepslate block in the middle of a tuff blob could not have generated there, and every one of those would be a signpost marking a real bedrock position.
The lie is told to the chunk mesher and to block particles, and to nothing else. Both only draw. Particles are included because they are spawned from the real world, so mining bedrock drawn as deepslate would otherwise throw off bedrock-black specks against a grey block and give the position away one screenshot at a time.

All rights reserved. Free to download and use, but not to redistribute, modify or republish, and not to bundle into a modpack without asking first.
That last point is worth a word of explanation, because it is not only a licensing preference. The whole design assumes every install holds a key nobody else has, and a pack that shipped one would undo that for every user at once.
Copyright © 2026 KALPE.


