chart-types
v2.0.2
Published
音札譜面フォーマット
Downloads
2
Readme
音札譜面フォーマット
- 各難易度は「ノーツ(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キー
|1|2|3|4|5| |---|---|---|---|---| |壱|弐|参|肆|伍|
- 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キーは使用しません(空の配列
[]
とします)