ENIXERの日記

2015-12-06

JavaChallenge2015の裏話

00:26

この記事は?

この記事は、Competitive Programming (その2) Advent Calendar 2015の6日目の記事です。

先日つくばで行われたACM-ICPC 2015 地区予選の余興として行われたJavaChallengeの裏話です。

間に合わなくてすみません。

JavaChallengeってなに?

本来のプログラミングコンテストとは少し異なり、「あるゲームを攻略するAI」を作って競うタイプのコンテストです。

ゲームはなんだったの?

カービィ64の「おちおちファイト」を元ネタにしたゲームです。

リポジトリこちら

元ネタのゲームについてはググればいくらでも出てくるのでここでは割愛します。

そんなこといいから早く提出先公開しろ

すみません。

提出先(予定)はこちらですが、現在対戦用サーバが稼働しておらず、提出しても対戦が行われません。

申し訳ありませんが、本公開までもう少々お待ちください。

公開しました。

Contestsの「Java Challenge 2015 Free Battle」からご投稿ください。実際にJavaChallengeで行われた各ラウンドの結果も確認できます。

(アドレスがjavachallenge201"4"となっていますが、間違いではありませんのでご安心ください。

2015が利用できるようになったらリンクを貼り替えます貼り替えました)

本題

今回のチームは

でした。

僕(ENIXERvsREXINE)はビューワ開発には関わっていないので、ゲーム本体開発のお話です。

〜9月
  • 8月に、「今年もJavaChallengeやる?」という話をexKAZUuから受け、メンバー探しを始める。
  • とりあえず7月にあったTopCoderOpen 2015 Hackathonでチームを組んだメンバーに話を持ちかけてみたところ、kenkooooが興味を持ってくれて、そのまま引き込む。
  • 上旬、exKAZUuの伝手でpuyokwが参戦。
  • 下旬、kenkooooがゲームの開発を始める。(僕は就活を理由に開発には携わってませんでした)
10月
  • 上旬、ゲーム本体が完成。ログ仕様をもとにpuyokwがビューワの開発を始める。
  • 中旬、ビューワが完成。
  • 謎の空白期間。
  • 末、exKAZUuによるサーバへの組み込みのための作業が開始される。

立ち込める暗雲。

(僕は10月半ば頃まで就活が終わらず別の意味で暗雲が立ち込めていました)

11月
  • 初頭、kenkooooが論文関連で忙しくなってしまい、代わりに就活が終わった自分が開発を引き継ぐ。
  • リファクタリングしたり、テストケースを生成したり、ぬるぽをガッしたり、などなど様々なチケットを立てては消化していくうちに、「これ間に合わないんじゃね?」的な空気が漂い始める。
  • 結局、前日の夜まで組み込み作業は続き、しかも度重なる仕様変更によりドキュメントが古くなっていたので変更作業に追われ、出来上がったのが当日の朝。

見事に大炎上したプロジェクトは、当日サーバが落ちたりしたものの、なんとか致命傷で済んだ。

kenkooooの卓越したトークスキルにより結果発表も楽しんでもらえたようで何より。

思ったこと

スケジュールには余裕があったはずなので、就活が終わってからしばらくの間、このプロジェクトから逃げていた自分に喝を入れたい。

明日は?

明日(というかもう今日)はnotさんの記事です。お楽しみに。

ゲスト



トラックバック - http://topcoder.g.hatena.ne.jp/ENIXER/20151206