2024年2月16日金曜日

AIちゃんにサファイアボム用のタイマーを作らせました


 前回と同様ChatGPT3.5で遊びました。

ここ」から SBombTimer.zip をダウンロードしてください。(v1.3に更新しました)

解析等の規約にかかるような行為はしていないので問題ないと考えていますが、使用は自己責任でお願いします。

Chromeちゃんが不審なファイルとか言ってくるかもしれませんが、許可してやってください。


* windowsにひっかかる場合は詳細情報から実行してやってください


使ってみて問題なさそうならフォルダをセキュリティから許可してあげるとその後の使用もスムーズです


デルメゼのサファイアボムの起爆時間を記録して、次の起爆時間を表示するタイマーです。(一応時報音もなります)

各種設定はConfig.iniを編集すると変更できます。

サウンドはmp3を差し替えることで変更できます。


- 使い方 -

大雑把に使い方を書きます。Readmeもあるんでそちらも見てください。


ゲーム内左上に表示されているタイマーに合わせてスタートキー(初期設定ではF12)を入力することでSBombTimerをスタート。
スタートすると音がなり裏でカウントダウンタイマーが開始します。(表示の時間は変わらない)
再度スタートキーを押すとタイマーをリセットできます。
 * 初期設定では19:59で戦闘開始直後にスタート想定

* 開始前(1940に設定、色が初期設定では水色)

* 開始後(1940に設定、スタートキー押下で表示が切り替わる)


サファイアボムが発生したタイミングで記録すると、画面の表示が次の起爆時間に切り替わります。
記録は複数できます。
スクランブルサファイア、ブリリアントサファイアも記録でき、1回押せばその後のボムの生成配列が自動で記録されます(1回目はスクランブル、2回目はブリリアント)
記録タイミングを正確にしたい場合は、最初のボム発生ではなく次のボム発生のメッセージに合わせるといいです
 * サファイアボムの記録キー(log_key_a)は初期設定ではhomeキー
 * スクランブル、ブリリアントの記録キー(log_key_b)は初期設定ではendキー


* サファイアボムを記録 次の起爆に表示が切り替わる


スクランブルサファイア、ブリリアントサファイアはボムの出現上限に引っかかると消えるまで次の出現が発生しないのでズレる場合があります。
その時はincrement_key(初期設定PageUpキー)、decrement_key(初期設定PageDownキー)で起爆時間の記録をズラして対応できます。


ちなみにタイマーが動作していない時にincrement_key、decrement_keyを押すと開始時間を一時的に変更することができます。
タイマーを押し忘れた時の対処に使ってください。

ここらへんの実装が適当なせいで連打してるとたまにエラー落ちするかもしれません、ChatGPTに文句いってください。

2024年2月5日月曜日

AIにAIカウント補助するやつ作らせてみた

ChatGPT3.5に適当に作らせてみました

ここでいうAIカウントとは主にDQ10で使われる謎の用語のことです

[ここ] から AICount.zip を落として解凍すれば使えます
セキュリティとかは多分引っかからないと思うけどわかりません
pyinstallerで適当にexeにしたんで起動はもっさりしてるかも

特に解析とかしてないんで外部ツール的な規約はセーフじゃないかな多分
使う場合は自己責任でお願いします

自分の環境でちょっと使ってみただけなんでバグあったらすみません
ChatGPTに文句いってください

どういうものなの?

指定したキーを入力するたびに数字のカウントを進めるだけのプログラムです
指定した数字に達したら1に戻ります


見た目はこんな感じ

元に戻る数字は2つ設定できて切り替えることが可能
フォントカラーとかも設定できます
カラー指定するときの名前は適当にググってください



以下ざっくり作らせた時にした命令なんかを参考程度に


まずはどの言語で作成するかなど根本的な部分を指定

* PythonでGUIを作成したい。
* PyQtを使用する。


ざっくりと簡単にやりたいことを設定


* 数字を表示する。
* 数字の左にAIという文字を追加する。
* 特定のキー(カウントキー)を入力したときに数字を1から2,3と増やしていく。
* カウントキーの初期設定はCtrlキーに設定する。
* 適当なライブラリを利用し、ウィンドウがアクティブでない場合でもカウントを行えるようにする。

* 特定の数字(リセットナンバー)に達したら、次にカウントキーを入力した場合1に戻る。
* リセットナンバーの初期設定は3に設定する。

* もう一つ別にリセットナンバー(リセットナンバー2)を設定し、切り替えられるようにする。
* カウントキーと同様に特定のキー(チェンジキーとする)を押すたびに切り替えられるようにする。


設定ウィンドウとか作らせるの面倒そうなので別ファイルから設定を読み込むように


* Config.iniを作り、そこからリセットナンバー(両方とも)、カウントキー、チェンジキーを読み込む。
* 数字の左に追加したAIという文字をConfig.iniで変更できるようにする。


表示の調整とか機能の追加


* ウィンドウを常に最前面に表示する。

* 数字は中央に表示する。
* フォントはメイリオに設定する。
* フォントサイズは24に設定する。
* フォントカラーをConfig.iniで設定する。

* フォントにアウトラインを設定する。
* アウトラインカラーをConfig.iniで設定する。
* フォント及びアウトラインをアンチエイリアス。

* ウィンドウの背景を透過する。
* ウィンドウのどこをドラッグしてもウィンドウを移動できるようにする。

* 数字の手前にリセットナンバーの状態を表示できるようにしたい。
* 小さい文字で1と2の表示を切り替えるようにする。
* カウントしている数字のフォントカラーもリセットナンバーの状態で切り替えるようにする。

* 小さい文字(1と2)の表示の有無をConfig.iniで設定できるようにする。
* フォントカラーをConfig.iniで設定できるようにする。
* 小さい文字を表示する座標をConfig.iniで設定できるようにする。


最後に使いやすくするための設定


* ウィンドウを右クリックをしたときに別のウィンドウを開きたい。
* 開いた別のウィンドウに"終了"と"戻る"ボタンを配置。
* 終了を押したらプログラムを終了する。戻るを押したらウィンドウを閉じる。

* アイコンを設定したい。
* exeにするときにicoを内蔵し、それを読み込んでプログラムのアイコンを変更したい。



やってみた感想


GPT3.5でもわりと単純なコードならさくっと作れて便利(自分で書いた方が早いとかは言わないように)
ただエラーの沼にはまると抜け出せないので、新規チャットにコード貼り付けてやりなおした方がいいことが結構ある

後から根本的な部分変えるのは難しいので、段階的に機能を追加するようにするといい

ちなみにGPT4とかになると飛躍的に性能やらできることやらが増えるので課金してください