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

RPGツクールMV」で制作したゲーム「The Last Wizard」、βテスト版も6回更新していますが、次から次に不具合やら要改善点やら出てきます。

本日はAndroid版もリリースし、そちらのテストプレイをしてくださる方もいらっしゃるため、さらに不具合が出てくる可能性があります。

さて、これからしばらく、ゲーム制作をおこなっていた時に失敗したなと思ったメモを小出しにしてゆきたいと思います。

ATBと相性の悪いスキル

今作では、私はどうしても戦闘シーンに「Active Turn Battle」を採用したかったため、「yanfly.moe」さんのところの「Active Turn Battle」を導入しました。

併せて、それを動かすのに必要な「Battle Engine Core」も導入しています。

yanfly.moe」さんのプラグインは愛用者も多く、これらを含むいくつかのプラグインは、日本語版「RPGツクールMV」の公式プラグインにもなっているほどなのですが、「RPGツクールMV」の素の状態の設定を大きく改変してしまうものも多く、βテスト開始当初から、たびたび相性問題に悩まされてきました。

中でもクリティカルだったのが、戦闘スピードを変更しても上書きされてしまう点と、「防御」コマンドを実行してもまるでダメージを軽減できていないという点。

前者については、「js/rpg_sprites.js」の1230行目にある数字を小さくすれば速度を改善できるらしいのですが、最初それをご教示いただいたあといくら試しても反映できないと思っていたら、どうやら「Battle Engine Core」が勝手にそのパラメータを初期値に戻しているようでした。

今回私は、「js/rpg_sprites.js」の設定を初期値に戻した上で、「Battle Engine Core」のあとに「sound sepher」さんの戦闘速度高速化プラグインを導入し、そちら側でパラメータをいじることで対処しました。

なぜか「防御」効果がなくなって悩まされたなど

後者の防御についてはさらにトリッキーで、設定の場所もさっぱりわからず、「防御」スキルや「防御」ステートをいじっても改善できず。

そちらについては、「Active Turn Battle」が「ターン」と認識している時間軸が、私の認識と異なっていたことに起因しているようです。

一般的なターン制のゲームであれば、コマンドを入力してから敵味方の攻防がすべて終わるまでが1ターンという扱いですが、「Active Turn Battle」では、あるキャラ(敵の場合もあり)が行動を決定してからその行動が終わるまでが、そのキャラにとっての1ターンと見なしているようです。つまり、あるキャラにとって、1ターン目終了後から2ターン目開始までに空白の時間が存在し、その間に敵から攻撃されてダメージを食らうと、直前のターンまで有効だったステートはもはや無効になっているため、防御コマンドの場合、ダメージ軽減効果ももはやないと言うことになります。

3ターン以上効果が持続するようなステートであれば、その扱いでも差し支えないのですが、1ターンで終了する「防御」コマンドでこの扱いは致命的です。そのため、今回私は、「防御」ステートの持続ターンを2ターンに引き上げ、次のターンの行動が終わるまではダメージを減らせるように設定し直しました。

Active Turn Battle」は面白いシステムだとは思うのですが、まだまだ私などが気づいていないトラップもありそうな気がしています。

もし次回作を作るとすれば、戦闘システムは別のものにした方がいいかもしれません(汗)。

そういえば、未解決の問題として、先制攻撃時になぜか逃走に失敗するというご指摘もいただいているのですが、もしかしてこれもATB絡みなのかな?

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

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

コメントを残す