[VX] 毒によるダメージを詳細設定する
VX標準システムでは、毒によるダメージ(スリップダメージ)の
詳細設定が行えませんでした。ダメージ量は固定化され、
戦闘時においては受けたダメージが表示されないので、
毒の脅威がプレイヤーにいまいち伝わらない仕様になって
いました。
上記のようなVX標準システムの短所をある程度改善
できるよう、スクリプトを改造しました。
スクリプト素材のダウンロードは↓
http://www.lm-t.com/blog/slip_damage_ex.zip
-----機能説明ここから-----
■基本情報■
1.機能概要
スリップダメージ機能拡張スクリプトは、毒状態のような、
時間経過ごとにHPを失う状況(スリップダメージ)に関して、
その表現可能範囲をVX標準システムから拡張し、より高度な
設定を行えるようにすることでゲーム仕様の幅を広げられる
ようにします。
このスクリプトを導入することで、下記のような、VX標準の
システムではできなかった表現が可能になります。
・スリップダメージのダメージ量を変更する
・戦闘時、スリップダメージの量をメッセージ表示する
・歩行時、スリップダメージの演出を(ある程度)変更する
2.スリップダメージの適用方法
本スクリプトによるスリップダメージの拡張表現を使用するには
「スリップダメージ」にチェックを付けたステートをアクター、
敵キャラに付与するだけです。
拡張表現をカスタマイズする方法については、3章および4章を
参照してください。
3.カスタマイズ方法
スリップダメージ機能をカスタマイズするには、
Configモジュールに記述されているパラメータを変更することで
行います。設定するパラメータは下記の通りです。
(1) SLIP_DEFAULT_DAMAGE_IN_BATTLE
戦闘時にスリップダメージで受けるダメージ量を指定します。
このパラメータに指定するダメージ量の書式の詳細は
5章を参照してください。
(2) SLIP_MESSAGE_FORMAT_FOR_ACTOR
アクターがスリップダメージを受けた時に表示するメッセージ
の内容を指定します。
メッセージ中に [n] を含めると、その部分はアクターの名前に
置き換えられます。
メッセージ中に [d] を含めると、その部分は受けたダメージに
置き換えられます。
nil を指定するとメッセージは表示されません。(VX標準の動作)
(3) SLIP_MESSAGE_FORMAT_FOR_ENEMY
敵キャラがスリップダメージを受けた時に表示するメッセージ
の内容を指定します。パラメータの書式、扱いは (2) と
同様です。
(4) SLIP_DEFAULT_DAMAGE_WHEN_WALK
歩行時にスリップダメージで受けるダメージ量を指定します。
このパラメータに指定するダメージ量の書式の詳細は
5章を参照してください。
(5) SLIP_FLASH_COLOR_WHEN_WALK
歩行時にスリップダメージを受けた時のフラッシュの色を
指定します。この値は Color.new(R, G, B, A) の形式で
記述します。RGBAの各パラメータは、0~255 の範囲で指定
してください。
nil を指定するとフラッシュしなくなります。
(6) SLIP_SOUND_WHEN_WALK
歩行時にスリップダメージを受けた時に鳴らす音を
指定します。
ファイルは必ず Audio/SE から読み込もうとします。
ファイル名には拡張子を記述する必要はありません。
音を鳴らしたくない場合は nil を指定してください。
(7) SLIP_RESOLVE_CONFLICT_T14_042
拙作のRGSS2素材「敵ゲージ表示スクリプト」
と併用する場合の競合問題を解決するかどうかを指定します。
上記素材を導入済みの場合のみ true を指定してください。
(8) SLIP_RESOLVE_CONFLICT_T14_049
拙作のRGSS2素材「バトルスピード変更スクリプト」
と併用する場合の競合問題を解決するかどうかを指定します。
上記素材を導入済みの場合のみ true を指定してください。
4.ステート別に受けるダメージ量を変える
毒、猛毒 などのように、付与されたステートによって、受ける
ダメージ量を変化させたい場合があります。
本スクリプトでは、ステートに対してスリップダメージ量を
直接指定することもできます。
ステートにスリップダメージ量を直接指定するには、ステートの
メモ欄に下記のように記述します。
・slip_damage_battle
戦闘時にスリップダメージで受けるダメージ量を指定します。
・slip_damage_walk
歩行時にスリップダメージで受けるダメージ量を指定します。
(1) ダメージ量
ここには、ダメージ量の書式に従ってスリップダメージ時の
ダメージ量を記述します。書式の詳細は5章を参照して
ください。
メモ欄にスリップダメージ量が記述されていない場合は、
Configモジュールに記述されたダメージ量が使用されます。
5.ダメージ量の書式
スリップダメージによるダメージ量は、文字列で記述します。
書式は、下記の通りです。
"[基本値][基準値の種類]"
(1) 基本値
ここには整数値を指定します。
値に上限はありませんが、マイナス値は指定できません。
また、数字以外の文字は記述できません。
(2) 基準値の種類
基本値を元にして、何を基準にしてダメージ量を算出するかを
示す文字です。
"a" は基本値をそのままダメージ量として使用します。
"m" は対象の最大HPの何%かを示します。
"r" は対象の残りHPの何%かを示します。
[記述例]
"10a" → ダメージ10
"20m" → 最大HPの20%
"30r" → 残りHPの30%
6.その他注意点など
(1) スリップダメージを持つステートの複数付与
1体のアクターまたは敵キャラに異なるスリップダメージ量を
持つステートが複数付与されている場合、スリップダメージ量
として採用されるのは、「それらのステートのどれか」です。
つまり、どのステートがダメージ量算出に使われるかは状況に
よって異なる、という曖昧な動作になってしまいます。
この現象を避けるために、スリップダメージを持つステートが
同時に複数にならないよう、ゲームの仕様を調整することを
お勧めします。
■導入手順■
1.導入前の準備
このスクリプトは
・拡張オプションスクリプト
上記スクリプトを最初に導入しておいてください。
すでに導入済みの場合はこの作業を省略できます。
2.スクリプトの追加と置換
(1) 追加
以下のスクリプトは標準のスクリプトには存在しないものなので、
手動で追加する必要があります。スクリプトの名前は各ファイル名
から「.txt」を除いたものにしてください。
Config.txt
ただし、過去に公開された拙作のスクリプト素材を導入済みで、
すでに同じ名前のスクリプトが存在する場合は、以下のコメントで
囲まれている部分を手動で追加してください。
#T14-059 NEW--->
#<--------------
(2) 置換
以下のスクリプトの内容を書き換える作業を行います。
Game_Battler.txt → Game_Battler
Game_Party.txt → Game_Party
Scene_Battle.txt → Scene_Battle
上記で示したスクリプトに、以下のコメントで囲まれている部分を
手動で追加してください。
#T14-059 ADD--->
#<--------------
変更する箇所を間違えないように注意してください。
●注意
置換作業を行う前に必ずバックアップを取っておくようにしてください。
元のスクリプトの状況によっては、置換を行うことでスクリプトが
正常に動作しなくなることがあります。
-----機能説明ここまで-----
詳細設定が行えませんでした。ダメージ量は固定化され、
戦闘時においては受けたダメージが表示されないので、
毒の脅威がプレイヤーにいまいち伝わらない仕様になって
いました。
上記のようなVX標準システムの短所をある程度改善
できるよう、スクリプトを改造しました。
スクリプト素材のダウンロードは↓
http://www.lm-t.com/blog/slip_damage_ex.zip
-----機能説明ここから-----
■基本情報■
1.機能概要
スリップダメージ機能拡張スクリプトは、毒状態のような、
時間経過ごとにHPを失う状況(スリップダメージ)に関して、
その表現可能範囲をVX標準システムから拡張し、より高度な
設定を行えるようにすることでゲーム仕様の幅を広げられる
ようにします。
このスクリプトを導入することで、下記のような、VX標準の
システムではできなかった表現が可能になります。
・スリップダメージのダメージ量を変更する
・戦闘時、スリップダメージの量をメッセージ表示する
・歩行時、スリップダメージの演出を(ある程度)変更する
2.スリップダメージの適用方法
本スクリプトによるスリップダメージの拡張表現を使用するには
「スリップダメージ」にチェックを付けたステートをアクター、
敵キャラに付与するだけです。
拡張表現をカスタマイズする方法については、3章および4章を
参照してください。
3.カスタマイズ方法
スリップダメージ機能をカスタマイズするには、
Configモジュールに記述されているパラメータを変更することで
行います。設定するパラメータは下記の通りです。
(1) SLIP_DEFAULT_DAMAGE_IN_BATTLE
戦闘時にスリップダメージで受けるダメージ量を指定します。
このパラメータに指定するダメージ量の書式の詳細は
5章を参照してください。
(2) SLIP_MESSAGE_FORMAT_FOR_ACTOR
アクターがスリップダメージを受けた時に表示するメッセージ
の内容を指定します。
メッセージ中に [n] を含めると、その部分はアクターの名前に
置き換えられます。
メッセージ中に [d] を含めると、その部分は受けたダメージに
置き換えられます。
nil を指定するとメッセージは表示されません。(VX標準の動作)
(3) SLIP_MESSAGE_FORMAT_FOR_ENEMY
敵キャラがスリップダメージを受けた時に表示するメッセージ
の内容を指定します。パラメータの書式、扱いは (2) と
同様です。
(4) SLIP_DEFAULT_DAMAGE_WHEN_WALK
歩行時にスリップダメージで受けるダメージ量を指定します。
このパラメータに指定するダメージ量の書式の詳細は
5章を参照してください。
(5) SLIP_FLASH_COLOR_WHEN_WALK
歩行時にスリップダメージを受けた時のフラッシュの色を
指定します。この値は Color.new(R, G, B, A) の形式で
記述します。RGBAの各パラメータは、0~255 の範囲で指定
してください。
nil を指定するとフラッシュしなくなります。
(6) SLIP_SOUND_WHEN_WALK
歩行時にスリップダメージを受けた時に鳴らす音を
指定します。
ファイルは必ず Audio/SE から読み込もうとします。
ファイル名には拡張子を記述する必要はありません。
音を鳴らしたくない場合は nil を指定してください。
(7) SLIP_RESOLVE_CONFLICT_T14_042
拙作のRGSS2素材「敵ゲージ表示スクリプト」
と併用する場合の競合問題を解決するかどうかを指定します。
上記素材を導入済みの場合のみ true を指定してください。
(8) SLIP_RESOLVE_CONFLICT_T14_049
拙作のRGSS2素材「バトルスピード変更スクリプト」
と併用する場合の競合問題を解決するかどうかを指定します。
上記素材を導入済みの場合のみ true を指定してください。
4.ステート別に受けるダメージ量を変える
毒、猛毒 などのように、付与されたステートによって、受ける
ダメージ量を変化させたい場合があります。
本スクリプトでは、ステートに対してスリップダメージ量を
直接指定することもできます。
ステートにスリップダメージ量を直接指定するには、ステートの
メモ欄に下記のように記述します。
・slip_damage_battle
戦闘時にスリップダメージで受けるダメージ量を指定します。
・slip_damage_walk
歩行時にスリップダメージで受けるダメージ量を指定します。
(1) ダメージ量
ここには、ダメージ量の書式に従ってスリップダメージ時の
ダメージ量を記述します。書式の詳細は5章を参照して
ください。
メモ欄にスリップダメージ量が記述されていない場合は、
Configモジュールに記述されたダメージ量が使用されます。
5.ダメージ量の書式
スリップダメージによるダメージ量は、文字列で記述します。
書式は、下記の通りです。
"[基本値][基準値の種類]"
(1) 基本値
ここには整数値を指定します。
値に上限はありませんが、マイナス値は指定できません。
また、数字以外の文字は記述できません。
(2) 基準値の種類
基本値を元にして、何を基準にしてダメージ量を算出するかを
示す文字です。
"a" は基本値をそのままダメージ量として使用します。
"m" は対象の最大HPの何%かを示します。
"r" は対象の残りHPの何%かを示します。
[記述例]
"10a" → ダメージ10
"20m" → 最大HPの20%
"30r" → 残りHPの30%
6.その他注意点など
(1) スリップダメージを持つステートの複数付与
1体のアクターまたは敵キャラに異なるスリップダメージ量を
持つステートが複数付与されている場合、スリップダメージ量
として採用されるのは、「それらのステートのどれか」です。
つまり、どのステートがダメージ量算出に使われるかは状況に
よって異なる、という曖昧な動作になってしまいます。
この現象を避けるために、スリップダメージを持つステートが
同時に複数にならないよう、ゲームの仕様を調整することを
お勧めします。
■導入手順■
1.導入前の準備
このスクリプトは
・拡張オプションスクリプト
上記スクリプトを最初に導入しておいてください。
すでに導入済みの場合はこの作業を省略できます。
2.スクリプトの追加と置換
(1) 追加
以下のスクリプトは標準のスクリプトには存在しないものなので、
手動で追加する必要があります。スクリプトの名前は各ファイル名
から「.txt」を除いたものにしてください。
Config.txt
ただし、過去に公開された拙作のスクリプト素材を導入済みで、
すでに同じ名前のスクリプトが存在する場合は、以下のコメントで
囲まれている部分を手動で追加してください。
#T14-059 NEW--->
#<--------------
(2) 置換
以下のスクリプトの内容を書き換える作業を行います。
Game_Battler.txt → Game_Battler
Game_Party.txt → Game_Party
Scene_Battle.txt → Scene_Battle
上記で示したスクリプトに、以下のコメントで囲まれている部分を
手動で追加してください。
#T14-059 ADD--->
#<--------------
変更する箇所を間違えないように注意してください。
●注意
置換作業を行う前に必ずバックアップを取っておくようにしてください。
元のスクリプトの状況によっては、置換を行うことでスクリプトが
正常に動作しなくなることがあります。
-----機能説明ここまで-----
この記事へのコメント