【動作しない】AutoHotKey V2.0 で クリッカーゲーム Cell To Singularity の連続クリックを半自動化する

-------- 20250514 追記 --------
昨日まで動作していたがなぜか今日は機能しない。
対策されたのかも。でもバージョンは昨日と同じ。

とはいえ、開発者の方々はゲームの進捗を早めるグッズを有料にして利益をえているわけだし、こういうのを公開するのは営業妨害になる。
開発者の皆様、余計な手間を増やして申し訳ありません。

今はもう機能していないため、記事はAHK2.0の使い方の参考例として残しておこうと思います。
-------- 20250514 追記おわり --------

Cell To Singularity というクリッカーゲームをやり始めた。生物の進化、文明の発展をテーマにしたもの。面白い。
モルダウ(いまはブルタバと学校では習うらしい)が音楽として流れていたりして、文明を発展させるという意味では似たようなゲームの Civilization 4 を思い出す。
カノン砲ユニットを量産していた時代に流れていたように記憶している。

クリッカーゲームはクリックし続けたほうがゲームがより早く進むので、それを自動化しようというはなしである。
チートである。ごめんなさい。

もうあとちょっとでミッション達成できるのに...... 待ち切れない!というときに使うようにしている。
このゲームではスペースキーを押した場合もマウス左クリックと同等の挙動になるので、スペースキーを1秒以上押し続けると連射(10回/秒)するようにした。

ほぼ参考ページの流用だが、Cell To Singularityがアクティブな場合にだけ機能するように HotIfWinActive #HotIf ブロックで囲っている。

;-------------------------------
; Cell to Singularity
;-------------------------------
#HotIf WinActive("ahk_exe CellToSingularity.exe")
; スペースキーを1秒以上押し続けていると連射モードになる
; https://compota-soft.work/archives/31917
~$Space::
{
  If !KeyWait("Space", "T1")
  {
    While GetKeyState("Space", "P")
    {
      Click
      Sleep 100
    }
  }
}
#HotIf

今回の件に直接関係ないが、exeファイルにスペースが含まれる場合は下記のように `s とすればよい。

;-------------------------------
; Shadow Tactics
;-------------------------------
#HotIf WinActive("ahk_exe Shadow`sTactics.exe") ;パスに含まれるスペースは`sとする 
XButton1::^ ;戻るボタン
XButton2::Space ;進むボタン
#HotIf

👉️ https://ahkscript.github.io/ja/docs/v2/misc/EscapeChar.htm

参考にしたサイト

まずAHK2.0対応のスクリプトなのがうれしい。細かい解説もとても参考になった。
compota-soft.work

Markdownのコードにバッククオートを含める方法。ダブルバッククォートを使えばよいらしい。
qiita.com