2.0.2 • Published 2 years ago
音札譜面フォーマット
- 各難易度は「ノーツ(0個以上のノートの集合からなる)」の配列です
- 音符の「位置」とは、楽曲の中で音符が判定ラインに到達する時間のことです
info
キーに譜面情報が格納されています
音符について
typeキー
値 | 意味 | 備考 |
---|
1 | 通常ノート | |
2 | ロングノート | endキーに終点情報 |
3 | 左フリック | optionキー使用 |
4 | 右フリック | optionキー使用 |
5 | 音札ノート | 全難易度で共通位置 |
92 | 停止 | |
93 | 瞬間移動 | |
94 | テクスチャ | optionキー使用 |
95 | 区切り線 | optionキーで幅を指定 |
96 | LED制御 | |
97 | 拍子変化 | optionキーで拍数を指定 |
98 | BPM変化 | optionキーでBPM値を指定 |
99 | EOF | 終了位置 1難易度に1回のみ |
100 | コメント | |
- 今後、種類が増えるときは91, 90, 89...と追加していきます
laneキー
- type: 1, 2 の時、音符のレーンを整数値で記述します
- type: 3, 4, 94 の時、音符のレーンを整数値で記述します
width
などのオプション(後述)を考慮した上で自由なレーンに音符を配置できます
- type: 95 の時、音符のレーンを整数値で記述します
length
オプション(後述)を考慮した上で自由なレーンに音符を配置できます
- type: 5 の時、
3
を記述します - 上記に該当しないtypeの場合はlaneキーは使用しません(
-1
とします)
measureキー
- すべてのtypeの時、音符の位置の小節数を整数値で記述します
position, splitキー
- すべてのtypeの時、小節内での位置を「position/split」となるよう記述します
- 「position/split」の値は0以上1未満になるようにします(1.0は、次の小節の0.0です)
- 小節の頭が0/1、ちょうど真ん中が1/2になります
- つまり、4分音符のときはsplitが4に、8分音符のときは8になります
type:95
かつ position: 0
の時は、当該小節の小節線を非表示にする効果を持ちます(小節線非表示制御)
optionキー
optionキーはStringの配列です。
数値型のオプションでは、Floatにパースできる文字列を指定してください。
type: 3 or 4(フリック)
option: [width: Float, offsetNumer: Integer, offsetDenom: Integer]
添字 | オプション名 | 型 | 必須 | 説明 |
---|
0 | width | Float | Yes | 中心を基点とした横幅(単位:1レーンの幅) |
1 | offsetNumer | Integer | No | 右側へのオフセット分数の分子 |
2 | offsetDenom | Integer | No | 右側へのオフセット分数の分母 |
- 注:ノートは中心を基点として
width
レーン分の横幅を持ちます。-1
の時は通常の幅(3レーン分)になります - 注:ノートは
offsetNumer/offsetDenom
レーン分、オフセットとして右側に移動します
type: 94(テクスチャ)
option: [source; String, width: Float, height: Float, offsetNumer: Integer, offsetDenom: Integer]
添字 | オプション名 | 型 | 必須 | 説明 |
---|
0 | source | String | Yes | 画像のソース(httpまたはhttpsプロトコル) |
1 | width | Float | Yes | 中心を基点とした横幅(単位:1レーンの幅) |
2 | height | Float | Yes | 下面を基点とした高さ(単位:1小節の高さ) |
3 | offsetNumer | Integer | No | 右側へのオフセット分数の分子 |
4 | offsetDenom | Integer | No | 右側へのオフセット分数の分母 |
- 注:ノートは中心を基点として
width
レーン分の横幅を持ちます(小数を使用可能)。-1
で通常の幅(3レーン分)になります - 注:ノートは
offsetNumer/offsetDenom
レーン分オフセットとして右に移動します(両方の値は正の整数)
type: 95(区切り線)
option: [length: Integer]
添字 | オプション名 | 型 | 必須 | 説明 |
---|
0 | length | Integer | Yes | 左面を基点とした横幅(単位:1レーンの幅) |
- 注:ノートは
lane
を起点として右側にlength
レーン分の長さを持ちます(値は-1または、1~5) - 言い換えると、
lane
番レーンの左端からlane+length-1
番レーンのの右端まで区切り線が描画されます - 小節線非表示制御のときは
-1
を指定します
type: 97(拍子変化)
option: [beat: Integer]
添字 | オプション名 | 型 | 必須 | 説明 |
---|
0 | beat | Integer | Yes | 変化後のn/4拍子の分子の値 |
- 注:このノートの後、
beatChange/4
拍子になります
type: 98(BPM変化)
option: [bpm: Float]
添字 | オプション名 | 型 | 必須 | 説明 |
---|
0 | bpm | Float | Yes | 変化後のBPMの値 |
- 注:このノートの後、
bpmChange
BPMになります
上記以外の場合は空の配列 []
とします
endキー
- type:2の時、その音符を始点とするロングノーツの終点を表す「ノーツ(1個以上のノートの集合からなる)」の配列を記述します
終点ノーツはすべてtype:1(またはtype:2)である必要があり、その個数とレーン位置は束縛されません (未対応仕様)
- 上記に該当しないtypeの場合はendキーは使用しません(空の配列
[]
とします)