説明しようとすることは大事

ここ数日バグがあまりに原因不明なのでここに愚痴ろうとした途中で原因に思い当たり投稿中止という流れが大体五回ほど連続しています。
要するに灯台下暗しという話ですが、その全部がここに説明書いている途中に直せているというのは嬉しい限り。
やっぱり人に説明しようとするのはバグ修正の常套手段だよね。

あと関係ないけど、二箇所ほど他人様のサイトよりこのブログにリンクされているのを発見。
書き捨て場のつもりだからURL晒していないはずなのに、本当どこから見つけてリンク張っているのやら……
いや、嬉しいんですけどね。
でも見る人が増えようと内容を改めるつもりはないから後悔しても知らないぞっと。

ゲーム三昧

といってもテストプレイです。

致命的バグで進行不能に陥る場面には何度か遭遇したけれど、そこでなぜかテンション上がる自分はきっと変人。
といっても、全体的にバグ少なすぎて進行不能ってほど致命的バグはそう多くなかったわけですが。
更新履歴を見てもバグ修正ばかりずらずら並んでいる自分とは大違い、やはり綱渡りなコードを書くのが好きな自分は無能なんだと痛感。

とりあえず進行不能バグはあらかた洗い出せたはずなので、もう一度はじめから通しプレイしてテストプレイ中に変更の合った箇所の重点的なバグチェックをしたら終わりの流れ。
でも、完成版ではデバッグ用の機能抜けるからまた一通りプレイしないといけない気はしてる。
作者さんの様子を見るにそこまでやる気はないみたいだけど。

P.S.
自分が変態プレイしすぎて作者さんがどんどん難易度上げている気がする。
「ここまで防御度外視した育て方して完封!? もっと攻撃力あげるしかないな」主にこんな流れ。
もし難しすぎる!って批判が溢れかえることになったら原因は間違いなく自分です、ごめーんね☆
といっても名前も何も出してないのでどのゲームか分かる人なんていないでしょうが。

例外報告

超安定しているとほざいてから約一週間
Ver0.78b以降は例外報告0件、やったね!

仕様どうりに動作しないことはあってもいきなりエラー吐いて落ちることはほぼなくなった様子。
例外は基本的に起こしちゃったら終わりみたいな認識あったけど、起きてから修復して復帰でも意外と何とかなるらしい。

人間は基本ミスをする生き物だし、”起こさない”より”起きても何とかできる”の方向で実装する方が正しいのかもしれない。
某所で運営しているサーバーも時代遅れの物理ファイルでデータ保持しているのにデータを狂わせないではなく狂ったら修復するの方針で安定しているし。

といっても、例外時にエラー位置から復帰なんてコード書く奴はよほどの変態だけだろうけどね。

カルネージハート

開発当初からth105_aiはカルネージハートみたいだといわれて気になっていたので
今日ちょっと暇になった時に某所で動画漁りしてました。

ざっと見た感じではプログラミングを大衆化させた代わりに自由度落とした感じだろうか?
th105_aiでも同じ様なことを出来るけれど、たぶんまともに戦えるAI作れない気がする。
いや、作れないことはないんだろうけど作業量が膨大すぎるだろうとか……
実際作ってみないことには判らないんだけどね。

とりあえず、実際やるならいきなり導入しても死ぬだけだから別案件で作ってみたいとも
でもそうするとth105_aiにもって来るまでモチベ持ちそうにないし
いっそth105_aiと同じで作り直し前提で見切り発車してみるのもいいとは思うがうーん。

なんにせよth105_aiでver1.00いった後にでも考えることにしよう。


話は変わって、自作AIの話
1/5もできてないけど飽きた!

固めの択でAIならではの超反応的なものを含めて封殺できないかと試行錯誤していたけど
そもそも自分がまっとうに固められない人間なので1から10まで完全自作する羽目になり、労力かかりすぎてどうにも。
端でDAガード始動の固めだけとってもA・DA・2A・JA暴れとガード仕込みジャンプ・HJ・回避結界の逃げと選択肢が多すぎる。
これが無敵技持ちのキャラ相手にするとさらに増えるわけで、網羅できる気がしません。

自分が完璧主義過ぎるだけなんだろうけど、こういう極所が気になって他進める気になれない、けど作業量膨大すぎてそこも進まないという。
条件式と実行関数をセットで登録していく形でAI作るというアイディアはいいと思うんだけどなぁ

改造パッチ

といってもチート系ではないです。

東方星蓮船Ver0.01aで現時点で確認されている中から直せそうなのだけ直したパッチなんぞ作ってみました。
/garakuta/th12_bugpatch.zip
前回の記事でメモリーエディタが云々と騒いでいたのもこれのせいです。

ちなみに発端は、製品版に向けて安定パターンを構築している人がいて
残機MAX、ボムバグでボムが5以上いかない状態でなければ7個というところまでがんばっていたので
これは直せるものなら直したいなーと思っただけです。

にしても、ボムの欠片バグは再描画忘れているだけかと思えば
なぜかボム使用後だけ個数0の固定値で表示更新されていた……
神主ケアレスミス南無です。

DEPが予想以上に酷かった件について

最近なぜか今まで使えていたアプリが起動すらしなくなる、作業中に何の前触れもなくアプリが落ちる。
こういう現象に多数遭遇してPCにガタが来たのかと悩んでいたわけですが、今さっき原因が判明。

以前DEP(データ実行防止機能)のせいでth105_aiに影響が出たと書いた後
テスト用にDEPをONにしたまま戻すのを忘れて過していたのが直接的な原因。
要するに、DEPが及ぶ範囲が自分の予想よりはるかに広かったということ。

まず一部のexeパッカーの展開処理が失敗する。
ついでに、データセクションでのコード実行も阻止される(こちらは実行属性を付与すれば通る? 未確認)
他にも何かあるらしく、上記作業を行っている形跡が無いアプリもいくつか止まる。
自分はコードセクションの読み書きが出来なくなるとしか把握していなかっただけに、この影響度合いは恐ろしい。

で、一番酷いのが
自分の予想以上にこれらの機能を使っているアプリが多いこと。
最近のvistaでは標準でONになっているそうなので、これのせいで起動すら出来ず泣き寝入りしている人も多いのではなかろうか。
ネトゲとか割とデフォでこういう機能使っているみたいだし……

私的にはスペシャルねこまんま57号が起動できなかったのが一番でかい。
メモリーエディターなしでは解析なんて無理無理絶対無理(といいつつ、いくつか前の記事でやってましたが)

皆さんもDEP機能には注意しましょう。

見失った

th105_aiはどこまで言ったらver0.80にするつもりだったっけ……?

出来ないことが無くなったら0.80、常用に耐える程度に使いやすくなったら1.00と決めていた覚えはあるんだけど
ここ二回の主にバグ修正な更新を終えたら他にすることがなくなった。
あっれ、なにか一つでかい作業が残っていた覚えがあるんだけど……

思い出せないものはしょうがないということで、最終チェック兼ねて久しぶりにデフォAIのカスタマイズすることにします。
いい加減作者のAIが最底辺というのもカッコつかないし、実際使ってみないと見えてこないものも多いし。

まぁ一人だけAIスレでテンプレと化してるAIを使わず作ってるんで、きっと最弱のままでしょうけど。

自動化による忘却

昨日の安定しているって話、ありゃあ嘘だった。

昔からとあるバグで時折例外吐くのを知っていて、それは直せるんだけどちょっと直したくない理由があって
でも既知のバグに新規バグが埋もれて面倒くさいことになるためその報告だけ除く設定にしていて、そのままそのバグを忘れてしまっていたという話。

今さっきの更新でそのバグ直しました。 ついでに前Verから出ていたバグと机上デバッグで新たに見つけたバグもいくつか修正。
これで今度こそ超安定してると言い切れるはず……

火打石

解析したノリでth105_aiの開発再開できないかと思いつつ結局グダグダしてしまっていたのですが
昨日の公開デバッグの件で無責任に「がんばって!」などと言ってしまったため
他人をがんばれと急かしたくせに自分は何もやらないのはダメだろうという思いからようやく開発再開

三日たてば他人のコードとは言いますが、10分程度で勘が戻りました。
とりあえずざっとスレ洗って上がっていた要望をこなしつつ、以前から直したかった多重起動時の挙動を変更して更新。

さぁ次はおそらく山とたまっているだろう例外報告を見てくる作業だ……

追記:
確かに山とたまってはいたけどほぼ旧Verのだった。
最新Verにしぼると4つ、うち2つは同じバグ。
一つ目は発生箇所不明、二つ目は原因不明、二つ報告が来ていたものは0除算エラーで修正に30秒。

これは喜んでいいんだよな? やった超安定してるヒャッホイ!

公開デバッグ

某所で素晴らしいゲームを作っている方がメモリーリークに困っているとかで公開デバッグをしておられて
その関係で連絡を取り合えたのでデバッグに参加させてもらいました。

内容は詳しく書きませんが、自分の得意分野方面だったため程なくして原因究明、無事修正できたようでよかったよかった。

解析屋でもゲーム開発に関われるとわかって狂喜乱舞
いや、今回はキャスト由来のバグだったからわかっただけですが(自分=キャスト狂)
GUIだからとかゲームだからといって別に開発過程が変わるものでは無いとわかっただけでも自分にとっては収穫。

散々ゲームの解析やら改造やってるのに今更これって遅すぎるけど気にしない。