# Game Asset Slots This file records project-wide asset slots that are consumed by engine-backed systems. Keep final assets in these folders so Windows and Switch builds can copy them into `assets/` and RomFS without code changes. ## Global Slots | Slot | Path | Engine path | Notes | | --- | --- | --- | --- | | Debug UI font | `fonts/debug.ttf` | `FontManager` + `TextSprite` | Optional. UI falls back to colored bars if missing. | | UI font | `fonts/ui.ttf` | `FontManager` + `TextSprite` | Optional fallback font name for UI. | | Stage music | `music/stage_01.ogg` | `Music::loadFromFile` | Optional BGM cue id: `stage_01`. | | Player jump SFX | `sounds/player_jump.wav` | `Sound::loadFromFile` | Optional cue id: `player_jump`. | | Player attack SFX | `sounds/player_attack.wav` | `Sound::loadFromFile` | Optional cue id: `player_attack`. | | Battle zone enter SFX | `sounds/battle_zone_enter.wav` | `Sound::loadFromFile` | Optional cue id: `battle_zone_enter`. | | Audio database | `audio/audio.xml` | `AudioDatabase` | Optional cue database; can override direct file lookup. | | PVF scripts | `Script.pvf` | `PvfArchive` / `ScriptParser` | Optional `.map` and `.ani` source. | | Image packs | `ImagePacks2/*.npk` | `NpkArchive` / `Sprite::createFromNpk` | Optional packed sprite source. | | Sound packs | `SoundPacks/*.npk` | `SoundPackArchive` | Optional packed sound source. | ## Character Animation Slots Current temporary PNG spritesheets stay in `character/male/`. If PVF/NPK assets are provided later, the game will try these engine paths first: | State | ANI path | NPK IMG path | PNG fallback | | --- | --- | --- | --- | | Idle | `character/male/idle.ani` | `sprite/character/male/idle.img` | `character/male/Male_spritesheet_idle.png` | | Run | `character/male/run.ani` | `sprite/character/male/run.img` | `character/male/Male_spritesheet_run.png` | | Punch | `character/male/punch_1.ani` | `sprite/character/male/punch_1.img` | `character/male/Male_spritesheet_punch_1.png` |