s02_ver0_07

s02_ver0_07.zip

敵の思考パターン判定にニューラルネットワークを使用してみた。
この前に作ったニューラルネットワークのクラスには少しバグがあったので、ついでに修正した。


だいたい直線距離で 7マスぐらいまで近づくと、敵さんが近づいてくる。
隣接すると攻撃する。


今のところ、攻撃しても何も起きない。
また本来なら移動→攻撃と連続で行動できるところが一つの行動しかできない。
ニューラルネットワーク動作確認版みたいな感じ。


ニューラルネットワークをゲームに載っけるのに 3日くらいかかってしまった。
ちゃんとニューラルネットワークが動いているのかどうか判断できないのが一番辛かった。
今でも分からないけど、それっぽい入力に対して訓練データっぽい値が出力されるのでまあいいだろう。


ついでに、Windows での開発に Visual C++ 2005 Express Edition を導入してみた。
何事もないと思いきや早速バグが見つかった。


配列を超えて書き込んでしまったり、そういう配列を delete[] したりすると、VC では例外で落としてくれた。
Xcode というか gdb では全く落ちずに動いていただけに、原因の究明に時間がかかってしまった。
知らず知らずのうちにメモリを壊していたかと思うと恐ろしい。


VC ではできるんだから gcc でもなにかすれば配列のチェックぐらいはできるんだろうか。
まあそもそもコードで回避しろという話はあるが…。