事の経緯
高校の文化祭で作ることになった。以上!
使用する予定のソフトなど
どんな音ゲーにしたいか
速度変化があり、カメラが動く音ゲー(Arcaeaとかチュウニズムとか)にしたい。
ラインは4つで行きたい。ノーツの種類はタップ、ロングくらい。
なら譜面を作るのはどうすんの?
まず出来合いのソフトで譜面を作成し、独自の形式に変換してから速度変化の動作などを作る。
どんな形式なの?
以下簡単に書きます
{
"maindata": {
"music": "音源ファイル名(拡張子あり,文字列)",
"bpm": bpm(浮動小数点),
"offset": オフセット(浮動小数点...?)
},
"chartdata": {
"L1": {
"L1data": {
"notes": 1ライン目に降ってくるノーツの数
},
# 一列目の処理
"1": {
# タップノーツの場合
"speed": ノーツの速度(デフォルトは0.1,浮動小数点),
"time": 降ってくる(?)時間(浮動小数点),
"type": "tap"
},
"2": {
# ロングノーツの場合
"speed": ノーツの速度(デフォルトは0.1,浮動小数点),
"time": 始点が降ってくる(?)時間(浮動小数点),
"endtime": 終点の時間(浮動小数点),
"type": "long"
},
続く...
},
"L2": {
...
},
"L3": {
...
},
"L4": {
...
}
}
}
例(Tera-I/Oを使用させていただきました。また、譜面のデータは曲の途中までしかありません)
Tera-IO.json
{
"maindata": {
"music": "Tera-IO",
"bpm": 200,
"offset": 0
},
"chartdata": {
"L1": {
"1": {
"speed": 0.2,
"time": 0.0,
"endtime": 2.4,
"type": "long"
},
"2": {
"speed": 0.2,
"time": 9.15,
"type": "tap"
},
"3": {
"speed": 0.2,
"time": 9.6,
"type": "tap"
},
"4": {
"speed": 0.2,
"time": 10.799999999999999,
"type": "tap"
},
"5": {
"speed": 0.2,
"time": 10.95,
"type": "tap"
},
"6": {
"speed": 0.2,
"time": 11.1,
"type": "tap"
},
"7": {
"speed": 0.2,
"time": 11.25,
"type": "tap"
},
"8": {
"speed": 0.2,
"time": 11.4,
"type": "tap"
},
"9": {
"speed": 0.2,
"time": 11.549999999999999,
"type": "tap"
},
"10": {
"speed": 0.2,
"time": 11.7,
"type": "tap"
},
"11": {
"speed": 0.2,
"time": 11.85,
"endtime": 12.0,
"type": "long"
},
"L1data": {
"notes": 11
}
},
"L2": {
"1": {
"speed": 0.2,
"time": 2.4,
"endtime": 4.8,
"type": "long"
},
"2": {
"speed": 0.2,
"time": 9.2625,
"type": "tap"
},
"3": {
"speed": 0.2,
"time": 9.487499999999999,
"type": "tap"
},
"L2data": {
"notes": 3
}
},
"L3": {
"1": {
"speed": 0.2,
"time": 4.8,
"endtime": 7.199999999999999,
"type": "long"
},
"2": {
"speed": 0.2,
"time": 9.375,
"type": "tap"
},
"3": {
"speed": 0.2,
"time": 10.5,
"endtime": 12.0,
"type": "long"
},
"L3data": {
"notes": 3
}
},
"L4": {
"1": {
"speed": 0.2,
"time": 7.199999999999999,
"endtime": 9.6,
"type": "long"
},
"L4data": {
"notes": 1
}
}
}
}
変換ソフトは?
別パートで書きます。
判定は?
Perfect,Good,Bad,Missの4つ
得点は?
1000000点満点で行く。
内部的にはPerfectに5、Goodに3、BadとMissに0点をつける。
レイアウト(作るオブジェクト)
- ステージ
- タップノーツ(L1からL4まで)
- ロングノーツ(L1からL4まで)
- 判定
- コンボ
- スコア
- シークバー(?)
最後に
と、まぁこのような感じで作っていきます。
何日(7月中には終わらせたい)かかるかわかりませんが頑張ります(?)。
それでは次回パートまでしばらくお待ちください~
次回
とりあえずノーツを降らせるところまで行こう。
(ごめんなさい嘘書きました)
次パート