2023 ソフトウェア設計及び演習用の班Wiki

23::gr11::高橋優和

活動記録


2023.4.21 1回目

  • 班決定
  • テーマはプーさんのホームランダービー的なやつで仮決定。二人協力の要素を入れたい。
    • 簡単な操作性のゲームの候補を次の講義までにいくつか考えておく。


2023.4.28 2回目

  • 班のメンバー6人がそれぞれ自分たちが考えてきたゲームのアイデアを発表した。
  • 最終的に決定したゲーム案は、2人協力型ミニゲーム付きコマンドバトル的なやつ。
    • まだお大まかな流れしか決めていないので、少しずつ具体的なところを詰めていきたい。
    • ミニゲームはいくら考えても良さそうなのでそれを個人的に考えておく。


2023.5.2 3回目

  • ものと操作の洗い出しを行った。
    • ものと操作の関連付けをこれから行う必要あり
  • ミニゲームの候補をいくつか出し合った(今の所10個位)


2023.5.12.4回目

  • 自分が発案したミニゲームのものと操作の洗い出しを行った。
    • 自分のミニゲーム案は、コンセプトである2人協力ゲームにそぐわないものが多いと感じたので、そのコンセプトに沿ったゲーム性のものを考えていきたい。


2023.5.19.5回目

  • 今回の講義では前回までで洗い出したものと操作をもとに、プロジェクトのモジュール分けを行った。
  • 自分たちのプロジェクトでは、画面の状態単位でのモジュール分けを行うことにした。
  • 自分が前回発案したミニゲームの画面のモジュールを担当することになった。
  • このモジュールを実装するために、HTMLやjavascriptへの理解をもっと深める必要があると感じた。


2023.5.26.6回目

  • 今回の講義ではenchant.jsの概要について学んだ。
  • enchant.jsはゲームを作成する際に有用とあったので、これを使って自分のモジュールを作成することにする。
  • 自分の担当するモジュールのプロトタイプ作成を初めた。
  • 自分のミニゲームに登場するモノである「ノーツ」をクラスを使って作成しようとしたが、想定通りの動きをしない。enchant.js応用編にあるサンプルファイルを参考に、少しずつ確実に進めていこうと思う。


2023.5.29.7回目

  • 今回の講義では、javascriptのデバックの方法について学んだ。console.log()を筆頭にどんどん使って行こうと思う。中間発表
  • 前回に引き続きプロトタイプの作成を行った。
  • 無事に「ノーツ」をクラスにすることが出来た。他に最低限必要な機能は、
    • プレイヤーの移動
    • 点数の取得
    • 点数の加算
    • 残り時間
  • これらを残りの時間で実装する。


2023.6.2.8回目

  • 前回に引き続きプロトタイプ制作を行った。
  • プレイヤーの移動と点数の加算の機能は実装できたが、点数の取得に苦戦している。
  • あるキー(例えばa)が入力された瞬間のみをとりたいが、game.input.aやabuttondownを使うと、押されているフレーム全体で関数が呼ばれてしまうため、想定している挙動にならない可能性がある。
  • 中間発表までには間に合わないかもしれないが、できれば改善したいポイント。


ものと操作_ミニゲーム案(音ゲー風)

minigame_sound2.jpg

  • 判定ライン
    • 動きなし
  • レーン
    • 動きなし
    • 今の段階では4本を想定しているが、増減するのもあり
  • 残り時間
    • 1秒毎に更新
  • スコア
    • シーンの最初では0、プレイヤーが得点したら(下に記述)その点数に応じてスコアを加える
  • 操作キャラ
    • マウスのクリックによって移動する。プレイヤーがクリックしたマウスの座標によって狛犬が対応するレーンの下に移動する。
  • ノーツ
    • 画面上で生成され、その後各レーンをたどって落ちてくる。
    • 判定ラインを過ぎ去ったノーツは消える。
    • 生成されるノーツの種類は4種類、(増減ありかも)点数が低いノーツはよく生成され、高いものはあまり生成されない。
  • 得点条件
    • 1.ノーツが判定ラインに接している。
    • 2.操作キャラが条件1を満たしているレーンの下に位置している。
    • 3.条件1,2を同時に満たしているとき、ノーツの種類に対応するキーが押されたなら、そのノーツの種類に応じて得点が入る。


2023.6.16.9回目(中間発表)

  • 今回はプロトタイプの中間発表を行った。
  • 各班がどのようなプロジェクトを進めているのか、その完成度やアイデアなどから、自分たちの班で活動を進めていくにあたっての大きなモチベーションが得られた。
  • 自分たちの班のプロジェクトをいつもより客観的に見ることが出来た。その視点から得られた改善点をもとに、最終発表に向けて更に良いものを仕上げようと思った。

中間発表次点でのゲーム画面

chuukan.png


2023.6.23.10回目

  • 今回は中間発表の統合で生じた中間発表不都合の解消に向けて動いた。
  • 今までプロジェクトの分割をHTMLファイル単位で行っていたが、その方法だとbgmが流れなくなる不都合があることがわかった。それを解決するために今までのプログラムを、htmlの書き方からenchant.js中のsceneを用いた分割の書き方に修正することになった。この方法を使えば、bgmの不具合はなくなることが確認できたので、新しいバグを増やさないように慎重に書き換えを進めていきたい。

2023.6.30.11回目

  • 今回はプログラムのhtmlからの書き換えとを終え、画像の置き換えなどを行った。
  • 特に問題なくsceneを用いた分割を終えることが出来た。結果的にはhtmlで分けるよりも、画像ファイルの共有や変数の共有などの観点から良い分割が出来たと感じる。
  • 中間発表のときに使用していた適当な画像ファイルを本番用の画像ファイルに置き換えた。アニメーションや画像サイズの調整に今後もう少し気を配る必要がある。

画像置き換え後のゲーム画面

mid-chuukan.png

2023.7.7.12回目

  • 今回はゲームバランスの調整を主に行った。
  • ゲームのシステム面はほとんど実装することが出来たので、より面白くプレイするための調整を行った。具体的には、ノーツが降ってくる速さやその間隔、一つのノーツを消したときの点数などを自分で繰り返しプレイしながら調節した。自分では納得の行く調整になったので、班全体で統合を行う次の時間でグループメンバーにプレイしてもらって、もう一度調整しようと思う。

2023.6.14.13回目

  • 今回は最終発表前に班のメンバーからもらった改善点を潰していった。
  • 自分のゲームをプレイしてもらって、難易度をもう少し低くしたほうがいい、ゲームの遊び方をもっとわかりやすく示したほうがいい、などの意見をもらった。難易度の調整は、ノーツの降ってくる速さを遅くし、一つのノーツで獲得できる点数を増やすことで実現した。
  • ゲームの遊び方をキーボードのイラスト一つで済ましていたところを、ゲーム画面の空いたスペースに説明書きを付け足すことでわかりやすくした。

最終的なゲーム画面

screenshot_1.png


最終更新日:2023/07/28 14:58:22