Super Mario Bros. X

Super Mario Bros. X (Known as SMBX) - is a Mario fan game engine, written by Andrew 'Redigit' Spinks in 2009 year. Game is written on Visual Basic 6 (VB6). Project development was stopped in 2011 year, and SMBX 1.3 is a last version.

History
In the year 2009, Andrew 'Redigit' Spinks began work on game: Super Mario Brothers X. Gradually the game gathered a following among fans of the Mario game series.

Perhaps, it is one of the best all time fan games about Mario. In-game game-plays from games such as Super Mario Bros, by Super Mario Brothers 2, SMB 3, Super Mario World, Legend of Zelda, etc. are integrated. The built-in level editor allows not only to edit levels, along with a engine to debug them in real time, but also allows the player to create full-fledged episodes with a plot!

Unfortunately in 2011, Redigit received a call from the lawyers of Nintendo. Who threatened him, and demanded he remove SMBX and stop any further development. After some time, the supermariobrothers.org domain was also taken over by Nintendo. So such a remarkable project was killed.

But even so, it has still been played. A lot of "episodes" have been made for SMBX, and the game is still in demand. Currently the game overloads the processor to 100% even when the user is not in action.

There were attempts to revive the project, but they failed.

The main mistake - the game was published UNDER the UNTWISTED BRAND.

And Redigit was making money off SMBX with distribution of ads in installer, on forums and website. I.e. I parasitized on a brand. Therefore Nintendo didn't like this and that's why SMBX was shut down.

SMBX now
Now, SMBX still is in demand, on its basis to these port episodes and levels, and even the whole games are created. Because of this high demand LunaDLL has been in development.

Game
SMBX uses elements from popular titles from the Super Mario franchise such as: Super Mario Bros., Super Mario Bros. 2, Super Mario Bros. 3, Super Mario World. It uses elements from Zelda II and Metroid as well. The game engine uses a Super Mario Bros. 3 type of play in its physics. The main game is accessed at start up by starting up SMBX and pressing the button "Start Game" in the bottom left corner. This opens a loading screen displaying a legal disclaimer and asking for support to Nintendo by purchasing a Wii, or a WiiU in version 1.3.0.1. When the game has finished loading, the start screen is presented with a level being played by AI controlled characters and a menu with various choices.

1 Player Game - This option allows the user to play solo. When selected, the player can choose from a list of episodes that are installed in the user's worlds folder. After the player has selected a character, on the next screen the game will begin.

2 Player Game - This option allows the user and a friend to play together. When selected, the player can choose from a list of episodes that are installed in the user's worlds folder. After the user and their partner have selected a player, on the next screen, a two player game will begin.

Battle Game - This option is a two player only game mode, where the user and their friend can play together and battle on a list of battle levels located in their worlds folder. After the user and their partner have selected a character, on the next screen, a battle will begin. There is no online function for this option.

Options - This option allows the manipulation of player controls, full screen, and allows the user to view the credits that play at the end of an episode. Player controls carry over to the level editor when testing levels as well.

Exit - This option closes the game. 

Internal Editor
SMBX have internal level and world map editor which giving able to create own levels and episodes by yourself!

Editor have a single-document interface: you have one sub-window which have a viewport where you can see your level or world map. All toolboxes available at bottom of the editor main window.

Level Editor
Level editor starts by default when you launch SMBX in the editor mode.

Each level have 21 slots for your sections. You can switch between sections if you will open "Level Settings" toolbox. Also in them you can resize section (you will set position for each boundary of current section (top, bottom, left, right)), place a player start point. Set up music and background of the section, set up mode of the section (connect sides of section, enable globally underwater mode, enable off screen exit, disable able walk to left). To scroll on the map use the arrow keys and you can speed-up scrolling with Shift key.

World Editor
World editor giving able to create your world maps and set up the episode properties. To switch world map open the "Mode" menu and select "World editor" menuitem.

Debugger


Debugger in SMBX 1.3/1.3.0.1. allows you to:


 * See how many Blocks, NPCs, BGOs and Warps are placed in a level
 * See their limits (some of them aren't correct, though)
 * See your current mouse position/coordinates on the level map
 * Swap blocks by typing their IDs
 * See Framerate speed
 * See how many elements are placed in the level, like power-ups, items, etc.

"Blocks Sorted" button in the Debugger box of SMBX can be used if you want to make messed up NPC collisions, so they will fall through blocks. Button will be activated when you will place some blocks in the level.

"Block sorting" means the internal sorting of list which has all placed blocks in the current level. All blocks should be sorted with X and Y coordinates. SMBX is using this internal collision detection algorithm with NPCs, which are trying to find a nearest block to check collisions with it. If the block array won't be sorted, NPCs will fall down or walk through some blocks. But the player will collide with those blocks, so he won't fall through them.

If you want to make this effect in your level, follow these steps:

1) Make a level, place blocks in the level, place some other blocks far away from the blocks you already placed (for example in Section 2) in the level, save and play-test the level.

2) After play-testing, open the level file in Notepad, and change block's positions (numbers).

3) When you're done, open the level again and test the level. SMBX will ask you if you want to save the level, when it will do that, always press No or else your notepad changes will be lost.

''Note: If you will place some block in the level while play-testing the level, you will be able to press that "Blocks Sorted" button in the Debugger box, which will return things back to normal if pressed.

There is no Debugger box for World Map mode, maybe it was planned to appear in future updates of SMBX. However, in World Map mode you can see your current mouse position below, which is useful to make World Map warps or warps between level and world map.

SMBX 1.4 and future of SMBX
SMBX 1.4 - is a most of known fakes which notable on YouTube. It must be a new version of SMBX after 1.3, but because SMBX development was stopped, nobody can continue original project. However, SMBX has a successors which will take it's foundation and will continue progress:
 * PGE Project - is a game engine project which took most of SMBX foundations: file formats, content structures, etc. And fully compatible with classic stuff.
 * VSMBX - a project by GhostHawk coded in VisualBasic.NET. He makes editor similar to original SMBX, but it is not compatible with original SMBX (it can't open SMBX's levels).

Known bugs

 * If you will use decimal value in the npc-*.txt files, on some computers (from country where decimals standard uses comma [2,5 instead of 2.5]) SMBX will be crashed with error "Runtime error 13: Type Mismatch".
 * Using of empty strings with space characters will cause crash of SMBX.
 * If you will customize scenery with ID from 32 to 65, SMBX will be crashed when you will try to save world map.
 * Peach's sprite have a wrong GFX offset settings of vine-climbing frames: hitbox aligned to left-top corner of GFX
 * When you placing vines, you will have in the same places where was placed vines will be flooded by same vines.
 * Usage of quotes '"' character in the string values will damage level file (next attempt to load same file will cause crash of SMBX), but able to fix them in the notepad with manual removing of junk quotes from fields where used quotes characters.
 * Debugger box have a wrong limit counters.
 * Block will move to right with 0.001px offset when you will hit it and when it contains any NPC.
 * Skull raft will don't stop correctly when will be impacted to wall. In result it is squeezed as an accordion.
 * Pokey the Cactus have a bug with his segments: when it walks on slopes, segments can walk to slope, he will self collapse.
 * Spike Top can make invisible blocks by visible when he try to walk on it's bottom. When it walks over: it walks over them like on pyramid.
 * When you will try to grab any item when you duck on the diggable sand, character will be frozen with digging animation

Links

 * Current SMBX community site
 * Old SMBX versions archive
 * Original SMBX official site (Wayback machine snapshot) - the big orange block is an ads container (if you will try to read page sources, you will found link to "show_ads.js" by google)