特殊な特徴を実現する【RPGツクールMZ&MVプラグイン】

2024年07月13日

 特殊な特徴を実現します。


 各オブジェクト(アクター、エネミー、職業、装備、ステート、スキル)に対して、特殊な特徴を設定できます。
 スキルについては覚えているだけで、発揮するパッシブスキルとなります。

 例えば、以下のような特徴を設定できます。

  • 与えるダメージ、受けるダメージ倍率を変更する。
  • ステートの継続ターンを変更する。
  • 無敵になってあらゆる効果を受けなくする。

 上の動画では無敵効果によって、FFの竜騎士っぽいジャンプ技を実現しています。

目次


導入方法(Install)

更新履歴(History)

ダメージ倍率の変更(Damage Rate)

ステート継続ターンの変更(State Turn)

無敵(Invincible)

プラグインパラメータ(Plugin Parameter)

<ダメージ倍率関連>(DamageRate)

対象のダメージタイプ(DR_DamageType)
対象の命中タイプ(DR_HitType)
対象のスキルタイプ(DR_SkillType)

導入方法(install)


 以下のリンクを右クリックで保存し 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_TraitsEX.js ver1.051(2025/03/15)

更新履歴(History)


2024/07/13 -> 2025/03/15(ver1.05 -> 1.051)


2024/05/21 -> 2024/06/17(ver1.04 -> 1.041)


2024/03/25(ver1.03)

  • 自動戦闘のアクターが最適な行動を選択できなくなる不具合修正。
    ※特にMVでは行動自体ができなくなっていた。

2023/10/24(ver1.02)


2023/10/02 -> 2023/10/19(ver1.011 -> 1.012)

  • ダメージ倍率関連の条件を細かく指定できるように機能追加。
  • 無敵効果がMVでエラーになる不具合修正。(2023/10/19 ver1.012)

2023/09/02(ver1.00)

  • 公開!

ダメージ倍率の変更(Damage Rate)


 オブジェクトのメモ欄に以下を指定してください。

<InflictedDamageRate:1.5>

 与えるダメージを1.5倍にします。
 1.0が100%に相当します。
 なお、こちらの機能に対してはスキルの性能を変化させるプラグインのほうがより詳細に設定できます。

 また、数式も有効です。

 例:HPが減るほど与ダメージ増加(最大200%)
<InflictedDamageRate:1 + 1*(1 - a.hp/a.mhp)>

<ReceivedDamageRate:1.5>

 受けるダメージを1.5倍にします。
 1.0が100%に相当します。

 以降はダメージ倍率の変更を行うスキルを判定するための条件です。
 組み合わせて使用してください。

<DamageRateDamageType:1,5>

 ダメージタイプ1,5のスキルのダメージ倍率を変更します。
 1:HPダメージ, 2:MPダメージ, 3:HP回復, 4:MP回復, 5:HP吸収, 6:MP回復です。
 ※省略時はプラグインパラメータの設定を使用します。空欄にした場合は全て有効となります。

<DamageRateHitType:1>

 命中タイプ1のスキルのダメージ倍率を変更します。
 0:必中, 1:物理攻撃, 2:魔法攻撃です。
 ※省略時はプラグインパラメータの設定を使用します。空欄にした場合は全て有効となります。

<DamageRateSkillType:0,2>

 スキルタイプ0,2のスキルのダメージ倍率を変更します。
 通常だと0は通常攻撃、2:必殺技です。
 対応については、データベースのタイプ>スキルタイプをご覧ください。
 ※省略時はプラグインパラメータの設定を使用します。空欄にした場合は全て有効となります。

<InflictedDamageScript:[Script]>

 与えるダメージ倍率によってスクリプトを実行します。
 <InflictedDamageRate>とセットで使用してください。

 例:ダメージ倍率が1.5以上の場合にフラッシュを実行します。
<InflictedDamageScript:1.5 <= rate ? $gameScreen.startFlash([255,255,255,128], 10) : null>

 ちなみに『$gameScreen.startFlash([赤,緑,青,強さ], 時間)』です。

<WeakEffectCondition:[Script]>

 指定したスクリプト条件を元に、NRP_DamageEffect.jsにおける弱点として判定するようになります。
 <InflictedDamageRate>とセットで使用してください。

 例:ダメージ倍率が1.5以上の場合に弱点として扱います。
<WeakEffectCondition:1.5 <= rate>


ステート継続ターンの変更(State Turn)


 オブジェクトのメモ欄に以下を指定してください。

<InflictedStateTurn:1>

 与えたステートの継続ターンを1延長します。

<ReceivedStateTurn:-1>

 受けたステートの継続ターンを1減らします。

<TargetStateTurnType:test>

 ステートターンタイプを"test"に設定します。
 上述の継続ターンを影響させるステートを限定させたい場合に組み合わせて使用します。

 さらにターンを延長したいステートのメモ欄に以下を指定してください。
<StateTurnType:test>

 ※カンマ区切りで複数指定も可能です。
 (例:<StateTurnType:test1,test2>)


例:与えた毒ステートを延長する特徴を持った職業

 職業のメモ欄に以下2つを指定
<InflictedStateTurn:1>
<TargetStateTurnType:poison>


 毒ステートのメモ欄に以下を指定
<StateTurnType:poison>


無敵(Invincible)


 オブジェクトのメモ欄に以下を指定してください。

<Invincible:1>

 無敵になってあらゆるスキルを受けつけなくなります。
 数値が0なら結果非表示, 1ならミス、2なら回避として扱います。

 また、スキルのメモ欄に以下を指定すると、無敵状態を無視して命中するスキルを作成できます。
<IgnoreInvincible>

 なお、バトラーが無敵状態かどうかは以下の関数で判定できます。
a.isInvincible()

 ※aはバトラー

プラグインパラメータ(Plugin Parameter)


<ダメージ倍率関連>(DamageRate)

 ダメージ倍率変更の対象とするスキルの条件を指定します。

対象のダメージタイプ(DR_DamageType)

 ダメージ倍率を変更するダメージタイプ。
 複数可。
 0:なし, 1:HPダメージ, 2:MPダメージ, 3:HP回復, 4:MP回復, 5:HP吸収, 6:MP吸収

対象の命中タイプ(DR_HitType)

 ダメージ倍率を変更するスキルの命中タイプ。
 複数可。
 0:必中, 1:物理攻撃, 2:魔法攻撃

対象のスキルタイプ(DR_SkillType)

 ダメージ倍率を変更するスキルタイプ。
 複数可。
 標準だと0:通常攻撃. 1:魔法, 2:必殺技となります。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 10:23 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする

レベルアップ時にパラメータ表示や演出を追加【RPGツクールMZ&MVプラグイン】

2024年07月09日

 レベルアップ時に以下のような機能を追加します。



 なお、上記の動画は戦闘勝利時の表示をカスタマイズするプラグインによってウィンドウを引き伸ばしています。
 

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

DynamicMotionについて(About DynamicMotion)

応用(Application)

プラグインパラメータ(Plugin Parameters)

パラメータ一覧(ParameterList)

列数(NumberOfColumns)

表示フォーマット(DisplayFormat)

レベルアップ効果音(LevelUpSe)

レベルアップME(LevelUpMe)

Dynamic用スキル(DynamicSkill)

<多重職業連携用>(<AdditionalClasses>)

レベルアップ効果音(AC_LevelUpSe)
レベルアップME(AC_LevelUpMe)
Dynamic用スキル(AC_DynamicSkill)

導入方法(install)


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_LevelUpDirection.js ver1.02(2024/07/09)

更新履歴(History)


2024/07/09 -> 2024/07/21(ver1.02 -> 1.021)

  • 非戦闘メンバーのレベルアップ時に演出が存在する場合、エラーになってしまう不具合修正。
  • 多重職業の設定をしなかった場合は制御文字も埋め込まないようにした。(2024/07/21 ver1.021)
    ※ルビ系プラグインと組み合わせた場合などの競合が改善します。

2024/06/05(ver1.01)

  • 一部条件で循環参照エラー(Object too deep)が起きる問題へ対処。
    ※NRP_DynamicAnimationMapMZ.jsを戦闘終了時に並列実行していた場合など。

2023/05/01 -> 2023/06/06(ver1.00 -> 1.001)

  • 公開!
  • Dynamic用スキルを指定した状態で、マップ上でレベルアップメッセージを表示するとエラーになる不具合修正。(2023/06/06 ver1.001)

使用方法(Usage)


 適用するとレベルアップ時の上昇パラメータが表示されるようになります。
 あとはお好みで効果音などを設定してください。

 なお、DynamicAnimation&Motionや多重職業プラグインとの連携には、該当のプラグインを導入する必要があります。

DynamicMotionについて(About DynamicMotion)


 DynamicMotionによって、モーションを指定した場合は、通常の勝利モーションが解除されます。

 必要ならスキルのメモ欄の末尾で以下のようにモーションを再設定してください。
 なお、勝利モーション以外のものを指定しても構いません。
<D-Motion>
motion = victory
</D-Motion>


応用(Application)


 制御文字を使用することで細かい調整も可能です。
 例えば、表示フォーマットを「\c[15]%1\c[0] +%2」とすれば、パラメータ名だけ色を変えることができます。

 他にもデータベースの用語のレベルアップにウェイトを挟めば、MEの演奏待ちをさせたりできます。
 (例:%1は%2 %3 に上がった!\|\|)

プラグインパラメータ(Plugin Parameters)


パラメータ一覧(ParameterList)

 レベルアップ時に表示するパラメータの一覧です。
 パラメータの表示名を変更したり、追加のパラメータを表示したりできます。

 例えば、TPをレベル成長させるプラグインと連携させれば、最大TPの成長量を表示させることも可能です。

列数(NumberOfColumns)

 パラメータを表示する際の列数です。

表示フォーマット(DisplayFormat)

 パラメータの上昇量を表示するフォーマットです。
 %1: パラメータ名, %2: 上昇量

レベルアップ効果音(LevelUpSe)

 レベルアップ時に鳴らす効果音です。

レベルアップME(LevelUpMe)

 レベルアップ時に演奏するMEです。

Dynamic用スキル(DynamicSkill)

 レベルアップ時に実行するDynamicAnimation&Motionのスキルです。
 使用には該当プラグインが必須です。

<多重職業連携用>(<AdditionalClasses>)

 多重職業プラグインとの連携用の項目です。
 該当プラグインを使用しないなら無効です。

レベルアップ効果音(AC_LevelUpSe)

 追加職業のレベルアップ時に鳴らす効果音です。

レベルアップME(AC_LevelUpMe)

 追加職業のレベルアップ時に演奏するMEです。

Dynamic用スキル(AC_DynamicSkill)

 追加職業のレベルアップ時に実行するDynamicAnimation&Motionのスキルです。
 使用には該当プラグインが必須です。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 20:01 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする

対象サイドの変更(パーティアタックなど)を実現【RPGツクールMZ&MVプラグイン】

2024年07月08日

 戦闘時、通常とは異なる対象サイドへ、攻撃やスキル、アイテムを使用できるようにします。
 例えば、味方を攻撃したり、敵を回復したりできます。


 眠った仲間を叩き起こしたり、アンデッドに回復魔法をかけてダメージを与えたり、あるいはFFシリーズのバーサクのように、味方にかけても敵にかけてもメリット・デメリットのある異常を作成したりと様々な工夫が考えられます。

 また、対象カーソルプラグイン(NRP_BattleTargetCursor)との併用によって、対象サイドの切替方法をカスタマイズできます。

 通常、範囲が全体などのスキルは対象選択が表示されませんが、プラグインパラメータによって対象選択を表示できます。
 他の機能を無効化すれば、それ専用のプラグインとしても活用できます。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

スキル(アイテム)のメモ欄(Note)

プラグインパラメータ(Plugin Parameter)

全スキルを有効化(EnableAllSkills)

タッチ操作を有効化(EnableTouch)ver1.02

常に選択を表示(AlwaysSelection)ver1.01

使用者も選択を表示(UserSelection)ver1.01

敵味方全体も選択を表示(EveryoneSelection)ver1.01

PageUp/Downでサイド切替(ChangeSideByPageUpDown)

左右でサイド切替(ChangeSideByLeftRight)

上下でサイド切替(ChangeSideByUpDown)

ウィンドウ表示を維持(KeepWindow)


導入方法(install)


 以下のファイルを右クリックで保存し 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_PartyAttack.js ver1.021(2024/07/08)

 ※このプラグインに合わせて以下のプラグインを修正しています。
  併用される場合は更新をお願いします。



注意点

 以下のプラグインと併用する場合は登録順に注意してください。

  • NRP_BattleTargetCursor.js:当プラグインよりも上に配置
  • NRP_VisualTurn.js:当プラグインよりも下に配置

更新履歴(History)


2023/11/22 -> 2024/07/08(ver1.02 -> 1.021)

  • タッチ操作でもパーティアタックできるように対応。
    タッチ操作を有効化(EnableTouch)
    で切替可能です。
  • NRP_SkillRangeEX.jsとの連携時、『全体時の主対象条件(要するに前列攻撃など)』によるターゲット表示が正しくない不具合修正。
    (2024/07/08 ver1.021)

2021/08/13 -> 08/21(ver1.01 -> 1.011)

  • 範囲が全体、ランダムのスキルでも対象選択&サイド切替できるよう対応。
    常に選択を表示』のパラメータをオンにすると有効になります。
    それに伴い、以下のプラグインも修正しているので、更新をお願いします。
    NRP_BattleTargetCursor.js
    NRP_SkillRangeEX.js
  • 範囲が『敵にランダム』のスキルでパーティアタックすると、範囲が全体に変化してしまう不具合修正。(08/21 ver1.011)

2021/08/06 -> 08/07(ver1.00 -> 1.001)

  • 公開!
  • コマンドをキャンセルした際、対象サイドの反転が残ってしまう不具合修正。(ver1.001)
  • 動作対象を変更した場合、ミラーリングが逆方向に動作する不具合修正。
    ※DynamicMotion側の修正です。(08/07)

使用方法(Usage)


 導入するだけで対象サイドの切替が有効となります。
 初期状態ではPageUp/Downで対象サイドを切り替えられます。
 (ゲームパッドではいわゆるLRボタンに相当)

 初期状態では範囲が全体やランダムのスキルは、対象選択が表示されないため、サイドを変更できません。
 『常に選択を表示』のパラメータをオンにすることで、それらのスキルも対象サイドを切り替えられるようにできます。

 さらにプラグインパラメータによって、左右キー(サイドビューを想定)や上下キー(フロントビューを想定)で、対象サイドを切り替えられるように設定できます。

 ただし『左右でサイド切替』および『上下でサイド切替』をオンにしても、それだけでは違和感のある挙動になります。
 これはNRP_BattleTargetCursorとの組み合わせを想定しているためです。

 例えば『左右でサイド切替』をオンにする場合は、上下で対象を切り替えられるようにしてください。
 『上下でサイド切替』をオンにする場合はその逆です。

スキル(アイテム)のメモ欄(Note)


 スキル毎に対象サイドの変更を無効化または有効化できます。
 スキルのメモ欄に以下を指定してください。
<PermitSideChange:true>

 対象サイドの変更を有効化します。(trueは省略可)
<PermitSideChange:false>

 対象サイドの変更を無効化します。

 指定がない場合はプラグインパラメータにある『全スキルを有効化』の設定に従います。
 演出や効果の都合で味方にかけられると不都合のあるスキルがある場合は、これらの方法で切り替えてください。

プラグインパラメータ(Plugin Parameter)


全スキルを有効化(EnableAllSkills)

 全てのスキルで対象サイドの変更を有効とします。
 オフにすると全てのスキルで無効となります。
 ※アイテムも含みます。

 その上で、さらにメモ欄で例外を指定する想定です。

タッチ操作を有効化(EnableTouch)ver1.02

 タッチ操作による対象サイドの変更を有効とします。

常に選択を表示(AlwaysSelection)ver1.01

 範囲が全体などのスキルにおいても、対象の選択を表示します。
 これにより、対象サイドの切替を有効とします。

使用者も選択を表示(UserSelection)ver1.01

 範囲が使用者のスキルにおいても、対象の選択を表示します。

敵味方全体も選択を表示(EveryoneSelection)ver1.01

 範囲が敵味方全体のスキルにおいても、対象の選択を表示します。

PageUp/Downでサイド切替(ChangeSideByPageUpDown)

 PageUp/Downによって対象サイドの切り替えを行います。
 ゲームパッドではLRボタンに該当します。

左右でサイド切替(ChangeSideByLeftRight)

 左右キーによって対象サイドの切り替えを行います。
 NRP_BattleTargetCursorとの組み合わせによって、上下で対象を切り替えられるようにすることを想定しています。

上下でサイド切替(ChangeSideByUpDown)

 上下キーによって対象サイドの切り替えを行います。
 NRP_BattleTargetCursorとの組み合わせによって、左右で対象を切り替えられるようにすることを想定しています。

ウィンドウ表示を維持(KeepWindow)

 ウィンドウの表示を維持します。
 つまり、アクター・エネミーウィンドウの表示を切り替えないようにします。
 こちらもNRP_BattleTargetCursorとの組み合わせを推奨します。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 09:48 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする