開発日誌

ツクール情報

[ 天下御免!からくり屋敷 ] [ テクニック ] [ ツクール情報 ] VX 128MBの壁

2020-06-21 17:43:40

XP以降のRPGツクールにはゲームデータの暗号化圧縮アーカイブを作成する機能がありますが、一定サイズを超えるとエラーになるという話は聞いていました。そこまで大規模なゲームを作るつもりもないので、自分には無関係だと思っていたのですが、最近になってそのサイズが圧縮後で「128MB」だという情報を目にして、意外と小さいな……と思ったのが事の始まりです。

念のため、ゲームデータで一番容量の大きいBGMフォルダーのサイズを調べてみたら、既に125MB。もちろんこれ以外に画像ファイルなども多数あるので、ゆうに128MBを超えてしまいます。昔は、BGMファイル少なすぎwとか言われたものですが、歴史編に入って雰囲気を変えようとBGMをばんばん追加していたら、いつの間にか容量を食っていたようです。

試しにアーカイブを作ってみたところ、ちょうど128MBのファイルが生成されました。お、ギリギリセーフ?と思って解凍すると、果たして途中でエラーに……。ちょうど128MBのファイルが生成されたというよりも、サイズが128MBで強制的に削られてしまっているようですね。

回避方法はあるようですが、あまり正攻法でない手段をとるのは好きではありません。まずは容量を抑える方針で行こうと、まだ使用していないBGMファイルをいくつか削除してみました。が、いくつか削除しただけでは残念ながら、128MBまでに抑えることはできませんでした。また、たとえ現時点でぎりぎり抑えられたとしても、歴史編はまだまだ作る予定です。そうすると顔グラやキャラグラなどの画像ファイルも増えていくので、いずれ容量オーバーになることは避けられません。大規模なゲームを作るつもりはないと言いながら、プレイ時間は75時間を超える作品になってきているので、十分に大規模なゲームでした。

というわけで、素直に回避策をとることにしました。具体的な方法は、半生様の「大容量プロジェクトの圧縮方法」を参考にさせていただきました。要は、暗号化の途中で生成された暗号化アーカイブファイル(Game.rgss2a)を待避しておいて、それとAudioフォルダーやGame.exe、Game.iniと一緒に、別途zipで圧縮すればOKですね。

プレイヤーに変な負担をかけたくなかったので回避策には消極的だったのですが、よく考えてみたら、今もアーカイブのexeファイルそのままではなく、それをさらにzip化(Readme.txtなどはアーカイブの外に置きたいため)しているので、プレイヤーにとっては二度の解凍作業が必要になっているんですよね。一方、この圧縮方法であれば一回の解凍で済むので、むしろこっちの方がプレイヤーにとっては楽。ということで、心置きなくこの方法をとることにします。

まあ問題は、それがいったいいつになるのか、ということなんですけどね。

[ ツクール情報 ] 新ツクールのPV

2020-06-19 02:15:12

RPGツクールMZ』が発表されてから、毎週木曜日に少しずつ情報が公開されていくという噂。MZには割と期待を寄せているので、このサイトでも公開情報や風の噂から読み取れる仕様について、考察を書き連ねていきたいと思います。「ツクール情報」のカテゴリーも新たに用意してしまいました。

第一弾の公式情報としては「オフィシャルPV」が公開されましたね。マップ作成、キャラクター生成、イベント設定などの既存機能について、高速で流しながら紹介されている映像なので、ぱっと見はほとんど何も分かりません……(^^;

それでも適宜止めながら見てみて、読み取れたのはこんなところ。

  • マップ作成でイベントモードの時は、マップチップの代わりにイベント一覧が左に表示
  • キャラ生成時に、目や口のパーツの位置を上下左右に微調整可能
  • 倒れキャラで、これまでの3つ同じ画像から、3種類の違う倒れ画像が生成可能
  • イベント設定は、オプション類、イベントコマンド数ともに、MVから変化はなさそう
  • 「文章の表示」コマンドに「名前」の入力欄が登場
  • データベース設定も、基本的に大きな変化はなさそう
  • ただし「システム」のタブが「システム1」「システム2」に分割(詳細は不明)
  • アニメーションも大きく変わっている模様だが、具体的には不明

「文章の表示」コマンドの名前欄は、おそらく右画像のように、拙作で使っている名前表示ウィンドウ的な機能だと思われますが、PVでは実際にその機能を使用したところが出て来ていないため、具体的にどのような表示になるのかは不明です。

アニメーションの設定画面は、既報通り大きく変わっている模様で、「パーティクルエフェクト」というところに要素が全て詰まっているようです。パーティクルエフェクトの設定項目は、ファイル名、拡大率、速度、回転、オフセットのXとYで、これまでのようなパーツをフレームごとにポチポチと置いて行く苦行はなくなるようです。ただ、複数のパーティクルエフェクトが設定できるようにはなっていないようなので、かえって融通が利かなくなっているのではという懸念もあります。効果音や画面のフラッシュは相変わらずフレームで指定するようですし、完全にフレームの概念から解放されるわけでもなさそうです。ここは詳細待ちですかね。

……とまあ、これだけ見る限りでは、MVからほとんど変わっていないことが分かるのと、刷新されている機能についても詳細が不明すぎて、何とも言えないところです。

噂では他に、マップのレイヤーがVX〜MVまでの自動と、XPのような層別指定で切り替えられるようになっており、しかもレイヤー数は4つもあるとか、戦闘システムがターン制以外にATBも選べるようになるとか、いくつか出回っていますが、この辺も続報待ちでしょうか。

今はまだ情報が本当に少なく、その情報も「既存のMVとほとんど変わらない」という内容なので、それはプロモーションの仕方として、ちょっとどうかと思います。新作発表直後のこの時期こそ、ユーザーも一番盛り上がる時期なので、もっと新機能の詳細をしっかりと公開した方がいいんじゃないかと、個人的には思いますね。

既に新作ツクールで実現されたらいいな、という内容がいろいろと語られ始めているように、ユーザーの間で新作ツクールに対する期待や妄想が膨らんでいる時期です。しかし、あくまで初級者向けのツールを謳う以上は、最大公約数的な機能に絞らざるを得ないため、期待の多くは裏切られることになるでしょう。そうするとどうしても、ネガティブな印象を抱かれてしまいます。

もったいぶったところで、実装されない機能は実装されないのですし、その機能を希望していた人にはがっかりされてしまいます。それよりは早期に詳細な情報を公開して、その中でどういう作品を作っていこうかということに話題を向けた方が、良かったような気がします。

[ ツクール情報 ] MZってMZD!?

2020-06-11 21:18:39

マずぃデ!?

先週の時点で新作ツクールの予告が出ていましたが、早くも『RPGツクールMZ』が発表されましたね。年末頃の発売かと思ったら、もう今夏の発売ですって。早くね?

おそらくVXに対するVX Aceみたいな感じで、MVのパワーアップ版的な位置付けだと思われます。いくつか公開されているスクリーンショットからは、基本部分がMVとほぼ変わらないということ以外、あまり読み取れる情報がないですね。VX Aceの時は、おそらく意図的と思いますが、かなりスクショから読み取れる情報が多かったのに。

いろいろと強化・拡張が謳われていますが、現時点での公開スクショを見る限りでは、MVから劇的に変わるわけでもなさそう。メニューに「レイヤー」というのがあるので、XPみたいに上下レイヤー別の編集が行えるようになるのかな?という点(その割にはツールバーにそれらしきアイコンがないのが気になる)と、アニメーション機能が刷新されているということなので、そのくらいでしょうか。ツクール史上最大規模の素材を同梱というところに期待されますが、BGM素材はVXやVX Aceと数はそんなに変わらなそうです。開発中の画面だからかな?

……と期待値を下げておきましたが、個人的には今回のMZは非常に期待しています。私が主に使用してきたツクールは2000とVXだけなので、2つおきに良シリーズになるんじゃないかと。まあとにかく、もう少し情報待ちですかね。

それにしても、MVが出たのがもう5年前って、そっちの方が信じられないんですけど……。MVの時代にVXの作品を作っているのは、令和時代における昭和生まれみたいで、まだかろうじて許容範囲な気がするのですが、MZの時代になってしまうと、もはや歴史の世界ですね。何とかせねば……。

[ 天下御免!からくり屋敷 ] [ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] [ ツクール情報 ] 正しい蘇生術

2018-08-12 01:35:53

お久しぶりです!

続編の制作を始めると、既存部分に不具合があっても修正が困難になるので、心ゆくまで修正しようとしています。

敵が蘇生方術を使ってくる際に、複数の死亡者がいたとしても、必ず先頭の死亡者を蘇生させてくるような気がしていました。ランダムで選ばれるはずなのにおかしいな、と思っていろいろ調べてみた結果、プリセットスクリプトの不具合であることが分かりました。

Game_BattleActionのdecide_random_targetメソッドにおいて、対象が味方単体(for_friend?)ならば(生存中の)味方からターゲットをランダムに決定、対象が戦闘不能の味方単体(for_dead_friend?)ならば戦闘不能の味方からランダムに決定、としているのですが、for_friend?にはfor_dead_friend?の場合も含まれるので、この判定順序では対象を戦闘不能の味方にしていても、通常の味方単体で選ばれてしまいます。

というわけで、判定の順序を入れ替えたら、蘇生対象がちゃんとランダムに選ばれるようになりました。

また、蘇生や途中で仲間を召喚する際に、アニメーションが表示されていないことに気付きました。蘇生や召喚した時点では、まだ対象が非表示の状態になっているため、アニメーションも表示されないのだろうと思って諦めていたのですが、修正の仕方が分かったので、ちゃんと表示されるようにしました。

今さらVX用のスクリプトに、どこまで需要があるのか分かりませんが、修正版のスクリプトを公開します。

蘇生対象者の選択修正は、Game_BattleActionのdecide_random_targetメソッドを直接書き換えています。また、アニメーションの表示はSprite_Battlerに親クラスであるSprite_Baseのanimation_set_spritesメソッドを継承して追加定義しています。この辺りに関わる改変スクリプトを入れている場合は、競合で正常に動作しない可能性がありますので、ご注意ください。

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

[ 天下御免!からくり屋敷 ] [ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] [ ツクール情報 ] 画面全体アニメーションの不具合修正

2017-10-29 16:44:30

RPGツクールVXのプリセットスクリプトのバグというか仕様として、アニメーションの基準位置が「画面」に設定されていても、対象となるキャラクターの分だけアニメーションが表示される、というものがあります。

単に重なって表示されるだけなので、実害がないと言えばないのですが、透明度を設定している場合は、重なっている分だけ濃く表示されてしまうため、気になると言えば気になります。

これまでは、EnDlEss DREamERさんの「アニメーション軽量化」を参考に、全体アニメーションの場合は最初の1体分だけを表示するようにしていたのですが、これだと今度は、対象のフラッシュが最初の1体にしか反映されないため、全体技なのに単体技のように見えてしまうという点が気になっていました。

というわけで、いろいろいじって、アニメーションは1体分だけ、ただし対象のフラッシュは対象者ごとに全部反映させる、というスクリプトを作ったので公開します。今さらVX用のスクリプトに、どこまで需要があるのかは分かりませんが……。

晴れて敵全体がフラッシュするようになった

問題なく意図通りに動作しているはずですが、アニメーションの仕様はいまいちよく把握していないので、思わぬエラーが潜んでいる可能性があります。また、なるべくaliasを用いた追加定義にしていますが、アニメーション周りの改変スクリプトを入れている場合は、競合で正常に動作しない可能性がありますので、ご注意ください。

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

いやー、それにしても、この1ヶ月で相当制作が進みました。最初からこのペースで進めていれば、とっくの昔に完成していたものを……!