Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details
Contraption Lights
Light that moves with your build.
Put a lantern, glowstone, a froglight, or any glowing block on a Create contraption or a Sable sub-level, and Contraption Lights makes the light travel with it as it drives, flies, rotates, tilts, or sails. No more pitch-black cabins and tunnels.
It does more than that, though. It connects moving builds and the world so light passes between them in every direction: your build lights the world, the world lights your build, and builds light each other, including a build mounted on top of another moving build.
It also ships fixes that restore how Sable sub-levels look under Iris, so they stop rendering flat and too bright and go dark underground again, with or without a shaderpack. See Iris fixes.
What it can light
- Create contraptions - carts, gantries, elevators, bearings: anything assembled and moving, rotating parts included.
- Create kinetics - rotating shafts and cogs that Flywheel renders in place.
- Other Flywheel-rendered content - blocks and entities that non-Create mods such as Vanillin draw through Flywheel (needs Flywheel 1.0.6+, no Create required).
- Sable sub-levels - physics-driven moving structures such as ships and dynamic trees.
Light-emitting blocks hidden inside Create copycats, and glowing blocks or items framed in Create placards, count too: they cast the light of whatever they hold.
Which way the light flows
Contraption Lights handles four directions. The first is on by default; the rest are opt-in so you only pay for what you use.
Your build lights the world (on by default)
A moving contraption or sub-level throws the light from its own glowing blocks onto the terrain around it, following every turn of a bearing and every roll of a ship. A beacon riding a Sable sub-level even casts its beam out into the world, pointing along the sub-level's up axis and following it as it moves and tilts, like a steerable searchlight.
The world lights your build (opt-in)
Real world light sources shine back onto a passing build: held torches, glowing mobs, and dropped glowing items, plus placed blocks like torches, glowstone, and lava. Directed and shaped LambDynamicLights sources count too, so a flashlight from another mod or a beacon's beam lights a build it sweeps across. Works on contraptions, sub-levels, and anything else Flywheel renders: Create kinetics (shafts, cogs) and content from other Flywheel-based mods (such as Vanillin's vanilla entities and block entities), the latter with only Flywheel 1.0.6+ installed, no Create required. Turn on the "light onto structures" options.
Builds light each other (opt-in)
Two builds near each other trade light: a lit Sable sub-level lights a nearby contraption or Flywheel-rendered content (Create kinetics, or content from other Flywheel mods), and a lit contraption lights nearby Flywheel-rendered content. This is not a separate setting. It falls out of the two directions above: turn on a "light onto structures" option so a build can receive light, and since a build already emits its own light by default, a nearby build counts as a source just like the world does. So the same toggle that lets the world light a contraption also lets a passing ship light it.
Builds that ride other builds
Mount a Create contraption or kinetic on a Sable ship, say a bearing-driven propeller with a lantern fixed to it, spinning on a moving vessel. That lantern lights the ship's own deck, the surrounding world, and other structures, and the propeller is lit by all of them in return, all tracked smoothly to where it is actually drawn on the moving ship.
How it's rendered: pick a backend
Client lighting has a single mode setting with three choices. Pick the one that matches your setup. There is also a separate server-side option that needs no client mod at all.
LAMB (default, simplest)
Client dynamic light through LambDynamicLights. It rides the vanilla lightmap, so the light is roughly vanilla-colored and casts no shadows, but it is smooth per frame, cheap, works with shaders, and needs no server setup. This backend carries every direction above, including builds lighting each other and builds that ride other builds.
- Smooth and shader-friendly
- Client only: each player who wants to see it installs the mod
- Needs LambDynamicLights
VEIL (experimental, colored light and shadows)
Client dynamic light through Veil deferred point lights. It renders colored light per source (a froglight glows green, a soul lantern cyan, glowstone warm, instead of one flat white) and crisp angled shadows from a tilted sub-level's own blocks, neither of which LAMB can do.
Experimental, not meant for normal play. VEIL has not kept pace with the rest of the mod. It only does the first direction, your build lighting the world, plus a rougher, even more experimental take on the world lighting your build. None of the newer directions reach it: builds do not light each other, a build riding another build is not handled, and Flywheel kinetics are not lit. Use LAMB for normal play, and reach for VEIL only if you specifically want colored light or shadows and can live with the rough edges.
- Client only, touches nothing in the world
- Needs Veil (and Sable for sub-levels)
- No shaders: Veil turns its lighting off whenever Iris is installed, so VEIL mode disables itself under shaders and says so in the log. Use LAMB with shaders.
Server light blocks (everyone sees it)
Separate from the client modes, the server can place real, invisible light blocks in the world as a build moves and clean them up behind it. Because the light is real, every player sees it with no client mod, and it works with shaders and anything that reads world light. It is heavier, so it is off by default and meant for server admins. Configured in the server config.
Requirements
Every dependency is optional. Install a lighting backend, something to light, and whichever integrations you want.
| Mod | Needed for |
|---|---|
| LambDynamicLights | LAMB mode (client). |
| Veil | VEIL mode (client). |
| Create (0.6+) | Lighting contraptions and kinetics (and copycat/placard light). |
| Sable | Lighting Sable sub-levels (any mode). |
Some common setups:
- Smooth contraption lighting: Create + LambDynamicLights, LAMB mode.
- Colored light and shadows (experimental): Veil + VEIL mode (add Sable for sub-levels).
- No Create, just Sable structures: Sable + a backend (LambDynamicLights or Veil).
- Running Iris shaders: use LAMB mode; VEIL disables itself under shaders.
- A whole server, no client mod: Create + the server light-block option.
Configuration
Everything has sensible defaults. Client options appear in the in-game config screen (from the Mods list), the config file, and Sodium's Video Settings if you run Sodium 0.8.12+.
Client - General
| Option | Default | What it does |
|---|---|---|
mode |
LAMB |
Rendering backend. LAMB is lightmap-based and shader-friendly; VEIL is colored with sub-level shadows; OFF disables client lighting. A mode whose mod is absent lights nothing and says so on screen; the setting is kept as you set it, so installing the mod later just works. |
luminanceMultiplier |
1.0 | Overall brightness. 1.0 is normal; lower dims, higher brightens (up to 2.0). |
updateInterval |
0 | Minimum milliseconds between updates of the light a moving structure casts into the world (its own carried light). 0 updates every tick (smoothest); higher reduces cost. |
worldUpdateInterval |
0 | Minimum milliseconds between updates of the world light cast back onto a moving structure (the reverse direction, used by the "light onto structures" options). 0 updates every tick; higher reduces cost. |
showStatusOverlay |
on | Show a short message in the bottom-right corner when something needs attention: no lighting backend installed, the backend a setting needs not installed, or a feature that disabled itself. Appears anywhere, including the main menu; click its x to dismiss one early. The same messages always go to the log. |
Client - Light from structures (your build lights the world, on by default)
| Option | Default | What it does |
|---|---|---|
enableContraptionDynamicLight |
on | Cast light from the blocks a moving Create contraption carries. |
enableSubLevelDynamicLight |
on | Cast light from the blocks a moving Sable sub-level carries, including casting a carried beacon's beam out into the world along the sub-level's up axis. Needs Sable. |
Client - Light onto structures (the world, and other builds, light yours; off by default)
| Option | Default | What it does |
|---|---|---|
enableWorldToContraptionLambLight |
off | Light Create contraptions from nearby dynamic world sources (held torches, glowing mobs, dropped glowing items), plus directed or shaped LambDynamicLights light (a flashlight, a beacon beam). Needs Create's Flywheel backend. |
enableWorldToSubLevelLambLight |
off | Light Sable sub-levels from nearby world light, both dynamic sources and static blocks (torches, glowstone, lava), plus directed or shaped LambDynamicLights light (a flashlight, a beacon beam). Needs Sable. |
enableWorldToFlywheelLight |
off | Light Flywheel-rendered blocks and entities (Create kinetics, and content from other Flywheel-based mods) from nearby dynamic world sources, plus directed or shaped LambDynamicLights light (a flashlight, a beacon beam). Needs Flywheel 1.0.6+; works without Create. |
enableWorldToStructureVeilLight |
off | Light contraptions and sub-levels from nearby world light sources. |
Client - Iris fixes (how Sable sub-levels look under Iris, on by default)
These restore how Sable sub-levels are lit under Iris. They are applied by a bundled "Contraption Lights Fixes" mod that ships inside Contraption Lights and shows as its own entry in the mod list.
| Option | Default | What it does |
|---|---|---|
fixSubLevelShading |
on | Restore directional face shading on Sable sub-levels under Iris, which otherwise look flat and too bright. The shading follows the build as it tilts, with or without a shaderpack. |
fixSubLevelSkyLight |
on | Scale a Sable sub-level's sky light to the world sky light at its position under Iris, so a build goes dark in a cave or underground instead of staying lit as if under open sky. With or without a shaderpack. |
Server - Light blocks
| Option | Default | What it does |
|---|---|---|
enableContraptionLightBlock |
off | Place real light blocks as a Create contraption moves, so every player sees the light. |
enableSubLevelLightBlock |
off | Place real light blocks as a Sable sub-level moves, so every player sees the light. Needs Sable. |
minLightBlockEmission |
1 | Only place a light block for sources at least this bright, to place fewer blocks. |
FAQ
Which mode should I use? LAMB for normal play: it is simple, smooth, and supports every direction. VEIL is experimental and limited (colored light and sub-level shadows, for your build lighting the world only); reach for it just if you want those specifics and do not run shaders.
Do other players need the mod? For the client modes (LAMB and VEIL), yes, each player installs it. For the server light-block option, only the server needs it and everyone sees the light.
Does it work with shaders? LAMB does. VEIL does not: Iris turns off Veil's lighting, so use LAMB when running shaders. The server light-block option works with shaders too.
My Sable sub-levels look flat, too bright, or stay lit underground with Iris.
A bundled "Contraption Lights Fixes" mod restores their face shading and sky light under Iris, on by default. It needs Sable, Iris, and Veil all installed. If a build still looks off, check those three are present and that fixSubLevelShading and fixSubLevelSkyLight are on; a change to either takes effect immediately.
Froglights and lanterns look white in LAMB but colored in VEIL. Why? LAMB uses the vanilla lightmap, which has no per-source color. VEIL renders real colored lights, so each source keeps its own tint.
Nothing lights up. What now? Watch the bottom-right corner, from the main menu onward: if the setup is the problem (no backend installed, a selected mode whose backend is not installed, a dependency too old), the mod says so there. Otherwise check that the backend's mod is installed (LambDynamicLights for LAMB, Veil for VEIL, Sable for sub-levels), that the build actually carries a glowing block, and that the matching option is on. The "light onto structures" and server options are off by default. On Iris shaders, use LAMB.
Credits
- Logo by arthursimon900.
License
All Rights Reserved. You may include this mod in modpacks.


