【RPGツクールMV】【備忘録】制作失敗メモ(その2)

 自分が「RPGツクールMV」でゲーム制作をおこなった時の失敗メモ、最初に書き始めてから10日も経過してしまいましたが、ようやく第2弾を書けます。

 またしても、yanflyさんのプラグイン絡みの問題です。

「Battle Engine Core」設定ミスによるフリーズ

 前回申し上げておりますとおり、今作では、私はどうしても戦闘シーンに「Active Turn Battle」を採用したかったため、「yanfly.moe」さんのところの「Active Turn Battle」、およびそれを動かすのに必要な「Battle Engine Core」も導入しています。

 「Battle Engine Core」には戦闘関連の機能を拡張する数多くのオプションが用意されているのですが、そのうちの一つに実はとんでもない落とし穴がありました。

 βテスト開始からしばらくしてから、テストプレイヤー様によって、時々戦闘シーンでエラーメッセージが出てゲームがストップしてしまうという報告がなされました。

Cannot read property 'position' of null

 「TypeError / Cannot read property ‘position’ of null」と表示されてゲーム続行が不可能になるというエラーですが、私の環境ではなかなか再現しなかったので、原因がわからぬままずっと放置しておりました。

 しばらくして、私の環境でも再現するようになったものの、正直、最初にこの現象に見舞われた時は、開発環境のコンソールを見てもさっぱり訳がわからず、お手上げ状態でした。

 2度目に再発した時、発生直前に魔法反射の効果音が鳴ったことで、ようやく当たりをつけることが出来ました。

 「Active Turn Battle」導入でテンポが悪くなった戦闘シーンを締めるため、「Battle Engine Core」の設定も変更して、極力無駄なアニメーションを流さないようにしたのですが、そこで、なぜか1カ所だけ完全に停止させてはいけないオプションが用意されていたのです。

「Battle Engine Core」の設定 そのオプションは「Reflect Animation」。

 戦闘アニメーション関連の他のオプションは、すべて、アニメーションそのものを省略する時には「0」という値をセットすればよかったのですが、「Reflect Animation」だけはどういうわけか「0」をセットすると正常に動作せず、先述のエラーが発生してゲーム続行が不可能となります。

 この値を、初期値の「42」に設定し直して、それ以外は先ほどと全く同じ条件で、エラーが発生した戦闘シーンに突入してみたところ、魔法反射のシーンでゲームが止まることはなくなりました。

魔法反射成功

 実は、制作中のゲーム「The Last Wizard」では、魔法反射のステートをつけたアイテム類は数限られており、反射確率も低めに設定しています。そのため、なかなか再現できず、本現象発生の原因についても長らくつかむことが出来ていませんでした。

 次回作、作るかどうかわかりませんが、もし作るならばこのあたりについても気をつけなければなりませんね。

関連記事
【RPGツクールMV】【備忘録】制作失敗メモ(その1)

このブログで関連すると思われる他の投稿:

00
この記事はRPGツクール, 私的メモに投稿されました タグ: , , , , , , , , , , . このパーマリンクをブックマークする。 Trackbacks are closed, but you can post a comment.

コメントを残す