10 人のペルソナ:Turian は誰のためのものか
ツールを作るときの最大の落とし穴は、作り手自身の流儀や好みにだけ合う形にしてしまうことです。でも私はずっと、Turian を自分だけでなく、実際に使う人たちの役に立つものにしたいと思ってきました。この記事では、誰のために Turian を作っているのかを、名前を挙げて説明します。
256 Gamedev Profiles では、ゲームを作る人を表すための語彙を提案しました。四つの層、16 のスタイル、そして作り手ごとの 4 文字のプロフィールです。この記事では、その語彙から 10 人を選びます。架空ですが、意図的に具体的な人物にしています。それぞれに普段の仕事、プロフィール、そして「大切にすること」と「嫌うこと」を一言ずつ用意しました。大切にすることは、欠けていれば使い続けてもらえない必須条件でもあります。嫌うことに出会えば、理由を説明することなく去っていきます。機能一覧は表で比較できますが、大切なことは、最初に確認し、その後もずっと確かめ続けるものです。
10 人のうち 7 人は、自分の手でゲームを作ります。残る Gabriel、Isabela、Julio の 3 人は、制作のためにエディターを開くことはありません。パイプラインを構築し、技術スタックを選び、成果物の納品状況を測ります。何十人もの作り手を代表して動くため、この中に含めています。ただし、この一覧の中心はあくまで作り手です。
これを公開するのは意図的です。ロードマップや Issue では、これらの名前を使います。想定する利用者を隠したツールは、利用者に「自分向けかどうか察してほしい」と言っているようなものだからです。
この記事では、人物像と求めるものを紹介します。今日の Turian がそれぞれにどこまで応えているか、不足も含めて率直に確認するのは、対になる現状点検の記事です。
10 人の概要
| ペルソナ | プロフィール | 普段の仕事 | 大切にすること | 嫌うこと |
|---|---|---|---|---|
| Ana | P·W·I·J | 高校生 | 自分の言語で初めて触り、動くものを作って終えられること | 理由も分からず手順が失敗すること |
| Benjamin | C·P·A·J | コード中心の個人インディー開発者 | アセットの読み込みからビルドまで、すべてを制御できること | エディター必須の作業手順 |
| Carlos | I·W·I·C | ジャムから生まれたリモートスタジオ | エディター内で素早く試せて、各担当の仕事が互いを妨げないこと | 一人の担当作業が残る三人を止めること |
| Daniela | A·P·I·J | 2D・3D ゲームアーティスト | 忠実さ:作ったアセットがそのまま届くこと | インポートで品質が黙って損なわれること |
| Eduardo | I·W·C·J | レベルデザイナー | 巨大なアセットライブラリーを使ってもクラッシュしないこと | 後で何が直っても、ファイルが一つ壊れること |
| Fernando | I·H·I·J | ゲーム内経済のデザイナー | プログラマーを介さず表計算で調整できること | 数字を一つ変えるためにプログラマーへ頼むこと |
| Gabriel | C·P·A·C | ツール開発・DevOps | ヘッドレスで二度ビルドして同じバイト列になり、ワンクリックで戻せること | GUI エディターでしかできない作業 |
| Isabela | C·H·A·D | AA スタジオの社長 | 裏付けのあるベンチマーク、明快な料金、そのツールを知る人材市場 | デモを出しただけでロードマップと呼ぶ宣伝 |
| Julio | C·H·A·C | AAA プロデューサー | 測定、分割、統合できる納品 | 想定外の事態と、問題箇所を示さないエラー |
| Mariana | C·S·T·I | ツール開発者 | バージョン管理された API と、更新後もパッケージが使えるストア | 自分に原因のない破壊的変更 |
Ana

趣味でゲームを作る高校生
P·S·I·J:試作型(Prototyper)、購入活用型(Shopper)、統合型(Integrator)、実務型(Journeyman)。
Ana は 16 歳、サンパウロの高校生です。英語は学校の教科であって、普段使う言語ではありません。それでもネットのチュートリアルは英語が分かることを前提にしています。作りたいのは、自分の教室、友達、食堂の行列といった身近な世界を題材にした、楽しいゲームです。一つのチュートリアルに一心に取り組みます。一時停止し、写し、再生し、繰り返す。夜が終わる頃にはゲームができています。
何もかもに助けが必要で、本人もそれを分かっています。手順を追えるチュートリアル、ストアの完成済みアセット、ドラッグ&ドロップで扱えるエディター、そしてプログラミングはできるだけ少なく。白紙から始めることはありません。動くものを手に取り、絵を入れ替え、友達が主役になるまでルールを変えて、出来上がりを共有します。手順がうまくいかないと、自分が間違えたのだと思います。
**大切にすること:**自分の言語で初めて触り、動くものを作って終えられること。
**嫌うこと:**理由も分からず手順が失敗すること。
Benjamin

コード中心の個人インディー開発者
C·P·A·J:完成重視型(Closer)、純粋主義型(Purist)、設計型(Architect)、実務型(Journeyman)。
Benjamin は、きちんと完成させて世に出す個人開発者です。すでに 2 本を発売し、3 本目を制作しています。MonoGame で覚えたやり方を引き継ぎ、ゲームのほぼすべてをコードで作ります。仕事場はターミナル。バージョン管理の履歴はプロジェクトの日記です。
Benjamin にとって、エディターとは社内ツールのことであり、自分で作るものです。必要なのは、すべてを制御できること。アセットの読み込み方、メモリの使い道、フレームの処理時間、ビルドの作り方までです。Studio を敵視しているわけではありません。めったに開かない窓の一つなのです。クリックでしかできない作業は、誰かの設計の不備だと考えます。
**大切にすること:**アセットの読み込みとメモリから、性能とビルドまで、すべてを制御できること。
**嫌うこと:**エディター必須の作業手順。
Carlos

ジャムから生まれた小さなスタジオの一員
I·W·I·C:反復型(Iterator)、世界構築型(Worldbuilder)、統合型(Integrator)、指揮型(Conductor)。
Carlos と 3 人の友人はゲームジャムで出会いました。試作品は入賞しませんでしたが、友情は残り、スタジオが生まれました。全員リモートの 4 人組で、書類上の担当はそれぞれあっても、実際には全員が何役もこなします。Carlos はある週にはプログラマー、次の週にはレベル制作、その次には別の人の作業をマージしています。
スタジオは、特にシステム面でサードパーティーのアセットを活用するため、プログラミングの中心は接着役のコードとゲームそのものです。Carlos にとって、調整こそが仕事です。編集からプレイテストまでの待ち時間は、一日に百回払う税金のようなものです。チームに対しても同じ感覚を持っています。4 人それぞれが、ほかの人を待たずに自分の担当分を仕上げられる必要があります。
**大切にすること:**エディター内で素早く試せて、それぞれの担当がほかを待たずに成果を出せること。
**嫌うこと:**一人の担当作業が残る三人を止めること。
Daniela

ゲームアーティスト
A·P·I·J:錬金術型(Alchemist)、純粋主義型(Purist)、統合型(Integrator)、実務型(Journeyman)。
Daniela の一日は流れ作業です。Photoshop か GIMP で作って書き出す。3D なら Blender からまた書き出す。エンジンに読み込み、マテリアルを調整し、プレイテスト。よし、次のアセット。制作ツールとエンジンを年に千回も往復し、その一回一回に、何かがずれる可能性があります。
彼女はアーティストであって、エンジニアではありません。エンジンの内部構造は担当外です。大事なのは忠実さです。何時間もかけたアセットが、作ったとおりの色、法線、印象でゲームに届くこと。マテリアル、カーブ、カラーグレーディングなど、元の制作ツールと同じ視覚的な機能がエディターにあれば、大きな利点です。見えないものは直せないからです。流れ作業の中での「よし」は、プロとしての合格判定です。内心では、頭に描いた絵に十分近づいたと思えることはありません。
**大切にすること:**忠実さ。Photoshop や Blender に費やした何時間もの仕事が、作ったままの姿でゲームに届くこと。
**嫌うこと:**何時間もかけた成果の品質が、インポート時に黙って損なわれること。
Eduardo

レベルデザイナー
I·W·C·J:反復型(Iterator)、世界構築型(Worldbuilder)、選定型(Curator)、実務型(Journeyman)。
Eduardo は、渡されたアセットを組み合わせてレベルや UI メニュー、その間をつなぐ空間を作ります。彼にとって大切なのは構成です。構成が決まれば、パーティクルやトゥイーンでさらに先へ進みます。目的はマルチメディアとしての表現であり、静止画は始まりにすぎないからです。
仕事場は、ほかの人の成果の中です。アーティストから届く新しいアセットを整理し、届いた戦闘アニメーションを試し、キット、プレハブ、バリアントを使って、要素の多いシーンの一貫性を保ちます。Undo は何より大切で、ライブラリーには何年分もの仕事が詰まっています。
**大切にすること:**巨大なアセットライブラリーを使っても、クラッシュせずに作業できること。
**嫌うこと:**その後に何が修正されようと、ファイルが一つでも壊れること。
Fernando

ゲーム内経済のデザイナー
I·H·I·J:反復型(Iterator)、独立型(Hermit)、統合型(Integrator)、実務型(Journeyman)。
Fernando はゲーム内経済を調整します。ダメージ曲線、ドロップ率、価格など、プレイヤーが続けるかどうかを左右する数字です。どれにも持論があり、それぞれを裏付ける表計算シートがあります。使う道具はゲームの外にあります。独自形式でのインポートとエクスポート、手入力の数値、スライダー、統計、分析です。
作業の大半はゲームエディターの外で、それを好んでいます。一つの値ではなく、表全体を扱うためのツールが必要なのです。「プログラマーに頼んで」から始まる依頼は、一週間後に間違った値で戻ってきます。だから、ゲームの側でそのまま数字を受け取れる必要があります。
**大切にすること:**プログラマーを介さず、表計算でバランス調整できること。
**嫌うこと:**数字を一つ変えるためにプログラマーへ頼むこと。
Gabriel

DevOps 担当
C·P·A·C:完成重視型(Closer)、純粋主義型(Purist)、設計型(Architect)、指揮型(Conductor)。
Gabriel は中規模スタジオのビルドファームを管理し、自分の権限で技術スタックを選びました。ダッシュボードを見れば、各ビルドの状況、Android、iOS、PC、コンソールのどこへ向かうのか、どうロールバックするかが分かります。今四半期は一度もエディターを開いていません。それでもゲームは発売できました。
API とヘッドレスな作業環境が好きで、ルールは単純です。パイプラインに必要なことは、すべてコマンドラインからできなければなりません。GUI エディターにしかない機能は、CI にとっては存在しないのと同じだからです。クリーンなチェックアウトからのビルドが月曜と火曜で違うなら、謎ではなく、誰かの工程の不備です。魔法のような暗黙の仕組みはリスクです。一人の頭の中にしかない手作業は、いずれ事故になります。
**大切にすること:**ヘッドレスで二度ビルドして同じバイト列が得られ、ワンクリックでロールバックできること。
**嫌うこと:**GUI エディターでしかできない作業。
Isabela

AA スタジオの社長
C·H·A·D:完成重視型(Closer)、独立型(Hermit)、設計型(Architect)、監督型(Director)。
Isabela は、AAA 企業を一緒に辞めた人たちが立ち上げた新しいスタジオを率いています。チームがすでに持つ技能を基に、情熱を持ち込まずにツールを選びます。それは意図的です。情熱はゲームを作るにはよい理由ですが、技術スタックを選ぶ理由としては危険だからです。定期的なマイルストーンやスプリントのプレイテストで制作物に触れれば、それで十分です。
エンジンに恋をしている余裕はありません。技術スタックの選定には四つの表が要ります。席数課金かロイヤリティかという価格、ライセンス条件、チームが身を置くエコシステム、そして採用市場です。次の三人の採用候補がすでに何を知っているかは、どんな機能一覧より重要になります。流行の浮き沈みを経験し、他人の熱狂に乗ることが 40 人のチームに何を負わせるかを知っています。裏付けのないロードマップは宣伝です。
**大切にすること:**裏付けのあるベンチマーク、明快な料金、そのツールをすでに知っている人材市場。
**嫌うこと:**盛り上げるためだけの宣伝。デモを出しただけでロードマップと呼ぶようなもの。
Julio

AAA プロデューサー
C·H·A·C:完成重視型(Closer)、独立型(Hermit)、設計型(Architect)、指揮型(Conductor)。
Julio は Issue やチケットで複数のチームを調整します。ゲームを開く理由は一つ、機能が動くか確認するためです。自分で作るためではありません。パイプラインの各ツールを少しずつ扱えますが、それが仕事に必要なちょうどよい範囲です。知るべきなのは、誰が何を納品するか、次のパッチがどのくらい大きいか、ビルドにどれほどかかるかです。
一週間は、バージョン管理、作業の分割、統合、レビューで埋まります。測れるものは管理できます。測れないものは、最悪のタイミングで全員を驚かせます。ひそかな願いであり、強い要望でもあるのは、問題箇所を示す警告とエラーメッセージです。失敗を言葉で特定できないチームは、レビューの時間を推測に費やすからです。
**大切にすること:**チームごとの納品を測定、分割、統合、レビューできること。
**嫌うこと:**想定外の事態と、問題箇所を示さないエラーメッセージ。
Mariana

ツール開発者
C·S·T·I:完成重視型(Closer)、購入活用型(Shopper)、ツール職人型(Toolsmith)、発信型(Influencer)。
Mariana の役割は、ほかの人がゲームを作りやすくなるツールやプラグインを作ることです。エディターの API は社内の誰よりもよく知っています。社内向けに作ったものの一つがとても堅牢だったので、計画というより成り行きでマーケットプレイスに出しました。熱心な利用者が付き、スタジオの副収入にもなり、今では同じコードで社内外の顧客に応えています。
一定のペースでリリースし、そのたびに発信します。恐れていることは二つですが、根は同じです。エンジンの破壊的変更は、自分に原因のないサポート依頼になります。更新で参照が失われれば、返金依頼になります。
**大切にすること:**エディターが文書化・バージョン管理された API であり、ストアのパッケージがバージョン更新後も使えること。
**嫌うこと:**自分に原因のない破壊的変更。
10 人に共通する要望
10 人を並べて読むと、三つの要望が繰り返し現れます。
- エディターでできることは、すべてコマンドラインでもできること。 Benjamin、Gabriel、Julio、Isabela は、エディター選びでは一致しなくても、パイプラインについては一致します。
- 変更しても失われない識別情報。 Mariana、Julio、Eduardo は、依存するものを壊さずに名前の変更、移動、更新ができる必要があります。
- 形容詞ではなく数字。 Isabela、Julio、Gabriel は、「高速」「再現可能」をそのまま信じません。主張には測定結果と、再現する方法が必要です。
この三つがロードマップの骨格です。ロードマップや Issue が対象の利用者を示すときは、この 10 人の誰かの名前を使います。
人物像を描くのは、まだ簡単なほうです。対になる現状点検の記事では、一人ずつ、今日の Turian で何が得られるか、何を大切にし、何を嫌うか、そして何がまだ足りないかを確認します。
#gamedev#tools#game-engines#turian