アプリビレッジ

おすすめのゲーム・スマホアプリの情報やストーリーなどの濃い話(ネタバレ含む)、面白い口コミまでもひっそりと公開中!

簡単にできるUWSCを使ったゲーム自動化のプログラミング【応用編】

公開:2021年05月15日

ゲーム自動化を行うためのマクロを何回かに分けてご紹介してきました。今回は応用になります。前回までのプログラミングでは補いきれなかった部分になりますので、これを読めばマクロがより便利で使いやすくなるはずです。

今回紹介する追加プログラムはこちらになります。

  1. 待ち時間を作る
  2. ランダムを作り不規則にする
  3. カーソルの位置を記憶し、元の場所に戻す
  4. テキストボックスを表示
  5. ループの回数指定とカウント表示
  6. メールの送信

興味のあるプログラムは見つかりましたか。それでは詳しく紹介していきましょう!

1位:忍者マストダイ

2022年12月14日に緊張感&疾走感あふれる高速忍アクションの登場!
反逆の旗を掲げた少年と共に宿命の渦に巻き込まれていくストーリーもかなり熱い。
最近のアクションゲームの中でもトップクラスの面白さです。絶対遊んでみてね!

2位:勝利の女神:NIKKE

幻塔の運営が2022年11月4日にリリースしたTPSアクションゲーム
爽快なゲーム性と美少女のお尻が魅力で、スマホゲームとは思えないほどめっちゃ面白い!
敵を狙ったり、物陰に隠れたり、本格射撃ゲームが好きな人はぜひ遊んでみて!

3位:三國志真戦

全世界で5,000万ダウンロードを突破した『三國志・戦略版』の日本語版!
三国志の舞台をした究極の戦略性と公平性でめっちゃくちゃ面白い!

4位:モリノファンタジー:世界樹の伝説

縦・横画面切替可能な驚きのシステムが導入された新感覚の森秘境冒険MMORPG。
自分の分身となるキャラをとことんまで育成して、他のプレイヤーと協力したマルチプレイが面白い。
一人で遊ぶより、みんなで遊びたい人におすすめ!

5位:ドルフィンウェーブ

2022年10月20日よりサービスを開始したストラテジーRPG
爽快ジェットバトルになっており、遊んでいてめっちゃ楽しいぞ!
水着の美少女たちが活躍するゲームを探しているならぜひ遊んでみて!

6位:モンスター娘TD

2022年10月25日にiOS / Android版をリリースしたタワーディフェンスRPG!
DMM版がベースになっているだけあって、ハチャメチャな展開が面白い。
ストーリーも楽しみたい人におすすめです!

7位:三国覇王戦記

2018年3月28日にリリースされた縦持ちで遊べる本格ストラテジーゲーム!
最高レベルのグラフィックで三国志の世界を体験しちゃおう。
フルアニメーションで躍動感ある動きを見せてくれるリアル武将は必見!

8位:チョコットランドSP

チョコットした時間にかんたん操作で誰でも気軽に冒険できる大人気RPG!
パソコン、スマホ、どっちでも遊べるのが魅力です。
スタミナなしでプレイ時間は無制限になっていますよ。
装備を集めてオシャレを楽しんだり、かわいいペットと遊んだり、楽しい冒険に出かけよう!

9位:Merge Mansion(マージマンション)

2020年9月16日にリリースされた新感覚の箱庭系パズルゲーム
よくある3マッチパズルかと思いきや、重ねて育てるマージパズルという新しいシステムになってします。
時間を忘れて遊べるので、暇つぶしを探している人におすすめです!

10位:テイルズウィーバー : SecondRun

キャラの数だけ紡がれる壮大なストーリーが美しく懐かしい2DオンラインRPG!
いつでもどこでもだれとでも、好きなだけ楽しめる協力バトル!
数百種類のドットアバターあり、自分だけのキャラクターが作れるぞ!!

11位:魔石騎士団 : Puzzle War

固有スキル×ギミックを駆使するめっちゃ面白いドラマチックパズルRPGの登場!
魔石の力に目覚めた主人公が、仲間を集めて運命を切り開いていく!
個性豊かなキャラを集めて、自分だけの最高の騎士団が作れるぞ!

12位:Echocalypse -緋紅の神約-

2022年10月20日、ついにサービス開始のケモノ娘の神殺しRPG
戦況が一変するパーティバトルがめっちゃ面白いぞ。
可愛いケモノ娘たちが織りなす終末世界の物語をぜひ体験しよう!

13位:特攻魂~喧嘩上等!

不良たちの戦いを描いたヤンキーバトルRPG!
仲間を集め、ヤンキーたちとの喧嘩に明け暮れ地域を制圧し、最強を目指そう!
新規プレイヤー限定の5日間で合計2530連のガチャが熱い!

ゲーム自動化を止める待ち時間を作る

ゲームを自動化させていた、もっとも考えるのが行動のスピードです。オンラインゲームが増えた昨今では何でもかんでも素早くクリックしているとエラーが発生してしまいます。なので、何かの行動をする前、した後に少し間を取りたいことってありますよね。その悩みを解決するのがSLEEPです。使い方は簡単。

SLEEP(秒)

止めたい部分に入れて秒数を指定すればOK。0.01秒まで対応しており、例えば0.1秒止めたいならsleep(0.1)、12秒止めたいならsleep(12)ですね。

ゲーム自動化でランダムを入れて不規則にする

皆さんが心配している中に、同じ行動をずっと繰り返していたらバレてしまうというものがあるかと思います。サーバーでプレイヤーの行動を全てログとして捉えていたら、確かに同じ行動は怪しい行動だと思われるでしょう。まあ、サーバーの負荷が上がるのでまずないと思いますが……それでも、心配する人のためのランダムの作り方を紹介します。

ランダムにするためには、「RANDOM(範囲)」を使用します。0~範囲の中に入れた数字がランダムに選ばれます。つまり、RANDOM(10)と指定すると0~9が選ばれるということですね。これを応用して

R=RANDOM(10)

とすれば、変数にも数字を入れることができます。つまり、前回紹介したクリック動作に上記のランダムのRをプラスすることで、毎回クリック場所を10程度ずらせるのです。

IFB CHKIMG("画像ファイル名")
R=RANDOM(10)
BTN(LEFT, CLICK, G_IMG_X+10+R, G_IMG_Y+10+R)
ENDIF

10は画像によって異なりますので、ご自身が使う画像やクリック箇所に合わせて変更しましょう。これで毎回同じ場所をクリックするという問題は回避できます。同じ場所をクリックするのが心配という人は、ぜひ使ってみてくださいね。

ゲーム自動化時のカーソルの移動が煩わしい

PCが1台しかない場合、ゲーム自動化をしているときにパソコンが使えないので、無理やりパソコンを使おうとしますよね。その時、高い確率でマウスの主導権をマクロに取られて鬱陶しさを感じる人もいるでしょう。私も同じです。そんな人におすすめなのが、カーソルの位置を元に戻すプログラムです。

x=G_MOUSE_X
y=G_MOUSE_Y
MMV(x, y)

変数のxとyに「G_MOUSE_X」と「G_MOUSE_Y」で縦と横の座標を覚えさせて、「MMV(x, y)」でカーソルを移動させます。ですので、実際に使う場合には以下のような形になります。

IFB CHKIMG("画像ファイル名")
x=G_MOUSE_X
y=G_MOUSE_Y
BTN(LEFT, CLICK, G_IMG_X+10, G_IMG_Y+10)
MMV(x, y)
ENDIF

こうしておけば、画像を見つけてマクロがクリックした後に、元の座標xとyにカーソルを戻してくれます。

ちなみに変数において「xとX」、「yとY」はまったく別ものになりますので、「MMV(x, y)」を使用の際は「x=G_MOUSE_X」と「y=G_MOUSE_Y」の最初の文字は小文字で書くのを忘れないようにしてください。

ゲーム自動化を彩るテキストの表示

マクロがうまく動いてくれないときやどの部分を実行しているのか、表示させたいことってありますよね。短いマクロならゲームの自動化をしていても問題はありませんが、長くなってくると今、どの部分のプログラムが動いているのかわかりにくくなってしまいます。エラーを見つけるのにも役立ちますので、テキストの表示は重要です。UWSCでももちろん、テキストボックスの表示が可能です。

FUKIDASI(表示したいテキスト, 横, 縦, 吹き出しの向き, フォントサイズ, フォント名, 文字色, 背景色, 透明化) 

吹き出しの向きに関しては「0.なし」「1.上」「2.下」「3.左」「4.右」と数字で指定します。全て入力する必要はなく、省略も可能です。「FUKIDASI(表示したいテキスト)」とすれば、左上に黄色い背景色の黒いフォントでテキストが表示されます。テキストをダブルコーテーション("文字列")で括り、プラス(+)をつけることで、変数も使えます。詳しくは下のループ表示回数のところをご覧ください。

似たようなものにMSGBOXもありますが、こちらはOKのクリックが必要になったりしますので、ゲーム自動化ではあまり使いませんので紹介はしません。もしも、興味がある人は「UWSC辞典」に詳しく載っていますよ。

ゲーム自動化のループ回数設定とカウント表示

マクロを走らせていて、回数指定が欲しくなることがあります。例えば、10回だけ周回したいとか、スタミナ回復薬を3個まで使いたいなど、使用状況において無限ループでは困ることがちょいちょいでてきますよね。簡単にループ回数を決められますが、フラグやIFを使うので、少しプログラミングぽくなっていきます。

まずは追加するプログラムを紹介します。

A=1
IFB A = 10
BREAK
ENDIF
A = A + 1

「A=1」はループの外に書き、それ以降はループ内に入れます。IFBを越えて、「A = A + 1」に辿り着くたびに、Aに1ずつプラスされていきます。それが「A = 10」で指定した10回に到達すると、ループを「BREAK」で終了させます。10を100に変えると100回ループということですね。上は必要な部分だけを入れましたが、実際に使うときは以下のような形になります。

A=1
WHILE TRUE
IFB CHKIMG("画像ファイル名")
BTN(LEFT, CLICK, G_IMG_X+10, G_IMG_Y+10)
SLEEP(1)
A = A + 1
ENDIF
IFB A = 10
BREAK
ENDIF
WEND

少し長いので難しく見えますが、今までの応用でしかありませんので、きちんと理解していれば、簡単に使いこなせるはずです。それとSLEEPを入れないと、PCの性能によっては1ループで2回以上カウントすることがあります。ご自身の環境に合わせて待ち時間を設定してください。

ループ回数の表示

指定回数だけループさせると次に気になるのが、現在は何回目なのかということでしょう。こちらも応用となりますので、今までの内容を使えば実現可能です。使うのは「FUKIDASI(テキスト表示)」ですね。「IFB CHKIMG("画像ファイル名")」の上に、

FUKIDASI("現在" + A + "周目")

を入れるだけです。ビックリするくらいに簡単ですよね。書き方を少し変えるとカウントダウンにすることもできます。

B = 10 - A
FUKIDASI("残り" + B + "周")

変数の計算を覚えるとこのように簡単に表示ができるようになります。他にもSLEEPを使ったカウントダウンタイマー持つくれます。SLEEPで長い秒数を指定したいときに使うと便利ですね。使うのは「FOR ~ NEXT」です。こちらは条件が満たされるまで次へ進まないプログラムです。

FOR A = 179 TO 1 STEP -1
FUKIDASI("あと" + A + "秒")
SLEEP(1)
NEXT

と書くことで、180秒間のカウントダウンタイマーになります。待ち時間を変更する場合には179の部分を変更してください。

ゲーム自動化でメールを送信しよう

ここからはメールサーバーの知識やアカウント設定などが必要になります。自分でメーラーの設定をしたことがある人なら問題ないと思いますが、追加するプログラムが増えますのでハードルが一気に上がるのでご注意ください。マクロの終了や異常が発生した先にメールで教えてくれるようになるのは便利ですよ。

// メール送信設定 ここから ----------------------------------------------
mailfrom = "送信元メールアドレス"
mailto = "送信先メールアドレス"
subject = "メールタイトル"
body = "メール本文"
authflag = true	// SMTP認証使用の有無 Trueが使用 Falseが不使用
authid = "アカウントID"	// SMTP認証使用時のID
authps = "パスワード"	// SMTP認証使用時のパスワード
sslflag = true	// 暗号化された接続(SSL)使用の有無 Trueが使用 Falseが不使用

smtpserver = "送信サーバーアドレス"	// Gmailならsmtp.gmail.com
smtpserverport = 465	// サーバーのポート番号 Gmailなら465

// 以下は変更不要
Dim objEmail = CreateOleObj("CDO.Message")

objEmail.From = mailfrom
objEmail.To = mailto
objEmail.Subject = subject
objEmail.Textbody = body

schemas = "http://schemas.microsoft.com/cdo/configuration/"
objEmail.Configuration.Fields.Item(schemas + "sendusing") = 2
objEmail.Configuration.Fields.Item(schemas + "smtpserver") = smtpserver
objEmail.Configuration.Fields.Item(schemas + "smtpserverport") = smtpserverport

//SMTP認証を利用する場合
ifb authflag
    objEmail.Configuration.Fields.Item(schemas + "smtpauthenticate") = true
    objEmail.Configuration.Fields.Item(schemas + "sendusername") = authid
    objEmail.Configuration.Fields.Item(schemas + "sendpassword") = authps
endif

//暗号化された接続(SSL)を利用する場合
if sslflag then objEmail.Configuration.Fields.Item(schemas + "smtpusessl") = true

objEmail.Configuration.Fields.Update

// ここまで ----------------------------------------------

手打ちだと確実にミスが出るのでコピペでお使いください。送信元のアドレスは正直なんでも構いませんが、お使いの環境に酔ってはスパムメールとして扱われます。できれば、送信サーバーと同じアドレスを使うと良いでしょう。「送信先」はメールが届いて欲しいメールアドレスになります。

その他の設定につきましてはお使いのメールサーバーにお問い合わせください。言っている意味が分からない場合、おそらく設置は難しいです。以上がメールを送る設定になります。実際にメールを送る部分に以下を追加ください。

COM_ERR_IGN
objEmail.Send
COM_ERR_RET

上記で紹介したループの「BREAK」の前などに入れると、ゲーム自動化の終了をメールで教えてくれるようになります。ぜひ、お試し下さい。

まとめ

簡単にできるゲーム自動化のプログラミング「応用編」はいかがだったでしょうか?

今回紹介したプログラムを追加すれば、UWSCが使える環境であれば、かなりの状況に対応できるようになるはずです。色々なものが便利になり、周回にかける手間を大きく削減できるようになります。ポチポチと修行僧のようにクリックし続けるのもゲームの楽しみでしょうが、結果が変わらないならマクロでも良いんじゃないのかと思う人は、ぜひゲーム自動化のマクロを覚えていきましょう。

あなたの人生の時間は限られています。自分が後悔しないように有意義に使って下さいね!

1位:忍者マストダイ

2022年12月14日に緊張感&疾走感あふれる高速忍アクションの登場!
反逆の旗を掲げた少年と共に宿命の渦に巻き込まれていくストーリーもかなり熱い。
最近のアクションゲームの中でもトップクラスの面白さです。絶対遊んでみてね!

2位:勝利の女神:NIKKE

幻塔の運営が2022年11月4日にリリースしたTPSアクションゲーム
爽快なゲーム性と美少女のお尻が魅力で、スマホゲームとは思えないほどめっちゃ面白い!
敵を狙ったり、物陰に隠れたり、本格射撃ゲームが好きな人はぜひ遊んでみて!

3位:三國志真戦

全世界で5,000万ダウンロードを突破した『三國志・戦略版』の日本語版!
三国志の舞台をした究極の戦略性と公平性でめっちゃくちゃ面白い!

4位:モリノファンタジー:世界樹の伝説

縦・横画面切替可能な驚きのシステムが導入された新感覚の森秘境冒険MMORPG。
自分の分身となるキャラをとことんまで育成して、他のプレイヤーと協力したマルチプレイが面白い。
一人で遊ぶより、みんなで遊びたい人におすすめ!

5位:ドルフィンウェーブ

2022年10月20日よりサービスを開始したストラテジーRPG
爽快ジェットバトルになっており、遊んでいてめっちゃ楽しいぞ!
水着の美少女たちが活躍するゲームを探しているならぜひ遊んでみて!

6位:モンスター娘TD

2022年10月25日にiOS / Android版をリリースしたタワーディフェンスRPG!
DMM版がベースになっているだけあって、ハチャメチャな展開が面白い。
ストーリーも楽しみたい人におすすめです!

7位:三国覇王戦記

2018年3月28日にリリースされた縦持ちで遊べる本格ストラテジーゲーム!
最高レベルのグラフィックで三国志の世界を体験しちゃおう。
フルアニメーションで躍動感ある動きを見せてくれるリアル武将は必見!

8位:チョコットランドSP

チョコットした時間にかんたん操作で誰でも気軽に冒険できる大人気RPG!
パソコン、スマホ、どっちでも遊べるのが魅力です。
スタミナなしでプレイ時間は無制限になっていますよ。
装備を集めてオシャレを楽しんだり、かわいいペットと遊んだり、楽しい冒険に出かけよう!

9位:Merge Mansion(マージマンション)

2020年9月16日にリリースされた新感覚の箱庭系パズルゲーム
よくある3マッチパズルかと思いきや、重ねて育てるマージパズルという新しいシステムになってします。
時間を忘れて遊べるので、暇つぶしを探している人におすすめです!

10位:テイルズウィーバー : SecondRun

キャラの数だけ紡がれる壮大なストーリーが美しく懐かしい2DオンラインRPG!
いつでもどこでもだれとでも、好きなだけ楽しめる協力バトル!
数百種類のドットアバターあり、自分だけのキャラクターが作れるぞ!!

11位:魔石騎士団 : Puzzle War

固有スキル×ギミックを駆使するめっちゃ面白いドラマチックパズルRPGの登場!
魔石の力に目覚めた主人公が、仲間を集めて運命を切り開いていく!
個性豊かなキャラを集めて、自分だけの最高の騎士団が作れるぞ!

12位:Echocalypse -緋紅の神約-

2022年10月20日、ついにサービス開始のケモノ娘の神殺しRPG
戦況が一変するパーティバトルがめっちゃ面白いぞ。
可愛いケモノ娘たちが織りなす終末世界の物語をぜひ体験しよう!

13位:特攻魂~喧嘩上等!

不良たちの戦いを描いたヤンキーバトルRPG!
仲間を集め、ヤンキーたちとの喧嘩に明け暮れ地域を制圧し、最強を目指そう!
新規プレイヤー限定の5日間で合計2530連のガチャが熱い!

前の記事

次の記事

あなたにおすすめ

よく読まれている記事

同時に読まれている記事

書き込みはこちらから