マイクラ肝試し2020が終わってからスタッフとしての作業を紹介していたのですが、TwitterやYouTubeのフォローや色んなご支援をしていただいたので、お礼と言ってはあれですがメリーゴーランドの制作過程をコマンドが分からない人でも伝わるくらいに噛み砕いて説明したいと思います。
このくらいしか今の所お返しするものがない💦
[マイクラ肝試し2020]忘備録や制作SSまとめ | CUTPLAZA DIARY
下の動画に時間ごとの目次(キャプション)をつけましたのでそれと照らし合わせて、以下の説明を読んで下さい。
[マイクラ肝試し2020]メリーゴーランド制作過程からの設置後YouTube
0:00 アマスタ起点でmobを固定&回転
中心に光っているのがアーマースタンドですが、これが動物の位置の固定と回転を一挙に担っています。
TPで固定する方法は色々ありますが、どちらにしても人が乗る場合、回転させる対象はあまり位置を移動させるTP処理入れないほうが良いと判断しました。
理由としてはTPの処理をプレイヤーが受けることを避けたかったのですね。いわゆるTPバグへの保険です。
ここではまだ1体しかいませんが、全てのエンティティが配置されてから、回転方向への向きを調整する処理を入れています。
0:12 回転mobの上下移動&鞍付きmobを固定&手綱
アーマースタンドに固定したエンティティに鞍(サドル)付きのエンティティをTPさせます。
馬などは鞍がつけられるのですがパンダにはつかないというのもありますが、鞍がつく動物は移動させられる可能性があることに対する対策です。
また、TP移動させているエンティティの位置にTPさせたエンティティという2段階にすることで、プレイヤーに対する負荷ですとかTPバグ的なものをかかりにくくしています。
手綱はまた別の手綱用エンティティを追随させています。
上下移動に関してはTPではなく、スコアボードでエンティティのデータを直接書き換えています。これにより複雑な処理をすることなくなめらかに上下させています。
0:41 上下移動の際の鞍付きmob位置の調整
TPで回転移動しているエンティティの位置にTPさせている鞍付きのエンティティですが、動物の大きさに応じて、座ったときのお尻の位置が変わります。
また、TPしているエンティティの位置にTPさせるので少しラグが起きます。なので上下移動の際の位置を動物ごとに調整が入っています。
0:41 上下移動の際の鞍付きmob位置の調整
シングルで出来上がったものをデータパックとして鯖に導入して、そこから自動化させるためのオンオフの装置を赤医師回路やコマンドを駆使して設置しました。
当初は一つの鯖での可動を想定してマルチ鯖特有の人数によって起きる遅延にも人数判定による対応を追加しています。