(shouting)

The SMBX "SMB3" Overhaul API Mod

The second SMBX collab!
Post Reply
XerX
Untalented Pleb
Posts: 91
Joined: 9 years ago
First name: Colton
Pronouns: he/him/his
Location: Canada

The SMBX "SMB3" Overhaul API Mod

Post by XerX »

Hello Talkhaus community! I present to you, something that I bet a lot of you have been wanting for a long time; More SMB3.

"What do you mean?" You ask. Well I'll tell you!




What is the "SMB3 Overhaul API Mod"?

The "SMB3 Overhaul API Mod" is a HUD Mod for SMBX, replacing the old SMW-esque HUD for a more traditional SMB3 Hud. This is all possible thanks to LunaLua.
Image
Here is our new HUD. You like it? I sure do. Everything on the HUD is functional. Yes, even the PBar functions, and makes the sound when you hit top speed and are ready to fly. This API combines the "leveltimer" api and the "smb3goalcard" api, while also adding new features. To avoid any issues, it is advised that you do not use the two api with this one. Another thing to note is that the ItemReserve is not usable with this mod. It has been deactivated, for obvious reasons. (Also adds to that SMB3 charm.)

ONE MORE THING TO MENTION IS: If your level has a floor on the last two block spaces of your level, you must pull down the level boundaries by 2 blocks, otherwise the HUD will overlap anything on that layer. I can't do anything about that due to how SMBX's camera is programmed.

LIKE THIS
Image
OR ELSE YOU'LL GET THIS
Image
I'll guide you through what each of the HUD elements are.
Image
1. The Level Name : This uses SMBX's most useless feature, and makes it more useful. The Level Name feature under Level Settings > Advanced now has a use, and is displayed here. Max 11 characters. Any more than that and it defaults to "LEVEL".
2. Lives/Star Counter
3. Score
4. PBar : This functions pretty close to how the PBar in SMB3 did. You build up speed, the bar fills up. When it's full, you can fly. (The PBar only works for Player 1.)
5. Coin Counter
6. Timer : (Uses Luigifan2010's timer API, Slightly edited.)
7. Goal Cards : (Uses my SMB3 Goal Card API. Slightly edited).

So how do I get started?

First off, make sure you have the latest LunaLua. The oldest release supported is 0.7.0.3 BETA. You can get the latest here : http://engine.wohlnet.ru/LunaLua/

Then download the API.
When it's downloaded, extract the files somewhere and do the following :
1 . Copy/Paste the smb3overhaul.lua file and smb3overhaul folder into your LuaScriptsLib folder which should be in the root of your SMBX folder. (../SMBX/LuaScriptsLib/).
2 . Make a new file in your project folder called LunaWorld.lua.
3 . Add _smb3overhaul = loadAPI("smb3overhaul"); to the file.
4 . In your onLoad function, you can toggle certain settings on/off.

Code: Select all

   _smb3overhaul.setSecondsLeft(TIME);
   _smb3overhaul.setTimerState(true/false);
   _smb3overhaul.usesPBar(true/false);
   _smb3overhaul.useEasyMode(true/false);
   _smb3overhaul.usesCard(true/false);
   _smb3overhaul.disableSpinJump(true/false);
If this seems too confusing, follow step 1 then after, you can just use the example LunaWorld.lua file provided in the ZIP, which is in the README folder.

Credit to Mike Santiago for the timer api.
Special thanks to Mike Santiago and Kevsoft for the help and support.


If you have any questions/bug reports, please post them here.
Last edited by XerX 8 years ago, edited 2 times in total.
XerX
Untalented Pleb
Posts: 91
Joined: 9 years ago
First name: Colton
Pronouns: he/him/his
Location: Canada

Re: The SMBX "SMB3" Overhaul API Mod

Post by XerX »

There was an update to the API. Please redownload the newest version. (Same link).

Changes
-Added "easymode". Replicates SMB3 Powerup structure. Fire/Leaf/Ect > Big > Small instead of Fire/Leaf/Ect > Small.

If you wish to toggle this off, open your LunaWorld.lua and add this line in the onLoad().

Code: Select all

_smb3overhaul.useEasyMode(true);
User avatar
WestonSmith
Bunny
Posts: 191
Joined: 11 years ago

Re: The SMBX "SMB3" Overhaul API Mod

Post by WestonSmith »

...

I love you so much.
XerX
Untalented Pleb
Posts: 91
Joined: 9 years ago
First name: Colton
Pronouns: he/him/his
Location: Canada

Re: The SMBX "SMB3" Overhaul API Mod

Post by XerX »

WestonSmith wrote:...

I love you so much.
Haha glad you like it. ^^
XerX
Untalented Pleb
Posts: 91
Joined: 9 years ago
First name: Colton
Pronouns: he/him/his
Location: Canada

Re: The SMBX "SMB3" Overhaul API Mod

Post by XerX »

NEW UPDATE.

I remember a while ago, someone made a simple line that disabled spinjump from being used. It wasn't the best, still played the spinjump sound and turned the player the opposite direction when they jumped in place, as well as keep the same jump height, so spin jumping would get less air than a regular jump would.

I've made my own version, and have added it to the SMB3 Overhaul mod.




Also if you're wondering, yes, you can disable this in LunaOverworld.lua.


Please be sure to update to the newest API. (Version 1.0.2)

If you have an older version installed, just overwrite 'smb3overhaul.lua'. That's it.
DOWNLOAD

Changelog
Added a "Disable Spinjump" function.

Code: Select all

	_smb3overhaul.disableSpinJump(true/false);
User avatar
WestonSmith
Bunny
Posts: 191
Joined: 11 years ago

Re: The SMBX "SMB3" Overhaul API Mod

Post by WestonSmith »

Just tried this out. Works awesome (once I update my Lua version that is).

Haven't poked around with it much, but would switching the graphics on the hud be as simple as editing the Graphics folder? Curious if I can swap out the Mario symbol beside the lives counter.
XerX
Untalented Pleb
Posts: 91
Joined: 9 years ago
First name: Colton
Pronouns: he/him/his
Location: Canada

Re: The SMBX "SMB3" Overhaul API Mod

Post by XerX »

WestonSmith wrote:Just tried this out. Works awesome (once I update my Lua version that is).

Haven't poked around with it much, but would switching the graphics on the hud be as simple as editing the Graphics folder? Curious if I can swap out the Mario symbol beside the lives counter.
Sorry for the late reply. Yeah all the graphics are easily modifiable. Just note that the position that the graphics are at depend on the size of the graphic. (Width and Height.)

I also forgot to post an update.

Image

(A long time ago) Today I released a minimalistic version of the Overhaul mod, for those who don't want to sacrifice the design of their levels by extending the bottom bounds by two blocks.
Based off the SMAS4 SMB3 HUD Style.

Image

Info :
SETUP

1 . Copy/Paste the smb3overhaulMIN.lua file and smb3overhaulMIN folder into your LuaScriptsLib folder which should be in the root of your SMBX folder. (../SMBX/LuaScriptsLib/)

IMPLEMENTING INTO YOUR SMBX EPISODE/LEVEL

1 . Make a new file in your project folder called LunaWorld.lua.
2 . Add _smb3overhaul = loadAPI("smb3overhaulMIN"); to the file.
3 . In your onLoad function, you can toggle certain settings on/off.

Code: Select all

_smb3overhaul.setSecondsLeft(TIME);
_smb3overhaul.setTimerState(true/false);
_smb3overhaul.usesPBar(true/false);
_smb3overhaul.useEasyMode(true/false);
_smb3overhaul.usesCard(true/false);
_smb3overhaul.disableSpinJump(true/false);
[/spoiler]


Download : Download Version 1.0
User avatar
WestonSmith
Bunny
Posts: 191
Joined: 11 years ago

Re: The SMBX "SMB3" Overhaul API Mod

Post by WestonSmith »

Hi dead thread; how does one modify the timer for individual levels? I have my mod loaded off of LunaWorld, but when I try to modify the timer for individual levels, it merely laps the new timer on top of the LunaWorld file (i.e. it will read 999 on top of 300). Is there a way to disable the timer?
cramps-man
Posts: 14
Joined: 9 years ago

Re: The SMBX "SMB3" Overhaul API Mod

Post by cramps-man »

So if you look into the code, you can see he made a function like this.

setTimerState(b_tf)

Where b_tf is just a true or false variable to set the timer active or not. So just set it to false to disable it then hopfully it won't affect the other timer.
User avatar
WestonSmith
Bunny
Posts: 191
Joined: 11 years ago

Re: The SMBX "SMB3" Overhaul API Mod

Post by WestonSmith »

Hey, tried this out, worked great. Thanks mate.
Post Reply