デジタルゲームが生まれる以前は、ルールに従って対戦相手と競う競技こそがゲームでした。プレイヤーにとってゲームの難しさは、対戦する相手の強さそのものであったのです。デジタルゲームが生まれると、ゲームは対戦から、与えられたステージ(面)を攻略しクエストを達成し、1つの目標を目指す形になりました。
ゲームデザイナーが構築した「面」のことを「レベル」(Level)と言います。レベルが生まれたことにより、ゲームのルール自体を設計する人である「メカニクスデザイナー」と、レベルを構築する人である「レベルデザイナー」にゲームデザインの仕事が細分化されました[1]。
こうしてゲームの難しさは、プランナーが設定した面のパラメータが決定するようになりました。ルールではなく、敵の数、敵のHP、武器の攻撃力、攻撃のパターン、行動AIなど、挑戦するプレイヤーに与える課題としてプランナーが意図的に調整するのです。
フロー理論
「人はなぜゲームをおもしろいと感じるのか」という問題に対し、ハンガリー出身の心理学者Mihaly Csikszentmihalyiが提唱した「フロー理論」が一つの答です。これは人の幸福感について幅広く論じたものですが、ゲームにも応用できることが多くの研究で明らかになっています。
プレイヤーは、持っているスキルレベルに応じた課題を与えられることで上達し、さらにそれに見合った課題を与えられることで流れに乗るように自然にゲームがうまくなって楽しいと感じるのです。この状態を「フロー状態」と言います。
フロー理論によれば、プレイヤーのスキルレベルを超えた難易度の課題を与えると不安に感じます。また、課題の難易度は変わらないのにプレイヤーが上達してしまうと退屈に感じます。いずれもゲームがおもしろいと感じなくなるわけです。
ゲームの難易度は、ゲームをプレイするモチベーションにもつながる重要な要素なのです。
難易度調整の必要性
1970年代後半、アーケードゲームはピンボールからビデオゲームに主役が代わりました。そして1ゲーム100円という高い料金でも多くの人がプレイしていました。ここには一つの問題がありました。
ピンボールなどは上手な人が長い時間遊べるにしても、弾き返せない位置にボールが来てしまうことがあるため、ある程度の時間で必ずゲームオーバーになります。しかし、レベルデザインされたビデオゲームでは、攻略法が発見されるとうまい人は時間無制限にプレイできる状況が生まれました。
ゲームセンター黄金期と言われる1980年代前半は24時間営業が可能で、ヌシのようなプレイヤーがゲームを占拠して長時間プレイしていました。拙作の『ゼビウス』(注2)も、ある程度難易度が上がるとその後は繰り返しとなっていました。『ゼビウス』は6時間でカンスト[3]し、プログラムが暴走してゲームがリセットしてしまうのですが、それまで連続プレイできたのです。
1ゲームに6時間もかかると1日の売上は400円、当時1日数万円を売り上げていた『ポールポジション』(注4)と比べると、ゲームデザインによるプレイ時間の短縮は大きな問題でした。レースゲームにはゴールがあるため、プレイ時間は数分に限定されていました。ゲームセンターの売り上げにとっては優等生だったのです。
難易度オプション
ゲームの時間貸しにあたるアーケードゲームに対し、家庭用ゲームは基本的には最初にコンテンツを購入する買い切りになります。ここには「買ったからには途中で諦めないで頑張る」という心理が働きますが、それでも難易度が高いとメーカーに苦情が殺到します。
そこでメーカーが用意したのが「難易度オプション」です。ゲームを始める際に「イージー」「ノーマル」「ハード」などから難易度が選べるしくみです。これは良い手法ですが、いくつかの問題があります。
イージーでも難しいと感じる人には対応できない
ゲームを作るときに注意すべきこととして、プレイヤーは作り手が想像するよりはるかに下手な人もいることが挙げられます。
レベルデザインの際に、「プレイヤーが上手になって」突破できるに違いない課題を初心者向けに設定してはいけません。下手な人ほどプレイを繰り返すことがありませんし、どんなに繰り返しても下手なままというプレイヤーは存在します。
難易度によってゲーム体験に差ができる
難易度の調整方法が単にパラメータの調整にとどまればよいのですが、敵の数や行動アルゴリズムの変更にまで及ぶと、イージーとノーマルでは違うゲームをプレイしていることになり、ゲーム体験に差ができてしまいます。
難易度バイパス
プレイヤーのスキルレベルに合わない面を回避するために、いろいろなバイパス手法もあります。
ミスバイパス
アクションゲームなどでミスした際に難易度を一時的に低くする方法です。たとえばミスしてもゲームが続く場合、残機は減るが一定時間無敵になる仕様、ミスすると面がリスタートされる場合、ミスの原因となったギミックや敵が出現しない仕様などがそれです。
無理なく自然な流れなのですが、ノーミスでクリアした場合とゲーム体験が異なるという問題があります。
コンティニュー
ゲームを途中からリスタートする方法です。ゲーム体験が変わることもなく、ノーコンティニューでクリアすれば自慢できるため良い方法と言えます。
問題は難易度自体が変わっているわけではないことです。コンティニュー回数に制限を付けるなどをやりがちですが、それでは難易度調整にはなりません。また、時間をおいてプレイした場合は最初からやり直しになるため、すでにクリアした面をスキップする機能もあるとよいです。
コース分岐やワープ
難易度が低すぎる場合、通常ではない操作を行ったり隠しコースを進むことにより、次の面ではなくより難易度の高い面に誘導する方法です。筆者が開発したゲームでは『カイの冒険』(注5)に実装されており、あらためてプレイする際にも手早く好きな面まで進めるので好評でした。
問題は、先の面にワープしたものの、その面の難易度が高すぎてプレイできない場合でも戻れない点です。もう1回やり直すのが楽なら問題にもならないんですが。
面セレクト
プレイヤーに自分が好きな面を自由に選ばせる方法です。難易度が自分で決められるのでプレイヤーに責任が転嫁された形ですが、ここにも問題があります。
まずはどの面がどのくらいの難易度なのかがわからないことと、この方法でゲームをクリアしても達成感が低く、良いゲーム体験にはなりにくいことです。
さらに、すでにクリアした面しか選択できない方式が多く、結局はボトルネックとなる面で詰まると先に進めない不具合があります。
動的難易度調整
最近ではFPS(First Person Shooter)などを中心に動的難易度調整(DDA:Dynamic Difficulty Adjustment)を実装しているゲームが増えています。プレイ内容からプレイヤーのスキルレベルをコンピュータが判別して、それに合わせて難易度をゲーム中に自動的に調整する方法です。リアルタイムにプレイヤーの状況を判断して対応できるため、常にフロー状態の範囲に難易度を抑えられる可能性はあります。
考え方は新しいものではなく、筆者も『ゼビウス』で簡単なDDAを実装していますが、DDAにも実はいろいろな問題があります。
気付くと不愉快
プレイ中にDDAが難易度を調整したとプレイヤーが気付くと、「殺しにかかってきたよ」とか「舐められているな」とか、コンピュータに何かされていることに不愉快さを感じます。
アルゴリズムが特定される
DDAはプログラムなので、そのアルゴリズムはプロのソフトウェアエンジニアやマニアが解析してしまいます。彼らにとってはパズルのようなもので、アルゴリズムの特定もゲーム攻略の一部だからです。こうした解析は現在ではWikiで共有され、特定されしだい誰もが知ることができる情報になります。
そしてプレイヤーの中には「効率厨」という人種がいます。彼らはDDAの動作を逆手に取って、難易度が上がらず高得点が可能なプレイスタイルを作り出します。これもまたネットで共有されるので、誰もがパターンとして利用することになります。こうなっては、DDAの本来の意味は失われますね。
自己主体感
ゲームのおもしろさを決める重要な要素として、今一番筆者が注目し研究しているのが「自己主体感」(sense of agency)です。自分が意思決定をしている感覚が自己主体感であり、操作に対して結果が予測されるイメージの範囲内であれば自己主体感は維持されます。しかしドライブゲームでブレーキをかけても車が減速しないなど、操作に対して著しくイメージと異なる結果となる場合、自分が操作しているように思えなくなる──つまり自己主体感が失われるのです。
DDAの問題点であるプレイ中に難易度変更されて感じる不愉快も、自己主体感が損なわれることが原因です。CPUの自動操作はプレイヤーの意思と関係なく行われるので、ゲームをプレイしているのではなくプレイさせられているように感じるわけです。
これは料理の味付けを好みに合わせるような方法で解消できます。プレイヤー自身が難易度の加減を「もう少し難しめに」とか「もっと簡単に」とか選択できるチャンスを与えるのです。その結果としてCPUが難易度の操作を行うのであれば、イメージとの違いが多少あったとしても自己主体感は損なわれにくいのです。
難易度は設定を間違えるとせっかくおもしろいゲームを台なしにしてしまいます。これを回避するにはテストプレイを繰り返して調整するのが一番で、そのためにはテストプレイの時間的余裕が持てるよう、まずは早くゲームを完成させることに尽きます。
- 特集1
イミュータブルデータモデルで始める
実践データモデリング
業務の複雑さをシンプルに表現!
- 特集2
いまはじめるFlutter
iOS/Android両対応アプリを開発してみよう
- 特集3
作って学ぶWeb3
ブロックチェーン、スマートコントラクト、NFT