
Baileywiki Better Levels
by Baileywiki
Multi-floor scenes that just work — built, audited, and fixed for you.
Foundry's native Scene Levels are powerful, but building a tower, a dungeon with a basement, or a ship with a deck below is fiddly and easy to get subtly wrong. Better Levels automates the tedious parts — generating levels, tracing floor surfaces, wiring stairs, naming things — and then continuously audits your scene for the easy-to-miss mistakes that quietly break Levels, with one-click fixes for each.
The whole thing is additive to Foundry: it builds with real Levels, ordinary Regions, and ordinary Tiles. Nothing proprietary, nothing locked away — so your scenes stay portable, export/import with Foundry's own tools, and every module you already use keeps working.
✨ Highlights
Auto-Build Levels. Say how many floors, how many basements, whether to add a roof, and the floor height — Better Levels creates the whole stack in seconds, names each band by its elevation range (e.g.
Level 02 (10 | 20)), and auto-wires visibility by rule: above-ground floors see each other, basements stay sealed. Bands that already match are preserved.One-click tile setup with pixel-perfect surfaces. Tile HUD buttons configure a tile as Floor / Roof / Basement / Balcony and generate its walk-on Surface region in one click — tracing the tile's actual non-transparent footprint (via Mass Edit) instead of a blunt rectangle.
Build Mode. A single toggle that turns the scene into a clean build surface — hides everything on higher floors and ceilings so you can see and work on the level you're actually building, and never touches scenes that don't use Levels.
Fix Entity — configure anything in one click. Select any placeable and hit Fix. It infers what it can (a tile's role, a region's surface-vs-stair purpose, the right level) and only asks when it genuinely can't tell, batching questions into one dialog with smart defaults — then sets it up end-to-end and offers a "Go to that level" jump to see the result.
Live Audit & Self-Repair. More than two dozen checks catch the conflicts that break Levels — mis-placed surfaces, broken stair/elevator wiring, visibility leaks, light tagging, roof/floor occlusion, degenerate or overlapping bands, leftover legacy flags, and more. Issues are sorted into green / amber / red buckets (cosmetic → settings → creates-or-deletes) with a plain-language "why" on each, so you fix with confidence. Fix one, Fix All, or ignore a rule per scene.
Level Manager. Click the level count to open a building-style manager: see how many tiles, lights, regions, walls, and tokens live on each floor; rename, re-elevate, add, or remove levels; then Apply — it backs up, cleans up orphaned tags, re-applies visibility, and flags any remaining work in the Audit.
Region tools. Auto-Stair mode turns any region you draw into a Change Level stair to the floor above; Make Surface turns any region into a walk-on surface with no tile required; and managed regions get clear names like
Surface Level 02andStair Level 01 ↔ Level 02.Vehicles. One click turns a prefab's regions into a Mass Edit Link Token "deck" so tokens ride the ship, elevator, or moving platform.
Backup & Restore. Create a named restore point before risky changes and roll the whole scene back to any saved point — one button, with a confirmation that offers to back up the current state first.
🛠️ How it works
A compact, draggable helper panel appears on scenes that have multiple levels (or open it anytime from the Tiles toolbar button). It centralizes the live toggles and actions — Generate, Build Mode, Level Manager, Fix, Audit, Backup — and shows your scene's live audit count at a glance, so configuration mistakes surface the moment they happen instead of mid-session.
Everything it creates is a native Foundry document, so you can hand-tune anything afterward, and the audit will simply notice and offer to reconcile whatever you change.
📋 Compatibility & recommended modules
Foundry VTT v14. System-agnostic — works with any game system.
Baileywiki Mass Edit (recommended) — enables pixel-perfect Surface regions traced to a tile's true footprint, and powers the Vehicle / Link Token decks. Everything degrades gracefully to a bounding rectangle without it.
Better Roofs (optional) — Better Levels can set its "Reveals Fog of War" flag on roofs when present.
💜 From Baileywiki
Made by Baileywiki and the Foundry VTT community. If multi-level scenes have ever fought you, this is the assistant that does the bookkeeping — so you can spend your time building the dungeon, not debugging it.
Contents not yet indexed.
Releases
# Baileywiki Better Levels — First Release (v0.0.1) **Better Levels** makes Foundry VTT's native Scene **Levels** feature fast, forgiving, and hard to misconfigure. It automates the tedious parts of building multi-floor scenes — generating levels, tagging surfaces, wiring stairs, naming things — and continuously audits your scene for the easy-to-miss mistakes that break Levels, with one-click fixes. > **Requirements:** Foundry VTT **v14** (system-agnostic — works with any game system). The **Vehicle** button additionally requires **Baileywiki Mass Edit** (multi-token-edit). --- ## ✨ Highlights ### 🏗️ Auto-Build Levels Generate a complete, correctly-wired set of levels in seconds. Tell it how many above-ground floors, how many basements, whether to add a roof, and the floor height — Better Levels creates the level bands, names them with their elevation range (e.g. `Level 02 (10 | 20)`), and **auto-assigns visibility** between them by rule: above-ground floors see each other, basements stay sealed. Existing bands that already match are preserved. ### 🧱 Build Mode A single toggle that turns your scene into a clean build surface: - **Hides overhead clutter** — tiles on the current floor's ceiling and any higher level are hidden, so you can see and work on the level you're building. - **Adds Tile HUD buttons** (shown only while Build Mode is on) for one-click configuration: - **Auto-configure Floor** — sets the tile up as a floor *and* creates its Surface region - **Auto-configure Roof** - **Auto-configure Basement** - **Auto-configure Balcony** - **Auto-configure Vehicle** — turns every region attached to the selected prefab into a Mass Edit **Link Token** "deck," so tokens ride it *(requires Mass Edit)* - **Move to Level** — retag and re-elevate the selected tile to another level ### 🩺 Scene Audit & Self-Repair A live audit that catches the configuration mistakes that quietly break Levels — **26 rules** covering elevation/level conflicts, missing or mis-placed surfaces, stair and elevator wiring, level visibility, light tagging, roof/floor occlusion, degenerate or overlapping bands, leftover legacy flags, and more. - **Fix** any issue with one click, or **Fix All** at once - **Ignore** an individual issue, or **disable a whole rule** per scene, when a build intentionally breaks convention - The helper panel shows a live count so you always know your scene's health ### ✨ Auto-Fix (Fix Entity) Select any placeable and click **Fix** in the helper panel — Better Levels configures it from scratch. It infers everything it can from the entity itself (a tile's role, a region's surface-vs-stair purpose, the right level from a level tag or a deliberate elevation) and only asks when it genuinely can't tell — batching any questions into a single dialog with best-guess defaults pre-selected. It then configures the entity end-to-end (sets a tile's role + Surface region, wires a stair, tags lights/sounds/drawings/walls to the right level) and finishes with a one-click **"Go to that level"** button so you can immediately see the result. It deliberately does **not** assume a level from an elevation of 0 (the default placement state), asking instead. ### 🪜 Region Tools - **Auto-Stair mode** — while on, any region you draw becomes a Change Level stair connecting the current level to the one above, with movement and elevation pre-wired - **Make Surface** — turn any selected region(s) into a level surface, no tile required - **Smart naming** — new tiles are named from their **texture filename** instead of a random GUID, and managed regions are named by purpose and level: `Surface Level 02 (10 | 20)`, `Stair Level 01 ↔ Level 02` ### 🎛️ Helper Panel A compact, draggable panel that docks under the Levels nav and collapses to a single floating button. Centralizes the live toggles (Build Mode, Create Stairs) and actions (Generate, Audit, Set Defaults), and surfaces the current audit count at a glance. --- ## ⚙️ Configuration ### Set Defaults Opinionated, scene-building preferences you can turn on or off: - Seal basements (not visible to other levels) - Apply line-of-sight occlusion to floor tiles (not just roofs) - Give auto-configured roofs a Surface region of infinite height - Set Better Roofs' "Reveals Fog of War" on roofs ### Module Settings Additional feature toggles in the standard Foundry module settings: - Show the Better Levels toolbar button - Auto-show the helper panel on Levels scenes - **Match elevation to level on token level-change** — changing a token's level now also moves its elevation to that level's band (**on by default**; turn it off here to keep the old elevation-stays-put behavior) - Auto-set a light's elevation to its band on drop (lights stay untagged) - Auto-name tiles from their filename --- ## 📦 Install & Notes 1. Install/enable **Baileywiki Better Levels** in any **Foundry v14** world. 2. (Optional) Install **Baileywiki Mass Edit** to enable the **Vehicle / Link Token** button. 3. Open a scene, hit **Generate Levels**, then toggle **Build Mode** and start configuring tiles from the HUD. This is an early first release (v0.0.1) — feedback and bug reports are very welcome.
# Baileywiki Better Levels — First Release (v0.0.1) **Better Levels** makes Foundry VTT's native Scene **Levels** feature fast, forgiving, and hard to misconfigure. It automates the tedious parts of building multi-floor scenes — generating levels, tagging surfaces, wiring stairs, naming things — and continuously audits your scene for the easy-to-miss mistakes that break Levels, with one-click fixes. > **Requirements:** Foundry VTT **v14** (system-agnostic — works with any game system). The **Vehicle** button additionally requires **Baileywiki Mass Edit** (multi-token-edit). --- ## ✨ Highlights ### 🏗️ Auto-Build Levels Generate a complete, correctly-wired set of levels in seconds. Tell it how many above-ground floors, how many basements, whether to add a roof, and the floor height — Better Levels creates the level bands, names them with their elevation range (e.g. `Level 02 (10 | 20)`), and **auto-assigns visibility** between them by rule: above-ground floors see each other, basements stay sealed. Existing bands that already match are preserved. ### 🧱 Build Mode A single toggle that turns your scene into a clean build surface: - **Hides overhead clutter** — tiles on the current floor's ceiling and any higher level are hidden, so you can see and work on the level you're building. - **Adds Tile HUD buttons** (shown only while Build Mode is on) for one-click configuration: - **Auto-configure Floor** — sets the tile up as a floor *and* creates its Surface region - **Auto-configure Roof** - **Auto-configure Basement** - **Auto-configure Balcony** - **Auto-configure Vehicle** — turns every region attached to the selected prefab into a Mass Edit **Link Token** "deck," so tokens ride it *(requires Mass Edit)* - **Move to Level** — retag and re-elevate the selected tile to another level ### 🩺 Scene Audit & Self-Repair A live audit that catches the configuration mistakes that quietly break Levels — **26 rules** covering elevation/level conflicts, missing or mis-placed surfaces, stair and elevator wiring, level visibility, light tagging, roof/floor occlusion, degenerate or overlapping bands, leftover legacy flags, and more. - **Fix** any issue with one click, or **Fix All** at once - **Ignore** an individual issue, or **disable a whole rule** per scene, when a build intentionally breaks convention - The helper panel shows a live count so you always know your scene's health ### ✨ Auto-Fix (Fix Entity) Select any placeable and click **Fix** in the helper panel — Better Levels configures it from scratch. It infers everything it can from the entity itself (a tile's role, a region's surface-vs-stair purpose, the right level from a level tag or a deliberate elevation) and only asks when it genuinely can't tell — batching any questions into a single dialog with best-guess defaults pre-selected. It then configures the entity end-to-end (sets a tile's role + Surface region, wires a stair, tags lights/sounds/drawings/walls to the right level) and finishes with a one-click **"Go to that level"** button so you can immediately see the result. It deliberately does **not** assume a level from an elevation of 0 (the default placement state), asking instead. ### 🪜 Region Tools - **Auto-Stair mode** — while on, any region you draw becomes a Change Level stair connecting the current level to the one above, with movement and elevation pre-wired - **Make Surface** — turn any selected region(s) into a level surface, no tile required - **Smart naming** — new tiles are named from their **texture filename** instead of a random GUID, and managed regions are named by purpose and level: `Surface Level 02 (10 | 20)`, `Stair Level 01 ↔ Level 02` ### 🎛️ Helper Panel A compact, draggable panel that docks under the Levels nav and collapses to a single floating button. Centralizes the live toggles (Build Mode, Create Stairs) and actions (Generate, Audit, Set Defaults), and surfaces the current audit count at a glance. --- ## ⚙️ Configuration ### Set Defaults Opinionated, scene-building preferences you can turn on or off: - Seal basements (not visible to other levels) - Apply line-of-sight occlusion to floor tiles (not just roofs) - Give auto-configured roofs a Surface region of infinite height - Set Better Roofs' "Reveals Fog of War" on roofs ### Module Settings Additional feature toggles in the standard Foundry module settings: - Show the Better Levels toolbar button - Auto-show the helper panel on Levels scenes - **Match elevation to level on token level-change** — changing a token's level now also moves its elevation to that level's band (**on by default**; turn it off here to keep the old elevation-stays-put behavior) - Auto-set a light's elevation to its band on drop (lights stay untagged) - Auto-name tiles from their filename --- ## 📦 Install & Notes 1. Install/enable **Baileywiki Better Levels** in any **Foundry v14** world. 2. (Optional) Install **Baileywiki Mass Edit** to enable the **Vehicle / Link Token** button. 3. Open a scene, hit **Generate Levels**, then toggle **Build Mode** and start configuring tiles from the HUD. This is an early first release (v0.0.1) — feedback and bug reports are very welcome.
Baileywiki Better Levels — First Release (v0.0.1)
Better Levels makes Foundry VTT's native Scene Levels feature fast, forgiving, and hard to misconfigure. It automates the tedious parts of building multi-floor scenes — generating levels, tagging surfaces, wiring stairs, naming things — and continuously audits your scene for the easy-to-miss mistakes that break Levels, with one-click fixes.
Requirements: Foundry VTT v14 (system-agnostic — works with any game system). The Vehicle button additionally requires Baileywiki Mass Edit (multi-token-edit).
✨ Highlights
🏗️ Auto-Build Levels
Generate a complete, correctly-wired set of levels in seconds. Tell it how many above-ground floors, how many basements, whether to add a roof, and the floor height — Better Levels creates the level bands, names them with their elevation range (e.g. Level 02 (10 | 20)), and auto-assigns visibility between them by rule: above-ground floors see each other, basements stay sealed. Existing bands that already match are preserved.
🧱 Build Mode
A single toggle that turns your scene into a clean build surface:
- Hides overhead clutter — tiles on the current floor's ceiling and any higher level are hidden, so you can see and work on the level you're building.
- Adds Tile HUD buttons (shown only while Build Mode is on) for one-click configuration:
- Auto-configure Floor — sets the tile up as a floor and creates its Surface region
- Auto-configure Roof
- Auto-configure Basement
- Auto-configure Balcony
- Auto-configure Vehicle — turns every region attached to the selected prefab into a Mass Edit Link Token "deck," so tokens ride it (requires Mass Edit)
- Move to Level — retag and re-elevate the selected tile to another level
🩺 Scene Audit & Self-Repair
A live audit that catches the configuration mistakes that quietly break Levels — 26 rules covering elevation/level conflicts, missing or mis-placed surfaces, stair and elevator wiring, level visibility, light tagging, roof/floor occlusion, degenerate or overlapping bands, leftover legacy flags, and more.
- Fix any issue with one click, or Fix All at once
- Ignore an individual issue, or disable a whole rule per scene, when a build intentionally breaks convention
- The helper panel shows a live count so you always know your scene's health
✨ Auto-Fix (Fix Entity)
Select any placeable and click Fix in the helper panel — Better Levels configures it from scratch. It infers everything it can from the entity itself (a tile's role, a region's surface-vs-stair purpose, the right level from a level tag or a deliberate elevation) and only asks when it genuinely can't tell — batching any questions into a single dialog with best-guess defaults pre-selected. It then configures the entity end-to-end (sets a tile's role + Surface region, wires a stair, tags lights/sounds/drawings/walls to the right level) and finishes with a one-click "Go to that level" button so you can immediately see the result. It deliberately does not assume a level from an elevation of 0 (the default placement state), asking instead.
🪜 Region Tools
- Auto-Stair mode — while on, any region you draw becomes a Change Level stair connecting the current level to the one above, with movement and elevation pre-wired
- Make Surface — turn any selected region(s) into a level surface, no tile required
- Smart naming — new tiles are named from their texture filename instead of a random GUID, and managed regions are named by purpose and level:
Surface Level 02 (10 | 20),Stair Level 01 ↔ Level 02
🎛️ Helper Panel
A compact, draggable panel that docks under the Levels nav and collapses to a single floating button. Centralizes the live toggles (Build Mode, Create Stairs) and actions (Generate, Audit, Set Defaults), and surfaces the current audit count at a glance.
⚙️ Configuration
Set Defaults
Opinionated, scene-building preferences you can turn on or off:
- Seal basements (not visible to other levels)
- Apply line-of-sight occlusion to floor tiles (not just roofs)
- Give auto-configured roofs a Surface region of infinite height
- Set Better Roofs' "Reveals Fog of War" on roofs
Module Settings
Additional feature toggles in the standard Foundry module settings:
- Show the Better Levels toolbar button
- Auto-show the helper panel on Levels scenes
- Match elevation to level on token level-change — changing a token's level now also moves its elevation to that level's band (on by default; turn it off here to keep the old elevation-stays-put behavior)
- Auto-set a light's elevation to its band on drop (lights stay untagged)
- Auto-name tiles from their filename
📦 Install & Notes
- Install/enable Baileywiki Better Levels in any Foundry v14 world.
- (Optional) Install Baileywiki Mass Edit to enable the Vehicle / Link Token button.
- Open a scene, hit Generate Levels, then toggle Build Mode and start configuring tiles from the HUD.
This is an early first release (v0.0.1) — feedback and bug reports are very welcome.
Baileywiki Better Levels — First Release (v0.0.1)
Better Levels makes Foundry VTT's native Scene Levels feature fast, forgiving, and hard to misconfigure. It automates the tedious parts of building multi-floor scenes — generating levels, tagging surfaces, wiring stairs, naming things — and continuously audits your scene for the easy-to-miss mistakes that break Levels, with one-click fixes.
Requirements: Foundry VTT v14 (system-agnostic — works with any game system). The Vehicle button additionally requires Baileywiki Mass Edit (multi-token-edit).
✨ Highlights
🏗️ Auto-Build Levels
Generate a complete, correctly-wired set of levels in seconds. Tell it how many above-ground floors, how many basements, whether to add a roof, and the floor height — Better Levels creates the level bands, names them with their elevation range (e.g. Level 02 (10 | 20)), and auto-assigns visibility between them by rule: above-ground floors see each other, basements stay sealed. Existing bands that already match are preserved.
🧱 Build Mode
A single toggle that turns your scene into a clean build surface:
- Hides overhead clutter — tiles on the current floor's ceiling and any higher level are hidden, so you can see and work on the level you're building.
- Adds Tile HUD buttons (shown only while Build Mode is on) for one-click configuration:
- Auto-configure Floor — sets the tile up as a floor and creates its Surface region
- Auto-configure Roof
- Auto-configure Basement
- Auto-configure Balcony
- Auto-configure Vehicle — turns every region attached to the selected prefab into a Mass Edit Link Token "deck," so tokens ride it (requires Mass Edit)
- Move to Level — retag and re-elevate the selected tile to another level
🩺 Scene Audit & Self-Repair
A live audit that catches the configuration mistakes that quietly break Levels — 26 rules covering elevation/level conflicts, missing or mis-placed surfaces, stair and elevator wiring, level visibility, light tagging, roof/floor occlusion, degenerate or overlapping bands, leftover legacy flags, and more.
- Fix any issue with one click, or Fix All at once
- Ignore an individual issue, or disable a whole rule per scene, when a build intentionally breaks convention
- The helper panel shows a live count so you always know your scene's health
✨ Auto-Fix (Fix Entity)
Select any placeable and click Fix in the helper panel — Better Levels configures it from scratch. It infers everything it can from the entity itself (a tile's role, a region's surface-vs-stair purpose, the right level from a level tag or a deliberate elevation) and only asks when it genuinely can't tell — batching any questions into a single dialog with best-guess defaults pre-selected. It then configures the entity end-to-end (sets a tile's role + Surface region, wires a stair, tags lights/sounds/drawings/walls to the right level) and finishes with a one-click "Go to that level" button so you can immediately see the result. It deliberately does not assume a level from an elevation of 0 (the default placement state), asking instead.
🪜 Region Tools
- Auto-Stair mode — while on, any region you draw becomes a Change Level stair connecting the current level to the one above, with movement and elevation pre-wired
- Make Surface — turn any selected region(s) into a level surface, no tile required
- Smart naming — new tiles are named from their texture filename instead of a random GUID, and managed regions are named by purpose and level:
Surface Level 02 (10 | 20),Stair Level 01 ↔ Level 02
🎛️ Helper Panel
A compact, draggable panel that docks under the Levels nav and collapses to a single floating button. Centralizes the live toggles (Build Mode, Create Stairs) and actions (Generate, Audit, Set Defaults), and surfaces the current audit count at a glance.
⚙️ Configuration
Set Defaults
Opinionated, scene-building preferences you can turn on or off:
- Seal basements (not visible to other levels)
- Apply line-of-sight occlusion to floor tiles (not just roofs)
- Give auto-configured roofs a Surface region of infinite height
- Set Better Roofs' "Reveals Fog of War" on roofs
Module Settings
Additional feature toggles in the standard Foundry module settings:
- Show the Better Levels toolbar button
- Auto-show the helper panel on Levels scenes
- Match elevation to level on token level-change — changing a token's level now also moves its elevation to that level's band (on by default; turn it off here to keep the old elevation-stays-put behavior)
- Auto-set a light's elevation to its band on drop (lights stay untagged)
- Auto-name tiles from their filename
📦 Install & Notes
- Install/enable Baileywiki Better Levels in any Foundry v14 world.
- (Optional) Install Baileywiki Mass Edit to enable the Vehicle / Link Token button.
- Open a scene, hit Generate Levels, then toggle Build Mode and start configuring tiles from the HUD.
This is an early first release (v0.0.1) — feedback and bug reports are very welcome.
GET /api/v1/modules/baileywiki-better-levels/changelogComments(0)
Sign in to join the discussion.