Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 13:04, 26 July 2025 by Hyatt (talk | contribs)
TheXTech
General
AuthorWohlSoft
TypePlatform
Version1.3.7.1
LicenseGPL-3.0
Last Updated2025/07/13
Links
Download
Website
Source

TheXTech is a free and open-source platform game engine that fully recreates the Super Mario Bros. X 1.3 engine in C++. It is compatible with a wide range of platforms, including Windows, Linux, macOS, Android, and various homebrew-enabled consoles such as the Wii U.

Installation

How to install on hardware:

In order to run this game, you are required to have a hacked Wii U with the Tiramisu / Aroma installed.

  • Download both Application and Assets (Game pack) packages (You can take one or multiple game assets packs).
  • At root of your SD card, create the wiiu/TheXTech/ directory and assets subdirectory inside.
  • Unpack the Assets archive into the wiiu/TheXTech/assets/<pack-name> directory (Every game assets pack should be placed at separated subdirectory with any name).
  • Unpack the Application archive into the apps directory at your SD card root, make sure content appears at the wiiu/apps/thextech-wiiu subdirectory.
  • Try to run the TheXTech application via Homebrew Channel.

How to run on emulators (such as CEMU):

  • Download both Application and Assets (Game pack) packages (You can take one or multiple game assets packs).
  • At the directory linked as an SD card, create the wiiu/TheXTech/ directory and assets subdirectory inside.
  • Unpack the Assets archive into the wiiu/TheXTech/assets/<pack-name> directory (Every game assets pack should be placed at separated subdirectory with any name).
  • Place the thextech.rpx file from the Application archive into any convenient directory.
  • Try to open your RPX file via the emulator.

Caution 1: When running the game on CEMU, it may work incorrectly because of the recompiler bugs. You can escape these bugs by running the CEMU with the --force-interpreter command-line argument.

Screenshots

TheXTechWii-01.png

TheXTechWii-02.png

Media

Super Mario Bros. X (SMBX, TheXTech) Gameplay (Vitzie629's Gaming & Technology)

Changelog

1.3.7.1

  • Video system
    • Implemented support for Power-of-Two only textures on some platforms via SDL Render (@Wohlstand)
    • Added exclusive full-screen mode support to maintain good performance on weak devices (@Wohlstand)
    • Add 3x scale mode (@ds-sloth, thanks to @Yave-Yu for the request)
  • Gameplay settings
    • Added compat flag "no-shell-grab-top" to disable grabbing shells while falling from above, for compatibility with pre-SMBX 1.3 content (@Wohlstand)
  • Behaviour changes
    • Advanced options are now applied only when hitting Select or returning to the previous screen. (@ds-sloth, thanks to @Wohlstand for the suggestion)
    • The mouse can now be used to click through message boxes in the main menu. (@ds-sloth, thanks to @Agatha for the suggestion)
    • Refine Magic Block handling of lava next to slopes (@ds-sloth, thanks to @ChristianSilvermoon for the report)
    • Adjusted the frame-skip behaviour to address the performance slowdown on some systems (@Wohlstand)
    • Windows: use SDL2 renderer on video cards without OpenGL acceleration (@ds-sloth)
    • Added an explicit indication that game is suspended when window is out of focus by showing the "Paused" label over the gray filter. (@Wohlstand)
    • Rapidly clicking on menu items no longer toggles fullscreen. (@ds-sloth, thanks to @Agatha for the suggestion)
    • On failures while using interprocess-based level testing, the explicit error messages will be shown (@Wohlstand)
  • Hardware support
    • Add GameCube controller support for Wii (@ds-sloth)
    • 3DS: fix bug where gameplay could slow down when audio performance is reduced (@ds-sloth)
    • Wii: fix bug where Wiimote could get stuck in Rumble state (@ds-sloth)
    • Fixed the viewport problem on non-SMBX resolutions at the PS Vita (@Wohlstand, @ds-sloth)
  • New vanilla bugfixes
    • Fix vanilla bug where chars 3 and 4 could clip downwards if they powered up while digging, guarded by "fix-player-grab-clip" [Classic Mode] (@ds-sloth)
    • Fix SMBX 1.3 crash caused by freezing a bubble when the NPC with index 3 is an ice ball (@ds-sloth)
    • Fix vanilla bug where the player could clip downwards when hurt or running into a block while on a platform, guarded by existing compat flag "fix-player-downward-clip" [Classic Mode] (affected Frozen Valley in Fallen Spirits and Mushroom Heights in Princess Cliche) (@ds-sloth, thanks to @Agatha for the report)
    • Fix vanilla editor peculiarity where the order of overlapping blocks might change. Note that overlapping blocks larger than 1 tile are still sorted according to SMBX rules. (@ds-sloth)
  • TheXTech bugfixes
    • Fix TheXTech 1.3.7 peculiarity where NPCs that hid themselves on activation would be shown before coming onscreen (@ds-sloth)
    • Fix TheXTech 1.3.7 peculiarity where player preview sprites in the main menu would not use the correct death effects (@ds-sloth)
    • Fix TheXTech 1.3.6.1 bug where a plant on a hidden moving layer would sometimes not appear after showing the layer (@ds-sloth, @Wohlstand)
    • Fixed a bug from the TheXTech 1.3.6 where music of a wrong section gets started when player enters level by a warp into section with no music (@Wohlstand)
    • Fix TheXTech 1.3.7 bug where rail platforms could get stuck below the current section (@ds-sloth, thanks to @Liebning for the report)
    • Fix TheXTech 1.3.5.3 visual bug where P2's screen fader was not reset when P1 gets a level exit (@ds-sloth)
    • Fix TheXTech 1.3.6.1 visual change in the width of spaces in the in-game message box (@ds-sloth)
    • Fix TheXTech 1.3.7 visual change in the line-breaking algorithm for the in-game message box (@ds-sloth)
    • Tune TheXTech v1.3.7 Modern/Classic Mode logic for when to activate NPCs shown by events to better match Vanilla. (@ds-sloth, thanks to @Liebning for the report)
    • Resolved the pool allocator memory overflow crash problem (Caused by LunaScript's render operations with frame skipping enabled on slow devices) (@Wohlstand)
    • Fix TheXTech 1.3.6.1 bug where setting width or height to 0 in npc.txt would prevent the NPC from spawning (this affected the boss of Hall of Masks in MM4) (@ds-sloth)
    • Fix TheXTech 1.3.6.1 bug where colored platform NPCs could mistakenly trigger activation events (this affected The Sinister Side in SRW) (@ds-sloth)
    • Fix TheXTech 1.3.1 inaccuracy where certain internal values were not rounded correctly (@ds-sloth)
    • Fix TheXTech 1.3.1 bug where characters 2 and 5 couldn't release all coins in a block if the block was in front of another sizable block (@ds-sloth)
    • Fix loading of custom resolution specified in thextech.ini (@ds-sloth)
    • Fix TheXTech 1.3.7 bug where medals were incorrectly tracked after using Coin Switch in Classic Mode (@ds-sloth, thanks to @Agatha for the report)
    • Fix TheXTech 1.3.7 editor bug where sizable block priority was not used when resizing sizable blocks (@ds-sloth, thanks to @ChristianSilvermoon for the report)
    • Fix TheXTech v1.3.7 change to the timing of events triggered by warp enter/exit events (@ds-sloth, thanks to @ChristianSilvermoon for the report)
    • Fix TheXTech v1.3.6.1 inaccuracy where generator NPCs with IDs 57, 60, 62, 64, and 66 could not be walked on in their generator state (@ds-sloth)
    • Fix TheXTech 1.3.7-beta bug which prevented the compat flag "fix-player-clip-wall-at-npc" from working as intended (@ds-sloth)
    • Fix TheXTech v1.3.7-beta visual bug in which the backdrop did not have proper borders in 4P split screen at 1440p. (@ds-sloth)
    • Fix TheXTech v1.3.7 bug in which input methods might get disconnected when switching between battle leves in 3/4-player mode. (@ds-sloth)
    • Fix TheXTech v1.3.7-beta bug in which bullet generators not facing the player could become inactive. (@ds-sloth, thanks to @Liebning for the report)
    • Fix critical TheXTech v1.3.6 editor bug where swapping the order of layers resulting in objects losing their layers. (@ds-sloth, thanks to @ChristianSilvermoon for the report)
    • Fix TheXTech v1.3.6 editor bug where world music tiles would move a tiny bit when the world was saved (@ds-sloth, thanks to @ChristianSilvermoon for the report)
    • Fixed the early interrupting of the level workflow when going to the inter-level warp on some platforms (@Wohlstand)
    • Fixed the visual glitch of the last screen fade out frame being frozen instead of complete going into darkness (@Wohlstand)
    • Fixed the bug that causes gamesave's fails counter not being copied or removed via game menu (@Wohlstand)
    • Fix TheXTech 1.3.7-beta editor bug where a player object could become deselected when closing the editor pane (@ds-sloth, thanks to @fbitninja for the report)
    • Fixed the incorrect work of the Java-coded INI parser on Android that led some properties being loaded incorrectly (for example, valid background picture fails to load) (@Wohlstand)

1.3.7

  • New features:
    • The multi-res system
      • Added support for different display resolutions (@ds-sloth)
      • Allow event logic NPCs to consider SMBX 1.3 camera when activating, guarded by compat flag modern-npc-camera-logic (@ds-sloth)
      • Add npc.txt attribute "usedefaultcam"; set this to "1" to force NPCs to use the event logic camera to activate and "0" to force them to use the visible camera (@ds-sloth)
      • Add compat.ini setting "dynamic-camera-logic" which may be disabled to force a level to use the 800x600 camera for all logic (@ds-sloth)
      • Added internal support for more than 2 cameras (@ds-sloth)
      • Added backdrop for levels smaller than the screen at graphics/ui/Backdrop.png (@ds-sloth)
      • Added alternative format for world map frame with better support for various display resolutions (@ds-sloth)
    • Menus
      • Redesigned character select screen for multiplayer game start and player setup (@Savbyn, @ds-sloth)
      • Overhaul the Main Menu and in-game Options menu with support for editing all "thextech.ini" options (@ds-sloth)
      • Add "Modern", "Classic", and "Vanilla" playstyles which determine which bugfixes and gameplay updates are applied (@ds-sloth@0lhi)
      • Add ability to start speedrun in-game by pressing Select when making a new game save (@ds-sloth@0lhi)
      • Add ability to change last warp resume setting on hub worlds. This allows playing episodes incompatible with this behavior in Modern Mode. (@ds-sloth@0lhi)
    • Asset packs system
      • Game looks for extra asset packs in the assets/ subdirectory of the user and system directories (@ds-sloth)
      • Add ability to specify asset pack by ID in the command line (as well as by path) (@ds-sloth)
      • Add ability to switch asset pack at main menu screen by holding select button (@ds-sloth)
    • New content
      • Added full game and in-game editor support for world map sections that limit screen view (@ds-sloth)
      • Add compat flag "disable-spin-jump", which causes the AltJump key to map to a normal jump, but still allows players to dismount. The flag replaces a hack used to force-disable the key in Superb Demo Sisters. (@ds-sloth)
      • Added support for on-exit warp event. (@Wohlstand)
      • Move the [intro] and [outro] sections of gameinfo.ini to [activity-setup] in the compat.ini file for the intro/outro levels, for per-level configuration of these settings. Setting the fields via gameinfo.ini is deprecated and may be removed in future asset pack formats. (@ds-sloth@Wohlstand)
      • Added support for episodes to provide custom main menu intros. (@Wohlstand)
      • Added support for episodes to provide custom credits level. (@Wohlstand)
      • Allow customization of TTF colour of fonts (@ds-sloth)
    • Editor
      • Add ability to trigger event layer smoke in the in-game editor (@ds-sloth)
      • Add ability to edit BGO sort layers and offset in the in-game editor (@ds-sloth)
      • Add ability to resize placed items, section boundaries, and event section boundaries in the editor (@ds-sloth)
    • Cheats / codes
      • Added "opensesame" world map cheat to unlock paths from level (@ds-sloth)
      • Added code "logicscreen" to view camera used by event logic NPCs (@ds-sloth)
      • Add cheat "edityourfriends" to experiment with compatibility settings (@ds-sloth)
      • Add cheats "4shared" and "4split" to test 4-player shared / split screen modes (@ds-sloth)
    • Other features
      • Add tracking for medals collected in levels (@ds-sloth)
      • Added smooth path unlock animations at the world map (@ds-sloth)
      • Sounds now get quieter when they are further from the screen (@ds-sloth)
      • Add hints system to the loading and pause screens (@ds-sloth)
      • Add new item drop system, used by default in Modern Mode at low resolutions (@ds-sloth@ChristianSilvermoon@0lhi)
      • Add option to always use shared or split screen in 2P (@ds-sloth)
      • Add ability (beta status) to play >2P mode with shared or split screen (@ds-sloth)
      • Implemented the in-game assert failures will be shown as in-game message box until perform an emergency close on platforms that doesn't have SDL's message box (@Wohlstand)
      • Update level loading error screen to be more informative (@ds-sloth)
      • Add world loading error screen (@ds-sloth)
      • 3DS: add advanced option "Inaccurate GIFs" to allow playing in 3D on levels with GIFs (@ds-sloth)
    • Other engine changes
      • Save the number of medals / stars that exist in levels to speed up subsequent loads (@ds-sloth)
      • Internal change: added draw plane system to track different object groups' scene depth (@ds-sloth)
      • Note: screen-space autocode draws now occur in the HUD plane instead of the level plane (@ds-sloth)
      • Drop/add screen renamed to "Player Setup"
      • In modern gameplay, the main menu now has a single "Play Episode" item instead of separate 1P/2P items
      • COMPATIBILITY CHANGE: remove automatic version targeting for pre-SMBX 1.3 content (@ds-sloth)
      • Very long SFX are now played from disk to save memory (@ds-sloth)
      • Made some internal memory optimizations to the Block and NPC objects, saving 360KB RAM (@ds-sloth)
      • GIF recorder now turns grey and skips frames when recording is slower than gameplay (@ds-sloth)
      • Update TheXTech's logic for climbing moving fences (@ds-sloth)
      • Change cheat "shadowstar" to use a 75% black tint (instead of 100% as in SMBX 1.3) for visibility against dark level backgrounds (@0lhi@ds-sloth)
      • Update TheXTech userdata locations to system-native locations on new installs. (@ds-sloth@Wohlstand)
      • Speedrun timer no longer permanently stops following initial game win, allowing speedruns of postgame content (@ds-sloth)
      • In Modern and Classic modes, now allow negative lives instead of game over (@ds-sloth@0lhi)
      • Added support for error boxes at the Wii U to explicitly show reasons of errors to users (@Wohlstand)
      • System message boxes will have their unique style that is different from the in-game one. (@Wohlstand)
      • Add option (on-by-default) for gamepads to use simple editor controls. Prevents getting locked in the editor. (@ds-sloth)
      • Improve the performance of levels with many climbable NPCs (@ds-sloth)
      • Refine GIF bitmask detection and fallback algorithm (@ds-sloth)
      • 3DS/Wii: speed up graphics loading code (@ds-sloth)
      • TheXTech-exclusive events are now processed at the end of the frame they are triggered in (@ds-sloth)
      • 3DS: display system and video memory usage in Debug Info screen (@ds-sloth)
      • Add support for TTF fonts up to 24x24 (@ds-sloth)
    • New vanilla bugfixes
      • Fix thrower vertical position logic in split-screen, guarded by compat flag modern-npc-camera-logic (@ds-sloth)
      • Fix SMBX 1.3 bug where camera would not track respawning player, guarded by compat flag multiplayer-pause-controls (@ds-sloth)
      • Fix ghost, boss, and other NPC target player selection, guarded by compat flag "fix-multiplayer-targeting" (@ds-sloth)
      • Fix vanilla peculiarity where plants would make a sound when dying in a no-turn-back level, guarded by compat flag "fix-visual-bugs" [Modern Mode] (@ds-sloth)
      • Fix vanilla peculiarity where the speed of blocks attached to an NPC would not be fully reset when the NPC dies, guarded by compat flag "fix-attlayer-reset" [Modern Mode] (@ds-sloth)
      • Fix vanilla peculiarity where some held NPCs would appear to move on the player's hands / feet, guarded by compat flag "fix-visual-bugs" [Modern Mode] (@ds-sloth)
      • Fix vanilla editor bug where NPC spawn logic might be inaccurate on level test (@ds-sloth)
      • Fix vanilla peculiarity where medals were sometimes not collected when killed, guarded by "fix-medal-kill" [Modern Mode] (@ds-sloth, thanks to @Superbloxen for the report)
    • TheXTech bugfixes
      • Fix TheXTech 1.3.6.1 bug where level fadeout did not properly occur on fail in 2P mode (@ds-sloth)
      • Fix TheXTech 1.3.6.1 peculiarity where a player could reach an inaccessible location by respawning while another player was scrolling between warps (@ds-sloth)
      • Editor: fix TheXTech 1.3.6 bug where level test might incorrectly start following text input (@ds-sloth)
      • Fix TheXTech 1.3.6 bug where an item could be cloned by changing characters during powerup animation (@ds-sloth)
      • Fix TheXTech 1.3.6.1 OpenGL bug where a mask larger than its texture could be drawn incorrectly (@ds-sloth, thanks to @AntonioGZZ96 for the report)
      • Fix TheXTech 1.3.6.1 inaccuracy affecting "Endless Exploration" where levels started via an invalid warp point could not be played (in SMBX 1.3, the warp point is ignored) (@ds-sloth)
      • Fix TheXTech 1.3.1 bug where many max-ID custom GFX were not loaded (including player-5 map sprites) (@ds-sloth, thanks to @AntonioGZZ96 for the report)
      • Fix TheXTech v1.3.6 editor bug where NPC properties could change when their layer was hidden. (@ds-sloth, thanks to @cre8iveexercise for the report)
      • Fix TheXTech v1.3.6.1 Android bug where the screen would be black after switching applications. (@ds-sloth)
      • Fix TheXTech 1.3.5.1 bug where the lower half of a player's sprite could be shown behind a shoe / sack (@ds-sloth)
      • Fixed the inability to close error LunaScript parse error box on Android when file contains too long lines (@Wohlstand)
      • Fixed crash on attempt to execute the "SetHits" and "AllFace" LunaScript commands (@Wohlstand)
      • Wii: fix TheXTech 1.3.6.1 inaccuracy in how very small GIF bitmasks are rendered (@ds-sloth)
      • Fix TheXTech 1.3.6.1 bug where player-dependent event text could be inaccurate if Autocode cancelled a different event (@ds-sloth)
      • Fix TheXTech 1.3.1 inaccuracy where a vanilla bug failed to replicate. This bug caused a pending event to be overwritten when two events triggered in a single frame. The bugfix now has compat flag "fix-event-swap-bug" (@ds-sloth)
      • Fixed the random crash and memory damaging during the load process (@Wohlstand)
      • Fix TheXTech 1.3.6 bug where some controls profiles could not be deleted. (@ds-sloth, thanks to @0lhi for the report)
    • TheXTech v1.3.7-beta bugfixes
      • Fix TheXTech 1.3.7-beta visual glitch when the vanilla cam hotkey was pressed during the level intro scene (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where vanilla cam was not reset before entering credits (@ds-sloth)
      • 3DS/Wii: fix TheXTech 1.3.7-beta bug where levels with 101 layers/events could not load (@ds-sloth)
      • Hints: fix the graphical display of the surfing hint (@ds-sloth)
      • Refine the placement of HUD items at low resolutions (@ds-sloth)
      • Don't allow pressing the vanilla cam hotkey during a camera pan event (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where battle levels could be created even if the asset pack disables battle mode (@ds-sloth, thanks to @LoveBodhi for the report)
      • Fix TheXTech 1.3.7-beta bug where it was impossible to enter speedrun mode using the main menu interface (@ds-sloth, thanks to @0lhi for the report)
      • Fix TheXTech 1.3.7-beta bug where the modern lives count was shown at the title screen for vanilla gamesaves (@ds-sloth, thanks to @0lhi for the report)
      • Fix TheXTech 1.3.7-beta defect where it was not clear whether vanilla cam was activated at high resolutions (@ds-sloth, thanks to @0lhi for the report)
      • Fix TheXTech 1.3.7-beta inaccuracy in which an NPC that moves into a section during gameplay might fail to spawn (this affected the final boss of Valtteri's Island - Revisited) (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where an assertion failure could be triggered when a player went offscreen in shared screen multiplayer (@ds-sloth)
      • Ensure that the player setup menu always remembers the most recently selected characters (@ds-sloth, thanks to @0lhi for the suggestion)
      • Fix TheXTech 1.3.7-beta bug where the logical screen could desync after dropping a player (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where menus could become unresponsive if a player had been dropped while holding a button. (@ds-sloth, thanks to @0lhi for the report)
      • Fix TheXTech 1.3.7-beta defect where character forced using Konami code would be lost on menu quit (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where the player start points were incorrect for some content. This affected Adventures of Demo. (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where hitting Escape at the pause menu could return to menu (@ds-sloth, thanks to @sl4cer for the report)
      • Fix TheXTech 1.3.7-beta PortMaster peculiarity where the load screen would be drawn too small (@ds-sloth)
      • Fix TheXTech 1.3.7-beta Wii bug where the no-assets screen would not display correctly (@ds-sloth)
      • Fix TheXTech 1.3.7-beta Wii bug where unconverted UI assets could not be loaded (@ds-sloth)
      • Fix TheXTech 1.3.7-beta bug where the controller preview on the controls menu was inaccurate (@ds-sloth)

v1.3.6.6

  • New vanilla bugfixes:
    • Fix vanilla bug where vehicle could be vulnerable if player entered it during AltJump (requires frame perfect down press), guarded by compat flag "fix-vehicle-altjump-bug" (@ds-sloth)
    • Fix vanilla bug where vehicle could not be exited if player entered it while holding AltJump key, guarded by compat flag "fix-vehicle-altjump-lock" (@ds-sloth)
    • Fix vanilla bug where player can get softlocked if hit by a grabbable NPC while digging dirt, guarded by compat flag "fix-player-stuck-on-dirt" (Classic Mode) (@ds-sloth)
  • TheXTech bugfixes:
    • Fixed the problem when a touch screen is not detected on some Android devices (@Wohlstand)
    • Fix minor bug that caused certain configurations on macOS to crash on startup (@ds-sloth)
    • Fix Wii U bug where resizing the game screen could cause the game to crash (@ds-sloth)
    • Fix TheXTech 1.3.6.1 crash caused when a pet mount is eating the last NPC in the level and the eaten NPC is killed (@ds-sloth)
    • Fixed Wii U bug where game quits into the black screen instead of the Wii U's main menu when game started from the Aroma (@Wohlstand)
    • Fix TheXTech 1.3.6.1 inaccuracy allowing the player to dismount a vehicle when blocked by an NPC (@ds-sloth)
    • Fix TheXTech 1.3.6.1 bug where conveyor belts would sometimes not activate correctly (@ds-sloth)
    • Fix TheXTech 1.3.6.1 OpenGL bug where the shadow effect interacted inaccurately with bitmasked textures (@ds-sloth)
    • Fix TheXTech 1.3.6 bug where it was impossible to unpause while holding an item (@ds-sloth, thanks to SimplyMav for the report)
    • Fix TheXTech 1.3.6.1 bug where GIF masks for sizable block 261 were not loaded (@ds-sloth)
    • Fix TheXTech 1.3.6.1 bug where SMBX level version autodetection did not work for platforms (note that this logic will be fully removed in 1.3.7) (@ds-sloth)
    • Fix TheXTech 1.3.6.1 bug where NPCs on hidden layers were incorrectly allowed to chain-activate (The bug affected the outro scene of Dynamite Grotto in SRW2). (@ds-sloth)
    • Add workaround for TheXTech 1.3.6.1 Modern Mode inaccuracy where NPC clipping did not match SMBX 1.3 (This bug affected the same scene). (@ds-sloth)
  • Known issues
    • 3DS and Wii ports do not run at the native system resolution.
    • Audio may be choppy on Old 3DS.
    • On Windows 10 when running OpenGL with some ~2006 Intel iGPU on laptop, game would crash (possibly fixed).
    • Edit 2024-11-02: the included source package will fail to build for an arm64 Linux target (#855). Tag v1.3.6.6-1 fixes this issue.

Complete changelog.

External links

Advertising: