dayz-launch-objectbuilder
Opens DayZ Object Builder from the terminal with support for specific file or mod folder targeting.
Install
mkdir -p .claude/skills/dayz-launch-objectbuilder && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18228" && unzip -o skill.zip -d .claude/skills/dayz-launch-objectbuilder && rm skill.zipInstalls to .claude/skills/dayz-launch-objectbuilder
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Open Object Builder (DayZ Tools' .p3d model editor) from the CLI, optionally pointed at a specific .p3d file or mod folder. Spawns detached so the shell returns immediately. Requires /dayz-setup-objectbuilder to have been run once on the machine. Replaces clicking through Steam → DayZ Tools → Object Builder → File → Open.Key capabilities
- →Launch Object Builder from the CLI
- →Optionally open a specific .p3d file
- →Optionally set the working directory to a mod folder
- →Spawn Object Builder as a detached process
- →Verify registry configuration for Object Builder
How it works
The skill locates ObjectBuilder.exe, verifies its registry configuration, and then launches it as a detached process. It can also pre-load a .p3d file or set the working directory based on user arguments.
Inputs & outputs
When to use dayz-launch-objectbuilder
- →Open 3D model in Object Builder
- →Launch editor for specific mod folder
- →Open .p3d file
About this skill
Path note:
<skill-dir>in commands below is the absolute path of this skill's folder. When the agent loads this skill the harness exposes the skill's base directory; substitute it before running. Sibling skills are reached via<skill-dir>\..\dayz-X\.
/dayz-launch-objectbuilder
Open Object Builder without leaving the terminal. Optionally pre-loads a .p3d: one you name with --file, or the one model anywhere under a mod's P:\<ModName>\ folder with --mod.
Follow .claude/skills/_shared/dayz-conventions.md.
What it does
- Gates on
/dayz-preflight(as/dayz-launch-workbenchdoes), so an unmountedP:\fails with preflight's fix before--modlooks under it. - Resolves the open target:
--file <path>: that.p3d. A relative path is looked up under the project root first, then the current folder; when neither has it, the error lists both paths it tried. Fails if the path is missing or is a folder (Object Builder opens model files, not folders); warns if the extension isn't.p3d.--mod <ModName>: checks the name against/dayz-new-mod's naming rule (a letter first, then letters, digits or underscores, at most 64 characters; the sameNAME_PATTERN, loaded from itsnew_mod.py) and refuses the top-levelP:\folders that are not mods (vanilla data such asP:\DZ,P:\scriptsorP:\gui, and theP:\Modsjunction; the sameRESERVED_P_FOLDERSlist/dayz-launch-workbenchuses, loaded from itslaunch.py) before joining it ontoP:\. It then takes the.p3danywhere underP:\<ModName>\(every subfolder, sodata\,models\or any other layout). Object Builder opens model files, not folders, so the skill never passes it a directory. Fails if the name is invalid or reserved, or the mod folder is missing. With no.p3dyet (a fresh/dayz-new-modscaffold), it says so and opens Object Builder with no model. With several, it lists the first 20 (plus a count of the rest) and asks for--file.- Neither: no argument; Object Builder opens its last-used file.
- Locates
ObjectBuilder.exevia DayZ Tools. - Verifies the registry has been populated by
/dayz-setup-objectbuilder(with that skill's own check, loaded from itssetup.py), and fails with a hint if not. - Refuses if
ObjectBuilder.exeis already running (checked withtasklist, using/dayz-setup-objectbuilder's own check) and tells you to switch to that window, so a second instance never opens on the same.p3d. Iftasklistitself fails, it prints a[WARN]and carries on as if Object Builder were not running. - Spawns
ObjectBuilder.exedetached, with working directory<DayZ Tools>\Bin\ObjectBuilder\, so the shell returns immediately. The window may take a few seconds to appear. - Watches the new process for about a second. If it has already exited, the skill reports a failure with its exit code (exit 1) instead of printing "launched".
How to run
Just open the editor:
python "<skill-dir>\launch.py"
Open a specific .p3d:
python "<skill-dir>\launch.py" --file P:\MyMod\data\model.p3d
Open a mod's model:
python "<skill-dir>\launch.py" --mod MyMod
(Requires P:\MyMod\, typically created by /dayz-new-mod. Opens the one .p3d anywhere under it, or the editor with no model when there is none yet. With several, use --file.)
When to run
- Anytime you need to inspect or edit a
.p3dmodel. - After
/dayz-new-modproduced a scaffold and you want to drop a model intodata/. - Before adding LODs, named selections, or memory points to a custom asset.
Output
DayZ Object Builder launcher
DayZ preflight
[OK] P:\ is mounted
[OK] DayZ Tools found: C:\...\steamapps\common\DayZ Tools
[OK] Vanilla data found: P:\dz
[OK] P:\Mods -> C:\...\steamapps\common\DayZ\!Workshop
Preflight complete.
[OK] ObjectBuilder.exe: ...\Bin\ObjectBuilder\ObjectBuilder.exe
[OK] Registry configured
[INFO] Opening: P:\MyMod\data\model.p3d
[OK] Object Builder launched (PID 12345). The window may take a few seconds to appear.
Flag rules
--fileand--modare mutually exclusive (argparse rejects both together); pass one or neither.--filetakes an absolute path, or a relative one. A relative path is tried under the project root first, then under the current folder, and the first that exists wins; if neither exists, the error names both. The root is found the way the other DayZ skills find it (/dayz-init'sfind_project_dir()):CLAUDE_PROJECT_DIR, else the nearest folder at or above the current one that holds the/dayz-initproject cache, else the clone that holds the skill scripts when that clone has the cache, else the current folder. So--file data\model.p3dworks both from the project root (data\model.p3dthere) and fromworkspace\<ModName>\(its owndata\model.p3d). Warns if the extension isn't.p3d(Object Builder may refuse it).--modis just the mod name; the skill opens the single.p3danywhere underP:\<ModName>\, or the editor with no model when there is none. Fails, right after preflight, if the name breaks the naming rule, names a vanilla or reservedP:\folder (for example--mod DZ; pass a vanilla model with--fileinstead), or the folder isn't there. With more than one.p3dit lists up to 20 of them, then how many more there are.
Why detached
The editor is spawned detached (shared DETACH_FLAGS in _shared/skill_helpers.py) so the terminal returns at once and closing it doesn't kill Object Builder; the printed PID identifies the process.
Do not
- Don't run before
/dayz-setup-objectbuilderon a fresh machine — the skill will tell you to run setup first. - Don't rely on a relative
--filewhen the same relative path exists under both the project root and the current folder: the project root's copy wins. Pass an absolute path to be sure which model opens. - Don't try to open a second instance: the skill refuses while
ObjectBuilder.exeis running. Switch to the open window, or close it and re-run.
When not to use it
- →Before /dayz-setup-objectbuilder has been run on the machine
- →When passing both --file and --mod arguments simultaneously
- →When spam-launching multiple instances against the same file
Prerequisites
Limitations
- →Requires /dayz-setup-objectbuilder to have been run once
- →--file and --mod arguments are mutually exclusive
- →Does not support spam-launching multiple instances against the same file
How it compares
This skill automates the launch of Object Builder from the command line with optional file or mod context, which is more efficient than navigating through graphical menus.
Compared to similar skills
dayz-launch-objectbuilder side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| dayz-launch-objectbuilder (this skill) | 0 | 5mo | Review | Beginner |
| webapp-testing | 353 | 6mo | Review | Intermediate |
| resolve-conflicts | 81 | 11mo | Review | Intermediate |
| telegram-bot-builder | 106 | 9mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
webapp-testing
anthropics
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
resolve-conflicts
antinomyhq
Use this skill immediately when the user mentions merge conflicts that need to be resolved. Do not attempt to resolve conflicts directly - invoke this skill first. This skill specializes in providing a structured framework for merging imports, tests, lock files (regeneration), configuration files, and handling deleted-but-modified files with backup and analysis.
telegram-bot-builder
davila7
Expert in building Telegram bots that solve real problems - from simple automation to complex AI-powered bots. Covers bot architecture, the Telegram Bot API, user experience, monetization strategies, and scaling bots to thousands of users. Use when: telegram bot, bot api, telegram automation, chat bot telegram, tg bot.
dev-browser
SawyerHood
Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.
openspec-onboard
studyzy
Guided onboarding for OpenSpec - walk through a complete workflow cycle with narration and real codebase work.
codex-cli-bridge
alirezarezvani
Bridge between Claude Code and OpenAI Codex CLI - generates AGENTS.md from CLAUDE.md, provides Codex CLI execution helpers, and enables seamless interoperability between both tools