2016年3月31日木曜日

キャラクターの浮遊プラグイン

RPGツクールMVで使用可能な自作プラグイン「キャラクターの浮遊プラグイン」の紹介です。


プラグインの説明

プレイヤーやフォロワー、イベントを浮遊させ、宙に浮いているような演出ができます。

スクリーンショット

浮遊中は演出以外にも以下の効果があります。

  • 指定した地形タグ(複数)を通行可能にします。
  • 指定したリージョン(複数)を通行可能にします。
  • タイルの梯子属性、茂み属性、ダメージ床属性を無効にします。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/04/03 一定以上の高度の場合のみ通行可能になる地形タグとリージョンを指定できる機能を追加。着地可能な場合のみ着地する機能を追加、指定されたキャラクターが浮遊中かどうかの判定を追加
  • 2016/03/31 隊列歩行でない場合のフォロワーや画像が指定されていないイベントでも影が表示される不具合を修正
  • 2016/03/29 初版

2016年3月13日日曜日

GUI画面デザインプラグイン

 RPGツクールMVで使用可能な自作プラグイン「GUI画面デザインプラグイン」の紹介です。


プラグインの説明

 メニュー画面や戦闘画面など各画面のウィンドウや画像の表示位置をドラッグ&ドロップで微調整して画面の外観をグラフィカルに設計できます。横幅、高さ、余白、背景画像なども画面上で変更して、即座に反映されます。

スクリーンショット

 パラメータ「デザインモード」を「ON」にすると、マウスのドラッグ&ドロップで既存のウィンドウや追加したウィンドウの位置をグラフィカルに調整し、横幅などのプロパティを自由に変更できます。位置を調整したらデザインモードをOFFにして起動すると、変更した位置が反映されています。

指定可能なプロパティ

  1. ウィンドウの横幅
  2. ウィンドウの高さ
  3. ウィンドウの余白
  4. ウィンドウのフォントサイズ
  5. ウィンドウの1行のあたりの高さ
  6. ウィンドウの背景透明度
  7. ウィンドウの行数
  8. ウィンドウの背景画像ファイル名

デベロッパツール

 パラメータ「デザインモード」を「ON」にするとデベロッパツールが同時に起動し、操作方法や操作した内容が出力されていきます。Ctrl+Zで直前の変更を元に戻すこともできます。編集した内容は「data/ContainerProperties.json」に保存されます。JSONエディタ等で編集することも可能です。さらに、モバイル端末用に異なるウィンドウ配置を定義することもできます。モバイル用の配置情報は「data/ContainerPropertiesMobile.json」に保存されます。

その他の機能

・モバイル偽装:
モバイル偽装のオプションを有効にすると、モバイル端末での実行をPC上で再現できます。モバイル実行を再現すると音声や動画ファイルの使用形式が変化したり、音声ファイルの再生が行われなくなったりする可能性があります。

・ウィンドウ透過:
ウィンドウ透過のオプションを有効にすると、ウィンドウが重なったときに奥のウィンドウが透けて表示されるようになります。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/04/02 liply_memoryleak_patch.jsとの競合を解消
  • 2016/03/13 初版

2016年3月8日火曜日

Canvasモード実行でメモリリークによるクラッシュを回避する

 本稿は未だ(2016/03/08)に大きな懸案事項のひとつであるツクールMVメモリリーク問題について、プレイヤーの視点から解決方法を提案するものです。

 2016/05/10追記 遠景由来のメモリリーク問題は本体バージョン1.2.0にて修正されました。ただ、メモリリーク以外の問題でもVista SP2互換モードでの実行が問題の解決に繋がる場合があるようなので記事そのものは参考として残しておきます。ただでさえ少ない記事を減らしたくないし……


メモリリークについて

 さて、RPGツクールMVにはメモリリーク問題が存在することは周知の事実かと思います。ご存じない方はこちらをご覧ください。

 そして上記の問題のうち遠景のメモリリークを解決するのが以下のパッチです。JavaScriptのプラグイン形式になっています。上の記事を書かれたliply氏によるものです。

 なんだプラグインが出ているのなら話は終わりじゃん……と言いたいところなのですが、プレイヤー視点から見れば、遊びたいゲームの作者が上記プラグインを適用してくれるとは限りません。現状、どのくらいの作者が上記プラグインを適用しているのかは不透明な状況です。上記対策が施されていないゲームを少しでも安全にプレーするためにプレイヤーが独自にできる対策はないか? そこで考えたのが「Canvasモードでゲームを実行する」ことです。まずは下の画像をご覧ください。

WebGLの実行結果

 まずWebGLモードで以下の条件でテストを行いました。遠景の指定された17×13のイベントが配置されていないマップで、メニューの開閉を繰り返して回数を記録していくというものです。実施環境はSurface Pro3(Win10 Pro) Core i5(GPU内蔵) メモリ4GBになります。すると回数を重ねるごとに使用量(コミット(KB))が増大し、400回ほど繰り返したところでなんの前触れもなくクラッシュしてしまいました。

Canvasの実行結果

 一方、こちらはCanvasモードでの実行結果です。画像が小さくて恐縮ですが、こちらは使用量は一定以上は増えることなくメニュー開閉を3000回繰り返しても安定していることが分かるかと思います。

 もちろん、この結果をもってCanvasモードにはメモリリークは存在しないと言い張るつもりはありません。実際、存在するのだけれどブラウザ(chromium)側でうまく処理してくれているのかもしれません。それでも、もしプレイヤーとして快適にプレーできないツクールMV作品に遭遇したときに、そこでプレーを諦めてしまうくらいなら試してみる価値くらいはあると思います。とはいえ、二つほど問題が残ります。

どうやってCanvasモードで実行するのか?

 これについては先日、たまたま知ることができました。

 Game.exeを右クリック→プロパティ→互換性から、「互換モードでこのプログラムを実行する」にチェックを入れ、Windows Vista(Service Pack2)を選択してから、実行するとCanvasモードで実行されるのです。互換モードでもWindows 7以降だとWebGLモードとなります。互換モード実行についてはメモリリーク問題とは別に恩恵があるようで、ある方のゲームが開始時に1000枚ほどのピクチャをキャッシュする仕様になっていて、通常の起動だと非常に時間が掛かるうえに動作も不安定になっていたものが、互換モード(Vista SP2)だと数秒で起動した、という事例がありました。これはいわゆるメモリブロートに近い問題ですね。(ただし、この件に関しては原因はよく分かっていません)

Canvasモードで実行することによるデメリットは何があるか?

 これも気になるところです。基本的にツクールMVはマルチプラットフォームを謳っており、かつモバイルでは基本的にCanvasモードで実行されます。つまり、少なくともプラグインを全く使用しない状態では二つのモードに傍目にも分かるような差異はないということです(もし差異があればマルチプラットフォームの前提が崩壊してしまうので)。もちろん現状ではブラウザやOSごとの細かい挙動の違いを完全に吸収できているとは言えない状況ですが、それはまた別問題でしょう。ですがプラグインを使う場合は話は別です。例えば、以下はPixi.jsのフィルタ機能を使ってタイトル画面を加工したものです。

 もともとはRTPのタイトル画像ですが、Pixi.jsのTwistFilterを適用することこんな動的演出が簡単にできてしまいます。フィルタは他にもこんなものがあります。

 これはInvertFilterを適用させたものです。いずれも既存のコードに数行追加するだけです。こんなフィルタがPixi.jsには複数用意されていますが、これらは全てWebGLモードでしか使用できません。Canvasモードでも異常終了したりはしませんが画像が変化しなくなります。もっとも、現状これらのフィルタを使用するようなMVのゲームはまだ出回っていないと思いますが……

まとめ

 RPGツクールMV製のゲームを長時間プレーし続けてパフォーマンスが低下してきたら、Windows Vista SP2の互換モードで実行すると快適になるかもしれない……というお話でした。

2016年3月7日月曜日

フルスクリーンで起動プラグイン

RPGツクールMVで使用可能な自作プラグイン「フルスクリーンで起動プラグイン」の紹介です。


プラグインの説明

プオプション画面に「フルスクリーンで起動」を追加します。有効な場合、ゲームをフルスクリーンで起動します。またタイトル画面にシャットダウンを追加します。

スクリーンショット

VX Ace以前の仕様であるフルスクリーンで起動を実装することで、旧作のプレイヤーの円滑な移行を促すことができます。このプラグインはローカル環境で実行した場合のみ有効です。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/03/06 初版

2016年2月27日土曜日

画面キャプチャ管理プラグイン

RPGツクールMVで使用可能な自作プラグイン「画面キャプチャ管理プラグイン」の紹介です。


プラグインの説明

プレー中のゲーム画面をキャプチャしてファイルに保存したり、ピクチャとして表示したりできます。制作中やテストプレー中などキャプチャしたいときに別のソフトを使わなくてもすぐにゲーム画面をキャプチャすることができます。キャプチャは以下のタイミングで実行されます。

キャプチャを実行できるタイミング

  • 指定したファンクションキー or PringScreenキー押下
  • 一定時間ごと
  • プラグインコマンド実行時

作成したスクリーンショットのサンプル

作成した画像は、png、jpeg形式で指定した場所(相対パス、絶対パスを指定可能)に保存できます。絶対パスの場合はエクスプローラーから直接パスをペーストすればその場所に出力されます。画面の下に署名を埋め込むこともできます。キャプチャしたときの効果音や、連番やタイムスタンプを付与する等、一般的なキャプチャソフトと同等の機能を備えています。

さらに、キャプチャした画像をピクチャとして表示する機能も備えていて、様々な演出に利用できます。ただしキャプチャピクチャはセーブできません。セーブされる前に「ピクチャの消去」で消去してください。また、プラグインコマンドからキャプチャする場合以外は、テストプレー以外での動作を禁止することができます。

追加機能

著名は、文字列のほかにも任意の画像ファイルを埋め込むことができます。よりオリジナリティのある署名が利用できます。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/04/23 署名に任意の画像ファイルを指定できる機能を追加
  • 2016/03/31 画像の出力先を絶対パスで指定できるよう修正
  • 2016/03/15 文章のスクロール表示が正しくキャプチャできない問題を修正
  • 2016/02/24 初版

2016年2月5日金曜日

サウンドテストプラグイン

RPGツクールMVで使用可能な自作プラグイン「サウンドテストプラグイン」の紹介です。


プラグインの説明

ゲーム中のBGMを視聴できるサウンドテストを実装します。タイトル画面、メニュー画面およびプラグインコマンドから専用画面に遷移します。ゲーム中、一度再生したBGMを自動で記憶し、再生履歴のあるBGMのみ視聴できます。

スクリーンショット

パラメータ

プラグインマネージャーから指定するパラメータの説明です。

  • コマンド名称 : タイトルやメニュー画面に表示されるコマンド名です。
  • タイトルに追加 : タイトル画面にサウンドテストを追加します。(ON/OFF)
  • メニューに追加 : メニュー画面にサウンドテストを追加します。(ON/OFF)
  • 音量名称 : BGMの設定項目「音量」のゲーム内での名称です。空にすると、設定ウィンドウに音量が表示されなくなります。
  • ピッチ名称 : BGMの設定項目「ピッチ」のゲーム内での名称です。空にすると、設定ウィンドウにピッチが表示されなくなります。
  • 位相名称 : BGMの設定項目「位相」のゲーム内での名称です。空にすると、設定ウィンドウに位相が表示されなくなります。

事前準備

以下の書式で「SoundTest.csv」を用意し、「/data/」以下に配置します。カンマ区切りのCSV形式で、データ中にカンマは使用できません。また、文字コードは「UTF-8」で保存してください。特にExcel等で編集した後は注意してください。

SoundTest.csv(書式)

  • 項目名 : 説明
  • fileName : BGMのファイル名です。拡張子不要。
  • displayName : BGMリストに表示される曲名です。
  • description : ヘルプウィンドウに表示される説明です。

CSVサンプル(CSV Sample)

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

CSV自動作成バッチプラグイン

別プラグイン「バッチ処理プラグイン」(BatchProcessManager.js)を使えば現在のBGMフォルダを解析して上記書式のひな形CSVを自動生成できます。

バッチ処理プラグイン

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/02/04 初版

2016年1月30日土曜日

フキダシウィンドウプラグイン

RPGツクールMVで使用可能な自作プラグイン「フキダシウィンドウプラグイン」の紹介です。

Popup window plugin


プラグインの説明

メッセージウィンドウを指定したキャラクターの頭上にフキダシで表示するよう変更します。キャラクターのマップ上の位置によってはウィンドウが画面の上に隠れてしまう場合もあるので注意してください。

Change the message window from fixed to popup

スクリーンショット

パラメータ

プラグインマネージャーから指定するパラメータの説明です。

日本語

  • フォントサイズ : フキダシウィンドウのデフォルトフォントサイズ
  • 余白 : フキダシウィンドウの余白サイズ
  • 自動設定 : イベント起動時にフキダシの対象が、起動したイベントに自動設定されます。(ON/OFF)
  • フェイス倍率 : フキダシウィンドウの顔グラフィック表示倍率(1-100%)
  • ウィンドウ連携 : 選択肢ウィンドウと数値入力ウィンドウをポップアップウィンドウに連動させます。(ON/OFF)

English

  • FontSize : Font size of popup window
  • Padding : Padding of popup window
  • AutoPopup : Popup set when event starting(ON/OFF)
  • FaceScale : Scale of face graphic of popup window(1-100%)
  • WindowLinkage : Select window and Number input window is linkage with popup window(ON/OFF)

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/01/30 選択肢と数値入力ウィンドウをポップアップと連携するよう修正
  • 2016/01/29 初版

2016年1月18日月曜日

オプション任意項目作成プラグイン

RPGツクールMVで使用可能な自作プラグイン「オプション任意項目作成プラグイン」の紹介です。


プラグインの説明

オプション画面に任意の項目を追加します。追加できるのは以下の四種類です。

  1. スイッチ項目
  2. 数値項目
  3. 音量項目
  4. 文字項目

スクリーンショット

追加した項目は、オプション画面の既存項目の下に表示されます。

・スイッチ項目

 ON/OFFを選択する項目です。指定した番号のスイッチと値が同期されます。オプションから値を設定すれば、それがスイッチに反映され、スイッチを変更すれば、オプションの値に反映されます。値はセーブデータ間で共有されます。隠しフラグを設定するとオプション画面に表示されなくなります。ゲームを進めないと出現しない項目などに利用できます。隠しフラグはプラグインコマンドから解除できます。それぞれの値はコロン(:)区切りで指定してください。

・数値項目

 数値を選択する項目です。指定した番号の変数と値が同期されます。スイッチ項目で指定した内容に加えて、最小値と最大値および一回の入力で変化する値を指定します。

・音量項目

 音量を選択する項目です。BGMボリュームなどと同じ仕様でキャラクターごとのボイス音量等に使ってください。

・文字項目

 文字を選択する項目です。指定した文字の配列から項目を選択します。選択した文字のインデックス(開始位置は0)が変数に設定されます。初期値に設定する値もインデックスです。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/04/29 項目をクリックしたときに項目値が循環するよう修正
  • 2016/01/17 初版

2016年1月10日日曜日

キャラクターグラフィック表示拡張プラグイン

RPGツクールMVで使用可能な自作プラグイン「キャラクターグラフィック表示拡張プラグイン」の紹介です。


プラグインの説明

イベントのグラフィック表示方法を拡張して多彩な表現を可能にします。以下のような表現が可能です。

  1. ピクチャ、敵キャラ、アイコン、フェイスグラフィックをキャラクターグラフィックとして表示
  2. 複数のタイルを一つのキャラクターグラフィックとして表示(本棚やベッドなどを一つのイベントで表現可能)
  3. ピクセル単位でキャラクターグラフィックの座標を調整(イベントとして存在するマップ座標は変わりません)
  4. 表示優先度を調整(9段階で調整可能)
  5. 合成方法と拡大率の設定

イベントのメモ欄に所定の書式(ヘルプ参照)で記入してください。項目の間はカンマで区切ってください。引数には文章の表示と同じ制御文字が使用できます。また、ページ数に「A」と入力すると全てのページが対象になります。

スクリーンショット

これらの画像は全てキャラクターグラフィックとして表示しています。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/01/10 初版

2016年1月1日金曜日

動的データベース構築プラグイン

RPGツクールMVで使用可能な自作プラグイン「動的データベース構築プラグイン」の紹介です。


プラグインの説明

データベースの各項目を動的な値に変更するプラグインです。変数や制御文字、JavaScriptの関数を使ってより高度なデータベースを構築できます。状況によるアイテムの価格変動や成長する武器など多彩なシステムが実現可能になります。

スクリーンショット(データベース画面)

例えば、データベース画面で以下のようなアイテムを作成すると……

スクリーンショット(ゲーム画面)

実際の表示はこのようになります。

対象となるデータベースは以下の全項目です。

  1. スキル
  2. アイテム
  3. 武器
  4. 防具
  5. 敵キャラ
  6. ステート

各項目に動的な値を設定したい場合、以下の通りに設定します。

  1. 文字列項目:各項目に直接入力した制御文字が利用できます。
  2. 数値項目:メモ欄に制御文字+JavaScript計算式が利用できます。
  3. 選択項目:メモ欄に制御文字+JavaScript計算式が利用できます。(一番上の選択肢が 0 になります。)

注意! データベースのjsonファイルをゲーム中で保存、更新するようなプラグインと併用しないでください。正常に動作しない可能性があります。

メモ欄の指定方法詳細(2016/08/15追記)

すべてのメモ欄の指定方法をスプレッドシートにまとめました。こちらを参照してください。

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2015/12/28 初版