鳥小屋.txt

主に自作ゲームをつくったりしているよ。制作に関することやそうじゃないことのごった煮ブログ

ツクールと最大公約数と鳥小屋プラグイン

ツクールは最大公約数

RPGツクールは『最大公約数』の取り方が非常にすごいなと思っています。
ここで言う『最大公約数』とは「多くのゲームで共通となる部分」の意味です。

正直、ゲームの中身は多くの場合ゲームごとに全く異なっていて、その中の共通点を見つけ出した上で 限界まで削ぎ落とす というのは非常に難しいです。特に『削ぎ落とす』というのはツールの作り手にとっては怖い行為です。なぜならば、機能をそぎ落とせば「◯◯機能がない」という不満を投げつけられる可能性があるためです。

しかし、機能はあればあるだけあらゆるケースにおいて良いというようなものではありません

主たる思想はどこにあるのか

例えば、僕らの身近な例だとRPGツクール2000WOLF RPGエディター(ウディタ)を比べるといいかもしれません。ウディタはRPGツクール2000と比べると非常に多くの機能をほぼ無制限に利用することができます。一方で「初めてゲームを作るよ!」という人にとっては、ウディタは結構難しいツールでもあると思います。

これは当然の話で、主たる思想が違うためです。ウディタは公式サイトにも書かれている通り ツールで想定されている範囲を越えた自由度が欲しい という想いから作られているもので、思想の主は「自由」であることだからです。一方でRPGツクール2000は 操作は簡単!手軽にクリエイト! を謳っており、思想の主は「手軽」であることがわかります。

どちらが優れてるとかそういう話ではないですし、そもそもとして 0 か 1 かなんて話でもありません。実際、ウディタにも初心者向けの部分はありますし、RPGツクール2000にも上級者のための機能もあります。
重要なのは「ツールが目指している場所がどこなのか」という部分です。

RPGツクールの目指している場所と最大公約数

ちょっと Unite がどこ目指してんのかは僕もよくわかんないので置いときますが、
RPGツクールは一貫して「手軽」であることを目指していると思われます。そう考えると、他のプロユースに近いツール達(ウディタやUnityなど)とは異なり、ゲームの最大公約数を見つけ、機能と情報を制限することで、初心者にも全体がわかりやすくする……といったことを目指しているのだと思います。

多くの場合にとって必要なものというツールや機能が厳選されているということは、裏を返すと個々人が開発しているゲームの中だと「微妙にコレできたらいいのにな~」ということはあるかもしれません。しかし、その要望をすべて受け入れるとRPGツクールが目指している場所とはズレてしまうことでしょう。

ここのバランス感覚は非常に難しいと思うのですが、RPGツクールはとても良い場所にいるなと感じており、僕が今でもRPGツクールに惹かれ続けている理由の1つです。

プラグイン

ところで、RPGツクールにはプラグイン機能(XP~VXAceだとスクリプト)があります。

おそらく本来コレはRPGツクールの中における上級者のための機能だったんじゃないかなと思いますが、ユーザーコミュニティの中で発展していく中でプラグイン素材(スクリプト素材)が多く生まれ、自分でスクリプトを書かない初心者でも割と気軽に使いがちな機能になっていますね。

僕とプラグイン素材

僕自身も、RPGツクールVX(RGSS2)のときに自分のゲーム用に書いたスクリプトをブログで少し公開したりしており、RPGツクールVXAce(RGSS3)以降はスクリプト素材屋さんみたいなことをして活動しています。

正直、RGSS3の頃やMVプラグインの初期とかは僕もテキトーなことやってたのであんまり思想もクソも無かったのですが、いろいろと振り返ったりした中でRPGツクールが実現している「最大公約数」を見習いたいなと思い、現在鳥小屋プラグイン置き場で公開しているプラグインの多くはちょっと意識をしています。

鳥小屋プラグインの最大公約数

現在の鳥小屋プラグインでは以下の2つのルールを意識するようにしています。

  1. UIの変更を主としたプラグインは作成しない
  2. UIの豊富なカスタマイズ機能を提供しない

共にUIにまつわる部分です。

(1) UIの変更を主としたプラグインは作成しない

例えば「鳥小屋カッコいいバトル画面プラグイン」みたいなもので、既存のRPGツクールが提供している画面を大きく作り変えるようなプラグインという意味です。

これは「RPGツクールが提供している画面は最大公約数である」ということを考えると、ここから狭めていった先にあるべきなのは「そのゲームのためにオーダーメイドされた画面」であるべきだと考えたためです。そこまで行くとプラグイン「素材」じゃない……!

例えば、地下ドールの戦闘画面は地下ドールのゲームシステム上(2vs2 / 自動戦闘)でしか成立しない。

そのため、鳥小屋プラグインでは既存UIを変更することを目的としたプラグインは作っていません。

ただし「何かを追加する」という形のものはいくつか作っています。例えば『通知メッセージプラグイン』は、マップ画面に通知UIを追加するプラグインです。

(2) UIの豊富なカスタマイズ機能を提供しない

一方で『通知メッセージプラグイン』のような何かのUIを追加するプラグインにおいては、『豊富なカスタマイズ機能を提供しない』というルールを作っています。もちろん最低限のフォントサイズの設定とかはプラグイン設定で提供していますが、この見た目を大きく変えるような機能をプラグインの機能としては提供していません。

これも先ほどと同じで、鳥小屋プラグインにおいて追加するUIにおいても最大公約数を目指す、という思想からです。

あらゆる要望に応えられるようなプラグイン設定を作ることは非常に難しいですし、使う側の人にとってもわかりにくいものになるでしょう。そのため、プラグインとしては多くのゲームでそのまま使える状態を目指すというルールでやっています。

なお、この思想はプラグイン作成上の思想であり、「利用者の人も最大公約数のまま使うべきである」というものではありません

鳥小屋プラグインでは、画面UIに関わる処理はすべて window.Torigoya.プラグイン名 以下からいじることができるようになっており、「鳥小屋プラグインの処理/見た目を変更するプラグイン」が作れるようになっています。実際、僕が自分のゲームで使う場合は、ゲームにあわせていじっています。

『貴方が狼カードデス!』の実績画面は 実績プラグイン を使っていますが、見た目の部分はこのゲーム専用のプラグインで処理を上書きしています。

そのルール守ってどうすんの?

最大公約数を意識することで、以下の2つを実現できたらなと思っています。

  1. 様々な人が気軽に使いやすいプラグインにしたい
  2. 僕が今後も保守していきやすくしたい

(1) 様々な人が気軽に使いやすいプラグインにしたい

RPGツクールのように、誰もが気軽に使いやすいプラグインにしたいです。

それこそ可能であれば、プラグイン設定などは一切しなくても動くことが理想です。もちろん実績プラグインなどは実績自体を作ってもらう必要はありますが、それ以外の設定というのはしなくても使えるようなわかりやすいプラグインにできたらいいなと思っています。

多くのゲームでそのまま使えるものを考える、ということ自体はとても難しいことで失敗することも多々ありますが、今後も意識してやっていきたいです。

(2) 僕が今後も保守していきやすくしたい

大前提として、僕は自分のプラグインを自分のゲームで使いたいと思っています
逆に言えば、僕が使わないプラグインは作るつもりはないです

これは簡単な理由で、僕が使わないプラグインは僕が保守しなくなっちゃうからですね。僕はプラグイン作者ですが、そのプラグインの一番の利用者でもありたいと思っており、そうすることでプラグインの不具合修正などを継続して行っていけるようにしたいと思っています。

これを実現するためには、鳥小屋プラグインはなるべく多くのゲームで使えるようなものであることが望ましいです。最大公約数を意識することで、僕が過去に作ったゲームはもちろんのこと今後作るゲームでも使っていきたいと思えるようなプラグインにしていきたいです。

まとめ

  • RPGツクールの『最大公約数』はすごい
  • 僕はRPGツクールを見習いたい!
  • 鳥小屋プラグインでも『最大公約数』を意識してやってます

くっそ長いブログ書いたけど3行で済む話だった!!!!!!!!!!111111111
ブログの最大公約数も意識したほうがいいかもしれないね(?)