6.1 KiB
.msg
syntax
Character Set
[font=normal]
: 𝅘𝅥𝅮!#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_`abcdefghijklmnopqrstuvwxyz{|}~°ÀÁÂÄÇÈÉÊËÌÍÎÏÑÒÓÔÖÙÚÛÜßàáâäçèéêëìíîïñòóôöùúûü¡¿ª♥★↑↓←→●✖“”‘’ ⒶⒷⓈ▲▼◀▶ⓁⓇⓏ
[font=title]
and [font=subtitle]
: ABCDEFGHIJKLMNOPQRSTUVWXYZ'.,0123456789©&
Tags
Similar to BBCode, tags begin with [
and end with ]
. They may take positional arguments (value
) and named arguments (arg=value
). The order of named arguments does not matter. Values are parsed as integers if possible, and hexidecimal integers are supported. Tag names and argument names are case-insensitive.
To write a literal [
character (and not start a tag), prefix it with a backslash; i.e. \[
.
[message name section= index=]...[/message]
Marks the beginning and end of a message.
All parameters on the opening tag are optional.
If section
and/or index
are omitted, the message will be allocated a section and/or index respectively.
[br]
Line break.
[prompt]
Waits for the A button to be pressed before continuing.
[next]
Scrolls down the message box to begin a new 'paragraph.'
[sleep n]
Waits for n
frames before continuing.
[color= ctx=]
Supported color names are:
ctx=normal
(default): normal red pink purple blue cyan green yellow
ctx=diary
: normal red
ctx=inspect
: dark
ctx=button
: blue green red yellow gray grey
ctx=popup
: normal red pink purple blue teal green yellow
ctx=sign
: normal red blue green
To use other colors, provide color
as an integer (e.g. [color=0x10]
). Here are all the colors supported by the engine:
[/color]
Resets the color to what it was before the most recent [color=]
tag. The default color at the start of the message is assumed to be [color=normal]
, which is true for most messages.
[a]
[b]
[l]
[r]
[z]
[start]
[c-up]
[c-down]
[c-left]
[c-right]`
Shorthand for the button prompt characters ⒶⒷⓁⓇⓏⓈ▲▼◀▶ respectively. You can override the color used with a named parameter [a color=]
.
Supported color names: blue green red yellow gray grey
[style=]
Sets the box style to use for this message. Supported styles are:
[style=right]
[style=left]
[style=center]
- Standard speech bubble with the speaker coming from the given direction
[style=tattle]
- Small bubble used for overworld tattles
[style=choice x= y= w= h=]
- Box for multiple-choice options
[style=inspect]
- Internal narration box, often used when inspecting objects by pressing A
[style=sign]
[style=lamppost]
[style=postcard]
- Boxes with custom backgrounds
[style=popup]
- Box in center of screen that grows dynamically depending on how long the message is
[style=upgrade x= y= w= h=]
- Super Block box
[style=narrate]
- Narration; used when you obtain new partners
[style=epilogue]
- Used for post-chapter descriptions of what Mario and party did
[font=]
Supported fonts: normal title subtitle
Note that the title
and subtitle
fonts use a different character set to normal
.
[/font]
Resets the font to what it was before the most recent [font=]
tag.
[noskip]...[/noskip]
Disables the B button from skipping text within.
[instant]...[/instant]
Causes all text within to appear instantly.
[kerning=]
Modifies the spacing between letters.
[scroll n]
Scrolls down n
lines.
[size x= y=]
Changes font size.
[/size]
Resets the size back to x=10 y=10 (the default).
[speed delay= chars=]
Changes text printing speed. delay
is the number of frames between each print, and chars
is the number of characters to print at once. For example, [speed delay=5 chars=3]
would print 3 characters every 5 frames.
[pos x= y=]
Overrides the current text printing position.
x
is optional. If only y
is provided, the x position will not change.
[indent n]
Indents the following text by n
tabs.
[up n]
and [down n]
Moves the text printing position up/down by n
pixels respectively.
[image id]
Displays the given image. This requires extra setup when printing the message.
There is also a 7-parameter variant of image
that is not yet understood.
[sprite unknown id raster]
Displays the given sprite.
[item a b]
Displays the given world icon.
[cursor n]
and [option n]
Denotes the position for the hand cursor to appear and the start of the option text for choice n
of a [style=choice]
box.
[choicecount=]
Sets the number of options given in this [style=choice]
box.
[cancel=]
Sets the option number to be selected if the user presses B. If this is not provided, pressing B does nothing.
Effects
[shaky]...[/shaky]
[noise fade=]...[/noise]
[faded-shaky fade=]...[/faded-shaky]
[fade=]...[/fade]
[shout]...[/shout]
or[shrinking]...[/shrinking]
[whisper]...[/whisper]
or[growing]...[/growing]
[scream]...[/scream]
or[shaky-size]...[/shaky-size]
[chortle]...[/chortle]
or[wavy-size]...[/wavy-size]
[shadow]...[/shadow]
[var n]
Replaced with the value of message variable n
. Must be set before the message is printed.
[center=]
Centers the following text. Parameter purpose is unknown.
[volume=]
Changes the volume of the following text.
[sound=]
Changes the speech sound for the following text.
Supported sound names: normal bowser spirit
You can also use an integer for the parameter.
[/sound]
Resets the speech sound to what it was before the most recent [sound=]
tag.
[note]
[heart]
[star]
[circle]
[cross]
[arrow-up]
[arrow-down]
[arrow-left]
[arrow-right]
Equivalent to the characters 𝅘𝅥𝅮♥★●✖↑↓←→ respectively.
[raw ...]
Outputs all arguments provided as bytes, without modification.
[func ...]
Same as raw
, but prefixed with 0xFF.
Comments
//
line comments are allowed anywhere outside of a [message]...[/message]
block and will be ignored.
Block comments are not supported.