FAQ — Wall Plugin
FAQ
Frequently asked questions about the CodPassionWall plugin.
General
What is this plugin?
CodPassionWall is a modular wall plugin for Unreal Engine. It lets you place and edit walls at runtime (from Blueprint) and in the editor. Walls snap together at corners, and doors or windows can be added via the reveal system.
What Unreal Engine versions are supported?
The plugin supports Unreal Engine 5.2 and later. Support for new Unreal Engine versions is added continuously.
If your engine version is not yet listed, please reach out on the Discord server and the developer will work on adding support.
What platforms are supported?
Target platforms: Windows and Linux. Development platform: Windows.
Can I use this plugin in a packaged and shipped game?
The plugin is distributed under the Standard License (Fab EULA). Please review the Fab EULA at fab.com for the exact terms regarding commercial use and distribution.
Is there a free demo?
Yes. A free demo is available at: https://codingpassionyt.itch.io/codingpassionpluginsdemo
Where can I get support?
Join the Discord server: https://discord.gg/Yf55rYVdKu
Video tutorials are available on the YouTube channel: https://www.youtube.com/channel/UCFLgubXOSD4OzN03EkPCanw
Does the plugin support multiplayer?
Network replication is not included out of the box. Wall actors are local by default.
The Fab listing states that replication is “easy to include”, suggesting the architecture is compatible with adding replication manually.
How do I place walls at runtime?
Spawn PlaceableWall_BP (or AWallLineActor), then each frame call Set Start And End and
Construct Wall to follow the player’s cursor. Call Positioning Finalised when the player
confirms the placement.
See Wall Placement for the full workflow.
How do I create a custom door or window shape?
Create a Blueprint child of ARevealBase. Override Draw Your Reveal Form to draw the hole shape
onto a canvas:
- White pixels = hole
- 1 pixel = 1 cm²
See Doors and Windows – Creating a custom reveal shape.
Why is my wall crashing at a certain length?
A wall longer than approximately 16,384 Unreal units (~163 m) will crash due to the engine’s maximum texture dimension limit.
Fix: Split the wall into segments of no more than ~30,000 units (~30 m) each.
See Troubleshooting – Maximum wall length.
Why do walls have different heights?
The PlaceableWall_BP Blueprint actor defaults to wall_height = 200. The editor placement tool
defaults to wall_height = 260. If you mix both methods, walls may appear at different heights.
Set heights explicitly to keep them consistent. See Troubleshooting – Wall height mismatch.
Does wall painting save and load?
The save/load system stores paint pixel data in FWallSurfaceData inside UWallSaveGame.
The structures are present in the code.
How do I save and load walls?
Use UWallGameSubsystem (accessed via Get World Subsystem in Blueprint):
GetWorldSubsystem<UWallGameSubsystem> -> Save Walls (SlotName, UserIndex)GetWorldSubsystem<UWallGameSubsystem> -> Load Walls (SlotName, UserIndex)Leave SlotName empty to use the auto-generated slot name based on the map name.
For loading, register a Blueprint that implements IWallLoadListener before calling Load Walls.
Implement On Wall Lines Loaded to spawn wall actors from the loaded data.
See also the editor panel’s Save Walls and Load Walls buttons in Build Mode.
Why does the door not let my player through?
Reveals cut a visual hole in the wall texture, but they do not modify physics collision on the wall mesh. The player cannot physically walk through the opening without additional setup.
See Doors and Windows – Collision note for the recommended workarounds.
What is a “reveal”?
A reveal is an actor (a Blueprint child of ARevealBase) that creates an opening in a wall. It defines:
- A mesh (the door or window frame)
- A hole-mask texture that tells the wall where to cut the opening
See Doors and Windows.
What is a “Line ID”?
Every wall actor has an internal line_id (an integer) that uniquely identifies it within the plugin’s
line management system. It is used as the key in save/load data maps (textures, dimensions, reveals).
The line_id is assigned automatically and is not intended to be set manually.