UWSC初心者用スレ2 (286レス)
1-

152: 2022/07/30(土)21:13 ID:8Mquypwa(1) AAS
tester
153: 2022/07/31(日)23:15 ID:LmtiMMax(1) AAS
testest
154
(1): 2022/08/06(土)11:49 ID:Jq43FlU6(1/2) AAS
オンラインゲームでマーケットにアイテムが出品された瞬間に購入するbotを作る場合
uwscとpythonどちらのほうが早く購入することができますか?
155: 2022/08/06(土)12:52 ID:+9Ajl8XK(1) AAS
不定
156
(1): 2022/08/06(土)13:52 ID:3XvgAeC8(1) AAS
>>154
そんなのBANせれて終わりだろ
出品されたか確認の為に頻繁に問い合わせしたら即バレるわ
157: 2022/08/06(土)17:37 ID:Jq43FlU6(2/2) AAS
>>156
それはそうかもしれませんが、単純に速さはどちらが上ですか?
158
(2): 2022/08/08(月)14:21 ID:A57pDOpl(1) AAS
同じウィンドウ名とクラス名のブラウザアプリ(ChromeとEdge)で、同時に同じ箇所を1回だけ裏クリックしたいです。
色々なサイトを参考にして書いてみたのですが、全く動作しませんでした。
どう改善すれば良いかご教示ください。

FUNCTION GETID2(title, class, n)
DIM cnt = 0
FOR i = 0 TO GETALLWIN() - 1
DIM ID = ALL_WIN_ID[i]
省16
159
(1): 2022/08/09(火)20:42 ID:WTH4cAqy(1) AAS
For i = 1 to 100

BTN(LEFT,CLICK,x1,y1,0)
sleep(5)
BTN(LEFT,CLICK,x2,y2,0)
sleep(5)
BTN(LEFT,CLICK,x3,y3,0)
sleep(5)
省4
160
(1): 2022/08/10(水)21:46 ID:zuCuX6KX(1) AAS
>>159
画像があればクリックするという関数をつくって
それをBTN()とBTN()の間で呼ぶようにすればいい

THREAD()を使ったりするとクリックの競合が
発生しないように制御しなければならなくなるので
こちらのほうが素直
161: 2022/08/11(木)13:41 ID:UtolBXHt(1) AAS
For i = 1 to 100

BTN(LEFT,CLICK,x1,y1,0)
sleep(5)
BTN(LEFT,CLICK,x2,y2,0)
sleep(5)
BTN(LEFT,CLICK,x3,y3,0)
sleep(5)
省4
162
(1): 2022/08/12(金)14:38 ID:m6+pfbJk(1) AAS
>>160
BTN()が100以上など数が多い場合も間で呼ぶしかないのでしょうか。

>>
161
4回クリックした後に画像検索をするのではなく、1クリックごとに画像検索できるようにしたいです。

返信ありがとうございました。自分でも調べてみます。何かわかれば教えてください。
163
(1): 2022/08/12(金)15:35 ID:AU9IgIpc(1) AAS
>>162
こんな感じでどう?

For i = 1 to 100

HOGE1(x[i],y[i])

next

PROCEDURE HOGE1(x, y)
省4
164: 2022/08/13(土)16:39 ID:p1KZrIM2(1) AAS
>>163
ありがとうございます。
試してみます。
165
(2): 158 2022/08/13(土)18:04 ID:NorQZddu(1/2) AAS
すみません、どなたか教えていただけませんか…
166
(1): 2022/08/13(土)19:43 ID:KPz0o6R8(1) AAS
>>165
ChromeあるいはEdgeのどちらか単体で裏クリックはできてますか?
それができればあとはさほど難しくないです
167
(1): 2022/08/13(土)20:59 ID:P4IK+cir(1/2) AAS
>>165
ChromeとEdgeでBTN(LEFT, CLICK, 319, 474)ができれば良いのか?
168
(1): 2022/08/13(土)23:00 ID:NorQZddu(2/2) AAS
>>166
解説しているサイトから拾ってきた以下のコードで裏クリックできることは確認できました

id = GetID("ゲーム名")
id = GetCtlHnd(id,"Chrome_RenderWidgetHostHWND")
MouseOrg(id,2)

BTN(LEFT, CLICK, 319, 474)

MouseOrg(0)
省3
169
(2): 2022/08/13(土)23:36 ID:P4IK+cir(2/2) AAS
//難しく考えすぎなんじゃ無いの?

DIM クローム = GETID("Chrome"),エッジ = GETID("Edge")

MOUSEORG(クローム,2,2)
BTN(LEFT,CLICK,319,474)
MOUSEORG(0)

MOUSEORG(エッジ,2,2)
BTN(LEFT,CLICK,319,474)
省1
170
(3): 2022/08/14(日)00:19 ID:1XEnC456(1/2) AAS
>>169
ごめんなさい、説明不足でした
そのブラウザゲームというのが、ブラウザから独立したアプリ?のような扱いになっているので、
タイトル名にChromeやEdgeといった文字が含まれておらず、ゲーム名だけなのです
171: 2022/08/14(日)01:05 ID:wZs9w9Jg(1) AAS
>>158のソースはgetid2を呼んでるのかと呼んでるなら引数のn=0が仕事してなさそうな気がするけどその辺は正しいの?
172
(1): 2022/08/14(日)09:26 ID:C9iCXLwP(1/2) AAS
>>170
タイトル指定が面倒な時の裏技みたいなもんだから、ChromeやEdgeがタイトルに含まれてる必要はないよ
173
(2): 2022/08/14(日)09:58 ID:9+drVVHY(1) AAS
>>170
GETIDはタイトルだけじゃなくてクラス名も指定できる
これでChromeとEdgeの識別ができる
クラス名はChromeとEdgeの片方を起動した状態で
GETALLWIN()
FOR win IN ALL_WIN_ID
IF STATUS(win,ST_TITLE) = "ゲーム名" THEN PRINT STATUS(win,ST_CLASS)
省3
174
(1): 2022/08/14(日)14:04 ID:1XEnC456(2/2) AAS
>>172
試しにコピペで動作させてみたのですが、クリックは発生しませんでした…
文字コードはUTF8でも構わないのでしょうか?

>>173
仰っていただいたコードで取得してみましたが、両方とも Chrome_WidgetWin_1 で、同じクラス名でした
175: 2022/08/14(日)16:33 ID:C9iCXLwP(2/2) AAS
ブラウザから独立したアプリ以外は閉じるか最小化して、余計なモノを無視するようにすれば出来るかも
テキトウなゲームアプリで試したら出来たし
176
(1): 2022/08/14(日)16:36 ID:h7b2YHtm(1/2) AAS
>>174
>>173の調査で、Chrome_WidgetWin_1 が無事に2個あるなら
どっちかがChromeのIDで、もう一方がEdgeのIDなので

FOR GameWinID = 0 TO RESIZE(ALL_WIN_ID) - 1
IFB ゲームのIDかどうかSTATUS(GameWinID , ST_TITLE)で調べる
ゲームのIDだったら>>168
念のためカウントしてPRINT
省7
177: 2022/08/14(日)16:58 ID:h7b2YHtm(2/2) AAS
>>176
書きわすれ。どこか最初の方で
AllWinID = GETALLWIN() をやっておいて

FOR GameWinID = 0 TO RESIZE(ALL_WIN_ID) - 1 も
FOR GameWinID = 0 TO AllWinID - 1  のほうがわかりやすいかも
178: 2022/08/14(日)17:32 ID:PBIVozZX(1) AAS
初心者スレだからこのゲームのここでこうしたいけど出来ないまで書いちゃえば?
179: 2022/08/15(月)04:20 ID:pm4LQRan(1/2) AAS
>>170
試しにこれを実行してみてほしい

DIM sSearchTitle = INPUT("指定するブラウザのアクティブなタブ表示を入力")
DIM idWnd = getid(sSearchTitle)

DIM sBrowserName = WhatBrowser(idWnd)
MSGBOX("ブラウザは"+sBrowserName)

FUNCTION WhatBrowser(idWnd)
省17
180: 2022/08/15(月)04:44 ID:pm4LQRan(2/2) AAS
これでの判定があっていれば
>>169のいうとおり
最初からChromeかEdgeか指定して取得できる
表示上ブラウザ名がついていなくても内部的にはたぶんついている
GETID() はタイトルの一部のみで取得できそれが先頭部分である必要もない

もしこれで判定できなければ
外部リンク:plaza.rakuten.co.jp
省4
181
(1): 2022/08/15(月)21:06 ID:RCL1oiri(1/3) AAS
皆さん色々とありがとうございます
これ以上混乱させてはいけないと思うので、やりたい事を具体的に書かせていただきます

放置少女 for ブラウザ というブラウザ版のゲームで、姫プレイという60秒ごとにクリックするコンテンツがあるのですが
2つのアカウントを作業がてら操作するのが煩わしかったので、自動化させたいと思いました
182
(1): 2022/08/15(月)21:54 ID:SCA4T4hb(1) AAS
ブラウザゲームだとウィンドウが裏とかで隠れてるとゲームが止まるってのがありがちだけどそこは問題ないのかと思った
ブラウザのプロファイルを使い分ければchrome2個とかedge2個別アカウントで動かせるからどっちかで動いたらブラウザは1種類にしたほうがいいと思った
183: 2022/08/15(月)22:38 ID:ycFy8B4h(1) AAS
>>182
止まったりしますね
画面が少しでも見えてたら止まらないようなのでウィンドウをずらして表示してますが

>>181みたいなやり方を実現したいなら仮想環境(Vmwareなど)で、いってみれば画面まるごと別にして自動化させる
ブラウザゲームを2つ同時にする程度ならi5-11400とかRyzenの3600あたりで十分だと思いますけどね
184: 2022/08/15(月)22:49 ID:RCL1oiri(2/3) AAS
裏で動作させるために

Chromeの場合
chrome://flags/#calculate-native-win-occlusion を Disabled にする

Edgeの場合
edge://flags/#calculate-native-win-occlusion を Disabled にする

自分の場合はこの方法で対処できています
185: 2022/08/15(月)23:23 ID:RCL1oiri(3/3) AAS
あと、Chromeのプロファイルを2個使うという発想は頭からスッポリ抜け落ちていました
その場合は同じクラス名のウィンドウを同時に操作するにはどう記述すれば良いのでしょうか?
186: 2022/12/01(木)10:20 ID:qs39Q3U2(1/2) AAS
ゲームでマウス右クリック中は ADS できるゲームなんだけど
右クリックをしたら ADS 状態を保持して
右クリックを押したらADS状態を解除するように
するにはどうしたらいいんでしょうか?
187
(1): 2022/12/01(木)12:30 ID:XSZRHDZS(1) AAS
右クリックをしたら→離したら の間違い?
188: 2022/12/01(木)14:45 ID:qs39Q3U2(2/2) AAS
>>187
右クリックを押してはなして ADS 状態ですね
189: 2022/12/01(木)14:59 ID:cYCmqMWp(1) AAS
・右クリックをしたら
・右クリックを押したら
の違いがまったくわからん
190
(1): 2022/12/01(木)18:01 ID:o235ACIC(1) AAS
スイッチでいうところのオルタネイトにしたい話なんでしょ
191
(1): 2022/12/02(金)23:40 ID:cTK2xg+F(1) AAS
>>190
そうですオルタネートにしたいんです
右クリック一回押すと押したままの状態にして
もう1回押すと押した状態を解除する
192: 2022/12/03(土)01:11 ID:iJH6gcoH(1) AAS
>>191
autohotkeyならできますよがんばって下さいね
手が不自由な障害者向けのサンプルコードがあるので参考にできるでしょう
193
(1): 2022/12/03(土)21:53 ID:cDe8HB62(1) AAS
while peekcolor(x,y)=緑
 処理0
...
 処理99
wend

みたいなwhile文だと、処理34をやってるときに赤になっても処理99まで一通りやってから終わらせてしまう
(x,y)が緑じゃなくなった瞬間whileを抜けるにはどしたらええん?
194: 2022/12/03(土)23:59 ID:t90CZNoD(1) AAS
>>193
自分が書いてる通りに
処理xが終わるたびに緑じゃなかったらループを抜けるようにする

それでも希望通りのタイミングじゃなかったら
1行ごとに緑じゃなくなったかどうか調べる
195: 2022/12/04(日)10:47 ID:QSjbkKsr(1) AAS
並行処理をさせたいなら関数書いてTHREADで
196: 2022/12/04(日)13:07 ID:G9jMrbbm(1) AAS
サンキュー
197: 2022/12/04(日)18:15 ID:rqfbFIa7(1) AAS
ま、「瞬間」は無理だな
198: 2022/12/18(日)01:53 ID:OMOd2EpL(1) AAS
THREADって各スレッド間の通信は
グローバル変数を使うしかないのか
199
(1): 2023/01/30(月)13:50 ID:zCM+o/4+(1) AAS
uwscってコピー防止することってできますか?
たとえばuwsc開いたらパスワード要求されてそれ入力しないと使えなくて
なおかつ1か月たつとそのパスワードは使えなくなる方法とか
月額2000円でパスワード買わないと使用できなくなるような方法です
よろしくお願いします!
200: 2023/01/30(月)13:55 ID:xjPPcjmh(1) AAS
自分が書いたとおりに実装すればできるよ
201: 2023/01/30(月)14:35 ID:L0PeZlr4(1) AAS
できねーよ馬鹿
202: 2023/01/30(月)17:58 ID:Qp/n9nNg(1) AAS
できる
203: 2023/01/30(月)20:25 ID:pewbLvtZ(1) AAS
>>199
そんな機能はないが、パスワードを書いたテキストファイルをサーバーにUPして、
起動時にそれを読み込んで入力したパスワードと照合すれば出来るだろ
サーバーに金掛けたく無ければ無料サーバー使っても良い
204: 2023/04/17(月)21:07 ID:fQqMCB5/(1) AAS
数日前からfirefoxでPosACC(id, x, y, ACC_BACK)でテキスト文字を
所得できなくなってしまって困っております。
何か良い方法はないでしょうか・・・
205: 2023/10/04(水)11:05 ID:GGFuvkNr(1/2) AAS
機械語命令のNOPのような何もしない命令はありますか

IF文とかでNOPが書ければ簡単に書けるという事が割とあるので、何とかしたいです
206: 2023/10/04(水)19:05 ID:fsISD3kr(1) AAS
何も書かなければいいだけでは
207
(1): 2023/10/04(水)22:01 ID:GGFuvkNr(2/2) AAS
そうもいかないのです

条件分岐の都合で何も書かない訳にもいかないので、面倒くさいです
208: 2023/10/04(水)22:22 ID:RyohCm2S(1) AAS
>>207
色々調べてみた?
結論から言うとそんな命令はありません
あなたは面倒くさいとストレスMAXにして頑張ってください
209: 2023/10/05(木)01:42 ID:BfJXhjdu(1) AAS
条件分岐でNOPを入れると書きやすいとはどういう例が有るんだ?
210: 2023/10/05(木)20:38 ID:XelVLkj4(1) AAS
無いなら作る

PROCEDURE NOP()
EXIT
FEND
211
(2): 2023/10/15(日)14:37 ID:hEOK4Ev6(1/6) AAS
ちょっと困ったので賢者の皆さん力をかしてくだしあ
外部リンク:imepic.jp
CHKIMGで2パターン処理が必要
一パターン目のCNKIMGからのクリックで見た目が変わるので
次に変わってないものをクリックした後で、一回目クリックしたものを
もう一度クリックしたい。

//一回目
省15
212: 2023/10/15(日)14:56 ID:hEOK4Ev6(2/6) AAS
2回目の判定画像と1回目の判定画像は部分的に重なるので、
2回目をやる前に1回目をもう一度クリックするのはダメ
213: 211 2023/10/15(日)15:05 ID:hEOK4Ev6(3/6) AAS
判定用画像
緑と白(と黒)の組み合わせで切り取る
外部リンク:imepic.jp
214
(1): 2023/10/15(日)15:59 ID:OSTpoGeh(1/4) AAS
>>211
テキトウな変数にALL_IMG_X[cnt-i]+15,ALL_IMG_Y[cnt-i]+15の座標を入れれば良い
IMGX=ALL_IMG_X[cnt-i]+15
IMGY=ALL_IMG_Y[cnt-i]+15
215: 2023/10/15(日)22:25 ID:hEOK4Ev6(4/6) AAS
>>214
ですよね・・・・
そうすればいい!と思いついたのですが、エラーでやられちゃって
216
(1): 2023/10/15(日)22:36 ID:OSTpoGeh(2/4) AAS
//一回目クリックしたところを再度クリック
BTN(LEFT,CLICK,IMGX,IMGY,20)

座標が同じならこれでよい
217: 2023/10/15(日)22:40 ID:hEOK4Ev6(5/6) AAS
//一回目
for i=1 to cnt
cntx[i]=ALL_IMG_X[i-1]+15
cnty[i]=ALL_IMG_Y[i-1]+15
next

これで「宣言のない配列です」
だったので適当な変数cntx,cntyを以下のようにしてみたらエラーは出なくなったものの
省13
218
(1): 2023/10/15(日)22:42 ID:hEOK4Ev6(6/6) AAS
>>216
1回目と3回目の座標は同じですが
2回目が異なるのです。
なので1回目の変数を適当な変数に放り込んで、3回目で読めばいい。
はずなんですが・・・ならなくて。
219: 2023/10/15(日)23:24 ID:OSTpoGeh(3/4) AAS
判定用画像
ringo1.png
外部リンク:imepic.jp
ringo2.png
外部リンク:imepic.jp

ChkImgX 1.2.1
外部リンク:hibiarekore.com
220: 2023/10/15(日)23:25 ID:OSTpoGeh(4/4) AAS
CALL ChkImgX.uws // ChkImgX関数をインクルード
startup_chkimgx()

//一回目
cnt = CHKIMGX("ringo1.png",0,0,0,1920,1080,-1,5)
for i=0 to cnt-1
 IMGX=ALL_IMGX_X[i]+15
 IMGY=ALL_IMGX_Y[i]+15
省12
221: 218 2023/10/16(月)00:20 ID:zyXWWxv7(1/2) AAS
//一回目クリックしたところを再度クリック
これがですね・・・forで書いているように1回目でクリックするのは複数回で、
3回めのforでそれを全部クリックしたい、ということなのです。
伝え方下手くそかよ・・・ごめんなさい・・・

その問題点がこの部分。
>ここで1回目の座標の、なぜか最後の座標がクリックになる。

cntx[i]でfor回るごとに追加にならないの・・・?(´;ω;`)ブワッ
省2
222
(1): 2023/10/16(月)00:38 ID:51QmPmxN(1) AAS
IMGX、IMGYを配列にして座標を入れれば良い
透過PNGを使って認識させるちょっとした裏技を使ってる

dim IMGX[100],IMGY[100]

//一回目
cnt1 = CHKIMGX("ringo1.png",0,0,0,1920,1080,-1,5)
for i=0 to cnt1-1
 IMGX[i]=ALL_IMGX_X[i]+15
省15
223: 2023/10/16(月)01:03 ID:zyXWWxv7(2/2) AAS
>>222
できたーーーー!!
神様ありがとうございます。

>dim IMGX[100],IMGY[100]
これだっ!
これ知らなかったです・・・。

コードもちゃんと動きました。これで今日寝られます。
省1
224: 2023/10/26(木)00:43 ID:A8ieLS5R(1) AAS
スクールでpythonを学習する機会があって調べたらモジュール化してUWSCに似た感じに出来る方法がわかったので
練習と学習がてらにpythonへ移植してるけどモジュール化してるとはいえかなり冗長な内容になってる
UWSCがいかに優れてるかよくわかるなぁ
もちろん使いこなせたらpythonの方が上だろうけどまだ初心者にとってはUWSCの方が使い勝手いいと思わせられる
225: 2023/10/28(土)07:50 ID:EUUOZvyM(1) AAS
説明下手か
226: 2023/12/09(土)03:19 ID:Z3iPlD7J(1) AAS
スマホゲームの自動操作はAndroidエミュをUWSCで操作するのが王道なの?それとも直接何かのプログラムでデータサーバーにアクセスして操作したりするものなの?
227: 2023/12/09(土)09:20 ID:/zdDQSm/(1) AAS
王道は知らない
データサーバーと直接通信できるゲームは多分ない
中継サーバーと直接通信するのは即BAN対象
uwscで操作も大抵はBAN対象
228: 2023/12/09(土)15:45 ID:0drD1kgT(1) AAS
エミュを操作するUWSCを検出するのは困難だろうが
エミュレータ自体が締め出されるんじゃないの
229
(1): 2023/12/09(土)22:49 ID:GUVJgzLn(1) AAS
BANにならないように人間の操作のように偽装する
230: 2023/12/09(土)23:14 ID:le18kSUd(1/2) AAS
>>229
クリック場所や時間にランダム入れるのは
一番初めにやることだよね
231
(1): 2023/12/09(土)23:24 ID:YsGnRVwU(1) AAS
それって周回作業する場合は1時間とかで切り上げるってこと?
24時間回すとかどう考えても手動じゃないし
232: 2023/12/09(土)23:34 ID:le18kSUd(2/2) AAS
>>231
無料で24時間何かしら回すものがあるような糞仕様しか作れない会社は
取り締まり能力も低いから
課金者をぶっちぎってランキング1位とか目立たない限り大丈夫
無課金で目立ったら証拠とか関係なしにBANされる
向こうも商売だからな

スタミナとか消費するものを課金で無限に購入して回すのはやったことないから知らん
1-
あと 54 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.029s