All modules

Immersive Light

A module for automation and management of light sources, and their fuel consumption. Includes sputtering mechanics at low fuel. Fully customizable. System-agnostic with first-class PF2e and D&D 5e support.

System Agnosticv1.3.1Foundry V13+

★ Traveler Tier

Install

Immersive Light is available to patrons at the Traveler Tier level and above.

Get Access


immersive-light · v1.3.1 · Foundry VTT v13+ (verified 14.367) · Premium: Traveler tier · System-agnostic, first-class PF2e (8.4.0), D&D 5e (5.3.3) & Crucible (0.10.2)

For players and GMs who want to track lantern and torch usage without any bookkeeping. This module adds a fuel gauge that tracks fuel usage. Each item like an oil flask or torch displays time remaining while in use and stacks neatly when multiple fuel items share the same name. Includes a drop feature and the ability to hood lanterns.

Requires: Wayfinder Core, socketlib.

Patreon-exclusive. Access is available through the official Wayfinder Patreon at the Traveler tier or higher.

Aiming a bullseye lantern's light cone

Installation

Classic manifest install. Premium manifest URLs are issued to active subscribers.

  1. Get your manifest URL from wayfindermodules.com/install.
  2. In Foundry, open Add-on Modules → Install Module.
  3. Paste it into the Manifest URL field and click Install.

Install Wayfinder Core and socketlib the same way first; this module won't load without them.


Features:

Lightsources & Fuel

Each one gets its own light profile and its own behaviour.

CategoryFuelDim / BrightAngleAnimation
TorchConsumes itself40 / 20360°Torch flicker
CandleConsumes itself10 / 5360°Gentle pulse
Sunrod / Glow-rodConsumes itself40 / 20360°None (steady)
Hooded lanternSeparate oil60 / 30360°Torch flicker
Bullseye lanternSeparate oil120 / 6045° coneTorch flicker
Infinite (Everlight Crystal, Continual Flame)Never consumes60 / 30360°Pulse

Aiming a bullseye lantern

Hold V, rebindable and the selected token’s light cone follows your cursor. Release to leave it where it is.

Aiming in this way only works for lights with an angle under 360°, since there’s nothing to aim on an omnidirectional source.


System support

PF2e matches on slug: torch, candle, sunrod/glow-rod, lantern-hooded, lantern-bulls-eye, oil-1-pint, everlight-crystal. Legacy slugs and English name patterns are kept alongside these for homebrew and older content.

D&D 5e matches torch, candle, lantern-hooded, lantern-bullseye, oil/oil-flask, plus name matching for sunrods and Continual Flame.

Anything else falls back to matching English item names for torches, candles, sunrods and lanterns. That works until someone runs a French table, at which point it doesn't. Slug matching is language-independent; name matching only catches English clients.

Oils are the exception and are always matched by slug. On a system without dedicated support, declare your oil slug on the Items tab or lanterns won't refuel at all.

Call of Cthulhu, LANCER, Cyberpunk Red and Shadowdark are the next systems we want to cover properly. No dates on any of them.


Settings

Three general settings exist the Control Panel itself. The rest of the settings are separated into two menus. Light Configuration controls everything related to custom and default light sources, as well as messages caused by them. Light Rendering Settings groups all light attenuation/feathering settings for Fog of War, Vision, Light Cones and wall shadows as well as a per-player toggle for all of them.

SettingScopeTypeDefaultWhat it does
enableSputteringworldBooleantrueLights dim and flicker when fuel is low.
sputterThresholdworldNumber10Percentage of max duration at which sputtering begins. Range 1-50.
enableHUDclientBooleantrueShow the fuel bar for the selected token. Per-player.

Light

Colour and intensity for each kind of source, with a preview for the one you're currently editing.

CategoryColourIntensity
Torch#ffa5000.35
Lantern#ffddaa0.25
Candle#ff7b000.40
Sunrod#d0f0ff0.20
Everlight#00d2ff0.30

Items

A card per each category of a light source with the ability to add custom categories for both Light Sources (e.g. Flashlights) and Fuel (e.g. Batteries).

Drag an item onto a card to add it.

SettingDefaultBurn time for
torchDuration60Torches
candleDuration480Candles
sunrodDuration360Sunrods and glow-rods
oilDuration360One unit of standard oil

A bullseye's cone is set on its own card under bullseyeAngle. Default/blank adopts system default (90° for PF2e, 45° elsewhere).

Fuels are in a separate section below Light Sources.

Your own sources and fuels. The + card at the end of either grid opens a creation menu, allowing you to create your own, custom light sources (items only for now) and fuels on a step-by-step guide.

A source you defined keeps its colour in that wizard. It does not get a row in the Light tab, and can be edited by editing the category itself.

Messages

Each message has two wordings. A light lying on the ground uses the second one and posts with no speaker. One switch covers both.

MessageStateDefault
SputteringCarriedThe {sourceName} held by {tokenName} begins to sputter and dim…
SputteringOn the groundThe {sourceName} on the ground sputters and dims…
ExtinguishCarried{tokenName} extinguished their {sourceName}. It has {remainingMinutes} minutes remaining.
ExtinguishOn the groundThe {sourceName} on the ground goes out, with {remainingMinutes} minutes remaining.
BurnoutCarried{fuelName} held by {tokenName} burns out completely.
BurnoutOn the groundThe {fuelName} on the ground burns out completely.

Wildcards: {sourceName}, {tokenName}, {fuelName}, {remainingMinutes}

Light Rendering

The second window. Softens the hard edges Foundry draws between light and dark. Each one is a switch and its own slider, and all four are off by default since they affect every light in the world.

SettingScopeTypeDefaultWhat it does
softenLightConesworldBooleanfalseFade the edge of a cone light.
coneAttenuationPercentworldNumber35How far that edge fades. Range 0-50.
softenWallShadowsworldBooleanfalseFade the edge where a wall cuts a light.
shadowAttenuationPercentworldNumber35How far that edge fades. Range 0-50.
softenVisionEdgesworldBooleanfalseFade the edge where a wall cuts a token's vision.
visionAttenuationPercentworldNumber35How far that edge fades. Range 0-50.
softenDarknessEdgesworldBooleanfalseFade the band between explored and unexplored fog. Experimental.
darknessSoftnessworldNumber25How far that band fades. Range 0-50.
enableAttenuationclientBooleantrueEnables or disables rendering changes on a per player basis.

All attenuation settings are purely visual and change nothing about the token's mechanical perception of the scene.


Keybindings

ActionDefaultNotes
Toggle Light Duration BarAlt + LShow/hide the HUD fuel bar.
Rotate Light ConeV (hold)Aim directional light toward the cursor.

Support

Questions, bug reports, and feature requests are welcome on the Wayfinder Society Discord.

Changelog · License. Distributed under a proprietary license.