Unreal Death Slayer
Overview
Section titled “Overview”Death Slayer is a UE5 action game featuring intense combat mechanics and dynamic environments. This document tracks the cooked, Shipping release (-clientconfig=Shipping, -cook -pak) compiled from the external game repository KBVE/deathslayer and distributed to itch.io under kbve/deathslayer.
The game is built using Unreal Engine 5.8.0 with cross-platform support for Windows, Linux, and macOS, featuring:
- Fast-paced combat system
- Dynamic environment interactions
- Cross-platform multiplayer support (planned)
- Steam and itch.io distribution
Pipeline
Section titled “Pipeline”pipeline: unreal_game → ci-main.yml dispatches ci-unreal.yml (task: game) → ci-unreal-build.yml (mode: game) whenever the MDX version: here outpaces version.toml, or source_path files change.
The engine.external_repo_url configuration makes the builder clone the external KBVE/deathslayer repository (default branch: main) instead of using the monorepo shell. The version gate and version_toml tracker remain in this monorepo for CI/CD orchestration.
Build Matrix
Section titled “Build Matrix”engine.build_targets:
- Win64 — Native build on the
UE5-WinKubeVirt VM usingRunUAT.bat - Linux —
BuildCookRunin the cached Epic UE Docker image onarc-runner-ue - Mac — Native build on the
[self-hosted, macOS, ARM64]runner with code signing and notarization
Plus the bundled Linux dedicated server (shell_path → task: server): the deathslayerServer target (server_config: Shipping) is cooked from the monorepo shell and archived to the appropriate storage location for Agones fleet deployment.
macOS Code Signing
Section titled “macOS Code Signing”macOS builds are automatically signed and notarized using the following GitHub secrets:
APPLE_CERTIFICATE— Base64-encoded .p12 certificateAPPLE_CERTIFICATE_PASSWORD— Certificate passwordAPPLE_SIGNING_IDENTITY— Team ID or signing identityAPPLE_ID— Apple Developer account emailAPPLE_PASSWORD— App-specific passwordAPPLE_TEAM_ID— Apple Team ID for notarization
The build pipeline handles entitlements for network access and sandboxing automatically.
Distribution
Section titled “Distribution”Ships to itch.io kbve/deathslayer, one channel per platform:
windows— Windows builds (Win64)linux— Linux buildsmacos— macOS builds (signed and notarized)
Version tracking via butler’s --userversion parameter. Requires the butler_api secret for automated uploads.
Desktop Launcher
Section titled “Desktop Launcher”A cross-platform desktop launcher is available at apps/deathslayer/deathslayer-launcher, built with:
- Tauri 2 — Rust backend for native performance
- React 19 — Modern UI framework
- Vite — Fast development and build tooling
The launcher provides:
- Automatic game updates
- Version management
- Launch configuration
- News and announcements
- Cloud save management (planned)
Launcher Development
Section titled “Launcher Development”# Run launcher in development modenx run desktop-deathslayer:dev
# Build launcher for productionnx run desktop-deathslayer:build:tauriRelease Process
Section titled “Release Process”- Bump
version:in this MDX file aboveversion.toml(apps/deathslayer/unreal-deathslayer/version.toml) - Run
npx nx run astro-kbve:sync:ci-manifestto update the CI manifest - Commit and push to trigger the build pipeline
- The next
ci-mainrun fans out the game build + itch upload for this entry - Post-publish atom PR updates
version.tomlautomatically
Source: External KBVE/deathslayer
Section titled “Source: External KBVE/deathslayer”Builds source from the external game repository KBVE/deathslayer (default branch: main). The builder clones it with the GitHub PAT, then materializes engine.project_path (deathslayer/ — the directory holding DeathSlayer.uproject).
Content blobs are managed via Git LFS. The repository’s .lfsconfig points to the authenticated LFS endpoint, which the builder normalizes to the authenticated HTTPS ingress route at build time.
When engine.external_repo_url is empty, the builder falls back to the monorepo shell at apps/deathslayer/unreal-deathslayer.
Development
Section titled “Development”Local Setup
Section titled “Local Setup”# Clone the external game repositorygit clone https://github.com/KBVE/deathslayer.git
# Pull LFS contentgit lfs pull
# Open in Unreal Editor# File → Open Project → deathslayer/DeathSlayer.uprojectTesting
Section titled “Testing”# Run automated testsnx run unreal-deathslayer:test
# Run the game in editor# Use Unreal Editor → Play (Alt+P)Architecture
Section titled “Architecture”- Game Mode:
DeathSlayerGameMode— Core game rules and mechanics - Main Menu:
/Game/Menus/L_MainMenu— Entry point and UI - Game World:
/Game/Maps/L_DeathSlayerWorld— Primary game level
Roadmap
Section titled “Roadmap”- Initial project setup
- Core combat mechanics
- Basic environment design
- Multiplayer networking
- Steam integration
- Achievement system
- Cloud save support
- Mobile platform support (iOS/Android)
