レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
おちゃめくらぶ掲示板
-
面白いゲームを作るためには
先月北米でも発売されネット上でも盛り上がりを見せているプチコンだけどその腕試しの場
として今月から来月にかけてプチコンコンテストが2つ開催されるにょ。
1つは8月3日に書いたようにスマイルブーム主催の公式企画である「プチコン大喜利」(9/30
締め切り)で、もう1つはユーザー(バイカウントメルビル氏)主催の非公式のプチコン
コンテストにょ。(9/9〜9/15開催)
非公式プチコンコンテストはおちゃめくらぶのトップページの方からリンクを張っているにょ。
すでに作っている自信作で参加してもいいけどまだ1ヶ月あるためこれから作り始めると
いう人もいるかもしれないにょ。
そういう人には手前みそながら私が書いた講座をオススメしたいにょ。
ポケコンゲーム制作講座
http://ww5.tiki.ne.jp/~ochame/E500/LECTURE/lecture.htm
プチコンゲーム制作講座
http://ww5.tiki.ne.jp/~ochame/petitcom/lecture.htm
「ゲームプログラミング講座」ではなく「ゲーム制作講座」となっているのはゲーム制作に
おいてプログラミング以外の要素が重要になってくるからにょ。
それが今回書こうとしている「面白いゲームを作るための要素」にも繋がってくるにょ。
上記の講座をすべて読んでいる人にとっては今回書くことは特に目新しい部分はないと思う
けどそういう奇特な人はほとんど居ないと思われるため基本的に上記の講座を読んでいない
ということを前提にして書いていくことにするにょ。
面白いゲームを作るための必須条件は何かというと面白いと感じる部分を挙げられるか否か
ということにょ。
例えば「どのようなゲームが面白いか?」という問いに対して「スーパマリオ」とかいう
具体的なゲーム名を挙げることしかできない場合は面白いゲームを作ることは難しいにょ。
具体的なゲーム名しか挙げられない場合はそのゲームのクローン(プチコン移植)を作る
以外に選択の余地がないためにょ。
それだとコンテストに応募はできないにょ。(とはいえ、市販ゲームや良作の個人制作
ゲームのクローンを作るというのもかなりの技術が要求されるためクローンを作るという
のも技術向上を行うにはかなり有用な方法ともいえる)
面白さを構成する要素としてまずは広く使われているような分類方法を書いてみることに
するにょ。(人によっては下記の4つではなくて5つだったり、6つだったりする場合もある
けど全体的な内容はそれほど大きくは変わらないと思う)
◎アクション系ゲームの場合の分類
(1) ゲームのアイデア(ゲームシステム)
(2) 演出(グラフィック、音楽)
(3) 操作性と操作感
(4) ゲームバランス
(1)スーパーマリオの場合だとさらわれたピーチ姫を助けるために横スクロールするマップを
ジャンプしながらクリアし、個性豊かな敵キャラを倒したりコインを集めたりといった感じ
のものにょ。
(2)グラフィック面では見た目の面でも個性豊かな敵キャラとゲームにマッチした音楽が
盛り上げてくれるにょ。(残り時間が少なくなるとテンポがアップするというのも
ゲームのプレイを盛り上げてくれる)
(3)Aボタンでジャンプ、Bボタンで加速、十字ボタンで左右移動というのがスーパーマリオに
おける操作だけどボタン操作のやりやすさを示すのが操作性であり、それが上手く画面上に
反映されるかが操作感に繋がっているにょ。(ここでは操作性と操作感は別のものとして
考える)
(4)ゲームの難易度バランスを示すことが多いけどそれだけではなく様々な要素が含まれて
いるにょ。(具体例は下記参照)
あとこれはアクション系のゲームを前提に考えた分類方法であるためRPGやアドベンチャー
ゲームだとシナリオや謎解きといった要素も重要になってくるにょ。
もっとも、スーパーマリオに謎解き要素がないなんてことはなくジャンプ台をどうやって
生かすのかということを考えたり、3から導入されたスイッチによる謎解きなどもあるため
アドベンチャーゲームよりは謎解き要素が低いというだけのことにょ。(あえて別途分類
してないけど強引にまとめるとすればマリオの謎解きは(1)に含めることになる)
では、上記の「スーパーマリオが面白い」と答えた人にスーパーマリオのどこが面白いか
という質問をした際に例えば「横スクロールするステージをジャンプしながらクリアしつつ
敵を倒すのが面白い」と答えた場合には具体的な要素が出ているのでこれで問題ないかと
いうとそうでもないにょ。
さらに一歩進んで「それがなぜ面白いのか」というのが答えられることでようやく意味の
ある回答になってくるにょ。
スクロール1つをとっても強制スクロール面以外はキャラが左へ動く際にスクロールして
いるにょ。(上記分類(1))
しかも、一定の範囲内においては画面は固定されスクロールは行われないにょ。
つまり、キャラの動きの自由度が高くなおかつ自然にスクロールが行われているという
ことになるにょ。
問題となるのはスクロールの速度だけどこれはキャラの移動速度に依存しており、それに
よってジャンプの飛距離にも影響を与えているにょ。
これは簡単に言えばボタンの組み合わせで自由自在にジャンプできるということにょ。
マリオのジャンプはAボタンだけで行えるけどBボタンの加速が重要な場面も多くあるため
それが簡単に使える必要性があるにょ。
その際はA、Bボタンの同時押しが求められるけどA、Bボタンの割り当てが逆だったら
加速をするためには一端コントローラを持ち変える(指の位置を変える)必要があるし
そうしないためには常に押しにくい位置で押してジャンプをする必要があるにょ。
このようにごく単純なボタン配置がマリオの面白さの1つを握っているといっても過言
ではなくなるというわけにょ。(上記分類(3))
マリオのジャンプは操作性が優れているだけではなく操作感も優れているにょ。
端的にいえばスムーズに移動や加速ができ、スムーズにジャンプができるということにょ。
これは移動とジャンプの計算式が優れているということにょ。
マリオの場合はジャンプには放物運動ではなくベルレ積分が用いられている模様にょ。
移動量のパラメータを別途用意してそれを元に次に表示する座標を計算しているのではなく
前回の座標を保存しておいてそれを元に次の座標を計算しているにょ。
これはメモリと処理速度の制約があった(放物運動を計算する場合には小数点が発生したり
乗算が必要になる場合があるためアセンブラでは扱いづらいというだけではなく当たり判定も
複雑になってしまう)ためこのような方法を用いていると思われるけどそれによって面白さが
増しているといえるにょ。
この優れた操作感を生んでいる計算式を作り出すためには上記分類(4)のゲームバランスの
調整が重要になってくるにょ。
マリオで敵を倒した場合に特徴的なのは最初の1体目は100点だけど連続して倒して行けば
100点→200点→400点→(省略)→1UPとスコアがどんどん増えていくことにょ。
連続で倒すというのは1体ごと倒すよりも難しい場合が多いためこれは「難しいプレイを
すれば高得点を得られる」と言い換えることができるにょ。
つまり、このリスクとリターンの関係が面白さにおいて重要になってくるというわけにょ。
それも上記分類(4)のゲームバランスに分類されるにょ。
このように「スーパーマリオが面白い」という場合に「横スクロールするステージを
ジャンプしながら敵を倒すのが面白い」といってもそれは「どこが面白いのか」「どうして
面白いのか」という理由がちゃんとあることが分かると思うにょ。
こういった具体的なレベルまで面白さの理由が分かることでようやく面白いゲームを作る
ことが可能になるにょ。(横スクロールジャンプアクションゲームを作ればスーパーマリオ
と同レベルの面白さになるというわけではないのはこの理由を見れば明らかになる)
これはプチコン講座第1回でゲーム作りには具体的なイメージが求められると書いたのを
見てもらえたら分かると思うにょ。
このような面白い要素が具体的に分かっているならばそれを組み合わせたらさらに面白い
ものができるかというとそういう単純なものではないにょ。
「1+1が2になる」どころか「1+1が3にも4にもなる場合がある」という反面で「1+1が
0になる」という場合もあるためにょ。
つまり、面白い要素が打ち消し合って面白くなくなるということにょ。
それが起きてしまう理由は元のゲームの面白さにおいてその要素に最適化されたバランス
調整が行われているのに対して複数の要素を組み合わせた場合にはそれが十分に行われて
いない場合が多いためにょ。
それは様々な要素を加えることでバランス調整が困難になるということが理由になっている
ためと言うこともできるにょ。
またゲームにおいて「面白い要素」があるのと同時に「面白くない要素」というのも存在して
いるにょ。
具体的なタイトル名は挙げないけどアクション系のゲームだと下記のようなものがあるにょ。
(A)プレイヤーがミスの理由に納得できない
(B)初プレイ時に面白さを感じられない
(C)向上心を刺激されない
(D)繰り返しプレイする気になれない
(A)自キャラの当たり判定が思ったよりも大きくてプレイヤーはミスをしたと実感がないのに
ミス扱いになってしまったり、ランダムに登場する敵キャラや障害物によって回避不能な
状態に陥りミスとなってしまうなどが主なものにょ。
(B)特殊なルール、特殊な操作性(もしくは難しい操作)を要求するゲームにおいては簡単な
ゲームであっても初プレイ時の難易度はかなり高めになってしまうにょ。
初プレイ時(もしくは数回プレイした後)にそのゲームの面白さをプレイヤーに伝えることが
できなければそのプレイヤーにとっては面白くないゲームとなってしまうにょ。
(C)あまりに簡単にクリアできるゲーム、クリアが運だけで決まってしまうゲームや
そのゲームを繰り返しプレイしても上達が実感できないようなゲームでは「そのゲームを
上手くなろう」という気は起きず面白くないゲームと感じてしまうことになるにょ。
(D)クリアが難しいのにコンティニューもなく最初からやり直しだったり、毎回タイトル
画面に戻されるのにそこからの演出やロードが長い(スキップできない)というのがあれば
ゲームそのものが面白くても繰り返しプレイする気が起きずにプレイヤーにとっては
面白くないという認識が生まれてしまうにょ。
(A)〜(C)が分類(4)のバランス面、(D)は主に分類(1)のシステム面に相当するにょ。
これはいくらでも改善可能なものであり、下記のようにして改善ができるにょ。
◎上記(A)〜(D)の改善策
(A)敵キャラとの当たり判定は見た目よりも小さくし、ジャンプアクションゲームならば
地面との当たり判定は大きくすればいいにょ。(1ドットでも地面に乗っていればセーフ
となるようにする)
ランダムに出現する敵キャラや障害物もプレイヤーの座標や移動速度を考慮してミスは
プレイヤー自身の責任だと分かるようにすればいいにょ。
(B)ステージクリア制のゲームならば1面は思い切って簡単にしてみるというのは有用な方法
といえるにょ。
ただ、簡単にするだけではなくそのゲームにおいて面白さとなっているものを鏤めておき
さらに操作に慣れるようなチュートリアル要素を含むとなればステージを作るのは簡単では
ないにょ。
ステージクリア制ではなく徐々に難しくなっていくタイプのゲームでは最初をかなり簡単に
してしまうと開始からしばらくの間は簡単すぎて上手いプレイヤーやプレイを繰り返して
上達したプレイヤーにとっては退屈なゲームになってしまうにょ。
そのため難易度向上の割合を調整したり、プレイヤーが退屈にならないための仕掛けを用意
したりといった工夫が必要になるにょ。
(C)これは端的にいえばプレイヤースキルの向上がゲームに反映されるかということにょ。
簡単に導入可能なのはタイムアタックやスコアアタックという要素だけどこれもスキル
向上が反映されたものになっているかが重要になってくるにょ。
また簡単にクリアが出来るというゲームもやり込み要素を入れておくことで面白く
できるにょ。
ただし、やり込み要素を入れてもそれに気が付かなければ意味がないので「できそうで
なかなかできない」「できたときのリターンが大きい」などが必要になってくるにょ。
ステージ生成や敵キャラ配置がランダムの場合はこういったやり込み要素を導入するのは
極めて困難なのでクリアが運任せになってないかという点だけは注意しておく必要が
あるにょ。(ランダム性のある不確定要素の導入はゲームにおいて飽きさせないためには
重要な役割を占めているためランダムだからだめというわけではない)
(D)クリアが難しいならば難易度調整機能を付けるというのも1つの改善策になるにょ。
しかし、その場合でも何度もチャレンジするであろう序盤のステージにおいてはどんどん
スキルが上がり簡単に感じるようになるのに対してゲームオーバーになったステージは
クリアに挑戦するチャンスの数そのものが少なくなるため難易度調整で完全にカバーが
できるというわけではないにょ。
難しければ難しいほどクリアしたときの達成感は大きいけど個人のスキルの差もあるし
達成感が序盤の退屈さを埋めるだけのものにするというのは簡単ではないにょ。
やはり、コンティニュー機能やステージセレクト機能を搭載する方が遙かに簡単にょ。
あとスタートしてから開始までに時間がかかるとかいう場合は時間のかかる処理は初回時
以外は行わないようにするとか長いデモはスキップ出来るようにするとかいう方法で
解決できるにょ。
(A)〜(D)の問題は十分なテストプレイをしていれば避けることが可能になるけど制作者
自身がテストプレイをしている場合はゲームバランスの調整は簡単ではなくなるにょ。
というのも、制作者はそのゲームがどのようなものか分かっているだけではなくテスト
プレイを積み重ねることでそのゲームに慣れてしまい難易度の客観的な判断が難しくなって
しまうためにょ。
交友関係が広く時間にある程度ゆとりがあればなるべく他人(家族や友人を含めた自分
以外の人という意味)にテストプレイをしてもらうのが一番だけどそれが難しいという
場合も少なくないと思うにょ。
どうしても自分一人でゲームバランスの調整をする必要があるという場合にはまずは自分の
ゲームスキルを理解しておくということが必要となるにょ。
例えばシューティングが得意な人がシューティングゲームを作る場合には自分にとって
難しいゲームだと普通に人には難しすぎてプレイできないレベルになってしまうため
自分にとってはやや易しめくらいに調整すればいいし、シューティングゲームが不得意と
いう人ならば自分にとって難しいくらいが普通の人にはちょうどいいということが言える
わけにょ。
ただし、これもランダム要素などによって理不尽なものになってないことが必要不可欠と
いえるにょ。
このようにバランス調整の重要性は理解できたのではないかと思うにょ。
私の考えを書くとゲームが一通り完成するまでにかかった合計の時間よりもバランス調整の
方により多くの時間を割くべきだと思うにょ。
個人的には全体の7割くらいでちょうどいい感じにょ。(普通に動くまで3時間でできた
ゲームならば7時間のバランス調整を行うということ)
あまり参考にはならないけど私が作っている1画面プログラムの場合はゲームそのものは
1時間程度で作っているけど完成までに20〜30時間費やしているものもあるにょ。
これは1画面化を行うというパズルを解く時間が多くかかっているせいだけど1画面だから
といってゲームバランスを妥協していないという点が多くの時間がかかっている理由に
なっているにょ。
以上のことをまとめると要するに作ろうとしているゲームにおける面白い要素は何かを
明確に理解してそれがちゃんと面白くなるようにバランス調整して、面白くない要素
(面白さの面ではボトルネックになっている要素)を無くせば面白くなるという極めて
単純なものにょ。(せっかくのいいアイデアを生かせてないゲームも多い)
これは難しいものではなくゲームプレイの経験さえあれば時間をかけることで誰もが
簡単に行えることであり、端的に言えば「誰でも計算によって面白いゲームを作ることが
可能になる」ということにょ。
とはいえ、スキル不足によって実現が難しい(明確なイメージがあるにもかかわらず思った
物が作れない)という場合もあるためそれなりにはプログラミングテクニックが必要に
なるのは否めないにょ。
あと時間をかければ面白いゲームが作れるとはいえコンスタントに80点以上とれるような
レベル(合格レベルの面白さ)であり、100点のレベル(絶賛されるような面白さ)の
ゲームを作るのは極めて困難にょ。
というのも既存のゲームの面白い部分を寄せ集めるだけでは既存のゲームを越えることは
できないためにょ。
そのためゲームという枠だけで考えず新しいアイデアや発想のゲームが求められるにょ。
これは日頃からの蓄積(様々なものに触れてゲームのアイデアとして生かせないかと
考えるのを習慣づける)がないと困難にょ。(シンプルなゲームにおいてはたまたま偶然
面白いものが出来るということはあるけどそれを狙って行うためには下地がない限りは
不可能といえる)
長々と書いたけど具体的にどうするのかというのはゲームによって様々異なるので上記の
講座のようにターゲット(作るゲーム)を絞らないと具体的に記すのは無理にょ。
したがって、興味がある人は拙作のプチコン講座を読んで見ることをオススメしたいにょ。
ポケコン講座の方も知識編と初級編の第1回は機種依存しないように書いているため
ポケコンを持ってないプチコンユーザーが読んでも参考になる部分は多いのではないかと
思われるにょ。
私もそろそろコンテストに向けて何か作り始めないといけないのだけど並のアイデアでは
大賞はとても狙うことができないのでなかなか厳しいにょ。
|
|
|
掲示板管理者へ連絡
無料レンタル掲示板