いま詳細設計書を書いてるんだけど…

 生存フラグって言葉を書いたとき、ふと「これ死亡フラグに書き換えられないかな」って衝動に駆られたんだけど、それをやってしまうと以降の設計書の中で「死亡フラグ」って言葉が頻出するようになって、笑い転げて作業どころじゃ無くなりそうなので止めておいた。

 例文
 各オブジェクトは死亡フラグ$RougaHuuHuuKenを持つ。
 $RougaHuuHuuKenがTrueの場合、処理を飛ばす。

 まぁ、使うのperlとかじゃないから$は付けなくてもいいんだけど。なんとなく。

 それにしても、フラグ自体は普通に使う言葉のはずなのに、フラグ単体で言っても微妙にくすっと来るのは止めて欲しいよね。だってなんか、死亡フラグを略してフラグって言うの多いし、「フラグ立った」はそれこそ正当な意味なのにネタっぽい香りがするし。このやろー

 Diablo2は名作だった。いや過去形にしちゃダメか。

 それはさておき、el Diabloと言う名前のビールが出るんだって。

 麦ワインってものらしいけど、初耳。甘い葡萄のワインでさえあんなに苦くなるのに、麦でやったらどうなんだ。って、いかにも低レベルな感想だな。

 濃厚なブランデーのような口当たりって、ブランデー飲んだこと無いからわかんない…。お酒入った洋菓子のお酒の味を想像すれば良いんだろうか。ちまちま飲む分には値段も割とお手頃なので試してみても良いかも知れない。前提が致命的だなぁ。

 しかしまぁ、訳せば悪魔? しかも、発売はボジョレー・ヌーボーの解禁日? 数量限定? 明らかに狙ってるよね。

 …闇の淵に封印されし悪魔が今、解き放たれる(数量限定)。余計だった。

 まぁ、どうせなら続編で「el Mephisto」「el Baal」とかも出るといいんだけどな。「el rise skelton」とかも素敵。

 そうえいば近頃、ポーション売ってるね。この流れだと赤ポーションなら最高だったんだけど、違うのでその話はまた後日。

 今日は他の人が作ってるゲームのコードレビューに参加してきた*1。

 一つどうしても取れないバグがあると言うことで、みんなで原因を探る、探る。これじゃないかと言って直して動かしてはエラー発生。ライフ3の敵が、なぜか1ダメージ与えただけで哀れ撃墜。

 それほど厄介な処理があるわけでも無い小さなSTGなのに、これがなかなか直らない。

 途中、コンソールに変数の中身を出力しようと言う話になって、そしたら最初からライフが削れてるじゃんと言うところまで発覚するも、なんで削れてるのかが分からない。
 
 でもって、さらにあーだこーだやってたら、何度目かの私の指摘でついにヒット。

 スタートした瞬間、弾丸と敵の位置を初期化する直前に一発貰ってたらしい。

 詳しく言うと、そのゲームはあらかじめ適当なところに敵と弾丸を置いといて、スタートした瞬間に所定の位置に持っていってから使うようにしてたんだけど、その段階での弾丸と敵の位置がたまたま重なってたせいで、スタートしてから敵と弾丸が位置を変えるまでの瞬間に当たり判定が発生してた(ちなみに2ダメージの弾丸)。

 どうりでコード見てもわからないわけだ。

 そんなのよく分かったねって誉められたけど、やーそれは単に私が凄いから…(はあと)

 いや、けっして今までに同じようなバグを何回も食らったことがあるとか言うことじゃないし、あまつさえ、直近ではCivil作ってるときに敵味方100人の魔法使いの爆発魔法がフィールド中央に一点集中して、開始早々、敵味方200人を越える戦士がバッタバッタと犠牲になったりなんてしてないから!(しかも触れた瞬間に即死)

 やられると血を吹いて倒れる上に死体が残るって演出を切る前だったから、ちょっぴり凄惨だった。


 *1) コードレビュー。つまり、互いにプログラムを見せ合って意見を貰う会議。ちなみに、文中に出てくるほかの人のゲームの内容については、多少変えて書いてます。

 昼寝から帰ったら公式から解答が出てたので早速。
 ちょっとややこしいけど、

 まず午前。
 大原が一問だけ間違えてたところが当たっていたので、+1問。
 80問中、59問正解(73.75%)

 午後ゴゴゴゴゴ
 33問中、24問正解(72.72%)
 午後については配点が公開されているので、それに従うと77%。

 で、これって200~800点の試験なので、100点満点としたときのスコアを6倍したものに200を足せば実際のスコアっぽいものが出る。合格の条件は、午前午後の両方で600点を越えてないとダメ。

 と言うことで、自己採点の最終結果がこれ。
 午前:642点
 午後:662点

 午前は配点がブラックボックスだから怖いけど、とりあえず万歳。感覚的には、勝利を確信した午前と終わりを予感した午後のはずだったのにね。意外な結果。

 合格発表は11月14日。マークミスとか無ければいいけど。

 会場出たら大原の回し者が解答速報を配っていたので、ありがたく頂戴して自己採点してみたよ。
 まだ午前の部だけだけど。

 午前の部
 80問中、58問正解。100点満点に直すと72.5点。

 6~7割出来れば合格と言われているので、なかなか素敵なスコア。
 でも午後がダメっぽかったからたぶん落ちたな;;

 今週日曜は基本情報処理者試験長いわ。
 書くからにはもちろん受ける予定で、とりあえず勉強中。

 実際のプログラミングに関わる問題が出て来るって噂の午後問題を見てみたけど、なるほどこういう。ソースコードの穴埋め問題なんだけど、言語の微妙な仕様とかちくちくと突いてきやがる。その割に元のコードが汚い。もう最低。

 ちなみに、C言語とかさっぱりプーなのでJava。9年間のプログラム歴のうち、まだ8ヶ月しか使ってない言語が唯一の武器か…まぁ、かといって今さらbasicでとか言われても余計困るだけなんだけど。

 まぁ、午後問題はとりあえず勘で解くとしても、むしろやばそうなのは基礎知識の網羅された午前。さすがにこっちは勉強しないと分からないものだらけなので。

 それにしても、試験三日前から勉強すると言うこの態度。素晴らしいよね、当日じゃないだけ殊勝。

 初音ミク。と言うのがある。
 テレビで初めて知ったんだけど、簡単に言えば、歌詞とメロディを入れると萌えボイス(笑)で歌ってくれるソフト。

 youTubeとかニコニコ動画とかで、それで作った作品が色々アップしてあるって聞いて早速聞いてみたんだけど、超凄い。機械音っぽさも多少はあるけど、かなりのレベルで普通に聞ける。

 でもこういう声はあんまり…と思っていたら、初音ミクの前身に当たるソフトに「MEIKO」って言うのを発見。こっちは普通に、てかすごく好き。声質はまぁ趣味の問題だけど、大概の場合、かなり自然で合成音なのが分からない。音声合成もここまで来たかーと。

 言葉で説明するのは辛いので、是非聞いてみて。以下お薦め。

 歌わせてみたよ。「風の谷のナウシカ」 MEIKO & 初音ミク

 でもなんか、機械の歌声を聞いてたら久しぶりにカラオケ行きたくなった(笑
 時間無いけどね;;

 放置してた「Civil War of The El」。一応、開発休止と言うことで書いておいた。

 テーマ自体は諦めたつもりは無いので休止だけど、再開時はプログラム的には一から作り直す予定。

 休止の理由は、

 ・技術的に未熟なところから一気にやってしまったので、あとからじわじわ整合性が合わなくなって来た。
 ・関連して、コンピュータの性能の限界を考えずに作り始めたので、根っこからシステムを変えないと無理。
 ・時間が無い。あっても短編に注力したい。
 ・なんか2Dで似たような趣旨のゲームがあった。

 と言う感じ。

 なんか「最悪じゃん!」とか浮かんできたけど、却下。と言うか、これを通してJavaとOpenGLに関するスキルは超上昇したので満足。

 もっと小規模なものでいいから完成させとけってのは永遠のテーマだけど、それもあって短編を作っているのでまあいいや。自分をチョコレートのように甘やかしたところで、チョコレート食べて来るよ。またね。

 だいぶ間が空いてしまった。みんなー、お久しぶり。

 ふはー、全く。先週は全方位から一斉射撃を食らったような一週間だった。でもようやく一段落着いて、仕事を次の人に引き継いだので、これからは少し楽になるかも。

 ただ、そろそろ短編の方を本気で作り始めないと間に合わない感じになって来た。

 短編って、近所のお祭りに出品する予定のミニゲームのことね。前にどこかには書いた気がするけど、こっちでは書いてなかったっけ。作りかけのゲームの一部分を流用してお手軽に作ろうと思ってたのが、諸々の理由で頓挫して以来、企画がまとまらなくてほとんど放置してた。

 で、ここでお題目のウォーターフォールモデルと言うところに繋がるんだけど、これってのはつまり、「全体の設計→細かい設計→プログラミング→テスト」と言う感じの流れでやるプログラミングの手法のこと。この手のものとしては、一番大昔からある基本形。こないだ会社行って、実際やってみたりした。

 そんなわけで今回、この短編をウォーターフォールモデルで完成させてみようと画策中。

 これの利点の一つは、進み具合が具体的にわかるってこと。何を作るかを全部決めてから作るから、何が出来てて何が出来てないのかを数えればOK。感覚で何%とか言うよりも確実なので、今回みたいに期限を決められちゃってる状況では便利。

 週一回、木曜日に会議があるので、それに合わせて作業を進める予定。せっかくだし、ブログにも進行状況を載せたり出来るといいな。ていうか、完成までいけるといいな。