ゲーム作り日誌(黒歴史?)

アバター
SAI
記事: 115
登録日時: 14年前
住所: はひほーひ

ゲーム作り日誌(黒歴史?)

投稿記事 by SAI » 14年前

ゲーム作りを始めたころの日誌があったので投下。
黒歴史だが、川´_ゝ`)何、気にすることはない。
長ーいです。

2010年3月21日
とうとうゲームプログラミングを始めた。
それまで散々情報収集してきたが、いまいち制作に踏み切れる気がしなかった。
でもまあとりあえずやってみようというノリでスタート。

いきなりサンプルプログラムが実行できなくて困った(笑)
サンプルプログラムなのに。

とりあえずサンプルプログラムを徐々に拡張していく方針でいこうかなと思ってる。
普通に考えて0から手打ちとか無理だからwww

3月22日
よっしゃー!
右に動くと右の、左に動くと左の画像を表示できるようにできた!
一見簡単そうですが・・・

簡単です(爆)
スキルがなくて苦労しました(汗)

さらに弾を何発も打てるように。
コンパイルエラーの嵐でした・・・(T_T)
いざ実行したら、弾が出ねえ!(笑)

ああ、やっと出た。後日付けるであろう連射機能のために変数を用意したのがだめだった。

さらにポーズ機能付加。このときのコンパイルエラーはextern絡みが多かった。
ファイル分割故の悩みか・・・

そして「;」忘れが多すぎる。

そしてポーズが解除できないという罠(爆)

数時間頑張った挙句、=と==を間違えていたと判明。

さらにポーズ時グラフィックが変わってしまうのを変更。謎のエラーが発生して困った。

PAUSEの文字を表示しようとしたが表示されない。

文字を表示した後画面をクリアしてた(爆)

それでも表示されない。

文字を表示した後背景を上に書いてた(爆)


3月23日
当たり判定を導入。
またしてもコンパイルエラーの嵐。エラー、警告が多すぎるとかいうエラーが出た(笑)
当たり判定恐るべし。

未定義のシンボルってなんだよう(T_T)
真上で定義してるじゃねーか(T_T)
むしゃくしゃしたからもう一度定義してやった。(後でこれが原因のバグが発生orz)

最後のエラーが1時間悩んでやっとわかった・・・。
メンバ関数を宣言時に定義しなかった場合、定義するときは最初にクラス名とスコープ解決演算子を入力してから関数名を入れないといけなかった。


よし実行!

あれ?
弾が出ない・・・
敵もでない・・・

もうやだorz

3時間経過・・・
デバッガなどあらゆる方法を使ってみたが不明。再起動してみようかな・・・


3時間経過・・・
映った!
敵だけ。こんなにやってるのに・・・(T_T)
どうやら理不尽なバグが発生している模様。
おおっ!弾も映った!
同じようにやったらできた。(このバグの原因は未だ不明)
間違えた値を入れたため近づいただけで当たったことになるミスを修正。(笑)

只今午前3時。って23日終わってるし。
いやはや、当たり判定だけで丸1日以上使ってしまった。

3月24日
5方向に弾が打てるように改造。これでゲームらしくなるはず。

うはwww  当たり判定とは比べ物にならないくらい簡単(笑)

連射機能搭載。これも簡単だった。しかし・・・


じつは弾と敵を違う方法で表示しているのだが、その方法は処理が重いため、
連射して画面上に弾がたくさん表示されるとこんなショボイゲームのくせに処理落ちしちゃうのだ。(死)

こうなったらやるしかない。と気合入れて元の方法で表示しようとしたら以外にすんなりいけた(笑)
妥協した面もあったけど。

連射時に同時5方向発射機能搭載。見てて面白い。

機体の絵を自分で書いてみた。モデルはアーウィン。
なかなかうまいな( ̄ー ̄)

・・・
すいません調子に乗りました。ヒドイ絵です。それはもう存分に。

ただ透過処理がうまくいかない。なんで?

透過処理ができるソフトをダウンロードしてなんとかできた。


3月25日
敵を複数表示できるよう改造。コンパイルエラーうぜぇ・・・

さらに敵と自機の当たり判定導入。段々シューティングになってきた。

敵のアルゴリズム追加。まだ直線移動だけだけど。

関数1つで敵を出現させられるよう改造。これで簡単に敵を出現させられる・・・はず。

音楽がなるようにした。

HPゲージを表示。だが、なぜかHPが0になるとゲージが振りきれてしまう。なぜだ?
デバッガを使ってみた。(ものすごく使いにくい&説明書なし&全部英語。泣きたい。)

・・・
あ、HPが0以下になったらHPを0に戻す処理を間違えて最大HPを0にしてた(笑)
ありがとうデバッガ!

でももうちょっと使いやすくなってくれ・・・ orz

さらに、HP量でゲージの色が変わる機能を追加。これやってみたかった。ちなみに6色に変わります。(多)
最大→白
50%まで→青
25%まで→黄
10%まで→橙
2%まで→赤
UTN(それ以下)→黒

3月26日
ダメだ・・・いくらやってもコンパイルが通らない。
これは詰んだ orz
妥協すればいけるが妥協したくない・・・


苦節5時間、ついにコンパイル通った。
やった俺。頑張った俺。

でもなんで通ったかわからん(笑)

また詰んだ・・・
これを解決するにはもう最後の切り札しかないが・・・。
それだけは使いたくない。

ダメだ・・・今日はもう寝る。

って諦めかけたその時最後に試したやつがビンゴ!

でもなんでだかわからん(笑)

3月27日
今日は敵が弾を撃つようにした。
まだ撃ってないけど。(どっちだよ)
敵が弾を撃てるように環境を整えたということですね。

とうとうプログラムが1000行越えた。(1123行)
そこで今まで放置していたプログラムの整理をした。
といっても変数名を変えただけだけど。
プログラム中のほとんどの物は自分で名前をつけられるけど、名前がかぶらないように長くしてたら長すぎてめんどくさくなってきた。
そこで名前を変更。例えれば、
「おまえは今まで「ンゴロンゴロクレーター保護区」という名前だったがこれからは「龗麞譼」だ」(文字化け注意)みたいな。
そしたら自機の弾が出なくなったんですけどね。(泣)←無事修正した。


実際に敵に弾を撃たせた。
もう当然の出来事となったコンパイルエラーの嵐。略してコンパ荒らし。(笑)
CESとでも名付けておこう。(Compile Error Storm)
またこのパターンか・・・。
そしてまたなぜか解決・・・。
なんでだよ(T_T)
新しくファイルを追加するたびにこれだよ・・・。


ひどいコンパイルエラーが今日もでた。そしてとんでもない方法で解決した。そして敵が弾を撃ってくれない。そして寝る。

3月28日
弾が出ないのは理不尽なバグみたいなのと判明。

今度は弾が動かねえ。(笑)

ミスをいくら直しても動かないと思ったら、関数をmainループに入れてなかった(爆)
例えるなら、苦労して大金をかきあつめてはぐれメタルの鎧を買ったものの、装備し忘れてデスピサロに瞬殺されることに似ている。

よし、どうだ。弾が近づいてきたきた。

って近づくとなんかそれて全然違う方向に飛んでくんですけど(爆)
テラシュールwww

sinとcos間違えてた(笑)

敵の弾に当たり判定をつけた。

敵の弾と自機の弾に相殺判定をつけた。
これもやってみたかった。

だがいざ実行すると、なんかCPUが頑張って、なにもなくて終わり。
なんじゃこりゃ。


・・・もしかして、メモリ足りない?
実は弾同士の当たり判定のために8バイトの箱を30×300×100用意した。7.2kバイトだな。あれ、意外と大したことない。
でもどうやらメモリ足りないっぽいので4バイトの箱を30×50×40にした。240kバイトだな。
あれ?さっきより多い。

ってキロじゃなくてメガだった(笑)
7.2Mバイトじゃすごい量だな(笑)
でもこのパソコン確か4GBあるはずなのに・・・
(追記:この時点では気付いていませんでしたが、実はこの変数必要ありませんでした(笑))

よしできた!
これでゲームの骨格はほぼ完成。


3月29日
弾発射音を付加。連射すると爽快。(笑)

手書きのアーウィンが自機というのはさすがにショボイのでCGでプレイヤーのグラフィックを作ってます。
CGなので手描きでは絶対に不可能な陰影や回転も可能です。
しかも真横にも発射するので銃器が横にもついてます(笑)
飛行機としてだいぶシュールwww

すごい機能搭載。初めて操作した時、おお、すげえ!と思うこと請け合い。(何)
さらにデバッグ用に当たり判定が見えるようにした。リリースにも入れようかな(笑)

3月30日
音とか画像とか色々付加。
最近CES(Compile Error Storm)がなくてつまらん(笑)

3月31日
アイテム機能追加。
さらにバリアを追加。

4月2日
ホーミングする弾を実装。実は意外と簡単で、普通の弾は打ち出された瞬間にプレイヤーとの角度を一度だけ計算しているが、ホーミングはそれを毎回計算しているだけの違い。

4月7日
敵の行動パターン色々追加。
最近加熱が終了したため改造ペースは落ち気味…
誰か代わりにステージ作って(笑)

弱いホーミングミサイルを作りたいけど無理orz

実はホーミングミサイルは強いほうが楽なんですね…

今のところ概ねうまくいってるけどたまに挙動不審になるのが気になる…。


次はレーザーが尾を引くようにしたいな
コンパイラ「だが断る」

GW
更新停滞。色々追加しすぎて書くのがめんどい・・・
丸一日以上かかってレーザーを実装。
かっけえww
もっと激しく明滅させたいが画力もプログラミング力もないから無理orz

5月半ば
STAGE1完成。もう完成間近といっても過言ではない。(というかゲームの基礎作りがものすごく大変なだけ)
しかしたまに起動直後に落ちるのが気になる。たまにしか起きないところを見るとメモリ破壊だろうか・・・。
でもどこを見渡してもそんな感じはしないのだが・・・。
困ったorz

6月27日
とうとう完成。長かった。
あ、おまけやエンディングはまだです。



終了

お疲れ様です。
あれから5カ月近く経ったのに、EXTRA STAGE とおまけがまだできていないという。

それだけクオリティが高いってことだよな。
うん、きっとそうだ。ニコ動の見すぎなんてことはないない。
そんなわけで今日も弾幕作り。色々修正もしないとなあ・・・
だって今は鬼畜ゲーですから。(笑)
ダメージ調整難しいなあ・・・

のうてんき
記事: 2
登録日時: 14年前

Re: ゲーム作り日誌(黒歴史?)

投稿記事 by のうてんき » 14年前

初めまして、全体から
読んでいてとてもほほえましい気持ちになると共に「あるあるwww」と今日共感させていただきました
きっと今書いてる日記も数年後にはまた微笑ましい気持ちで見れるのかもしれませんねw
これからも頑張ってください

アバター
SAI
記事: 115
登録日時: 14年前
住所: はひほーひ

Re: ゲーム作り日誌(黒歴史?)

投稿記事 by SAI » 14年前

初めまして、のうてんきさん。
コメントありがとうございます^^
頑張っちゃいます。

日記を読み返すのって楽しいですよね。
時には末梢したくなるようなこともつらつらと・・・!?