

Lightkeeper adds a new buildable controller piece for Valheim that lets you manage fire and light sources in a smart, networked way.
The mod is designed for bases with many torches, braziers, hearths, campfires, sconces, and other pieces using Valheim's Fireplace component.
With Lightkeeper you can:
๐งฉ Lightkeeper works with Valheim fire sources using the vanilla
Fireplacecomponent.
A new build piece that works as a fire and light control hub.
The Lightkeeper can:
The Lightkeeper is built with the Hammer.
| Resource | Amount |
|---|---|
| Stone | 20 |
| Ruby | 4 |
| Tin | 5 |
| Resin | 15 |
Requires:
| Action | Input |
|---|---|
| Open fuel storage | E |
| Toggle connected lights ON/OFF | Alt + E |
| Toggle auto-fuel ON/OFF | Ctrl + E |
| Increase range | + or Numpad + |
| Decrease range | - or Numpad - |
| Ignore / obey Lightkeeper on individual fire | Ctrl + E while hovering the fire |
โ ๏ธ In Valheim the
altparameter inInteract()is not the keyboard Alt key. Lightkeeper checks the real keyboard Alt key directly.
Lightkeepers can connect to each other and act as one network.
Two Lightkeepers are connected when one of them reaches the other with its radius.
Example:
Lightkeeper A range: 10m
Lightkeeper B range: 15m
Distance between them: 12m
A does not reach B.
B reaches A.
Result: connected.
This means a larger-range Lightkeeper can connect to a smaller one even if the smaller one does not reach back.
Each Lightkeeper has an adjustable radius.
While hovering the Lightkeeper:
+ to increase range- to decrease rangeChanging range can:
The network is recalculated after range changes.
When the Lightkeeper network is ON:
When the Lightkeeper network is OFF:
Toggling one Lightkeeper affects every connected Lightkeeper in its current network.
Lightkeeper can automatically refill fire sources using fuel stored in connected Lightkeeper containers.
Auto-fuel is network-wide:
Auto-fuel only runs when:
Each Lightkeeper has a small internal storage.
Storage size:
| Width | Height | Slots |
|---|---|---|
| 3 | 4 | 12 |
This is not meant to replace a full chest. It is a compact fuel buffer for the controller network.
If multiple Lightkeepers are connected, their available storage is treated as a shared fuel pool.
The auto-fuel system is designed to be efficient.
It does not try to fuel every fire every frame.
Instead it:
This helps avoid FPS spikes in large bases.
Only one Lightkeeper in a connected network performs auto-fuel logic.
This prevents:
The leader is selected automatically from the connected network.
Each fire source can be excluded from Lightkeeper control.
While hovering a fire source:
| Action | Input |
|---|---|
| Toggle ignore / obey Lightkeeper | Ctrl + E |
Ignored fires:
This is useful for decorative fires, special modded lights, or lights controlled by another system.
Lightkeeper is designed for multiplayer.
The important states are stored in ZDO data:
This allows the system to persist across:
Lightkeeper avoids expensive global scans.
The system uses:
Destroyed or removed fires are validated and cleaned up automatically.
Lightkeeper is designed to be compatible with other mods that interact with fire sources.
Important compatibility choices:
E on fires remains vanilla behaviorFireplace componentFuture light/color control mods should be able to coexist more easily because Lightkeeper separates:
[Lightkeeper A] ---- connected ---- [Lightkeeper B] ---- connected ---- [Lightkeeper C]
If these are connected by radius:
All player-facing text uses translation keys in the format:
$tag_lightkeeper_*_bal
Translation JSON keys should not include the $ prefix.
Example:
{
"tag_lightkeeper_name_bal": "Lightkeeper",
"tag_lightkeeper_open_storage_bal": "Open fuel storage"
}
{
"tag_lightkeeper_name_bal": "Lightkeeper",
"tag_lightkeeper_description_bal": "Allows control over fire sources in area and centralizes fuel supply",
"tag_lightkeeper_on_bal": "ON",
"tag_lightkeeper_off_bal": "OFF",
"tag_lightkeeper_open_storage_bal": "Open fuel storage",
"tag_lightkeeper_turn_lights_bal": "Toggle lights",
"tag_lightkeeper_turn_autofuel_bal": "Toggle auto-fuel",
"tag_lightkeeper_adjust_range_bal": "Adjust range",
"tag_lightkeeper_storage_skipped_bal": "Open storage is skipped by auto-fuel.",
"tag_lightkeeper_noaccess_bal": "$piece_noaccess",
"tag_lightkeeper_msg_turned_on_bal": "Lightkeeper turned on.",
"tag_lightkeeper_msg_turned_off_bal": "Lightkeeper turned off.",
"tag_lightkeeper_msg_autofuel_enabled_bal": "Auto-fuel enabled.",
"tag_lightkeeper_msg_autofuel_disabled_bal": "Auto-fuel disabled.",
"tag_lightkeeper_msg_range_bal": "Lightkeeper range:",
"tag_lightkeeper_fire_ignore_bal": "Ignore Lightkeeper",
"tag_lightkeeper_fire_obey_bal": "Obey Lightkeeper",
"tag_lightkeeper_fire_msg_ignored_bal": "This light now ignores Lightkeeper.",
"tag_lightkeeper_fire_msg_obey_bal": "This light now obeys Lightkeeper."
}
Yes, as long as the object uses Valheim's Fireplace component.
Yes. The controller checks what fuel item each fire source uses and only pulls matching fuel from storage.
No. If a player is using a Lightkeeper storage, that storage is skipped for that auto-fuel tick.
The system validates registered fires and removes invalid references during cleanup.
The network cache is invalidated and the controller network is recalculated.
Yes. Hover the fire and press Ctrl + E to toggle whether it ignores Lightkeeper.
No. Auto-fuel toggle is network-wide for all currently connected Lightkeepers.
Each controller keeps its last stored state. After splitting, future toggles affect only the currently connected network.
Lightkeeper is built to reduce repetitive fire maintenance while keeping Valheim's fuel systems meaningful.
It gives players control, automation, and convenience without turning fire sources into free infinite lights.