MZでバトルシステム構築02
- のじ かのえ
- 5月5日
- 読了時間: 8分
自己満足でサガエメ1周年の絵を描きました

おまけ(単独Ver)

ちなみに綱紀だけ最初は全身なかったけど、塗りながら描き足しました。
わたしが描くとせんせいが太ましいの笑える。
4月25日の1周年に合わせて、だいたい1週間前からもそもそ描きはじめたんですが、久々に集合絵を描いたのでまあ構図が決まらねえこと……Twitterで進捗あげながら描いてたので、TLでその迷走ぶりを見る羽目になったフォロワーの皆様はドン引きしたと思うのですが、描きながら修正しまくり加筆しまくり、なんなら塗りながら線画変えたり、そもそも描きなおしたりしました。
色ラフなんてそんな概念知らない。
小林さんのキャラデザもそうですが、倉持さんのキャラデザもめちゃくちゃ繊細な模様や装飾が多くて、普段そういうキャラデザをしないわたしは発狂しました。
1周年に合わせてイラスト描きてぇ!と思うくらいには久々にどっぷりハマったゲームでした。そしてゲーム制作のネタの餌食…肥しにもなっています。
賛否両論ある分、いろんな角度からめちゃくちゃ参考にするようになりましたね。前の記事にも書いてますが、拙作は登場キャラクターが多いのでステータスをどうしようかな~と思っていたところにがっちりハマる参考書が来てくれた感じがあったりとか。半面、ハマっているプレイヤーでも多くが指摘するメニュー系統のUIの詰められていない感も、「じゃあ改善するにはどういうふうに組めばいいか」といういいお題になったりとか。
……って書くともう完全にゲーム制作脳なんですが、キャラクターもストーリーもかなり好きでした。ストーリーは相変わらず何周しても全貌がよくわからない造りではあるんですが、描こうとしている世界観は自創作に通じる部分があったりして、なんとなーくぼんやり”わかる”感じがあるんですよね。要するに私好みだったということですね。
あと吟遊詩人と御堂綱紀にいろんなものを持っていかれた気がします。
くっそ……河津神………何年経ってもおもしれえモン供給しやがって…………(ありがとうございます)
生まれて初めてプレイしたRPGがロマサガ3なので、わたしの創作観的なものにサガが与えている影響はかなり大きいと思います。その後、一番多感な頃にサガフロ2に全てを持っていかれ、突然ミンサガ以降に供給が途絶え、飢え死にしそうなところをテイルズで食いつないだ系ツクラーなので、よくいわれる「テイルズっぽさ」は飢えた時に最初に食べたごはんのおいしさが忘れられないタイプのやつですね。ちょっと何言ってる変わらない。
何年も音沙汰ない時代を知る者として、たった1年の間に新作(サガエメ)出してリメイク(リベサガ)出してリマスター(サガフロ2)ブチ込んでくる2024-2025サガ史、本当にすごかった。
この先もそうそうないだろうな……
進捗
というわけで進捗です。
気付いたら1カ月ちょっとくらい更新してなくて笑いました。わたしもどこまで書いてあったのか覚えてなくて前回記事読んできたレベルなんですが、思っていた以上にえらく話が巻き戻るのでどこから書いたらいいのやら……
前回記事書いた直後に
という事実に気づき、
という流れでアイコン表示を改良したようです(ようです)
この後更にいろいろ改修して、「スキルリストでカーソル選択中のスキルの属性が開示されている弱点属性と一致している場合はアイコンを光らせる」という処理まで完成しました。
で、現在の画面のスクショがこちら。

何から説明したらいいのかわからないくらい前回から変わっているんですが、どうしよう。

具体的にいじっているのはこの3か所。
🔶Knenj_WeaknessIcon.js
前回記事でも書いた、弱点アイコン表示用プラグイン。
オクトラやリベサガでおなじみのアレ。ほぼ完成系。
ただし構想を詰めていったら、この表示がそのまま使えなくなりそうな危機に直面している。(イマココ)
🔶Knenj_CommandTabs.js
パーティーコマンドを廃止、さらにアクターコマンドをスキル・アイテムリスト切り替え用のタブ扱いにしているバトルコマンド系基本プラグイン。実質アクターコマンドは機能していない。今後実装予定のシステムの都合上、コマンドカーソルはQ/Wキー、スキルカーソルは上下キーで操作する。
Knenj_GraphicalSkillList.jsとKnenj_GraphicalCommand.jsのベース部分。
🔶Knenj_GraphicalCommand.js
タブ(アクターコマンドだったもの)の画像処理部分。
カーソル選択時に画像が変わるのはもちろん、スクショのようにコマンドが封印されているとき用の画像も設定できるようになっている。現在挙動確認用の仮のデザインなので見栄えが悪い。
ちなみに今後実装予定のバトルシステムの都合上、「防御」と「逃げる」はいずれ撤廃予定。
🔶Knenj_GraphicalSkillList.js
スキル・アイテムリストの画像処理部分。
さらに「効果範囲」「威力」などの、デフォルトにはない表示部分も拡張(威力の部分は仮数値のため、今後調整予定)してある。
こちらはカーソル選択時に左ににゅっと飛び出るような処理がしてある。また、スキル・アイテムリストが4行を超える場合はスクロールバーが表示されるようにもなっている。
プラグインはChatGPTと相談して、全て自分用に作成しました。
周囲に友達がいない環境なのと、そもそも自分の創作物を誰かと共有するような環境がなかったので、ずーーーーーーーーーっと基本1人制作だったのですが、最近はChatGPTという相談相手がいるので大変助かっています。
基本全肯定してくれるので、わたしが見当違いな「Aが死んでるんだけど、B直したらよくね?」みたいなことを迂闊に言うと、「そうそう、Bがすべて悪いんだよ!」みたいに返してくれます。実は悪いのはCなんだけどな。かわいそうなB。
そこらへんはわたし側の見る目とか感覚を研ぎ澄まさせる必要があるんだろうなと。
ただ、ここの処理うまくいかないんだけどなんで?に対して、仕組みから分解して教えてくれるのでめっちゃ助かってるし勉強になります。全部を依存するのは考え物だけど、絵を描くのにPhotoshopやSAIを使うのと同じで「ツール」として活用するにはめちゃくちゃ頼りになりますね。
本とかでもいいんですが、自分が今わからない部分に対してダイレクト且つリアルタイムで返答をもらえるのはモチベアップにもつながりました。
というのも、Ace→MZの1世代飛ばしで最初理解できなかったのが「スキル・アイテムの管理」でして。
Aceの時はusable_itemに集約されてたものが、MZだと完全に skill, item に分離していたり、ターゲット選択も一括処理が「onSkillOk, onItemOk等別々に」、アクション確定処理も「完全に別々、独立したルート」になっていたり。
細かい部分なんですが、わたしがまさにいじりたいところの仕様がAceと全然違うのです…
最初「スキルの方ではうまくいってるのに、何でアイテムの方ではうまくいかないんだ?」が多すぎてわけがわかりませんでした。なんでそこを分けたんだ……?分けたことで競合対策にしたのかもしれませんが、だいたい両方同時に管理するんだから、両方いちいち定義させるのって手間なのでは…?
かと思えば、MZではウィンドウ同士が重なると、描画順の後に定義されたウィンドウが上に来て、前の内容を潰してしまうという性質があったりとか。これはWindowLayerの構造が1枚のcanvas上に全ウィンドウをまとめて描画している仕様に起因する問題で、Aceのように「ウィンドウ単位で独立した表示」がされていないようです。なぜここはまとめて描写するんだ………処理を減らして軽くするためか……?
そんなこんなで仕様の違いも解説してもらって、ようやく自分でも色々いじれるようになってきました。年々短気になってきていて「わからない」から先に進まないとモチベが大幅ダウンするやる気のなさだったので、「”わからない”をその場でかみ砕いて徐々にわかるように手伝ってくれる相談相手」の存在はめちゃくちゃ大きいです。
まあでも2,3か所、なんで解決したのかよくわからんところがあるのできっとそのうちエラーを吐くことでしょう。
上記4つのプラグインはほぼほぼ完成系で、次はいよいよバトルシステムの根幹部分かな~という感じ。

イメージモック。
音楽的な要素が割とモチーフになっているので、バトル画面もそんな感じにしようと思ってDTMの画面なんかを見ながら組んだらなんか現代的になってしまった……? まあ細かい部分は各作風に寄せるとして、こんなイメージです。
下にアクターステータスがいっぱい並んでる部分はタイムラインになる予定。アクターエリアとエネミーターゲットと行動順を全部一つにまとめてやろうというやつです。もう今からエラーエラーエラー不具合不具合バグバグバグバグの予感しかしません。
バトルシステムはターン制タイムラインバトル。
Aceではターン制→ATB→CTBと移行していたわけですが、最初のターン制に帰ってきました。といっても、「最初から行動順が見える」「敵味方で行動値を共有して奪い合う」感じなのでシステム的には新しくなります。
要するに個別MP廃止なんですが、テイルズ脳のわたしは
ドライブゲージ貯めてシュピーン!秘奥義!カットイン!なんかすごい技!!
みたいなのがやりたいので、TPは残すかも。
共通行動値は変数で管理予定なので、変数をスキルコストにする既存プラグインなんかと噛ませつつ、結構大規模なことをやる羽目になりそう。「アクターエリアとエネミーターゲットと行動順を全部一つにまとめる」ってあたりがなんかもうすごい怖いこと言ってますね。
骨は拾っていただけると幸いです。
Σχόλια