バトラーの影を設定&浮遊効果の追加【RPGツクールMZ&MVプラグイン】

2021年12月01日

 バトラーの影に関する設定を行います。
 また、バトラーを宙に浮かせる演出ができます。FFシリーズにおけるレビテトっぽいステートも作成可能です。


主な特徴

  • 敵キャラにアクターと同じような影を作成可能。
  • バトラーの影の大きさや位置を変更可能。
  • バトラーの画像サイズに合わせた自動調整も可能。
  • バトラーを浮遊させる設定が可能。
  • バトラーを浮遊させるステートを作成可能。
  • DynamicMotionおよびanimatedSVEnemies.jsに対応。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

メモ欄の設定(Note Settings)

影幅の自動調整(Auto Shadow Size)

プラグインパラメータ(敵キャラ)

影を作成(EnemyMakeShadow)

影の画像(EnemyShadowImage)

影の拡大率X(EnemyShadowScaleX)

影の拡大率Y(EnemyShadowScaleY)

影のX座標(EnemyShadowX)

影のY座標(EnemyShadowY)

影のZ座標(EnemyShadowZ)

影の不透明度(EnemyShadowOpacity)

浮遊効果の高さ(EnemyFloatHeight)

浮遊効果の振幅(EnemyFloatAmplitude) ver1.01

浮遊効果の周期(EnemyFloatPeriodicTime) ver1.01


プラグインパラメータ(アクター)

影の画像(ActorShadowImage)

影の拡大率X(ActorShadowScaleX)

影の拡大率Y(ActorShadowScaleY)

影のX座標(ActorShadowX)

影のY座標(ActorShadowY)

影のZ座標(ActorShadowZ)

影の不透明度(ActorShadowOpacity)

浮遊効果の高さ(ActorFloatHeight)

浮遊効果の振幅(ActorFloatAmplitude) ver1.01

浮遊効果の周期(ActorFloatPeriodicTime) ver1.01


プラグインパラメータ(共通)

浮遊開始位置をランダム化(RandomStartFloatHeight) ver1.021


その他(Other)


導入方法(Install)


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

 NRP_ShadowAndLevitate.js ver1.04(2021/12/01)

 以下のプラグインと併用する場合は、それらよりも下に登録してください。
  • animatedSVEnemies.js
  • NRP_DynamicMotion.js or NRP_DynamicMotionMZ.js

 さらに以下のプラグインを最新に更新してください。
 ※バージョンに食い違いがあると動作しない可能性があります。

MZ版

 NRP_DynamicAnimationMZ.js ver1.13(2020/11/20)
 NRP_DynamicMotionMZ.js ver1.11(2020/11/26)

MV版

 NRP_DynamicAnimation.js ver1.221(2020/11/26)
 NRP_DynamicMotion.js ver1.17(2020/11/26)

 ※ツクールMZにおいて、バトラーに浮遊時の上下変動を設定した際に謎の線が見える不具合があります。対処するプラグインを用意しましたので、こちらもご確認ください。(2021/12/03)
 http://newrpg.seesaa.net/article/484654081.html

更新履歴


2021/12/01(ver1.04)

  • 前回の更新から影が敵の上に表示されてしまう不具合に対応。
  • 影を使用しない場合も、浮遊演出が有効となるように修正。
    ※例えば、背景が空や水中の場合を想定。

2021/11/25(ver1.03)

  • EnemyCallsAlly.jsなど敵キャラを途中追加するプラグインと併用すると、影が無限増殖する競合に対処。

2021/10/10(ver1.02 -> 1.021)

  • 特定の条件で影が表示されない不具合を修正。
    ※MVかつDynamicMotion(表示優先度の有効化をオン)と併用しない場合など。
  • 浮遊開始時の高さをバラつかせるように調整。

2021/04/02(ver1.01)

  • 浮遊時の上下変動を実装。
    それに伴い『浮遊効果の振幅』『浮遊効果の周期』のパラメータを追加。

2020/11/26(ver1.00 -> 1.001)

  • 公開!
  • 『影を作成』を空欄にできるように調整。(ver1.001)

使用方法(Usage)


 プラグインパラメータで、影の設定をしてください。
 なお、プラグインを導入しただけでは敵キャラの影は表示されません。『影を作成』をオンにする必要があります。

 敵キャラおよびアクターのメモ欄に以下を記載すれば、個別の設定も可能です。
 ※<BattlerFloat>のみステートにも有効です。

メモ欄の設定(Note Settings) ver1.01更新


<MakeShadow>
<MakeShadow:false>

 影を有効/無効にします。

<ShadowScaleX:?>
<ShadowScaleY:?>

 横幅・縦幅それぞれの影の拡大率を変更します。1.0が標準です。

<ShadowScale:?>

 影の拡大率を変更します。こちらは横幅・縦幅の両方を同時に変更します。

<ShadowX:?>
<ShadowY:?>

 影の位置を調整します。値は足元からの差分となります。

<ShadowOpacity:?>

 影の不透明度を変更します。255で不透明になります。

<BattlerFloat>
<BattlerFloat:?>

 バトラーが宙に浮きます。高さはプラグインパラメータの設定値に従います。
 高さを数値で個別に指定することも可能です。

<FloatAmplitude:?>

 浮遊時の振幅を変更します。
 この二倍の高さ分だけ浮遊時の位置が変動します。

<FloatPeriodicTime:?>

 浮遊時の周期を変更します。60が1秒に相当します。

 また、<BattlerFloat>, <FloatAmplitude> <FloatPeriodicTime>の3項目のみステートのメモ欄でも有効です。
 例えば、FFシリーズのレビテトのようなステートが作成できます。

影幅の自動調整(Auto Shadow Size)


 初期状態では敵の『影の拡大率X』『影の拡大率Y』に
 以下のような数式が設定されています。

a.width / shadow.width * 1.5

 これは『(本体画像の横幅 / 影画像の横幅) * 1.5』の意味です。
 つまり、本体画像の横幅 * 1.5倍へと影画像を自動で拡大します。気に入らない場合は各自調整をしてください。

 ※なお、標準の影画像"Shadow2"は画像内に空白が含まれています。設定上の数値より小さく見えるので注意してください。
 加えて、MZとMVでサイズが異なります。初期設定はMVだと少し大きいかも知れません。


プラグインパラメータ(敵キャラ)


 敵キャラの影に関する設定です。

影を作成(EnemyMakeShadow)

 敵の影をアクターと同じように作成します。
 空欄の場合は原則的に影を作成しません。ただし、『animatedSVEnemies.js』と併用した場合のみ、対象の影を作成します。

影の画像(EnemyShadowImage)

 敵の影に使用する画像です。
 初期設定ではアクターと同じ『Shadow2』が設定されています。

影の拡大率X(EnemyShadowScaleX)

 敵の影画像の横方向への拡大率です。
 初期値では本体の横幅に合わせて拡大します。

 初期値の『a.width / shadow.width * 1.5』については、既に上で説明済みなので省略します。

影の拡大率Y(EnemyShadowScaleY)

 敵の影画像の縦方向への拡大率です。
 初期値では本体の横幅に合わせて拡大します。

 基本的には『影の拡大率X』と同じ値でよいかなと思います。

影のX座標(EnemyShadowX)

 敵の影のX座標位置を調整します。

影のY座標(EnemyShadowY)

 敵の影のY座標位置を調整します。
 マイナス値を入力すると影が上に移動します。
 初期値は『(a.height / 20) * -1』です。これは『本体の縦幅/20』だけ上にずらすという意味です。

影のZ座標(EnemyShadowZ)

 敵の影のZ座標(表示優先度)の初期値です。
 この値はDynamicMotionなど表示優先度による並び替えを行うプラグインと併用する場合のみ有効です。

影の不透明度(EnemyShadowOpacity)

 敵の影の不透明度です。255で不透明になります。

 ただし、初期状態だと255でも半透明で影が表示されます。これは『Shadow2』の画像自体が既に半透明の処理が施されているためです。

浮遊効果の高さ(EnemyFloatHeight)

 敵の浮遊効果の高さです。数式可。
 敵キャラのメモ欄にを記述した場合に有効となります。
 また、ステートのメモ欄にを記述し、そのステートに敵キャラがかかった場合も有効になります。

浮遊効果の振幅(EnemyFloatAmplitude) ver1.01

 敵の浮遊効果の振幅です。数式可。
 この二倍の高さ分だけ浮遊時の位置が変動します。
 つまり、値が10なら上に10ピクセル、下に10ピクセルの合計20ピクセル分だけ上下移動します。

 無効にする場合は0に設定してください。

浮遊効果の周期(EnemyFloatPeriodicTime) ver1.01

 敵の浮遊効果の振幅の周期です。数式可。
 60が1秒に相当します。

プラグインパラメータ(アクター)


 アクターの影に関する設定です。

影の画像(ActorShadowImage)

 アクターの影に使用する画像です。
 空欄ならツクールの初期設定(Shadow2)を使用します。

影の拡大率X(ActorShadowScaleX)

 アクターの影画像の横幅です。
 空欄ならツクールの初期設定(1)を使用します。
 ※つまり、設定された画像を等倍でそのまま表示します。

影の拡大率Y(ActorShadowScaleY)

 アクターの影画像の縦幅です。
 空欄ならツクールの初期設定(1)を使用します。

影のX座標(ActorShadowX)

 アクターの影のX座標位置を調整します。
 空欄ならツクールの初期設定(0)を使用します。

影のY座標(ActorShadowY)

 アクターの影のY座標位置を調整します。
 空欄ならツクールの初期設定(-2)を使用します。

影のZ座標(ActorShadowZ)

 アクターの影のZ座標(表示優先度)の初期値です。
 ※通常は未使用です。影は常にアクターの下に表示されます。

影の不透明度(ActorShadowOpacity)

 アクターの影の不透明度です。255で不透明になります。

浮遊効果の高さ(ActorFloatHeight)

 アクターの浮遊効果の高さです。数式可。
 アクターのメモ欄にを記述した場合に有効となります。
 また、ステートのメモ欄にを記述し、そのステートにアクターがかかった場合も有効になります。

浮遊効果の振幅(ActorFloatAmplitude) ver1.01

 アクターの浮遊効果の振幅です。数式可。
 この二倍の高さ分だけ浮遊時の位置が変動します。
 つまり、値が10なら上に10ピクセル、下に10ピクセルの合計20ピクセル分だけ上下移動します。

 無効にする場合は0に設定してください。

浮遊効果の周期(ActorFloatPeriodicTime) ver1.01

 アクターの浮遊効果の振幅の周期です。数式可。
 60が1秒に相当します。

プラグインパラメータ(共通)


 共通の影に関する設定です。

浮遊開始位置をランダム化(RandomStartFloatHeight) ver1.021

 浮遊開始時の高さをランダム化し、自然にバラつかせます。

その他(Other)


 影プラグインならば、こちらの影マスター(ケケー様)もオススメです。本体の形に合わせて影を作れる他、マップ上のイベントにも影を作る機能もあります。現在はMV用ですが、今後MZにも対応予定とのことです。
 http://kekeelabo.com

 ※「じゃあ、なぜ作った!?」かと言われると『animatedSVEnemies.js』と併用できる簡易的な影プラグインを作りたかっただけなのです……。気がついたらわりと大規模なものになっていました。

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

敵の能力をレベルと百分率によって設定【RPGツクールMZ&MVプラグイン】

2021年11月26日

 データベースの職業能力値を基準とし、レベルと組み合わせることによって敵の能力を自動計算します。


 進行状況によって敵の能力値を変化させたい場合の他にも、単純に数値設定の手間を省きたい場合にも使えます。

 特に経験値については、次のレベルに必要な経験値を基準に自動で算出できます。
 これによりバランス調整の手間を軽減できます。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

敵キャラのメモ欄(Note of Enemies)

経験値と所持金(EXP & Gold)

戦闘テスト(Battle Test)

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

基準となる職業(BaseClass)

基準レベルの変数(VariableBaseLevel)

レベルランダム幅の変数(VariableRandomLevel)

基準経験値(BaseExp)

基準所持金(BaseGold)

戦闘テスト時コモンイベント(TestCommonEvent)


導入方法(install)


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

 NRP_EnemyPercentParams.js ver1.00(2021/11/26)

更新履歴(History)


2021/11/26(ver1.00)

  • 公開!

使用方法(Usage)


 まず、敵の能力の基準となる職業を設定し、プラグインパラメータで指定します。
 ※能力だけでなく経験値曲線も取得経験値の計算に使用されます。


 次に敵の能力に100を基準にした値を設定します。ここでの100は100%の意味になります。
 例えば、攻撃力に110を設定すれば、基準値の110%の値になります。


 さらに敵に対してレベルを設定します。
 プラグインパラメータで指定した変数に値を代入することで、基準となるレベルを設定可能です。

 場所や進行状況によって基準レベルを変更すれば、敵の強さを変動させることができるようになります。
 また、同じ要領で変数によって、レベルのランダム幅も設定できます。

 もちろん、敵毎に固定値を設定しても構いません。
 柔軟な設定が可能ですので、以下の『敵キャラのメモ欄』を参照してください。

敵キャラのメモ欄(Note of Enemies)


<Level:?>

 敵のレベルを設定します。
 この値は基準レベルよりも優先されます。

 また、以下のように基準レベルを参照することも可能です。
<Level:BaseLevel + 1>


 以下はさらに基準レベルにランダム幅を追加したものです。
<Level:RandomLevel + 1>

 ボス戦だけはランダム幅をなくしたいなどの場合もあると思いますので、使い分けてください。

経験値と所持金(EXP & Gold)


 経験値と所持金の基準値については職業データから単純取得できないため、以下の数式で決定しています。

経験値:1 + 次のレベルまでの経験値 / 30

 要するに敵とアクターのレベルが同じ場合、30体ほど倒せばレベルが上がる計算です。
 自動で計算してくれるのでとても便利です。
 ※最初の1は低レベル用の調整です。

所持金:5 + (レベル * レベル) / 2

 レベルの2乗に比例する数式です。

 数式はプラグインパラメータで調整できます。
 空欄にすれば、エディタの設定値をそのまま使用することもできます。

戦闘テスト(Battle Test)


 戦闘テスト開始時に呼び出すコモンイベントを、プラグインパラメータで設定可能です。
 ここで基準レベル等の設定をすれば、敵の能力にも反映されます。


 戦闘テスト時に設定したアクターの能力も参照できます。
 例えば、主人公のレベルを参照して、基準レベルを設定するといった運用を想定しています。

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


基準となる職業(BaseClass)

 能力値の基準となる職業です。

基準レベルの変数(VariableBaseLevel)

 基準レベルを指定する変数です。

レベルランダム幅の変数(VariableRandomLevel)

 レベルのランダム幅を指定する変数です。
 値が2の場合、基準レベルに0~2が加算されます。

基準経験値(BaseExp)

 基準となる経験値を求める数式です。
 a.nextRequiredExp()で次のレベルまでのEXP

基準所持金(BaseGold)

 基準となる所持金を求める数式です。

戦闘テスト時コモンイベント(TestCommonEvent)

 戦闘テスト前に実行されるコモンイベントです。
 基準レベルの設定などにご活用ください。

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

イベントの当たり判定を拡張する【RPGツクールMZ&MVプラグイン】

 イベントの当たり判定を拡張します。


 大型のオブジェクトや巨大モンスターなどに便利です。
 トリガーによるイベントの実行範囲も拡張されます。

 なお、拡張できる範囲は四角だけです。
 円や十字などの柔軟な変更には対応していません。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

設定リスト(SettingList)

メモ欄(Note)

注釈(Annotations)

注意点(Notice)


プラグインパラメータ(基本)

大型イベントの移動を考慮(ConsiderEventMove)

設定リスト(SettingList)


プラグインパラメータ(設定リスト)

画像ファイル(File)

画像インデックス(Index)

当たり判定(下)(CollisionDown)

当たり判定(左)(CollisionLeft)

当たり判定(右)(CollisionRight)

当たり判定(上)(CollisionUp)


導入方法(install)


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

 NRP_EventCollisionEX.js ver1.02(2021/11/26)

 ※比較的、影響の大きいプラグインです。
  競合を避けるため、なるべく上方への配置を推奨します。


更新履歴(History)


2021/11/26(ver1.02)

  • CharacterGraphicExtend.jsなど他プラグインとの競合を解消。

2021/06/17 -> 07/09(ver1.01 -> 1.011)

  • 立体交差プラグインとの競合に対処。
  • 下に拡張イベントがある場合は、飛行船の着陸を禁止。(07/09 ver1.011)

2021/06/11(ver1.00)

  • 公開!

使用方法(Usage)


 三通りの方法によって、イベントの当たり判定を拡張できます。
 使いやすい方法をご利用ください。

設定リスト

 プラグインパラメータの設定リストに、対象のファイルと当たり判定を登録できます。いちいちイベント毎に登録する必要がないので便利です。
 詳細はプラグインパラメータをご覧ください。

メモ欄

 イベントのメモ欄に以下を記入してください。
<CollisionEX:?,?,?,?>

 ?には数値を設定してください。
 下、左、右、上の順番に当たり判定が拡張されます。

注釈

 また、イベントページ先頭の注釈に同様の記入しても有効となります。
 こちらは現在のページ毎に状態を切り替えられます。


 なお、優先度は『注釈>メモ欄>設定リスト』の順番になっています。
 イベント自体に指定がある場合、設定リストに登録した内容は無視されますのでご注意ください。

注意点(Notice)


 影響の大きいプラグインだというのは上述の通りです。
 大型イベントの通常移動が不要な場合は、『大型イベントの移動を考慮』をオフにしておくと安定するかもしれません。動作負荷や競合の問題が軽減される可能性があります。

 また、ループするマップの境界付近での挙動については、ややこしくて実装を断念しました。すまぬ……。
 なので、ループの向こうへはみ出している部分には、当たり判定がありません。

 検証した感じ、当プラグインが動作に与える負荷はさほど大きくないと思われます。
 ……が、以下のイベント処理軽量化プラグイン(EaseEventLoad.js)の『最適化1』の効果を打ち消してしまう模様です。

 https://forum.tkool.jp/index.php?threads/4933/

 よほど大量のイベントで頻繁に衝突判定を行わない場合は、大した問題にはならないと思いますが一応です。
 ※なお、当プラグインはEaseEventLoad.jsより下に配置しないと機能しません。

プラグインパラメータ(基本)


大型イベントの移動を考慮(ConsiderEventMove)

 大型イベントが移動した際も当たり判定を計算します。
 デフォルトはオンになっていますが、オフにすると処理が軽減されます。

 正確には「大型イベントが移動した際に、自身と他のイベントやタイルとの当たり判定を計算する」かどうかを切り替えます。
 オフにした場合も、プレイヤーや通常のイベントが大型イベントに近づいた際の判定は行われます。

 自由に移動する大型イベントを作りたい場合などは、そのままオンにしておいてください。
 静止した障害物しか使わない場合や、特定のイベントコマンドで操作するに留まる場合はオフにしても問題ありません。

設定リスト(SettingList)

 当たり判定の設定の一覧です。

 以下、その詳細設定のパラメータです。

プラグインパラメータ(設定リスト)


画像ファイル(File)

 当たり判定を拡張するキャラクター画像のファイルです。

画像インデックス(Index)

 使用する画像のインデックス値(0~7)です。空欄なら全てを対象とします。
 左上が0で、右下が7になります。

当たり判定(下)(CollisionDown)

当たり判定(左)(CollisionLeft)

当たり判定(右)(CollisionRight)

当たり判定(上)(CollisionUp)

 各方向への当たり判定の加算値です。
 0だと標準のままになります。1にすると1マス拡大する仕様です。

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