0
IGDA日本 SIG-INDIE 第6回セミナー


「実体験に基づく、少人数制作による
  シューティングゲームの提案」
           とある親父
         (HALTsoftware)
        http://tauo...
本日の内容
依頼された内容
80年代から見えていたシューティングゲームの可能性

今日話すこと
 90年代前後のシューティングゲーム製作環境
 ゲームを作ろうとしていて作れない方へ向けて
当時の環境とそれに対応するアイデア
80年代
コンピューターが個人が使用するに現実的な値段になった


実行速度が遅い
(CPUが遅い、BASICインタープリタの処理が遅い)


画面上でいくつかのキャラクターを動かしただけでフレーム落ち、
以...
当時の環境とそれに対応するアイデア
                   何千円も出して資料を購入
ツールや情報も少な過ぎる       雑誌を見て打ち込む
                   自分で作る



       ゲーム開発の敷居...
最初の問題
    BASICでシューティングゲームを作ろうとした

   少なくても自機、敵機、弾の3キャラクターが必要(当然)
   かつ3者が完全に同期して動く




3者が等速?→ゲーム性がない   弾だけが倍速→処理が肥大

 ...
ゲームアイデアで解決しよう!
           (例) バルーンボンバー(TAITO,1980)

    敵の攻撃で地面に穴が開きそれによりこちらの移動範囲が狭くなる
    例えば、地面に到達した敵弾がこちらに転がって来る。
+

  ...
初心者ゲーム製作の心得
• ゲームとしての面白さを求める為にハードのスペッ
  クや開発環境の溝を埋めるには、いくつかのアイ
  デアで足りることが多いはずです

• 自分達の技術レベルにあわせての制作と、たとえ
  それが低かった場合において...
私のサークルの開発動機
• アマチュア制作ソフトのレベルは一部のレベルを除くと、
  BASICで簡単
• 製作者にすれば簡単ではないのかもしれませんが・・・に
  作られたものが大半
• それらがコミケなどで、1000円に近い値段などで売られ...
1988年夏コミケ
   自分の目が行き届いた環境で制作する為には
   個人でツールからDOSからサウンドドライバーからそろえる
   ことが必要
   それより少し前の頃、ほとんどの同人ソフトにはまともな
   BGMがなかった


   ...
REVOLTER
サークル:知人がネットで仲間を集めて制作
      (自分はネームエントリー部だけ担当)

REVOLTER 紹介ページ
 http://www2u.biglobe.ne.jp/~SHILFYYO/HOMEPAGE/egg/...
私の製作経験から初心者に言えること
           個人サークル
   様々なデータ作成に時間を取られるわけにはいかない


 データが作れないのでゲーム作成に入れないと思っている方
は居ませんか? 絵が描けない?そんなもの漢字でも四角...
私の製作経験から初心者に言えること
           個人サークル
   様々なデータ作成に時間を取られるわけにはいかない


①自分達に合った、例え小粒な内容のものでも作り上げる
②もし時間が余ったのなら、作りこむなり調整するなりすれば良...
シューティングゲームの作成のコツ
敵の配置など面データ
飛行物
 決まったパターンの編隊が決まったタイミングで来る
    (グラディウスなど)

 敵の順番は決まっているが出現位置や行動が
 乱数で幅を持ち、固有のアルゴリズムで来る
    ...
ゼビウスを参考にガンクライシス
ゼビウス
 飛行する敵が13種類、地上の敵が9種類× 出現テーブル
 「プレイヤーがどれくらいの腕か」というのを判断して出てくる。
 敵が強くなる強いと思った相手には強い敵が、 弱いと思った相
 手には弱い敵が出...
ゼビウスのAI
遠藤雅伸氏 あと面白い機能なんですけれど、 ゼビウスには非常
に簡単なAIが組み込まれています。「プレイヤーがどれくらいの腕
か」というのを判断して、 出てくる敵が強くなるんです。

強いと思った相手には強い敵が出てきて、 弱い...
ガンクライシス
• 全ての敵キャラのサイズは3×3に固定
           (処理速度向上のため)
• それ以上のサイズは3×3の本体部と、それと同サイズの周辺部




本体の下方向に多目に配置し、それぞれに耐久度を持たせること
でボス全...
ガンクライシス
制限の上で成り立つゲームデザインもある。
むしろ、何でも出来る状況でのデザインは難しい


何かの制限があるのなら、それを生かす内容を考えてみよう!




   きっと新しい何かが生まれてくる!
少ないデータで多様な敵を作る②
敵には何種類もあって、攻撃方法や行動が異なる


 プレイヤーと同性能のキャラクターを用いた対戦ゲーム

          (例)ストリートファイターIIなど


ものすごい強い敵というのは作りやすい

問題は...
一作目のJALECK
   上下で障害物の間をぬってレーザーを撃ち合うゲーム
レジャック社が発表したスペースウォー
  撃たないとレーザーのエネルギーが貯まる。
  貯まったエネルギー量によりレーザーの射程が決まる(全消費)
  攻撃した...
JALECK思考ルーチン
移動系:右移動、停止、左移動
行動系:レーザー、バリヤー、溜める

   これらを組み合わせてAIを考えるか?
     (作成、デバッグ、調整に手間)




   実際は移動と行動を独立に思考して決定
JALECK思考パラメーター
1:    逃げるべき敵弾のスキャン範囲、横方向
2:    逃げるべき敵弾のスキャン範囲、縦方向
3:    逃げるべきエネルギー残量
4:    バリヤー用敵弾のスキャン範囲、横方向
5:    バリヤー用敵弾...
JALECK思考パラメーター
                 2

                 5




             4
     8   1

1:   逃げるべき敵弾のスキャン範囲、横方向
2:   逃げるべき敵弾の...
JALECK思考パラメーター
3:    逃げるべきエネルギー残量
7:    中央戻り開始エネルギー
9:    攻撃を開始するエネルギー差
10:   攻撃を終了するエネルギー差


           AIの思考ルーチンに活用
  全エ...
まとめ
1. 最初は、自分たちの背丈にあったゲームを作っ
 て、まずゲームを完成させることを覚える。

2.小粒なゲームであっても、技術が足りなくても、
 ゲームデザインによって激変させることが出来る。

3. 大きなデータの代わりに、少...
(資料)オリジナルテキスト原稿
講演動機

他の公演される方を見て、自分などでは全然役不足ではないかと思いましたが80年
代後半から90年頭頃の環境についてや、
現在の弾幕が主流となっているシューティングゲームにおいて、
昔存在していた別の可能...
当時の環境とそれに対応するアイデア八十年代になり、高価ではありましたが個人
が使用するのに現実的な値段となったコンピューターではありましたが、
それを用いてゲームを作るには色々な障害がありました。

まず第一に実行速度が遅かったこと。

CPU...
BASICに話を戻しますと、シューティングゲームにおいては、
プレーヤー機と自分の弾と敵機と、最低でも三つのキャラクターが
動的にコントロールされる必要があります。

それらのコントロールルーチンが毎回呼ばれ、
速度からタイミングから完全に同期...
あそれに辟易とし、その他の方法でゲーム性を求める必要が出てきたわけです。
例えばですが、地面に到達した敵弾がこちらに転がってくるというものを作られた
先輩がいました。

その他、敵の攻撃で地面に穴が開きそれによりこちらの移動範囲が狭くなる
と言...
私のサークルの開発動機など上記のような時代であるが為に、
アマチュア制作ソフトのレベルは一部のレベルを除くと、

BASICで簡単・・・製作者にすれば簡単ではないのかもしれませんが・・・に
作られたものが大半で、それらがコミケなどで、1000円...
実際に同人ソフトの先駆者でありHSPの作者でありますONIONさんですら、
BASICでplay命令により音楽を鳴らしておいて、ゲームメイン全てを割り込
みで行うと言う荒業を駆使しているソフトもあります。ですが、私がサークル
初参加となる198...
話を戻します。で、私がゲーム制作をする際に個人で作ることを決めたわけです
が、個人ゆえに、様々なデータ作成に時間を取られるわけにはいかないであろ
うと考えました。

本日来られている方の中にも、データが作れないのでゲーム作成に入れないと
思って...
で、シューティングゲームに必要なデータと言えば、
敵の配置などを含む面データもあります。
それがつくれないという事はそう無いとは思うのですが、
それがなくても成り立つ内容もあります。

例えば飛行物に関してですが、
グラディウスのような編隊を組...
昔の話なのですが、ゼビウスの場合プレイヤーの腕により強い敵が出やすく
なるようになっていると聞きました。

うちのソフトにおいては、プレイヤーが敵機を破壊するたびに出現タイマーを減算し、
次の敵の出現が早まるように作成されています。
そのような...
そのガンクライシスというソフトですが、
今その正常なイメージが無く見せられないのですが、ボスキャラもいます。
・・・と書いた直後に、まさかのイメージ吸出し成功しました。

近日中にイメージがDL出来るようにする予定であります。
もし興味のある方...
で・・・先ほどの話にもありましたが、当時のCPUは遅く、余り複雑で汎用性に富
んだプログラムは速度の低下を招きます。
ですので、全ての敵キャラのサイズは3×3に固定されています。
でも巨大なボスキャラも存在していました。
勘の良い方なら閃くと思...
で、私が手がけたソフトの話ですが、
それらのデータの少なさをふまえた上でゲームの内容を考えてきました。
先ほどお話しましたガンクライシスなどは実は最後期の物で、
発端は画面後部に流れる煙を簡単に表現できそう、という所から始まったネタ
で、制限か...
さて、少ないデータのゲームに戻します。

シューティングと言えば、まずプレイヤー機があって、倒すべき敵もあります。
敵には何種類もあって、攻撃方法や行動が異なります。
そうなれば当然必要なデータが多くなります。
ではそれらを少なく、というか全く...
想像しやすいパターンとしては、各面の最初に出てくる雑魚の編隊がことごとく
こちらの攻撃を避けてしまう、というものがあります。
まぁ大体の人はそれを見た瞬間にコントローラーを放り投げるでしょう。
敵をバリバリと破壊して進み、敵の弾幕をすり抜けてこ...
JALECKというゲームは、コナミの前身という話のレジャック社が発表したス
ペースウオーというゲームが元になっています。
それは上下で障害物の間をぬってレーザーを撃ち合うゲームなのですが、
撃たずに溜まったエネルギーの量によりレーザーの射程が決...
で本作の思考ルーチンの話ですが、
その前に触れていなかった、細かいルールとして、
レーザー同士がぶつかった場合、エネルギー残量の高いプレイヤーのレー
ザーが残ります。まず、お互いが出来る行動をまとめます。

移動系:右移動、停止、左移動
行動系...
・・・とお話してはいるのですが、
実際にパラメーターのみで各キャラクターの個性を出せるかと言えば
そうではありません。

判断基準が異なっていますから、厳密に言えば異なってはいるので
すが、プレイしてもほとんどその違いはわかりません。

もし個...
JALECKの思考パラメーター

先ほど左右に移動と書きましたが、それを言い換えれば近付くか離れるかです。
近づくのは攻撃したいときが主なわけですが、もう一つ大きな条件が存在しま
す。 それは「離れる必要のない時」です。
攻撃と防御とに優先順位...
ここでいくつかのパラメーターが見えてきます。
1:逃げるべき敵弾のスキャン範囲、横方向
2:逃げるべき敵弾のスキャン範囲、縦方向
3:逃げるべきエネルギー残量
この敵弾スキャン範囲と言うものも縦横だけで判定するのではなく、
台形状などが設定でき...
さて、 移動に関してもう一つ重要なものがあります。
バリヤーが使用可能ならば問題はないのですが、画面端に追い詰められると
逃げようとしても逃げられなくなります。
そのためある程度エネルギーが低下すると画面中央方向に移動するように
なっています。...
それ故に、相手のエネルギー残量を確認し、こちらが優位の時に攻撃する
のがより安全度が高いと言うことになります。 ですが、それのみで判断して
しまうと完全な待ちプレイとなり、面白くなるはずがありません。ですので、攻
撃開始は相手よりも高くなかった...
このパラメーターを上手く利用することで、最大エネルギー状態から打ちつくす
まで攻撃し続ける敵もいます。
本作における、数少ない見てわかるCPUの個性です。
と、ソースの確認が出来ない為に記憶で語っていますので間違いがあるかもし
れませんが、 こ...
Upcoming SlideShare
Loading in...5
×

実体験に基づく、少人数制作によるシューティングゲームの提案

1,654

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,654
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "実体験に基づく、少人数制作によるシューティングゲームの提案"

  1. 1. IGDA日本 SIG-INDIE 第6回セミナー 「実体験に基づく、少人数制作による シューティングゲームの提案」 とある親父 (HALTsoftware) http://tauor.hp.infoseek.co.jp/ ※本資料は「とある親父」さんから頂いた講演原稿をもとに、 三宅(IGDA日本SIG-INDIE)が作成したものである。巻末に、 元のテキスト原稿資料を掲載しておく。 2010.2.20
  2. 2. 本日の内容 依頼された内容 80年代から見えていたシューティングゲームの可能性 今日話すこと  90年代前後のシューティングゲーム製作環境  ゲームを作ろうとしていて作れない方へ向けて
  3. 3. 当時の環境とそれに対応するアイデア 80年代 コンピューターが個人が使用するに現実的な値段になった 実行速度が遅い (CPUが遅い、BASICインタープリタの処理が遅い) 画面上でいくつかのキャラクターを動かしただけでフレーム落ち、 以前の問題
  4. 4. 当時の環境とそれに対応するアイデア 何千円も出して資料を購入 ツールや情報も少な過ぎる 雑誌を見て打ち込む 自分で作る ゲーム開発の敷居は高かった BASICという環境はそれを上回るとっつきやすさ グラフィックキャラクターなどを用いた簡単なゲームならば 当時のコンピューター少年ならば、そのほとんどが作成してきた
  5. 5. 最初の問題 BASICでシューティングゲームを作ろうとした  少なくても自機、敵機、弾の3キャラクターが必要(当然)  かつ3者が完全に同期して動く 3者が等速?→ゲーム性がない 弾だけが倍速→処理が肥大 制限された中で、以下にゲーム性を出すか?
  6. 6. ゲームアイデアで解決しよう! (例) バルーンボンバー(TAITO,1980) 敵の攻撃で地面に穴が開きそれによりこちらの移動範囲が狭くなる 例えば、地面に到達した敵弾がこちらに転がって来る。 + これは着弾前に敵弾を打ち落とせば地面に穴が開かない
  7. 7. 初心者ゲーム製作の心得 • ゲームとしての面白さを求める為にハードのスペッ クや開発環境の溝を埋めるには、いくつかのアイ デアで足りることが多いはずです • 自分達の技術レベルにあわせての制作と、たとえ それが低かった場合においても、いくつかのアイ デアを加えることでゲーム性が激変する可能性も ある
  8. 8. 私のサークルの開発動機 • アマチュア制作ソフトのレベルは一部のレベルを除くと、 BASICで簡単 • 製作者にすれば簡単ではないのかもしれませんが・・・に 作られたものが大半 • それらがコミケなどで、1000円に近い値段などで売られて いるのが現状 1987年冬、TRCでのコミケに購入したソフトのほとんどが、 素人ならではの悪い面ばかりが目立つソフトばかりであった 安価でも確実に遊べるソフトを制作して発表しようと 思ったことが同人ソフト制作のきっかけ
  9. 9. 1988年夏コミケ 自分の目が行き届いた環境で制作する為には 個人でツールからDOSからサウンドドライバーからそろえる ことが必要 それより少し前の頃、ほとんどの同人ソフトにはまともな BGMがなかった それはサウンドドライバーが入手できなかった 同人ソフトの先駆者でありHSPの作者でありますONIONさんですら、BASICでplay命令により音楽を 鳴らしておいて、ゲームメイン全てを割り込みで行うと言う荒業を駆使しているソフトも... 素晴らしいBGMを奏でる同人ソフトが登場 その中の一本が「REVOLTER」
  10. 10. REVOLTER サークル:知人がネットで仲間を集めて制作 (自分はネームエントリー部だけ担当) REVOLTER 紹介ページ http://www2u.biglobe.ne.jp/~SHILFYYO/HOMEPAGE/egg/revo/revo.htm 武器:AUTO、3WAY、 4WAY、YWAY など
  11. 11. 私の製作経験から初心者に言えること 個人サークル 様々なデータ作成に時間を取られるわけにはいかない  データが作れないのでゲーム作成に入れないと思っている方 は居ませんか? 絵が描けない?そんなもの漢字でも四角でも良い  とりあえずゲームとして完成させるのであれば、見た目は二の 次でよい 一本でも、最初から最後まで手がけ完成させたという経験は、 何十本の計画倒れのソフトを手がけることとは比較にならないもの
  12. 12. 私の製作経験から初心者に言えること 個人サークル 様々なデータ作成に時間を取られるわけにはいかない ①自分達に合った、例え小粒な内容のものでも作り上げる ②もし時間が余ったのなら、作りこむなり調整するなりすれば良い ③見た目から何からしっかりと作り込まれたゲームは様々な経験を 積んでから造っても遅くはない わかる人には、グラフィックなどが無くともその内容は伝わる!
  13. 13. シューティングゲームの作成のコツ 敵の配置など面データ 飛行物 決まったパターンの編隊が決まったタイミングで来る (グラディウスなど) 敵の順番は決まっているが出現位置や行動が 乱数で幅を持ち、固有のアルゴリズムで来る (ゼビウスなど) (例)出現テーブルは、プレイヤーの難易度により巻き戻る。
  14. 14. ゼビウスを参考にガンクライシス ゼビウス 飛行する敵が13種類、地上の敵が9種類× 出現テーブル 「プレイヤーがどれくらいの腕か」というのを判断して出てくる。 敵が強くなる強いと思った相手には強い敵が、 弱いと思った相 手には弱い敵が出現するプログラム ガンクライシス 面ごとに20種類の敵キャラを配分 雑魚敵11種+ステージ雑魚5種+ボス敵6種 2面なら上から降りてきて破壊されると打ち返すだけの敵 3面なら自分の少し前を狙う堅めの敵 4面なら画面上部で弾をばらまく敵 プレイヤーが敵機を破壊するたびに出現タイマーを減算し、 次の敵の出現が早まるように作成
  15. 15. ゼビウスのAI 遠藤雅伸氏 あと面白い機能なんですけれど、 ゼビウスには非常 に簡単なAIが組み込まれています。「プレイヤーがどれくらいの腕 か」というのを判断して、 出てくる敵が強くなるんです。 強いと思った相手には強い敵が出てきて、 弱いと思った相手には 弱い敵が出てきます。 そういったプログラムが組み込まれています。 ゲームの難易度というのは「初心者には難しくて、上級者には簡単 だ」ということが、 ひとつの難易度で(調整を)やっていくと起きてしま うので、 その辺を何とか改善したいな、ということでそういったことを 始めてみたのですけれど、 お陰で割合にあまり上手くない人でも比 較的長くプレイできる、 うまい人でも最後のほうに行くまで結構ドラ マチックに楽しめる、 そういった感じになっています。 - ゼビウ スセミナー - http://spitfire.client.jp/shooting/xevious2.html
  16. 16. ガンクライシス • 全ての敵キャラのサイズは3×3に固定 (処理速度向上のため) • それ以上のサイズは3×3の本体部と、それと同サイズの周辺部 本体の下方向に多目に配置し、それぞれに耐久度を持たせること でボス全体の耐久度の調整と、徐々に破壊され分解していく演出 も兼ねられるという、一挙両得 周辺部に固有の攻撃手段を持たせることで攻略要素も持たせる ことが出来る
  17. 17. ガンクライシス 制限の上で成り立つゲームデザインもある。 むしろ、何でも出来る状況でのデザインは難しい 何かの制限があるのなら、それを生かす内容を考えてみよう! きっと新しい何かが生まれてくる!
  18. 18. 少ないデータで多様な敵を作る② 敵には何種類もあって、攻撃方法や行動が異なる プレイヤーと同性能のキャラクターを用いた対戦ゲーム (例)ストリートファイターIIなど ものすごい強い敵というのは作りやすい 問題は、プレイヤーが適当に勝てるレベルでないといけない
  19. 19. 一作目のJALECK 上下で障害物の間をぬってレーザーを撃ち合うゲーム レジャック社が発表したスペースウォー 撃たないとレーザーのエネルギーが貯まる。 貯まったエネルギー量によりレーザーの射程が決まる(全消費) 攻撃した瞬間に射程まで到達(速度無限大) レーザー途中にある障害物に当たれば止まる。 何もなかった場合、一瞬で敵に当たる AIはフェイントが効かず、とても強い ジャレック レーザーがそれなりの速度(速度無限大でない) 防御となるバリヤー レーザーエネルギーは少しずつ消費 途中の障害物はあえて破壊不能 レーザー同士がぶつかった場合、エネルギー残量の高いレーザーが残る オリジナルを変形して新しいゲーム性を獲得
  20. 20. JALECK思考ルーチン 移動系:右移動、停止、左移動 行動系:レーザー、バリヤー、溜める これらを組み合わせてAIを考えるか? (作成、デバッグ、調整に手間) 実際は移動と行動を独立に思考して決定
  21. 21. JALECK思考パラメーター 1: 逃げるべき敵弾のスキャン範囲、横方向 2: 逃げるべき敵弾のスキャン範囲、縦方向 3: 逃げるべきエネルギー残量 4: バリヤー用敵弾のスキャン範囲、横方向 5: バリヤー用敵弾のスキャン範囲、縦方向 6: 画面端と見なす範囲、横方向 7: 中央戻り開始エネルギー 8: 攻撃を開始するスキャン範囲、横方向 9: 攻撃を開始するエネルギー差 10: 攻撃を終了するエネルギー差
  22. 22. JALECK思考パラメーター 2 5 4 8 1 1: 逃げるべき敵弾のスキャン範囲、横方向 2: 逃げるべき敵弾のスキャン範囲、縦方向 4: バリヤー用敵弾のスキャン範囲、横方向 5: バリヤー用敵弾のスキャン範囲、縦方向 8: 攻撃を開始するスキャン範囲、横方向
  23. 23. JALECK思考パラメーター 3: 逃げるべきエネルギー残量 7: 中央戻り開始エネルギー 9: 攻撃を開始するエネルギー差 10: 攻撃を終了するエネルギー差 AIの思考ルーチンに活用 全エネルギー 弾を撃つ チャージ チャージ 弾を撃つ 時間
  24. 24. まとめ 1. 最初は、自分たちの背丈にあったゲームを作っ て、まずゲームを完成させることを覚える。 2.小粒なゲームであっても、技術が足りなくても、 ゲームデザインによって激変させることが出来る。 3. 大きなデータの代わりに、少ないデータでも、ア ルゴリズムによって多様性をもたらして膨らませるこ とが出来る。 ご清聴ありがとうございました! まだゲームを完成させたことのない方々に、 少しでもお役に立てば光栄です!
  25. 25. (資料)オリジナルテキスト原稿 講演動機 他の公演される方を見て、自分などでは全然役不足ではないかと思いましたが80年 代後半から90年頭頃の環境についてや、 現在の弾幕が主流となっているシューティングゲームにおいて、 昔存在していた別の可能性について語って欲しいということを、 スタッフの方から伺った為に公演しようと思いました。 私がこれから話す内容は、私が活動をしていました90年前後の話と、 今シューティングを造ろうとしているが造れないでいるようなレベルの方々に対する 内容であります。それらに興味のない方にとりましては退屈な話かも知れません。 でも、アイデアというものは他人の何気ない話の中から生まれることもあるはずです。 私の話がそのような何かの足しになれば幸いです。 で、弾幕タイプのシューティングについてですが、今回の私の話では触れません。 個人的に余り好きではないのですが否定はしません。むしろ美しいとまで思います。 ですが、シューティングと言えば弾幕みたいな風潮に感じられましたので、 自分の少ない経験からそれ以外のものの話をさせて貰おうとおもっております。
  26. 26. 当時の環境とそれに対応するアイデア八十年代になり、高価ではありましたが個人 が使用するのに現実的な値段となったコンピューターではありましたが、 それを用いてゲームを作るには色々な障害がありました。 まず第一に実行速度が遅かったこと。 CPU自体が遅かったと言うのも有りますが、 当時の標準言語であったであろうBASICインタープリタは、とにかく処理が遅く、 画面上でいくつかのキャラクターを動かしただけで、 今で言うフレーム落ちどころではない状態にまでなります。 というか、それが当然の実行速度でした。 さらに、ツールや情報も少なすぎました。 今はソフトの開発を行う場合、ツールや資料を探し、それに慣れるという作業が、結 構なウェイトを占めていると思うのですが、当時はツールも資料もろくなものがなく、 それらをそろえようとすると、何千円も出して購入するか、雑誌を見て打ち込むか、自 分で作るか、でした。これらが筆頭となり、それなりのゲームの開発は敷居が高かっ たと思います。ですが、上記BASICという環境はそれを上回るとっつきやすさの為、 グラフィックキャラクターなどを用いた簡単なゲームならば 当時のコンピューター少年ならば、そのほとんどが作成してきたと思います。
  27. 27. BASICに話を戻しますと、シューティングゲームにおいては、 プレーヤー機と自分の弾と敵機と、最低でも三つのキャラクターが 動的にコントロールされる必要があります。 それらのコントロールルーチンが毎回呼ばれ、 速度からタイミングから完全に同期して動いていくというのが当時自作された、 最もありがちなシューティングゲームであったと思います。 三キャラが完全に等速で同期していると言うのは、 ゲーム的に問題があるのは想像しやすいと思いますが、 私も最初は攻撃した時に、画面上部まで到達するレーザーのように 攻撃できるものを作ってみたりしました。 ですが、その真上に来た時に攻撃すると言うゲーム性の無さに弾のみ倍速移動など としてみましたが、その処理の為にまた全体の速度が遅くなってしまいます。
  28. 28. あそれに辟易とし、その他の方法でゲーム性を求める必要が出てきたわけです。 例えばですが、地面に到達した敵弾がこちらに転がってくるというものを作られた 先輩がいました。 その他、敵の攻撃で地面に穴が開きそれによりこちらの移動範囲が狭くなる と言うものもありました。。 これは着弾前に敵弾を打ち落とせば地面に穴が開かないので、 そのあたりのテクニックが重要になるというもので、 元ネタはタイトーさんのバルーンボンバーというゲームでした。 当然これらは複合できるわけですね。 まぁわずかな例のみで申し訳ないのですが、 ゲームとしての面白さを求める為にハードのスペックや開発環境の溝を埋めるには いくつかのアイデアで足りることが多いはずです。 これは、今においても、自分達の技術レベルにあわせての制作と、 たとえそれが低かった場合においても、いくつかのアイデアを加えることで ゲーム性が激変する可能性もある、と言うことです。
  29. 29. 私のサークルの開発動機など上記のような時代であるが為に、 アマチュア制作ソフトのレベルは一部のレベルを除くと、 BASICで簡単・・・製作者にすれば簡単ではないのかもしれませんが・・・に 作られたものが大半で、それらがコミケなどで、1000円に近い値段などで 売られているのが現状でした。 ある年に購入したソフトのほとんどが、素人ならではの悪い面ばかりが目 立つソフトばかりであった時に、安価でも確実に遊べるソフトを制作して発 表しようと思ったことが同人ソフト制作のきっかけとなります。 時に1987年冬、TRCでのコミケでした。 まぁ実際に大きいことをいっているようですが、 上記のような開発環境であり、内容的に自分の目が行き届いた環境で制 作する為には人でツールからDOSからサウンドドライバーからそろえる必 要がありました。ちなみに、それより少し前の頃、ほとんどの同人ソフトに はまともなBGMが有りませんでした。 それはサウンドドライバーが入手できなかったからです。
  30. 30. 実際に同人ソフトの先駆者でありHSPの作者でありますONIONさんですら、 BASICでplay命令により音楽を鳴らしておいて、ゲームメイン全てを割り込 みで行うと言う荒業を駆使しているソフトもあります。ですが、私がサークル 初参加となる1988年夏の頃には、素晴らしいBGMを奏でる同人ソフトが存 在しました。 その中の一本がREVOLTERでした。 今でも語られるその音楽は当時にしてもそして今聞いても素晴らしいもの であります。こちらのサークルは私の個人サークルとは異なり、知人がネッ トの仲間を集めて制作したものでした。 私はネットではなくある方の紹介で知り合いまして、その流れでネームエン トリー部だけを作成しております。まぁ肝心のゲーム内容ですが、別の知人 曰く 「シューティングは弾を避けながら進むもので、あんな食らうことが前 提のシューティングは認めない」 それでも色々とセンス良いゲームだったとは思います。 ・・・女の子を除いては、ですが。
  31. 31. 話を戻します。で、私がゲーム制作をする際に個人で作ることを決めたわけです が、個人ゆえに、様々なデータ作成に時間を取られるわけにはいかないであろ うと考えました。 本日来られている方の中にも、データが作れないのでゲーム作成に入れないと 思っている方は居ませんか? 絵が描けない?そんなもの漢字でも四角でも良いのです。 とりあえずゲームとして完成させるのであれば、見た目は二の次でもかまいませ ん。例え一本でも、最初から最後まで手がけ完成させたという経験は、 何十本の計画倒れのソフトを手がけることとは比較にならないものです。 こちらでの過去の公演でも、 完成しないノベルゲームなどの話が有ったようですが、 それにも通ずるものが有ると思うのですが、 大作を作り上げるのは並大抵のモチベーションや技術などでは厳しいものがあ ります。それならば自分達に合った、例え小粒な内容のものでも作り上げる事が 大事です。そしてもし時間が余ったのなら、作りこむなり調整するなりすれば良 いのです。見た目から何からしっかりと作り込まれたゲームは様々な経験を積 んでから造っても遅くはないと思います。 わかる人には、グラフィックなどが無くともその内容は伝わるものです。
  32. 32. で、シューティングゲームに必要なデータと言えば、 敵の配置などを含む面データもあります。 それがつくれないという事はそう無いとは思うのですが、 それがなくても成り立つ内容もあります。 例えば飛行物に関してですが、 グラディウスのような編隊を組んでこの場所でこれが出るという シューティングもあれば、ゼビウスのように出てくる敵の順番が決められていても、 出現位置が乱数で行動が乱数であったり固有のアルゴリズムであったりという シューティングもあります。 このゼビウスタイプのシューティングであれば20種ぐらいの敵キャラを造り、 それの出現テーブルを調整することでそれなりの内容になります。 で、実際に私が造ったガンクライシスもしくはガルクライシスというシューティングでは、 そのなかの数種類を各面の固定敵にしておいて、 2面なら上から降りてきて破壊されると打ち返すだけの敵、 3面なら自分の少し前を狙う堅めの敵、 4面なら画面上部で弾をばらまく敵、 などのようにすることで各面の難易度も調整できます。
  33. 33. 昔の話なのですが、ゼビウスの場合プレイヤーの腕により強い敵が出やすく なるようになっていると聞きました。 うちのソフトにおいては、プレイヤーが敵機を破壊するたびに出現タイマーを減算し、 次の敵の出現が早まるように作成されています。 そのようなレベル調整もある程度は簡単に行えるという利点もあります。 で、実際に20種と言うと少なく感じられると思います。 ですが、ゼビウスについて調べてみたところ、飛行する敵が13種類、地上の敵が9 種類ほどのようなのです。 ゼビウスの敵より2種少ないだけ、と考えると全然問題ないように思えませんか? ちなみにガンクライシスの場合、ソースを見たところ雑魚敵11種+ステージ雑魚5種 +ボス敵6種のようです。
  34. 34. そのガンクライシスというソフトですが、 今その正常なイメージが無く見せられないのですが、ボスキャラもいます。 ・・・と書いた直後に、まさかのイメージ吸出し成功しました。 近日中にイメージがDL出来るようにする予定であります。 もし興味のある方がいらっしゃいましたらプレイしてみてください。 で・・・先ほどの話にもありましたが、 当時のCPUは遅く、余り複雑で汎用性に富んだプログラムは速度の低下を招きます。 http://tauor.hp.infoseek.co.jp/88/88.html
  35. 35. で・・・先ほどの話にもありましたが、当時のCPUは遅く、余り複雑で汎用性に富 んだプログラムは速度の低下を招きます。 ですので、全ての敵キャラのサイズは3×3に固定されています。 でも巨大なボスキャラも存在していました。 勘の良い方なら閃くと思うのですが、 このソフトでのボスキャラは、3×3の本体部と、 それと同サイズの周辺部から出来ています。 本体の下方向に多目に配置し、それぞれに耐久度を持たせることでボス全体の 耐久度の調整と、徐々に破壊され分解していく演出も兼ねられるという、一挙両 得な状態になっています。 さらにそれら周辺部に固有の攻撃手段を持たせることで攻略要素も持たせるこ とが出来ます・・・が、 それに頼ってしまうと戦闘後半部のボスキャラの攻撃が薄くなってしまう事でしょ うか。でも、周辺部のパーツ数の管理を行い、本体からの攻撃を厚くすることで 対応出来るはずです。 このように、制限の上で成り立つゲームデザインもあるという事です。 むしろ、何でも出来る状況でのデザインは難しいと思います。 何かの制限があるのなら、それを生かす内容を考えてみて下さい。 きっと新しい何かが生まれてくると思いますよ。
  36. 36. で、私が手がけたソフトの話ですが、 それらのデータの少なさをふまえた上でゲームの内容を考えてきました。 先ほどお話しましたガンクライシスなどは実は最後期の物で、 発端は画面後部に流れる煙を簡単に表現できそう、という所から始まったネタ で、制限から作られた物ではありませんでしたので、話は避けておきます。 ってもその煙も制限の上での表現でしたので全く外れたものでもないのです が・・・しかしながら、最終的に一番評価されたのは、低い表現力の中で考え出 した 破壊の際の飛び散る破片だったりするのですが。
  37. 37. さて、少ないデータのゲームに戻します。 シューティングと言えば、まずプレイヤー機があって、倒すべき敵もあります。 敵には何種類もあって、攻撃方法や行動が異なります。 そうなれば当然必要なデータが多くなります。 ではそれらを少なく、というか全く無くす方法はないのでしょうか? その回答の一つに、ストリートファイターⅡなどのような、 プレイヤーと同性能のキャラクターを用いた対戦ゲームがあります。 ちなみに、ストリートファイターが発表されたのが1987年、Ⅱは1991年で、 うちの一作目の発表はⅡの前で、それを模倣したわけではありませんでした。 言うまでもないことですが、 将棋やオセロなどの指向型ゲームとは異なり、シューティングゲームやアクショ ンゲームにおいて 様々な状況について考えられた完成度の高い思考は、むしろ邪魔になることも あると思います。
  38. 38. 想像しやすいパターンとしては、各面の最初に出てくる雑魚の編隊がことごとく こちらの攻撃を避けてしまう、というものがあります。 まぁ大体の人はそれを見た瞬間にコントローラーを放り投げるでしょう。 敵をバリバリと破壊して進み、敵の弾幕をすり抜けてこちらの攻撃を叩き込む。 そのようなシューティングでは思考ルーチンを主題とするのは自殺行為だと思 われます。 ゲーム中のアクセントとして、もしくはライバル機などの存在として使用する程 度なら問題はないのでしょうが。 で、思考ルーチンの話に戻します。 ゲームの内容にもよるのですが、ものすごい強い敵というのは作りやすい物で す。例えば完全に待ちに徹した格闘ゲームのキャラを想像して貰えればわかり やすいと思います。攻撃をしてくるのはこちらの攻撃範囲外からのみで、 間合いの中に入った場合、こちらの攻撃に対する技のみ出すようにすれば強 いと思うのです。 でも、絶対に面白くはありません。 問題は、プレイヤーが適当に勝てるレベルでないといけないと言うことです。 その辺りをふまえ且、私もしっかりとした思考について語れるほどの知識があ るわけではありませんので、 一作目のJALECKの思考についてお話させて頂こうと思います。
  39. 39. JALECKというゲームは、コナミの前身という話のレジャック社が発表したス ペースウオーというゲームが元になっています。 それは上下で障害物の間をぬってレーザーを撃ち合うゲームなのですが、 撃たずに溜まったエネルギーの量によりレーザーの射程が決まります。 そしてそれは攻撃した瞬間に射程まで到達してしまいます。 途中にある障害物に当たればそこまでですが、何もなかった場合、一瞬で敵に 当たるわけです。発射後に避けることは出来ません。 そしてそのレーザーを撃ってしまうとエネルギーが0になり、また溜めない限り は敵に攻撃することすら出来ません。 対人戦ならばフェイントは意味あるわけですが、対コンピューターの場合むなし いだけでしょう。 ですので、JALECKの場合レーザーがそれなりの速度で敵に向かっていく内容 にしまして、 さらには防御要素となるバリヤーまで付けました。 それらはオリジナル同様、徐々に溜まるエネルギーを消費して使用するのです が、使用しても一瞬で尽きることはありません。 途中の障害物はあえて破壊不能にして、如何にしてその隙間をぬって攻撃す るか、 という、対人の場合は単純な対戦シューティングだったわけです。
  40. 40. で本作の思考ルーチンの話ですが、 その前に触れていなかった、細かいルールとして、 レーザー同士がぶつかった場合、エネルギー残量の高いプレイヤーのレー ザーが残ります。まず、お互いが出来る行動をまとめます。 移動系:右移動、停止、左移動 行動系:レーザー、バリヤー、溜める と、それぞれ同時行動不可の系列と、可能な行動と、要素としては4種類にな ります。 プレイしている間は逃げながらレーザー、追いながらシールドなどの要 素も考えられます。 でも、本当にそれら全てについて判断する意味があるのでしょうか? 確かに全てに行動に対してしっかりと判断する方がしっかりとした思考になる のかもしれません。 でも複雑で完璧な思考が必ず強くなるわけでもないですし、 なにより作成、デバグ、調整に時間がかかります。 ならば、移動についてと行動について別に判断した方が早く確実に作成が可能 です。 そしてそれらを個別のパラメーターで制御することで、ある程度攻略要素 の異なる敵が作成できます。
  41. 41. ・・・とお話してはいるのですが、 実際にパラメーターのみで各キャラクターの個性を出せるかと言えば そうではありません。 判断基準が異なっていますから、厳密に言えば異なってはいるので すが、プレイしてもほとんどその違いはわかりません。 もし個性を強く出したいのでしたら、そこだけは個別にプログラムする とか、攻撃方法を変えるとか、 そのような追加作業が必須であろうと思われます。
  42. 42. JALECKの思考パラメーター 先ほど左右に移動と書きましたが、それを言い換えれば近付くか離れるかです。 近づくのは攻撃したいときが主なわけですが、もう一つ大きな条件が存在しま す。 それは「離れる必要のない時」です。 攻撃と防御とに優先順位を付けた場合、防御がそれなりに出来るようになった プレイヤーにとって、 攻撃優先の敵キャラは良いカモになりがちです。 この「離れる必要のない時」というのは、ダメージを受ける可能性のない場合と いう事です。 JALECKにおいてダメージを受ける可能性がある場合というのは、 自分の近くに敵弾がある場合を絶対条件として、それに加えバリヤーが使用で きない場合が考えられます。 バリヤーが使用できない事を判断基準にすると追 い詰められやすくなりますので、 使用できなくなる可能性が高い=エネルギー が低いとします。
  43. 43. ここでいくつかのパラメーターが見えてきます。 1:逃げるべき敵弾のスキャン範囲、横方向 2:逃げるべき敵弾のスキャン範囲、縦方向 3:逃げるべきエネルギー残量 この敵弾スキャン範囲と言うものも縦横だけで判定するのではなく、 台形状などが設定できても良いとは思いますが、本作はあくまで長方形で 作成しました。 それに加え、実際にバリヤーを使用する範囲も設定されています。 これはそのままズバリ、この範囲に敵弾があった場合、 最優先でバリヤーを使用するものです。 4:バリヤー用敵弾のスキャン範囲、横方向 5:バリヤー用敵弾のスキャン範囲、縦方向 ここに本作の最大の欠点が存在しました。 CPUのバリヤーの精度が高く、バリヤー中は無敵であった為に、 CPU戦は、如何にして相手のエネルギーを消費させてこちらの攻撃を通すか、 という内容になってしまいました。 爽快感も何もありません。 ここはゲームデザインの大きなミスでありました。
  44. 44. さて、 移動に関してもう一つ重要なものがあります。 バリヤーが使用可能ならば問題はないのですが、画面端に追い詰められると 逃げようとしても逃げられなくなります。 そのためある程度エネルギーが低下すると画面中央方向に移動するように なっています。 6:画面端と見なす範囲、横方向 7:中央戻り開始エネルギー 移動は横方向限定のゲームでしたので範囲も横のみの判断となります。 次は攻撃に関してです。自分が敵に当てる為に攻撃をするのはどういう場合で しょうか?絶対条件は相手に当たる可能性があり、自分がダメージを受けにく い場合のはずです。先ほど、弾同士が当たった場合の話をしましたが、それが ここで判断に使われます。 敵弾がこちらに到達した場合、バリヤーで防ぐことに なるのですが、到達しない場合があります。一つは障害物に当たった時、もう一 つはこちらのレーザーで消した場合、です。そのために、相手よりエネルギーが 多い状態でいる方が相手より優位であると判断できます。
  45. 45. それ故に、相手のエネルギー残量を確認し、こちらが優位の時に攻撃する のがより安全度が高いと言うことになります。 ですが、それのみで判断して しまうと完全な待ちプレイとなり、面白くなるはずがありません。ですので、攻 撃開始は相手よりも高くなかったとしても、優位に立ちやすくすために、 いつ までも無駄な攻撃をするのではなくエネルギー差が開きすぎる前に攻撃を 停止させています。 8:攻撃を開始するスキャン範囲、横方向 9:攻撃を開始するエネルギー差 10:攻撃を終了するエネルギー差
  46. 46. このパラメーターを上手く利用することで、最大エネルギー状態から打ちつくす まで攻撃し続ける敵もいます。 本作における、数少ない見てわかるCPUの個性です。 と、ソースの確認が出来ない為に記憶で語っていますので間違いがあるかもし れませんが、 この程度のパラメーターや判断で、JALECK程度の思考は作るこ とが出来ると言うことです。 面白いかどうかという、遊戯としてのゲームの根本的なポイントを置き去りにし た上での話になってしまいましたが、 もし、データを作ると言う人的作業に伴うト ラブルその他でシューティングが完成させられないという方がいらっしゃいまし て、 今回の話の中から何かを得て、たとえ小粒なものでも最後まで完成させる ことが出来るようになったのならば、 それは私にとって非常に光栄なことです。 そして作者さんや同人界全体にとっては非常に有意義なものになるのではな いでしょうか? 最後まで御静聴、ありがとうございました。
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×