この記事はノーベル賞や科学的成果のふりをするものではなく、広告を自動的に表示するための2つのオプションを作成しただけで、友人が気に入ったので、この記事を書くことにしました。
ロボットは、そうではなく、機能するはずだからです。
子供の頃から、私はあるレーシングシリーズのファンでしたが、新しいモバイルバージョンを見つけたとき、そして無料でさえも-私は喜んで驚きました。 すぐに私はそれが無料だった理由に気づきました-ゲーム内での購入は、地域の平均月給1つか2つで引き出されますが、文字通り最近のAAAクラスのゲームのようです。 実際のお金がなければ、プロセスは非常に遅かった。 しかし、あなたは広告を見ることができ、特にゲームの初めに、それはすべてを十分に増加させ、すぐに気にします。 特に、同じ広告が5〜10回連続して表示される場合。 また、ボタンは(ケースの99.9%で)同じ場所にあります。 実際、最後の1つは、私が複数のサーボマシンとアルデュインを持っていることを思い出させ、そのような本当に機械的な仕事を機構に任せる必要があります。
スキームは非常に単純です:
黄色(または赤、そのような人)のサーボワイヤー-アルドゥインカの10ピンと11ピン、
+ 5Vから接地しますが、サーボ(容量性スクリーン)のレバーを接地する必要があります。
しかし、コードはすぐには機能しませんでした。
#include <Servo.h> Servo servo1; Servo servo2; void setup() { servo1.attach(10); servo2.attach(11); pinMode(LED_BUILTIN, OUTPUT); } void blynk(int cnt) { for (int i = 1; i <= cnt; i++) { digitalWrite(LED_BUILTIN, HIGH); delay(11); digitalWrite(LED_BUILTIN, LOW); delay(11); } } void hitit(Servo servo, int wait) { servo.write(180); delay(500); servo.write(90); for (int i = 1; i <= wait; i++) { delay(1000); blynk(1); } } void loop() { blynk(2); hitit(servo1, 35); // click get stuff and wait for adverts blynk(4); hitit(servo2, 15); // close advert blynk(2); hitit(servo1, 10); // click collect reward delay(2000); }
後で、ここでINT型が非常に小さく、遅延(35 * 1000)が機能しないことを思い出しました。
まあ、大丈夫、私は毎秒点滅させました、これは楽しいプロジェクトです、私は本当にその瞬間に掘りたくありませんでした。 そして、C ++と厳密な型に関連するものはすべて、私のものではなく、非常に避けています。
たくさんの名刺を使って、彼は電話の高さを調整しました。
また、最終的に私は彼らが私に与えたスポーツ用品を使用していると言うことができます、少なくとも彼からの箱は重宝しました。
最も困難なことは、指を使わずにサーボのレバーを押すことに画面を反応させることでした。 友達はすでに、私の経験よりも本当の人間の指を見つける(または取得する)方が簡単だと言っています。 帯電防止フィルム(ビデオカードとハードドライブを梱包したもの)、いくつかのタイプのホイルを試しました。
最後に、彼はこれらのレバーを作り、正しいプラッシュに印刷しました。
プラットフォームの下で、レバーはプラスチシンを貼り付け、機能するホイルで包み、両方のホイルの先端を回路の地面に持ってきましたが、多かれ少なかれ機能していました。
次のようになります(ほとんどの広告をトリミングして「サーバーに接続」した後):
このすべてのアクションの意味(プロセス自体からのファンとそれを見た友人の顔を除く)は1つの写真にあります。
ゲームの最初と途中では、これはかなり深刻な、リソースの絶対無料の増加です。
後の段階でも-それはまだ素晴らしいボーナスです。毎日の使用=週に多く、月に多く。
これにはいくつかの欠点がありました。
- 毎回電話を所定の位置に配置する必要がありました、±数ミリメートル-動作しません
- 時々あなたは充電とarduinoを接続する必要があります-常に
- しばらくして、誰もが理由を知っていても、画面がフォイルのタッチに応答しなくなりました-書き込み、私はまだ興味があります(そして帯電防止フィルムははるかに速く動作しなくなりました)。
私はまだ最後の点に興味がありますが、2番目の方法を見つけ、最初の方法に長い間戻りませんでした。
小さなプログラムnircmd.exeと電話エミュレーターが必要です。
目的のゲームをインストールします(ネットワークゲームで簡単に機能するか、保存を前後にドラッグする必要があります)。
全画面で実行します。
画面をクリックする必要があるたびにスクリーンショットを撮ります(最初に、広告のために「何かを得る」ボタンをクリックします)。 次に、たとえば、ペイントに挿入し、鉛筆ツールで右下からクリックするこの要素の座標を確認します。
次に、このようなものを得ました:
:loop rem hit get reward nircmd setcursor 1600 950 nircmd sendmouse left click TIMEOUT 40 rem hit three points where close ads usually are nircmd setcursor 1777 70 nircmd sendmouse left click TIMEOUT 1 nircmd setcursor 1212 60 nircmd sendmouse left click TIMEOUT 1 nircmd setcursor 170 100 nircmd sendmouse left click TIMEOUT 40 rem hit reconnect just in case nircmd setcursor 1000 866 nircmd sendmouse left click TIMEOUT 3 rem hit collect reward nircmd setcursor 1600 950 nircmd sendmouse left click rem wait all windows to close and start all over TIMEOUT 3 goto loop
このコードを.batファイルに保存します。たとえば、mine-gimmemoney.batのように、その隣にnircmdプログラムがあります(C:\ Users \%USERNAME%に置いて、コンソールからすぐに実行できます。特別なゲーム中毒の場合は、オートロードに追加できます)エミュレータの発売に伴い、私はまだ苦労しています。
まれに、数日に一度、広告が縦画面レイアウトで表示されます。
エミュレーターとarduinoバージョンの両方で、これにより問題が発生しました。
Arduinoバージョンはこれに対応していませんでしたが、このスクリプトではこれがすでに考慮されており、過去数か月間、スクリプトは一度も停止していません。
また、接続が失われた場合、「繰り返し」ボタンのクリックがここに追加されます。これは非常に頻繁に発生します。
マイナスは1つだけです-エミュレーターはフォアグラウンドにあり、フルスクリーンで展開されている必要があります。
エミュレータの最小化されたアプリケーションにマウスクリックを送信することが比較的簡単であると誰かが知っている場合は、それを前面に配置してフォーカスを送信することもせずに、朝のダニを読んでいる間に最小化されたままでいることが完璧であることを教えてください。
なぜこれだけなのか。
私はこのゲームに約300rを投入し、彼女が3000rと30.000 + pの両方を喜んで食べることに気付きました。
ここでは、リソースのセットまたは車の進歩は、しばしばAAAゲーム、±3000rとして表されます。
これは多少進歩しますが、素晴らしい利点はありません。これはゲームの日中に統合できます(車ではないが、ゲームの終了までこれらのセットを4〜5セット購入できます。この車は10台しかありません)。
これらの2つの方法は、一方で私を楽しませ、他方では、それは多くの人が夢見ているのは、たとえゲーム内であっても、楽しくてめったに達成できない「受動的収入」です。
私は皆が楽しいプロジェクトと理想的にはそれらからの受動的な収入の海を願っています。