Hub / Gloamguise / Wiki / The camouflage engine

The camouflage engine

Most disguise add-ons swap one texture. Gloamguise rebuilds the whole appearance of the neighbouring block across five independent channels, so a fake wall survives close inspection.

3 min read9 sections

The five channels

ChannelWhat is copiedWhy it matters
TexturesEvery visible face, including the bottom you cannot seeNo seams on a mixed-material wall
AxisX / Y / Z grain of logs, basalt, purpurA rotated log keeps the bark direction
BiomeGrass colour resolved from the current biomeThe entrance melts into any landscape
SoundStep and break sounds of the original blockStone still sounds like stone
LightLight emission of the copied blockA disguised lamp really lights the room
A decoy wall next to real blocks with matching directional log grain
A decoy wall next to real blocks — directional log grain (X / Y / Z) matches exactly.

Faces

Top, bottom and all four sides of multi-face blocks are resolved independently: grass, podzol, mycelium and nylium keep their green top, dirt bottom and unique sides.

Orientation

Bark, cut and pillar direction is preserved on every log, basalt, deepslate, hay and bamboo block. A decoy placed against a sideways log lies sideways too.

Biome tint

Nineteen grass palettes are sampled from the world, so the entrance matches the meadow it stands in — meadow green, swamp olive, badlands dry.

Sound & light

Footsteps and break sounds stay stone-or-wood, and glowing blocks keep their real light level — 3, 10 or 15. A disguised sea lantern still lights the room.

The chain trick
Place a new decoy directly onto an existing one and it inherits the already-resolved camouflage instantly — you can build a fake tunnel from a single real block of stone.

Under the hood

The registry knows 290+ blocks and 411 structural states. Skins are stored as a base-8 index across three permutation states, with axis, face, mode and orientation kept separately:

Skin index
gg:s0, gg:s1, gg:s2 (base 8)
Orientation
gg:axis, gg:face, gg:orient
Behaviour
gg:mode, gg:open, gg:variant
Sampling
Camouflage is resolved at placement, from the tapped neighbour
Sampling is a snapshot
If you replace the neighbouring wall later, break and re-place the decoy to refresh it. The pack does not watch neighbours for changes — that is what keeps the tick cost negligible.

What each channel really copies

  • Textures: top, bottom, and all four sides of multi-face blocks such as grass, podzol, mycelium, and nylium.
  • Axis: X / Y / Z grain for logs, basalt, deepslate, hay, bamboo, and purpur.
  • Biome: grass colour resolved from the current biome; nineteen palettes are sampled from the world.
  • Sound: step and break sounds stay stone-or-wood, matching the original block.
  • Light: glowing blocks keep light level 3, 10, or 15, so a disguised lamp still lights the room.

The chain trick

1
Start from one real block
Place a Decoy Block against a real stone block.
2
Extend from the decoy
Place another Decoy Block directly onto the first one. It inherits the already-resolved camouflage instantly.
3
Build a tunnel
Repeat to make a fake tunnel from a single real block of stone.

Camouflage is a placement snapshot

Refresh after editing the wall
The decoy samples the neighbour when placed. If you later replace the neighbouring wall, break and re-place the decoy to refresh its appearance. Only supported blocks are copied; an unsupported block may fall back to the default decoy texture.