[ITG] フメンタイン2020投稿譜面について

はじめに

2020年3月7日に開催されたフメンタイン2020に投稿した2譜面について解説したいと思います。
配信のアーカイブはコチラ

動画

投稿譜面①
[ITG] SX14/SH16 Leaving All Behind


投稿譜面②
怒首領Papasito大往生デスレーベル 真緋Papasito・改

ダウンロード



選曲について

開催アナウンス~実施予定日(当初)の間でテストプレイできるタイミングが無く、アナウンス時点で自分でクリア済みの譜面が上記2譜面しかなかったため。
Papasitoについては怒首領Papasito大往生(https://twitter.com/kai_yuki/status/1228524550654021632)を既に公開していたため、譜面は変えずにluaを追加し演出を拡張することにしました。

Leaving All Behindについて

当初は32分地団駄の早入り遅抜け練習のつもりで作っていましたが、全くゲームにならなかったため24分にして易しめの地団駄練習譜面にしました。
声帯と弦の振動に合わせた自然な譜面になったと思います。
サビ終わりの地団駄は長音に加えてドラムのアクセントを32分で表現しています。
(地団駄中にドラムに合わせて強く震わせて踏めばOK)

Papasitoについて

今回は以下の点にこだわりました。
・実際にプレイ可能なPapasitoを公開する
・OpenITG/SM5の両方に対応
・難易度に応じてMOD無し/大往生/デスレーベルを選択可能にする


今回のイベント投稿にあたり、Papasitoをプレイアブルな形で公開したいということを考えていました。そのため、OpenITGとStepMania5の両方で動作し、かつluaによる演出のあり/なしを譜面難易度の形でプレイヤーが選択できるということが要件でした。


譜面はD18をイメージして楽しく踏めるものを作りました。動画はyoutubeに上げています。
(https://www.youtube.com/watch?v=MppMIFCnfdU)


難易度に応じて~の処理は以前ブログに書いた方法(https://kaiyuki.hatenablog.com/entry/2020/02/28/222425)で実現できました。
SM5対応について、xmlluaの変換はSM5+SimplyLoveの自動変換機能が非常に便利で、メイン部分はほぼ自動変換で対応できました。
ただSM5の難易度取得回りの仕様に色々とハマりポイントがあって解決に苦労しました(3日ぐらいかかった)
SimplyLoveの自動変換と難易度取得回りの仕様はいずれブログにまとめます。


luaについては大別して3つのことを実施しています。
・拍数を取得し、あるタイミングで動画からBGに切り替える
・コンボ数を取得し、累計コンボに応じて目を赤くしたり手の回転を早くする。また累計コンボが一定値に到達したら真緋Papasito・改に遷移する
・真緋Papasito・改においてそれぞれの弾(手)の位置・回転角度を都度計算して動かす


弾幕については怒首領Papasito大往生(https://twitter.com/kai_yuki/status/1228524550654021632)が大往生っぽくないというコメントがあったため、クリア動画を見たりしながらできるだけ近づけるようにしました。
具体的には、
・通常弾の他に4方向(2つは時計回り、もう2つは半時計回り)の赤弾を追加
・通常弾は曲がって飛んでくるようにした
・2体の同期は少しずらす
・2体の弾幕は通常の半分
弾幕は2日くらい調整して、何とかそれらしい形にはなりました。
しかしながら、以下の点については再現できていません。
・本体から出た弾が本体の近くで渦を巻くような形になっている点
・弾が本体から一定以上離れると曲がって飛んでいかなくなる点
・本来は5WAY(6WAYにしているのは元々のPapasitoが6本/12本だったことに準拠したため)
(元々のpapasito:
https://twitter.com/teneno22/status/1216638625854578688
https://twitter.com/teneno22/status/1216646684576321536)


今回のイベントではluaの作成や弾幕の調整など、短い期間の中で時間をかけて準備したのですが、luaに考慮漏れ(2Pでダブルに入るパターンを考慮していなかった)があり配信で流れなかったのが残念でした。
ただ、外部luaの呼び出しやSM5対応などの知見を溜めることができたのは良かったと思っています。
今後の譜面作成にも活かしていきたいと思います。