A modern P3D workbench for DayZ modding. Open a model, see it properly, fix everything the engine cares about, and get it into the game.
Bohemia's Object Builder is two tools in one: a 1998-era polygon modeller, and everything around the mesh. This replaces the second half. Modelling stays in Blender, where it is better anyway.
Unofficial. Not made by, affiliated with, or endorsed by Bohemia Interactive. DayZ is a trademark of Bohemia Interactive a.s.
- Opens MLOD P3D files and writes them back byte for byte identical, including files authored by Object Builder itself
- Imports FBX, OBJ, GLTF, GLB and Sketchfab zips, with scale detection and UV checks that run the same way on every import route
- Four-view viewport with face picking, move/rotate/scale gizmos, textured preview, back-face culling that matches how the engine renders, and a 1.8 m figure for scale
- LOD tools: add, duplicate, reorder, and generate a whole distance chain with a preview of each level
- Named selections, properties, mass, proxies and memory points, all editable
- Collision generation into the Geometry, View Geometry, Fire Geometry and PhysX LODs
- Textures: import a Substance Painter export and convert it properly, PBR to DayZ, then
build
.paaand write a matching.rvmat - Config generation for
config.cpp,model.cfgand Enforce scripts, from templates for inventory items, storage containers, static props, clothing, structures and vehicles - A validator that checks the things that silently break a model in game
- Build and test: pack a
.pboand launch DayZ with your mod plus DayZ Editor
Full walkthrough in docs/guide.md.
Download the .exe from
Releases and run it.
It updates itself from then on: a check on startup, the new version offered in the corner, and installed when you say so. Two channels, picked in Settings: Release for stable builds, Experimental for early ones that may break.
Or run from source:
npm install
npm run dev
That opens a browser at http://localhost:5177. Drag a .p3d onto it and everything except
file writing and the DayZ tools works.
For the desktop app, with the dev server running in another terminal:
$env:VITE_DEV_SERVER_URL = 'http://localhost:5177'
npm run app
To build the installer into release/:
npm run dist
Nothing, to open and inspect models. Node 20 or newer to run from source.
DayZ and DayZ Tools are only needed for the parts that talk to them: Buldozer preview, PAA
conversion, PBO packing and launching the game. Those features check for the tools and tell
you what is missing rather than failing quietly. The work drive (P:) is expected where DayZ
Tools puts it.
Note that AddonBuilder is Steam licensed, so Steam has to be running before you can pack a PBO. The app checks and warns.
| docs/guide.md | Walkthrough, from importing a mesh to placing it in game |
| docs/architecture.md | How the code fits together |
| docs/dayz-notes.md | Engine and toolchain facts this project had to work out |
| CONTRIBUTING.md | Setup, commit format, how to send a change |
| DESIGN.md | Why the project is scoped the way it is |
docs/dayz-notes.md is worth a read even if you never open this app. It
covers the positional Super shader stages, why ImageToPAA fails on a renamed TGA, why an
empty Geometry LOD lets players walk through your wall, and other things that cost real days.
Usable, and used, but young. The model engine is the most tested part and is covered by byte-identical round-trip tests against real fixtures. The UI moves faster and rougher edges live there.
Binarized (ODOL) P3Ds cannot be opened. That is a property of the format rather than a missing feature: binarization is one-way and Object Builder cannot reverse it either.
Windows only in practice. Nothing in the core is Windows specific, but every external tool it drives is.
Issues and pull requests are welcome. CONTRIBUTING.md has the setup, the commit format and the one architectural rule that keeps this maintainable.
If you are reporting a bug, attaching the .p3d turns most of them from a guessing game into
a short fix.
MIT. See LICENSE.
