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

17::gr01::発表

プロジェクト名

Road of Cristal

プロジェクト説明

  • 王道RPG
  • ランダムエンカウントで現れる敵を倒して主人公を強くしていきラストボスを倒す
  • 敵からドロップする金で防具や武器、道具などを買い冒険しやすくする
  • バトルシステムはターン制コマンドで自身の行動を選び戦う
  • セーブ機能もあり
  • 主人公は一人
  • 舞台背景はファンタジー
  • 装備、魔法、敵に属性あり(炎、水、雷)
  • 街がありそこで装備や回復薬等買い物ができる

モジュール分けとヘッダファイル

  • タイトル
  • オープニング
  • マップ
  • メニュー
  • 戦闘
  • イベント
  • データ操作
  • エンディング

担当

  • タイトル、データ操作
    • 諏訪
  • 拠点
    • 橋本
  • OP,ED,イベント
    • 菊池
  • フィールド
    • 立花、松井
  • メニュー
    • 新田
  • 戦闘
    • 宮澤

ヘッダファイル

動作スクリーンショット

タイトル.jpg オープニング.jpg よろず屋.jpg フィールド.jpg 戦闘1.jpg 戦闘2.jpg ゲームオーバー.jpg

個人の感想

宮澤 佑樹(班長)

  • 戦闘モジュールの大体を担当しました。一つ作業が終わるとまた新たな機能が必要になり時間がかかってしまいました。
    一応班長という名目でしたが班長らしいことはほとんどしていなくてほぼ諏訪くんが実質班長でした。複数人の開発の開発については最初はそんな詳しく話し合わなくても大丈夫やろと思っていましたが後々に決めていく事柄が増えていき大変でした。
    最初はgtkの使い方がわからず先輩方のプログラムをみてもどこがどうなっているかがわかりづらく結局自分で調べてやったほうが早いという結論にいたり、そういう点ではプログラミング技術が向上したと思います
    班員の人たちが優秀で遅くまで残って統合したり、ゲームの機能について話しあったり苦労したこともありましたが楽しかったです。
    この経験をほかの場所でも活かしていきたいです。

諏訪 光輔(副班長)

  • 主にタイトルモジュール、データ操作(ステータス増減反映、セーブロード、レベルアップ)と全体の統合を担当しました。モジュールの制作自体は大きな時間のロスなく早めに統合にとりかかることが出来ましたが、統合の段階でエラーの修正にかなり時間がかかり、非常に苦労しました。複数人での開発での事前の計画、意思の疎通の重要さを改めて認識しました。しかし、班員全員が自分の担当するモジュールの制作をしっかりと完遂し、コミュニケーションをとりながら着実に制作を進めていくことができたおかげで、ゲームを完成へと持って行くことが出来ました。班員のみんなには本当に感謝しています。今後は自分のプログラミングスキルを向上させ、研究室配属、さらにその先に向け努力を続けていきたいと思います。

立花 大陸

  • マップ制作を主に担当し、初めは何から手をつければよいかわからず情報集めに時間を費やしました。GIMP画像エディタよりマップ画像を制作しその上を歩くキャラの作成、ネットから素材を集め中盤はひたすらテーマに沿ったマップを作り続けました。ある程度方針が決まりやることが明確になるとあとは時間を費やすだけではあまり苦はなかったものの、統合に入りボス画面の表示、メニューの呼び出しなど他のモジュールと組み合わせ動作させることがここまで難しいものとは思いませんでした。様々なエラーが起こる中、皆で頭を抱えつつ試行錯誤しながらゲームがしっかりと動作した時は大きな達成感を感じました。このゲーム制作で得たものは大きく、複数人で行なうプログラム制作はこれからの研究等において必須であるため理解を深めコミュニケーションをとりながら今後の活動につなげていきたいと思います。

橋本 恭一

  • 漠然と授業で習った内容を利用すれば難しくないであろうと、街モジュールに着手しましたが、最初はボタンに機能を実装することすらうまく行かず、四苦八苦したことを未だに覚えています.授業の回数を重ねていくうちに出来ることが増え、ある程度の機能が実装できた段階で初めての統合テストを行いました.そうして初めて他人とプログラムを共有することの難しさを実感しました.特に、ヘッダで二重に宣言していたときにどのヘッダ同士で競合しているのかを探すことや、変数を共有する際の決まり事を理解していなかったために、度々エラーが出てきて苦労した覚えがあります.先生方が仰っていた、ものの洗い出しの甘さや、班員同士での認識の違いをそこで初めて理解しました.そんな中でも、班員と意見を交換して、徐々にプログラムが完成形へと近づいていくことを実感していく様子は、苦労した記憶よりも鮮明に覚えています.せっかく完成まで辿り着けたので、空き時間にでもやり込んでみようと思います.

菊池 賢也

  • 自分たちの班のテーマがRPGということで、自分はシナリオ作成を担当しました。ストーリーを作る際、ものと操作の洗い出しが可能な範囲でいかに面白くするかを考慮する必要があったため、作ったストーリーを見直し、実装が難しそうな要素は省く、といった細かい作業を繰り返したりしました。シナリオをプログラミングにより実装するとき、最初は手が出ず、他の班員が作ったプログラムで使えそうな部分や、過去に先輩方が作ったプログラムを参考にしてなんとか最低限の要素のものができる程度だったため、かなり苦労した記憶があります。また、自分が担当したモジュールは主に画像遷移だったため、他のモジュールですでに自分が作った画像とイメージが食い違っていたことが多々あり、他の班員との認識の甘さを痛感しました。最終的に他のモジュールと統合してゲームとして機能した時の達成感は今でも忘れられません。今回、初の共同プログラミングを経験して、これから社会に出る上で必要となる、他人との意見の共有による連携の大切さを身にしみて学びました。これからの活動に向けて貴重な経験になりました。

新田 篤志

  • メニューモジュールを担当しました。gtkがさっぱり理解できなかったので逃げる形でメニューモジュールをやりました。他の班員たちに比べてとても楽な部分を担当したと思っています。班員の皆さんすみません。ソースコードも最終的に1700行を超える量を書きましたが、これはもっと工夫して見やすくすればスッキリとしたものになると思うので反省点です。実際のメニュー画面ももっと見やすく、使いやすいものにできると感じました。また、グループでの作業は意志の疎通、情報の共有がとても大切だと今回の演習を通して学びました。開発終盤の統合作業はほぼ副班長の諏訪さんに任せっきりになってしまったので次回またこういった開発の機会があれば率先して動きたいです。自分自身統合に興味があるのでやってみたいです。今回の経験は間違いなく大学生活を通して一番自分の糧になったと思うので、この経験を活かして、さらにここで身についてスキルを伸ばして、これからある研究室での研究、就職活動に活かしていきたいです。

松井 優宜

  • マップモジュールを担当させていただき、一番最初はどのようにキャラが歩いているように見えるのかまたキャラが移動するのかも分からず参考にさせていただいたソースコードを読んでいるだけで時間が過ぎていき、時間を無理に作って授業がない日にもgtk+の教科書や、ソースコードを読んで作成していたし結果似たようなソースコードになってしまって辛かったが、元になるソースコードができてからは自分で敵とエンカウントするタイミングを調整したり、バグが出てきた時にどのようにソースコードを書けばバグが修正されるのか考えるのが楽しかった。自分のモジュールと他の人のモジュールを統合するのは、どんなふうにソースコードを書いているか見ることができたり、少しずつ出来上がっていくのを見るのは楽しかった。また、window1つでゲームを終始できるようにできなかったのは悔しかったが、形になった時にゲームをプレイするのは楽しかった。しかし、当たり判定の関数、マップ遷移の関数についてはもっと上手いやり方があったふうに思える。この関数は自分の書きかたが下手なばっかりに大陸に当たり判定と遷移の設定書かせた時に負担になったきがして申し訳なかった。全体を通して見るといくつか不満な点があったが概ねうまく行ったと思う。また、他の人が担当したモジュールも楽しそうだったので夏休み中に1人でいろいろ試してみたい。


最終更新日:2017/08/08 22:40:29