自在に遠景(近景)を表示【RPGツクールMZ&MVプラグイン】

2023年01月04日

 自在に遠景(近景)を表示する機能を提供します。
 好きな座標、好きな範囲、好きな表示優先度で、好きなだけ遠景を表示できます。
 マップシーンだけではなく、戦闘時にも使用可能です。


 上記のような多重スクロールの演出も自在です。


 表示優先度を変更すれば、マップの上に表示する雲などの近景として表示することもできます。
 ちなみに上記の雲の影はツクール公式の素材です。
 ※以降は近景なども含めて『遠景』という用語を使います。

 一度表示した遠景の設定を変更することもできます。
 スクロール速度や表示座標を自由に変更してください。

 なお、戦闘時に使用する場合は、戦闘背景に合わせてDynamicAnimationを表示するプラグインのコモンイベント機能をオススメします。フェードイン前にコモンイベントを実行できるため、自然に表示させることが可能です。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

MZ用プラグインコマンド(Plugin Commands MZ)

遠景を追加(AddParallax)

遠景を変更(ChangeParallax)

遠景を削除(RemoveParallax)

MV用スクリプト(Script For MV)

設定項目(Setting Items)

ID(Id)

画像(Image)

Z座標(Z)

視差をタイルに連動(ParallaxTile)

X方向のスクロール(ScrollX)

Y方向のスクロール(ScrollY)

マップX座標(MapX)

マップY座標(MapY)

横幅(Width)

縦幅(Height)

不透明度(Opacity)

オプション(Options)

戦闘中の挙動について(In Battle)

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

戦闘背景の表示優先度を設定(UseBattlebackSort)

戦闘背景1のZ座標(Battleback1Z)

戦闘背景2のZ座標(Battleback2Z)


導入方法(install)


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMZ用ですが、MVでも外部プラグインとの併用によってプラグインコマンドを呼び出せば使用できます。

 NRP_ParallaxesPlus.js ver1.01(2023/01/04)

更新履歴(History)


2023/01/04(ver1.01)

  • 戦闘時に『マップX座標』『マップY座標』が想定通りに機能しない不具合修正。

2022/05/28 -> 2022/08/17(ver1.00 -> 1.002)

  • 公開!
  • マップ座標指定時、かつ画面サイズより大きな画像を指定した際、画像幅が画面サイズまでしか表示されない不具合修正。(05/29 ver1.001)
  • 『遠景を変更』機能の一部項目が機能しない不具合修正。(05/29 ver1.001)
  • カスタムメニュープラグインなど競合用に微調整。(08/17 ver1.002)

使用方法(Usage)


 必要に応じてプラグインコマンドを呼び出してください。

 なお、マップの設定自体に反映させる機能はありません。
 並列処理(+イベントの一時消去)などを利用して、マップ開始直後に表示すればよいと思います。

MZ用プラグインコマンド(Plugin Commands MZ)


遠景を追加(AddParallax)

 遠景(近景)を現在のマップまたは戦闘画面に作成&追加します。
 詳細は『設定項目』をご覧ください。

遠景を変更(ChangeParallax)

 指定IDの遠景(近景)情報を操作&変更します。
 未指定の項目は作成時の設定を引き継ぎます。

遠景を削除(RemoveParallax)

 指定したIDの遠景(近景)を削除します。
 ID未指定なら全削除します。

MV用スクリプト(Script For MV)


 当プラグインはMV用のプラグインコマンドに対応していませんが、外部プラグインを経由すれば、MZ用のプラグインコマンドをMVから呼び出すことも可能です。
 以下はcallPluginCommandMZ.js(うなぎおおとろ様)を使用した例です。

 プラグインコマンドではなく、スクリプトで実行することに注意してください。
 ※コマンド名は上記の『MZ用プラグインコマンド』、項目名は下記の『設定項目』を確認してください。
// 基本項目
const args = {};
args.Image = "StarlitSky"; // parallaxesのファイル
args.Z = 0.5;
args.MapX = 2;
args.MapY = 2;
args.Width = 240;
args.Height= 240;
args.ParallaxTile = true;

// オプション項目
args.Options = {};
args.Options.BlendMode = 1;

// プラグインコマンドを実行
callPluginCommand(this, "NRP_ParallaxesPlus", "AddParallax", args);


設定項目(Setting Items)


 プラグインコマンド(遠景を追加・変更)で使用できる項目です。
 基本的な項目は通常の遠景に準じます。

ID(Id)

 遠景を管理するIDです。
 以降の操作を行わない場合は省略可能です。

画像(Image)

 表示する遠景の画像ファイルです。
 parallaxesフォルダに配置されている画像を選択できます。

Z座標(Z)

 表示する優先度です。
 Z座標の意味は以下の通りです。

 0 : 下層タイル
 1 : 通常キャラの下
 3 : 通常キャラ
 4 : 上層タイル
 5 : 通常キャラの上
 6 : 飛行船の影
 7 : 吹き出し
 8 : アニメーション
 9 : タッチ操作の移動先

 例えば『下層タイル』と『通常キャラの下』の間に表示をしたい場合は『z = 0.5』などの値を設定できます。
 初期値は-1としていますが、これは下層タイルよりも下に表示するためです。
 なお、ツクール標準の遠景より下に表示することはできません。

視差をタイルに連動(ParallaxTile)

 画面スクロール時に遠景をタイルと同じようにスクロールさせます。
 ※ファイル名の先頭に『!』を付けた時の動作と同じです。

 さらに詳細な設定を行う場合は『オプションのX、Y方向の視差』をご覧ください。

X方向のスクロール(ScrollX)

Y方向のスクロール(ScrollY)

 横・縦方向へのスクロール速度です。数式可。

 例えば『$gameVariables.value(1) 』というように設定しておけば、後で変数の値を変更するだけでスクロール速度を変更できます。

マップX座標(MapX)

マップY座標(MapY)

 マップ上の指定した座標に遠景を配置します。
 指定した座標が始点(左上)になります。
 終点は『横幅』『縦幅』で制御してください。

 なお、マップ座標を指定するとマップ端まで遠景が無限ループする仕様が無効になります。
 そのため、X、Yの不要な側の座標を指定しないでください。例えば、Y座標を5に固定して横方向にはそのまま無限ループさせたい場合は、X座標は空欄のままにしてください。

 戦闘時も1マス=48ピクセル(システム2のタイルサイズ)で計算されます。

横幅(Width)

縦幅(Height)

 遠景を表示する横幅・縦幅です。数式可。

不透明度(Opacity)

 画像の不透明度です。0〜255が有効。

オプション(Options)

シフトX(ShiftX)

シフトY(ShiftY)

 画像を表示するX・Y座標の調整値です。数式可。

X方向の視差(ParallaxX)

Y方向の視差(ParallaxY)

 画面スクロール時、縦・縦方向の視差を設定します。

ループなし(横)(NoLoopX)

ループなし(縦)(NoLoopY)

 遠景の横・縦ループを無効にして、画像幅に合わせます。
 幅の指定より優先されます。

合成方法(BlendMode)

 画像の合成方法です。

戦闘中の挙動について(In Battle)


 マップ画面とほぼ同じ挙動ですが、以下の注意点があります。

Z座標

 標準ではZ座標を設定しても機能しません。
 NRP_DynamicMotionMZ.jsなどのZ座標ソート(表示優先度変更)を有効にするプラグインと併用する必要があります。

 また、初期状態では戦闘背景より後ろに遠景を表示することはできません。
 必要な場合はプラグインパラメータの『戦闘背景の表示優先度を設定』をオンにしてください。

マップX、Y座標

 マップ画面とほぼ同じ挙動になります。
 戦闘中はタイルが存在しませんので、1マス=48ピクセル(システム2のタイルサイズ)として計算します。

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


戦闘背景の表示優先度を設定(UseBattlebackSort)

 戦闘背景の表示優先度(Z座標ソート)を有効化します。
 必ずZ座標ソートを行うプラグインと併用してください。

戦闘背景1のZ座標(Battleback1Z)

 戦闘背景1(下)の表示優先度です。

戦闘背景2のZ座標(Battleback2Z)

 戦闘背景2(上)の表示優先度です。

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

戦闘背景やエンカウント率を詳細設定【RPGツクールMZ&MVプラグイン】

 戦闘背景やエンカウント率を詳細な条件で設定します。


 上記は橋の上で戦闘背景を変更した例です。
 ちなみにデフォルトでは平原になるという残念っぷり……。

 条件にできるのは『地形タグ』『リージョンID』『タイルID』『オートタイルタイプ』の四種類です。
 もっとも、地形タグは数が限られているし、リージョンは設定が大変です。そこでオートタイルタイプやタイルIDを使った設定をオススメします。

 ※オートタイルタイプとはオートタイル毎に保有する識別番号のことです。
  付属のNRP_DebugTile.jsで確認できます。
 ※戦闘背景の変更はフィールドタイプのタイルセットのみ有効です。


 また、ツクールMV〜MZにはデフォルトで以下の隠し仕様が含まれています。

  • 茂み属性のエンカウント率は二倍
  • 乗船(大型船)中のエンカウント率は半減

 場合によっては、ありがた迷惑になりかねません。これらの仕様を変更することも可能です。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

細かい仕様(Detail)

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

茂みのエンカウント率(BushEncounterRate)

大型船のエンカウント率(ShipEncounterRate)

設定リスト(SettingList)


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

設定ID(Id)

メモ(Memo)

全タイルセットで有効(ValidAllTilesets)


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

地形タグ(TerrainTag)

リージョンID(RegionId)

オートタイルタイプ(AutotileType)

タイルID(TileId)

乗物タイプ(VehicleType)


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

エンカウント率(EncounterRate)

戦闘背景1(Battleback1)

戦闘背景2(Battleback2)


導入方法(install)


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

 NRP_TerrainInfo.js ver1.01(2023/01/04)

オプション

タイル情報をデバッグ表示する(詳細

 NRP_DebugTile.js ver1.01(2021/08/15)

 ※F2を押すだけで、足元のオートタイルタイプやタイルIDを確認できるようにするプラグインです。NRP_TerrainInfoの補助用に使えます。

更新履歴(History)


2023/01/04(ver1.01)


2021/06/04 -> 2021/11/11(ver1.00 -> 1.001)

  • 公開!
  • イベントテストでエラーになる不具合修正。(11/11 ver1.001)

使用方法(Usage)


 プラグインパラメータの設定リストに、条件、エンカウント率、戦闘背景を入力してください。
 登録した『設定ID』をタイルセットのメモ欄に設定すればOKです。
<TerrainSetting:?>

 ?の部分が設定リストに登録した『設定ID』となります。
 また、カンマ区切りによって複数指定も可能です。
<TerrainSetting,B,C>


 設定リストには最初からサンプルが登録されています。
 ツクールのデフォルトのフィールドに合わせた内容になっているので、参考にしてください。

細かい仕様(Detail)


 タイルIDやオートタイルタイプは、上のレイヤーから順番に判定されます。
 設定がないレイヤーのタイルは無視される仕様です。

 例えば、以下のように設定した場合、

  • レイヤー1の平原:エンカウント率100%
  • レイヤー2の森 :エンカウント率200%
  • レイヤー3の町 :設定なし

 レイヤー2の森のエンカウント率(200%)が有効になります。これは戦闘背景についても同様です。

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


茂みのエンカウント率(BushEncounterRate)

 茂み上でのエンカウント率です。100を基準に設定してください。
 初期値は200です。

 これは設定リストの内容と重複するので注意してください。
 例えば、森に茂み属性を付加してエンカウント率を200にした場合、さらに茂み属性の影響で計4倍になってしまいます。

大型船のエンカウント率(ShipEncounterRate)

 大型船に乗っている時のエンカウント率です。100を基準に設定してください。
 初期値は50です。

 こちらも設定リストの内容と重複します。

設定リスト(SettingList)

 エンカウント率の設定の一覧です。

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

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


設定ID(Id)

 タイルセットのメモ欄からの呼び出しに使う識別子です。
 『全タイルセットで有効』がオンの場合は不要です。

メモ(Memo)

 判別用のメモです。
 処理には使用しませんので、分かりやすい名前を付けてください。

全タイルセットで有効(ValidAllTilesets)

 設定を全てのタイルセットで有効にします。
 特定のタイルセットにのみ設定を反映したい場合は、オフにしてください。

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


地形タグ(TerrainTag)

 対象とする地形タグ(1~7)を指定します。
 複数指定も可能です。(例:1,3~5)

 7つまでしか設定できないのでご利用は計画的に。

リージョンID(RegionId)

 対象とするリージョン(1~255)を指定します。
 複数指定も可能です。(例:1,3~5)

オートタイルタイプ(AutotileType)

 対象とするオートタイルタイプを指定します。
 複数指定も可能です。(例:1,3~5)

 オートタイルタイプとはオートタイル毎に割り当てられる番号です。デフォルトでは戦闘背景の判定に用いられています。
 地形タグと異なり数の制限がないため、自由に設定が可能です。

 ただし、この値は通常確認できません。
 オプションにある「タイル情報をデバッグ表示する」プラグインで確認ができます。

タイルID(TileId)

 対象とするタイルIDを指定します。
 複数指定も可能です。(例:1,3~5)

 こちらはエディタの機能で普通に取得できますが、面倒です。
 こちらも「タイル情報をデバッグ表示する」プラグインでの確認をオススメします。

乗物タイプ(VehicleType)

 対象とする乗物のタイプを指定します。

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


エンカウント率(EncounterRate)

 条件を満たした場合のエンカウント率です。100を基準に設定してください。

戦闘背景1(Battleback1)

 条件を満たした場合の戦闘背景(下)です。
 タイルセットがフィールドタイプの場合のみ有効です。

戦闘背景2(Battleback2)

 条件を満たした場合の戦闘背景(上)です。
 タイルセットがフィールドタイプの場合のみ有効です。

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

茂み属性の機能を拡張【RPGツクールMZ&MVプラグイン】

2023年01月03日

 茂み属性の機能を拡張します。

 通常、茂み属性を付加されたタイルの上に立つと、キャラクターの下半身が半透明になって表示されます。
 この機能は茂みだけでなく、水場などの表現にも利用されます。

 しかしながら、困ったことに茂み属性は全てのレイヤーに適用されてしまいます。
 例えば、水の上に架かる橋を設置した場合、橋の上に立っているのに、水中にいるかのようにキャラが半透明になってしまいます。


 そこで、茂みの上のレイヤーに他のタイルがある場合、茂み属性を適用しないようにします。


 その他にも、不透明度や茂みの深さ、おまけに色を調整できます。
 地形タグやリージョンID、タイルIDやオートタイルタイプを条件にして細かく設定することも可能です。
 作成した設定に『設定ID』を付加すれば、タイルセット毎に設定を呼び出すことも可能です。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

タイルセットのメモ欄(Note of Tilesets)

イベントのメモ欄(Note of Events)ver1.03

プラグインコマンド(MZ)ver1.03

茂み効果の設定(SetBushEffect)

茂み効果の設定(乗物)(SetBushEffectVehicle)


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

茂みレイヤーの限定(LimitBushLayer)

除外する地形タグ(ExcludedTerrain)ver1.01

茂みの深さ(BushDepth)

茂みでの不透明度(BushOpacity)

設定リスト(SettingList)


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

設定ID(SettingId)

全タイルセットで有効(ValidAllTilesets)

茂みを強制適用(ForceBush)


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

地形タグ(TerrainTag)

リージョンID(RegionId)

オートタイルタイプ(AutotileType)

タイルID(TileId)


プラグインパラメータ(設定リスト:不透明度設定)

茂みの深さ(BushDepth)

茂みでの不透明度(BushOpacity)


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

茂みでの色(BushColor)

浮遊効果の振幅(FloatAmplitude)ver1.02

浮遊効果の周期(FloatPeriodicTime)ver1.02


導入方法(install)


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

 NRP_BushEX.js ver1.041(2023/01/03)

 ※OverpassTile.js(立体交差プラグイン)と併用する場合は、当プラグインを上に配置してください。

オプション

タイル情報をデバッグ表示する(詳細

 NRP_DebugTile.js ver1.01(2021/08/15)

 ※F2を押すだけで、足元のオートタイルタイプやタイルIDを確認できるようにするプラグインです。NRP_BushEXの補助用に使えます。

更新履歴(History)


2023/01/03(ver1.04 -> 1.041)

  • ゲームロード直後に茂み設定が反映されない不具合修正。
  • ロードに失敗してしまう重大な不具合修正。(ver1.041)

2022/04/22 -> 04/25(ver1.03 -> 1.031)


2021/10/14 -> 2022/02/17(ver1.02 -> 1.023)

  • おまけに浮遊効果を追加。水に浮かんでいるような演出にどうぞ。
  • 不透明度が0の時に無効となる不具合修正。
  • 画面初期表示時に茂み属性が機能しない不具合修正。
  • 小数点座標上でも茂み属性を適用するよう対応。
  • 茂み設定があるタイル同士で移動した場合、浮遊設定が正しく適用されない不具合を修正。(11/05 ver1.021)
  • イベントテストでエラーになる不具合修正。(11/11 ver1.022)
  • 小数点座標上の茂み判定が正しく処理されない不具合修正。
    (2022/02/17 ver1.023)

2021/06/26(ver1.01)


2021/04/16 -> 06/02(ver1.00 -> 1.002)

  • 公開!
  • 設定リストにて全体の初期値が有効になっていない不具合を修正。
    (05/13 ver1.001)
  • OverpassTile.js(立体交差プラグイン)との併用について注記。(06/02 ver1.002)

使用方法(Usage)


 プラグインを適用すると初期状態で『茂みレイヤーの限定』機能がオンとなります。
 茂みの深さや不透明度もパラメータで設定可能です。

 さらに、設定リストによって細かい調整が可能となります。
 全タイルセットで有効とするか、タイルセット毎に呼び出すかを、リスト内のパラメータによって切り替え可能です。

タイルセットのメモ欄(Note of Tilesets)


 タイルセット毎に設定する場合はメモ欄に以下を指定してください。
<BushSetting:?>

 ?の部分が設定リストに登録した『設定ID』となります。

 また、カンマ区切りによって複数指定も可能です。
<BushSetting:A,B,C>


イベントのメモ欄(Note of Events)ver1.03


 以下を指定すると、イベントが茂み属性の影響を受けなくなります。
<NoBush>


プラグインコマンド(MZ)ver1.03


茂み効果の設定(SetBushEffect)

 現在の地形に関わらず、茂み効果を強制的に対象へ設定します。
 対象IDに対象となるイベントIDを指定してください。
 また、-1でプレイヤー、-2以下でフォロワーが対象になります。


 適用できる設定は、プラグインパラメータの設定リストで使用できるものと同等です。
 効果を解除したい場合は、対象IDを指定した上で他のパラメータを空白にしてください。

茂み効果の設定(乗物)(SetBushEffectVehicle)

 現在の地形に関わらず、茂み効果を強制的に乗物へ設定します。
 効果を解除したい場合は、乗物タイプを指定した上で他のパラメータを空白にしてください。

-------------------------------------------------------------------
 イベントに対する命令は場所移動すれば自動で解除されます。

 一方でプレイヤーやフォロワー、乗物に対する命令は、場所移動やセーブ&ロードを行っても解除されません。必要がなくなった際には必ず解除してください。

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


茂みレイヤーの限定(LimitBushLayer)

 茂みの上のレイヤーに他のタイルがある場合、茂み属性を無効化します。

除外する地形タグ(ExcludedTerrain)ver1.01

 『茂みレイヤーの限定』について除外する地形タグ(1~7)を指定します。
 複数指定可。(例:1,3)

 例えば、茂みタイルの上に半透明の影のようなタイルを配置した場合、影を無視して茂み属性を参照するといった調整ができます。

茂みの深さ(BushDepth)

 茂み上でキャラクターの下半身に半透明効果を適用する高さです。
 初期値は12。デフォルトのちびキャラを想定した値になっているので、大きなキャラを使いたい場合は変更すると吉です。

茂みでの不透明度(BushOpacity)

 茂み上でキャラクターの下半身に適用する不透明度です。
 255で完全な不透明。0で完全な透明。初期値は128です。

設定リスト(SettingList)

 茂み設定の一覧です。
 細かい条件を指定したい場合に有効です。

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

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


設定ID(SettingId)

 タイルセットのメモ欄からの呼び出しに使う識別子です。
 『全タイルセットで有効』がオンの場合は不要です。

全タイルセットで有効(ValidAllTilesets)

 設定を全てのタイルセットで有効にします。
 特定のタイルセットにのみ設定を反映したい場合は、オフにしてください。

茂みを強制適用(ForceBush)

 条件を満たした場合、茂み以外のタイルでも常に茂み状態を適用します。
 オフにした場合は通常通り、タイルセット側にも茂み属性が必要となります。

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


地形タグ(TerrainTag)

 対象とする地形タグ(1~7)を指定します。
 複数指定も可能です。(例:1,3~5)

 7つまでしか設定できないのでご利用は計画的に。

リージョンID(RegionId)

 対象とするリージョン(1~255)を指定します。
 複数指定も可能です。(例:1,3~5)

オートタイルタイプ(AutotileType)

 対象とするオートタイルタイプを指定します。
 複数指定も可能です。(例:1,3~5)

 オートタイルタイプとはオートタイル毎に割り当てられる番号です。デフォルトでは戦闘背景の判定に用いられています。
 地形タグと異なり数の制限がないため、自由に設定が可能です。

 ただし、この値は通常確認できません。
 オプションにある「タイル情報をデバッグ表示する」プラグインで確認ができます。

タイルID(TileId)

 対象とするタイルIDを指定します。
 複数指定も可能です。(例:1,3~5)

 こちらはエディタの機能で普通に取得できますが、面倒です。
 こちらも「タイル情報をデバッグ表示する」プラグインでの確認をオススメします。

プラグインパラメータ(設定リスト:不透明度設定)


茂みの深さ(BushDepth)

 茂み上でキャラクターの下半身に半透明効果を適用する高さです。
 値を設定しない場合は、全体の初期値が適用されます。

茂みでの不透明度(BushOpacity)

 茂み上でキャラクターの下半身に適用する不透明度です。
 値を設定しない場合は、全体の初期値が適用されます。

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


茂みでの色(BushColor)

 茂み上でキャラクターの下半身に適用する色です。
 例:[255,255,255,255]
 順番に[赤、緑、青、強さ]です。
 ※[]も必須です。

浮遊効果の振幅(FloatAmplitude)ver1.02

 茂み上での浮遊効果の振幅です。数式可。
 水に浮かぶような演出にどうぞ。


浮遊効果の周期(FloatPeriodicTime)ver1.02

 茂み上での浮遊効果の振幅の周期です。数式可。
 60が1秒に相当します。空白の場合は120になります。
 なお、浮遊効果の振幅に値がある場合のみ機能します。

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