Super Mario Bros. X by 38A

Super Mario Bros. X by 38A (known as "SMBX-38A" and "SMBX 1.4") - is a Mario fan game engine, written by 5438A38A as an unofficial successor to the original Super Mario Bros. X by Redigit. The game is written in Visual Basic 6 (VB6). Before November 2015, SMBX 1.4.1 was considered to be fake until Kevsoft and Wohlstand found it and successfully installed it on their computers.

This engine is widely-used by Chinese Players.

History
In 2013'th year, the Baidu Tieba user 5438A38A had told that the reason for SMBX 1.3 usage has much smaller significance than the development of a new game version, and he had announced the beginning of the "SMBX 1.4" development.

The first version was been released in 2015'th year and was been published at the Baidu Tieba. Initially the game was available in China only, and was being hard to download outside China and wasn't working on a non-Chinese computer. The first introduction for the SMBX-38A happened on September 13, 2015, when Snoopy Tour has made a post with a link to Baidu where the "SMBX 1.4.1" was published, but people are not beloved him (Everyone thought it was one another "SMBX 1.4" that was most known for being a fake around YouTube). Kevsoft tried to find a download link and finally found it, downloaded a recent build from Baidu Pan, and tried to test it on Windows 7 x64, but failed. When he sent this build to Wohlstand, he found a way to run it in Windows XP using virtual box. Later Wohlstand contacted the original author and cooperated with him. Since that time, the SMBX-38A got been finally fixed to work on any computers in the world and developed popularity in the international community becoming a powerful competitor to the SMBX 1.3 and even to the SMBX2. Because the official SMBX community staff rejected the dedication of the place for SMBX-38A discussions, the official place for the SMBX-38A got the "home" at the WohlSoft Forums at the SMBX section.

During the 2016 and 2017'th years, people were found a lot of hidden features and easter eggs in the game: people were needed to solve the challenge or a bunch of math problems to get access to the hidden feature as a reward.

Later, in 2018'th year, the Kevsoft the user has made the "Haxagon" utility that got been used to crack in-game easter eggs easily (worked on 1.4.3 and 1.4.4 versions). This fact angered 5438A38A, and he added the next text as a response to the fact the game was hacked:

"As a response to cheaters...


 * 1) The released date of smbx 1.4.5 will be postponed indefinitely, depending on my mood.
 * 2) The hidden functions will be completely remove in smbx 1.4.5, if you map used these features, you map will be broken.
 * 3) No documents(changlogs, script help file, example levels etc.) will be offer in smbx 1.4.5.
 * 4) The source code will never be published.

Why did this happen?

"You can use ANY accessible tools or methods to beat this game, including calculators, search engines and other people. However, cheat engine or so-called 'debuggers' are NOT allowed."


 * 1) I didn't get any profits from this project.
 * 2) A lots people ignore my rules of bug reporting and feature suggestions.
 * 3) They paid no price and made no contributions and make a ton of suggestions.
 * 4) I add minigames as a punishment, but some people hacked it.
 * 5) So this is the result."

In 2019'th year the new version for SMBX-38A 1.4.5 was out. The most of hidden features in this version were converted into normal functions and integrated into GUI. It got the majorly refactored GUI with a different overlay than attempting to repeat the SMBX 1.3 at the past version. This version got the most of the bugfix patches were out after release. People started to research it and got found various hidden offensive hints such as "crack me" inside the executable file.

In the state of December 2021, 5438A38A didn't appear online and there was no news after he released his latest patch "31.1" on the 23rd of December 2020. Therefore, the current state of the project is now unknown: does he actively works on the project, or he has completely abandoned it in favor of his other projects and his life?

System requirements

 * Operating system: Windows XP/7/8.1/10 or 11, or Windows XP on VirtualBox with support of Direct X and enabled 2D and 3D acceleration support!
 * SMBX-38A will work on Linux or on Mac with Wine, but you need to install the Direct X 9 and VisualBasic 6 Runtime (MSVBVM6). It is recommended that you use PlayOnLinux or PlayOnMac with the latest 32-bit version of Wine, but SMBX-38A works without it.
 * Direct X 9 support

Command line syntax (since January 21, 2016)
A new update of SMBX-38A 1.4.2 allows you to launch an episode or level test from the command line. (Also via drag&drop of the file into smbx.exe or associating ".wld" and ".lvl" files with executable.)

Command syntax:

path

 * Path of level-/world-file or world-folder.

modes

 * from 0 to 4:
 * 0 - 1p mode (input: lvl)
 * 1 - 2p mode (input: lvl) / Load save 1 (input: wld/map)
 * 2 - battle mode (input: lvl) / Load save 2 (input: wld/map)
 * 3 - Start Game Engine with inputted worlds-folder (input: directory) / Load save 3 (input: wld/map)
 * 4 - Start Level Editor and load inputted level/world (input: lvl/wld)

p1id, p2id

 * from 1 to 5:
 * 1 - Mario
 * 2 - Luigi
 * 3 - Peach
 * 4 - Toad
 * 5 - link

args (for developers)

 * "SMBXArgs|hp,co,sr|p1p,p1i,p2p,p2i|levelname,cppid,cpidn" [***urlencode!***] (the whole string should be URL-encoded)
 * hp = initial 1up number
 * co = initial coins number
 * sr = initial score
 * p1p = player1's state
 * p1i = player1's mount
 * p2p = player2's state [1~12]
 * p2i = player2's mount [-3~8]
 * levelname = level's filename(same as "GGI|GM"'s levelname) [***urlencode!***] (this should be URL-encoded separately, no matter that an entire SMBXArgs line is also URL-encoded)
 * cppid = checkpoint's perm ID
 * cpidn = checkpoint's advset value

examples for SMBX-38A v1.4.2 (outdated)
Launch a test of the "test.lvl" in a battle mode with Mario and Luigi:

Launch a test of the "anoying-place.lvl" in a 1 players mode with Toad:

Launch a test of the world.wld with save 1 and with 1 player mode, with Mario:

Launch a test of the world.wld with save 1 and with 2 player mode, with Peach and Mario:

Launch a test of the world.wld with save 1 and with 1 player mode, with Link:

SMBX-38A 1.4 (64)
This is the first version of the game released in the 2015'th year. It was been uploaded by Slash-18 on May 24, 2021, at the Discord server.


 * Versions:
 * Main Release

SMBX-38A 1.4.1 (65)
This is the first version of the game that got widely available outside China.


 * Versions:
 * Main Release
 * Last released patch with unknown number.
 * File Documentation
 * Version 65/66 (pdf)
 * Version 65/66 (odt)
 * Version 65/66 (txt)

SMBX-38A 1.4.2 (66)

 * Versions:
 * Main Release
 * Patch 0
 * Patch 1
 * Patch 2
 * Patch 3
 * Patch 4
 * Patch 5
 * Patch 6
 * File Documentation
 * Version 65/66 (pdf)
 * Version 65/66 (odt)
 * Version 65/66 (txt)

SMBX-38A 1.4.3 (67)

 * Versions:
 * Main Release
 * Patch 0
 * Patch 1
 * Patch 2
 * Patch 3
 * Patch 4
 * Patch 5 (Note: Archive has password 'smbx38a' due antiviruses false positives)
 * Patch 6
 * File Documentation
 * Version 67 (rtf)
 * IPC Interface
 * C++ Example & Documentation
 * VB.NET Example & C# Example

SMBX-38A 1.4.4 (68)

 * Versions:
 * Main Release
 * Patch 0
 * Patch 1
 * Patch 2
 * File Documentation
 * Version 68 (rtf)

SMBX-38A 1.4.5 (69)

 * Versions:
 * Main Release
 * Patch 0
 * Patch 1
 * Patch 2
 * Patch 3
 * Patch 4
 * Patch 5
 * Patch 6 Missing yet
 * Patch 7
 * Patch 8
 * Patch 9
 * Patch 10
 * Patch 11
 * Patch 12
 * Patch 13
 * Patch 14
 * Patch 15
 * Patch 16
 * Patch 17
 * Patch 18
 * Patch 19
 * Patch 20
 * Patch 21
 * Patch 22
 * Patch 23
 * Patch 24
 * Patch 25
 * Patch 26
 * Patch 27
 * Patch 28
 * Patch 29
 * Patch 30
 * Patch 31
 * Patch 31.1 (Fixes this bug only)

Random Crash
SMBX-38A has a Random Crash with "Runtime Error 9: Subscript out of Range".

Distorted Sound (Wine)
Depending on the system, running SDL2MixerVB.dll via Wine may produce a distorted audio output. There are two workarounds for this.

The first is changing the SDL audiodriver to winmm, which can be done by entering "wine regedit" in a terminal, navigating to, adding a new String Value SDL_AUDIODRIVER and modifying it to winmm.

The second is using a version of SDL2MixerVB.dll built on SDL 2.0.8. It can be downloaded here.

D-Pad doesn't work
In some cases, SMBX-38A may not recognize D-Pad inputs, but Analog inputs will still work. antimicro and xboxdrv can work around this issue.

MarioPacker BUG for 1.4.5
It doesn't load custom NPC codes correctly after player dies when packaging (Encrypting) the episode.

Difference from other engines

 * SMBX-38A has the exclusive encrypt feature (such as MarioPacker, Encrypting Levels, etc.), which can be protected by players.
 * After opening SMBX 1.3 level, all of the original format (e.g. Level format, Graphics format) will be automatically converted into SMBX-38A's exclusive format.
 * Hammer Bro's throwing duration is random.

Links

 * Official sub-section about SMBX-38A on PGE Forums
 * Main discussion thread about SMBX-38A on PGE Forums
 * Troubleshooting sub-section for SMBX-38A
 * Official 1.4.1 update announcement on Baidu Tieba (Chinese)
 * First video footage by Wohlstand
 * Video footage by bossedit
 * Video Overview by Axiom