自動化ツールUWSC使いよ集まれ19 [無断転載禁止]©2ch.net
レス数が950を超えています。1000を超えると書き込みができなくなります。
確かに>>884が、ことある毎に俺は作れるって言いたい事は俺もわかったw UWSCよりとりあえず30-40倍ぐらい早くやる手法は思いついた 特定座標のバイトが一致するかどうかだけのざっと書いた最適化無しのコードでも速度で10000倍くらい差でたけど
まぁインタプリンタと同じわけ無いよねw 答え教えると画面キャプチャ部分をマルチスレッド化して無限ループさせて画像一致判定と独立させると数十倍は早くなる
よ(^^♪ 素人って数十倍数百倍程度で喜ぶんだね
オレは1兆倍 あぁ、これがDB的に言うところの。
「一体何と戦ってるんだ!?」ってやつか。 UWSCのバージョンを5.1.0から最近のバージョンに変えたら
GETSTRが遅くなっちゃったんだけど何が原因なんだろ… 久しぶりに最新バージョンにしたら、uwsc本体ウィンドウの右上にある×押すと終了せずに勝手にトレイに入るんだが
トレイ入れないで終了させるようにってできますん? 「(左上の画像の示す数値)+(左下の画像の示す数値)<49.5」→「(キーボード上)入力」
「(左上の画像の示す数値)+(左下の画像の示す数値)>50.5」→「(キーボード下)入力」
この条件を実行させたいのだが、どうすればいいですか? ifb 左上の画像の数値+左下の画像の数値<49.5 then
キーボード上入力
elseif 左上の画像の数値+左下の画像の数値>50.5 then
キーボード下入力
endif 「画像が示してる数値」をどう取得するかだけだろ
数値に対応する画像を網羅して判定するしか思いつかんけど
それ以外の、判定とかキーボード入力だのはさすがに自分でできるだろ
それすらできないなら諦めろ >>903
画像のサイズ取得は標準に無いから
サイズ取得関数をググったりして自前で実装 全ての数字を画像をキャプして数値をあてはめていくか
ネトゲならパケットを解析 数値を示す画像
画像の示す数値
どっちでも意味は通じると思うぞ 勝手に座標だと解釈してたが数値判定なら
数字分の画像キャプってchkimgする愚直な方法か
OpenCVで数字領域のクリッピングしてtesseract-ocrなどのOCRにかけるか
のどっちか、ってかエスパーやめてくれ 1 とか 2 とかって数字の絵柄があるんだと思うけど
どうせゲームだろうけど ウィンドウやスケジュールの管理や画像検索やらを自動で最適化してくれるような
フレームワーク的なものはないの? 画像A1と画像B1があるときは下ボタン、
画像A2と画像B2があるときは何もしない、
それ以外のときは上ボタン
こういうときは? もし 条件A あんど 条件B
//なにもしない
もしくは 条件C あんど 処理D
処理A
そのた
処理B
この手のそのまんまな奴聞く奴死ね 文法聞くレベルならまずはブログラム入門者向けの本一冊齧った方が良い
200ページほどの薄いJavaScriptによるゲーム作成本とかならとっつき易いだろ 無いから誰もがスルーしてたのに何キレてるんだか
こんな小規模なスクリプト言語に無茶言うだけのバカだったことは自覚してるようだが 電車でGO! 新幹線 山陽新幹線編(pc版)を入手した
UWSCでいろいろ試したかったが
やはりゲームガードされてるらしい
pcゲームでUWSCをそのまま使えないとき
どうしてる? >>926
VNCとかRemoteDesktopで繋いで画像判定とポイントクリック
マシンパワーがあればVMWareやVirtualPCでもいいぞ
何とでもなるだろ 中学生と部落民と超汚染人はマジうざい
つまり、中学生は超汚染人。
日本人はもう生まれてこないのだ。
あ、部落民がいたっけ。
部落民を日本人とカウントすれば絶滅はまぬかれるけど
戸籍持ってるのかな。 先に書いておくけど「朝鮮人」は差別語なので使用が禁止されている。 >>927
横からだけどwindowsでもマルチユーザー対応してたんだな、助かったわ 仮想環境でUWSC使い始めたんだけどホストPCでは『IESETDATA』で
ログイン関係問題なく処理できるのに、同じ記述で仮想環境持ってくと
『IESETDATA』で動かない場合もあるのな。
原因が良くわからんけどPRINTで状況表示のデバックしてみると
『False』表示さてるから、検索対象を見つけられてないという事なんだろうけど
何でこうなるのかよくわからんかった。
64bitのホストと32bitのゲストではIEでの処理方法が異なるんかねぇ・・・ >>935
推測でしかないけど
最初のCreateOLEObj時のIEインスタンス取得は成功してる?
そこで躓いてるなら64bitと32bitでIE.exeのパスが変わるのが原因で見つけられないとか
なので力技でC:\Program Files (x86)の方の同じIEディレクトリの方にmklinkなりでシンボリックリンク張るともしかしていけたり? ホストとゲストでIEのバージョンが違うとか…
ホストが古いまんま使ってると新しい仮想環境作った時にIEの古いバージョンが入れられなくて苦労する ちなみにIE10以前と11ではUWSCの挙動がかなり違う だいぶまえにuwscでクリックさせてもwindows搭載のスクリーンキーボードじゃ反応なしみたいな書き込みあったが
「ちーたんタッチボード」だと反応したよ
ただしその反応も全体の6〜7割しか反応しないから、sleepなどでいろいろ調節してみる 今月のwindowsアップデートでおかしくなった。ヤッパリ7に戻そうかな >>926
ゲームガードされてねーよ
win7で普通にプレイできるもん デスクトップwin10のi5とノートwin7のi3
ノートのwin7がサクサク動いて止まらないんだよね。 12/30更新
https://www.axfc.net/u/3875539
Python(32bit)に対応
UIAutomationに対応したselect_obj関数を追加
幾つかの互換関数を追加
SleepW…Sleep関数そのもの
SystemcallW…crateprocessするタイプのsystem関数
SystemcallW2…単純なsystem関数
timeGetTimeW…APIそのもの
execW…UWSCのEXEC関数互換関数 結局、UWSCは、VPSのWindows Server 2012で利用した場合、不具合はでるの? 12/31更新
汎用画像認識関数tapimg関数を追加
総当り式画像認識関数brute_force関数を追加
https://www.axfc.net/u/3875838 UWSCってどれ位PCのスペック必要でしょうか?
CPUはそんなに使って無いような?
スクリプトとにもよるかもしれんけど 今普通に使えてるPCならなにも気にするような琴無いぞ どーせsleep入れずにガン回しさせるマクロ書いているんだよ ループ内にsleepがないループが一つでもあれば高負荷になるさ 相対座標を出した後で
chkimg使って新しい相対座標にずらすとかは出来ますか? 質問の意図がよく分からないけど
chkimgによる発見座標はG_IMG_X、G_IMG_Yから取得出来るよ >>959
説明が悪かったですね 申し訳ないです
chkimgの座標を基点にしたいのです
@相対座標を出す
Achkimgで画像取得、G_IMG_X、G_IMG_Yの座標を出す
Bその発見した座標を次回chkimgのために0,0の基点にしたい
大体こんな感じなのですが… >>960
Bの基点を変更すること自体が目的なら無理
基点を変更にした値が欲しいなら
自力で計算すればいい >>961
回答ありがとうございます
毎度毎度で計算してたんですよね
ただその作業がめんどくさかったもので自動化出来ないか?
と思った次第です >>960
>>961の言うように自分でそういうブログラム書くしかない
もし複数の画像に適用したいならHASHTBL使うと良いよ
こんな感じ
※インデント用の先頭 , は削除が必要
// key: 画像パス, value: 座標
HASHTBL memo = HASH_CASECARE
// A、Bの処理
// ※@はなくてもchkimgが範囲内から探してくれる
ifb CHKIMG(img_path, -1, x1, y1, x2, y2, -1)
, dim xy[] = G_IMG_X, G_IMG_Y
, memo[img_path] = SLICE(xy, 0, length(xy) - 1)
fend
// 次回chkimgの基点を取り出す
ifb memo[img_path, HASH_EXISTS]
, xy = memo[img_path]
, x = xy[0]
, y = xy[1]
endif https://www.axfc.net/u/3876539
上のミスしたので修正
・splitTap、tapimgにおいて閾値を1にした場合完全一致検索方式で検索するように修正(0<x<1の場合テンプレートマッチング)
・splitTap、tpaimg、brute_force関数においてa1$3$.pngなどと$で囲うとN回連続タップするように
・C♯のテンプレートを追加 if(tapimg("img,png",0,0.95))
{
//画像認識関数の基準位置を設定
matrix_standard(G_IMGX_X,G_IMGX_Y)@
tapimg("img2.png",0,0.95)
//格納されるG_IMGX_X,G_IMGX_Yは@で設定した基準からの相対座標を返す
}
つまりこういう機能を実装すればいいということでしょうか? >>952
その時にほかに起動しているプログラムのせいで
スクリプトの実行速度が変わるという事はある
カーソル移動とか
とあるプログラムが起動していると体感的に10倍ぐらい速くなる
もちろん「おま環」の範疇 UWSCはインタプリタ方式のスクリプト言語だから他の言語と比べたら遅い
だけど目に見えて遅くなるかはブログラム次第なので
forループぶん回して中で複雑な計算するとかじゃなけりゃ気にしなくていいよ
CPUがAtomでも問題ない
一番処理が重くなるのはやっぱりCHKIMG
範囲指定せずに1920x1080のディスプレイ全体からCHKIMGなんてしたら一回の処理で100ms以上かかる
ちなみに純粋な言語自体の速度を、よく使われるフィボナッチ数計算の再帰版で比較してみたら、
少なくとも関数呼び出しオーバーヘッドは最適化(-O2)したC++の1000倍以上遅くて、Python3.5の約10倍遅かった
コードはこれ
fib(28)
function fib(n)
ifb n <= 1
result = n
exit
endif
result = fib(n - 1) + fib(n - 2)
fend マルチスレッド化してキャプチャ部分を別スレッドにして画像検索中にキャプチャしなければ100-200倍ぐらい早くなりますよ ここ何年もCHKIMG関連使ってないけど
待つ必要がある処理を別スレッドにしたところで先に進めるわけじゃないだろ ゲーム自動化させて、自動で金稼ぎ程度しか使ってない身からすると対して気にならん実行速度だけどね。
画像認識でマクロにやらせた方が人がやるより早いし。 ゲームでこれ使う意味あるかって思うけど大多数がこれ使うぐらいの脳味噌しかないらしいな
別に機能的に全然優れてるわけでもないのに >>974
ぜひ機能的に優れているものを紹介してほしい
これかRocket Mouse Proくらいしか検索しても見つからなくて
Rocket Mouse Proは有料だからこれの無料版を使ってる まあ画像とデバイス操作用のライブラリ用意したPythonとかにした方が開発はしやすいと思う
その方がコード補完も出来るし まあ私某ツールの作者ですので宜しければ是非使ってみてくださいw
ご指摘の通り基本言語構造に縛られずマクロ開発を可能にするためDLLとして提供しています
特にゲーム用マクロなんて画像認識関数とユーティリティ的な関数あれば十分事足りるわけで
古臭いUWSCみたいの使うのが当たり前になってるのが馬鹿げてると思います 人の脳みそにけち付けて自分売り込むようなヤバイやつのツールとか怖すぎるだろw わざわざその古くさいソフトのスレにまで出張って
マルチポストして宣伝しないと使って貰えないんだもんな
結局自分の作ったものの方が優れてると信じて止まない無能が妬んでるだけっていうね 自作の怪しい中華製劣化パチモンをいくら自画自賛しても誰一人として認めてくれないから今度はこっちでネガティブキャンペーン始めたのか
つくづく哀れなゴミ製造機だな よくもまあ、あのスレの惨状でここまで偉そうに講釈垂れられるもんだな
相変わらず自分のオツムの足らなさは棚に上げて人を見下してばっかりだな
そんなにお前のソフトが優秀ならなんで誰にも使われないの?w 単純にVisualStudioとか既存プログラム言語(スクリプトとしてならPython)の方が優秀だということっすよ
自分のソフトなんて大したことないです
わざわざお金を払ってまで化石言語&ゴミ環境を好き好んで使うとかどんなマゾですかねw int MonstLogin()
{
MonsterStrike mon;
mon.exeTitle = "MonsterStrikeLogin";
mon.Setting();
mon.Stop();
mon.login_only = true;
while (true)
{
if (GetAsyncKeyState(VK_CONTROL) && GetAsyncKeyState(VK_SHIFT)) {
//CTRL+SHIFTキーが押されている
return 1;
}
for (int i = 0; i < mon.startNumber; i++)
{
mon.Login(i);
}
}
return 0;
}
例えばゲームのログインならこんな感じで書いてる。
ゲームクラスを作ってログインメソッドを実装しそのクラスを継承した各ゲームクラスを作って云々みたいな。
細かい画像認識は全部necromance関数に任せれば各ゲームの自動ログインがせいぜい20行ぐらいでかけるという。 レス数が950を超えています。1000を超えると書き込みができなくなります。