ゲーム開発と言っても所詮は素人なので、色々なところで粗が目立ってしまう。例えば今日確認したところでは下手に複雑な変数処理を行っていたが、それがどういう理屈で動いているかあまりよく分かっていない。数か月前に勢いで作って完成させたもので、後々それを確認するということ自体あまり考えていなかった。だから数か月ぶりに自分の作った処理を見て、一体どうやったらこんな仕組みを思いつくのかと毎回驚いている。
おそらくこうした開発は論外で、本来なら自分が開発したものの進捗について、いつ、誰が見直しても修正できるような分かりやすい処理を組むべきだった。今回見直した処理は複雑ながらもたまたまわかりやすいものだったからよかったものの、数年前に開発したギミックなどは複雑すぎて今から直せる自信がない。
ただし何もしてこなかったわけではない。自分が今回どうにか修正することができたのは、処理の間にいちいちコメントを残していたからだ。この処理は何のために行っていて、全体がどのように機能するかを記録していた。だからそこから概観を掴むことができ、それほど混乱することがなかった。今回は過去の自分のコメントに助けられた。そしてそれは、今後の自分の開発を助けることになると思う。これからもコメントは残しておこうと思った。
また自分の作っているゲームは、例えば数年前に作った変数と、数か月前に作った変数と、たった今作った変数が同時に存在していて、過去に遡れば遡るほどそれぞれの変数に対する影響を考慮していないという状況が生まれてくる。だから個々の変数についてはうまく処理できているつもりでも、思わぬ不具合というものが生じてくることになる。
どうにかそれぞれの変数を問題なく生かすことを考えているが、本当に自信がないときには全く新しい変数を作って極力その影響を過去の変数に広げないようにする。ただそうした場合、変数の数が膨大になりゴミ屋敷の中から必要な変数を探さなければならなくなる。ここで自分が思ったのは、開発を途中で投げ出さないようにしようということだった。変数を用意する際はその影響下にあるものが何にせよひとまずは完成させる。そして不具合が生じたときは常に、既に完成された処理を修正するという前提で臨む。不完全な変数よりは正しく機能する変数の方が修正しやすいからだ。