==============

▼はじめに▼
東方緋想天および東方非想天則の製作者様。
そして、th123_aiの製作者様。
また、各々ＡＩ製作者様やスレの方々、このＡＩを手に取っていただいた方々。
敬意と感謝を表明致します。

当スクリプトは、東方緋想天および東方非想天則用ツール『th123_ai』用スクリプトです。
それ以外でのご利用では、動作の保障はできません。また、当スクリプトによって不利益を被っても保障はできません。

当スクリプトは、公式のものではありません。
従って、黄昏フロンティアや上海アリス幻樂団へのお問い合わせは、絶対にしないでください。

当スクリプトはオープンソースです。ご自由にお扱いください。
改造やその公開も歓迎します。

----

▼First things▼
To the creators of Touhou Hissouten and Touhou Non-Soutenshoku.
And to the creators of th123_ai.
I would also like to express my respect and gratitude to the creators of each AI, the people in the threads, and the people who have taken this AI into their hands.
I would like to express my respect and gratitude.

This script is for "th123_ai", a tool for Touhou Hissouten and Touhou hisoutenkoku.
We do not guarantee the operation of this script for any other use. We do not guarantee the operation of the script if you suffer any disadvantage from it.

This script is not an official one.
Therefore, please do not contact Dusk Frontier or Shanghai Alice Ghengaku-dan for any inquiries.

This script is open source. Please feel free to use it as you wish.
You are welcome to modify it and publish it.


==============

◆使用方法

『th123_ai.exe』を実行後、『000_all_stand_by.ai』を読み込ませ、『vs Player』で対戦してください。

必要であれば『th123_ai.exe』は管理者権限で実行してください。

非想天則用として調整しているため、緋想天ではうまく動作しません。

環境によっては文字コードの変換が必要になるかもしれません。

==============

■全キャラAI詰め合わせ（しなうす式）

当方が作成している全キャラ対応汎用AIです。

キャラごとで黒窓を落とし、ツールの再起動をする手間を省きます。

ステージ【核融合炉心部】においては超反応モードになります。

それ以外のステージの場合、ランダムでガードとグレイズの反応精度が変化します。

----

■An assortment of AI for all characters (shinaus style)

This is a generic AI for all characters that we are creating.

It drops a black window for each character and saves you the trouble of restarting the tool.

In the stage [fusion reactor core section], it will be in super reaction mode.

For other stages, the reaction accuracy of guards and greys will change randomly.


----更新履歴というか覚書---
▼20261104
幽々子、421スキルと214スキルの条件を雑実装。幽々子は一旦終了。次へ。
残り、紫、萃香、鈴仙、文、チルノ、美鈴、諏訪子の７キャラ。公開のため、雑スキルを封印。

▼20261103
幽々子、236スキルと623スキルの条件を雑実装。

▼20261021
チルノ、美鈴、諏訪子の雑スキル仮実装（使用条件未設定）完了。
幽々子、紫、萃香、鈴仙、文、チルノ、美鈴、諏訪子の雑スキルの条件調整を開始。

▼20261007
萃香、鈴仙、文の雑スキル仮実装（使用条件未設定）完了。あと、チルノ、美鈴、諏訪子。

▼20261006
萃香の雑スキル実装開始。スキル名、ID等のみを変更するのみに留めて、全キャラの雑スキルの仮適用を優先。

▼20260326
幽々子、紫の雑スキル実装。実装の確認と条件の調整は後回し。あと、萃香、鈴仙、文、チルノ、美鈴、諏訪子。

▼20260323
現状確認。妖夢AIの雑スキル終了とみなし、幽々子、紫、萃香、鈴仙、文、チルノ、美鈴、諏訪子は雑スキルを実装する
幽々子の雑スキルは一切手が入っていないのを確認。

▼20260128
AIManagerを使用すると、AIリストが上書きされる。また、AIManagerからのDLに失敗するとAIが削除される案件が生起。
AIManagerの２次配布を停止し、th123_aiと既存AIの配布に移す

▼20250731
妖夢の半霊座標演算を組み込んだが、なんだか挙動がおかしい

▼20250713
妖夢の雑スキル終了。半霊の位置取得について、オブジェクトの先頭から変わらないため、my_obj_x[1]およびmy_obj_y[1]で取得。

▼20250630
妖夢の雑スキル開始

▼20250612
アリスの雑スキル終わり。調整は後回し。

▼20250610
move_attakeoverhead_exe関数の条件設定ミスを修正 -> 棒立ちの要因。よくチルノがホバリングして止まっていた
lowattack_aflags_condi関数の条件を追加 -> 同上
overheadattack_aflags_condi関数の条件を追加 -> 同上
ほかにも棒立ちの原因があるようだが調査中
search_state_obj関数の復帰　-> 小町の霊魂で使ってたので
上記修正に伴い ver20220713 あたりから生じていたと思われる意図しない動作の修正

▼20250609
一旦更新
スクリプトを ver20221106 -> ver20230617++ に更新
Lunaよりかマシな程度のAI。雑に全てのスペルカードとスキルを使用
（※アリス、妖夢、幽々子、紫、萃香、鈴仙、文、チルノ、美鈴、諏訪子は雑スキルが未実装）
おすすめのデッキはありませんが、霊撃、銭、ガード反撃を入れるとやられづらくなります

更新度の差（雑スキルが実装されているか否か）：
霊夢、魔理沙、咲夜、パチュリー、レミリア、小町、衣玖、天子、早苗、空  ->  アリス、妖夢、幽々子、紫、萃香、鈴仙、文、チルノ、美鈴、諏訪子

search_state_obj関数の削除
search_obj_range_in_enemy関数の追加
calc_pos_doll関数の追加
gaus_value関数の追加

▼20250302
有志から協力により消失していたデータを獲得
ver20230617より再始動

▼20241225
ツール製作者氏よりたぶん復旧しない旨の告知

▼20241126
AIManager（一部AIスクリプト込）の再配布を再開

▼20241118
AIManagerのサーバーが消失したことを認知
また、ストレージからのサルベージ失敗によるデータ消失

▼20230705
雑スキル実装中。
済み：霊魔咲ア　->　データ散逸

▼20230617
雑スキルの実装中。
咲夜完了。
済み：霊夢、魔理沙、咲夜

動作確認にて、
enemy_act_count[i] = 0
を原因とするAIの動作停止が生起した。
enemy_act_count[i] = 10000
にすることで、一応は回避した。
negaカウンタによる特定行動の回避に使用していたが、使用不能になっている可能性が考えられる。
後日、調査する。

▼20230614
雑スキルの実装中。
咲夜開始。
コメントは終了。コード記述は後日に。
済み：霊夢、魔理沙

ガードルーチンの更新は一時凍結。
幽々子の固め更新は一時凍結。

▼20221107
雑スキルの実装中。
魔理沙終了。
かなり不完全だが、それにも関わらず時間がかかるので、このまま行く。
済み：霊夢、魔理沙

▼20221106
雑スペカは一旦終了。雑スキルに移行。記述のインテンドは趣味なので気が向いたら調整する。
スキルの記述を統一するため、既に実装しているキャラも要確認。
済み：霊夢

▼20221105
諏訪子のスペカが思ったよりも発動しないので雑スペカにおけるmath.randomの設定値を192から64に変更。

▼20221104
諏訪子の立ち、しゃがみ、空中、地中をfflagで判断。
use_card関数内でループしていたので、main関数内でuse_card関数をループする処理を修正する。

▼20221103
美鈴のand抜けを修正。
全キャラの雑スペカ使用条件におけるmath.random函数設定値を192に変更。

▼20221101
全キャラにおいて雑スペカを実装中。
　→　途中で、card_use()がfor文を挟んでいないのに気づく。どうしよ
妖夢、うどんげ、チルノ、美鈴、諏訪子の実装。
　→　諏訪子のモーション別条件はまた今度
スペカは一応終了。
　→　次回からスキカ

▼20221024
全キャラにおいて雑スペカを実装中。
咲夜、アリスAIにおける雑スペカを実装。
スペカ：霊夢、魔理沙、咲夜、アリス、パチュリー、レミリア、幽々子、紫、萃香、文、小町、衣久、天子、早苗、空は実装済み。
　→　妖夢、うどんげ、チルノ、美鈴、諏訪子の実装予定

▼20221020
全キャラにおいてブッパ方式スペルカードを実装中。
紫、萃香、文AIにおけるブッパ方式スペルカードを実装。
スペカ：霊夢、魔理沙、パチュリー、レミリア、幽々子、紫、萃香、文、小町、衣久、天子、早苗、空は実装済み。
　→　咲夜、アリス、妖夢、うどんげ、チルノ、美鈴、諏訪子の実装予定
　　→　終わったら、スキルカードに移行。
　　　→　次に打撃
　　　　→　次に射撃
　　　　　→　運動や機動（大会で見たやつとか知らないのがある）

▼20221019
全キャラにおいてブッパ方式スペルカード、スキルを実装中。
全キャラが雑にスペルカードを使うようになりました。
幽々子AIにおけるブッパ方式スペルカードを実装。
幽々子AIに実装したスペルカード記述を、紫、萃香、文に移植。

▼20220715
全キャラにおいてブッパ方式スペルカード、スキルを開始。
霊夢、パチュリー、レミリア、小町、衣久、天子、早苗、空は実装済み。
霊夢AIにおける記述ミスを修正。
魔理沙AIにおけるブッパ方式スペルカードを実装。

▼20220713
全キャラにおいて一定のコード整合作業を実施。
これにより主に運動が以前と変化。
霊夢AIにおけるブッパ方式スペルカード、スキルを実装。

▼20220706
衣玖AIを基準に整合作業。
汎用函数ストレージの更新。
霊夢～幽々子、レミリア、小町、衣玖、天子、早苗、空に適用。
霊夢～幽々子（レミリア除く）は運動・機動の記述整合がまだ。
整合時に生じた反射行動の項の組込途中。
今後condi＆exe命名に変更していく。

▼20220704
衣久AIにおいて、システムカード「龍魚の羽衣」を準備する条件において、「宵越しの銭」を構えていた記述を修正。
衣玖AIにおいて、珠符「五爪龍の珠」と龍魚「龍宮の使い遊泳弾」のカードIDが逆転していた記述を修正。
hidamenozoku関数の条件設定が不十分だった部分を修正。

▼20220620
レミリア、小町、衣玖、天子、早苗、空AIにおいて始点から射撃objガードまでと終端機動２を整合。

▼20220617
レミリア、小町、衣玖、天子、早苗、空AIにおいて共通部分のコードを整合（途中）。

▼20220609
レミリア、小町、衣玖、天子、早苗、空AIにおいてコードの整合作業開始。
sabot函数の多重起動を修正。

▼20220608
衣玖AIを更新しました。
スキル、スペルカードを全種雑にぶっぱで使っていきます。
行動データ取りとそれに基づく攻撃行動がなんかある程度形になっていました。
たぶん、20210226更新のせい。

▼20220601
レミリア、小町、天子、早苗、空において
ぶっぱ方式によるスキル、スキルカード、スペルカードの使用を更新しました。

▼20210226
衣玖を雑に更新しました。
速度や加速度演算を更新しました。

▼20210217
弾を認識しないバグを修正しました。

▼20210209
sabot関数群を更新しました。
共通グレイスの一部条件を修正しました。
全キャラに影響を与えていた行動を変更しました。

▼20210207
天子の攻撃精度を変更しました。
咲夜を雑更新しました。
def_calcを更新しました。これに伴い、全体的にバグが出ているかも。

▼20201121
天子の行動を変更しました。

▼20201121
妖夢の行動を変更しました。
パチュリーの行動を変更しました。

▼20201025
レミリア、小町、早苗、お空の記述を、最近更新した早苗AIのものに整合しました。
これに伴い、早苗以外の３キャラの行動が少し変わっています。

▼20201022
早苗用AIがスペルカードを使うようになりました。
また、ホールド攻撃を振るようになりました。

▼20201022
早苗用AIがスキルを一通り振るようになりました。
早苗用AIの攻撃条件を大きめに変更しました。

▼20201021
早苗用AIが通常技を一通り振るようになりました。

▼202010xx
久しぶりに更新を再開しました。

==============

▼関連作品▼Related works
・12.3th Touhou project 東方非想天則 -超弩級ギニョルの謎を追え-
・10.5th Touhou project 東方緋想天 -Scarlet Weather Rhapsody-
当スクリプトを動作させる際には、以上のいずれかのソフトが必要です。
To run this script, you will need one of the above software.

▼関連ツール▼Related Tools
・th123_ai＠ver0.96
・AIManager＠ver0.88a（使用できなくなりました）

▼非想天則ver1.10aへの対応▼
http://wikiwiki.jp/th123ai/?ini%A5%D5%A5%A1%A5%A4%A5%EB%C0%DF%C4%EA
非想天則ver1.10aへの対応は、『SWRSAddr.ini』の書き換えによって行います。
なお、旧verも上記iniファイルの導入により、1.10aで起動可能になる。
Support for Hisoutensoku ver. 1.10a will be done by rewriting "SWRSAddr.ini".
Note that the old ver will also be able to start with 1.10a by installing the above ini file.

▼関連サイト▼Related sites
・東方緋想天/非想天則AIツール Wiki
http://wikiwiki.jp/th123ai/

▼関連スレッド▼
・萃磨選堆　東方緋想天掲示板　AI関連スレッド2
https://jbbs.shitaraba.net/bbs/read.cgi/game/44334/1247234329/
挨拶や感想、ＡＩやその作成に関する話題や質問等はこちらに。

・萃磨選堆　東方非想天則掲示板　非想天則関連ツールスレッド5
https://jbbs.shitaraba.net/bbs/read.cgi/game/48698/1282026075/
ＡＩツールが更新された場合、概ね、このスレッドで公開されていました。

===============