[VX] 命中率/回避率を詳細設定する
VX標準システムでは通常攻撃の命中率と回避率を設定する
項目が少なく、また、細かい設定ができない仕様でした。
この部分に対して、もう少し詳細設定ができるようにし、
より柔軟なシステムを構築できるようにスクリプトを改造しました。
スクリプト素材のダウンロードは↓
http://www.lm-t.com/blog/hit_evade_ex.zip
-----機能説明ここから-----
■基本情報■
1.機能概要
命中/回避率機能拡張スクリプトは、命中率と回避率に関連する
詳細な設定を行うことができるようにし、より柔軟な
ゲームシステムの設計を行うことができるようにするものです。
このスクリプトを導入することで、例えば下記のような仕様の
ゲームを構築することができるようになります。
・スイッチ・変数などによって敵または味方の命中率と回避率を
一時的に変更する
・ステートによって命中率と回避率を細かく変更する
2.カスタマイズ方法
命中/回避率機能拡張のカスタマイズ方法を下記に記載します。
(1) アクターの基本値
Configモジュールから設定します。(3章)
(2) 敵キャラの基本値
データベース「敵キャラ」から設定します。(VX標準)
(3) 武器・防具への適用
データベース「武器」「防具」から設定します。(VX標準)
(4) ステートへの適用
データベース「ステート」のメモ欄に記述します。(4章)
3.Configモジュールからの設定
Configモジュールに記述されているパラメータの意味と設定値を
下記に記載します。
(1) HE_ACTOR_HIT
アクターのデフォルト命中率(素手の場合)を指定します。
この値は 0~100 の範囲で指定してください。
単位は%(パーセント)です。
VX標準のデフォルト値は 95% です。
(2) HE_ACTOR_EVADE
アクターのデフォルト回避率を指定します。
この値は 1~100 の範囲で指定してください。
単位は「倍」です。
VX標準のデフォルト値は 5% です。
4.ステートで命中 / 回避率を増減する
付加されたステートによって命中率 / 回避率を増減するには
ステートのメモ欄にそれぞれの増減量を記述します。
(1) 命中率を増減する
(2) 回避率を増減する
(3) 両方を設定する場合
パラメータの値には増減する量を%単位で指定します。
この値に上限はありませんが小数点単位の値は指定できません。
小数点以下を記述するとエラーが発生します。
5.イベントのスクリプト命令からの設定
スイッチや変数、その他特定の条件によってアクター、または
敵キャラの命中 / 回避率を変更したい場合はイベントの
スクリプト命令から設定を変更できます。
また、値の取得も可能です。
[アクターの命中率を取得する]
Ex._get_actor_hit(
actor_id
)
[アクターの命中率を設定する]
Ex.set_actor_hit(
actor_id,
hit
)
[アクターの回避率を取得する]
Ex.get_actor_evade(
actor_id
)
[アクターの回避率を設定する]
Ex.set_actor_evade(
actor_id,
evade
)
[敵キャラの命中率を取得する]
Ex.get_enemy_hit(
enemy_index
)
[敵キャラの命中率を設定する]
Ex.set_enemy_hit(
enemy_index,
hit
)
[敵キャラの回避率を取得する]
Ex.get_enemy_evade(
enemy_index
)
[敵キャラの回避率を設定する]
Ex.set_enemy_evade(
enemy_index,
evade
)
(1) actor_id
設定を変更するアクターのIDを指定します。
(2) enemy_index
設定を変更する敵キャラのインデックスを指定します。
-1 を指定すると、全ての敵キャラに対して設定します。
(3) hit
命中率を指定します。
単位は %(パーセント)、0~100の範囲で指定してください。
(4) evade
回避率を指定します。
単位は %(パーセント)、0~100の範囲で指定してください。
アクターへの設定の場合、一度設定を変更すると、値は
セーブデータに記録されます。設定値を元に戻すには、同じ
アクターに元の値を指定するか、メンバーの入れ替え時に
「初期化」を行います。
敵キャラへの設定は、バトル時のみ行えます。
それ以外のシーンで設定を行っても、値は反映されません。
また、アクターとは異なり、敵キャラへの設定変更は、バトルが
終了すると、元の設定値に戻ります。
■導入手順■
1.導入前の準備
このスクリプトは
・拡張オプションスクリプト
上記スクリプトを最初に導入しておいてください。
すでに導入済みの場合はこの作業を省略できます。
2.スクリプトの追加と置換
(1) 追加
以下のスクリプトは標準のスクリプトには存在しないものなので、
手動で追加する必要があります。スクリプトの名前は各ファイル名
から「.txt」を除いたものにしてください。
Config.txt
Ex.txt
ただし、過去に公開された拙作のスクリプト素材を導入済みで、
すでに同じ名前のスクリプトが存在する場合は、以下のコメントで
囲まれている部分を手動で追加してください。
#T14-060 NEW--->
#<--------------
(2) 置換
以下のスクリプトの内容を書き換える作業を行います。
Game_Actor.txt → Game_Actor
Game_Battler.txt → Game_Battler
Game_Enemy.txt → Game_Enemy
上記で示したスクリプトに、以下のコメントで囲まれている部分を
手動で追加してください。
#T14-060 ADD--->
#<--------------
変更する箇所を間違えないように注意してください。
●注意
置換作業を行う前に必ずバックアップを取っておくようにしてください。
元のスクリプトの状況によっては、置換を行うことでスクリプトが
正常に動作しなくなることがあります。
-----機能説明ここまで-----
項目が少なく、また、細かい設定ができない仕様でした。
この部分に対して、もう少し詳細設定ができるようにし、
より柔軟なシステムを構築できるようにスクリプトを改造しました。
スクリプト素材のダウンロードは↓
http://www.lm-t.com/blog/hit_evade_ex.zip
-----機能説明ここから-----
■基本情報■
1.機能概要
命中/回避率機能拡張スクリプトは、命中率と回避率に関連する
詳細な設定を行うことができるようにし、より柔軟な
ゲームシステムの設計を行うことができるようにするものです。
このスクリプトを導入することで、例えば下記のような仕様の
ゲームを構築することができるようになります。
・スイッチ・変数などによって敵または味方の命中率と回避率を
一時的に変更する
・ステートによって命中率と回避率を細かく変更する
2.カスタマイズ方法
命中/回避率機能拡張のカスタマイズ方法を下記に記載します。
(1) アクターの基本値
Configモジュールから設定します。(3章)
(2) 敵キャラの基本値
データベース「敵キャラ」から設定します。(VX標準)
(3) 武器・防具への適用
データベース「武器」「防具」から設定します。(VX標準)
(4) ステートへの適用
データベース「ステート」のメモ欄に記述します。(4章)
3.Configモジュールからの設定
Configモジュールに記述されているパラメータの意味と設定値を
下記に記載します。
(1) HE_ACTOR_HIT
アクターのデフォルト命中率(素手の場合)を指定します。
この値は 0~100 の範囲で指定してください。
単位は%(パーセント)です。
VX標準のデフォルト値は 95% です。
(2) HE_ACTOR_EVADE
アクターのデフォルト回避率を指定します。
この値は 1~100 の範囲で指定してください。
単位は「倍」です。
VX標準のデフォルト値は 5% です。
4.ステートで命中 / 回避率を増減する
付加されたステートによって命中率 / 回避率を増減するには
ステートのメモ欄にそれぞれの増減量を記述します。
(1) 命中率を増減する
(2) 回避率を増減する
(3) 両方を設定する場合
パラメータの値には増減する量を%単位で指定します。
この値に上限はありませんが小数点単位の値は指定できません。
小数点以下を記述するとエラーが発生します。
5.イベントのスクリプト命令からの設定
スイッチや変数、その他特定の条件によってアクター、または
敵キャラの命中 / 回避率を変更したい場合はイベントの
スクリプト命令から設定を変更できます。
また、値の取得も可能です。
[アクターの命中率を取得する]
Ex._get_actor_hit(
actor_id
)
[アクターの命中率を設定する]
Ex.set_actor_hit(
actor_id,
hit
)
[アクターの回避率を取得する]
Ex.get_actor_evade(
actor_id
)
[アクターの回避率を設定する]
Ex.set_actor_evade(
actor_id,
evade
)
[敵キャラの命中率を取得する]
Ex.get_enemy_hit(
enemy_index
)
[敵キャラの命中率を設定する]
Ex.set_enemy_hit(
enemy_index,
hit
)
[敵キャラの回避率を取得する]
Ex.get_enemy_evade(
enemy_index
)
[敵キャラの回避率を設定する]
Ex.set_enemy_evade(
enemy_index,
evade
)
(1) actor_id
設定を変更するアクターのIDを指定します。
(2) enemy_index
設定を変更する敵キャラのインデックスを指定します。
-1 を指定すると、全ての敵キャラに対して設定します。
(3) hit
命中率を指定します。
単位は %(パーセント)、0~100の範囲で指定してください。
(4) evade
回避率を指定します。
単位は %(パーセント)、0~100の範囲で指定してください。
アクターへの設定の場合、一度設定を変更すると、値は
セーブデータに記録されます。設定値を元に戻すには、同じ
アクターに元の値を指定するか、メンバーの入れ替え時に
「初期化」を行います。
敵キャラへの設定は、バトル時のみ行えます。
それ以外のシーンで設定を行っても、値は反映されません。
また、アクターとは異なり、敵キャラへの設定変更は、バトルが
終了すると、元の設定値に戻ります。
■導入手順■
1.導入前の準備
このスクリプトは
・拡張オプションスクリプト
上記スクリプトを最初に導入しておいてください。
すでに導入済みの場合はこの作業を省略できます。
2.スクリプトの追加と置換
(1) 追加
以下のスクリプトは標準のスクリプトには存在しないものなので、
手動で追加する必要があります。スクリプトの名前は各ファイル名
から「.txt」を除いたものにしてください。
Config.txt
Ex.txt
ただし、過去に公開された拙作のスクリプト素材を導入済みで、
すでに同じ名前のスクリプトが存在する場合は、以下のコメントで
囲まれている部分を手動で追加してください。
#T14-060 NEW--->
#<--------------
(2) 置換
以下のスクリプトの内容を書き換える作業を行います。
Game_Actor.txt → Game_Actor
Game_Battler.txt → Game_Battler
Game_Enemy.txt → Game_Enemy
上記で示したスクリプトに、以下のコメントで囲まれている部分を
手動で追加してください。
#T14-060 ADD--->
#<--------------
変更する箇所を間違えないように注意してください。
●注意
置換作業を行う前に必ずバックアップを取っておくようにしてください。
元のスクリプトの状況によっては、置換を行うことでスクリプトが
正常に動作しなくなることがあります。
-----機能説明ここまで-----
この記事へのコメント