非想天則の早苗さんの二柱ゲージについて

ゲージは使用した後回復までにかかる時間が指定される方式であり。
見た目が同じゲージ半分でも、実際に回復にかかる時間は消費した技によって異なる。
具体例を出すとLv0突ゲージ半分では待ち150Fで、Lv4突ゲージ半分では待ち90Fとなる。
(ゲージ最大値が0で、技を使うたびに-300や-180になっているイメージ)

また、ゲージには以下の3つの状態が存在する。
1:ゲージを消費してから回復をはじめるまでの待ち時間、設置技なら消えるまではここに当たる。
2:上記状態中に被弾やキャンセルなどを行った場合に課せられる回復停止時間、1の残量に関わらず常に26F。
3:個々に決まっている猶予F分だけ待たされる、ゲージ回復時間。

2のキャンセルはあくまでキャンセルした場合であり、スペルを使っても消えない物(罠など)は回復を始めるわけでは無い。
上記フレームにヒットストップは一切影響が無い、つまり多段ヒット技で2の被弾キャンセルになろうと回復停止は26Fである。
回復中であれば暗転や時間停止中であっても関係なく回復するが、回復停止中は暗転や時間停止中はカウントされない。
(例:回復開始直後咲夜の世界で終了時ゲージは全快、回復停止中咲夜の世界で解除後も変わらず)
正確に言うと、停止中であっても回復はしているが停止解除と同時に停止前の状態に戻る。
なので、暗転直後にゲージをよく見ていると一瞬だけ伸びてすぐ元に戻る様が見れる事がある。

さらに豆知識として、突などいくつかのスキルはなぜか内部的にはゲージ回復時間が+30Fされており
回復ディレイ中に30Fだけ回復してからゲージ回復を始める。
(突Lv0は内部的には330であり、回復ディレイ50F目に30F分回復している)
なので、よくゲージを見ていると回復を始める一瞬前に少量だが回復しているのを見て取れる。

以下の一覧表はゲージ回復に関したフレーム情報である。
回復ディレイと召喚終了待ちと召喚後ディレイは全て上記でいう1に該当する。
ゲージ回復は3に該当し、2は全てで26Fだったので省略した。
ゲージ消費の項は技モーション開始から実際にゲージ消費が行われるまでのフレーム数で
このフレーム数以内に被弾した場合はゲージ消費が行われない。

・乾神招来 突
ゲージ消費:6F
回復ディレイ:76F
ゲージ回復:
・Lv0:300F
・Lv1:270F
・Lv2:240F
・Lv3:210F
・Lv4:180F

・坤神招来 盾
ゲージ消費:14F
召喚終了待ち:258F(自然消滅時)
召喚後ディレイ:26F
・Lv0:180F
・Lv1:165F
・Lv2:150F
・Lv3:135F
・Lv4:120F

・乾神招来 風
ゲージ消費:14F
回復ディレイ:169F
ゲージ回復:
・Lv1:180F
・Lv2:165F
・Lv3:150F
・Lv4:135F

・坤神招来 鉄輪
ゲージ消費:14F
召喚終了待ち:54+Lv*8F
召喚後ディレイ:48F
ゲージ回復:
・Lv1:210F
・Lv2:190F
・Lv3:170F
・Lv4:150F
なぜか被弾時Lvに関係なくゲージ回復が180Fになる。

・乾神招来 御柱
ゲージ消費:3F
回復ディレイ:264F
ゲージ回復:
・Lv1:180F
・Lv2:170F
・Lv3:160F
・Lv4:150F

・坤神招来 罠
ゲージ消費:15F
召喚終了待ち:324+Lv*61F
召喚後ディレイ:26F
ゲージ回復:
・Lv1:180F
・Lv2:150F
・Lv3:120F
・Lv4:90F
なぜか被弾時Lvに関係なくゲージ回復が180Fになる。

ちなみに、上記の情報は俗に言うムダ知識だ。
あくまで知的好奇心を満たすためだけの物であり、実戦においてはなんら役に立たない事を明記しておく。
さらにいうと、上記情報の大部分はツールサポートを得た上でとはいえ目視による実測であり、多少間違いがあるだろう物でもある。
exeファイルを解析し直に抜きだした物では無いため情報の信憑性は保障できない、利用する場合はその事を承知の上でお願いしたい。

AIManager@ver0.82

放置運営が理想なので
よくある間違いは自動で見つけるし、登録ミスを減らすためには労力を惜しまない。

AIManager@ver0.82
・エラーチェックを強化
・テスト実行機能を追加。
・多重起動すると動作がおかしくなる可能性があったため、多重起動を禁止した。

一番上は、存在しないパスを指定して送信できなくした。
二番目は試しにその設定でAIが動いてくれるかチェックする機能。
登録時に本当にこれでいいのか?と不安になって質問する人が来るだろう事が予想されたので
先手を打って質問することなく気軽に試せるようにという意図。
三番目は念のためってだけ。
可能性自体は大分低いんだけど、エラー起こりうるなら禁止しといたほうが後のためかなって。
別に多重する必要性あるアプリじゃないしね。

あとは、サーバー側の問題さえどうにかすればとりあえずAIManagerは一息つけるかな。
にしても、バリバリ更新すると言っておきながら機能追加以外ではツールスレに投下出来ない俺チキン。

th123_ai(仮)の進捗報告その10+α

バグ修正だけとか、もう進捗じゃないよねって気もする。せっかくの10個目なのにね。
ついでにAIManagerも更新。

th123_ai.zip@ver0.86e
・ver0.86よりobj_disおよびobj_dis2で未発見時10000ではなく2147483647を返していた不具合の修正。
・中間ファイルが削除されずそのまま放置される事があった不具合の修正

AIManager@ver0.81b
・対象キャラクターが複数であるAIを表示する方法が無かった不具合の修正
・メインウィンドウ(AIリスト)のタイトルバーにバージョン表記を追加

10000ではなく2147483647(4バイト限界)を返していたのは、以前ブレイジングスターが消えないというバグを聞いて検証した時に変更してそのままだった。
別にこのままでもいいんだけど下位互換がなくなるので修正。
中間ファイルはth105_ai.iniが存在するという前提で処理をしていてこけていたせい。
”複数”が表示不能は絞込条件作り忘れただけ。
バージョン表記はぶっちゃけ自分用、なきゃ更新忘れる。

get_obj_hitareaバグは根が深そうなのでまとまった時間が取れるまで放置なんだ、すまない。
いや、まだまともに見たわけでもないんだけど、思い当たる原因どおりなら下手すると丸1日かかるレベルの大問題のはず。


ここからは雑談。
AIManagerのおかげで導入はものすごく楽になったんですが、未だにデッキ整備の問題が大きい。
これを何とかしたいなと思うけど、キー操作経由以外で干渉する気が無いので手が無い。
起動してプロフ製作しデッキ整えてキャラセレに入るところまで自動化する?
ないない、そんなの逆に不便になること確実だし。
うーむ、何か良い手は無い物か。

紫AI@電車の人ごめんなさい

AIManagerで紫AI@電車の説明文が欠けている気がして気になっていたのですが、出社1時間前という今になって原因が判明したので急いで修正。

AIManager@ver0.81a
・意図しない文字数制限により、説明が256文字以上送信できていなかった不具合の修正。
・AI送信時に例外エラーを吐く事があった不具合の修正

256制限とかテストしたつもりでしてなかったよという話。
いや、本当にもうごめんなさい。

送信時例外はバッファオーバーフロー、といっても説明文2000字超えないと出ないはずだから前Verでは関係なかったはず。


あ、それと針巫女で星蓮船のNノーコンクリアしました。
といっても22日の時点で既にクリアしていて書き忘れていただけだけど……w

抱えオチ:6ボム
クリア時残機:2
クリア時残ボム:2
合計:12ボム余裕あり
一番残機落としたステージ:4面

後が無く好き勝手できるからだろうけど、4面>5面+6面ってぐらい4面難しかった。
4面は開始時点残機MAXでクリア時4機切ってるとかなんなの……

wordpressアップデートによる不具合?

このブログはwordpressというphpアプリで動いているのですが(ドメイン名のwordpressもそこから来ている)
アップデートしないとウイルスにかかると聞いて試みたところ予想外の問題に遭遇して時間をつぶしました。

以前のVerは覚えてませんが、2.8.4-jaへのアップデートによって起きた問題です。
ただ、wordpressというよりはphp側のバグにも見えるのでなんともいえない。
経緯は以下の通り。
・自動アップデート中に止まる
・そのせいなのか管理画面の表示がおかしい
・仕方ないので手動アップデートを試みる
・無事成功したが管理画面はおかしいまま
・調べてみるとCSSがtext/htmlで来ているせいだとわかる
・該当のphpファイル(wp-admin/load-styles.php)を覗けばきちんと付加しているように見える
・中途処理で上書きされていると考え、付加する処理を末尾に移してみる
・直った

問題なのは、詳しく調べてみたら中途処理による上書きではなく
単純に二回目以降のheaderでないとContent-Typeが正常に指定できないらしいという事。

以下、問題のコード
header(‘Content-Type: text/css’);
header(‘Expires: ‘ . gmdate( “D, d M Y H:i:s”, time() + $expires_offset ) . ‘ GMT’);
こうすれば動く(順番入れ替えただけ)
header(‘Expires: ‘ . gmdate( “D, d M Y H:i:s”, time() + $expires_offset ) . ‘ GMT’);
header(‘Content-Type: text/css’);
こうしても動く(無駄にheaderを呼ぶだけ)
header(‘:’);
header(‘Content-Type: text/css’);
header(‘Expires: ‘ . gmdate( “D, d M Y H:i:s”, time() + $expires_offset ) . ‘ GMT’);
ちなみに、一度目のheaderを完全に空文字で呼ぶと動かない。

原因不明、というか挙動的にまっとうな動作には見えない。
これはバグなのではなかろうか?
ちなみにサーバの仕様覗いてきたらphpのVerは5.2.5だそうです。

一晩明けて

AIManagerを色々調整
いや、日付変わってませんけど(寝る時間がおかしいだけ)

AIManager@ver0.81
・絞込み条件の小町と衣玖の位置が逆だった問題の修正
・リストを保存しておく事で、ネットに繋がらなくとも動くように変更。
・サーバ上のAIが更新されていない場合はローカルの物をそのまま起動するように変更。
・AIの起動に失敗したらメインウィンドウを再表示するように変更。
・メインウィンドウ起動時、デフォルトで全てのAIを表示するように変更。
・リスト上でAIが選択されていない場合は「起動する」ボタンを押せないように変更。
・「全てチェック」ボタンと「全て外す」ボタンを使用不能時は押せないように変更。

位置は単純に配置ミス、保存機能はぶっちゃけおまけ。
ローカル起動はなきゃ不味いだろと今更思い当たったので急遽追加。
起動失敗時は多分立ち上げなおすよねって事で利便性向上。
デフォルトは全表示が基本だって偉い人が言ってた!
UIは単純に判りやすくするため。 選択することで押せるようになる→選択されたものを実行するのか!というように理解が進む事を意図しています。

ところで、誰か登録してくれた人が居るんですが説明が中途半端に見える。
もしかして、送信にバグがあって欠けてる……?

完成!

th123_ai用AI登録&読み込みツール「AIManager」完成しました
AIManager@ver0.80
使い方その他は中のReadme参照。
といっても、GUIだから黒窓と違って起動してみれば大体判るとは思う。

完成すら危うんでいたのにまさか連休中に完成できちゃうとは自分でもびっくり。
以前は死ぬほどGUIが苦手で、ダイアログの外見作るだけで半月ぐらいかけていたわけですが、いまや赤子の手を捻るかの如くで細部まで凝っても30分もかかりません。
まさかこれほどスキルアップできているとは、伊達に仕事で修羅場を潜り抜けたわけでは無いらしい。

一通り動作確認はしましたが、徹夜に近い頭なのできっとバグ凄いと思います。
本運用は連休明け当たりからかなー

着々々々

メイン画面になる予定のダイアログのSSをペタリ

・サーバーサイド(実装完了)
・ZIP圧縮(実装完了)
・送信処理(実装完了)
・リスト表示(9割完了)
・受信処理(8割完了)←今この辺
・展開処理(未着手)
・実行機能(未着手)
あれ? 予想に反して完成が見えてきている、だと……
連休パワーすごいな。

着々々

趣味では初めてまっとうに作ったダイアログ@調整中Ver

ここまでくるとバレバレですが、文章の上ではあくまで秘密。
いや、だってこれ絶対途中でやる気尽きてgdgdになるって!

着々

・サーバーサイド(実装完了)
・ZIP圧縮(実装完了)
・送信処理(8割完了)←今ここ
・リスト表示(未着手)
・受信処理(未着手)
・展開処理(未着手)
・実行機能(未着手)
何の話かって? 秘密です。

関係ないけど星楽しい、むっちゃ楽しい。
N通しプレイはいまだクリアできず最高でラスペ
UFOのせいで安定せずだいたい6面ボス中に残機尽きる。
というか、体験版時代に3面終了時点残機MAX余裕だったはずなのになぜか毎回4機程度しか残せていないのが最大の敗因な気がする!