TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

General discussion about Super Mario Bros. X.
Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.1] (SMBX for Android is here!)

Postby Wohlstand » Tue Aug 17, 2021 10:51 am

Hi!

There is ds-sloth's alpha version: https://github.com/ds-sloth/TheXTech3DS/releases/tag/v0

Kumatora
Koopa
Koopa
Posts: 16
Joined: Sun Jul 12, 2020 4:24 pm
Flair: Uma Arhera Shooter

Re: TheXTech: the modern port of SMBX engine [1.3.5.1] (SMBX for Android is here!)

Postby Kumatora » Tue Aug 17, 2021 12:57 pm

Wohlstand wrote:
Tue Aug 17, 2021 10:51 am
Hi!

There is ds-sloth's alpha version: https://github.com/ds-sloth/TheXTech3DS/releases/tag/v0
Thanks! It's so surreal that I can play the greatest Mario game (if counting fangames) on the go! BTW how do I install new episodes?

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.1] (SMBX for Android is here!)

Postby Wohlstand » Wed Oct 13, 2021 2:00 pm

Lemme ask ds-sloth, or you may join the chat at my Discord server, he is available during eastern time at USA

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

TheXTech v1.3.5.2: More than just a bugfix update

Postby Wohlstand » Tue Oct 19, 2021 2:08 pm

This update should've been a bugfix update, however, it introduces some set of new nice features you would like!

Note: To get the full power of TheXTech while making new projects, the special Moondust Devkit configuration package is suggested (the latest laboratory Moondust Devkit required until the next stable devkit version 0.4.3.1 release).

Significant changes
  • Added an option to enable the background game controller input handling
  • Portal warps have been allowed to be used for level entrances and level exits (Instant warps kept unsupported to avoid possible compatibility issues)
  • Added the cannon pipes that can shoot the player with a given speed
  • Added the opt-in 2x scale down optimization for all textures to reduce the memory usage
  • License was changed into GPLv3 (see details: https://github.com/Wohlstand/TheXTech/issues/162)
  • Enabled the work on the Android TV
  • Added mask fallback support for custom graphics mask compatibility for old episodes
  • Added an ability to change the look of the launcher screen on Android via gameinfo.ini (Change the logo, change the background, and set up the simple animation)
  • Added wireless game controllers battery status displaying when enabled at the settings
  • Added device battery status displaying at the right-top corner when enabled at the settings
  • Fixed an inability to save the game when game assets were stored at SD Card on an Android device
  • Added the Yoshi mode support for specified songs at the music.ini: mute selected track number without Yoshi, enable it back when Yoshi is presented
  • Added a fixed behavior for rail platforms and grinder (NPC-60, NPC-62, NPC-64, NPC-66, NPC-104, NPC-179). It can be enabled using new-added custom values
Changes for 1.3.5.2: show
  • Fixed the ARM64 building
  • Updated the log writer
  • Disabled the "Boss Dead" event hook to stop the episode speed-run timer by default, added the compat.ini options to enable and configure it
  • Fixed the unexpected Swooper flap sound played after the Swooper has gone far away
  • Fixed the vanilla bug: The Swooper has avoided being started to fly when inactive
  • Added the compatibility level command-line option separated from the speed-run modes (However, the speed-run mode will still override the compatibility level)
  • Added an option to enable the background game controller input handling
  • Portal warps have been allowed to be used for level entrances and level exits (Instant warps kept unsupported to avoid possible compatibility issues)
  • Added the cannon pipes that can shoot the player with a given speed
  • Added the workaround for custom background2-42 that has non-multiple 4 height (there are several custom sprites with the 3455 invalid height, they must be 3466)
  • Fixed an incorrect speed-run timer render at multiplayer mode
  • The controller state print has been replaced with a controller drawing to indicate the pressure state of buttons
  • Added the opt-in 2x scale down optimization for all textures to reduce the memory usage
  • Fixed the confusion when using the modern section auto-scroll settings when an auto-scroll fix was disabled
  • License was changed into GPLv3 (see details: https://github.com/Wohlstand/TheXTech/issues/162)
  • Enabled the work on the Android TV
  • Fixed the game start error after granting the storage permission on Android 9 and lower
  • Added an ability to change the look of the launcher screen on Android via gameinfo.ini (Change the logo, change the background, and set up the simple animation)
  • Added mask fallback support for custom graphics mask compatibility for old episodes
  • Fixed vanilla bug: Attempt to enter the locked warp or take the star with star-locked warp the game will crash if a level has no BGO at all
  • Make turn blocks (block-90) work as bricks when SMBX19 and lower-level file version is open
  • Added a workaround for the yellow platform (NPC-60) at "The Invasion 1" episode where it won't move at level42
  • Added Billy Gun (NPC-22) behavior compatibility with SMBX 1.2 and 1.1.x and older file formats
  • Added wireless game controllers battery status displaying when enabled at the settings
  • Added device battery status displaying at the right-top corner when enabled at the settings
  • Fixed an inability to save the game when game assets were stored at SD Card on an Android device
  • Added support for gamecontrollerdb.txt at the assets root and at the user directory
  • Fixed vanilla bug: World map music won't resume after going through the warp that leads to no music points or the music point with the same song
  • Fixed the improper custom music change when going through the warp on the world map
  • Fixed vanilla bug: Offscreen NPC can now respawn during the stopwatch freeze
  • Added Thwomp (NPC-37) behavior compatibility with SMBX 1.0.x
  • Added the Yoshi mode support for specified songs at the music.ini: mute selected track number without Yoshi, enable it back when Yoshi is presented
  • Fixed a bug when a last world map music is not remembered when sound is disabled
  • Fixed the wrong restart place when running the lasagna of levels and the "restart level after death" option is enabled
  • Fixed the NPC logic distortion caused by early gfx update
  • Added an ability to customize an outro behavior using gameinfo.ini
  • Battle mode access can be disabled via gameinfo.ini
  • Two-player game mode access can be disabled via gameinfo.ini
  • The Scores of Power-Ups (NPC-9, NPC-14, NPC-34, NPC-169, NPC-170, NPC-182, NPC-183, NPC-184, NPC-185, NPC-249, NPC-250, NPC-264, NPC-277) can be changed via npc-X.txt
  • Added a fixed behavior for rail platforms and grinder (NPC-60, NPC-62, NPC-64, NPC-66, NPC-104, NPC-179). It can be enabled using new-added custom values
  • Fixed the collision bug when an attempt of the player with the shoe to jump up at the moving NPC being pushed into the wall, causes the player to go through the wall
Known issues: show
  • Affected by DrPepper Problem: The strong lag on slow devices when the level has any moving layers that move horizontally (by X-axis), mainly because the blocks search indexing gets completely disabled when the layer gets moved by X-axis. Todo: implement the QuadTree for all level objects and make sure they properly getting updated and found. (Issue #33, got been resolved at the `devel` branch by @ds-sloth)
  • Can't type any cheats on a mobile device without a USB-OTG keyboard yeh. Some levels (for example, the "Superb Demo 128" at "Prelude To The Stupid") do require the use of cheats for being passed, otherwise, these levels become unbeatable without a USB-OTG keyboard plugged. Todo: implement the calling of the software keyboard to allow running cheats on mobile devices. (Issue #61)
Showcases: show
Image

Image

Image

Image
All downloads at the official page of the project!

GitHub Release page: https://github.com/Wohlstand/TheXTech/r ... g/v1.3.5.2

Tip: Please use the plain application package at the bottom of the page if you want to quickly update your existing engine without taking any assets updates (for example, if you has the modded assets you made yourself and you don't want to re-apply all your patches again).

Also, you may visit the official TheXTech documentation to learn more about the TheXTech:
https://github.com/Wohlstand/TheXTech/wiki
Last edited by Wohlstand on Wed Oct 20, 2021 7:36 am, edited 1 time in total.

Dragon0307
Tweeter
Tweeter
Posts: 173
Joined: Sun Dec 08, 2019 8:21 am
Flair: Faux Affably Evil
Pronouns: He/Him

Re: TheXTech: the modern port of SMBX engine [1.3.5.2] (SMBX for Android is here!)

Postby Dragon0307 » Tue Oct 19, 2021 4:20 pm

I'm biased so I think the switch to the GPL was a good thing.

I have some questions about the Yoshi tracks:
1. Is that a new SDL Mixer X feature, and if so, does that mean other branches of SMBX will be able to use it?
2. What formats does it work for? I'm weird so I use MIDI for everything.
3. From what I can make out, there's something to do with a number. Is this the track that is being specified?

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.2] (SMBX for Android is here!)

Postby Wohlstand » Tue Oct 19, 2021 5:01 pm

Dragon0307 wrote:
Tue Oct 19, 2021 4:20 pm
1. Is that a new SDL Mixer X feature, and if so, does that mean other branches of SMBX will be able to use it?
Yes, the function unit that used to implement this logic, but the actual logic has been implemented in the game itself:
https://wohlsoft.github.io/SDL-Mixer-X/ ... cTrackMute

I added a new function that allows to mute/unmute one of the built-in tracks/channels in the song.

Other SMBX branches do require implementing the same overlay logic that I made on the TheXTech side. I bet that SMBX2 would just reject this update because of the low priority and they have other more important tasks than this.
Dragon0307 wrote:
Tue Oct 19, 2021 4:20 pm
2. What formats does it work for? I'm weird so I use MIDI for everything.
Many formats supported:
- Chiptunes such as SPC, VGM, NSF, HES, etc.
- Tracker music such as MOD, IT, S3M, XM, etc.
- MIDI music also works per track, but, there is an unstable backend implementation that will glitch if you'll do these toggles in the middle of the song, I need to fix these glitches up at libADLMIDI, libOPNMIDI, and the MIDI sequencer code used with FluidLite.

You can use Moondust MusPlay to verify the actual track number that works (note at MusPlay track numbers with base 1, at INI, and custom song path arguments with base 0), latest laboratory version has the tracks box you can open via the menu, and where you can mute/unmute every track for supported songs.

At TheXTech there are two ways to make the song work with Yoshi Mode:
1) via music.ini (both assets-wide and episode/level custom):

Code: Select all

[level-music-29]
name="SMW Cave"
file="smw-cave.spc|0;g=2.7"
yoshi-mode-track=5
2) for custom music, manually add the path argument:

Code: Select all

desert.spc|0;ym=2;
Dragon0307 wrote:
Tue Oct 19, 2021 4:20 pm
3. From what I can make out, there's something to do with a number. Is this the track that is being specified?
Yes, that's a number of the track. How Yoshi-mode works: when a player goes without Yoshi, the track is always muted. When a player starts to ride Yoshi, the track gets enabled.

Dragon0307
Tweeter
Tweeter
Posts: 173
Joined: Sun Dec 08, 2019 8:21 am
Flair: Faux Affably Evil
Pronouns: He/Him

Re: TheXTech: the modern port of SMBX engine [1.3.5.2] (SMBX for Android is here!)

Postby Dragon0307 » Wed Oct 20, 2021 2:31 am

Okay, thanks.

Sirfelipecarl36
Bob-Omb
Bob-Omb
Posts: 22
Joined: Wed Jan 10, 2018 10:15 pm
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

Postby Sirfelipecarl36 » Sat Jan 22, 2022 1:28 pm

Hello Belo Dev, remember when I asked you for an SMBX APK that I could stretch the game to 16:9 and remove the black borders? this time, I would like, if you could of course, an APK that I could leave in the SNES 4:3 resolution, but being able to stretch the screen, forcing the black borders to disappear

NOTE: This is not putting it in 16:9, it's putting it in SNES resolution with screen stretching :D :D

Yes, I know it gets ugly, but it's a fetish of mine
A rooted gamer desire that only you can help me

I'm Using the Devel Version (contains 16:9 , SNES , GBA Screen, etc)

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

Postby Wohlstand » Sun Jan 23, 2022 2:51 pm

Sirfelipecarl36 wrote:
Sat Jan 22, 2022 1:28 pm
Hello Belo Dev, remember when I asked you for an SMBX APK that I could stretch the game to 16:9 and remove the black borders? this time, I would like, if you could of course, an APK that I could leave in the SNES 4:3 resolution, but being able to stretch the screen, forcing the black borders to disappear

NOTE: This is not putting it in 16:9, it's putting it in SNES resolution with screen stretching :D :D

Yes, I know it gets ugly, but it's a fetish of mine
A rooted gamer desire that only you can help me

I'm Using the Devel Version (contains 16:9 , SNES , GBA Screen, etc)
Version from the "devel" branch has the ability of multiple resolutions include variants of 16:9. All these things including multires, will be ported into mainstream branch and will appear at the next release officially. The main thing it's always keeps aspect ratio, because it's extremelly important and there is only reason to break it if you want to make a set of cursed memes.
Spoiler: show
Image

TDK
Boomerang Bro
Boomerang Bro
Posts: 1391
Joined: Wed Nov 11, 2015 12:26 pm

Re: TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

Postby TDK » Mon Jan 24, 2022 3:14 pm

This is really great.
Native SMBX on Linux is not something that I would have ever thought would become a reality.
Such a shame that it can only play 1.3 levels though.

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

Postby Wohlstand » Mon Jan 24, 2022 3:35 pm

TDK wrote:
Mon Jan 24, 2022 3:14 pm
This is really great.
Native SMBX on Linux is not something that I would have ever thought would become a reality.
Such a shame that it can only play 1.3 levels though.
Don't worry, not only 1.3: TheXTech has some set of own unique extra features and it has some levels and ported episodes made exclusively for this engine. Also, there is on going work to backport the LunaDLL Autocode which gives an ability to play some more projects such as Analogue Funk, and I recorded the video of the working demo:


Original link: https://youtu.be/D-uWbGl4l2w
Bilibili link: https://www.bilibili.com/video/BV1534y1B7NE (if YouTube doesn't work)

Added in 19 minutes :
P.S. What about lua adding in the future, there are some discussions between me and my friends, that we need to add the new lua API which should be clearly designed. Mainly because of LunaLua's backstory: through time it got filled with improperly designed things as "deprecated" baggage and lots of incompatibilities between different versions of X2 because of major API changes that killed the ability to play a doze of projects that were made before the Beta 4 was out.

Wohlstand
Charged Spiny
Charged Spiny
Posts: 1926
Joined: Tue Feb 11, 2014 4:44 pm
Flair: 狐エンジニア
Pronouns: he/him
Contact:

Re: TheXTech: the modern port of SMBX engine [1.3.5.3] (Cross-platform SMBX is here!)

Postby Wohlstand » Tue Feb 08, 2022 11:35 am

Some another little showcase of LunaDLL Autocode and memory emulator working (will come up with the next stable release)


YouTube link: https://www.youtube.com/watch?v=aLsIvVpMkAY
Bilibili link: https://www.bilibili.com/video/BV1cZ4y1f7dw


Return to “General”

Who is online

Users browsing this forum: No registered users and 4 guests