TASVideos

Tool-assisted game movies
When human skills are just not enough

Mugg / MLSS Lua Script

The purpose of this page is to serve as a documentation for the "MLSS Script", a Lua script for Mario & Luigi Superstar Saga I'm currently working on. It runs on the latest version of Bizhawk.

What it can do:

Table of contents [expand all] [collapse all]


Download

It is recommended to always use the latest version. I'm preserving old versions only for curiosity's sake.


Instructions

This section will explain how to use, or how to read information output by the script. (Note: This is based on version 0.11 r3. Some functionality and the new NPC viewer are not included in this guide.)


Follow Path Display

This shows you Mario's and Luigi's position relative to each other in a bird's view, and their follow path (the black line). This path is where the back brother will try to walk in order to catch up with the front brother. Knowing where the follow path is can be useful when performing the Luigi Hat Teleportation glitch, since the destination of the glitched teleports depends on the follow path.

Connect Path
This will draw lines from all of the follow path pixels to the front brother. When entering a new room, the follow path is usually far out of bounds, so using this will allow you to know the general direction of where those pixels are related to the brothers.

Connect Bros
This will draw a line between Mario and Luigi. Useful when one of the brothers is offscreen, to get an idea of what direction he is headed into.



Battle

This shows in-battle information such as enemies' and the brothers' stats, status ailments and status.

















Overview

This shows a bunch of things to the left of the game screen.

  • Top
    • Framecount (white color)
    • Lag count (red color)
    • Input display
    • RNG (grey color)
    • Room ID (grey color)

  • Stats
    • Level
    • Experience to level up
    • Health / Max Health
    • BP / Max BP
    • Pow
    • Speed
    • Stache

  • Bros Attack Uses
    (Amount of uses needed to learn the advanced version)
    • Sp (Splash Bros)
    • Bn (Bounce Bros)
    • Ch (Chopper Bros)
    • Kn (Knockback Bros)
    • Sw (Swing Bros)
    • Cy (Cyclone Bros)
    • Fi (Fire Bros)
    • Th (Thunder Bros)

  • Action Commands
    (The arrow indicates who is leading)
    (The Yellow number indicates how many frames it took to switch)
    • Luigi Back, Mario Front
    • Mario Back, Luigi Front

  • Bottom
    • Mush Power (= Extra attack power granted when wearing a Mush Badge. See here.)
    • Coins


Position

Shows Mario's and Luigi's position, in this order:
  • X (horizontal position)
  • Y (vertical position)
  • Z (how high the ground below you is)
  • Altitude (how high you are in the air)

Speed
Shows the difference in position between two frames (i.e. your speed).

E
Enables edit mode.

Reset
Sets the brothers' position to 0.



Stats

Shows Mario's and Luigi's stats.

Live
Switches to displaying the "live" stats. These are the values the game currently uses, adding boosts from equipment and possibly considering other aspects. They will be recalculated every once in a while (when leveling up or changing equipment). Editing these will directly take effect in the game, but not be permanent.

Base
Switches to displaying the "base" stats. These are the values the game will occasionally use to recalculate the "live" stats. Editing these will only take effect after a level-up or changing equipment, but be permanent.

E
Enables edit mode.




Items

Lets you view and edit the amount of items in your inventory. This includes consumables, beans, badges, pants, quest items and coffee items. You can change which armor you have equipped.

E
Enables edit mode.

List size
Lets you change how many items you want to display at a time.

Item kind
Lets you change what kinds of items you want to display.

Language
Lets you choose if you want to use English or Japanese item names.

Track
Lets you choose if you want to display items you currently have or all possible items.


Free Movement

This shows a few tools related to editing position.

Left, Right, Up, Down, Ascend, Descend
Depending on whether you click on the red or green buttons (or both), you move the brothers around directly. You can set the magnitude on the right bar.

Moonjump
If enabled, allows you to jump really high. You can set the magnitude on the right bar. Will stay enabled even if the display is closed.

Through Walls
If enabled, allows you to move directly through walls and across ledges. Will stay enabled even if the display is closed.





Action Commands

Shows Mario's and Luigi's action commands. The arrow indicates who is leading. The yellow number tells how many frames a switch takes.
  • Luigi back, Mario front
  • Mario back, Luigi front

E
Enables edit mode.

Barrel
Sets the current back brother's action command to "Hop on barrel".

Reset
Sets all action commands to 0.



Flags

A "flag" determines whether you have completed or acquired something in the game. This display allows you to view and edit useful flags.

E
Enables edit mode.












Audio

Allows you to edit audio.

Volume/Pace
By clicking on the bars, you can set the volume level or pacing level of the audio. Sl. 1/2/3 stands for Slots 1/2/3. The game is not consistent in which slots it will use for certain audio tracks, but usually there is one slot for BGM, SFX and in-battle BGM.

Reset
Resets the volume/pace levels to default values.

Play BGM
Attempts to play the selected BGM audio track.

Play SFX
Attempts to play the selected SFX audio track.

Stop audio
Attempts to kill all current audio tracks.


Savegames

Allows you to view and edit savegames.

Notes: Savegame memory is located in the two memory domains SRAM and EWRAM. The game loads from SRAM to EWRAM upon power-on/reset. The script lets you view and edit savegames as it appears in the SRAM and therefore, for any edits to take effect you must reset the game after you are done editing.

1/2/3
Selects the savegame slot.

E
Enables edit mode.

Sum
Shows the current selected savegame slot's checksum (1 byte in hex).

Auto-apply checksum
If enabled, will keep recalculating and writing the checksum for all savegames over and over. Will stay enabled even if the display is closed.
Note: This must be enabled if you edit your savegames. Otherwise the checksum detection will fail and the game doesn't load the savegame on power-on/reset.

Current file
Determines which savegame slot is currently used. When saving, the game will save over this slot.

Enable file
Determines which savegame slots are active. If a slot is inactive, the game considers it "empty" but its data will remain in SRAM indefinitely until saved over. Therefore, disabling a slot does not wipe it.


Misc

Allows to view and edit miscellaneous values.

E
Enables edit mode.














Run Event

An "event" is basicly a cutscene or other scripted occurence in the game. This display lets you run an event, making the game jump to certain parts in the game directly.

Prefixes:

  • "Progr" stands for Progress-related
  • "Boss" stands for Boss-related
  • "Game" stands for Minigames
  • "Scr" stands for Screens and menus
  • "Other" stands for anything else

Run Bugfixes
This will run a measure to prevent bugs, crashes or softlocks from happening. If you select a Boss-event, then post-battle events will not occur. If you select a shop-event, then post-shop dialogues will not occur. If you select the Little Fungitown minigame, then the post-minigame event will not occur. If you select the Green Pipe screen event, then the green pipe #1 will be unlocked if no green pipe is active yet - additionally, the index will be set to 1, preventing the game from softlocking on the Japanese version.
Recommended: Set this to On.

Override
This will override currently running events with the one you selected. On occasion, this may cause the camera to be stuck for good, and may also cause other unknown problems but otherwise works fine.
Recommended: Set this to Off.

Run
Clicking on this will run the selected event.


Warp to Room

Allows you to go to other rooms directly.

Set Pos/Cam
If enabled, after warping, attempts to set Mario's and Luigi's position to somewhere close to within the room and then adjusts the camera to point at the front brother.












Mush Calculator

This is a calculator used to determine Mush Power given certain mushroom counts. See here. The bonus values differ between the English (US, EU) and Japanese version (JP). The calculated value - rounded down to the next integer - is the Mush Power, shown in yellow color.

English/JP
Toggle the region.

+ -
Lets you edit mushroom counts (normal, super, ultra, max). This will not edit your inventory.

Apply
This will apply the mushroom counts to your inventory, editing it. This button only shows up if the region selected matches the currently loaded ROM.





Snake

This lets you play Snake. The objective is to get 100 fruits. Good luck!

















Script Settings

Lets you change various settings.

Change Font
Lets you select which font the script should use. I recommend an 8p font, such as "SF Intermosaic B". Currently, you can only select from a given list.

Add More Space
Lets you add more space around the game screen to move displays into. Useful if you want to use multiple displays at once.

Allow Edits
If disabled, hides all memory editing functionalities in the script, such as the E-buttons.

Run while paused
If enabled, you can navigate and interact with the script even when the emulator is paused.

Display Warnings
If enabled, will show warnings on the game screen:
- If the ROM is not Mario & Luigi
- If you edit memory
- If no movie is recording
- If Moonjump is enabled
- If Through Walls is enabled
- If Auto-Apply Checksum is enabled

Print Notifications
If enabled, will print notifications to the lua output console. Notifications include:
- The closing and opening of displays
- Changes in stats, money, bros attack uses and other values


Upcoming Features and Ideas

Bargain Prediction / Calculator

This is going to allow you to predict how much money you are going to sell or buy certain items for, given the brothers' stache.

Attack Prediction / Calculator

This is going to allow you to predict how much damage you will land, given a certain attack, certain stats, and a certain enemy.

RNG

This is going to allow you to predict lucky hits and possibly other aspects in the game.

Create Battle

This is going to allow you to create a custom battle and start it.

Follow Path v2

I would like to revise the current Follow Path display and add the ability to zoom in and out.


Known Issues

  • The actor list isn't up to date sometimes when opening it.
  • The savegame display crashes on Bizhawk 2.4 or newer.
  • Otherwise, no critical issues :)


Feedback

Please post your bug reports and feedback here:


Combined RSS Feed
Mugg/MLSSLuaScript last edited by mugg on 2021-03-03 11:48:05
Page info and history | Latest diff | List referrers | View Source