Automator
ゲームを進めると使用可能になる「Automator」の手引き。
作成中
基本的なこと
テキストエディタ換算での文字数制限がある。
1つのスクリプトは10000文字以下、全てのスクリプトの合計は60000文字以下に納める必要がある。これをオーバーすると動作しない。
Automater コマンド一覧
コマンドのうち、下線部はお好みで書き換え。
[角括弧内]は記述するかどうかで挙動が変わる。
テキストエディタで記述する場合、一部を除き大文字・小文字は区別されない。
Time Studyの操作
STUDIES RESPEC(次のEternityでのRespec予約)
「Respec Time Studies on next Eternity」をオンに設定するのと同様の挙動を行う。
オフにするコマンドは存在しない。
STUDIES LOAD(Time Studyをリストから読み込み)
- STUDIES [NOWAIT] LOAD ID 読み込むセットの番号(1-6)
- STUDIES [NOWAIT] LOAD NAME 読み込むセット名
Time Studyタブに設定しておいたリストから読み込む。
「LOAD ID」は、リストの番号を指定して読み込む。左端が1番で右端が6番。
「LOAD NAME」は、リストのセット名を指定して読み込む。セット名は大文字と小文字の区別があるため正確に指定すること。
「NOWAIT」を付けた場合、取得できなかったTime Studyアップグレードがあれば無視する。
付けていない場合、リストに含まれるTime Studyを全て購入するまで試行する。
共存できないもの(例:IdleルートとPassiveルートを含むリストを読み込む)があると止まるので注意。
STUDIES PURCHASE(Time Studyの購入)
- STUDIES [NOWAIT] PURCHASE 購入するTime Study
購入するTime Studyの表記方法は、Exportした時の文字列のように指定する。
カンマ(,)で区切ることで複数のTime Studyをまとめて指定でき、最後にバーティカルバー(|)+数字を指定することで、Eternity Challengeの挑戦権も購入することができる。
Defined Constant(後に解説予定)を指定することも可能。
一部のアップグレード群をまとめて購入する場合、特殊な文字列を使って指定することができる。
文字列 |
指すもの |
相同な表記 |
antimatter |
7~10行目の「Antimatter Dims」全て |
71,81,91,101 |
infinity |
7~10行目の「Infinity Dims」全て |
72,82,92,102 |
time |
7~10行目の「Time Dims」全て |
73,83,93,103 |
active |
12~14行目の「Active」全て |
121,131,141 |
passive |
12~14行目の「Passive」全て |
122,132,142 |
idle |
12~14行目の「Idle」全て |
123,133,143 |
light |
22~23行目の「Light」全て |
221,223,225,227,231,233 |
dark |
22~23行目の「Dark」全て |
222,224,226,228,232,234 |
「NOWAIT」を指定した場合、取得できなかったTime Studyアップグレードがあれば無視する。
記述例
STUDIES NOWAIT PURCHASE 11,22,32,42|5
Time Studyの11,22,32,42,EC5を取得する。取得条件を満たさなかったものは無視する。
STUDIES PURCHASE 11-62
Time Studyのうち、番号が11以上62未満の数値であるものを全て取得するまで待つ。
イベントのトリガー
INFINITY(Infinityを行う)
Automator側でInfinityができなかった場合、実行されるまで待機される。
以下のETERNITY、REALITYにも共通することだが、Automatorがこの行を処理しようとするタイミングでAutobuyerによる自動Infinityが発生すると、
「このタイミングではもうInfinityできないので待機」となってしまう。
これが起こり続けるとAutomatorの処理が止まってしまうので、AutobuyerでInfinityを行わせたい場合は「WAIT INFINITY」を使った方が安定する。
「NOWAIT」を指定した場合、Infinityができなかった場合、無視して次の行に進む。
ETERNITY(Eternityを行う)
- ETERNITY [NOWAIT] [RESPEC]
Automator側でEternityができなかった場合、実行されるまで待機される。
「NOWAIT」を指定した場合、Eternityができなかった場合、無視して次の行に進む。
「RESPEC」を指定した場合、これによりEternityが行われた時にTime StudyのRespecを行う。
REALITY(Realityを行う)
- REALITY [NOWAIT] [RESPEC]
Realityを行う。Automator側でRealityができなかった場合、実行されるまで待機される。
「NOWAIT」を指定した場合、Realityができなかった場合、無視して次の行へ進む。
「RESPEC」を指定した場合、これによりRealityが行われた時に全てのGlyphを外す。
UNLOCK EC(Eternity Challengeをアンロックする)
- UNLOCK [NOWAIT] EC Eternity Challengeの番号(1-12)
指定したチャレンジの挑戦権アップグレードを購入する。
すぐに購入できない場合、購入可能になるまで待機する。
チャレンジは開始しない。
「NOWAIT」を指定した場合、当該アップグレードを購入できなかった場合、無視して次の行へ進む。
UNLOCK DILATION(Time Dilationをアンロックする)
「Unlock Time Dilation」アップグレードを購入する。
すぐに購入できない場合、購入可能になるまで待機する。
「NOWAIT」を指定した場合、当該アップグレードを購入できなかった場合、無視して次の行へ進む。
START EC(Eternity Challengeの開始)
- START EC Eternity Challengeの番号(1-12)
指定された番号のEternity Challengeに挑戦できるようになるまで待機した後、Eternity Challengeを開始する。
待機中に挑戦権となるTime Studyを購入できるようになった場合、自動的に購入する。
既に何らかのEternity Challengeを行っている場合、この行は無視される。
START DILATION(Time Dilationの開始)
Time Dilationを開始する。
Time Dilationが解禁されていないか、既にTime Dilation中である場合、この行は無視される。
Dilationを抜けたい場合はETERNITYコマンドで。
自動化の制御
AUTO INFINITY(Automatic Big Crunchの制御)
- AUTO INFINITY ON
- モードや条件を変えずに、Automatic Big Crunchをオンにする。
- AUTO INFINITY OFF
- モードや条件を変えずに、Automatic Big Crunchをオフにする。
- AUTO INFINITY 時間 時間の単位
- Automatic Big Crunchをオンにする。動作モードを「一定時間が経過」に変更し、その時間を指定する。
- AUTO INFINITY 倍率 X HIGHEST
- Automatic Big Crunchをオンにする。動作モードを「獲得IPが前回のInfinityの…倍になった場合」に変更し、その倍率を指定する。
- AUTO INFINITY 閾値 IP
- Automatic Big Crunchをオンにする。動作モードを「獲得IPが一定以上となった場合」に変更し、その閾値を指定する。
AUTO ETERNITY(Automatic Eternityの制御)
※ このコマンドを使用するためには、Eternity Milestoneの「100 Eternities」を取得する必要がある。
- AUTO ETERNITY ON
- モードや条件を変えずに、Automatic Eternityをオンにする。
- AUTO ETERNITY OFF
- モードや条件を変えずに、Automatic Eternityをオフにする。
- AUTO ETERNITY 時間 時間の単位
- Automatic Eternityをオンにする。動作モードを「一定時間が経過」に変更し、その時間を指定する。
- AUTO ETERNITY 倍率 X HIGHEST
- Automatic Eternityをオンにする。動作モードを「獲得EPが前回のEternityの…倍になった場合」に変更し、その倍率を指定する。
- AUTO ETERNITY 閾値 EP
- Automatic Eternityをオンにする。動作モードを「獲得EPが一定以上となった場合」に変更し、その閾値を指定する。
AUTO REALITY(Automatic Realityの制御)
※ このコマンドを使用するためには、Realityアップグレード「Effortless Existence」を取得する必要がある。
- AUTO REALITY ON
- モードや条件を変えずに、Automatic Realityをオンにする。
- AUTO REALITY OFF
- モードや条件を変えずに、Automatic Realityをオフにする。
- AUTO REALITY 閾値 RM
- Automatic Realityをオンにする。動作モードを「獲得RMが一定以上となった場合」に変更し、その閾値を指定する。
「Glyph Level」「Either」「Both」に切り替えることはできない模様。
BLACK HOLE(BLACK HOLEの制御)
- BLACK HOLE ON
- BLACK HOLEのPAUSEが解除され、発動もしくはクールダウン開始される。
- BLACK HOLE OFF
画面上部のPauseボタンと同じ挙動をする。上記以外の動作は不可能。
可視化
NOTIFY(通知を出す)
この行が実行されると、指定された文字列の通知を表示する(右上に青いボックスが出現する)。
文字列はダブルクォーテーション(")で囲む必要がある。
注釈
この行の文字列を注釈(実行されない)として解釈する。
行の先頭に書く必要がある。行の途中でコメントとすることは不可能。
条件分岐
WAIT(条件を満たすまで待機)
条件式を指定した場合、その条件式を満たすまでの間、待機し続ける。
- WAIT INFINITY
- WAIT ETERNITY
- WAIT REALITY
ソフトリセットを指定した場合、指定されたソフトリセットが実行されるまで待機し続ける。
PAUSE(一定時間待機)
指定された時間だけ待機してから次の行に進む。
IF(条件分岐)
IF 条件式{
(条件式を満たした場合実行)
}
条件式を満たした時、波括弧内の命令を一度実行する。
WHILE(条件を満たしていればループ)
WHILE 条件式{
(条件式を満たしている限りループして実行)
}
条件を満たしている限り、何度でも波括弧内の命令をループして実行する。
UNTIL(条件を満たすまでループ)
UNTIL 条件式{
(条件式を満たしていない限りループして実行)
}
こちらはWHILEとは逆に、条件を満たしていない限り、波括弧内の命令をループして実行する。
STOP(AUTOMATORを停止する)
この文が実行された場合、AUTOMATORの処理が停止する。
スクリプトの再実行をオンにしていても再実行されない。
参照可能変数
以下の値は条件分岐などで参照可能である。
変数 |
内容 |
AM |
Antimatterの所持量 |
IP |
Infinity Pointの所持量 |
EP |
Eternity Pointの所持量 |
RM |
Reality Machineの所持量 |
INFINITIES |
Infinity回数 |
BANKED INFINITIES |
Banked Infinity回数 |
ETERNITIES |
ETERNITY回数 |
REALITIES |
REALITY回数 |
PENDING IP |
Infinity時に獲得できるInfinity Point |
PENDING EP |
Eternity時に獲得できるEternity Point |
PENDING TP |
Time Dilation終了時に獲得できるTachyon Particle |
PENDING RM |
Reality時に獲得できるReality Machine |
PENDING GLYPH LEVEL |
Reality時に獲得できるGlyphのレベル (Realityできない場合は0として扱われる) |
DT |
Dilated Timeの所持量 |
TP |
Tachyon Particleの所持量 |
RG |
Replicanti Galaxyの所持量 |
REP |
Replicantiの所持量 |
TT |
未使用のTime Theoremの量 |
TOTAL TT |
Time Theoremの合計量 |
SPENT TT |
使用中のTime Theoremの合計量 |
TOTAL COMPLETIONS |
全てのEternity Challengeの達成回数の合計値 |
PENDING COMPLETIONS |
現在受領中のEternity Challengeの達成回数 (Eternity Challenge中でない場合は0として扱われる) |
EC(数値) COMPLETIONS |
特定のEternity Challengeの達成回数 ※ECと数値の間にスペースを空けてはいけない |
比較演算子
2つの要素の間に比較演算子を置くことで、その比較が正しいかどうかを判定する。
比較演算子は以下の4つのみ使用可能である。
- 前者が後者より大きい(>)
- 前者が後者より大きいか同じ(>=)
- 前者が後者より小さい(<)
- 前者が後者より小さいか同じ(<=)
主流なプログラミング言語と異なり、「同値」「同値でない」「論理和」「論理積」といった演算子は存在しない。
したがって、EC1の達成回数がちょうど1回である場合に処理を行わせたい場合、
IF EC1 COMPLETIONS >= 1 {
IF EC1 COMPLETIONS <= 1 {
(処理)
}
}
のように記述しなければならない。
時間の単位
- 「ms」:ミリ秒(1/1000秒)を単位とする
- 「s」「sec」「seconds」:秒を基準とする
- 「m」「min」「minutes」:分(1分=60秒)を基準とする
- 「h」「hours」:時(1時間=3600秒)を基準とする
この他にも、「分:秒」「時:分:秒」といった指定も可能。
定数の作成
右側のウィンドウ上の「Modify defined constans」ボタンから、定数を作成することができる。
作成した定数はプログラムのソースコード内で側で使うことができ、視認性の向上などの効果がある。
作成するためには、並んだボックスの左側に名前を、右側に「数値」または「Time Studyのテンプレート」を入力。
名前は20文字、数値/テンプレート250文字まで入力可能。
Automatorではできないこと
- 操作
- Dimensionを購入する(→Autobuyer)
- Normal Challenge、Infinity Challengeを行う
- Replicantiアップグレードを購入する(Eternity Challenge8を自動でクリアする際に問題になりうる)
- Time Study以外のアップグレード、Time Theoremを購入する(→Perks)
- スクリプトの複数起動
- 値
- 現在受領中のチャレンジ番号
- Time Dilation中であるかどうか
- Replicanti Galaxies最大数
- Realityで得られるGlyphの種類・レアリティ・効果(→Glyph Filter)
- 値の和差積商
など、できないことも多い。
実行例
仕様だけ載せても理解が難しいと思うので、ちょっとした例を載せてみる。
例:Eternity Challenge 1-1のクリアを自動化
ここではPerkの「ECR(Eternity Challenge 1のEternity回数条件を撤廃)」を取得していない状態を想定している。
テキストエディタ版(一応、このままコピー&ペーストで使用可能)
IF EC1 COMPLETIONS <= 0 { |
IF TOTAL TT >= 130 { |
IF ETERNITIES >= 20000 { |
# 自動Infinityを5秒おき、自動Eternityをオフ(Automatorに任せる)に設定 |
AUTO INFINITY 5 SEC |
AUTO ETERNITY OFF |
# チャレンジ用のTime Studyに切り替えてからチャレンジ開始 |
ETERNITY RESPEC |
STUDIES PURCHASE 11,22,32,42,51,61,infinity,111,active,151,161,171 |
START EC 1 |
# 目標達成時に自動でEternityを行う |
ETERNITY |
# 自動Eternityの設定を元に戻す |
AUTO ETERNITY ON |
} |
} |
} |
ブロックエディタ版
ENTER BLOCK IF |
EC1 COMPLETIONS |
<= |
0 |
ENTER BLOCK IF |
TOTAL TT |
>= |
130 |
ENTER BLOCK IF |
ETERNITIES |
>= |
20000 |
CHANGE AUTOBUYER SETTING |
INFINITY |
5 SEC |
|
CHANGE AUTOBUYER SETTING |
ETERNITY |
0 EP |
|
RESPEC TIME STUDIES |
|
|
|
PAUSE AUTOMATOR UNTIL |
ETERNITY |
|
|
PURCHASE STUDIES |
|
(略) |
|
START |
EC |
1 |
|
PAUSE AUTOMATOR UNTIL |
ETERNITY |
|
|
自動化戦略
Realityをまるごと自動化するにはAutomatorの他に次のものがあることが望ましい。
- 地力の強化(Glyph Sacrifice解禁後だとEC攻略が楽になる)
- Time Theoremの自動化→PerksのTTS
- Eternity系機能を最初から開放する→Reality UpgradeのExistentially Prolong
- ECの一括クリア→PerksのECB
- Time Dilation以降の簡略化→PerksのSTP、EU1ルート
- 自動Reality実行→Reality UpgradeのEffortless Existence
場合分け
Time Theoremの数で場合分け
WHILE TOTAL TT <= 100 {
(STUDIESなど)
}
(ECなど)
WHILE TOTAL TT <= 200 {
(STUDIESなど)
}
ECの解禁に必要なTime Theorem量に合わせて場合分けしていく。
一括でECをクリアしたいならTTを多めに見積もれば確実にできる。
EP(IP)の量で場合分け
TTの場合とほぼ同様。WHILE TOTAL EP <= 1e100 など。
ただし、TTのようなECの条件に合わせた細かい帳尻合わせには向かないと思われるが、設計はTTより直感的。
ECをまとめてクリア出来るようになると簡潔に記述するのに役立つか・
資源稼ぎ
EPとStudy
AUTO INFINITY お好みの設定
AUTO ETERNITY お好みの設定
WHILE EPなど条件式{
STUDIES NOWAIT PURCHASE 伸ばしたいTime Study
}
ひとまずこれでStudyを伸ばしつつ目標の資源まで放置できる。
ただし、Autoの設定を大きくしすぎると成長が止まる可能性がある。
EPとTP
(Dilation解禁済み、Studyセット済みの場合)
AUTO INFINITY お好みの設定
AUTO ETERNITY お好みの設定
WHILE EPなど条件式{
START DILATION
PAUSEかWAIT
ETERNITY
PAUSEかWAIT
}
Dilationの開始時にEternityが実行され、解除もEternityでよい。
必要Time Theorem量一覧
|
最初の分岐→ |
最低量 |
左右両方(33・62無し) |
左右両方+33・62 |
Antimatter |
61まで |
17 |
27 |
32 |
111まで |
33 |
43 |
48 |
151まで |
59 |
69 |
74 |
171まで(151・171の片方) |
81 |
91 |
96 |
171まで(両方) |
88 |
98 |
103 |
Infinity/Time |
61まで |
17 |
27 |
32 |
111まで |
40 |
50 |
55 |
151まで |
66 |
76 |
81 |
171まで(151・171の片方) |
88 |
98 |
103 |
171まで(両方) |
95 |
105 |
110 |
|
最低値(Time Dimルート) |
192+201+Inifnityルート追加 |
181まで全部 |
310 |
- |
21Xまで左側(191+211+212) |
980 |
2623 |
21Xまで右側(193+213+214) |
930 |
2573 |
21Xまで全部 |
1600 |
3243 |
全自動化例
長いのでpastebinに
コメント
- たすかる。変数が欲しい・・・ (2023-01-23 08:43:58)
- UNTIL TOTAL TT <= 130 や WAIT TOTAL TT <= 130 と書いても、スキップしてくれなかったりするので、一部バグがある…?TT増加書けないし、完全自動化とは、となってる。 (2023-01-28 07:30:09)
- UNTIL migi (2023-01-28 07:45:59)
- UNTIL じゃなくて WHILE か、勘違い (2023-01-28 07:46:31)
- automatorサンプル作れそうで、後は組み合わせと文字数制限の戦いで詰めればよさそうなんだけど、サンプルそのままコピペで貼っちゃって良いだろうか (2023-01-30 14:47:58)
- UNLOCK命令もあるぜよ。ECと違い、DILATIONの場合、START命令では初回の解除をしてくれないので、UNLOCKが必要になる。 (2023-02-02 16:14:18)
- 途中で条件踏んだら、REALITYして1行目に戻る、ってしたいのに何でコマンドライン移動コマンド無いねん。 (2023-03-14 01:15:02)
- BLACK HOLE は on/off だけか。active/inactiveで動作切り替えられないかな。 (2023-03-18 10:14:15)
- WHILE(ループの最初で条件判定なので1周もしない場合がある)の逆をやるだけのUNTILじゃなくてREPEAT-UNTIL(ループの最後で条件判定なので必ず1周はする)がほしいなあ (2023-04-07 08:53:25)
- 必要Time Theoremの量って111足し忘れてない? (2023-04-11 21:58:32)
- このAutomatorにはループから抜け出すbreak文はないのでしょうか? (2023-05-18 19:44:39)
- ないね、、、 (2023-05-22 17:03:36)
- ないか、、ありがとうございます。UNTILを数珠つなぎにして何とかやりたいことを表現しました。 (2023-05-22 21:25:33)
- Glyphの装備はできないのかな?Reality時のオプションで外すことはできるみたいだけど (2023-06-08 20:57:02)
- UNTILちょっと挙動怪しくない?何回かループを繰り返したのち、条件を満たした状態で再度判定に入ったとき、本来であれば弾かれるはずが、稀にループに入ってしまうことがある。その際、括弧内の1行目をすっ飛ばすのでうまく命令を処理できず立ち往生してしまう。 (2023-09-27 18:04:29)
- これECを途中で終了(「Exit Challenge」押下時の処理)ってできないのかな?細かく処理を分岐させて完全自動化というよりも大雑把な処理だけ自動化して細かい部分は手動でやる感じのコンセプトなのかな (2023-12-26 09:44:17)
- なんか結構バグあるな・・・START DILATIONで解禁されてなかったら止まるし、IF条件満たしてないのに侵入するし・・・ (2024-07-20 13:04:00)
- これってtime dilationのアップグレード取るコマンド無いんですか (2024-12-10 00:03:16)
- ec1-1のサンプル永遠周回数の条件参照しないとstart (2024-12-10 04:12:31)
- 途中送信してしまった start ec1で止まらんか? (2024-12-10 04:13:52)
- あとdilationのアプグレ関連は全部perkにあるからautomatorにはない 頑張って周回して (2024-12-10 04:18:46)
- EC1からEC12の5回全部愚直に書いてたら普通に文字数上限ぶち当たるんかこれ? (2024-12-13 07:32:46)
- ブラックホールは自動処理で動かせるの? (2024-12-13 20:51:29)
- black hole on,black hole offができる。確かに↑の記事中には書いてないね。 (2024-12-14 18:36:15)
- ECクリア直後の行だと上手くcompletions参照してくれない (2025-01-09 01:10:04)
- ↑サンプルスクリプトの通り、SPENT TT <= 0 ってするとうまくいきます。ECクリアが速すぎたのが原因だと思います (2025-01-17 12:59:08)
- 上記のSPENT TTとか、BLACK HOLE追記しました。なんか要望あればおねがいします。 (2025-01-17 13:07:07)
最終更新:2025年01月17日 13:07