不死身ステートを利用した全滅判定時にコンテニュー(復活→戦闘継続)を行う方法

あなたのゲームには、初心者プレイヤーやライトユーザ向けに、戦闘に救済処置を入れていますか?

  • 入れていない(「私の考えた最低の難易度ならクリアできるはず…」~「少しはレベリングしてでも遊んでほしい」など)

    Votes: 0 0.0%

  • Total voters
    5
:ehappy:「ちょっと君のゲーム、難しすぎるよ…救済処置とかってないの?」

:rhappy:「いやぁ~、技術的な問題で、うまくできないんだよね~。だから妥協しちゃうっていうか~…」

:eswt:「(そこ、妥協するところなのか…。)…と、いうと?」

:rsad:「不死身ステートは(解除するのを忘れて、ずっと不死身バグの要因になるから)あまり使いたくないんだけど…。」

:esrs:「なるほど。そこはわかってるんだ。じゃあ、敵グループイベントで、パーティ全員のHPが0なら、復活イベントを作ってみたら?」

:rswt:「そっか~。って…あれ? そういや、パーティ全員分の全滅判定ってどうやるんだろう?」

このようなことを想ったことはないですか? 今私がこの状態です…><。

■質問
・エディタの命令「条件分岐」のスクリプト一行で書けるもの、またはコモンイベントで特定スイッチ番号に出力できるもの
 → 不死身ステートを問わず、戦闘参加パーティ全員のHPが0以下のときだけON、他はOFF
 → 控えパーティは判定に含まない
・出来る限り、汎用性が高く、エラーが出ないもの
 → 戦闘参加パーティが可変で1人、5人以上の時でも使えるもの
 → undefinedやnullエラーにちゃんと例外処理がされてある

プラグインにすると敵グループイベントで呼び出しにくく、エディタ上で使いにくくなるため、
エディタ上で使えるスクリプト、またはコモンイベントで対応したいです。

一見簡単そうなのですが、プラグインで戦闘参加パーティ人数をデフォルトの4人以外に変更したりしていると、
エディタだけでは判定が難しく、結構悩まされる問題だと思っています。

なお、フトコロさんの戦闘全滅時に割り込むプラグイン https://forum.tkool.jp/index.php?threads/プラグイン「バトルイベントを拡張する-戦闘終了時にコモンイベント」.143/ などを使ってみましたが、
割り込んだコモンイベントが終了すると強制的に戦闘が終了してしまうため、
これだと復活イベントを起こしても強制的に戦闘が終了してしまい、戦闘継続は難しそうです。

力技でできなくはないとは思うのですが、どうしてもスクリプトを使うと1~数日スクリプトエラーに悩まされ、
気分が落ち込むのと、特に例外処理とかが自信が無くて…ここに投稿しました。。

できましたら、プラグインなどでこの判定を使ったことのある方の、エラー回避に自信のあるスクリプトを教えていただけますと幸いです。
 
最後に編集:

フトコロ

ユーザー
こんにちは。

FTKR_ExBattleEvent.jsには、戦闘勝利や敗北後のイベント内で実行すると、戦闘を再開させるプラグインコマンド「EBE_戦闘再開」があります。

これを使うことで、全滅回避イベントを作成することができます。
ただし、味方が全滅状態のまま再開してもすぐに全滅判定を受けてしまうので、誰か蘇生させるなどする必要があります。

以下は、全滅回避を行うイベント例です。
◆条件分岐:復帰したがOFF
◆文章:なし, ウィンドウ, 下
:  :一度だけ全回復で戦闘復帰できます。
:  :復帰しますか?
◆選択肢の表示:はい, いいえ (ウィンドウ, 右, #1, #2)
:はいのとき
◆全回復:パーティ全体
◆スイッチの操作:#0001 復帰した = ON
◆プラグインコマンド:EBE_戦闘再開

:いいえのとき

:分岐終了

:それ以外のとき
◆スイッチの操作:#0001 復帰した = OFF

:分岐終了

◆スイッチの操作:#0001 復帰した = OFF

これらは、プラグインパラメータ「Custom Victory Event」や「Custom Defeat Event」は、「0-変更しない」のままで動作します。
 
>フトコロさん
早速の返信、ありがとうございます!
FTKR_ExBattleEvent.jsには、戦闘勝利や敗北後のイベント内で実行すると、戦闘を再開させるプラグインコマンド「EBE_戦闘再開」があります。
申し訳ありません。お恥ずかしながら、見過ごしてました…><。
406460fb97c519ca07d4bf57c2e2d9b6.png
こんなにヘルプに丁寧に書いてあるのに、どうして見過ごしていたんだろうと、自分でも不思議です…。
今後はもっとヘルプをしっかり読むことにします。

なお、全滅時のコモンイベントの処理は、以下のようにしました。
bc700aac68c9fb81daff40becf780875.png
全滅時の処理を書き換え、敗北メッセージを表示した後、

・初心者救済モード(ヒーローモードがON)では、選択肢を表示させ、
 プレイヤーが希望すれば無制限にリベンジ(経験値増→全回復してそのまま戦闘継続)を可能にします。

・コアモード(ヒーローモードがOFF)では、そのまま戦闘を終了します。
 ただし、こちらもゲームオーバーにはならず、別のプラグイン http://qiita.com/merusaia/items/75c266e31435d5f3937c を使って戦闘終了後の処理を書き換えており、
 通常戦闘では特定の地点に戻され、イベント戦では敗北イベントに遷移します。

フトコロさんのプラグインのおかげで、想定していた通りの救済処置が実現できました。
とても感謝です!
 
トップ