Xylex Slayer Logo Skin
current version: 1.2.0
Rust-first workspace for turning the Slayer RTX pack into a jet-black Xylex-branded DOOM Eternal mod.
The main entrypoint is the doom-eternal Rust CLI:
cargo run -p doom-eternal -- status
If you want the UI, use the Tauri desktop studio in desktop/.
What This Repo Does
- imports fresh SAMUEL texture exports into the repo editable tree
- can pack those exports into chunked mirror zips for remote hosting
- applies the Xylex logo placement map and jet-black finish pass
- rebuilds an installable mod zip
- installs the mod into DOOM Eternal through the native Rust injector flow
- stages a publishable
base/folder foridStudio
Current Defaults
The repo currently resolves to:
- source pack:
./rtx-slayer - source set:
set52 - working target set:
set16 - editable root:
./build/rtx-editable-source-set16 - output pack root:
./dist/xylex-rtx-slayer-pack - output zip:
./dist/xylex-rtx-slayer-pack.zip - game root on this machine:
C:\Program Files (x86)\Steam\steamapps\common\DOOMEternal - expected SAMUEL export roots on this machine:
C:\Users\floris\Downloads\exportsandC:\Users\floris\Downloads\modelExports
Use cargo run -p doom-eternal -- examples when you want the fully expanded local paths for this checkout.
How To
1. Check What The CLI Sees
cargo run -p doom-eternal -- status
cargo run -p doom-eternal -- examples
status shows the detected source pack, source set, target set, editable root, output zip, converter path, game root, installed mod versions, and idStudio root.
examples prints copy/paste PowerShell commands with all local paths already filled in.
2. Get Fresh Exports From SAMUEL
Download and launch SAMUEL through the Rust CLI:
cargo run -p doom-eternal -- tools download samuel
cargo run -p doom-eternal -- tools launch samuel
Export textures into:
C:\Users\floris\Downloads\exportsC:\Users\floris\Downloads\modelExports
Then import them:
cargo run -p doom-eternal -- import `
--samuel-export-root "C:/Users/floris/Downloads/exports" `
--model-export-root "C:/Users/floris/Downloads/modelExports"
You can omit both flags if you want the CLI to auto-detect those default Downloads folders.
2b. Pack A Hosted Mirror From The Current Exports
cargo run -p doom-eternal -- mirror pack `
--samuel-export-root "C:/Users/floris/Downloads/exports" `
--model-export-root "C:/Users/floris/Downloads/modelExports" `
--output-root "./dist/samuel-export-mirror" `
--chunk-size-mb 24
That writes:
./dist/samuel-export-mirror/mirror-manifest.json./dist/samuel-export-mirror/mirror-part-0001.zip- additional
mirror-part-*.zipchunks as needed
Host those files on any static mirror. Later runs can hydrate from that URL instead of local Downloads exports.
3. Build The Mod
Craft from the current repo defaults:
cargo run -p doom-eternal -- craft
The current craft path reuses cached target outputs when nothing relevant changed, so small placement tweaks do not force a full rebuild every time.
3b. Build A Blank Black Variant
Use the separate blank config when you want a clean black set with no Xylex decals and no leftover RTX badge or helmet sigil:
cargo run -p doom-eternal -- craft `
--placement-config "./config/rtx-pack-blank-black-placements.json" `
--output-mod-root "./dist/xylex-blank-black-pack" `
--zip-output "./dist/xylex-blank-black-pack.zip"
That writes the blank variant to:
./dist/xylex-blank-black-pack./dist/xylex-blank-black-pack.zip
4. Fast Path: Import, Build, And Install In One Run
cargo run -p doom-eternal -- run `
--mirror-url "https://example.com/doom-mirror" `
--game-root "C:/Program Files (x86)/Steam/steamapps/common/DOOMEternal" `
--install `
--install-tools
That does:
- import fresh exports
- or download the hosted mirror chunks into the local cache when
--mirror-urlis used - craft the pack
- install the zip into the game
- download injector tooling if needed
- run the injector worker chain from Rust
5. Install A Built Zip Manually
cargo run -p doom-eternal -- install `
--mod-zip "./dist/xylex-rtx-slayer-pack.zip" `
--game-root "C:/Program Files (x86)/Steam/steamapps/common/DOOMEternal" `
--install-tools
This writes repo-local backup manifests under ./build/game-mod-backups/.
If you want the CLI to show what is currently enabled in Mods/ and let you choose from the built zips under dist/, use the interactive picker:
cargo run -p doom-eternal -- install `
--picker `
--game-root "C:/Program Files (x86)/Steam/steamapps/common/DOOMEternal" `
--install-tools
The picker:
- prints the currently enabled mod zip entries from
DOOMEternal/Mods - reads
nameandversionfrom each candidate zip'sEternalMod.json - records installed metadata in
DOOMEternal/Mods/.xylex-mods.json
6. Publish Or Package Through idStudio
Stage the current crafted output into a normal idStudio base/ folder:
cargo run -p doom-eternal -- stage-idstudio
On this machine that stages into:
C:\Users\floris\Documents\id Software\idStudio\xylex-rtx-slayer-pack\base
Then:
- open
idStudio - package from that staged
base/folder - publish through
My Creations
7. Restore The Previous Install
cargo run -p doom-eternal -- restore
Or restore a specific backup manifest:
cargo run -p doom-eternal -- restore `
--manifest "./build/game-mod-backups/<timestamp>/backup-manifest.json"
Desktop Studio
The desktop app wraps the same Rust workflow with a visual placement editor and preview:
cd desktop
pnpm tauri:dev
Use it when you want to:
- move logos visually
- reload the preview texture
- run import, craft, install, and restore from one surface
- inspect the resolved repo paths and tool state
If the preview is blank, the usual cause is that there is no editable PNG yet for the current target. Run import or craft once first so the preview has something real to load.
More detail lives in desktop/README.md.
Useful Commands
cargo run -p doom-eternal -- status
cargo run -p doom-eternal -- examples
cargo run -p doom-eternal -- tools download samuel
cargo run -p doom-eternal -- tools download injector
cargo run -p doom-eternal -- import
cargo run -p doom-eternal -- mirror pack
cargo run -p doom-eternal -- mirror fetch --mirror-url "https://example.com/doom-mirror"
cargo run -p doom-eternal -- craft
cargo run -p doom-eternal -- install --install-tools
cargo run -p doom-eternal -- install --picker --install-tools
cargo run -p doom-eternal -- stage-idstudio
cargo run -p doom-eternal -- restore
cargo run -p doom-eternal -- repair
cargo run -p doom-eternal -- clean
Repo Layout
crates/doom-eternal/owns the Rust CLI and workflow logicconfig/rtx-pack-logo-placements.jsonowns the placement map and target routingconfig/rtx-pack-blank-black-placements.jsonowns the no-logo black variantassets/source/logos/stores the logo source PNGsrtx-slayer/is the current source packbuild/holds editable textures, tool cache, staged runtime files, and backupsdist/holds the rebuilt mod output and final zipdesktop/is the Tauri placement editor and workflow UI