開発日誌

すべての記事

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 乗降中はメニュー画面を開けなくする

2023-10-13 02:09:49

乗り物に乗り降りしている最中は、メニュー画面を開けないようにするプラグインを作成しました。

RPGツクールMV/MZ、どちらにも対応しています。

プレイヤーキャラクターが1人だけだったり、パーティーの隊列歩行がOFFの場合は問題ないのですが、隊列歩行がONの状態で船や飛行船などの乗り物に乗り降りした際、隊列メンバーがまだ乗り降りしている最中でも、メニュー画面が開けてしまいます。

メンバーがまだ完全に乗降しきっていないうちにメニュー画面を開いて、そのままテレポートなどの移動魔法を使って場所移動されると、予期せぬエラーが起きそうです。

ただでさえツクールは、乗り物と移動スキル/アイテムとの相性が悪いです。例えば船に乗っている時に移動スキルで場所移動すると、船に乗ったまま移動先に降り立ってしまうため、いったん暗転中に下船用のダミーマップに移動して船から降ろす、といった処理を噛ますなどの工夫を余儀なくされます。

このような処理がある中で、乗り物からの乗降が完全に終わっていないうちにメニュー画面を開いて移動されるのは、明らかにバグの温床となりそうです。

このほか、船に乗り込んだ直後にイベントを起こしたい時なども、イベント発生前に別マップに飛ばれてしまうといった不具合が発生します。

こうした不具合を防ぐために作成した、乗り物の乗降中はメニュー画面を開けなくするプラグインです。プラグインパラメータなどの設定はないので、プラグインを有効にするだけで反映されます。

隊列歩行と乗り物を使用している場合は、導入必須のプラグインだと思います。

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

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 特定の装備タイプをアイテム一覧に表示しない

2023-10-04 01:18:33

指定した装備タイプの装備品をアイテム一覧で非表示にするプラグインを作成しました。

RPGツクールMV/MZ、どちらにも対応しています。

普通のアイテムはアイテムタイプで「隠しアイテムA/B」を設定すれば、アイテムリストに表示されない、特殊な隠しアイテムを作成することができますが、同じことを防具でもできるようにしたプラグインです。

プラグインパラメータで指定した装備タイプの防具は、メニューコマンドの「アイテム」で「防具」の一覧には出てこないようになります。

装備タイプは複数指定が可能です。武器でも設定できますが、武器は1つの装備タイプしかないため意味がなく、基本的には防具に対して使用するイメージです。

公式のツクールWebフォーラムのスレッドで挙がった要望に対応したものです。

もともとの相談としては、覚えられるスキル数に制限を設けて、最大値以上にスキルを覚えた場合は、どれか忘れるスキルを選ぶようなシステムを導入したいというものでした。

しかし、専用のユーザーインターフェイスを作るのは簡単ではないため、比較的簡単に実装できる方法として、以下の装備を利用する方法を提案しました。

  1. 装備タイプに「スキル」を追加
  2. 装備タイプを「スキル」にした防具を作成し、特徴にスキル追加を設定
  3. 装備スロットを拡張できるプラグインを導入して、スキル装備を覚えられる数だけ増やす

▲装備タイプに「スキル」、特徴に「スキル追加」を設定した防具を作る

一度に覚えられるスキルの個数が4~5個程度であれば、スキルの習得・忘却を装備の着け外しで代用するこの方法が、専用のUIを作るより楽に実装できると思います。スキルの最大個数が10以上ある場合は、さすがに専用のメニューを用意した方がいいかと思います。

装備スロットを拡張するプラグインは、砂川赳さんの「装備スロットを自由に変更」プラグインをお勧めしました。このプラグインを使えば同じ装備部位で複数装備が可能になるので、これで覚えられる個数分だけスキル装備のスロットを用意して、覚えられるスキルの数を絞ることができます。

▲スキル追加用の防具が見えてしまう

これで基本的にはOKだと思いましたが、問題はメニューの「アイテム」で「防具」を選択した際に、このスキル付与用の防具が表示されてしまうことです。

表示されてもいいと割り切ってしまうのも一案ですが、特定の装備タイプをアイテム欄から隠すのはそれほど難しい処理ではなかったので、プラグインを作成した次第です。

▲スキル追加用の防具は非表示になった

プラグインパラメータで隠したい装備タイプの番号(上記例では「6」)を指定してやれば、その装備タイプの装備品はアイテム一覧には表示されなくなります。

もちろん「装備」のメニューでは問題なく表示されます。

スキルの入れ替えを防具で行う、という個別の要望に合わせて作成したプラグインですが、このシステムはそこそこ採用される機会も多そうだということと、他にも応用ができそうだと思ったので、一般向けに公開しました。

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

[ ゲームリリース情報 ] [ 天下御免!からくり屋敷 ] [ サイト情報 ] 『天下御免!からくり屋敷』久々のアップデート

2023-08-10 01:58:20

和風探索RPG『天下御免!からくり屋敷』をバージョン1.2.8にアップデートしました。

ダウンロードページからダウンロードをお願いします。

実に5年ぶりの更新ですね。新要素があるわけではなく、バグ修正やバランス調整が中心となります。

5年前の記事で、致命的な不具合がない限りは最後の更新だと宣言していましたが、致命的な不具合が見つかったので更新することになりました。

長年PRしてきた甲斐あって、みなみよつばさんによる『天下御免!からくり屋敷』の実況プレイがアップされています。

待望の実況プレイ動画なので、感動もひとしお。

ですが、実況動画を見ていたら、途中のイベントで「平賀源内」の名前がなぜか「兵具屋」になっているという謎のバグを発見……!

慌てて調べてみたら、兵具屋の女性店員での売却イベントの際に、名前の代入をミスって起きる不具合でした。他の売却イベントでは大丈夫だったので、ピンポイントに踏み抜かれたバグ!

このままだと終盤の良いところで「兵具屋」を連呼してワケの分からないことになってしまいます。これは間違いなく致命的……!

現状の『天下御免!からくり屋敷』のプロジェクトファイルは続編の歴史編を途中まで作ってしまっていたのですが、幸い歴史編の制作に取りかかる前のプロジェクトファイルは残してあったので、それに修正を加えることにしました。

これ以外にも、中ボスの牛頭馬頭の体力が本来の10分の1になっているというミスをはじめ、いくつか細かいバグはありました。装備品や方術の効果も歴史編の制作中に一部調整したりしていました。これらの修正点は都度メモってはいたので、それをもとに旧プロジェクトファイルを修正。

いくつか、メモには書いてないけど修正されていたようなところもあって、本当に修正しきれているのか怪しいところもありますが、まあこれでいいだろうw

本作『天下御免!からくり屋敷』。

主人公はオッサンで悪人顔ですが、ネタの詰まった台詞の数々や、史実を巧みにアレンジした設定や台詞、和風で豊富なアイテムや敵キャラ、そして時々流れる歴史解説でお勉強にもなるという、本当に楽しい作品です。ぜひ実況動画を視聴&実際にプレイしてみてください!

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] ショップでの利用金額を取得

2023-03-23 21:25:18

お店での購入金額と売却金額をそれぞれ指定した変数に取得するプラグインを作成しました。

RPGツクールMV/MZ、どちらにも対応しています。

イベントコマンドの「ショップの処理」で、購入した金額および売却した金額をそれぞれ指定した変数に格納することができます。

例えば、購入金額が0だった場合は、何も購入していないことになります。

購入金額が0より大きいか否かで分岐することによって、購入していたら「毎度ありがとうございます」、何も購入していなければ「買わないなら消えろ!」みたいに、購入の有無でメッセージを変えることができます。

購入金額が一定以上で特殊なメッセージを出したり、イベントを発生させたりすることもできます。

購入か売却かでメッセージを変更することもできます。

購入金額を別の変数に加算していくことで、累積の利用金額によってイベントを起こすことも可能です。

購入のみのショップであれば、前後の所持金を比較することで利用金額を算出することができますが、売却も可能なショップだと、前後の比較だけでは正しい利用金額が割り出せないので、このプラグインが必要になります。

変数に格納されるのは、直前の「ショップの処理」で変動した金額のみです。「ショップの処理」実行時に、購入金額と売却金額の変数は0にリセットされます。累積の利用金額を出したい場合は、別の変数を作って加算してやる必要があります。

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

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] 「盗む」スキルの実装

2023-03-16 22:28:14

敵の持っているアイテムを奪うスキル、いわゆる「盗む」スキルを実装できるプラグインを作成しました。

RPGツクールMV/MZ、どちらにも対応しています。

いわゆる「盗む」のスキルは、盗賊職の花形スキルとして数多くのRPGで採用されていますが、ツクールシリーズには標準では用意されていません。

既存のプラグインでより高機能なものもありましたが、もっと単純な設定で動くものが欲しかったので自作しました。

「盗む」ステートの作成

まず事前準備として、「盗む」が成功した状態を表すステートを1つ作成します。

このステートはダミーステートなので、名前以外の各種設定やこの状態になった時のメッセージなどは、設定しなくて構いません。むしろ行動制約やアイコンなど、余計な設定が付与されないように気を付けましょう。

そしてプラグインパラメータの「盗む成功ステート」で、この作成したステートを指定します。

このステートの付加をもって、「盗む」が成功したか否かを判定する仕組みとなっています。

「盗む」スキルの作成

次に「盗む」スキルを作成します。

スキルの使用効果で、先ほど作成した「盗む成功ステート」を付加するように設定します。

「ステート付加」の確率を調整することで、「盗む」スキルの基本成功率を設定することができます。

スキルのメッセージやアニメーションは、敵からアイテムを盗もうと狙っている時のものを設定します。「盗む」が成功/失敗した時のメッセージやアニメーションは、別で設定するようになっています。

また、敵キャラの特徴の「ステート有効度」を設定することで、敵キャラごとに「盗む」の成功しやすさを調整することができます。

なお、本プラグインで実装できる「盗む」スキルはアクター専用であり、敵がプレイヤーのアイテムを盗むような仕様には対応していません。

盗めるアイテムの設定

盗んだ時に手に入れるアイテムは、基本的に敵キャラのドロップアイテムがそのまま適用されます。

既存の「盗む」プラグインは、盗めるアイテムを別途メモ欄で指定する方式だったため、ドロップアイテムの設定をそのまま利用できるものとして開発しました。

プラグインパラメータの「盗めるアイテム」で、盗む対象となるドロップアイテムを指定できます。

「ドロップアイテム1~3のみ」を選ぶと、それぞれ指定したドロップアイテムのみが盗めるアイテムとなります。例えば「ドロップアイテム2のみ」を指定した時に、敵キャラのドロップアイテム2が設定されていなかった場合、その敵キャラは何も盗めるアイテムを持っていないことになります。

「ドロップアイテムの出現率依存」を選ぶと、複数のドロップアイテムの中から、出現率によってアイテムが決まります。例えば、アイテムAの出現率が1/2、アイテムBが1/4、アイテムCが1/8だった場合、A:B:C=4:2:1の割合、すなわちアイテムAが4/7の確率、アイテムBが2/7、アイテムCが1/7の確率で、それぞれ盗んだ時に手に入ります。

また、プラグインパラメータの「再度盗めるかどうか」をONにすると、同じ相手から何度でも盗むことができます。OFFにすると、一度盗んだ相手からは盗めなくなり、倒した時にアイテムもドロップしなくなります。

メッセージとアニメーション

プラグインパラメータで、以下のメッセージとアニメーションをそれぞれ指定できます。

  • 「盗む」が成功した時
  • 「盗む」が失敗した時
  • 相手が盗めるアイテムを何も持っていない時
  • 相手から既にアイテムを盗んでいてこれ以上盗めない時

メッセージでは、%1で自分のアクター名、%2で相手の敵キャラ名が表示できます。盗む成功時のメッセージでは、これに加えて%3で盗んだアイテム名を表示することができます。

相手から既にアイテムを盗み済みの判定は、「再度盗めるかどうか」がOFFの場合のみ有効です。

「盗めるアイテムなし」と「既に盗み済み」の判定は、「盗む」の成功判定より先に行われます。盗めるアイテムがないのに、何度も「盗む」にトライしてしまう、という心配はありません。

まとめ

いわゆる「盗む」のスキルは、かなり仕組みがそれ専用な上に、成功確率や盗めるアイテムといった細かい仕様が千差万別なため、なかなかツクールの標準機能として組み込むのが難しいと思います。

今回は個人的に標準的な「盗む」スキルとして、以下のような仕様で作りました。

  • 味方専用
  • 成功率はステートの付与率で判定
  • 盗めるアイテムはドロップアイテムに準拠
  • 何度でも盗めるかどうかはパラメータで変更可

したがって、以下のような仕様は、本プラグインでは対応していません。

  • 敵がプレイヤーのアイテムを盗む
  • 成功率に運以外のパラメータを関与させる
  • ドロップアイテムとは別で盗めるアイテムを設定

成功率などはプログラムの改造でできると思いますので、細かい仕様変更はご自身でお願いします。変更が大がかりでなく、汎用的だと思える要望であれば、修正も可能ですので、ご要望をお寄せください。

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