Skip to content

TheXTech - RetroBIOS

Type standalone
Classification Game engines
Source https://github.com/TheXTech/TheXTech
Version unknown
Profiled 2026-10-04
Systems smbx
Technical notes

C++ reimplementation of the SMBX 1.3 engine. The engine itself ships no game assets; asset packs are searched at startup under every root of AppPathManager::assetsSearchPath(): the root itself (legacy layout), then each directory or archive of its assets/ folder. ref: src/main/asset_pack.cpp:249-378 (s_find_asset_packs), lib/AppPath/private/app_path.cpp:135-181

A directory is scanned when it carries graphics/ui/, an archive when it carries _meta.ini. Two descriptors are recognized: _meta.ini archive pack ([content] engine "TheXTech", platform matching the running target, pack-id) gameinfo.ini directory pack ([game] id, menu images under [android]) A pack under assets/ is ignored when no id could be read; the legacy root pack needs none. ref: src/main/asset_pack.cpp:125-207, 334-339

The pack-selection menu loads an icon, a logo and a background. Only the logo is checked: without it the pack is ignored ("Could not load UI assets from possible asset pack"). ref: src/main/asset_pack.cpp:115-117, 225-233, 282-283

The selected pack is then loaded by GFX_t::load, which fails when one of the UI images it requires from graphics/ui/ is missing. ref: src/gfx.cpp:121-229, src/main/asset_pack.cpp:415-438

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.

Paths below are written from a search root. TheXTech/ is the name the build gives its user directory (THEXTECH_DIRECTORY_PREFIX) and its system directory; the application directory is searched the same way. ref: CMakeLists.txt:297, lib/AppPath/private/app_path_unix.cpp:46, 103, lib/AppPath/private/app_path.cpp:87

19 files | 3 required, 16 optional | 19 in repo, 0 missing Categories: 19 game data

assets/ optional in repo game_data directory

gameinfo.ini optional in repo game_data

thextech.ini optional in repo game_data

thextech_128.png optional in repo game_data

MenuGFX2.png required in repo game_data

background2-2.png optional in repo game_data

graphics/ required in repo game_data directory

fonts/ optional in repo game_data directory

languages/ optional in repo game_data directory

sound/ optional in repo game_data directory

  • Path: TheXTech/sound/
  • Source: src/sound.cpp:1319
  • SFX directory, files named by sounds.ini. Game runs without sounds.

music/ optional in repo game_data directory

  • Path: TheXTech/music/
  • Source: src/sound.cpp:1318
  • Music tracks, files named by music.ini.

sounds.ini optional in repo game_data

music.ini optional in repo game_data

editor.ini optional in repo game_data

intro.lvlx required in repo game_data

introset/ optional in repo game_data directory

  • Path: TheXTech/introset/
  • Source: src/game_main.cpp:194-222, src/game_main.cpp:247, src/main/level_file.cpp:321-339
  • Directory of .lvl/.lvlx intro levels; one is picked at random when present, otherwise the root intro level is opened. The Adventures of Demo pack carries none; these 19 levels come from the introset/ of the Nostalgic Paradise pack (Blue Edition 0.2.8b, nostalgic-paradise-stable.7z). A level reads custom graphics from introset/ and from the subfolder named after it (07/, 08/, 10/); every other block, BGO, NPC and background ID they use is present in the Adventures of Demo graphics.

outro.lvlx optional in repo game_data

  • Path: TheXTech/outro.lvlx
  • Aliases: outro.lvl
  • Source: src/game_main.cpp:857-869
  • Level shown behind the credits, unless the episode names its own. outro.lvl is opened when outro.lvlx is absent.

worlds/ optional in repo game_data directory

battle/ optional in repo game_data directory

Generated on 2026-10-10T11:26:02Z