開発日誌

プラグイン/スクリプト

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 特定アクターのみ使用可能アイテム設定スクリプト

2012-09-15 15:07:27

ふと思い立って作ったRGSS2スクリプト素材を公開します。VX用です。

もうちょっとマシな名前は付けられなかったのかって感じですが、文字通り、特定のアクターだけが使用することのできるアイテムを作るスクリプトです。

具体的には、戦闘中は指定されたアクターのみが使用でき、移動時には指定されたアクターがパーティーにいて、かつ戦闘不能やマヒ、混乱など、自由行動できないステートにかかっていない場合のみ、使用できるようになります。

使い方は単純で、スクリプトを導入し、対象となるアイテムのメモ欄に、以下の文字列を記述すればOKです。

PANDA::EnableActor = n

nには、該当するアクター番号が入ります。例えば、「PANDA::EnableActor = 3」と記述すれば、3番のアクターだけがそのアイテムを使用することができるようになります。残念ながら、複数のアクターは指定できません。自分が必要になったら作りますが…。

質問やアドバイスなどはコメント欄まで、お気軽にどうぞ。素材利用条件などについては、このサイトについての「提供素材について」の項目などをご覧ください。

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 乗船中使用不可スクリプト

2012-08-25 15:23:39

先日、小舟に乗っている最中にワープ魔法・アイテムを使うと、船に乗ったまま移動してしまうバグを修正しましたが、その時の副産物として、乗り物に乗っている最中は使用できなくするスキルやアイテムを作るスクリプトを公開します。VX用です。

使い方は単純で、上記スクリプトを導入し、対象となるアイテムもしくはスキルのメモ欄に、以下の指定文字列を記述するだけです。

PANDA::DisableInVehicle

私はワープ魔法・アイテムで使いましたが、他にも使い道はあるかと思います。また、全ての乗り物を対象にしていますが、飛行船だけとか、大型船だけとか、特定の乗り物に乗っている時などの判定も、簡単な改造で実現できるでしょう。

以前に公開した使用可否スイッチ制御スクリプトを用いて、並列処理で乗り物に乗っている状態を判定してスイッチをon/offする、といった方法でも実現できますが、それだけのことに並列処理を使うのも非効率なので、スクリプトにしました。

質問やアドバイスなどはコメント欄まで、お気軽にどうぞ。素材利用条件などについては、このサイトについての「提供素材について」の項目などをご覧ください。

[ 天下御免!からくり屋敷 ] [ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] [ ツクール情報 ] ステート相殺の不具合

2012-07-01 21:13:46

天下御免!からくり屋敷』のデバッグ作業中に、RPGツクールVXのプリセットスクリプトの不具合と思われる部分を発見しました。

戦闘中、防御力など変化していないのに、なぜか「防御力が元に戻った!」というメッセージが表示されるという現象に悩まされていたのですが、その原因がVXのプリセットスクリプトの不具合にあるらしいことが判明しました。Game_Battlerクラスのadd_stateメソッドで、ステートが相殺された場合にも、自然解除のターン数が設定されてしまっているのは、おかしいですね。新規プロジェクトで試してみても、同様の現象が起きました。

ちょっと検索してみた限りでは、あまり話題になっていない模様ですね。ただ、話題が皆無ではなかったので、不具合には違いないのでしょう。Scene_Battleクラスのremove_states_autoモジュールを見ると、実際のステートに変化が起きない場合は、ステート解除のメッセージが表示されることはないため、簡単にはこの不具合が発覚しないようですし、余計なメッセージが表示される以外には特に実害がないので、放置されているのでしょうか…。

というわけで、修正するスクリプトを作ってみました。Game_Battlerクラスのadd_stateメソッドに追加定義していますので、ここに手を加えている場合は競合に注意してください。

一応、能力値の上昇・低下に関わるステート相殺では、上手く動いている模様ですが、綿密なテストは行っていないので、いろいろな形でステートの相殺を応用しているような場合に、不備があるかもしれません。もし上手く動かないような場合には、コメント欄等にてご報告いただけると、ありがたいです。

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 付加ステート発動確率設定スクリプト素材

2011-05-04 02:55:48

小さな大冒険」で使用しているRGSSスクリプトを、素材として提供していくシリーズ、第7弾。

RPGツクールVXでは、武器に「付加するステート」が設定でき、これで攻撃と同時に敵をマヒさせたり、混乱させたりといった武器を作ることができます。しかしながら、ステートの成功確率は相手のステート有効度のみに依存するため、デフォルトのCで60%の成功確率となり、ちょっと強力すぎる気がします。

そこで、付加ステート攻撃の発動確率を指定できるスクリプト素材を用意しました。

上記スクリプトを導入して、対象となる武器のメモ欄に、以下の指定文字列を記述します。

PANDA::StateProbability = n%

nには発動確率が入ります。なお、%を忘れずに付けてください。

例えば「PANDA::StateProbability = 50%」とすると、設定した付加ステートが50%の確率で発動します。したがって、対象者のステート有効度がC(60%)であれば、50%×60%=30%の確率でステートにかけることができます。

Game_Actorクラスのplus_state_setメソッドを再定義していますので、ここを改造しているスクリプトを導入している場合は、競合にご注意ください。

質問やアドバイスなどがあれば、コメント欄までお気軽にどうぞ。素材利用条件などについては、このサイトについての「提供素材について」の項目などをご覧ください。

[ ゲームリリース情報 ] [ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] アイテム発見イベント規格化スクリプト素材とサンプルミニゲーム

2011-04-27 00:32:00

久々の「小さな大冒険」で使用しているRGSSスクリプトを、素材として提供していくシリーズ、第6弾。

なんのこっちゃって感じですが、宝箱やタンス、タルなどを調べるとアイテムが見つかる、というイベントを簡単に組むためのスクリプト素材です。

宝箱であれば、「イベントの簡単設置」で簡単に設置することはできますが、後から入っているアイテムを別の物に変更する場合、アイテムを増減するイベントコマンドと、「○○を手に入れた!」というメッセージの表示の両方を修正しなければならず、面倒かつミスりやすいです。

そんな面倒なアイテム発見イベントを、簡単に作れるようにするスクリプトです。導入方法は以下の通り。

  1. 上記スクリプト素材を組み込む。
  2. アイテム発見のコモンイベントを作る。
  3. 宝箱やタンスなどをイベントとして設置する。イベント名を入手品のIDとし、アイテム発見のコモンイベントを呼び出します。

以下、詳しく説明します。

アイテム発見コモンイベント

先に、アイテム発見のコモンイベントを作成します。

イベントコマンドの「スクリプト」で、「PANDA_FindItem(n, m)」を呼び出します。(nとmにはそれぞれ変数の番号が入ります)

n番の変数にアイテムの種別(お金=1、アイテム=2、武器=3、防具=4、敵グループ=5)、m番の変数に入手品や敵グループのIDもしくは金額が取得されます。アイテムやお金の増減はスクリプト内で処理していますので、後は効果音などの演出や、入手メッセージを表示すればOKです。ミミックなど、敵モンスターを出現させる場合は、戦闘の処理が必要です。

また、メッセージ内で、「\item[x]」「\weapon[x]」「\armor[x]」「\troop[x]」と記述すると、x番のIDのアイテム、武器、防具、敵グループ名が表示できるようになっています。これを利用すれば、n番の変数に入っているアイテム種別で分岐させつつ、「\item[\V[m]]」(mは上で指定した変数番号)などとすれば、入手時のメッセージを表示させることができます。

イベント設置

コモンイベントを用意したら、実際の宝箱などのオブジェクトをイベントとして設置します。

「ページ1」は、入手前の状態を表しており、アイテム発見コモンイベントの呼び出しにします。「ページ2」は、入手後の状態を表しており、条件を「セルフスイッチAがON」にし、イベントコマンドには何も設定しません(もしくは「もう何もない」のメッセージ表示など)。

そして、イベント名を入手品のIDとします。アイテムの場合は「i + アイテムID」、武器の場合は「w + 武器ID」、防具の場合は「a + 防具ID」とします。例えば、「i1」ならば1番のIDのアイテムが、「w25」ならば25番のIDの武器が手に入ります。また、お金の場合は「g + 金額」とし、モンスターを出現させる場合は「e + 敵グループID」とすればOKです。

入手品を変更したくなったら、イベント名を変更するだけでOKですし、入手時の演出効果やメッセージを変更したくなったら、コモンイベントの方を変更すればOKです。

サンプルミニゲーム

はっきり言って、なんのこっちゃだと思いますので、実際のサンプルプロジェクトを用意しました。

ただのサンプルでは味気ないので、ちょっとしたミニゲームに仕立ててみました。

  • 部屋の中を調べて、ダンナの浮気の証拠を探しましょう。
  • 浮気の証拠だけでなく、便利アイテムや装備品、ストレス解消に役立つ道具もあります。中には怪物が潜んでいる場所も…。
  • 探せるチャンスは10回です。10回調べ終わると、ダンナが帰ってきます。
  • それまでに入手したアイテムによって、エンディングが変わります。
  • エンディングは全部で10種類。ハッピーエンドを目指してがんばってください!

ダウンロードした「FindItem.exe」をダブルクリックして解凍してください。解凍されたフォルダの中にある「Game.exe」をダブルクリックして起動すると、ゲームがスタートします。「RPGツクールVX」をお持ちの方は、プロジェクトとして開くと、実際にどのようにイベントが組まれているかを確認することができます。ご利用の際の参考にしてください。

プレイするためには、「RPGツクールVX RTP」が必要ですので、お持ちでない場合は別途インストールしてください。

バグ報告、ご質問、ご要望等は、お気軽にコメント欄までどうぞ!