mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-11 05:53:23 -05:00
134 lines
4.7 KiB
YAML
134 lines
4.7 KiB
YAML
emulator: TheXTech
|
|
type: standalone
|
|
core_classification: game_engine
|
|
source: "https://github.com/TheXTech/TheXTech"
|
|
upstream: "https://github.com/TheXTech/TheXTech"
|
|
profiled_date: "2026-10-04"
|
|
source_commit: "48f15208ff2857985d3534f191dab494ea3cd3d0"
|
|
display_name: "TheXTech"
|
|
cores: []
|
|
systems: [smbx]
|
|
|
|
notes: |
|
|
C++ reimplementation of the SMBX 1.3 engine. The engine itself ships
|
|
no game assets; an asset pack is probed at startup from
|
|
AppPathManager::assetsSearchPath() and the first pack with a valid
|
|
graphics/ui/ directory is used.
|
|
ref: src/main/asset_pack.cpp:249-340 (s_find_asset_packs,
|
|
s_scan_asset_pack), lib/AppPath/private/app_path.cpp:135-170
|
|
|
|
A pack is accepted when it carries graphics/ui/ plus an identification
|
|
file. Two schemas are recognized:
|
|
_meta.ini modern asset pack (engine field "TheXTech", platform
|
|
field matching the running target, pack-id)
|
|
gameinfo.ini legacy SMBX-style descriptor read under [android]
|
|
ref: src/main/asset_pack.cpp:138-212
|
|
|
|
Three images are loaded unconditionally to render the pack-selection
|
|
menu; without them the pack is rejected ("Could not load UI assets
|
|
from possible asset pack").
|
|
ref: src/main/asset_pack.cpp:115-117, 285-291
|
|
|
|
TheXTech is content-agnostic. The reference packs that TheXTech
|
|
releases alongside the engine are the SMBX 1.3 asset pack
|
|
(`thextech-assets-smbx13`) and the free Adventures of Demo pack
|
|
(`thextech-assets-adventures-of-demo`); any pack that satisfies the
|
|
structure above runs.
|
|
|
|
files:
|
|
# ================================================================
|
|
# Asset pack identification files (one of the two is required)
|
|
# ================================================================
|
|
|
|
- name: "_meta.ini"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/asset_pack.cpp:138-168 (modern asset pack schema)"
|
|
note: "Modern asset pack descriptor. [content] engine=TheXTech + pack-id."
|
|
|
|
- name: "gameinfo.ini"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/asset_pack.cpp:169-180 (legacy schema)"
|
|
note: "Legacy SMBX descriptor. [game] id + [android] logo/background."
|
|
|
|
# ================================================================
|
|
# UI assets probed to validate an asset pack
|
|
# ================================================================
|
|
|
|
- name: "thextech_128.png"
|
|
category: game_data
|
|
path: "graphics/ui/icon/thextech_128.png"
|
|
required: true
|
|
source_ref: "src/main/asset_pack.cpp:115 (assets_icon)"
|
|
note: "Pack icon. Loaded during pack scan."
|
|
|
|
- name: "MenuGFX2.png"
|
|
category: game_data
|
|
path: "graphics/ui/MenuGFX2.png"
|
|
required: true
|
|
source_ref: "src/main/asset_pack.cpp:116 (logo_image_path_default), 285-291"
|
|
note: "Main menu logo. Pack rejected if this image fails to load."
|
|
|
|
- name: "background2-2.png"
|
|
category: game_data
|
|
path: "graphics/background2/background2-2.png"
|
|
required: true
|
|
source_ref: "src/main/asset_pack.cpp:117 (bg_image_path_default)"
|
|
note: "Menu background. Covered by the UI-assets gate."
|
|
|
|
# ================================================================
|
|
# Core content directories (engine iterates on disk, filenames are
|
|
# the pack's own; the directory contract is what the engine checks)
|
|
# ================================================================
|
|
|
|
- name: "graphics/"
|
|
category: game_data
|
|
required: true
|
|
source_ref: "src/main/asset_pack.cpp:275-291 (DirMan::exists(root + \"graphics/ui/\"))"
|
|
note: "Pack validation requires graphics/ui/ to exist."
|
|
|
|
- name: "sound/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/load_gfx.cpp:443 (LoadGFXFromList), src/sound.h"
|
|
note: "SFX directory read from sounds.ini. Game runs without sounds."
|
|
|
|
- name: "music/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/sound.cpp (music loader)"
|
|
note: "Music tracks read from music.ini."
|
|
|
|
- name: "sounds.ini"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/sound.cpp (SFX index file)"
|
|
|
|
- name: "music.ini"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/sound.cpp (music index file)"
|
|
|
|
- name: "intro/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/game_main.cpp (intro level loader)"
|
|
note: "Intro level episode; played before the main menu when present."
|
|
|
|
- name: "outro/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/game_main.cpp (outro episode)"
|
|
|
|
- name: "worlds/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/game_main.cpp (world loader)"
|
|
note: "Default world episodes shipped with the pack."
|
|
|
|
- name: "battle/"
|
|
category: game_data
|
|
required: false
|
|
source_ref: "src/main/game_main.cpp (battle mode levels)"
|