探検


自動化ツールUWSC使いよ集まれ22

■ このスレッドは過去ログ倉庫に格納されています
2019/03/08(金) 13:48:52.77ID:a7MsMDPx0
Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある
・UWSC Free版 Ver5.3.0.2
http://www.uwsc.info/uwsc5302.zip
・UWSC Pro Ver5.3.0.2 (スレ建て時点で、現在シェアレジはできません。)
http://www.uwsc.info/uwscpro5302.exe 

●UWSC 掲示板(※作成依頼掲示版ではありません)
 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること
 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫
http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi
http://www3.rocketbbs.com/601/siromasa.html

●UWSC - Wikipedia
http://ja.wikipedia.org/wiki/UWSC

●使い方・基礎解説学習サイト
http://uwsc.g.hatena.ne.jp/cx20/20100131/1264938584
http://www.confrage.com/uwsc/
http://necro.jp/dev/uwsc/
http://canal22.org/
http://big.tm.land.to/handbook/uwsc.htm
http://www.game-rev.com/review/gameut/uwsc.html

●スクリプトテンプレサイト
http://scripts.web.fc2.com/
http://nem.symphonic-net.com/uwsct/0610uwsct.html
http://iriyak.adam.ne.jp/uwsc.html
※前スレ
自動化ツールUWSC使いよ集まれ21
http://egg.5ch.net/test/read.cgi/software/1533818531/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2020/04/07(火) 02:47:42.88ID:A8pIoYnR0
ソシャゲじゃないがネトゲで4垢くらい同時にマクロで採掘してたら毎日GMに不在確認されるようになった
2020/04/08(水) 01:52:40.56ID:EgLnqVcd0
シリアルコードあるんやね
入力したら普通に通るわ
2020/04/08(水) 08:01:52.05ID:Nmys2+Djx
>>555
なんの話?
2020/04/08(水) 08:20:35.74ID:PF38Hs+8M
>>553
調子に乗ってやり過ぎると駄目なんだな
程々にして置くのが良いんだな
2020/04/08(水) 09:47:03.38ID:lQr+2dLSp
時々ページ通り過ぎ→戻りとか同じボタンを二回連打とか誤タッチ盛り込まずに最短距離ばっか走るとバレんのかね?
2020/04/09(木) 00:55:24.46ID:wxsHAyuY0
firefoxでBTNクリックが使えないんですけど
これってやっぱりfirefox側のセキュリティーかなんかで弾かれてるんですかね?
あとver75ではMORG_BACKできていない気が...
2020/04/09(木) 11:21:17.52ID:TxChKyLXp
マクロバレでBANは24時間寝ずに動き続けてランキング独走したり定点クリックしたり在中確認無視して同じ行動続けた以外では聞かないな
そこまで凝る必要はないんじゃないか
捕捉されても派手に動くまではBANしてない可能性はあるが
2020/04/14(火) 20:59:44.86ID:oJP2MFso0
今回1000人以上BANくらった某ゲームやってた奴いたら聞きたいんだが
定点対策、BTN押し・離しムラ、次クリックまでの時間ムラまでやってBANされた奴いる?
今のブラウザゲーってどこまで見分けられるのか気になる
まぁ俺はBTNそのまま使ってたから何の参考にもならんのだが
2020/04/14(火) 22:49:07.20ID:bxruKtrtp
そんなに気になるならゲームの作りの方調べなよ
馬鹿な質問してるって分かるから
2020/04/15(水) 01:12:37.53ID:wWB0Fccw0
>>561
長時間やらなきゃだいじょーぶだいじょーぶ
俺は手動僧に戻ったがw
2020/04/15(水) 01:20:31.10ID:88ZvCGYE0
5時間に1時間(もちろんランダム幅持たせて)休めば良いんじゃね?
2020/04/15(水) 01:29:23.41ID:SBxKmF+q0
流石に完全放置で四、五時間は回せんわ…
今は動画見ながら監視してるけど、いつかはBANされるまで放置周回するようになるのかな
2020/04/15(水) 01:37:52.85ID:mr2PuMPX0
マクロは艦これが一番厳しいイメージ
そこそこBAN報告聞く某DCGでイベントこなすためにイベントメニュー画面からCPUと対戦始めるまでのクリックを自動化するくらいの簡単なマクロ使ってるけどBANされてないし基準がわからん
課金してるから見逃されてる可能性もあるけど
2020/04/15(水) 10:09:32.73ID:1vmd8IKM0
ここはUWSCスレ
ゲームのbotマクロ談義はよそでやってくれ
2020/04/15(水) 10:13:05.54ID:OM8eJR8H0
??
UWSCでマクロって話じゃないの
2020/04/15(水) 10:22:15.76ID:1vmd8IKM0
いくらUWSCで作ったマクロとは言えBANの回避方法なんて
ゲームや運営によって対策が違うんだからそれぞれのゲームのスレで話せばいいだろ
2020/04/15(水) 16:40:58.91ID:rUJ5XC92p
一般的なソシャゲにおいてツーラーは非難の対象だから落ち着いて話せる場所がないんだ
2020/04/15(水) 17:25:34.36ID:+6GxabzTp
ここでも規約違反行為の助長はしたくないので他所いってくださいっていうスタンスだと思うが
2020/04/15(水) 17:28:49.49ID:plbX2KyPM
そんなの当たり前だろ
話せる場所がないからってここで話されても迷惑
このスレがマクロの作り方教えてるなんてことになったらUWSCについて話す場がなくなる
2020/04/15(水) 17:38:28.90ID:88ZvCGYE0
>>571
違反がどうというより、ゲーム側に独自の仕様が多すぎてここに聞きに来るやつはほとんどがその辺を理解して無い。
そんな状態であれこれ文句だけたれて正解が出てくるまでしつこく居座るから断られる。
コードも晒さないし、…というか分かってないからコードのどこが駄目なのかも分かってない。
2020/04/16(木) 03:43:44.32ID:3xb47jif0
マクロ作るのって単純に楽しいし、目的があるぶんプログラミングのモチベーション続くんだよな
違反じゃなかったらどっかに晒して色々聞きたいわ
細かい部分じゃなくて全体の設計的なアドバイスを受けたい
2020/04/16(木) 04:01:42.59ID:3xb47jif0
uwscしか触ったこと無いし基本的なプログラムの勉強も20時間ぐらいしかしてないから
「ちいさな部品」は作れても「見やすい、修正しやすい、追加しやすい」コードの書き方が全然わからん
小手先で徐々に工夫はしてるけど、それをやると「初期に書いた部分」と「最近書いた部分」のスタイルが全然違って逆に読みにくいんだよな
最初から最適な書き方をして、それを維持するのが大事なのかな、とか思ったり
2020/04/16(木) 04:48:03.78ID:3xb47jif0
初心者なのに自作関数に手を出したから大変なことになったこともあった

自分で関数が作れるようになったのは作り出して半月ぐらいだったけど、
重複する部分書くのいい加減面倒くさいって程度でどんどん関数を作っていった
そうしたら関数が増えすぎて、関数名だけじゃ中身がわからなくなって困ったわ
関数にまともな名前をつける知識が皆無だった

書くたびいちいち関数の中身を調べて、うまく動かなかったら修正した関数をまた作って
修正があったら○○2とかにしちゃって、2と3の違いがわからなくなって4や5も増えて収拾がつかなくなったわ
とりあえず動くけど怖くて古い部分を修正できないものが出来上がってしまった

引数とか戻り値とかを使ってどんな状況にも対応可能なものを作るべきだった
2020/04/16(木) 05:22:32.46ID:3xb47jif0
「ループをうまく使って100までの足し算をしましょう」みたいな部品についての知識なら初心者向けサイトに載ってるけど
1000行ぐらい書いたクソコードをより綺麗に再構築するにはどうしたらいいか、みたいな知識ってどこで学べるんだろうか
2020/04/16(木) 05:27:13.93ID:PsGLUs670
>>575
動けばいいだけじゃなくてスキルアップを目指しているのなら
時々全部今のスタイルに書き直せばいい

>>576
ドキュメントを作っておけばいい
書き方はUWSCのヘルプでも参考にすればいい
2020/04/16(木) 06:16:41.39ID:wUisXzP90
UWSCはプログラム学習に向いた教材ではない。
日記書きたいなら他行け。
2020/04/16(木) 09:40:05.42ID:y9hKsTjc0
手続き的にしか表現できないのでコードの見通しを良くするにも限界がある
いわゆる現代的なプログラミング学習には極めて不向き
2020/04/16(木) 10:22:04.06ID:w5GXW2zr0
乞食さん降臨ですか、はぁ

>>569
同意
2020/04/16(木) 10:34:23.71ID:I+uQy1Hyp
プラグラミングやりたいのかマクロ作りたいかで勉強するもの変えるべき
とは言え恐らくは「なるべく簡単に」マクロ作りたいのだろうから自縄自縛を受け入れて苦しむ選択も有り

言語やエディタでのサポートなしに千行なんてコードは小手先ではどうしようもない
Windows10では辛うじて動いてるけど直に動かなくなるのも目に見えてる訳で乗り換えを強く勧めるが勉強中の当面はuwscで簡単に出が来たことが出来なくてもどかしかろうけど
583名無しさん@お腹いっぱい。 (ワッチョイ 9f4e-xa8R)
垢版 |
2020/04/18(土) 12:14:11.41ID:/UDCSpvr0
オリジナルを間違えて消してShift押しながらデリートしてしまってexeしか無いんだが
これって復号化みたいなことって出来るんかな
2020/04/18(土) 12:44:17.81ID:QApDJeYV0
消した直後なら復元アプリ使え
2020/04/19(日) 14:05:31.37ID:z85ps+QW0
>>582
UWSCが終息に向かっているんで他の移行先探しているんだが、
「UWSCで簡単に出来ていたことが出来なくて」中々移行出来ずにいる。
2020/04/19(日) 15:06:09.41ID:GqRhmgC80
>>585
図書館でPythonの入門書沢山借りてきたわ
借りてきた数日後に休館になってしまったが
2020/04/19(日) 17:49:52.43ID:qcB+6NT00
Pythonは速度とかにこだわらないなら良い気がするよね。
暇つぶしに読んでるわ。UWSCの機能を完全移行するには年単位かかりそうだけどな…orz
2020/04/19(日) 19:38:15.54ID:pjTRJozQ0
chkimgとかbtnと主要な関数パクって同じ仕様の関数作っちゃえば大して難しいことはないような?
ぐぐるとサンプルもちょいちょい見かける
制御文とか構文は覚える必要あるけどさ
2020/04/19(日) 21:21:10.05ID:+isGw5Gy0
今んとこwindow10でも動いてるが今後のアップデートで不具合でてくるとツラいな
個人開発ソフトのリスクをUWSCには突きつけられた感じだ

誰か天才が現れてこの状況を打破してくれないか
UWSCのスクリプトがそのまま同じ動作してくれる新アプリ開発するとか
2020/04/19(日) 22:59:01.08ID:Tu6vkHPLM
普通にC#やVBで作る方法を探した方が近道だな
2020/04/19(日) 23:38:00.79ID:iQ9BVb5g0
Pythonで自動化の話を良く聞くけど
C#と比べて自動化のライブラリの豊富さが違うのかいな
言語仕様自体はそんなに変わらんよな
2020/04/20(月) 00:17:17.07ID:T2TZLfBW0
インタプリタなのが大きいんじゃないか
2020/04/20(月) 00:45:31.01ID:71CD+57G0
UWSC64来てた
・設計から64bitで作り直す
・64bitDLL読み込み可能
・マルチスレッドCPU対応
・Threadコマンド、最大同時数1024
http://www.uwsc.info
 
 
 
 
 
 
 
 
 

 
ら良いな
594名無しさん@お腹いっぱい。 (アウアウオーT Sadf-thIy)
垢版 |
2020/04/20(月) 01:40:55.59ID:TiDe17Z1a
>>593
(´・ω・`)
2020/04/20(月) 09:28:11.08ID:s/9WhceU0
test
2020/04/23(木) 07:13:07.90ID:rKNfQfCj0
>>593
(TДT)
597名無しさん@お腹いっぱい。 (ワッチョイW dc97-0cxR)
垢版 |
2020/04/24(金) 00:38:14.55ID:nCoZ7AhD0
>>593
よろしくです
2020/04/24(金) 12:07:04.10ID:u4JKXdvi0
質問です
PROCEDURE hoge(fuga, fugafuga, piyo[], piyopiyo="")
という自作関数を定義し、引数である配列piyoへ
引数piyopiyoと同様に何も渡さなかった場合の初期値[-1, -1]を設定したいと考えています。

しかし
piyo[]=[-1, -1] → 構文が間違っています
piyo[]="" →  range check error
piyo[]=[] → 変数: が定義されていません
PUBLIC INIT_ARRAY[] = -1, -1
piyo[]=INIT_ARRAY → 次元数が合いません

と出てお手上げ状態です
どなたか解決方法をご存知でしたらご教授願います。
2020/04/24(金) 12:46:59.61ID:zw5DZyZJ0
お手上げて…配列への設定は[]じゃなくて{}では?
2020/04/24(金) 13:22:08.94ID:u4JKXdvi0
配列で{}を使用しているリファレンスがあるならご提示ください
意味がわかりません
2020/04/24(金) 13:36:27.95ID:ZNylp966r
聞いておいて試さずはないんじゃないの
2020/04/24(金) 13:48:06.93ID:rpSzLyvn0
まずヘルプ読むべきでは?
>> 配列変数には次元数分 []を付ける (2次元配列の場合 引数[][] )
>> = 定数 にてデフォルトパラメータを指定できる(デフォルトパラメータ以降に通常引数を書く事はNG)

次の質問はもうちょっと試行錯誤してからな
2020/04/24(金) 13:55:54.95ID:u4JKXdvi0
>>601
試した上でわからないからリファレンスがあるならくださいって言ってるんですが…
そもそも配列の話をしているときに構造体の話をし始めた理由もわからない
これらを踏まえての発言なんですが…?

>>602
その部分に関しては読みました
結局不可能ってことなんでしょうか?
多言語だと当たり前のようにできることなので可能なのかと考え質問したのですが
2020/04/24(金) 14:13:12.07ID:PlJxiNsm0
>>603
できるよー
605名無しさん@お腹いっぱい。 (JPW 0H4b-0cxR)
垢版 |
2020/04/24(金) 15:03:48.58ID:uMetUfgIH
なんか恐い人来た
2020/04/25(土) 01:31:51.59ID:2k90ZvH+0
配列のデフォ値は無理なのでsafearrayでも使ってなんとかしな
2020/04/25(土) 08:08:40.25ID:nuAQUgdQ0
>>598
602>> 配列変数には次元数分 []を付ける (2次元配列の場合 引数[][] )

× piyo[]=[-1, -1]
○ piyo[][]=[-1, -1]
608名無しさん@お腹いっぱい。 (ワッチョイ e284-Btmo)
垢版 |
2020/04/25(土) 17:14:00.64ID:9UdEcBuM0
1つのUWSCスクリプトの起動で2つのブラウザウィンドウ(共にChrome)を連携しながら動かすようなことは可能でしょうか?
例えばウィンドウAの画面が青になったと判定したらウィンドウBの任意の場所をクリックするような仕組みです。
もしUWSCで不可能なら他のRPAツールでも結構ですのでお教え頂ければ助かります
2020/04/25(土) 18:40:26.94ID:MAFvfVAR0
uwscで充分
2020/04/25(土) 19:03:53.23ID:ctPSjjnJ0
ウィンドウIDを取得してアクティブを切り替えればいいんじゃないの
611名無しさん@お腹いっぱい。 (ワッチョイ e284-Btmo)
垢版 |
2020/04/26(日) 10:31:53.22ID:UgukeRap0
>>610
同時に並行で動かし続ける必要がありまして
やはり難しいですかね。。
それぞれ孤立・独立したプログラムとしては同時に動かせるのですが両者間で連絡がとれません。
一方がFOPENでファイルにフラグ状況を書いてから他方に読ませて伝えれば連携とれるんですが原始的すぎて
2020/04/26(日) 11:15:41.86ID:RAduyX6R0
スレッドでも書き込む位置がメモリーになるだけで原始的だな
2つのプログラムを書き換えて1つにまとめたらいいんじゃない?
難易度高くて高度たと思うよ
2020/04/26(日) 11:17:17.72ID:t5dHtWT/0
>>611
当てずっぽうだけれど環境変数使えないかな?
2020/04/26(日) 11:44:51.77ID:JQtdkTNA0
>>611
なんかウィンドウidを難しく考え過ぎてる
GETALLWIN使ってまとめて取得して適宜使い分ければいいだけ

>>613
環境変数は起動時に読み込むものなのでプログラム起動後に書き換えても書き換えた側でしか反映されない
スレッド/プロセス立ち上げ直しで読み直すかは分からん
2020/04/26(日) 13:52:09.18ID:BMyBQfqb0
以前 chrome で複数の window から目的のタブを探してホゲホゲって
操作しようとして、その時は手に負えなくて諦めたんだけど
そういうこともできるんですか?ヒント下さい。
2020/04/26(日) 14:21:46.68ID:SQ2cZp6Q0
>>615
タブを一覧/操作する拡張機能を作って、それを操作するUWSCスクリプトを書くといい
外からでは限界がある
2020/04/26(日) 14:29:24.42ID:BMyBQfqb0
>>616
タブを一覧/操作する拡張機能はUWSC以外で書くってことですか?
UWSCで完結できるならもう一度挑戦してみたいんですが
2020/04/26(日) 16:17:02.70ID:5BbdXode0
ショートカットキーでタブ切り替えてSTATUSでタイトル取得して探すのは?
2020/04/26(日) 16:53:15.87ID:SQ2cZp6Q0
>>617
分かってるとは思うけど、UWSC単体でchromeのタブ一覧取得は事実上不可能(操作云々の前段階のハナシ)

拡張機能にショートカットキーを割り当てることでUWSCから特定の拡張機能を起動できるので、まずはタブを一覧/操作するUIを持った拡張機能を作ろう
html/js/css/chrome拡張機能、の学習のきっかけとして良い動機だと思うよ

>>618
その挙動に耐えられるならw
2020/04/26(日) 17:00:36.77ID:tLox2uN30
タブの切り替え機能を作るくらいなら
タブ単体のウィンドウを作った方が手間がかからないよねっていう
2020/04/26(日) 17:48:31.40ID:BMyBQfqb0
>>618
ウィンドウがひとつだけならなんとかなりそうなんですが
chrome で複数のウィンドウを操作している場合にどうしていいのか
分かりません。Ctrl+Tabでタブを切り替えるようにウィンドウを
切り替えるショートカットキーがあればできそうなんですが。
GETALLWINで chrome の id を取り出すとかも考えてたんですが
いまいちやり方が分からなくて行き詰まってます。
2020/04/26(日) 20:40:29.28ID:JQtdkTNA0
>>621
出来てるところまで貼ってくれよ
といってもGETALLWINで配列数が返り値に、全ウィンドウidがALL_WIN_IDに入るから
forで回してタイトルで探して対象を退避するだけだが…
タイトルの取り方が分からないとかか?
tempT = STATUS(ALL_WIN_ID[i], ST_TITLE)
こんな感じ

というかググるとまさにGETALLWINでChromeのウィンドウ探すuwscマクロ出てくるけどw
2020/04/26(日) 20:49:38.87ID:5BbdXode0
>>621
GETALLWINで全ウィンドウのIDを取得する。IDはALL_WIN_ID[]に格納されている
ALL_WIN_ID[]からID取り出して、STATUSでタイトル取得してPOSでchromeかどうか調べ
る。chromeのIDは配列にでも入れておく
chromeのID配列からID取り出して、SCKEYでタブ移動してSTATUSでタイトル取得して目
的のタブか調べる。同じタイトルが出てきたらタブを1巡したということなのでウィンドウ
切り替えてまた目的のタブを探す

同じタイトルやURLのタブが大量にあるとかだったら面倒だけど
タブタイトル一覧取得や操作もやろうと思えばuwscで完結できる
あとchromeのタブ移動はctrl+数字キーなんかもあるのでその辺も使えるよ
2020/04/27(月) 02:18:58.17ID:ukzRwm3h0
>>622,623
ありがとうございます
おかげで目途が立ったっぽい。
2020/04/27(月) 02:25:27.59ID:ukzRwm3h0
>>624
スクリプト貼ろうとすると長すぎるのかうまくいかない。
とりあえずお礼のみで失礼します。
2020/04/27(月) 05:29:08.23ID:ukzRwm3h0
>>625
ソースコード共有サービスって始めて使うけど
こんなんでいいのかな

ttp://dpaste.com/3CWK0TB
627名無しさん@お腹いっぱい。 (ワッチョイ e284-Btmo)
垢版 |
2020/04/27(月) 22:26:22.46ID:pH1nwpB80
下記をTHREADつきで呼び出すと動かないのですが仕様なのでしょうか?

aaa()

PROCEDURE aaa()
IFB PEEKCOLOR(1,1,COL_RGB) = 1 THEN
msgbox("1")
ELSE
msgbox("2")
ENDIF
FEND

THREAD aaa() で動かすと何のメッセージも出ず終了してしまいます。
2020/04/27(月) 23:21:11.75ID:EKZvLSS90
並行して実行するからmsgbox()に辿り着く前に
スクリプトが終わるからでしょ

Thread aaa()
Sleep(1)
とかしたらいけるんじゃ?
2020/04/27(月) 23:47:27.83ID:pH1nwpB80
>>628
出来ました!ありがとうございます
2020/04/29(水) 15:36:27.80ID:VuCA/vh00NIKU
N88-BASICでいうところの
READ〜DATA命令ってありますか?
2020/04/29(水) 16:42:02.41ID:ZbmuWxlW0NIKU
無けりゃ作れ
2020/05/09(土) 10:53:22.27ID:g9VSn3kM0
これ使ってたらいきなりブルースクリーンになったんですけど理由って何が考えられますか?
uwsc固有のエラーなんでしょうか…?
2020/05/09(土) 13:11:31.63ID:CfrHtUWD0
表示されたエラーコードを見て調べてください
2020/05/09(土) 14:16:40.14ID:WI68ODey0
使わなかったらBSODにならないのか半年位検証してまたおいで下さい
2020/05/09(土) 16:28:15.69ID:Bb8TRpAe0
複数VM仮想で特定サイトを画像認識してループ監視してるとそうなる事があるな。
まぁ、たいていは仮想側が異常おこして仮想の方が落ちる。
原因は知らん。

メインWIN10、仮想WIN7という構成。

そんななんで最近は仮想側を軽量Linux化してPythonで監視しようかとか思ってる。
2020/05/09(土) 19:15:10.17ID:U94CA+RJ0
>>630
配列で作れば良いじゃない
637名無しさん@お腹いっぱい。 (ササクッテロルT Sp33-cS0w)
垢版 |
2020/05/10(日) 22:19:44.16ID:0uySrwRDp
madoID = "uwsc"
WindowID = GETID(madoID)

として、GETIDの中を変数で変えられるようにしたいのですが、
下記のエラーが出てしまいます
文字列のみしか受け付けないのでしょうか

>変数:MADOIDが定義されていません
>WindowID = GETID(madoID)
2020/05/10(日) 22:27:20.13ID:9FjZEBnF0
それでできるはずだけどGETIDするまでにmadoIDに値を代入してる?
2020/05/10(日) 22:49:24.61ID:X2pUdlJD0
>>637
その2行+msgboxでID表示を実行したら
ちゃんと動いたよ
640名無しさん@お腹いっぱい。 (ササクッテロルT Sp33-cS0w)
垢版 |
2020/05/10(日) 23:17:17.47ID:0uySrwRDp
>>638
>>639
早々にご確認ありがとうございます。
ただ。申し訳ありません、記載していた内容で行けたのですが、PUBLICつけた場合だとだめだったようです。
どこでも使う値となるので、PUBLICをつけて他の関数から参照できるようにしたい意図です

madoID = "uwsc"
PUBLIC WindowID = GETID(madoID)
2020/05/10(日) 23:21:18.04ID:X2pUdlJD0
両方PUBLICにすれば動いたけど
それじゃ駄目なの?
2020/05/11(月) 14:47:12.29ID:4mi1+of00
Publicへの代入はスクリプト実行前にされるから、定義と代入は分ければいい

PUBLIC WindowID
madoID = "uwsc"
WindowID = GETID(madoID)
2020/05/16(土) 05:11:30.45ID:nq/1w/3X0
nox adbを使って
DOSCMD(〜swipe x1 y1 x2 y2 1000)
の後1秒以上待機させずに次のタップを命令していたのですが正常に作動しているように見えます
何かnox側で調整されていたりするのでしょうか?
2020/05/16(土) 05:40:17.13ID:zKAcyaXX0
正常に動いてるならいいじゃん
調整ってなんだよ
645名無しさん@お腹いっぱい。 (ワッチョイ cdb1-HeAn)
垢版 |
2020/05/16(土) 10:15:00.25ID:75rnzmhm0
>>641、642さん

遅くなりました!ありがとうございます!
無事動くようになりました、PUBLICはそういう仕様なのですね
範囲が広い変数はあまり使わないほうがいいっていう勉強本もあったので、制限しながら使うようにします
2020/05/20(水) 23:01:43.39ID:jX/tmEOF0
chkimgの()内を書くのに、「画像検出範囲の座標」をいちいち記入するのが面倒に思えてきた(範囲がほぼ変わらないので)

そこで、座標を配列として格納して

HAIRETU[]= 0,0,1920,1080
CHKIMG("画像名.bmp",HAIRETU[])

みたいな感じにやりたい。※CHKIMG("画像名.bmp",HAIRETU[0],HAIRETU[1],HAIRETU[2],HAIRETU[3]) とやればいいのはわかっている
これは自作関数をつくってその中で引数を渡すぐらいしか方法はないのかな?

HAIRETU[]= 0,0,1920,1080
CHKIMG_XYC("探す画像のbmpファイルをここに書く",HAIRETU[])//CHKIMG_XYCは配列に格納された座標範囲で画像検出する自作関数

PROCEDURE CHKIMG_XYC(IMAGE_IN,HAIRETU_IN[]))//CHKIMG_XYCは配列に格納された座標範囲で画像検出する自作関数
CHKIMG(IMAGE_IN,HAIRETU_IN[0],HAIRETU_IN[1],HAIRETU_IN[2],HAIRETU_IN[3])
FEND

こんなかんじでいいんだっけ?
2020/05/20(水) 23:21:46.48ID:wl2QRZ5m0
procedureじゃなくてfunctionでresultを返すようにする

function chkimg_xyc(image, x1=0, y1=0, x2=1920, y2=1080)
  result = chkimg(image, 0, x1, y1, x2, y2, -1)
fend
2020/05/21(木) 15:40:28.49ID:7oIfJxaQ0
>>647
ありがとう
2020/06/03(水) 01:09:27.29ID:qApGJ0aY0
noxの裏マクロを作ろうとしています。
DOSCMD(DIR+"nox_adb -s 127.0.0.1:62025 shell input touchscreen tap 1090 381)
この座標の1090と181を 1090〜1100 181〜185 みたいにランダム性を持たせたいのですがどう書けばいいでしょうか?
2020/06/03(水) 02:03:45.64ID:yFNpJkfw0
x = 1090 + random(11)
y = 181 + random(5)

DOSCMD(DIR + "nox_adb -s 127.0.0.1:62025 shell input touchscreen tap " + x + " " + y)
2020/06/03(水) 14:12:56.10ID:qApGJ0aY0
できました、ありがとうございます!
2020/06/06(土) 00:03:23.28ID:BCpp7s6E0
ちょっとプログラム初心者でいろいろ勉強中なので質問いいかな?
SPACEキーでxキーの連打開始、SPACEキーでxキーの連打終了のマクロを組んでみたんだけど
DIM INTERVAL=500
DIM KEY=VK_X

//開始の条件
WHILE TRUE
FUKIDASI("スペースキーで連打開始",100,100,0,10)
IFB GETKEYSTATE(VK_SPACE)
BREAK
ENDIF
WEND

//連打
WHILE TRUE
FUKIDASI("スペースキーで連打中止",100,100,0,10)
KBD(KEY, CLICK, INTERVAL)
IFB GETKEYSTATE(VK_SPACE)
BREAK
ENDIF
WEND
で連打入力はしてくれたんだけど連打するキーが複数「x、y、zをSPACEキーで連打」する場合はDIM立てても3つ目で定義されてるって出るんだけど
どうしたらいいかな?
2020/06/06(土) 00:17:02.26ID:ETpB5ezq0
x、y、zを同時に連打したいってこと?
それなら変数を3つ用意する必要がある
DIM KEY1 = VK_X
DIM KEY2 = VK_Y
DIM KEY3 = VK_Z
...
KBD(KEY1, CLICK, INTERVAL)
KBD(KEY2, CLICK, INTERVAL)
KBD(KEY3, CLICK, INTERVAL)

あとそのコードだとスペース長押しすると一気に終了するから
待機と連打開始の間にスペースが押されている間スリープする処理入れたほうがいいよ
WHILE GETKEYSTATE(VK_SPACE)
  SLEEP(0.01)
WEND
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況