FRep

プログラム【Skipハート送信】

2021年6月23日より、ツムツムゲーム内表示は友だち本人が設定した名前に変更(以前と同じ設定に戻る)になりました。これにより、残念ながらマーク飛ばしは使えなくなります。

2020年8月頃から、LINE友だちの名前がツムツムのゲーム内でも自分で設定した表示になりました。それにより、友だちの名前に特定のマークを付けて、「そのマークがあったら送信を飛ばす」という事が可能になりました。以前からの方法(リア友を非表示削除する・ゼロスコアのリア友をランキング送信から飛ばす)よりも確実で使いやすくなったと思います。

この【マーク飛ばし=Skip】のプログラムを作成しましたのでご紹介します。こちらはランキングからハートを送信するプログラムです。関数にしてお使いください。

■プログラム【Skipハート送信】(こちらの記事です)
プログラム【Skip高速ハート送信】
■プログラム【Skip回復待ちハート送信】…coming soon

【Skipハート送信】は【Skip高速ハート送信】からなるべく変数を取り除いたプログラムです。送信時間は若干長くなりますが、【Skip高速ハート送信】よりも簡単になっていると思います。
【Skip回復待ちハート送信】はskipと回復待ちを組み合わせたプログラムです。

いずれのプログラムも初心者レベルではありませんので、詳細な説明は省略して解説します。ある程度は知識が必要な為うまく動かない場合はご自身で修正出来る方にお勧めします。こちらを読んでご自分なりのプログラムに作り替えてご使用ください。

 

スポンサーリンク

概要

準備として、ツムツムのランキングに載っているがハートを送信したくない友だちに、LINEで名前の先頭にマーク飛ばし用のマークを付けておきます。お勧めは画像認識がやりやすい【□】(白い四角)です。

プログラムを実行すると、マークを付けた友だちをスキップしてハートを送信しません。このプログラムはハートが回復していない(青)場合はそのままスルーしてランキング送信を続けます。

Skipする為には、ハートとSkipマークを確実に画像認識する必要があります。スワイプにズレがあると同じ段でのハートとSkip両方の画像認識ができません。その為、スワイプは1人ずつとしました。4人スワイプで変数を使用して4段分を分ける事も可能ですが、プログラムがより複雑になる事、裏画像認識を使用すれば速度は落ちない事により1人スワイプを採用しました。


(1)ズレ無し。ハートとSkip両方見える
(2)この程度のズレならば両方見える
(3)ハートは見えるがSkipマークが見えない
(1)と(2)は良いが(3)ではSkipプログラムが正確に動かない。つまり(3)にならない様にズレ補正スワイプが必須。

ズレ補正スワイプについてはこちらをご覧ください。

 

送信の様子

マーク飛ばしSkipハート送信

※音量にご注意ください

こちらの動画はプログラム【Skip高速ハート送信】(スクショにBMP使用)です。

送信の様子は当プログラムと同じですが、送信時間が変わります。

■【Skipハート送信】BMP :H291+S16+T4=合計311件で18分5秒
■【Skipハート送信】API :H291+S16+T1=合計308件で16分33秒
■【Skip高速ハート送信】BMP:H292+S16+T1=合計309件で14分2秒
■【Skip高速ハート送信】API:H294+S16+T1=合計311件で14分4秒

送信時間は端末により違いますので参考程度にお考えください。

 

変数

このプログラムで使用した変数です。

変数内容
end91ランキング最下段送信
100ランキング2位~最下段2番目
1011位
Hposiハートの位置

ログ作成有りの場合はこれ以外に各種カウント用の変数などがあります。

 

座標

このプログラムで使用する座標です。端末ごとに座標は変わりますので自分の端末に当てはめて考えてください。

このプログラムではランキング4人分を1~4段目として考える

※解像度:720×1280の端末使用の場合:画像認識の作り方とスクショの位置によって座標は変わる

■2段目ハートの画像認識位置→y:557
■ランキング枠2段目の画像認識位置→y:532
■ランキング枠と2段目の差:557-532=25
■自分2段目画像認識の位置→y:569

ハートが無くてランキング枠や自分画像認識をした際には差分を足すことでスワイプ判定に使える。つまり、ランキング枠2段目+25=2段目ハート位置となる。

自分画像認識では-37すれば2段目ハート位置となるが、1度スワイプが逆になる程度は問題ない。プログラム簡略化の為に自分判定では調整無し=必ず短めスワイプとした。

 

ログ作成なしのプログラム

移動元No.プログラム概要判定移動先補足
 1変数end=91  
422区分【91】最下段ハート送信   
 3待機   
 4画像認識ハート画像認識成功53段目
    失敗6 
45画像認識skip画像認識成功113段目
    失敗8 
46画像認識ランキング[枠]画像認識成功113段目
    失敗7 
67画像認識自分画像認識成功113段目
    失敗40失敗はエラー処理へ
58タッチ操作ハートタップ 画像認識の結果をタップ
 9タッチ操作OKタップ  
 10タッチ操作ミッションタップ  
5,6,711変数end=100 13スワイプなし
 12区分【91】最下段ハート送信  
11,4213区分1人ハート送信  
27,2814待機   
 15画像認識ハート画像認識成功162段目
    失敗18 
1516変数Hposi=num:@lastmatch.y 17ハートy値
1617画像認識skip画像認識成功252段目
    失敗21 
1518画像認識ランキング[枠]画像認識成功202段目
    失敗19 
1819画像認識自分画像認識成功202段目
    失敗40 
18,1920変数 Hposi+25 25 
1721タッチ操作ハートタップ 横600,縦Hposi位置
 22タッチ操作OKタップ  
 23画像認識1位画像認識成功301段目 ・ 裏画像認識(スクショ無し)
    失敗 
 24タッチ操作ミッションタップ 26 
17,2025画像認識1位画像認識成功301段目
    失敗26 
24,2526IF長短スクロールどちら?>54527ハート位置・枠位置から決定
    ≦54528ジャストは557だがスワイプ精度により長めを
2627記録1人分短めスクロール 14 
2628記録1人分長めスクロール 14 
 29区分1人ハート送信  
23,2530変数終了フラグ end=101  
4631ループ1位送信  
 32タッチ操作ミッションタップ  
4233待機   
 34画像認識ランキング画像認識成功枠ではない
    失敗40 
 35画像認識skip画像認識成功491段目
    失敗36 
3536画像認識ハート画像認識成功371段目  タップ有
    失敗49 
3637タッチ操作OKタップ  
 38ループ1位送信 31,↓ 
 39スクショスクリーンショット 4815回ループしても復帰出来なければ諦める
7,19,3440ループエラー処理ループ  
 41画像認識ランキング画像認識成功42枠ではない
    失敗43 
4142SW復帰先を選択end=100131人ハート送信へ  ※1
    end=912最下段ハート送信へ
    end=101331位送信へ
4143画像認識OKリトライ画像認識成功45 
    失敗 
 44画像認識とじる画像認識成功45 
    失敗 
43,4445タッチ操作ミッションタップ  
 46ループエラー処理ループ 40,↓ 
 47 スクリーンショット 10回ループしても復帰出来なければ諦める
3948待機  中断 
35,3649待機  完了 

FRepプログラム

FRepプログラム

FRepプログラム

FRepプログラム

※1
プログラム戻り位置を制御
FRepプログラム

ログ作成有りのプログラム

Skipした回数とハートをスルー(自分&ハートが回復していない)した回数もカウントします。但しスルーとSkip両方が該当する場合にはスルーのみをカウントし、1位がスルーの場合はカウント無しです。また、エラーがあった際は重複してカウントする場合もあります。

移動元No.プログラム概要判定移動先補足
 1変数最初に0設定 ※1
512区分【91】最下段ハート送信   
 3待機   
 4画像認識ハート画像認識成功53段目
    失敗7 
45画像認識skip画像認識成功63段目
    失敗10 
56変数Scnt+1 14 
47画像認識ランキング[枠]画像認識成功93段目
    失敗8 
78画像認識自分画像認識成功93段目
    失敗48失敗はエラー処理へ
7,89変数Tcnt+1 14 
510タッチ操作ハートタップ 画像認識の結果をタップ
 11変数Hcnt+1  
 12タッチ操作OKタップ  
 13タッチ操作ミッションタップ  
6,914変数end=100 16スワイプなし
 15区分【91】最下段ハート送信  
14,5116区分1人ハート送信  
32,3317待機   
 18画像認識ハート画像認識成功192段目
    失敗22 
1819変数Hposi=num:@lastmatch.y 20ハートy値
1920画像認識skip画像認識成功212段目
    失敗25 
2021変数Scnt+1 30 
1822画像認識ランキング[枠]画像認識成功242段目
    失敗23失敗はエラー処理へ
2223画像認識自分画像認識成功242段目
    失敗48 
22,2324変数Tcnt+1 , Hposi+25 30※2
2025タッチ操作ハートタップ 横600,縦Hposi位置
 26変数Hcnt+1  
 27タッチ操作OKタップ  
 28画像認識1位画像認識成功351段目 ・ 裏画像認識(スクショ無し)
    失敗 
 29タッチ操作ミッションタップ 31 
21,2430画像認識1位画像認識成功351段目
    失敗31 
29,3031IF長短スクロールどちら?>54532ハート位置・枠位置から決定
    ≦54533ジャストは557だがスワイプ精度により長めを多くした
3132記録1人分短めスクロール 17 
3133記録1人分長めスクロール 17 
 34区分1人ハート送信  
28,3035変数終了フラグ end=101  
4636ループ1位送信  
 37タッチ操作ミッションタップ  
5138待機   
 39画像認識ランキング画像認識成功枠ではない
    失敗48 
 40画像認識skip画像認識成功411段目
    失敗42 
4041変数Scnt+1 58 
4042画像認識ハート画像認識成功441段目
    失敗43 
4243変数Tcnt+1 58これ削除してもいいかも?
4244変数Hcnt+1  
 45タッチ操作OKタップ  
 46ループ1位送信 36,↓ 
 47スクショスクリーンショット 5815回ループしても復帰出来なければ諦める
8,23,3948ループエラー処理ループ  
 49変数Ecnt+1  
 50画像認識ランキング画像認識成功51枠ではない
    失敗52 
5051SW復帰先を選択end=100161人ハート送信へ  ※3
    end=912最下段ハート送信へ
    end=101381位送信へ
5052画像認識OKリトライ画像認識成功54 
    失敗 
 53画像認識とじる画像認識成功54 
    失敗 
52,5354タッチ操作ミッションタップ  
 55ループエラー処理ループ 48,↓ 
 56 スクリーンショット 10回ループしても復帰出来なければ諦める
 57変数err=2 エラー有、途中で終了
41,43,4758区分送信完了 ログ作成  
 59変数送信前待機の時間を記録 ※4
 60変数送信ログ作成 ※5
 61IF送信前待機が190秒以上はエラーdelay<19062通常180秒
    delay≧19063 
6162変数遅延ゼロにする delay=0 64 
6163変数遅延秒数設定 エラー文字列設定64※6
62,6364クリップボード 完了 
 65区分送信完了 ログ作成 完了 

FRepプログラム

FRepプログラム

FRepプログラム

FRepプログラム

FRepプログラム

FRepプログラム

※1
ログ作成とエラー制御が不要の場合は【end=91】のみでも可能
FRepプログラム

※2
Tcnt+1 , Hposi=lastmatch.y+25:スワイプ判定用に+25して、ランキング枠のy値→2段目ハート位置に
FRepプログラム

※3
プログラム戻り位置を制御
FRepプログラム

※4(プログラムスクショは59)
ログ作成でstmの値が変わる前に送信前待機の時間を記録
FRepプログラム

※5(プログラムスクショは60)
送信ログ作成
FRepプログラム

FRepプログラム
FRepプログラム

※6(プログラムスクショは63)
遅延があったなら[err=3]をセットし(フルオートプログラムで使用)、送信ログに遅延秒数を追加
FRepプログラム

 

まとめと修正情報

とりあえずBasic版も作成しました!

半分は自分自身の忘備録となっております。間違い・記入漏れ・説明不足等ありましたらご指摘ください。

コメント

  1. せい より:

    マーク飛ばしが使えないのでどうやったらリア友を飛ばせますか?

    • かのん かのん より:

      *リア友を非表示削除して、ランキングに表示しない様にする
      *(リア友がスコア0の場合)ランキングのゼロスコアの人に送信しないプログラムを作る
      *自分が親型になって、ランキングからハート送信しない
      私が思いつくのは、こんな感じです。

  2. せい より:

    そうなんですね(>_<)

スポンサーリンク
タイトルとURLをコピーしました