Foundry VTT uses walls to create various virtual boundaries in-game. Together with fog of war and lighting, a Gamemaster can create immersive scenes and allow their players to explore an environment through their characters' eyes, seeing only what their tokens can see.
This article uses "walls" to refer to any boundary that prevents vision or movement through it. Walls themselves are typically not visible to players, but impose restrictions on a token's movement, line-of-sight, and sound depending on how each wall is configured. With the Wall Controls toolbar, you can view the Walls layer while viewing a scene.
The Wall Controls panel can be opened by clicking on the building icon ( ) on the left-hand side of the user interface. This opens the tool palette, and displays all existing walls on the current scene (if there are any) allowing you to draw new walls or manipulate existing wall segments.
Note: For detailed information on how the individual wall types work see the "Wall Types" section later in this article.
- Select Walls ( )
- The default wall type. Restricts vision, movement, and sound.
- Draw Wall ( )
- The default wall type. Restricts vision, movement, and sound.
- Draw Terrain Wall ( )
- Terrain wall types restrict movement and sound but only allows vision to partially pass through.
- Draw Invisible Wall ( )
- Invisible wall types block movement and sound but do not affect vision.
- Draw Ethereal Wall ( )
- Ethereal wall types block vision and sound but do not block movement.
- Draw Door ( )
- Doors function as default walls, but can be opened, allowing for movement, vision and sound to pass through them.
- Draw Secret Door ( )
- Secret doors function as doors, but their interaction button is hidden from non-gamemaster users.
- Clone Wall ( )
- Cloning walls draws walls with the same configuration settings as the last wall edited or drawn.
- Force Snap to Grid ( )
- This toggle forces walls to snap to the scene's grid lines if the scene uses a square or hex grid type.
- Clear Walls ( )
- This button clears all existing walls on the scene.
To create a new wall, select a wall type from the Wall Controls palette, then left click and drag from the point where you want the wall to start to the point where you want to wall segment to end.
Connected wall segments can easily be created by holding Ctrl (or command, if you are using MacOS) while placing a wall, which creates a new wall from your cursor to the last-placed wall segment, and will continue creating chained walls from all future points create. You can cancel the placement of a wall segment by right-clicking before you place the second point of the wall.
A wall can be selected by left-clicking on one of its points. Holding the Alt key when selecting a wall point will select all walls directly or indirectly connected to that point. This allows you to move, delete or modify entire structures at once.
By default the wall tool attempts to snap to an invisible sub-grid on the canvas in order to assist users in linking wall segments together without a gap wherever possible. The precision of this grid is partially adaptive, changing on the size of the grid in use. Maps that have a grid of 50px will have 1/4 precision (and 5 snap points), while grids set to 100px will have 1/8 precision (9 snap points); grids set to 200px would have 1/16 precision (17 snap points).
In addition, enabling the "Force Grid Snapping" toggle will force the wall segment to snap to the nearest outside point of a grid square.
Wall segments can be further configured after they have been placed. Simply double-click on one of the points of a wall to edit the connected wall segment. Both points of the wall will enlarge to ndicate hich wall segment will be selected. You can double click multiple selected wall segments to edit all of them at once.
Movement restrictions determine whether tokens can move through those walls. Tokens being moved by a gamemaster user ignore movement restrictions if moved via mouse-based movement (dragging and dropping oken on a new location).
- None: Tokens can move freely through the wall segment.
- Normal: Tokens cannot move past the wall segment.
Light, Sight & Sound Restriction
Walls can have multiple perception restrictions set which affect how light, vision and sound are blocked. These restrictions have identical settings which are:
- None: Light, vision and sound passes through the wall unimpeded.
- Normal: Light, vision and sound does not pass through the wall segment.
- Limited: Light, vision and sound passes through this wall segment, but not past any "Limited" or "Normal" wall segments after it.
Wall direction determines which side of the wall applies the configured restrictions. Be default walls apply their restrictions to both sides. When a direction is applied to a wall it will have an arrow con laced on it which shows the direction of sight, sound and movement that is restricted.Both:
- Movement and Perception restrictions apply when the wall is viewed from either side.
- Restrictions apply only when the wall is viewed from the selected side.
Determines whether the configured wall segment functions as a door, and what kind of door it is.
- None: The wall segment is not a door and cannot be opened/closed.
- Door: The segment is a door and, if unlocked, can be opened/closed by any user with the Open and Close Doors permission.
- Secret: The segment is a door with no icon visible to Players and or Trusted Players, instead appearing as a normal wall until opened by a Gamemaster.
If the wall functions as a door, this determines its state. All newly created doors start closed and can be locked by right clicking the interaction icon.
- Closed: Any Movement or Perception restrictions apply, and the door can be opened by clicking on its icon.
- Open: Tokens can move and look freely through the wall, and the door can be closed by clicking on its icon.
- Locked: Any Movement or Perception restrictions apply, and the door cannot be opened until it's unlocked.
The Wall Controls toolbar, when enabled, allows the viewing, modification, and creation of walls. Activating this toolbar also provides quick buttons for a number of common wall types.
The default wall type restricts vision, movement, and sound. These walls are colored yellow on the Walls layer.
These walls prevent token movement, but allow limited vision; a token with vision can see past one terrain wall segment, but not two. These walls are ideal for roofed buildings or terrain features that that can be seen, but obscure objects behind them. Terrain walls are colored green.
These walls block token movement, but neither vision nor sound. Walls of this type are ideal for windows, or any transparent, but solid obstacle. They are colored cyan on the Walls layer.
These walls function opposite to Invisible walls; they block vision and sounds, but tokens can move freely through them. These walls may be useful for dark veils, curtains, or fake walls. They are colored light magenta on the Walls layer.
Doors are wall segments that can be interacted with to open or close. Doors made with the "Draw Doors" button on the Wall Controls toolbar restrict movement, vision, and sound until opened. A Gamemaster can additionally lock doors by right-clicking them, which will play a "locked" sound when a user attempts to open it. A locked door can be unlocked by a Gamemaster right-clicking the door's icon again. User roles can be configured to allow the opening or closing of unlocked doors via the Permission Configuration window. Doors are colored purple on the walls layer, but if opened will change to a light green. If locked, the door color will change to red on the wall layer.
These function similarly to doors, but the door icon is not visible to most users. A Gamemaster can open secret doors for players. These doors are colored dark magenta on the Walls layer. If locked, the door color will change to red on the wall layer.
Walls created with this tool are identical to the type you just placed or configured in a scene. For example: After placing and configuring a wall to be one-way secret door that doesn't block movement but blocks perception, you can use Clone Walls to quickly place more walls with the same configuration on the map.
To interact with Walls programmatically, consider using the following API concepts: