Category:LunaLua helper libraries
| This is the archived page of the old LunaLua documentation The rest of LunaLua related articles in this wiki contain a lot of outdated documentation preserved for historical purposes and may be used with legacy versions of the LunaLua.
Please visit the SMBX2 Documentation Page to access the latest documentation for the LunaLua scripting system of the SMBX2 Project. Adding LunaLua contents into this Wiki is not advised. |
Here you can find a list of all the custom APIs for LunaLua which were developed outside of the core LunaLua project. Custom APIs can be loaded with the require() command at SMBX2 Beta 4+, or with the API.load command at SMBX2 Beta 3 or old LunaLua toolchains 0.7.3 and 0.7.3.1, or with the commands loadAPI and loadSharedAPI for old LunaLua Toolchains older than 0.7.3.
Here is an example of loading an API:
local levelTimer = require("leveltimer")
This code loads the custom API "leveltimer.lua".
Here is a tutorial about how to create your own custom LunaLua library: How To: Make your own custom Lunalua library
Notice: Here are many libraries which were taken into SMBX2 as the default API, or was been either deprecated/obsoleted and replaced with newer methods and libraries than presented here. Most of these libraries intended to work with a standalone LunaLua (or SMBX2 Beta 3) which is no longer receives updates as it was taken as the part of SMBX2. Please visit the official SMBX2 documentation for the documentation of the most of available classes ("Classes" section) and modules ("Modules" section).
More user-made SMBX2 libraries and packs can be found here.
The following contents are kept for historial reasons.
Gameplay
| Name | Latest version | Version packaged with LunaLua | Author(s) | Description |
|---|---|---|---|---|
| HealthPoint.lua | 1.0.3 | 1.0.3 | WasabiJellyfish | Easily configurable enemy HP for otherwise instantly killed enemies (Damage can be managed on a per enemy and attack type basis) |
| smb3goalcard.lua | 1.0.1.1 | 1.0.1.1 | XerX/XNBlank | Adds the full functionality of the SMB3 Roulette Cards. |
| HUDofTime.lua | 1.0.2 | 1.0.2 | Hoeloe | A Zelda-styled HUD, that includes functionality such as increasing the player's heart limit. |
| pipecannon.lua | 0.1.0 | 0.1.0 | arabsalmon | A small library for pipe cannons. |
| powerUDFreeze.lua | v1 | Not included | P3rf3ctXZer0 | All enemies stop moving to allow the player time to react when powering up or down. |
| ModernStyledHud.lua | 1.0.6 | Not included | Yingchun Soul | A library that replaces SMW Styled Hud with a Modern Styled Hud. |
| cursor.lua | 1.0 | Not Included | Yoshi021 | A sequel to click.lua |
| LookOut.lua | 1.0 | Not Included | Yoshi021 | A small API that lets you look around the level by controlling the camera. |
| PipeCam.lua | 1.0 | Not Included | Yoshi021 | A small API that add a small animation to warp pipes. |
| ScrollCam.lua | 1.0 | Not Included | Yoshi021 | A small API that add a scroll effect to a level. |
Graphics
| Name | Latest version | Version packaged with LunaLua | Author(s) | Description |
|---|---|---|---|---|
| particles.lua | 1.2.6 | 1.2.5 | Hoeloe | A library for producing particle effects. |
Misc
| Name | Latest version | Version packaged with LunaLua | Author(s) | Description |
|---|---|---|---|---|
| console.lua | 2.0 (in SMBX2 Beta 4) | Not Included | Rockythechao | Adds a basic command console when playing the game from the editor, providing a visual interface for entering cheats and testing textblox formatting. |
| metaluna.lua | 1.0 | 1.0 | Rockythechao | Allows the tostring function to be used with RECT, RECTd and various SMBX classes, as well as tonumber to get the corresponding number from a Section object. |
| npcid.lua | 1.1 | 1.1 | Rockythechao | Constant names for all SMBX NPCs. |
| npcParse.lua | 1.0 | 1.0 | Rockythechao | A library for specifying extra properties for an NPC via the in-editor message text and external JSON files. |
| rng.lua | 1.0.1 | 1.0.2 | Hoeloe | An improved random number generator, without the flaws of math.random. |
| deathTracker.lua | 1.0 | 1.0 | Enjl | Keeps track of the player's deaths in a level. |
| horikawaTools.lua | 1.0 | 1.0.1 | Horikawa Otane | A bunch of random helper functions. Most notably it features easily useable arrays to determine hittable vs unhittable vs boss NPCs. As well as powerup arrays, etc. Also provides various miscellaneous functions. |
| debug.lua | 1.2.1 | 1.2.1 | PixelPest | Allows for simple, dynamic debugging of simple values and tables. |
| depends.lua | 1.0 | Not Included | Kevsoft | A small utility API, which resolves API dependency chains. |
Deprecated/Obsoleted libraries for old LunaLua toolchains
| Name | Latest version | Version packaged with LunaLua | Author(s) | Deprecated in the LunaLua version | Description |
|---|---|---|---|---|---|
| graphX.lua | 0.3a (unstable) | 0.0.2 | Hoeloe, Rockythechao | 0.6 | An offshoot of colliders.lua made for drawing primitives. (Use sprite class) |
| triggers.lua | 1.0 | 1.0 | Hoeloe | 0.6 | A system for triggering LUA code via SMBX events. (Use onEvent) |
| LevelData.lua | 1.0.1 | 1.0.1 | Hoeloe | 0.6 | A small library which wraps up UserData values, allowing for level-specific variables more easily. (See "SaveData" and "GameData" tables) |
| bitwise.lua | 1.0.1 | 1.0.1 | Hoeloe | 0.7 | A library which provides functionality for bitwise operators. (Use luajit BitOP library) |
| asmmod.lua | 1.0 | 1.0 | Kevsoft | 0.6.1 | Assorted assembly functions. (Use Defines) |
| cinematX.lua | 0.8p (unstable) | 0.0.7 | Rockythechao, Hoeloe | 0.7.3 | A framework for boss battles, cutscenes and other dynamic NPC interactions. (See the newer libraries. For example, cutscenePal.lua by MrDoubleA.) |
| smb3overhaul.lua | 1.0.2 | 1.0.2 | XerX/XNBlank | 0.7.3 | A library that replaces original SMW Hud with SMB3 Styled Hud. |
| playerGfx.lua | 2.0b | 2.0b | Rockythechao | 0.7.3 | A library for overlaying or replacing Player graphics at runtime (No longer required since 0.7.3, PNG files can be replaced at runtime via using Graphics.sprites.playername[powerupid].img (playername=mario/luigi/peach/toad/link) function. Use costume system instead for SMBX2.) |
Obsoleted libraries since SMBX2 Beta 4
| Name | Latest version | Version packaged with LunaLua | Author(s) | Description |
|---|---|---|---|---|
| pnpc.lua | 1.0.1 | 1.0.2 | Rednaxela | A library which provides a convenient wrapper for NPC objects to allow them to be usable across ticks. (Intergrated) |
| multipoints.lua | 3.0.11 | 3.0.11 | Hoeloe | A library that expands the functionality of midpoints. (v3.0 is not compatible with LunaLua v0.6 or below). (Depreated along with npc-192 since SMBX2 Beta 4; Use npc-400, npc-430 and "Checkpoint" Class instead) |
| npcconfig.lua | 0.0.1a | 0.0.1a | Hoeloe | ALPHA An expansion library that allows access to some of the NPC configuration data at runtime. (Not required due to "NPC.config" field) |
| encrypt.dll | 1.0.1 | 1.0.1 | Hoeloe | A closed-source library which allows encrypted saving and loading from files. (NOTE: Codes saved with 1.0.0 are NOT compatible with 1.0.1) (Use tables "GameData / SaveData") |
| inputs2.lua | 1.0 | 1.1 | Rockythechao, HenryRichard | A modified version of inputs.lua that supports both players. (Use field "Player.keys") |
| bgofix.lua | 1.0.1 | 1.0 | Sambo | A library that makes BGOs more customizable. (Use background-x.txt) |
| paralX.lua | 1.4.4 (in SMBX2 Beta 3) | 1.1 | Rockythechao | A library for adding custom parallax background and foreground layers. (Use background2-x.txt) |
| textblox.lua | 0.4.7 (in SMBX2 Beta 4) | Not Included | Rockythechao | A library for displaying custom textboxes. (Replaced by textplus) |
| fade.lua | 1.0 | 1.0 | Kevsoft | A simple library for colored fading and colored overlays. (Use Graphics.drawScreen) |
| lineguide.lua | 1.0.0 | Not included | Sambo | A library which adds fully-functioning SMW Line Guides to SMBX and allows users to attach any NPC to a line. (Intergrated since SMBX2 Beta 4) |
| characters.lua | 1.1.2 | 1.1.2 | Horikawa Otane | Automatically loads character hitbox ini files if present. (SMBX2 Beta 3 bulitin feature. Costume System can be used as well.) |
| raocoin2.lua | 2.0.10 | 2.0.10 | Hoeloe | An expanded and more flexible currency and shop framework. (Use module currencies) |
| leveltimer.lua | 1.1.1.1 | 1.1.1.1 | Luigifan2010 | A simple API script used to provide a level timer. Warns at 100 time, kills both players on 0. (There's a Bulitin timer in SMBX2 Beta 4+) |
| eventu.lua | 1.1.0 | 1.1.0 | Hoeloe | An expansion library that manages events and timers. (Use "Routine" Class) |
| colliders.lua | 2.1.6h (in SMBX 2 Beta 3) | 2.1.4g | Hoeloe | A library designed to aid custom collisions. Requires VectR.lua as of version 2.1.0. Requires expandedDefines.lua (Only included in SMBX2) as of version 2.1.6. (SMBX2 Beta 4 Bulitin Feature as "Colliders") |
| helpfulCheats.lua | 0.1.0 | 0.1.0 | Pyro | Small library that adds a bunch of helpful cheats for testing, along with a few silly ones. |
| SMWcamera.lua | 1.3.2 | 1.3.2 | arabsalmon | A library that implements camera logic mimicking that of Super Mario World. (Use supermario_2001's version) |
| booBuddies.lua | 1.0.1 | 1.0.1 | S1eth | A library for creating circling boo buddies in the style of SMW or SMM (SMBX2 Beta 3+ Builtin NPC) |
| imagic.lua | 1.1.3 (in SMBX2 Beta 4) | Not Included | Hoeloe | A library for drawing primitives and UI elements. (Use Sprite Class) |
| animatx.lua | 0.2.2 (in SMBX2 Beta 4) | Not Included | Rockythechao, Hoeloe | A library for advanced, reusable spritesheet-based animation objects. (Use animatx2.lua) |
| sprite.lua | 1.0 | 1.0 | Kevsoft | A high-level library for creating (animated) sprites with movement abilities. (Use Sprite Class) |
| Smoovement.lua | 1.1 | 1.1 | Spinda | A library for creating sprite objects, complete with transformations and setting parents. (Use Sprite Class) |
| musix.lua | 1.0 | 1.0 | Hoeloe | A small library which simplifies the creation of music codes. (See Cheats and Section Classes) |
| vectR.lua | 1.0 | 1.0a | Hoeloe | A library for vector and matrix mathematics, supporting 2,3 and 4 dimensional vectors. (Use vector Class) |
Misc. Deprecated/Obsoleted Libraries
| Name | Latest version | Version packaged with LunaLua | Author(s) | Description |
|---|---|---|---|---|
| inputs.lua | 1.3 | 1.1 | Rockythechao | A basic library designed to simplify overriding input. (Use player.keys) |
| raocoin.lua | 1.1 | 1.1 | Hoeloe | A currency system framework using dragon coins. (Use module currencies) |
| click.lua | 1.1 | 1.1 | Yoshi021 | A small library for the cursor. (Use Cursor.lua) |
| Megaluavania.lua | 1.0.4 | Not included | Spinda | A recreation of the battle system from the game Undertale. |
| Nsmbwalls.lua | 0.9.0 | Not included | Sambo | A library which adds the "fake wall" effect from New Super Mario Bros Wii. (Use fakewalls.lua) |
Pages in category "LunaLua helper libraries"
The following 46 pages are in this category, out of 46 total.