- 1 名前:名無しさん@お腹いっぱい。 [2016/07/30(土) 17:17:29.59 ID:EHKbGb0r0.net]
- Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある ttp://www.uwsc.info/download.html ●UWSC 掲示板(※作成依頼掲示版ではありません) 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫 www3.rocketbbs.com/13/bbs.cgi?id=umiumi www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=past ●UWSC - Wikipedia ja.wikipedia.org/wiki/UWSC ●使い方・基礎解説学習サイト uwsc.g.hatena.ne.jp/cx20/20100131/1264938584 www.confrage.com/uwsc/ necro.jp/dev/uwsc/ park14.wakwak.com/~simizu/uwsc/fruwsc.html canal22.org/ big.tm.land.to/handbook/uwsc.htm www.game-rev.com/review/gameut/uwsc.html ●スクリプトテンプレサイト izagne.com/uwsc/ scripts.web.fc2.com/ www.nagomi-jp.net/~liners/ nem.symphonic-net.com/uwsct/0610uwsct.html siromasa.digi2.jp/uwsc/ iriyak.adam.ne.jp/uwsc.html 前スレ 自動化ツールUWSC使いよ集まれ17 potato.2ch.net/test/read.cgi/software/1458731603/
- 240 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/05(月) 09:15:05.72 ID:qzsh+D0w0.net]
- その場合は、busy明け待ちループの前に
ウィンドウ起動待ちループを入れるべきかな
- 241 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/05(月) 09:26:38.36 ID:Jnhm+/T10.net]
- そうか、ステータスbusyじゃないかも知れないか
そもそもそれはなさそうだね
- 242 名前:186 mailto:sage [2016/09/05(月) 22:48:48.41 ID:JhvlyivF0.net]
- >>227
ありがとうございます。 余計なウィンドウは立ち上がりません。 2つの改善点を試させていただきます。
- 243 名前:186 mailto:sage [2016/09/05(月) 23:21:20.58 ID:JhvlyivF0.net]
- 以下のように改善しました。
これも問題なく動きます。 FOR I = 1 TO 50 処理1(連番を付けて画像を保存) C_ID = GETID("ウィンドウの名前") B=STATUS(C_ID,ST_BUSY) For A = 1 To 100 ifb B < 0 break スリープ(0.1) endif Next 処理2(画面範囲の移動) Next
- 244 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/05(月) 23:26:45.52 ID:GYAkD0hj0.net]
- インデントが無いと超見にくい
- 245 名前:186 mailto:sage [2016/09/05(月) 23:29:34.56 ID:JhvlyivF0.net]
- あと他の方々からもご指摘をいくつか受けていますが、今の知識レベルではすぐに実装できそうもないので、勉強して実現できるようにしようと思います。
- 246 名前:186 mailto:sage [2016/09/05(月) 23:32:24.68 ID:JhvlyivF0.net]
- >>233
すいません。 >>207 でインデントをつけたらずれて表示されたのでとってしまいました。
- 247 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/05(月) 23:33:05.13 ID:GYAkD0hj0.net]
- そもそもST_BUSYの値はtrue(1)とfalse(0)しかないわけで、Bが負の値なんか取らないから
スクリプト作り始めた当初からifb B<0のブロックは1度も実行されたことは無いわけで… それで動いてるってのはそのスリープって意味無いってことでしょ。 FOR I = 1 TO 50 処理1(連番を付けて画像を保存) 処理2(画面範囲の移動) Next はっきり言ってこれと一緒。 しかもこれで動いてるんならこれだけでいいんじゃねって話だが
- 248 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/05(月) 23:38:13.06 ID:GYAkD0hj0.net]
- 常時存在はしない類のウィンドウの場合はgetidの部分は必要か
- 249 名前:186 mailto:sage [2016/09/06(火) 00:22:49.19 ID:GORNl5yn0.net]
- >>236
おっしゃるとおりで意味なかったですね。 さっきはなぜかうまくいきましたが、その後の検証で途中を飛ばして進行するエラーが出てしまいました。 fb B = 0 に変えて明日にでも検証し直してみます。 FOR I = 1 TO 50 処理1(連番を付けて画像を保存) C_ID = GETID("ウィンドウの名前") B=STATUS(C_ID,ST_BUSY) For A = 1 To 100 ifb B = 0 break スリープ(0.1) endif Next 処理2(画面範囲の移動) Next
- 250 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 01:30:20.48 ID:EDkA9XJ70.net]
- なんかぐちゃぐちゃになってきてるな…
- 251 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 03:38:22.22 ID:RJZSaZSo0.net]
- ロジックおかしいと指摘されてるのに全く改善されてないw
- 252 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 04:41:11.80 ID:EebF0GKj0.net]
- >>238
B=STATUS(C_ID,ST_BUSY)をFor A = 1 To 100のループに含めないとBが更新されない Printで変数を出力するなどしてどういう順番で実行されてるのかよく見てくれ
- 253 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 04:46:04.52 ID:gaZYHcVe0.net]
- >>214の方がよかったんじゃないの
- 254 名前:186 mailto:sage [2016/09/06(火) 05:29:00.58 ID:GORNl5yn0.net]
- >>242
はい。 さらに並び順を変えてみましたが、やはりエラーが出てしまいます。 一方、 >>214 の方は全くエラーが出ません。 C_ID = GETID("Demo Account") For A = 1 To 100 B=STATUS(C_ID,ST_BUSY) ifb B = 0 break sleep(0.1) endif Next >>240 >>241 はい。ここら辺も自分の知識レベルでは課題になってしまってます。 とりあえずログを出せるように今調べています。
- 255 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 07:28:39.15 ID:n3q2+nF20.net]
- 理解が追いついてないのに、いろいろ言われて焦っちゃってるんだろ
printでログ出すとか、コメント書いて理解しやすくするとかの助言もあるように ちょっと落ち着いて それぞれの行がどういう意味で、実際どう動いてるのかじっくり考えてみよう STATUS(ID, ST_BUSY)の結果はTrueかFalseだよ 0と比較するのは間違いの元
- 256 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 09:41:17.43 ID:DlecHJrG0.net]
- ここいつから手取り足取り教えるスレになったんだ
- 257 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 09:54:23.88 ID:DLHypvCd0.net]
- ケースバイケース
- 258 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 12:16:15.16 ID:EDkA9XJ70.net]
- 簡単な処理 かつ 丁寧な質問なら親切に回答する人は多い
- 259 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/06(火) 16:57:17.34 ID:wMHcypv30.net]
- 何だかんだ言って皆ツンデレだからな
以前もソシャゲのマクロ組みたいって食い下がってた奴に 結局「キャプ画像よこせば作ってやるっつってんだろ!」ってキレてたし
- 260 名前:186 mailto:sage [2016/09/07(水) 07:04:29.79 ID:E8VMTRpp0.net]
- >>244
自分の知識があまりにも付け焼刃なので焦りました。 しばらくは新しいことを試してみるよりも意味を理解することに集中しようと思います。
- 261 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/07(水) 20:04:41.77 ID:SdsqLHe+0.net]
- 公式見てもソレらしきことは書いてないのですが5.2.2でsleepかwait関係に変更あったのでしょうか?
5.2.1から5.2.2に更新したら何をするにもイチテンポ遅れて使いものにならないので戻して解決したのですが ぐぐっても少数の人がそれっぽい事言ってるだけなので気になって・・・
- 262 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 16:29:30.33 ID:x9o3zSBW0.net]
- 未だにプレイ中のとあるソシャゲなんだけど、最初は手動で頑張ってやって
- 263 名前:スんだけど、途中から
自動化できないかなって思って、PGM初心者の俺は頑張ってマクロ組んだんだよね…。UWSCで。 最初はすべてIF文で組んでさ、ボタンクリックするのもCHKIMGで。 初めて動いたときは感動したよ、ほんと。 多大な時間費やして組んだCHKIMGのマクロも、次イベになると動かない。 画像が変わるから当たり前。 一生懸命ネットで調べて、どのパソコンでも動いてコード少し修正するだけで 使い回しできるような組み方まで辿り着いた。 だけど、ここ見てるとまだまだなんだって気づかされる。 自分の組んだコードでも、上級者だとどういうロジックにするのかとか思います。 [] - [ここ壊れてます]
- 264 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 16:48:59.61 ID:sS1G6qcQ0.net]
- >>250
5.1.1.0だけど KBD(VK_Left, Click) という命令をループで回すと動きが遅いんだけど なぜかJaneかTCPmonitorPlusを起動しているときは瞬速になる不思議
- 265 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 17:07:16.46 ID:jDZ2jzKo0.net]
- 俺も制御文とか関数とかだいたいわかってきたけど、
これ以上プログラミングについての学習を深めるにはどうしたらいいのかわからん 「やりたいこと」があると必要な知識を調べていけばいいからある程度はいけるんだけどね でも「やりたいこと」への具体的な道筋が立たなかったり、調べても他のソフトウェアなどの知識が必要で理解できなかったり、 そもそも「やりたいこと」がなくなってきたりとかで足踏み状態 いっそ他のプログラミング言語学ぶの良さそうだけど、 そうなると何を学ぶのか考えなきゃならなかったり、環境揃えなきゃならなかったりでハードルが高い 一応paizaとかのウェブサービスで基本的な部分は学んだけど、自分であちこち弄って動かしてるわけじゃないから どうも達成感というか、理解が深まってる気がしないし
- 266 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 19:38:35.71 ID:+A+VKkXW0.net]
- プログラミングは所詮道具・手段なんだからやりたいことが実現できているなら充分でしょ
- 267 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 21:06:32.66 ID:Vckwy7B40.net]
- ここは製品を作るような職業プログラマは居ないからその考えの人が多いね
uwscも手段に過ぎずuwsc以外のほうが都合良いなら使うべきだ
- 268 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 21:21:26.96 ID:LmhaStCC0.net]
- uwscはその目的のためにごてごてと進化してきたモノで
洗練された言語とは到底言いがたい まあ「やりたいこと」が「こういうこと」なら、 そのためには道具としてuwscは向いてるのは確かだが その道具を使うためにも プログラミングの基礎的な考え方は他のちゃんとした言語で身につけてきた方がいいなあ
- 269 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/08(木) 22:12:35.20 ID:PCgIOrbg0.net]
- 初心者はExcelVBAでええやろ
これである程度出来てから色々贅沢言え屋
- 270 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 01:50:17.80 ID:cUWx32Mb0.net]
- ここの初心者さんって画像認識+αくらいしかやってないから、VBAもハードル高すぎだよねw
>>251なんかはそこから脱出できたんだろうけど。
- 271 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 02:30:40.69 ID:FxImwqQY0.net]
- 5年以上前にブラウザゲーでuwsc始めて基本的なことやってからchrome拡張でjs始めた
やりたいことが自分のできる範囲内でできる間は新しいことは身につかなかったけど 何か障害があったり新しい機能実装したいって思う度に身についたな
- 272 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 02:35:03.82 ID:uwxQkhgc0.net]
- いいのがないから作ればいいかって自分用しか作ってないから、とても人様には見せられない
てか自分の環境でないと使えないようなシロモノばかり
- 273 名前:名無しさん@お腹いっぱい。 [2016/09/09(金) 10:25:57.93 ID:sIR
]
- [ここ壊れてます]
- 274 名前:xPcJE0.net mailto: CHKIMGの曖昧検索機能が欲しい…
[上下左右の矢印] × [順不同] × [6〜7色] しかも色ごとにどうやら微妙にピクセル配置が異なる模様。。 矢印形状だけで判定出来たらどれだけラクか。。 [] - [ここ壊れてます]
- 275 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 10:32:59.88 ID:jJNmDM/u0.net]
- chkimgxだっけ?それ使えばええやん
- 276 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 11:19:01.95 ID:EpTiQn460.net]
- どなたか分かる方たすけて下さい。
FireFoxにSENDSTRで文字列を送る処理があるのですが、今まで問題無く使用出来ていたにも関わらず 突然SENDSTRに時間がかかる(おおよそ10秒程度)様になってしまいました。 過去にも同様の現象が発生したのですが、数日後再度実行したところ何故か問題無くSENDSTRが実行出来ました。 他のブラウザではSENDSTRの問題は発生しないので、FireFoxとUWSCとの問題だと思うのですが何が考えられますでしょうか? 環境 Windows7 Pro 64bit FireFox 48.0.2 UWSC Free 5.2.20 やった事 FireFoxのプラグイン全無効化⇒効果なし FireFoxのリフレッシュ⇒効果なし FireFoxの再インストール⇒効果なし
- 277 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 11:21:46.99 ID:vu9gp1Nj0.net]
- >>263
5.2.2の動作が遅くなるって事案がちょくちょく上がってるけどソレではない?
- 278 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 12:59:25.05 ID:jJNmDM/u0.net]
- >>263
sendstrの前のgetidとかは大丈夫? 部分一致とかだと微妙に遅くなったりするし recとかで完全一致なタイトルとクラスをとってきてそれ入れてみるとか ブラウザ起因ならsendstrでクリップボードに入れてsckeyだっけ?で貼り付けるように変えてみるとか 基本的にsendstrでキー送信うまくいかないことが多いから俺は信用してない
- 279 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 17:50:11.85 ID:EpTiQn460.net]
- >>264
回答ありがとうございます。 5.2.1 5.2.0 5.1.2 上記3バージョン試しましたが、解消しませんでした。 >>265 回答ありがとうございます。 SNDSTRで処理していた箇所をクリップボードに文字列を入れSCKEYでペーストする様に修正したところ問題無く動作する様になりました。 確かにSNDSTRは何だか怪しいみたいですね 勉強になりました。
- 280 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 18:31:36.60 ID:DZ8vx9tr0.net]
- data = "AAA-x-CCC/AAA-1-BBB/AAA-x-DDD/AAA-2-BBB/AAA-3-BBB/AAA-4-BBB/AAA-5-BBB/"
for i=1 to 5 hoge = BETWEENSTR(data,"AAA-" ,"-BBB",i) print hoge next BETWEENSTRについて質問です。 例えば、上記のようなdataがあって 「AAA-」「-BBB」に挟まれた数字のみを 1〜5の順で抽出したいんですけど上手くいきません。 BETWEENSTR内のiを、i*(-1)にして後ろからサーチにすると 5〜1の順で抽出されてしまいます。 最初に「-BBB」を探してから、一番近い「AAA-」を 逆戻りで探して抽出って動作は出来ないんでしょうか? XPsp3 Free版 5.2.1.0
- 281 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 18:36:03.03 ID:xyBWEwKb0.net]
- 怪しいというより
もともとイベントを利用する命令は確実に届く保証はないと覚えておこう ちなみにそれはSCKEYも一緒 結局のところ処理の継続が可能であるか自分で調べて次の処理を行う事が大事
- 282 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 18:54:38.10 ID:78gUVOOB0.net]
- >>267
dataのデリミターが / なんだったら一旦Split()で配列にいれて それぞれに対してBetweenStr()したらいいんじゃないの?
- 283 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 19:18:18.65 ID:IkKdiv+V0.net]
- >>267
こんな感じ? data = "AAA-x-CCC/AAA-1-BBB/AAA-x-DDD/AAA-2-BBB/AAA-3-BBB/AAA-4-BBB/AAA-5-BBB/" for i=1 to 5 hoge = COPY
- 284 名前:(COPY(data,1,POS("-BBB",data,i)-1),POS("AAA-",COPY(data,1,POS("-BBB",data,i)-1),-1)+4)
print hoge next [] - [ここ壊れてます]
- 285 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 22:18:47.55 ID:tCVyAR3l0.net]
- >>267
betweenstr(XXX, "AAA-",,) betweenstr(YYY, , "-BBB") を繰り返せばいいんじゃないの?
- 286 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/09(金) 23:13:51.25 ID:R1aNxXgf0.net]
- split(data, "/") で配列にするか正規表現のサブマッチでやるな
- 287 名前:名無しさん@お腹いっぱい。 [2016/09/10(土) 00:07:36.26 ID:Ns7LgcYx0.net]
- >>267
数が5個とわかってるなら for i = -5 to -1 でも動く まぁ俺もこのデータならsplitするけどな
- 288 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/10(土) 00:35:10.21 ID:+Re42ym20.net]
- 俺なら正規表現だな
- 289 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/10(土) 07:46:16.83 ID:m4YcOpFr0.net]
- printの結果も載せとけばいいのに。問題点が一目瞭然
x-CCC/AAA-1 x-DDD/AAA-2 3 4 5
- 290 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/10(土) 07:53:32.47 ID:m4YcOpFr0.net]
- って加味した上の指摘済み多数だったか。
data = "AAA-x-CCC/AAA-1-BBB/AAA-x-DDD/AAA-2-BBB/AAA-3-BBB/AAA-4-BBB/AAA-5-BBB/" re=CreateOleObj("VBScript.RegExp") re.pattern = "AAA-[0-9]+-BBB" //正規表現パターン。1と5の間の文字を取り出す。 re.Global = True //文字列全体を検索。trueでする(規定)、falseでしない(マッチしたらそこで終了)。 re.IgnoreCase = True //大文字・小文字を区別。trueでしない(規定)、falseでする。 match = re.Execute(data) //マッチしたものをすべて出力 for i = 0 To match.Count-1 print BETWEENSTR(match.Item(i).Value,"AAA-" ,"-BBB") next UWSC 正規表現 で検索した筆頭を拾ってきたのを変更してコピペ
- 291 名前:名無しさん@お腹いっぱい。 [2016/09/10(土) 15:35:10.86 ID:kSIOwjhA0.net]
- VBSの正規表現モジュールはスレッドで動かしたり負荷が高かったりすると異常動作するから
ビルトイン命令で実現できるならそれに越したことはないと思う
- 292 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/10(土) 15:40:44.21 ID:67NBf1Q/0.net]
- >>277
そうなん?初めて知った。 UWSCの文字列関連の関数はかなり遅くて大量に使うと明らかな時間差が出てくるんだが
- 293 名前:名無しさん@お腹いっぱい。 [2016/09/11(日) 12:59:41.51 ID:Q3TesiaZ0.net]
- 正規表現で異常動作?そんな話聞いたことないな
どこ情報?
- 294 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 13:30:44.61 ID:efWLx+5E0.net]
- PCをロックするとUWSCプログラムが作動しなくなる現象は改善した?
- 295 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 20:17:22.41 ID:txudaq7L0.net]
- UWSC自体は別に止まらない
ロックで正常に動作しなくなるスクリプトは ロック状態になると画面更新が止まるソフトを自動操作したいという 無茶振りな欲望だから素直にロックしないでやれ
- 296 名前:名無しさん@お腹いっぱい。 [2016/09/11(日) 20:35:27.57 ID:rSVOiQRw0.net]
- >>261 です
・中心に表示される図形は4パターンのうちどれか ・図形の色は都度変化する ・背景は刻々と変化する これをCHKIMGXを使って判定しようとしているのですが、 この時有効な検出元画像(CHKIMGXの1つ目の引数)ってどんなものでしょうか。 ・中心図形+背景の平均色で塗りつぶしたもの(黒〜水色の中間くらいの色) ・中心図形+背景は透過させたもの ・中心図形+背景真っ黒 →いずれも「着目する色」は-1を指定 色無視、を効果的に使えていない気がしてまして。。 説明がヘタクソですみません。
- 297 名前:名無しさん@お腹いっぱい。 [2016/09/11(日) 20:57:12.87 ID:rSVOiQRw0.net]
- 判定したい形状+背景透過のPNGファイルを作成し、
そのときの図形の色をPeekColorを使ってスポイト取得しCHKIMGXの「着目する色」に代入 なんてことが出来れば
- 298 名前:良いんですが。 []
- [ここ壊れてます]
- 299 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 21:13:28.71 ID:4TCowwd+0.net]
- 説明が分かりにく過ぎる上に
ゲーム用マクロ作成に手を貸す気にはなれんよ IMG_MSK_BGRXで頑張れ 問題のシーンの動画くらい用意しないと外野には何もワカラン
- 300 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 22:30:26.89 ID:ajg0/kUQ0.net]
- 何秒以上次の動作に移らない時(ループで結構な条件を入れていてどれにも当てはまらない)にループを抜けて再起動させたいのですが...どうしたらいいでしょうか??
- 301 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 22:45:11.05 ID:Gryk9K0J0.net]
- >>285
色々方法はある 例えば、条件に移った場合、ある変数の値を変更するようにしておいて、 最終的にその変数が初期値から変更されていなければループを抜ける式を置く
- 302 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 23:09:50.12 ID:ajg0/kUQ0.net]
- >>286
返事ありがとうございます。それを踏まえてやってみようと思います。
- 303 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/11(日) 23:53:37.27 ID:4TCowwd+0.net]
- >>285
Forを使えば最初からループが有限だからタイムアウトできるやろ
- 304 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/12(月) 13:39:05.53 ID:jC7UhI1z0.net]
- forループで作ると
forループ以外の処理もしたいときダメだろ 条件処理のケツで、該当なしのフラグ立てといて 外で判別して、必要だったらまた条件処理呼び出せ
- 305 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/12(月) 15:40:34.05 ID:FQ1Fgtx40.net]
- lengthが0だとめんどくさいんだよね
- 306 名前:名無しさん@お腹いっぱい。 [2016/09/12(月) 15:49:35.11 ID:vwXANAp/0.net]
- 上でも聞いてる人いるみたいだけどchkimgx最後の引数の「着目する色」って、
-1以外の時は部分検出になるってこと? -1→「画像名」で指定してる画像全体をグレースケールにしてマッチング -1以外→「画像名」で指定した画像の、指定した色の部分だけでマッチング?(それ以外の色はどんな模様だろうと無視?) てことなの
- 307 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/12(月) 21:09:27.11 ID:T2Gr+4Hk0.net]
- そもそも背景の影響を受ける画像判定したいなら、
背景の内側の数ドットだけを比較画像にすればいいのよ。 ほんのわずかな色の違いも別物として判定するんだから、 背景を含めた大きな画像で判定する必要がないの。 でも判定画像全体が透過して動く背景の影響を受けたり、 判定画像が拡大縮小処理されてたりすると曖昧検索しか方法ないね。 常に原寸大で透過しないような判定画像を引き出す方法はないか 探したほうが楽な場合もあるけどね。
- 308 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/12(月) 22:00:31.91 ID:8412mIfR0.net]
- >>285
変数 = GetTime() While GetTime < 変数 + 待ちたい秒数 If なんかマッチ Then 変数 = 処理したい事を別の関数で() ←戻り値でループを継続か終了をコントロール可能 WEnd 自分ならこう組む
- 309 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/12(月) 23:22:36.49 ID:qZCeyqMs0.net]
- >>291
B・G・Rの3色に対し指定した色のみチェックに用いるBMPと若干違っていてもマッチ 指定していない色は厳密に合致していないとマッチしない
- 310 名前:名無しさん@お腹いっぱい。 [2016/09/13(火) 01:15:07.94 ID:w7/Fkb9E0.net]
- >>294
そういうことなのか。。 >文字の色などを指定することで背景の変化に強いマッチング判定を行うことが可能 ってChkImgX.uwsにあったもんだから、対象色指定したときはそれ以外の判定をザルにしてくれるもんだと勝手に…
- 311 名前:名無しさん@お腹いっぱい。 [2016/09/13(火) 01:17:26.91 ID:w7/Fkb9E0.net]
- >>295
それ以外(=「対象色によって判定したい文字or画像」以外の箇所)の判定
- 312 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 06:14:55.62 ID:Qwjs3F7h0.net]
- >>279
自分の経験談 負荷の高くない状態で動かしているときは正常だから 負荷の高いプログラムを組まない人は気づかないと思う
- 313 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 09:49:29.06 ID:Ff8j/0
]
- [ここ壊れてます]
- 314 名前:Zp0.net mailto: ゲームでUWSC使っている初心者なんですが
画像認識されていたものが、しばらくすると全く認識されなくなる原因ってなんでしょう? 実は、2つのパソコンで同じプログラムを動かしてみているのですが 1つは、ずっと問題なく画像認識 もう一方は、しばらくすると画像が認識出来なくなる 新たにBMP画像を取得すれば、問題なく動くのですが、原因わかりますか? ちなみに動かない単なるボタンなんですが、肉眼では、何が違うのかわかりません [] - [ここ壊れてます]
- 315 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 10:00:21.69 ID:WI/KbIIf0.net]
- >>298
まずは画像自体が変わってるのかどうか 動かなくなった前後の画像を保持してソフトとかで比べてみれば?
- 316 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 10:06:31.04 ID:/M61KAVj0.net]
- 指定した範囲を枠で表示するにはどのようにしたら良いでしょうか?
- 317 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 10:10:32.63 ID:Ff8j/0Zp0.net]
- >>298
windows 付属の画像ソフトしか持っていないので・・・ 画像を比べられるソフトとはどんなものでしょうか?
- 318 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 10:11:40.40 ID:Ff8j/0Zp0.net]
- 失礼しました。
>>301は、>>299へのレスです。
- 319 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 10:15:03.35 ID:WI/KbIIf0.net]
- >>301
画像レタッチソフトが定番だろうけど 専用ソフトとか探せばあるかもしれない UWSCのPEEKCOLORつかえば自作できそうでもある 画像上げてくれれば比較ぐらいしてもいいけど(jpgじゃだめだぞ)
- 320 名前:名無しさん@お腹いっぱい。 [2016/09/14(水) 10:21:07.43 ID:Ff8j/0Zp0.net]
- >>303
そうですか うーん、今、職場なのでゲーム用パソコン手元にないのでUP出来ないです それに、使えなくなった画像は消去したのでゴミ箱に残っているかなぁ 画像レタッチソフトというのですか? あとで少し調べてみます ありがとうございます
- 321 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 11:28:09.63 ID:nqS3/9wp0.net]
- >>301
https://sourceforge.net/projects/diffimg/
- 322 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 13:59:12.56 ID:l35EKfvB0.net]
- >>301
完全一致だけ調べるなら、「比較できるバイナリエディタ」でも十分 「比較できるバイナリエディタ」でググれ
- 323 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 14:47:42.28 ID:Sx68OED20.net]
- バイナリエディタである必要が全然ねーよ
- 324 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 14:53:46.48 ID:WI/KbIIf0.net]
- それどころか画像としては完全一致でも
バイナリベースじゃ保存時の条件によって中身違ったりするな
- 325 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 15:04:22.37 ID:CupepcnI0.net]
- どうせいつもの、GPUの仕事のせいでしょ
- 326 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 17:06:02.74 ID:L9div0Uf0.net]
- え?
- 327 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 18:22:07.11 ID:R/8YVAhG0.net]
- >>305
ダウンロードして使ってみた 表示がよくわからないけど違いがあるという事なのかな 何故こんな事が起きるのか原因がわかりますか? とりあえず画像アップ、この2つは、そもそも動かない画像ですが 時間が経つと別の画像と認識されている一例です upup.bz/j/my08508OaMYtDgpPS9tTg7Q.bmp upup.bz/j/my08509AWMYtPPOBaDxNlLI.bmp
- 328 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 18:27:58.05 ID:WI/KbIIf0.net]
- >>311
ttp://i.imgur.com/kHVcGo4.png Photoshopで差を抽出強調してみた 重ねて表示非表示ちらちらやると肉眼でも黄色いところが明らかに違うね というわけで「画像は変化している」という前提で組むしかないでしょう 片方のPCでは平気ということなのでその辺の原因特定できるなら 解消できる可能性もあるが
- 329 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 18:31:00.58 ID:WI/KbIIf0.net]
- あ、上のは同一なら真っ黒ね、念のため
上で言うようなGPUが原因って可能性もあるのかな openGL使ってると表示に揺らぎがあるとか・・・? その辺はおれは分かりません
- 330 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 18:40:45.17 ID:R/8YVAhG0.net]
- >>313
- 331 名前:GPUですか
HDグラフィック4600だっけな ちなみにもう一方のHDグラフィック4000のPCでは、問題は発生していません 画像が変化する前提で組むとなるとなかなk難しいけど、工夫してみます ありがとうございます。 [] - [ここ壊れてます]
- 332 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 18:52:34.17 ID:bjUAODXl0.net]
- 名前忘れたけど
画面を150%拡大する機能があったと思う フォントのスムージング機能や、Aeroの有効無効とかもなんかしてるかも
- 333 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 19:37:50.61 ID:V6+N83nf0.net]
- ゲームの話にいつまで構うん
- 334 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 20:00:59.25 ID:zqeCCfej0.net]
- IMG_MSK_BGR5を使うだけで済む話じゃね
- 335 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 21:11:57.23 ID:zCh7jW700.net]
- ワシも昔ここで教えて貰ったけど
ビデオカードが違うだけでアンチエイリアスの仕様が違って 微妙に異なる画像になる時があったりなかったりって OSが違ったりしてもなるんでないか 泥エミュでも細かい所変わったりするしな
- 336 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 21:18:48.59 ID:Sx68OED20.net]
- 標的となる画像が不透明度100%じゃなくて微妙に背景透過してて
背景の位置が環境によって微妙に異なるせいで認識できなくなるってのもあったな
- 337 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 21:26:50.44 ID:hHa0NVV60.net]
- 毎度の事だけど画像が変化する前提で組むという結論に落ち着くよね
- 338 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 21:32:29.69 ID:Sx68OED20.net]
- >>311
この画像4倍位拡大して画像ビューアで切り替え繰り返すと目視でも違うってわかるな おそらく半ドット位だと思うが位置が上下にずれてるんだな
- 339 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/14(水) 22:11:51.01 ID:ZaXxbRB90.net]
- 引っ掛からなかった画像のスクショを画像ソフト使って
完全一致する部分だけ抽出してけばいつかどの環境でも一致できるだしょ
- 340 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/09/15(木) 17:06:27.51 ID:aw2JOZTD0.net]
- 職場からアクセスして何も言われないなんてゆるい会社だなぁ
なんていうゲームなの?コレ
|
|