開発日誌

すべての記事

[ 天下御免!からくり屋敷 ] [ テクニック ] ツクールでルビを振る

2020-07-19 23:16:37

RPGツクールMZ』が発表されてから、その新情報関連と制作関連の記事とで、週2本ペースで記事を公開しております。年2本だった時もあったのに、奇跡じゃなかろうか。

もっと記事を出していきたいのですが、制作過程の記事はあまりネタバレしすぎるのもどうかという説があります。そこで、これからは技術的な話題も積極的に取り扱っていこうと思います。

さて、『天下御免!からくり屋敷』では、スクリプトを組んで漢字にルビを振っています。詳しくは「RubyでRubyを…」の記事をご覧ください。

ルビ振りを可能にするスクリプト素材はいくつかありましたが、画面構成全体や文字表示など根幹の部分に関わってくるため、自力で実装したという経緯があります。そういう経緯があるため、私もスクリプト素材という形で提供はしていませんでした。

ただ、どのようにルビ振りを実装しているのか、注意する点や苦労した点はどんなところかを公開して、制作者の方の参考にしていただければと思います。RPGツクールVXでの実装ですが、基本的な考え方は変わらないはずです。

最初に大変なのは、上でも書いた通り、画面構成全体をいじる必要がある点。

ルビの分の高さを確保する必要があるため、テキストの1行の高さをデフォルトの24から32に拡大しています。

通常の文章表示では、4行あったメッセージウィンドウを3行にすれば、ちょうどいい感じに収まります。ただし戦闘メッセージの場合は、2行ある物理スキルの発動メッセージ→会心の一撃→敵のダメージ→敵のステータス変化のように、最大で5行を要するケースがあるので、既に3行表示されていたら最後の1行を消して上書きする、といった処理を加える必要があります。VX Aceからはメッセージログ形式になったので、意識する必要はないかもしれませんが。

また、メッセージ表示以外にも、アイテムやスキル、敵の選択ウィンドウやステータスウィンドウ、店での購入ウィンドウなど、ほとんど全てのウィンドウのレイアウトを調整する必要があります。ウィンドウレイアウトはスクリプトやプラグインでデフォルトから変えている場合も多いと思いますが、まずルビには対応していないので、自力で調整しなければなりません。

さて、ルビの入力は、{漢|かん}{字|じ}のように、ルビを振りたい文字を{ }で囲んで、|の手前に漢字、後ろにルビを入力すれば、ルビ付きのテキストとして表示されるようにしました。

文章の表示だけでなく、アクター名、職業名、スキル名、アイテム名、敵キャラ名、およびスキルやアイテムの説明文や、使用時メッセージなどでも、有効にしています。

表示部分のスクリプトはこんな感じ。

1文字ずつ取り出して、漢字部分とルビ部分に分けて出力しています。

ここで問題は、ルビが多いとテキストボックスの横幅に収まりきらない点。

文章の表示のテキストボックスは、横幅を超えると勝手に改行されてしまいます。そこで、ダミーのアクターをいくつか作って、長いルビ付きの言葉をアクター名に設定し、文章の表示の中で\N[n]として用いています。こうすれば、ルビが多くても横幅に収めることができます。

ただし、アクター名の入力欄にも文字数制限があるので、ルビの量が多いとダミーのアクターがいくつも必要になります。1文字微妙にオーバーする!といった苦労は日常茶飯事で、このあたりの調整は都度やる形になるので、テキストの入力は通常時よりもかなり時間がかかります。これが、制作がなかなか進まない原因でもあります(ということにしておこう)。

また、ルビは漢字1字につき3文字までが限度で、4文字以上だと文字が潰れてしまってさすがに読めません。

だいたいは3文字に収まるのですが、隼(はやぶさ)とか亥(いのしし)とか、作っているとけっこう4文字のルビが登場します。こういう場合は、{亥の|いのしし  }{足|た}{袋|び}のように、次の文字と組み合わせています。

ただ、鉞(まさかり)はこれ1文字だけしかないので、前後に半角スペースを入れて{ 鉞 |まさかり}としました。また、狼男(おおかみおとこ)も漢字2文字に対してルビ7文字なので、{狼 |おおかみ}{男|おとこ}と間に半角スペースを補っています。一番悩んだのが、石川五右衛門の方術の金鯱(きんのしゃちほこ)で、仕方ないので間に全角スペースを挟んで{金 鯱|きんのしゃちほこ}としました。今後、源順(みなもとのしたごう)とかを登場させることにならないか不安。

最後に悩ましい点としては、どこまでルビを振ればいいのかという点。

さすがにフリーゲームを小学生とかがプレイするとも思えないので、小学校レベルの漢字にまでルビを振る必要はないと思います。

とは言え、漢字自体は小学校で習うけど、熟語としてはあまり馴染みがなかったりすると、読みが自信ない場合もあり得ます。

実際、実況プレイ動画を見ていても、普段使わないような語句の読みで間違っていたり、詰まっているのをよく見かけます。

初めは固有名詞や常用漢字以外のものに限ってルビを振っていましたが、だんだんとルビ振りの基準レベルを下げていき、最近では「見る」「思う」とかのレベルでも、たまにルビを振ったりしています。そこまでするならいっそ全部に振ってしまえば、悩む必要もなくなるとは思うのですが、それはそれで作業が大変すぎるので、難しいところです。

ルビは日本語だけの特殊事情なため、海外展開にシフトしつつある現状のツクール事情では、今後もデフォルト機能として組み込まれることはないと思いますが、格調高い言葉を使いつつも、難しくしすぎないというバランスを取るのに、ルビ振りのシステムは欠かせないものだろうと思います。

最初に述べたように、ルビ振りシステムは画面全体の構成などに関わるため、なかなかプラグインとして素材化することが難しいですが、今後も必須レベルで組み込んでいきたいと思います。

[ ツクール情報 ] RPGツクールMZ、発売日決定

2020-07-16 22:47:30

今週も木曜日、『RPGツクールMZ』新情報公開の日がやって参りました。

今週はついに、RPGツクールMZの発売日と販売価格が発表されました。

発売日は約1ヶ月後の8月20日、価格は7,980円(税別)とのことです。

8月下旬あたりかなという先週の読み通り。しかし価格は、1万円を切ってきたということで、これは意外でしたね。ネガティブにはMZに対するアップデート版的な位置付け、ポジティブにはMV以降、国内よりも海外での販売に力を入れており、それが成功しているからこその、この価格設定ということでしょうか。独身貴族にはあまり関係ないですけど、買いやすい値段なのは良いことですね。

その他、今回公開された新機能としては、こんなところです。

  • コモンイベントの上限数が1000→2000に
  • システム設定で画面解像度やフォント、フォントサイズの設定が可能に
  • MVからの移行機能(プラグインは除く)
  • デプロイメント時に上書き防止
  • 音楽素材はoggファイルのみでOKに(既報通り)
  • イベントモードではマップチップの代わりにイベントリストを表示(既報あり)
  • スマホでのUIを改良
  • オートセーブ機能の追加

大きいところでは、MVからの移行機能でしょうか。MVで作られたプロジェクトをMZにコンバートすることができるようです。基本仕様はほとんど同じなので、まあ当然とも言えますが。ただし当然のことながら、プラグインについては移行は不可。明記されていませんが、今回から仕様の変わったアニメーションについても、移行はされないと思われます(名前とか、あとSEやフラッシュの設定などは移行されるかもしれませんが)。

また、MVではスマホでの操作に難ありだったので、それが大きく改善されたと思われるのは良いことですね。

まあ自分ではMVで制作したことがないので、これらの機能や改善点はあまり関係ないですが。

マップエディターでイベントモードの際、マップチップの代わりにイベントリストを表示するのは、風の噂や既存の公開画像で既に分かっていましたが、果たしてそこまで使いやすいのかどうかは謎ですね。ちゃんとイベント名を付けていればともかく、自動開始イベントや移動イベントなどは名前を付けないことも多く、デフォルト名の「EV001」「EV002」……とかが一覧に並ばれても、どれがどれだか分からないという……。

とりあえず、発売日も発表されたし、細かい機能まで公開されたし、これで週刊情報公開も打ち止めでしょうか?

記事数稼ぎができたのはとてもありがたいですがw、正直言ってそこまで出し惜しみするほどのモノはなかったような……。

それよりは最初に全部公開してしまって、その後の話題づくりには、初心者向けの制作講座と上級者向けのコアスクリプト解説なんかを週イチで公開していった方が、ずっと盛り上がったのではないかと思います。さすがにそこまでの手間はかけていられないですかね?

[ 天下御免!からくり屋敷 ] 女はつらいよ

2020-07-11 20:18:10

ほとんどオッサンしか登場しない『天下御免!からくり屋敷』ですが、歴史編では女性キャラも多少は登場します。まあ、オッサンがメインであることには変わりないですけど……。

織田信長編と豊臣秀吉編に共通して登場する女性キャラとして、織田信長の妹であるお市の方と、その娘で後の豊臣秀頼の母親となる茶々(淀殿)がいます。もともと、織田信長編の第4幕の導入部に登場させてみたところ、上手い具合にハマったので、その後もストーリーに絡めるようになりました。なんとラブロマンス要素もあります。母娘そろって年の差カップルなので、あまり純粋な感じにはなっていませんが……。

それで今回は、そんなお市の方と茶々の、顔グラのお話です。

まずはお市の方。

彼女はもともと主要キャラクターとして考えていたわけではなかったので、顔グラは和風素材集の中から、とりあえずそれっぽそうという理由で、J_People1-3を使っていました。

当代一の美女と謳われながら、政略結婚と二度の敗戦という運命に翻弄される乱世の女性の物憂さが、よく表現されている顔グラではないかと思います。とりあえずで選んだ割には、上手く選べた感があります。

一方、その娘である茶々(後の淀殿)。

彼女を登場させる頃には、既に主要キャラクターになることが想定されていましたが、お市の方の顔グラが和素材付属のものなので、彼女の顔グラもバランス上、和素材付属のJ_People1-2を使いました。

お市の方と親子感がありますし、後に天下人・豊臣秀吉の側室となって跡継ぎを産むというしたたかさを持ちつつも、最終的には大坂夏の陣で敗北するという陰の部分も垣間見える、ぴったりな顔グラが選べたと思います。

しかし、ここで一つ問題が。

歩行グラは、お市の方が和素材付属のJ_Actor5-2、茶々がJ_Actor5-6をそれぞれ使っています。ですが、二人が並ぶと、顔グラと歩行グラがどうも逆に見えてしまいます。お市の方の顔グラにあるリボンが、茶々の歩行グラにあるリボンと一致するのが原因です。和風素材集は顔グラと歩行グラの位置関係が合っていないので何とも言えませんが、もともと想定された使い方とは逆に使ってしまっている模様です。

じゃあ歩行グラを逆にすればいいじゃん、と思いますが、二つの歩行グラを見比べると、やはりお市の方に使っている方が大人、茶々に使っている方が子供に見えるので、この方がしっくり来ます。

というわけで、改めて顔グラ探訪の旅に。

まずは、今川義元の顔グラでお世話になったそらまにぶろぐ様のところで、いくつか良さそうな候補を見つけました。しかし、お市の方は初出は10代前半、最後は40歳前後です。和素材のものは割と年齢不詳で、少女でも母親世代でもどちらともとれるのですが、フリー素材のものとなると、どちらかに寄せたものになってしまうため、違和感が拭えませんでした。

次に、いつものようにMVのキャラ生成機能で自作してみました。そこそこいい感じのものができたのですが、和素材のものにある陰鬱な表情が出せません。元の和素材の顔グラと比べると、どうしても見劣りが……。

で、最終的な結論。

不満があるのは、お市の方の顔グラのリボンだけです。これを取り去ることぐらいなら自分でも何とかできるので、画像編集で頑張ってみました!

アンチエイリアスとかかなり適当ですが、実際の顔グラとして使う分にはそれほど気にならない感じだったので、これでいいでしょう。いいことにする!

最初から画像編集しておけばよかった。何度も無駄にイベント編集してしまった……。

それにしてもMVのキャラ生成は、男性キャラは割といろいろなキャラクターが作れますが、女性キャラは少女漫画チックな目やギャグっぽい口しかなくて、中年以上の女性や立場のある女性キャラが作れません。女性用のパーツ素材はたくさん市販されていますが、ヒロインキャラ用と謳われているように、時代劇向けではありませんし……。

RPGツクールMZではこの辺が解消されていればいいのですが、動画で見える限りでは期待薄っぽいですね。

[ ツクール情報 ] RPGツクールMZ、今週の情報公開

2020-07-09 23:19:06

毎週木曜日は『RPGツクールMZ』新情報公開の日。

今週、公式サイトで公開されたのは以下の通りです。

  • キャラクター生成の強化
  • プラグイン関連機能の強化
  • 素材規格
キャラクター生成の強化

RPGツクールVX Aceで初めて搭載され、その時はクリーチャー生成器に過ぎなかったキャラクタージェネレーターも、RPGツクールMVではマトモなものに昇格。それがさらに、今回のRPGツクールMZでパワーアップされるようです。

既に風の噂や公開動画で伝えられていた通り、目や眉などのパーツ位置の微調整が可能になりました。目の高さの調整はVX Aceでも上寄り・中間・下寄りの3つから選べるようになっていましたが、それが強化されて復活した感じですね。目の高さの上下で大人っぽさ・子供っぽさが出せるので、同じキャラの少年期・青年期などを表現するのもやりやすくなりました。

もう一つ、新たに公開された機能として、カラーパレットの追加が上限なくできるようになった模様です。現状のMVのカラーパレットは、服の色もけっこうバリエーションが限られているし、肌の色も自然な人間の色だとやはりいくつもなくて、色白・色黒などの個性も出しづらかったので、嬉しい機能ですね。

プラグイン関連機能の強化

プラグイン関連の機能はRPGツクールMVから搭載された機能なので、私は実際に使ったことがなくて評価しづらいですが、MVの時の「こうなっているといいなあ」と言う声を集めて、明らかにより使いやすいものができあがっている印象です。

  • 必要なベースプラグインがなかったり、プラグインの指定順序が違う時や、MZ向けでないプラグインの場合などに、警告メッセージを表示
  • 配布元URLを追加
  • プラグインコマンドやパラメータ設定機能の強化
  • コアスクリプトのバージョン選択

最初のものは、導入の際に引っかかりがちな依存関係を解決するのに役立ちそうですね。また、今まではプラグインと言えばMVだけだったので間違うことはありませんでしたが、これからはMZなのに間違ってMV用のプラグインを入れてしまってうまく動かない、といったミスが増えることが予想されます。それの警告メッセージが表示されるようになっているのは、非常に便利ですね。

配布元URLの表示なども、そこから直接アクセスできるようになっているようなので、制作者・利用者の双方に役立つ機能ですね。

素材規格

素材規格のページも公開されました。

素材規格に関しては、アニメーションの画像素材がなくなったのと、オーディオファイルは.oggだけでよくなったのを除いて、MVから変化はないようです。まあ、予想通りですね。

それにしても、なんでこのページ、こんなに見にくいの……。

まとめ

事前に噂されていたアニメーション、戦闘システム、4層レイヤー、キャラ生成のパーツ位置調整が出そろって、目玉機能としてはこんなもので打ち止めですかね。どちらかというと、目玉機能よりは付随のちょっとした機能強化の方が嬉しかったりもしますが……。

他に漏れ伝えられているのは、データベースの「システム」が「システム1」と「システム2」の2つに分かれた点ですかね。今のところ伝えられているのは、戦闘システムに関する選択肢が加わったことぐらいですが、それ以外にも追加されている設定項目はあるはず。あるよね……?

どのような設定項目が増えたのかが分かれば、どんなことがデフォルトでできるようになったのか分かるので、その辺が公開されれば、より新ツクールのイメージが膨らむことでしょう。

あとは発売がいつか、ということですね。

こういうのは、夏休み前あたりに出すのが鉄板な気もしますが、それだともう発売日が発表されていてしかるべきだと思うので、8月下旬あたりかな? まあ、対象は大学生以上な気もしますし、夏休み前である必要もないですかね?

[ ツクール情報 ] 毎週木曜はMZの日

2020-07-02 23:29:33

何だかんだ言って楽しみにしている『RPGツクールMZ』の新情報公開。

今週は公式サイトで以下の内容が公開されました。

  • 移動ルートのプレビュー機能
  • イベントコマンドの強化・拡張
  • 4層レイヤー
  • デフォルト素材の数やサンプル
移動ルートのプレビュー機能

一つ目は、風の噂にもなっていなかった、移動ルートのプレビュー機能。

「移動ルートの設定」の際に、そのルートが視覚化されるようになるそうです。歩数を間違えたりとか左右を逆にしてしまったりとか、確かによくやらかすので、テスト前にそれが分かるのはありがたいですね。

そうそう。こういうちょっとした、しかしどんな場合でも役に立つような機能を、どんどん取り入れていってもらえると、とても助かります。

ただ、ちょっと懸念が。これって移動の起点はどこになるんでしょうか。まず数歩移動して、そこからさらに移動させる、みたいなイベントはよくありますが、その辺はどう反映されるのか。

過去の移動を自動的に反映した起点にするのはどう考えても難しそうです。起点が自分で選べるようになっていればいいと思いますが、そのイベントの元の位置が常に起点になるようだと、途端に使い勝手の悪い機能になりそうな……。(海外フォーラム情報によると、起点は選べるっぽいですね)

イベントコマンドの強化・拡張

イベントコマンドの種類自体はMVから変わっていないようですが、コマンドの中身はいくつか細かい強化が図られているようです。

  • 「文章の表示」に「名前」欄が追加(既報通り)
  • 「条件分岐」の「ボタン」で「押されている」「トリガーされている(押された瞬間)」「リピートされている(押しっぱなし)」を選択可能に
  • 「指定位置の情報取得」でイベントやプレイヤーの位置を選択可能に
  • 「マップのスクロール」に「完了するまでウェイト」を追加
  • 「ピクチャの移動」で開始・終了時の速度を遅くできるように

以上が「一例」と言うことなので、他にも追加はありそうですね。どれも地味な機能ですが、どれもよく使われるし、対応しようとするとひと工夫必要で面倒ですし、追加されたからって副作用もなさそうで、非常に好感の持てる機能追加です。

名前欄は、実際の表示例が公開されました。私の作っている「話し手ウィンドウ表示スクリプト」とほぼ同じ表示ですが、私のは枠の幅が固定なのに対して、こちらは名前の文字数に応じて幅が可変のようです。幅が可変だと1〜2文字の短い名前の場合に不格好なので、固定の方が好みですが、これくらいならスクリプトをいじればすぐに変更できそうです。

ボタンの判定は、既存の判定だと微妙に癖があって、ミニゲームなどの実装で苦労するポイントでしたが、それが解消しそうですね。ただ、「トリガーされている」「リピートされている」という文言はさすがにどうかと思いますよ……。

指定位置の情報取得は、VX Ace以降の機能なので私は使ったことありませんが、現状だと直接指定かX/Yの変数で指定しかできないので、現在位置の情報を取得しようとすると、まず変数にプレイヤーのXとY座標を取得して……とやる必要があります。それが「プレイヤーの位置」で一発指定できるのは非常に楽ですね。

マップのスクロールで完了するまでウェイトは、なんで今までなかったんだよと言うくらい、ありがたい機能ですね。これでいちいちウェイトのフレーム数を計算する日々から解放されます!

ピクチャの移動は、個人的にはあまり使ったことのない機能ですが、移動の最初や最後をゆっくりにするのはよくある演出だと思いますし、良さそうな機能です。

他に欲しい機能は……

  • アイテム・武器・防具の増減で対象のアイテムを変数で指定
  • 乗り物の乗降で、単純に乗降状態のみを変えられるように(船に乗っている状態で移動魔法を使うケースなど)
  • BGMのフェードイン

といったところですが、果たして実装される時は来るのか。(対象のアイテムを変数で指定は2000時代にはあったはず)

4層レイヤー

これがRPGツクールMZの最大の目玉と言っても過言ではないのではないでしょうか。

レイヤー別の編集ができるようになったばかりか、XPの時の3層より多い4層レイヤー。期待以上という方も多いと思います。

ただ個人的には、かえって使い勝手が悪くなったという印象です。

まず、レイヤーの切り替えが、メニューからしか選択できなそうな点。ツールバーにも切り替えアイコンらしきものがないし、ショートカットキーも設定されていないようです。レイヤーの切り替えは頻繁に発生するのに、これではメニューから「レイヤー」を選ぶ→目当てのレイヤーを選ぶ、という2回のクリックが必要になって、明らかに手間です。開発中の画面だからツールバーもショートカットキーもまだできてないんだ、と言ってほしい……。

※追記:新たに公開された動画によると、Ctrl+Tabでレイヤーの切り替えができるようです。

MV同様の自動モードもあるそうですが、MVの自動レイヤーには致命的な欠陥があります。

例えば、オレンジ色の花を置いたけど、やっぱり青色の花に変えたい、と思って上書きします。小物配置の時に、そんなことはしょっちゅうあります。

VXやVX Aceでは2層レイヤーなので、意図通りにオレンジが消えて青で上書きされます。

ところがMVでは、なんとオレンジの花の上に青の花が重なってしまいます。置き換えか重ね合わせか、なんてことは考慮してくれません。一度オレンジを消してから青を置かないと重なってしまうため、かなり手間になりました。

自動モードはMV同様とのことなので、その辺の仕様は変わってなさそうですよね。

自動モードの場合は、Aのチップがレイヤー1に、Aのうち山や柵などがレイヤー2に、B-Eのチップがレイヤー3に、B-Eのうち通行設定が[☆]のものがレイヤー4に、自動的に配置されるようになっていれば、一番使いやすいのですが。というか、それ以外の置き方をしたいケースって滅多にないのでは?(ないとは言わないけど)

どうしても違う置き方をしたい時や、上層チップを置いた後で下層チップを変更したい時とかに限ってレイヤーを切り替える、といった使い勝手にしてくれるとありがたいのですがね。

デフォルト素材

個人的に一番気になっていたデフォルト素材の質感も、概要が明らかになりました。

ツクール史上最大規模の素材を同梱と謳われていた割には、BGMの数はそんなに多そうに見えなかったので心配していましたが、BGMは48曲収録とのこと。VXやVX Aceが42曲なので、かろうじて多いか。SEの345曲というのが凄そうですね。MVが少なすぎって噂もありますが。

画像素材も数が多いのは間違いないようで、敵キャラクターが105、顔グラフィック15x8=120は、確かに豊富です。キャラクター44はVX Aceより少ないですが、VX Aceは水増し感もありましたし、キャラ生成機能でカバーできるので、デフォルト素材の数はあまり問題になりません。

バストアップやキャラクター全身といった画像素材も加わっており、立ち絵の表示など表現力も広がりそうです。ただこれは、キャラ生成でオリジナルのものが手軽に作れるようになっていないと、使い所が限られるような気もしますね。

敵キャラや顔グラなどグラフィックのタッチは、MVに比べて個人的に好みではあります。キャラクターの頭でっかち感は、解消されていないっぽいのが残念ですが……。

あと気になっているのは、敵キャラのスライムがどんな絵柄かという点。今回の公開画像にはスライムがいなかったので、評価は先送り。2000やVXみたいな、いかにも弱そうな初期のモンスター感があればいいのですが、XPやMVみたいなクセ強すぎなスライムだと悲しい……。

まとめ

ようやく具体的に使用感をイメージできる情報が公開されましたね。イベントコマンドの強化・拡張は、地味ながら嬉しい機能だと思います。

普通に作る分にはできるだけストレスなく操作できるように、だけど高度な要望にも応えられるように、というのは非常に難しいですが、今後もその絶妙なバランスを保ちつつ、発展していってほしいと思います。