MacroDroidを使って、プログラム【ランキング固定】(変数必須)をベースに送信ログも作成する固定型フルオートプログラムを作りました。これにより、固定型と再起動型を自動的に使い分けてノータッチで月曜日を乗り切ることも可能となります。
ある程度難しい為、うまく動かない場合はご自分で修正出来る方にお勧めするプログラムです。
固定での注意点等もありますので、まずはこちらを確認してください。
注意事項
このプログラムを使用するには、ツムツムアプリをバックグラウンドにした際に、ツムツムアプリが終了しない設定にしておく必要があります。
アプリ起動-トップ入替
FRepにてツムツムやハングアウト等を起動するアプリ起動プログラムは【トップ入替】にします。【全てクリア】にするとそれまで使用していたアプリが終了になってしまいます。
FRepの設定
念の為、FRepの設定も載せておきます。【動作中はスリープしない】はデフォルト設定ですので、自分で変えていなければ[ON:チェックあり]になっているはずです。
端末設定
端末で自動終了させない設定もしておいた方が無難と思いますので、一応載せておきます。設定方法はそれぞれ機種やAndroidバージョンによって違いますので、ご自身の端末をご確認ください。
【XperiaZ3compact[SO-02G]】の場合
端末設定-バッテリー-(メニュー)-電池の最適化(又はアプリ-アプリの設定-電池の最適化)にてチェックをつけて、自動で終了させたくないアプリを【最適化しないアプリ】にします。
概要と特徴
通常はMacroDroidにて、FRep動作確認有り+ログ作成有りのフルオートを実行します。→フルオート【FRep動作確認+ログ作成】MacroDroid+FRep
日曜日22:50~月曜日12時までは固定型の【固定+再起動】フルオートプログラムを実行します。
月曜日12時以降は固定を解除して通常の【FRep動作確認+ログ作成】フルオートに戻ります。
通常→固定→通常の切り替えはMacroDroidにより自動的に行います。
固定中に別端末にて【スコア出し】をした場合は、プログラム【ランキング固定】と同様に[ハートの回復時間]の待機後に固定プログラムに復帰します。
※スコア出しの自動化について
当サイトではオートプレイは推奨しておりません。スコア出しプログラムもオートプレイに繋がる懸念があるので現在は考えておりませんのでご了承ください。
【MacroDroid】月曜日用マクロ固定
MacroDroidマクロは、基本のマクロである【FRepハート送信】の他に、【月曜日固定】と【FRep動作確認&固定解除】を作ります。
無課金の場合はそれ以外に【日時指定1回のみ】【送信機異常検知】を入れた5つがお勧めです。
基本のマクロ作成方法やその他のマクロに関してはこちらをご覧ください。
FRepハート送信マクロ
通常の【FRepハート送信】マクロです。こちらではメモリ解放アプリ起動が入っていますが無くても構いません。ショートカットで【FRep動作確認+ログ作成】フルオートプログラムを指定します。
※画像は【フルオート回復待ちv2】になっています
月曜日固定マクロ
FRepプログラムを月曜日固定型に切り替えるマクロです。
条件
日曜日22:50~23:59の間に固定プログラムに移行します。
※画像は00:00となっていますが、これだと00:00:59.999までの指定となっている事が判明しましたので【23:59】と指定してください。
月曜日になる前に固定プログラムにしたい為、ツムツムへのログイン時間等を考慮して23時より(かなり余裕持って)10分前からの指定にしました。
トリガー
通常の【FRepハート送信】マクロが61分なので、それよりも先回り(60分)して月曜日固定を実施します。
アクション
■ストップウォッチ:リスタートせずにリセットのみです。これで通常のマクロが停止します。
■待機:先回りした分の1分を待機します。
【FRepハート送信】マクロ:61分-【月曜日固定】マクロ:60分=1分
これで、通常【FRepハート送信】と同じ周期でFRepプログラムがスタートします。
■画面ON~待機10秒までは通常マクロと同じです。
■ショートカット:【固定+再起動】のFRepプログラム(後述)を指定します。
■変数を設定:再度通常プログラムへ移行する為の布石として変数を設定します。
【MacroDroid固有】→【変数を設定】→(新規変数)→
他のマクロで変数を使用する為、必ずグローバル変数にして下さい。変数名とタイプ(文字列)を指定してOKにします。
値は「実行中」にします。
FRep動作確認&固定解除マクロ
FRep動作確認(黄色枠)と固定解除(橙枠)の2つから出来ているマクロです。
FRep動作確認(黄色枠)は、FRepプログラムに「ハート送信後にFRep動作確認ボタンをタップする操作」を入れておき、正常にFRep動作していることを確認するマクロです。
内容はこちらと同じです。
■通常使用の【FRep動作確認+ログ作成】フルオートではツムツム起動前にFRep動作確認をタップ
■月曜日の【固定+再起動】フルオートでは送信終了後にFRep動作確認をタップ
橙枠の部分が【固定解除】マクロです。
条件
条件分岐により、指定された条件を全て満たす(AND)場合にのみ動作する様にします。
【MacroDroid変数】の月曜日固定が「実行中」の場合のみマクロを実行するので、固定解除は1回だけの動作になります。時刻は余裕をもって12時~14時としました。2時間あればツムツム再起動した場合でも対応できるかと思います。
アクション
■ストップウォッチ:「月曜日」をリセット&リスタート
■画面オフ:FRepキャンセルをすることにより、固定プログラムを中断します。【MacroDroid】使えるマクロ例 の【基本のマクロにプラスして使える項目】参照。FRepキャンセルは【FRepアプリ起動】によっても可能ですが、次の送信まで時間がある為に画面オフにしました。
■待機:送信終了から〇分後に発動する
ハートの回復時間を考慮して、送信終了から何分後に【FRepハート送信】マクロを実行するか指定します。
固定を解除してランキング変動した後は、回復したハートが揃うまで若干の時間が必要になります。詳細はこちら→ハートが回復する仕組みを理解しよう【送信周期の調整】
(1)前回の送信開始時間から何分後か=送信周期(60分以上)
(2)送信終了後から何分後か=(1)から送信時間を引いた時間
1と2はどちらで考えるかの違いです。今回は「FRep動作確認をタップしてから何分後」で考える方が楽だったので(2)にしました。FRepプログラムにて「FRep動作確認までの時間」ログも出せますので参考にして下さい。
このマクロ例は「FRep動作確認までの時間」が約9分だったので、55分後(送信周期は9+55=64分程度)にしました。実際の送信が何分掛かるかを考えて、それぞれ最適な待機時間にして下さい。
■マクロ実行:【FRepハート送信】マクロを実行することで、通常のマクロに戻ります。この時に【条件の追加】で【日時】→【ストップウォッチ】→「月曜日」→「超」「〇分(待機した時間)」としておくことで、手動でストップしたい場合にストップウォッチを止めることでマクロを中止に出来ます。
■変数を設定:月曜日固定を「実行中」以外(中止でもなんでもOK)にします。これにより固定解除は1回だけの動作になります。
■ストップウォッチ:「月曜日」をリセット
FRepのプログラム
【固定+再起動】フルオートプログラム
1-4:初期1回のみ実行
5-26:61分周期で繰り返すプログラム
27-42:エラー時に実行するプログラム
プログラムの説明
1.[変数]–btm=num:@now
プログラム起点位置(Basetime)を[変数btm]にセットします。FRepをずっと動かし続けるので@startは最初の1回しか使えません。@startの代わりに[変数btm]を入れておきます。
[変数stm(StartTime)]はログ作成用に【ハート送信】関数等で使用する場合も多いので[変数btm]にしました。関数で同じ変数を使うと値が混同するので違う名前にします。※変数の名付センス皆無ですみません
2.[待機]3秒–API用等の予備待機
3.[FRep動作確認 画像認識] 詳細はこちらを確認→【MacroDroid】での【FRep動作確認】
ホーム画面に置いたMacroDroidウィジェットボタンをタップする画像認識です。【FRep動作確認+ログ作成】フルオートではツムツム起動前に【FRep動作確認】を実施する為、ここでもツムツム起動前に一度【FRep動作確認】をしておきます。
4.[関数呼出]–【ツム起動】変数必須←詳細はこちらを確認
成功時には[7.BOX受取]へ、エラー時には[35.スクショ]→エラーログ出力へ移動します。
5-26.[無限ループ]61分周期で繰り返す
6.[変数]–btm=num:@now [1.変数]と同じ
初回のみ1.でツムツム起動前にbtmをセットし、このプログラム6.は飛ばして実行。2回目ループからはこの位置でbtmをセットします。
7.[関数呼出]–【BOX受取】←詳細はこちらを確認
【BOX受取】関数は必ずエラー時には中断するプログラムにしてください。操作の記録(Rec)では中断になりません。スコア出しや予期せぬエラーなどで固定解除になった場合にプログラム中断で戻り、[27.再起動]へ分岐します。
8.[関数呼出]–下までスクロール
「中断した時」が【中断】のままだとプログラムが終了となりますので【次へ】に変更します。ここではどんなエラーが起きてもそのままプログラム続行にしました。
【下までスクロール】関数
1~3は操作の記録(Rec)で1位から下位まで移動が必要の為、多めのスクロールにします。
最後に上方向にスワイプを入れて、一番下から4人分上の画面に移動しておきます。
これは、[下までスクロール]の関数プログラム実行時に、前回のハート送信から60分経過していない場合にはハートが回復していない為です。一番下画面から外で待機をして回復を待ちます。
9.[変数]btmから150秒待つ
通常の【FRep動作確認+ログ作成】フルオートと同じ時間を待機します。
(1)現在時刻(ms)であるシステム変数[@now]から[変数btm]を引いて差秒を求めwaitにセット。
(2)ms(ミリ秒)を1000で割って秒に直します。
(3)150秒からwaitを引いたものが待機秒数になります。
※ここでは先に1000で割った為、150秒は「150」で指定します。
11.[下までスワイプ]–待機の後に下までスクロールすればハートは回復しているはずです。※5.5人ではなくても大丈夫です。
12.[関数呼出]–【基本ハート送信+ログ作成】
「中断した時」を【次へ】分岐に変更しておきます。
※画像は回復待ちハート送信関数ですが他のプログラムも可能です。【基本ハート送信+ログ作成】等のログ作成出来るプログラムをお勧めします。
13.[関数呼出]–【BOX受取】←詳細はこちらを確認
「中断した時」を【次へ】分岐に変更しておきます。
14-23.[ログと動作確認]わかりやすく区間設定
15.16.[Home]×2
Homeコマンドを2回繰り返し、【FRep動作確認】の為に端末ホーム画面のTOPページ移動します。
17.[FRep動作確認 画像認識]
[3.FRep動作確認 画像認識]と同じです。固定を開始したら送信終了後にMacroDroidウィジェットボタンをタップします。
18.[変数]–FRep動作確認のタップ時間を記録し、変数ocにセット
19.[関数呼出]–【送信ログ出力】 ←詳細はこちらを確認
ハングアウトにログ出力する関数です。あらかじめ【基本ハート送信+ログ作成】にてクリップボードにログ作成しておいたログを出力します。
20.[クリップボード]–[18.変数oc]でセットした変数をクリップボードに出力します。
21.[関数呼出]–【送信ログ出力】 ←詳細はこちらを確認
[20.クリップボード]をハングアウトに出力します。
※19.21.と2回の送信ログ出力でこの様なログが作成出来ます。
この画像の場合、22:55:27に固定プログラムをスタートしています。
動作確認はbtmセットからの時間(画像は9分2秒)です。ランキング人数等で時間が変わってきます。固定解除の待機時間の参考にしてください。
22.[ツムツムアプリ起動]
「トップ入替」でツムツムを起動し、ランキング画面に戻ります。トラブルが無ければ固定を継続したままランキング画面に戻れます。
23.[ログと動作確認区間]終了
24.[変数]61分周期–btmから61分待つ
[9.btmから150秒待つ]と同じです。61分なので60秒×61分=3660秒となります。画像は3610:60分10秒になっています。固定だとこの周期でも可能です。
25.[待機]wait–変数waitを指定 [10.待機]waitと同じです。
26.[無限ループ]–5へ戻って無限ループ
27-42.[再起動(エラー時)]わかりやすく区間設定しました
28.[ツムツムアプリ起動]トップ入替
何らかの原因でツムツムを表示していない(ホームに戻っただけ等)場合、ツムツムが終了されていなければ起動するだけでランキング画面に戻れる可能性もあります。一応タスク履歴を「トップ入替」にして起動させてみます。
29.待機3秒–アプリが切り替わるのを待ちます
30.[ループ]–【とじる】をタップする為のループです。念のため12回ループにしました。
(1)イベント告知 ×3回
(2)ログインボーナス ×5回
(3)月曜日用報酬 ×2回
合 計 予備入れて 12回
31.[ランキング画像認識]←詳細はこちらを確認
うまくランキング画面に戻れたら[7.BOX受取]に分岐します。「成功時に***タップ」のチェックは外しておきます。直前に待機3秒があるので判定は0秒にしました。
32.[各種とじる画像認識]←詳細はこちらを確認
他アプリ起動や通信環境によりミキピョンが出た場合には、ログインボーナス等のポップアップが出る時があります。【とじる】タップによりポップアップを消してランキング画面に戻ります。
ランキング画像認識(失敗)で撮ったスクショで判定できますので、スクリーンショットを撮るのチェックを外します。
33.[ミッションタップ]–間隔3.0秒(待機後タップ)
念の為、待機の代わりにミッションタップを入れました。もし[Tap To Start]画面にいてもこの位置のタップならば問題ありません。ホーム画面にはこの辺りにアプリアイコンは置かないでください。
34.[ループ終了]–12回
35.[スクリーンショット]←詳細はこちらを確認
もしランキング画面に復帰できなければ、その時のスクリーンショットを撮ります。
36.[クリップボード]–「固定エラー」文字をクリップボードに出力します。
37.[関数呼出]–【送信ログ出力】 ←詳細はこちらを確認
[36.で出力した文字]をハングアウトのエラーグループに出力することにより、いち早くエラーに対処できます。
38.[関数呼出]–【ツム起動】変数必須←詳細はこちらを確認
初めからツムツムを起動させることにより復帰を試みます。それでも復帰出来なければ諦めてそのままプログラムを中断=終了します。
39.[関数呼出]–【BOX受取】←詳細はこちらを確認
[ハート回復待ち待機]の前に一度ボックス受取をしておきます。ここでもエラーになったら諦めてそのままプログラムを中断=終了します。
40.[変数]–btmから[ハートの回復時間]待つ
[9.btmから150秒待つ]と同じです。
[ハートの回復時間]についてはプログラム【ランキング固定】の【概要と特徴】(エラー時)をご覧ください。
ex)10分:60秒×10分=600秒、20分:60秒×20分=1200秒
41.[待機]wait–変数waitを指定
[10.待機]waitと同じです。待機後は[6.変数]に分岐します。
42.[再起動(エラー時)区間]終了
まとめと修正情報
少し長くなりましたが、ノータッチで月曜日を乗り切るフルオートを作成しました。
記事を書いている途中で、
■ログ有りの基本ハート送信送信プログラム
■FRep動作確認有のフルオートプログラム
これらの記事があったら良かったと気が付きました。
この2つは、基本的な考え方や説明の記事は書いたものの、実際のプログラムを記事にしていなかった為に解りにくかったかもしれません。
ということで、次回はこの2つの記事を書く予定です!→作成しました!
コメント
一つ質問したいです、ツムツムのハートフルオートのやり方を詳しく教えて下さい、個別の指導などしてくれるとありがたいです…
こちらをお読みになり1つずつ作成していくことでフルオートが完成します。
個別指導はしておりません。
フルオート送信までの道のり
https://autofrep.net/process/
Frepの動作が終わったのを検知するにはどうすれば良いですか