2016年度 プログラミング実習Ⅱ 最終課題・優秀作品集

第 10 回課題として提出された OpenGL/GLUT を用いたゲームの中から、とくに優れていたものを紹介する。

Juliy「Bring Ruby Back」

学生によるゲーム内容の説明

私は、愛犬ヨークシャー・テリアの Ruby の画像を用い、愛犬が迷い犬となってしまった設定で愛犬をみつけようというテーマでゲームを作成した。 ルールは簡単で、動き回る画像の中から Ruby を見つけだし、クリックした画像が正解であれば加点。加点の際、そのシーン上で1 度も間違えずに見つけられたら120点加算、ミス 6 回以内に見つけられたら 120/ミスクリックした回数でつけている。 また、一定時間内に正解すると20点のボーナス得点を与えている。ミスクリック時には減点するようになっている。また、特別高速に動き回る金森先生をクリックしてしまった場合、大幅な減点をしている。

秋庭 理恵「イライラにゃも」

学生によるゲーム内容の説明

イライラ棒というゲームを模したゲームを制作しました。 メニュー画面からスペースキーを押すとスタート画面に移動します。 “ Start ”と書いてある四角いボタンをクリックすると、ゲームが開始し、タイマーが動き始めます。右上に経過時間が表示されます。 30s,1m,1m30s,2m 経過すると、左上に経過時間の警告が出るようにしました。ゲームは、表示されたルートに触れないようにゴールまでたどり着けばクリアー、所要時間によってランキングづけします。マウスをクリックもドラッグもしないで動かすと、赤い円がカーソルの移動にしたがって同時に移動します。水色のルートに触れたらゲームオーバーです。 クリアー画面では、クリアタイムが表示され、名前入力を求められます。Enter key を押すと入力が終了し、ランキング画面にすすみます。 ランキング画面では、所要時間の少ない順にランキングされたタイムと名前が表示されます。 また、ランキング画面かゲームオーバー画面で’r’ キーを押すと、メニュー画面に戻り、再度プレイすることができます。

平川 冬尉「Invader」

学生によるゲーム内容の説明

インベーダーゲームのようなものを作った。’p’ を押すとゲームがスタートする。ランクインしたら名前の入力を求められる。入力してエンターを押すと、’n’で結果画面にいける。入力せずにエン ターを押した場合は、guest という名前になる。バックスペースで名前を再編集することもできる。プレイヤーは緑色の機体でスペースキーを押すことで弾を発射できる。また、方向キーで左右に動くことができる (長押しだと処理が重くなるので連打する方がよい)。タイムは 30 秒で、残り時間がな くなるとゲームオーバーとなる。残り時間に 100かけたものがスコアである。雑魚ステージとボスステージがあり、それぞれタイムは 30 秒ずつである。敵も自動で攻撃を仕掛けてきて、1 発でも当たると即ゲームオーバーとなる。雑魚とボスそれぞれで死なずに、制限時間内にクリアしなければゲームオーバーとなり、スコアがでない。ランキングは高い順に過去 10位まで表示される。’r’ ボタンを押せば最初の画面に戻ることができる。

山縣 開登「Typing Game for Programmers」

学生によるゲーム内容の説明

プレイヤーは、キーボードから入力を与えます。画面上に提示される課題となる単語を、キーボードで入力し、エンターキーを押すことで確定します。また、Escキーでゲーム終了、F5キーではじめからです。お題の単語をすべて打ち込んだらゲーム終了です。それまでにかかった時間が、スコアとなり、早ければ早いほど順位が高くなります。タイトル画面のとおり、ただのタイピングゲームではなく、「プログラマのためのタイピングゲームにしました。お題で出される単語が、コンピュータやプログラミングに関する単語であり、プログラミングをやっている人と、そうではない人では大きな違いが出る内容だと思います。

池田 凌「OTHELLO」

学生によるゲーム内容の説明

対コンピューターとのオセロの対戦のプログラムを作成した。プレイヤーが常に先手である。プレイヤーは石を置ける位置にマウスクリックすると石が置かれる。順位付けはゲーム終了時点でプレイヤーが取っていた石の数によってランク付けした。コンピューターとの勝敗は関係していない。コンピューターは自分が石を置いてから 1.2秒で石を置くように設定した。 工夫した点としては次に置ける場所を探索してプレイヤーにわかりやすいように表示したこと、コンピューターは先の譜面を予測することはできないが、次に置く石の位置によっての評価関数を作り、角などを優先 的に取るようにプログラムしたところである。

木幡 有紀乃「もどげの神経衰弱」

学生によるゲーム内容の説明

可愛すぎるオリジナルキャラクター「もどげ」が登場する神経衰弱ゲームを作った。ユーザーは4×4枚並んだカードから一枚ずつ選びクリックすると、ペアが揃った場合そのカードを消 すことができる。プレイ画面以外では基本的にEscキーで終了、クリックで次の画面と進む。 順位はすべてのカードを消すのにかかった時間の短さで決まっている。

cherry*「MineSweeper」

学生によるゲーム内容の説明

MineSweeper を模したゲーム。ユーザーはまずプレイするフロアのサイズを選択する。サイズを選択したらゲームがスタート。操作方法や見た目、ルールは極力本家を模倣した。左クリックでマスを開き、右クリックで旗を立てたり下げたりすることが出来る。 左上がタイマーであり右上が合計地雷数-立てられた旗の数を表している。本家リスペクト。間違えて地雷を踏んでしまうとゲームオーバーであり、金森先生が爆発してしまうので気をつけよう。 ちなみに自分が踏んでしまった地雷は赤く表示される。(本家リスペクト)

樹神 篤「せんしゃばたりあん」

学生によるゲーム内容の説明

四方向に移動攻撃が可能であるシューティングゲームのプログラムを作成した。プログラムを実行すると、生成されたウィンドウに「せんしゃばたりあん」というタイトルが表 示される。エンターキーを押すことでルール説明の画面へと移る。タイトル、ルール説明では画像データを用いてウィンドウに画像を表示している。ルール説明の画面にも載せられている通り、このゲームはキーボードの「r」を押すことで、リセットされて初めのタイトル画面に戻り、またエスケープキーを押 すことでウィンドウを閉じることができる。ルール画面でエンターキーを押すと、ゲームがスタートする。プレイヤーが操作するのは緑色の戦車であり、上下右左の四方向に動くことが可能であり、動く方向によって描画されている戦車の向きも変化する。 スペースキーを押すことで弾を発射することができる。弾は敵に当たる、もしくは壁に当たることによって消え、次の弾を発射することができるようになる。弾の発射される方向は戦車の向きによる。黄色い戦車は敵の戦車である。rand 関数鵜や壁のあたり判定を用いて、敵戦車のランダムな動きをさせている。また、ただ動き回るのではなく、プレイヤーのいる方向に応じてその動き方を変えたり、曲がり角で曲がったりなとどさせている。敵戦車もプレイヤー戦車と同様に、弾を発射してくる。敵戦車は弾を一発当てることによって倒せるが、倒す前に発射した弾は敵戦車がいなくなった後も、壁に当たったり、プレイヤーに当たったりしない限りは消滅せずに進んでいく。敵の弾に一度当たると戦車の色は緑から赤に変化する。もう一度、敵の弾に当たってしまうとゲームオーバーとなる。8台の戦車、すべてを倒すとゲームクリアとなり、ゲームクリアにかかった時間が表示される。単位は秒である。ランキング画面では名前を入力することで、タイムの早さ順に上から 10 位まで表示される。ここでは 10 位までの成績のデータがかかれている、rank.txt が必要である。

ゐゑ木「PandaOthello」

学生によるゲーム内容の説明

私は、パンダが大好きである。 普段の生活の中でも、気づけばパンダをモチーフにしたアイテムに囲まれて暮らしている。そこで今回、私はパンダをデザインに組み込んだゲームを制作しようと考えた。パンダといえば白黒の模様である。白黒模様を活かしたゲームを考えたとき、真っ先に浮かんだのは オセロであったため、オセロを制作しようと考えた。 自動で駒を裏返すプログラムを作っているとき、コンピュータに対戦相手をしてもらうことも 可能ではないかと思い至り、ゲームモードを 2 種類作ることで、1 人でも 2 人でも遊べるようなゲームになった。ユーザはクリックによりゲームのモードや駒を置く位置を決める。最後に盤上に残っていた自分の駒の枚数を得点とし、得点の高い順に順位づけする。

皆川 達也「ぷよじつ!」

学生によるゲーム内容の説明

テトリスは有名な落ち物パズルゲームの1つである。落ち物パズルゲームはテトリス以外にもあり、ゲームの中ではオーソドックスなジャンルとなっている。私はその落ち物パズルゲームのなかでもテトリスと同じぐらい有名であろう、「○よ○よ」を実際に作ってみることにした。作ったゲームは名付けて「ぷよじつ!」である。「ぷよじつ!」はゲーム「○よ○よ」の基本的部分を実装してプレイ出来るようにした。

高倉 礼「WantED」

学生によるゲーム内容の説明

私が作成したゲームは、所謂「かくれんぼ」である。ユーザはスタートメニューから「ゲーム開始」「現在ランキング確認」「ウィンドウを閉じる」の選択をすることができる。隠れているのはみんなが大好き「スズメさん」である。時間制限は約 60 秒。早く見つけてあげよう。サイトを方向キーで移動しブロックの上でENTERを押すと、そのブロックからのスズメさんまでの「最低移動ブロック数」が表示される。何個かのブロックを壊していくとだんだんスズメさんのいる場所が分かってくるはずだ。見つけられたらゲームクリア、時間内に見つけられなかったり、ブロックを叩きすぎたりするとゲームオーバーである。無事、スズメさんを救いだしたらランキング入力だ。ENTERを押した回数と時間を元に点数が決定する。好きな名前をキーボードで入力することができる。