An Unreal Engine 5.7 editor plugin that imports Star Wars: Battlefront (2004) and Star Wars: Battlefront II (2005) munged LVL files into native UE assets.
Drop an LVL file into the Content Browser to import textured meshes, advanced material instances, terrain, world layout actors, lighting, regions, skydome geometry, barriers, hint nodes, and per-asset SWBF metadata.
- Full LOD support
- Collision geometry from LVL collision data
- Extraction and creation of
UTexture2Dassets from LVL texture data
- Auto-created
UMaterialInstanceConstantassets from SWBF material data - Single master parent material (
M_SWBF_MasterMaterial) covers all SWBF render flag combinations
- Landscape mode: Imports SWBF terrain as
ALandscapewith heightmap conversion, layered material (LandscapeLayerBlend), painted weightmaps, and per-layerULandscapeLayerInfoObjectassets - StaticMesh mode: Imports terrain as a
UStaticMeshusing the FMeshDescription pipeline - Import mode configurable in Editor Settings
- Spawns actors at original SWBF world positions with correct coordinate conversion
- Directional, point, and spot lights
- Ambient top/bottom colors mapped to
ASkyLight,AExponentialHeightFog, andASkyAtmosphere
- Box, sphere, and cylinder trigger volumes at original positions and sizes
- Typed region spawning based on SWBF name prefix:
soundspace- Audio Volumedeathregion- Kill Z Volumesoundstream- Ambient Sound actormapbounds- Level Bounds actordamageregion- Pain Causing Volume- Unrecognized prefixes fall back to generic trigger volumes
- Equirectangular UV dome geometry with seamless panoramic rendering
ASWBFBarrierActorwithUNavModifierComponentusing a non-navigable nav area
- Billboard markers with
UTextRenderComponentshowing type name
- All spawned actors assigned to their correct DataLayer
USWBFAssetUserDatasubclasses attached to all imported assets- SWBF source name, level name, and LVL file path stored per asset
- Asset Registry tags (
SourceName,SourceLevel) exposed as Content Browser columns
- Import mode (Landscape vs StaticMesh for terrain) configurable via
Edit > Editor Settings > ZeroEditorTools - Settings persist per-project via
UDeveloperSettings
- Unreal Engine 5.7 (Previous UE versions should work, but it was developed on 5.7)
- Windows only (Win64 target)
- All dependencies are vendored so no external installs required
Vendored dependencies:
- LibSWBF2 - C++ library for reading SWBF munged files
- glm - Math library (included with LibSWBF2)
- fmt - Formatting library, header-only mode
- Download the latest release
- Place the
ZeroEditorToolsfolder inside your project'sPlugins/directory:YourProject/ Plugins/ ZeroEditorTools/ <-- place here ZeroEditorTools.uplugin Source/ Content/ - Open (or restart) the Unreal Editor
- Enable the plugin via
Edit > Pluginsif it is not already enabled
Two methods are supported:
Method 1 - File menu:
- In the Unreal Editor, go to
File > Import Into Level... - Select your munged
.lvlfile - Choose the destination folder in the Content Browser
- Click Import
Method 2 - Drag and drop:
- Drag the
.lvlfile directly into the Content Browser - Choose the destination folder in the dialog that appears
- Click Import
A few configuration settings exist in Edit > Editor Settings > Plugins > ZeroEditorTools
- LibSWBF2
- The SWBF modding community for documentation of the LVL format and material flag semantics