凹凹実験所 / まる 2021/07/04 12:00

地道開発日記 防御システムのバグ取り作業完了

防御システムで発生したバグ取り作業を完了。

防御システムでは主人公以外の敵味方のシールド(一撃もらうと消える防壁)は
毎回ターン終了時に初期化&生成されるのだけど、

プレイヤーキャラでは問題無かったその初期化&生成が
敵キャラと仲間を対象にすると上手く動かず。
(プレイヤーキャラだけシステムが複雑で手順が違うため
何処かに差異がある模様(細かくは調べておらず)

そんなワケで、バグを調査してみたところ
シールドを解除するメソッド(スクリプト)を使ってシールド状態を解除し、
直後にシールドを張り直すと
その命令は即実行されず、先送りされるという状態である事が判明。

果たして原因は、使用している状態(ステート)系のプラグインか
あるいは、状態変化の即解除、即再実行を
スクリプトで行うと、基本的にそうなってしまう仕様なのか、

その辺りを調べるのは面倒極まりないので
(使用プラグインが多過ぎるので調べたくない)
原因は無視して解決方法のみを模索。

そしてスクリプトを使用しての状態変化&即張りは無理ながら、
MZの命令で同じ作業を行えば、問題無く実行できると判明したため

100個以上ある状態変化(ステート)を
一つずつ解除するよう設定していき、
それを一つにまとめて一括呼び出しして使用する事にした次第。

計130個x敵味方分、合わせて260項目を
ポチポチと手作業で設定していると、何か不毛な作業感が半端無いも、
原因を細かく調べたり、尋ねたりする手間を考えると
ゴリ押しの方が数段早く問題解決できるので、長々と地道に一つずつ項目を設定。


そうしてつつがなくシールド解除&再張りできるようになったため
目出度く問題解決。
しかしスクリプトなら1、2行で済むので、比べると手間暇が半端なし。

そんなこんなしつつ、
反撃用武器の画像をインターフェイスに反映し、
どの武器で反撃するかを、直に見て分かるよう表示強化し終えた所で
本日の作業終了。

バグが出ると作業の進みが悪くなるのが辛いところも
バグ無しに収めるのはほぼ不可能な話なので、致し方なし。
明日はできるだけバグが出ない事を願いつつ、
データ作りに勤しみたい、と思う次第。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索