【アイデア】CTBとターン制の夢の融合

2017年10月06日

 前回の記事で予告した通り、新しい行動順序システムを閃きました。アイデアだけですが、書くだけ書いてみます。

 →マジで実装しました! RPGツクールMZ〜MVで使用できます。
 https://newrpg.seesaa.net/article/472839675.html

 参考:戦闘システム@ 行動順序システム

 以前も書きましたが、新しい行動順序システムを作るのは難しいのが現実です。
 そのため、『リアルタイム制』を除いたコマンド式RPGの戦闘システムとしては、『ターン制』『CTB』のどちらかに類するものを使うのが、一般的でした。
 世に出回るフリゲも市販RPGも、大半がこのどちらかを採用している状況です。
 しかしながら、それだけでは戦闘システムの幅は狭まってしまいます。RPGの歴史の中では『プレスターン』などの新しい試みがされてきましたが、もっと色々とあっていいはず。

 そこで『ターン制』と『CTB』のいいとこ取りができないかと考えました。

  • 同時に多人数の行動を決める緊張感あるターン制
  • 素早さの重要性が高いCTB

 このような特徴を融合できないか――というわけです。

 素早さの価値を高めたターン制といえば、ブレスオブファイア3のEXターンが挙げられます。
 これは『素早さが敵平均より二倍高いキャラ』に限り二回行動できるというものです。ただ極端過ぎる嫌いはありますし、逆に条件を満たさない限りはシステムとして空気です。
 あれよりも明確にシステムとして組み込みたいところです。

試案


 ではどうするのか――というと、具体的にはCTBを『何らかの行動回数』で区切って、ターン制のような挙動にします。
 ※CTBの実装については、前回の記事を参照

 まず思いついたのは『戦闘に参加している人数』で区切ることです。

20171006.png

 画像は既存のCTBをいじったイメージです。緑の矢印から上がそのターン内での行動者です。
 味方3人、敵3体なので1ターンの行動回数は全員合わせて6回となります。
 遅い敵はそのターン中は行動できなくなる代わりに、2回行動できる味方が発生します。遅いキャラの出番を速いキャラが奪い取るようなイメージですね。

 これで一応の形ができました。
 ターン制とCTBの特徴を併せ持った行動順序システムが設計できたような気がしないでもありません。

 ……が、問題もありました。
 遅いキャラの行動を速いキャラが乗っ取るという仕様上、遅いキャラが想定以上に足を引っ張ることになります。

 例を挙げると、CTB(4人参加)で以下の順番であった場合……

 A→B→C→AD→B→C→A
 ※アルファベットがキャラクターに該当します。

 新システムでは……

  • 1ターン目:A→B→C→A
  • 2ターン目:D→B→C→A

 という行動ターンになります。
 素早さの低いDの1ターン目が、Aによって奪われていることが分かります。
 Aが敵でB〜Dが味方ならば、1ターン目に2回の攻撃をされてしまうわけです。

  • 1ターン目:A→B→C
  • 2ターン目:A→B→C

 上記のように、Dを除いた3人の戦いならば、2回攻撃は発生しません。下手すれば、鈍足のDを戦闘不能にしておくような戦術が有利になってしまいます。
 遅いキャラが不利なのはCTBの宿命とはいえ、これはやり過ぎでしょう。何だかいびつなシステムに思えてしまいます。

改良案


「1ターンの行動を限定する」という方向性は悪くないように思いますが、どうにもしっくりきません。
 ならば、その条件を変えてはどうでしょうか?
 思いついたのは、『最も速いキャラ』を基準にすることです。
 具体的には『同じキャラ』の順番が2回来たら、その手前でターンを区切ります。
 ※大抵は『最も速いキャラ』が対象になりますが、補助・異常などで複雑に変化することもありえます。そのため『同じキャラの順番が2回』を条件にしたほうが汎用的です。

 A→B→CA→D→B→C

  • 1ターン目:A→B→C
  • 2ターン目:A→D→B→C

 というようにAを基準に区切ります。
 1ターン目だけ最も遅いキャラ――すなわちDが脱落していることが分かるでしょう。
 ターン毎に参加人数が可変になるという点が特徴的ですね。

 他の例も考えてみます。
 A→B→CA→D→B→CA→B→C→D

  • 1ターン目:A→B→C
  • 2ターン目:A→D→B→C
  • 3ターン目:
  • 4ターン目:A→B→C→D

 見ての通り、毎ターン行動するキャラと順序が流動的に変わっていきます。
 順序については、ターン内で再び素早さで並び替えるのもよいかもしれません。かなり雰囲気がターン制に近づくと思います。
 CTBにおけるキャラの連続行動は、そのキャラ単独のターンとなります。この場合では3ターン目のAが該当します。単独ターンではなく、前後のターンと合併して2回行動にするのも面白そうです。

 このルールならば、鈍足のDが大きく足を引っ張ることもないので、不公平感はなさそうですね。

 A→B→CA→D→BA→CA→B→D

  • 1ターン目:A→B→C
  • 2ターン目:A→D→B
  • 3ターン目:A→C
  • 4ターン目:A→B→D

 一つ気になるとすれば、このパターンです。
 2ターン目に『鈍足のD』は動けるのに『Dより速いC』が動けない逆転現象が発生しています。3ターン目も同様で、Bは動けないのに『Bより遅いC』は動ける状況になっています。
 もっとも、場合によっては遅いキャラが有利なのは、ターン制時点からの伝統です。あまり気にする必要はないかもしれませんが。

 ……というわけで、ここに新しい行動順序システムが完成しました。プログラムとして実装したわけではありませんが、ここまで設計できれば十分だと思います。
 特に調べてはいませんが、アイデアとしては自分が初めてのはず。
 というか、CTBだけでもわりと面倒なのに、その上で細工しようと考える人はあまりないと思います。

 命名はカウントターンバトル――にしようかと思いましたが、略称がかぶるので思い留まりました。
 カウントタイムターンバトル――略してCTTBとしておきます。

CTTBまとめ


利点

  • 素早さの価値が高い。
  • ターン制独自の緊張感や戦術性を持ち込める。
  • サガシリーズの連携など、ターン制向きのシステムも使える。
  • ターン毎に状況が流動的に変わっていくので刺激的。
  • 今までにないシステムなので新鮮さがある。
  • それでいて感覚はターン制に近いので馴染みやすい。

 まんま、いいとこ取りですね。まさに夢の融合!

 最大の欠点は「別にCTBでよくね?」というツッコミかもしれません。
 ターン制に関しては『素早さ』という明確な差別化ができるので心配いりませんが、問題はCTBを相手にした場合でしょう。
 ターン制的な面白さを持ち込めないなら、わざわざCTBを余計な劣化させただけになりかねません。夢の融合どころか下手すりゃ中途半端の誕生です。

 これを書いた当人も、CTBより面白いかと言われると確信はありません。面白いかどうかは、実際には調理次第といったところでしょう。
 とはいえ、新システムというのはゲームデザイナーのロマンです。機会があれば挑戦してみたいと思います。
 ※絶対にやるとは断言しません。やってみてつまらなかったら意味がないので。

 そんなわけで、ターン制とCTBの両方が好きな方は、CTTBに挑戦してみてはいかがでしょうか?
 https://newrpg.seesaa.net/article/472839675.html
posted by 砂川赳 at 22:41 | RPG制作講座 | このブログの読者になる | 更新情報をチェックする

【プログラミング】CTBの実装方法

2017年09月19日

 微妙に需要がありそうなので、経験者としてCTB(カウントタイムバトル)の実装方法を解説してみます。

20140705_1.png

 参考:戦闘システム@ 行動順序システム

 内容はもろにプログラマ向けです。プログラムを組んだり、ツクールで自作システムを組んだりした人以外はピンとこないかもしれませんので、あらかじめお断りしておきます。

 なお、拙作ミスティックスターのCTBは、ツクール2000で実装していますが、アルゴリズム(処理手順)自体は汎用的に使えるはずです。ある程度の自由度がある開発環境ならば、流用可能です。

 作り方はいくつかありますが、まずは最も簡単な『素早さ加算方式』の実装方法から紹介します。

素早さ加算方式


 イメージとしては、FF7〜9のATBを思い浮かべてみれば、分かりやすいと思います。
 ATBゲージが満タンになったキャラが行動できるようになるアレですね。素早いキャラほど、ゲージが溜まる速度が上昇します。あれのリアルタイム性をなくしたものと思って頂ければ。
 ※FF4〜6は仕様が異なるので除外しています。興味がある人は調べてみてください。

  • 素早さ40のキャラ1
  • 素早さ50のキャラ2

 の二人がいた場合を想定すると……

  • キャラ1:40→ 80→120→160→……→ 800
  • キャラ2:50→100→150→200→……→1000

 というように、時間が立つごとに素早さ分だけゲージが増えていきます。
 ゲージ値が1000以上になったキャラがいれば、ターンが回ってきます。この場合はキャラ2の行動ターンが先に来ますね。
 ※もちろん、条件となるゲージ値は1000でも10000でも何でもいいです。ただし、あまり小さすぎると計算誤差が出るので注意です。

 キャラ2の行動が終われば、ゲージ値を−1000します。0にリセットしないのは、1000を超えた値が無駄にならないようにするため。毎回、ピッタリ1000になるわけではありませんので。

  • キャラ1:800→840→880→920→960→1000
  • キャラ2:  0→ 50→100→150→200→ 250

 後はこれの繰り返しです。
 その内に、素早さで勝るキャラ2が連続で行動するターンが発生します。それこそが、CTBの特色です。

 走る速さがバラバラな選手達が、何度もゴールを目指し、到達する度に最初から走り直すようなイメージでしょうか。
 ここで終わるなら、実のところCTBの実装は簡単です。一人ずつキャラの順番を処理すればよいという点では、ターン制よりも容易だと言えます。

 ところが、この『素早さ加算方式』には欠点があります。それは行動順序の予想が難しいことです。
 先程は計算が簡単な例で挙げましたが、これはどうでしょう?

  • 素早さ32のキャラ1 現在のゲージ値は300
  • 素早さ41のキャラ2 現在のゲージ値は150

  • キャラ1:300→332→364→……
  • キャラ2:150→191→232→……

 どちらが先にターンが回るか、即答できる人は少ないはずです。
 これが5人10人と増えていくと、もっと大変になります。
 CTBの実装に挫折する第一の関門はここでしょう。

 そんなわけで、『素早さ加算方式』では行動順序の表示が困難となります。
 そもそも、CTBとはFF10が呼称した方式であり、それに則れば順序表示がないものは厳密にCTBとは言えません。
 真のCTBを実装するためには、行動順序を把握できるような処理を考える必要があります。

WT減算方式


 ではどうするか――というと、もっと計算の簡単な形に変えてしまいます。
 『ゲージが溜まる速度』を比較するのではなく、『ゲージが溜まる時間』を比較すればよいのです。
 これは小学校レベルの知識で十分可能ですが、すんなりと思いつく人は意外と少ないと思います。自分も当初はここで詰まっていて、ある日ふと解決法を思いつきました。

 距離÷速さ=時間

 つまり……

 ゲージの長さ÷ゲージが溜まる速さ=ゲージが溜まる待ち時間(WT)

 となります。

  • 素早さ32のキャラ1: 1000÷32=31WTでゲージ満タン
  • 素早さ41のキャラ2: 1000÷41=24WTでゲージ満タン
  • 素早さ50のキャラ3: 1000÷50=20WTでゲージ満タン

 待ち時間(WT)が0になる度にターンが回ります。行動が終われば、再び元の待ち時間にリセットします。
 ※以降、待ち時間をWTと表記します。

 次の表は下に向かって時間が経過していくイメージです。

  キャラ1 キャラ2 キャラ3
↓ 31   24   20
↓ 11   04   00
↓ 07   00   16
↓ 00   17   09
↓ 22   08   00

 上記のように、各キャラのWTが遷移していきます。
 当然ながら、次に動くのはWTが最も小さなキャラです。どこを切り取っても、次に誰が行動するかは一目瞭然ですね。

 ※実際にCTBを実装する際には、『ゲージの長さ=1000』の部分にはもっと大きな値を設定することを勧めます。やはり小さすぎると計算誤差が出るためです。

 何のことはありません。既にタクティクスオウガなどでやっている手法です。
 タクティクスオウガではターンが回るまでの待ち時間(WT)をキャラが保有しており、レベルが上がる度に減少するようになっています。
 つまり、この方式は従来の素早さ方式をWT方式に変換しているだけとも言えます。

 ※タクティクスオウガのように最初からWTを使う方法でもよいのですが、プレイヤーには分かりにくいのが難点となります。また、ツールによっては実装自体が困難です。なんせ、レベルと共に減少するステータスなんてあまり見ませんので。

 ここで終わりたいところですが、そうはいきません。
 CTBの実装には第二の関門があります。

 今までの方法では、キャラ1とキャラ2のどちらが次に動くかが分かるようになりました。ですが、これではまだ二人の行動回数の差を表現することはできません。

20170919.png

 例:上の画像では、素早いキャラの順番が何度も表示されるようになっています。

  • キャラ1の素早さは25
  • キャラ2の素早さは20

 キャラ1が4回行動する間に、キャラ2は5回行動できる――ということは、何となく予想がつくと思います。
 しかしながら、その行動回数の差を画面上へ表示するにはどうすればよいでしょうか?

 例によって、まずは素早さをWTに変換します。

  • キャラ1:100 ÷ 25 = 4WT
  • キャラ2:100 ÷ 20 = 5WT

 これらが各キャラの基本WTとなります。
 これが減って0になれば行動。
 行動が終われば、またこの値にWTが戻ります。

 試しに、まずは人力で計算してみましょう。

  • 4WT後 → キャラ1のターン

 まずは最も早いキャラ1が動きます。これは簡単ですね。
 次に来るのはキャラ2か、あるいはキャラ1の二回目の行動か?
 人間なら直感的にキャラ2だと判断できますが、コンピュータはそうではありません。

  1. キャラ1の2回目の行動WT8 > キャラ2の1回目の行動WT5
  2. 従って、キャラ2の1回目の行動のほうが早い。

 というように、きちんと比較するよう指示せねばなりません。
 人数が増えてくると、それだけ手間も増えていきます。頭が痛くなるので考えたくもありません。

 もう少し、簡単な方法はないものか。
 というわけで、まずはキャラ1のターンだけを考えてみましょう。 
 10回まで行動順序を表示するシステムならば、10回分の行動を計算します。

  •  4WT後 → キャラ1のターン
  •  8WT後 → キャラ1のターン
  • 12WT後 → キャラ1のターン
  • 16WT後 → キャラ1のターン
  • 20WT後 → キャラ1のターン
  • 24WT後 → キャラ1のターン
  • 28WT後 → キャラ1のターン
  • 32WT後 → キャラ1のターン
  • 36WT後 → キャラ1のターン
  • 40WT後 → キャラ1のターン

 単なる掛け算なので、難しいことは何もありません。

 次にキャラ2がキャラ1のターンにどう割り込めるかを考えていきます。
 キャラ2のターンを同じように求めると……

  •  5WT後 → キャラ2のターン
  • 10WT後 → キャラ2のターン
  • 15WT後 → キャラ2のターン
  • 20WT後 → キャラ2のターン
  • 25WT後 → キャラ2のターン
  • 30WT後 → キャラ2のターン
  • 35WT後 → キャラ2のターン

 ちなみに40WT以降はどうあっても割り込めないので計算不要です。

 ここまでやれば後一歩。
 キャラ1のターンの隙間に、キャラ2のターンを挟んでいきます。
 具体的には、この二つをWT順でソート(並び替え)して合体させればよいでしょう。ソート後は表示に必要な10件までを保持します。

 より正確に書けば、
 『キャラクターID』と『WT』の組を構造体として保持し、『WT』をキーとして昇順でソートを行う。
 という感じになります。

 プログラム経験者以外にはわけわからんことを書いてる感じがしますが、そこはすみません。
 ただソート処理というのは、非常にありふれたものです。どの言語にせよ、ググればやり方はすぐに見つかるので、適当にパクってください。
 ツクールXP以降ではRuby、ツクールMVではJavaScriptなども使えるらしいので、問題ないかと思います。
 なお、ツクール2000でやるのは、それなりに大変でした。なんせ構造体も配列も何もない直接番地指定です。作者的にはもう二度と見たくないスパゲッティです。

 以下がソート結果です。

  •  4WT後 → キャラ1のターン
  •  5WT後 → キャラ2のターン
  •  8WT後 → キャラ1のターン
  • 10WT後 → キャラ2のターン
  • 12WT後 → キャラ1のターン
  • 15WT後 → キャラ2のターン
  • 16WT後 → キャラ1のターン
  • 20WT後 → キャラ1のターン
  • 20WT後 → キャラ2のターン
  • 24WT後 → キャラ1のターン

 ※20WTの時に、二人の行動がかぶっていますが、適当に優先順位をつけてください。普通にソートすれば、番号が若いキャラが優先されるはずです。

 これにて完了です。後はこの順番でキャラのアイコンなり名前なりを画面に出力するだけ。
 キャラ3以降が増えた場合も、同じように合体ソートすればよいだけなので問題ないでしょう。

 以上で解説終わりです。
 次はCTBを改造した新しい行動順序システムを発表したいと考えています。できれば、もう少し一般的に分かる内容で……。
posted by 砂川赳 at 09:47 | RPG制作講座 | このブログの読者になる | 更新情報をチェックする

【王道長編RPG】完璧主義はエターなる?A 制作者編

2014年09月27日

 前編はこちら

完璧主義な制作者


 さて、前編で終わるつもりだったのですが、そうはいきませんでした。極めて重大な情報が目に入ったためです。それは……

 完璧主義者はエターなりやすいということです。
 ※エターなる:作品を制作途中で放棄することの意。

 !?

 ……この情報には僕も驚愕を隠せません。完璧主義者はプレイヤーとしては、アイテムコンプのような地道な作業を完遂できる性質を持っています。相当な根気強さを持っているため、どちらかというと、完成できるタイプなのだと考えていました。
 それがなぜ、エターなるというのか? これは「人はなぜエターなるのか?」という命題を追求してきた僕としては看過できません。エターナルのメカニズムを解き明かし、より多くのエターナラーをエターナルの海から救出することこそが、RPG制作講座の至上命題といっても過言ではありません。

 というわけで、徹底調査しました。完璧主義者の心理についてはかなり豊富な調査結果があるようです。元完璧主義者&現完璧主義者の証言もそこら中にあって、非常に参考になります。僕だって、今までにも幾人ものエターナラーを見てきました。SFCの初代ツクールをいじっていた頃は自分自身も何度かエターなりましたので、多少の心理も分かります。幸い脱出に成功しましたが……。

 そういった調査結果を分析し、推論と検証を行うことで、かなりの答えを導き出すことができました。ゲーム制作という分野において、ここまで詳細なエターナルメカニズムを暴き出したのは、この記事が初めてではないでしょうか?

※若干、誇張がありますが分析自体はわりと真面目です。当ブログの過去の講座と比較しても、気合の入った記事となっています。

なぜ完璧主義者はエターなるのか?

 まず、完璧主義者は細部までこだわって時間をかける傾向があります。これは予想通りですが、その結果、力尽きて作品を完成できないことが多いようなのです。
 じゃあ、質を落としても作業を速めたらいいじゃないかと思うところですが……。曰く「100%が無理なら、0%でも90%でも大差ない」「下手なまま完成させたくない」というような思考をたどって、妥協するぐらいなら投げ出すという選択をしてしまうのです。
 完璧主義とは「完璧にする」ではなく「完璧にありたいと考える」であり、そのため「完璧にするのが困難ならば投げ出す」という行動も取るわけです。何かと完璧にしてきた人達は、それだけにその大変さを内心では理解しています。だからこそ『したい』とは考えても『する』とは限らないということですね。
 この投げ出すという性質によって、一見すると全く完璧に見えない人が完璧主義者だということもありえますので、注意してください。そのような、隠れ完璧主義についても上の性格診断やゲームのプレイスタイルを見れば判明する……はず。

 では、そもそも完璧主義者はなぜ完璧を目指すのでしょうか? まず、思いつくのは『向上心』がそうさせているという考えです。実際そういう説明をしているところが多いですが、それにしては説明のつかない行動が散見されます。例えば「時間効率を軽視する」「価値の低いことに時間をかける」といった性質です。
 向上心だけが理由ならば、これらも軽視できません。向上心もあるでしょうが、それだけでは説明不足です。

 そこで、僕の出した推論は、完璧主義の方は『いらない物を捨てる判断が苦手』『自分で課題を決めるのが苦手』というように『決断』や『判断』そのものが苦手ではないかということです。

  • 捨てられないから、何でもかんでもやってしまう。
  • 自分で決められないから、外部から与えられた課題に飛びつく。なのに、本心からやりたいことではないのでモチベーションが低い。
  • 引き際の判断が苦手だから、楽しくないことでも100%まで続けてしまう。
  • 課題を立てて徐々にステップアップすることを知らず、いきなり無謀な目標を意識して挫折する。(

 要するに『度合』を決めるのが苦手だから、必然的に「最後までやる」か「早々に放り出す。または最初からやらない」になっていたという推論です。考えてみれば「70%で切り上げる」という行為には意外と意志の力を要すものですから。

 なぜ、判断や決断が苦手なのかというと、完璧主義の人は「人の期待に応える」「人の賞賛を受ける」ことの優先順位が高いからだそうです。相対的に「自分で考えて決める」「自分がやりたいことをやる」「やりたくないことはやらない」という意識が弱くなるわけです。
 人の期待に応えるために『結果』をモチベーションとすると、反面『結果のための過程』が苦行になりがちです。なんせ、ゲーム制作は長丁場ですから、制作過程を楽しめなければ、終わりのない苦行になってしまいます。
 他者の反響を意識する心理が強いことから、失敗を恐れる心理もまた強く働きます。その結果、意外にも『優柔不断』に陥りやすく「こんなに頑張ったのに不評だったらどうしよう。やっぱり作りなおしたほうが……」となって初志貫徹できずにエターなるというわけです。

 このような『失敗を避ける』という心理は、完璧主義ゲーマーのプレイスタイルとも一致しています。装備を完全に整えていれば、敵に負ける可能性は低くなるというわけです。
 ですが、逆説的にそれは『失敗から学ぶ』機会の喪失も意味します。一般的なプレイヤーならば、敵が強くて負けた際に「このボスは力が強い。次は守備力を重視した戦術を試してみよう」というように、自然と失敗から学んで試行錯誤する経験を積むことになります。また、強敵相手に戦うには臨機応変な対応が必要ですから、自然と判断力を養えます。
 これはゲームのプレイスタイルに限定したわけでもなく、普段の生活全般にもいえる話です。入念な準備をすると失敗は避けることができる。……が、同時に失敗した後の克服を学ぶ機会が減少します。

 完璧主義的なエターなる要因をまとめると……

  • ステップを無視した高すぎる目標意識。
    「よし、FF級の超大作RPGを作るぞ!
     一度も作品を完成させたことないけどイケるイケる!」

  • 質やこだわりを重視して、時間を顧みない。
    「FF級といえば当然フルボイスだな。
     今の内に俺もヴォイスの練習やっとくか!」

  • 判断力・決断力の不足。特に取捨選択が苦手。
    「予定だと仲間が50人を超えるな。
     減らしたほうが……。いいや、全員出してしまえ!」

  • 自分がやりたいことより、他者からの反響を優先する。
    「これが完成したら、俺も有名クリエイターだな。
     きっと、女の子にもモテモテだぜ!」

  • 過程を楽しめない結果偏重主義。
    「マップ制作とかストーリーとかスクリプトとかダルいな……。
     誰か他の人がやってくんないかな……」

  • 無謀な目標に真面目な性格が合わさった自己への過剰負担。
    「徹夜で作業したからしんどい……。
     でも、これぐらい頑張らないと終わらないよな」

  • 終わりが見えない作業への不安。
    「まだ、一割もできてない。いつになったら終わるんだろ……」
  • 失敗への恐怖による優柔不断。
    「完成してもつまらないかも。
     やっぱりアクションRPGとして作りなおそうか……」


 「」内は多少誇張してますが、こうしてみるとエターなる要因が満載ですね。能力や根気といった要因を除けば、エターナル要因をほぼ網羅している気すらします。
 人間には個性があるし成長もするので、完璧主義傾向があるからといって、全部が全部当てはまるとは限りません。それぞれの根本は似たような心理かもしれませんが、個別に克服している方もいるでしょう。
 もし、全部当てはまったという方がいれば、相当な真正エターナラーです。天地がひっくり返っても完成することはないので、意識を改めましょう。

 完璧主義を自覚しながらも、実際に作品を安定して完成できている方は、何かしらの柔軟性を持っているのだと思います。例えば「時間効率を考慮できる」「興味がないことは手を抜く」などです。
 柔軟性をあまり持たないまま、努力と能力でねじ伏せることによって、大作を完成させる方もたまに見かけますが、やはり負担が大きいようです。ユーザからの批判に敏感なことも合わさって、非常に疲れやすい傾向が見えます。あれでは「よし次の作品を作るぞ!」というモチベーションを起こすのは大変でしょうね。

 以上の考察が正しければ、完璧主義がなぜエターなるのかが実によく分かります。というのも、話を聞けば、自分が作品を完成させる際に重視する点と一致しないからです。つまり、行動原理やモチベーションの持ち方が異なるということです。詳しく説明してみます。

 完璧主義が数々のエターナル要因を網羅するため、その対策も広く網羅したものになります。くしくも、完璧主義者に限らない多数のエターナラーに適用できるものになりましたので、皆様ご参考にください。

エターならないために!

 というわけで、僕が実践している方法を中心にエターナル対策を紹介していきます。意識してやっているものもあれば、自然とやっていたものもあります。ここでは制作意識の持ち方といった内容が中心になりますが、過去には具体的な制作技術を書いています。よろしければ、こちらもご参考にどうぞ。
 →作品を完成させる!

 まず、モチベーションの持ち方ですが、僕は「下手から上手になっていく過程」が大好きなのです。人に見せるかどうかはともかく、途中の下手な成果物も記念碑として残しておきます。自分の成長が形として残るなんて最高です。
 ドット絵をやったり、作曲をやったりとそれまで経験の薄かった分野にチャレンジするのも、この性質から来ています。できなかったことを努力して、できるようにするのが楽しいのです。だから、最初は下手でも気にしません。というか、下手じゃないと上達が実感できないので物足りません。
 黒歴史RPGのリンクを貼っているのは、上達を実感できる記念碑だからでもあります。努力したらこんなに伸びるんだぞと。もっとも、あれだって何年か経験を積んだからこそできた作品ではありますが。
 というように自分の努力や成長を楽しみ、モチベーションとすることが第一です。ただし、色々と挑戦することまではそんなにお勧めしません。どちらかというとエターナル要因なので、好きな分野に絞って、後はフリー素材の活用等をお勧めします。

 作品への時間のかけ方だけみると、僕も完璧主義っぽく見えるかもしれませんし、実際一種の完璧主義かもしれません。ただし、過去に20以上の作品(ゴミのような短編含む)を完成させた上でやっています。これぐらいやらないと過去作品を越えられないというだけで、実際には少しづつ階段を登ってきています。
 最初の頃に作った作品は出来が悪くて、本当に見せるに忍びないという感じになるかもしれませんが、その場合は無理して公開する必要もありません。身内向けのバカゲーを作って内輪に見せるだけでも全然OKです。とにかく気楽に完成させてみるといいでしょう。

 思えば、今の時代はプロ顔負けのフリゲが出回っていたりするので、比較して気後れしてしまうというのはあるかもしれませんね。「努力しても、こんな凄い作品に勝てるのか……? 自分の作品に価値があるのか……?」と不安になるかもしれません。昔はそんな比較対象はありませんでしたから。
 ですが、そんな比較は疲れるだけです。見習うのはよいですが、仮想ライバルとするのは早すぎます。気にせず気楽に楽しみながら作っていればよいのです。その内、何作か完成させてみたら「おっ!」と思える作品ができあがります。自分なりの味みたいなものも出てくるので「他の作品にはない価値」を見出だせるようになってきます。
 そうして、自信ができたなら、初めて仮想ライバルを持つとよいかもしれません。おすすめは「自分よりちょっと上の人」です。時折、アマチュア評論家が出来の悪い市販ゲームに対して「こんなの俺でも作れる!」と豪語してたりしますが、そういう意識も悪くありません。「船頭多くして船山に上る」なんていう言葉もあって、アマチュアが大規模開発のプロより面白いものを作ることは珍しくありません。

 話を戻して意識の持ち方です。僕の場合、目的意識なく物事を続けないように普段から心がけています。重要度が低いことは完璧を目指しません。得るものがないと判断すれば、スパッと見切りをつけて効率よくやりたいことに時間を注ぎます。本当に向上心があって完璧を目指すならば、こちらのほうがよっぽど理にかなっていると思ってます。
 もちろん、仕事は忙しくなければ真っ先に定時退社。お陰様でリアルでドライ&クールな人扱いですよ……。睡眠だって、きっちり取ります。自分に負担をかけるようなやり方はどうせ長続きしませんので。

 そして行動原理。本音を言うと「人の期待に応える」なんて意識は最初から大して持っちゃいません。基本的には「自分がやりたいことをやる」というのが第一です。人に見せるのはあくまで第二です。快適性を重視するのは他者への配慮よりも、自分がプレイヤーとして快適にやりたいからです。
 そんな考え方で良いのかというと、良いのです。自分が楽しめる作品を作れば、人が楽しめる作品も自然とできあがるもの。Win-Winの関係というやつですね。感性が合わない人ももちろんいますが、世の中には色んな人がいるのだから、気にしてもきりがありません。

 てな感じで、完璧主義が原因で作品を完成できない、という人は意識を変えてみるとよいかもしれません。このタイプは努力家という最高の才能を持っているわりに、それが空回りしてしまう。結果、高い理想と現実のギャップに苦しむという損な人が多そうです。
 ですが、それだけに柔軟性を手に入れて、作品を完成させることを積み重ねていけば相当良い線いけるんじゃないかと思います。

 そして、完璧主義の方はネガティブなスパイラルに陥りやすいとのこと。挫折が続くと「自分には才能がない。努力したって無駄だ」なんて思考の落とし穴に陥りがちです。
 しかし、才能ってものは『有』か『無』かのようなそんな単純なものではありません。僕も色んな作品をやってきましたが「この作者は才能がない。努力したって無駄だ」なんて思ったことは一度足りともありません。
 もちろん、つまらない作品もありますが、その場合もつまらない理由があります。大抵は「物語が平坦」「テンポが悪い」「システムが無駄に複雑」みたいに明確です。理由があるということは改善できるということです。

 ロクに努力したことがない人間ほど「才能がない人間は努力したって無駄だ」みたいなことを安直に言いますが、気にすることはありません。努力したことがない人間には「努力したら人間は伸びる」という当たり前のことが理解できないのです。
 僕は努力厨なので「自分が努力することで伸びた」ということをはっきりと把握しています。でもって、分析厨なので人の作品を見ると、改善できる点がワラワラ浮かんできます。もし、改善できる点が浮かばないとしたら、それは本当に完璧なので僕には指摘できないというだけです。
 改善できる余地があるということは、努力する余地もあるということ。「努力したって無駄」なんて結論にはなりません。逆に言えば、本当の意味で才能がないといえるのは「努力しない」「学ばない」「挑戦しない」人達です。

 もっとも「努力したら夢が叶うのか?」といったことまでは保証できません。保証できるのは「努力したら夢に近づく」ということまでです。
 ですが、そもそも『叶う』『叶わない』という二者択一自体が柔軟性を欠いた完璧主義思考といえます。その夢は本当に100%叶えなければ駄目なのでしょうか。1%でも叶えたならば、0%よりはマシだと思いませんか?
 例えば、漫画家になりたいという夢だと……

  1. 有名誌に連載して大ヒット。億万長者。
  2. マイナー誌で連載して小ヒット。生活できる程度の給与をもらう。
  3. 副業として同人誌を出して小遣い稼ぎ。
  4. 趣味としてWeb上に無料公開して、ちょっとした人気を得る。
  5. 身内に見せてウケを取る。

 というように色々とあります。『1』を達成しなければ意味がない、なんて理由はあるでしょうか? 『3』でも達成できたならば儲けものですし、その後で『1』や『2』を狙うことも十分可能です。『1』じゃなければ駄目だというならば、そもそも漫画を描くこと自体がさして好きでないのでは、となりますよね。
 『4』や『5』では利益がないから意味がないという人もいるかもしれません。でも、せっかく空いた時間があるなら、好きなことに時間を使いたくありませんか? 特に「仕事がつまらない」なんて人は何もしなかったら「人生がつまらない」にまっしぐらです。


 以上。……こんなに頑張って記事を書いたのは久しぶりです。期せずして「人はなぜエターなるのか?」という永遠の命題にかなり迫れたような気がしたので、湧き上がるものがありました。内容が長すぎて混沌としているのでこの記事は今後ともちょくちょく整理するかもしれません。
posted by 砂川赳 at 06:00 | RPG制作講座 | このブログの読者になる | 更新情報をチェックする