This document describes the syntax for "standard" 3simai, based on how 3simai interpreted and played the chart file.
This is not intended to be an absolute guide, and you should adapt to whatever oddities your chart viewers/editors have.
3simai has 7 difficulties which are assigned numbers 1 to 7:
- EASY
- BASIC
- ADVANCED
- EXPERT
- MASTER
- Re:MASTER
- ORIGINAL/宴会場
Chart metadata is written in &<key>=<value>
form. For example: &title=Garakuta Doll Play
3simai only: When typing a value which contains reserved characters (&
, =
, +
, \
, %
), URL-encode it: & -> %26
.
Notes for implementors
maidata.txt
is simply an application/x-www-form-urlencoded
text file, please don't parse it by scanning through lines and finding keywords like &title=
or &artist=
.
Key | Details |
---|---|
title |
The title of the song. 3simai also supports subtitles, which is written smaller than the title and is seperated by a thick vertical bar ┃ : &title=BaBan!! ┃-甘い罠- |
artist |
The artist of the song. |
smsg |
A short message displayed on the introduction screen in PLAY mode in 3simai. |
des |
The name of the charter/note designer. |
first |
Chart offset in seconds, decides when the first note starts playing. |
lv_x |
The level of x difficulty. It can be a whole number with an optional + , or a single character: &lv_7=宴 , &lv_6=14+ , &lv_5=14 . |
inote_x |
The chart for x difficulty. |
smsg
, des
and first
can vary by difficulty level. To write difficulty-specific metadata, add _x
to the key, with x
corresponding to the difficulty.
Difficulty-specific metadata takes precedence over global metadata.
>> The chart offset for Re:MASTER is 1.234 seconds, while others are 1.5 seconds
&first=1.500
&first_6=1.234
>> Note designer for EXPERT is rioN, for MASTER is Jack
&des_4=rioN
&des_5=Jack
BPM needs to be specified at the very beginning of a chart. It can be a whole or decimal number.
To set the BPM to 123.45:
&inote_1=
(123.45)
The length between two beats in a song is one bar. By default, one bar consists of 4 quarters, since usually the time signature in songs is 4/4. However, if you want to place eighth notes, you will need to set the beat divisor:
&inote_1=
(123.45){8}
Now after this, one bar will consists of 8 equal parts.
The higher the number, the more notes you can place in one bar:
● are the notes that you can place
{1} ●○○○○○○○○○○○○○○○
{2} ●○○○○○○○●○○○○○○○
{4} ●○○○●○○○●○○○●○○○
{8} ●○●○●○●○●○●○●○●○
{16} ●●●●●●●●●●●●●●●●
But large numbers aren't always necessary. For example, if you set the beat divisor to 64, but there's only one note per bar, it would be a waste of text:
&inote_1=
(123.45){64}
1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Instead, you can lower the beat divisor and save characters:
&inote_1=
(123.45){1}
1,
(Advanced) You can also set a custom duration for each measure using the {#float}
syntax:
>> Make a measure last 1.5 seconds
&inote_1=
(123.45){#1.5}
1,
maimai note positions are numbered from 1 to 8, with 1 being the top right button, and 2-8 numbered clockwise:
8 1
7 2
6 3
5 4
Please go to each note type's individual section for more information:
Once you finish writing the chart, place a capital E
at the end:
&inote_1=
(120){4}
1,5,3,7,
{1}
5h[4:3],
8^3[8:7],
,
2b/3b,
,
,
E
Without this E
, the chart will abruptly end when the music stops playing, cutting short any SLIDEs and HOLDs.
However, you can't place E
after the music ends either.