16/03/11 19:19:08.73 LoB9QIb70.net
バックグラウンドと画面が隠れていることの違いって何
915:名無しさん@お腹いっぱい。
16/03/11 20:39:57.96 9MIhB+Zw0.net
>>863
クラス名なら、Firefoxは、MizillaWindowsClass
Chromeは、Chrome_RenderWidgetHostHWND
これは取得できて、ハンドルも取得できていて
それは、わかってるんです。
ただのバッググラウンド状態でももちろん試しました
Yahoo知恵袋なども結構参照した方です
ですが、IEとChromeは、MORG_DIRECTが使えて
Firefoxだけは、MORG_DIRECTが使えませんでした。
BTNが反応してくれない。それってあり得るんですかね?
916:名無しさん@お腹いっぱい。
16/03/11 23:22:31.33 V+G/WUuc0.net
While True
ifb CHKIMG("A.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
else
ifb CHKIMG("B.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
else
ifb CHKIMG("C.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
else
sleep(0.3)
BTN(LEFT,CLICK,1000,500)
endif
endif
endif
sleep(0.1)
WEND
こんな感じのマクロを組んだのですが最後の
sleep(0.1)
BTN(LEFT,CLICK,1000,500)
が1秒くらい間隔開けて連打するので困っています
0.3秒くらいの間隔で連打させたいのですが何を弄ればいいのでしょうか?
917:名無しさん@お腹いっぱい。
16/03/11 23:37:24.40 q9CfIyKs0.net
0.3秒+500ミリ秒+0.1秒=0.9秒
当たり前の話でんがな
918:名無しさん@お腹いっぱい。
16/03/11 23:40:11.60 q9CfIyKs0.net
間違えたハズカシ
つかchkimgは範囲が広いとそれだけ時間かかるからPCのスペック次第で時間が変わる
919:名無しさん@お腹いっぱい。
16/03/11 23:55:24.06 V+G/WUuc0.net
>>868
なるほど、処理が追いついていないと
そこそこのスペック持たせてるはずなのに画像認識の処理ってけっこうパワーいるのに驚きです
920:名無しさん@お腹いっぱい。
16/03/12 00:22:19.71 vIYJtZWi0.net
× BTN(LEFT,CLICK,1000,500)
○ BTN(LEFT,CLICK)
921:名無しさん@お腹いっぱい。
16/03/12 00:58:30.41 JA7kK
922:oOW0.net
923:名無しさん@お腹いっぱい。
16/03/12 05:37:53.21 vIYJtZWi0.net
あ、つい。数字をミリ秒と読んでしまって。
画像を小さくして範囲を絞れば速くなります。
範囲を絞るために GETID() で対象ウィンドウを特定して
STATUS() で座標を取って CHKIMG() で範囲を指定します。
MOUSEORGで基準座標を対象ウィンドウにすれば
範囲は 0, 0 からサイズ x, y で指定できるので楽です。
他の方法としては
数ドットの色だけで判定できる場合は
検索範囲の画像を SAVEIMG() でクリップボードにコピーして
クリップボードから PEEKCOLOR() で検索すると早いです。
でも、数ドットで済むようなら1秒もかかってませんね。
924:名無しさん@お腹いっぱい。
16/03/12 08:55:36.12 1ZX49PQ60.net
>>866
なんか凄い見にくいけどこういうことだよね?
While True
ifb CHKIMG("A.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
elseif CHKIMG("B.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
elseif CHKIMG("C.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
else
sleep(0.3)
BTN(LEFT,CLICK,1000,500)
endif
sleep(0.1)
WEND
sleep(0.3)の部分は3回試した後だし、sleep要らないのでは
925:名無しさん@お腹いっぱい。
16/03/12 12:51:15.36 ah+GWDsu0.net
ヒント①
ループ開始時に開始時間を記録
その他のボタンクリック前の時間と開始時間を引いて経過時間を記録
経過時間が300ミリ秒以内ならその時間だけスリープ
ヒント②
DEF_DLL timeGetTime(): LONG: winmm.dll //ミリ秒単位の時間を取得
(わざわざwin32api使うのはUWSCは経過時間の取得は小数点(割合)になるので直感的じゃないから)
926:名無しさん@お腹いっぱい。
16/03/12 12:54:01.60 fkR2rJoF0.net
まあ今回の場合、処理が0.6秒位かかっているようだから
スリープ0にしたところでダメだし時間測るのは無意味と思うけどね。
どちらかというと範囲制限の方が有効だろう
927:名無しさん@お腹いっぱい。
16/03/12 13:11:01.48 ah+GWDsu0.net
それ前提のつもりでした言葉足らずだったね
0.3秒感覚でクリックしたいならそうなるようなロジックが必要ですよと
928:名無しさん@お腹いっぱい。
16/03/12 20:47:24.15 XzxPU9E/0.net
タイミングはシビアになるかもだけど、Thread()で0.3秒ごとにクリック
メインではChkimg()してヒットしたらフラグを立てて
Threadのほうのクリックを抑止してメイン側でクリック
とか?
929:名無しさん@お腹いっぱい。
16/03/13 01:10:40.53 yStCxW+O0.net
まず最初にみんなありがとう
せっかく教えてくれるのにごめん
ミジンコにとっては半分近くが呪文だったのです
>>872
もうちょい画像絞ってみます
知らない関数もあるのでそれも調べてみます
>>873
sleepよりも何よりもelseifの存在を忘れてた自分が馬鹿でした
適当なサイトのコピーから改竄してたのですがこれでC+齧ってたのかと思うと恥ずかしいです
>>874
誤差分だけスリープなんてできたんですね
>>875さんの件も含めて考えて、それで処理時間含めての最短を設定できるように調整してみます
>>877
並列は考えたのですが他の作業中に「そこ」をクリックされると困るので破棄しました
それを破棄した理由が連打させたい時に画面には決まった画像というのがないという事なのです
拾い物の改竄だけだと何も身につかないと再確認して自分を恥じます
勉強しなおして出直しますのでその時また困ったらお力をお貸しください
930:名無しさん@お腹いっぱい。
16/03/13 05:59:29.63 Oa7DQQ9u0.net
chkimg3つをそれぞれ別スレッドで動かして
発見フラグが一つもない時だけ1000,500をクリックでいいのでは
これなら今どきのマルチコアCPUなら3倍速で動くはず?
931:名無しさん@お腹いっぱい。
16/03/13 10:3
932:4:38.97 ID:5BxruRGM0.net
933:名無しさん@お腹いっぱい。
16/03/13 10:38:41.65 5BxruRGM0.net
ARToolKitで複数マーカーを使ってみた
URLリンク(youtu.be)
ARToolKitを使った 「拡張現実感」
URLリンク(kougaku-navi.net)
これだけグリグリ動くんだから
ビットマップの完全一致くらい一瞬じゃないとおかしいんだけどね。
おまけ
URLリンク(astertune.com)
> OpenGLより高速で、iOSに特化したMetalというAPIが昨年登場 (2015年8月30日の記事)
URLリンク(codeit.blog.fc2.com)
> SSE を使用することにより約二倍の高速化が見込まれ
URLリンク(tanakah.blogspot.jp)
> 車速とギアを認識するDirectXフィルター
> やり方ですが、OpenCV1.0についてくるproxytransフィルターを改造してつくります。
> OpenCV cvMatchTemplate()
OpenCvSharp 投稿日: 2014年2月6日
URLリンク(jpusergis.wordpress.com)
C#ならUWSCからPowerShell経由で呼び出せるけど
呼び出しに1秒くらいかかるんだよね。
> 315 名前:Nekorabbit ◆jpnWwiLScI [sage] 投稿日:2014/11/30(日) 07:16:25.97 ID:aCUfDH4j0.net
> 画像認識関数 ChkImgX-ver1.2.0
> URLリンク(googledrive.com)
>
> やっぱりOpenCVを使うようにした。それとソースコードを追加
934:名無しさん@お腹いっぱい。
16/03/13 10:40:01.87 5BxruRGM0.net
やっぱりシンプルで高速なライブラリってのは他にないんだな。
シンプル過ぎてな。
935:名無しさん@お腹いっぱい。
16/03/13 13:21:20.33 DqbPwOfU0.net
>>866
OPTION SHORTCIRCUIT
While True
ifb CHKIMG("A.bmp") or CHKIMG("B.bmp") or CHKIMG("C.bmp")
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
else
BTN(LEFT,CLICK,1000,500)
end
WEND
試してないが、こうやったほうが早いかも
OPTION SHORTCIRCUITは片方の条件を見つけた時点で以降の条件は探さないらしい
これで動いてくれると思う
936:名無しさん@お腹いっぱい。
16/03/13 13:44:27.34 MyuwQ+3+0.net
>>883
それ一緒だから。
実質スリープ無くしただけ
937:名無しさん@お腹いっぱい。
16/03/13 14:35:12.26 0ijLe2jo0.net
UWSCのSHORTCIRCUITはオール・オア・ナッシングで
副作用への注意が必要だからあまり好きじゃない
短絡評価の条件式があれば良いんだけれどね
938:名無しさん@お腹いっぱい。
16/03/13 16:32:38.86 nEkRwzyP0.net
ただの秒数設定ミスのクソ質問かと思いきや微妙に建設的な質問になっててワロタ
939:名無しさん@お腹いっぱい。
16/03/13 16:45:35.50 E0WmGTEK0.net
>>878
いろいろな事を考えると
940:elseifでは対応できない場合も想定されるから 総合的に考えると else if のままのほうがいいみたい? まぁその分endifが増えるんだけど
941:名無しさん@お腹いっぱい。
16/03/14 19:14:44.98 i2rVe3gR0.net
それは総合的に考えるモノじゃないだろう
必要に応じて使い分けるだけで
942:名無しさん@お腹いっぱい。
16/03/14 22:57:21.23 yWL5pN6J0.net
保守のやりやすさまで考えるとelseif一択
else ifのほうが綺麗に書けるケースはちょっと思い浮かばない
943:名無しさん@お腹いっぱい。
16/03/15 01:55:30.43 47j5cpZS0.net
個人的にifは二択のときだけ
それ以外の選択肢が増えそうなときとかはcase文の方を使いたいとこだ…。
944:名無しさん@お腹いっぱい。
16/03/15 03:45:02.21 SCAnh7Td0.net
ifとcaseでは明確に用途が違うような。
945:名無しさん@お腹いっぱい。
16/03/15 03:50:19.31 dAPydsp10.net
俺はcaseは限定的な時にしか使いたくないな
逆にそれ以外はif分岐させてる
946:名無しさん@お腹いっぱい。
16/03/15 04:07:47.33 SCAnh7Td0.net
いやいやいや
caseはひとつの条件式の結果で分岐するもので
elseifは複数の条件式を使うものでしょう?
かぶる部分も無いではないけど、普通は用途で決まるような。
947:名無しさん@お腹いっぱい。
16/03/15 05:28:13.13 47j5cpZS0.net
確かに用途でも決まるね。。
俺が想定してのが単純な一つの値の判定だったから混乱させて申し訳無い
複数の判定が一つの条件式にあると
後から読みにくかったり理解しにくくなったりしそうで
ifの中には一つの判定だけをなるべく書く様にしてるからつい…。
中にどんどんif入れてくのも同様の状態になるから入れ子は少なくすることを検討した作りにしてる
948:名無しさん@お腹いっぱい。
16/03/15 11:35:32.40 Ye8AnKp+0.net
caseはbreakさせないって使い方もあるから、一概にどっちがいいとは言えないね
949:名無しさん@お腹いっぱい。
16/03/15 11:57:04.20 RI0XNTAs0.net
なるほど思い出した
950:名無しさん@お腹いっぱい。
16/03/15 13:32:13.65 H7Ch8AYF0.net
UWSCのSELECTはフォールスルー使えなくない?
ELSEIF連鎖はメーラーの振り分けみたいな優先順位付き判定群だから使い道が違う。
SELECTは1つの判定で複数の分岐。
UWSCのSELECTは、SELECTに書く式を空にして、CASE側に判定式書いても使えるんで、
ELSEIFと同様のこともできるってだけ。
951:名無しさん@お腹いっぱい。
16/03/15 14:33:20.13 K82PCnuw0.net
>>897
> SELECTに書く式を空にして、CASE側に判定式書いても使える
なにそれ。そんなこと出来る?
試した限りではselectに式書かなかったら
case側に何を書いても最初のcaseが実行されるんだが。
select
case 0=1; print "0=1"
case 1=1; print "1=1"
selend
こんなのでも0=1って表示されちゃう。エラーも出ん。
952:名無しさん@お腹いっぱい。
16/03/15 14:44:41.61 zE0f+pvP0.net
空は無理だけど
Select trueとかにしておけばいける
953:名無しさん@お腹いっぱい。
16/03/15 14:51:16.05 215if6Wy0.net
Selectの式の結果 と Caseの式の結果が
最初に一致するCase文が実行される感じなんかな
954:名無しさん@お腹いっぱい。
16/03/15 15:13:32.26 H7Ch8AYF0.net
すまんね空は無理だった
ご指摘の通りtrueにすれば、式がtrueとなる最初のcaseが実行され、
空欄もしくはfalseだと、式がfalseとなるcaseが実行されるね。
955:名無しさん@お腹いっぱい。
16/03/15 23:51:21.72 PCeK8oit0.net
CHKIMGで画像判別 一致したら then で
SOUNDでmp3を再生にしたんですが
音が出たり出なかったり
SLEEPでウエイトを入れたり 構文に trueにして同期させたりしても変わらない
レジストリ関係なのかな?
どこを弄れば直るんでしょうか?
956:名無しさん@お腹いっぱい。
16/03/16 07:35:12.72 LJ+euZnJ0.net
画像判別ができてないのか、音が出てないだけなのか切り分けできてんの?
957:名無しさん@お腹いっぱい。
16/03/16 08:34:48.88 nAh2yAGb0.net
�
958:PにChkimg()で一致してないだけじゃないのか
959:名無しさん@お腹いっぱい。
16/03/16 08:56:46.03 yzWTIl7F0.net
あるある
960:名無しさん@お腹いっぱい。
16/03/16 10:52:10.44 8JIJQW6i0.net
Windows7では問題なく動いていたのですが
仮想環境のWindows Vistaでは一部画像認識が上手くいきません
同じく仮想環境下のWindows7では問題ありませんでした
認識しない画像をVista内で切り取るとうまくいくのですが
それでは膨大な作業量になります
ご助言をお願い致します
961:名無しさん@お腹いっぱい。
16/03/16 11:09:21.22 /XbN41Fg0.net
chkimgの色幅を試す
ChkImgXを試す
照合画像を造り直す
基本的にグラフィックドライバでイメージは変わる可能性があるという事を覚えておこう
だから使用する環境でキャプチャするのが鉄板
962:名無しさん@お腹いっぱい。
16/03/16 11:16:46.80 8JIJQW6i0.net
ありがとうございます
ちょっと量が量なのでWindows7のライセンスもう一つを購入したいと思います
963:名無しさん@お腹いっぱい。
16/03/16 18:04:20.19 2Mv7Yb1h0.net
>>907
グラフィックドライバで変わるのか
キャプチャのやり直しは正直疲れる
964:名無しさん@お腹いっぱい。
16/03/16 19:52:25.50 0mxs1TOv0.net
変わるんだよな~ アンチエイリアスなんだろうな。
あとOSやブラウザの変更でフォントも変わることがあり、
文字列取得できなくて画像判定で代用してるとハマるね~
環境で変わるのに対抗するのにも、一番有効なのは仮想化。
965:名無しさん@お腹いっぱい。
16/03/18 14:40:05.44 fdkkgXvY0.net
dim array[] = 0,1,2,3,4,5,6,7,8,9
for i=0 to 100
j = i mod 10
t=G_TIME_SS mod 10
print array[j]+" "+t
gettime()
if array[j]=t then i=i+t
sleep(0.1)
next
というように特定条件下でループを任意の回数飛ばしたいんですが
forの変数は内部から参照することは出来ても値を変更して
ループに反映することは出来ないみたいで思うようには動きません。
forではなくwhileを使えば解決する話ですが、forでこういう事は絶対出来ないんでしょうか?
966:名無しさん@お腹いっぱい。
16/03/18 15:05:30.02 Y8LfVAQe0.net
for は 初期値 終了値 加算値 をシンプルに表現してループさせる構文なので無理
967:名無しさん@お腹いっぱい。
16/03/18 17:26:15.26 Dic6Ty9l0.net
if i<k then continue
...
if array[j]=t then k=i+t
とかじゃだめ?
968:名無しさん@お腹いっぱい。
16/03/18 18:48:34.55 37KGhb4W0.net
申し訳ない・・・知恵を貸して下さい・・・。
やりたい流れのイメージ
①一致画像をクリック
↓
画像判断。画像によって条件分かれ
(ここの作り方が不明・・・)
↓
③一致画像をクリック
↓
④一致画像をクリック
969:名無しさん@お腹いっぱい。
16/03/18 18:50:26.76 37KGhb4W0.net
画像判断の部分はこんな内容です。分かりますか?
①ifb CHKIMG(“xxx.bmp”)
x=G_IMG_X
y=G_IMG_Y
BTN(LEFT, CLICK, x , y , 100)
endif
―――――――――
1、画像Aがあるか判定
2、画像Aがある場合は「③」へ
3、画像Aが無く画像Bがあった場合は↓
(Cの画像をクリック)
(Dの画像をクリック)
4、順番にC.Dの画像をクリックし終わったら
「①」最初の動作にへ戻る、
又は「③」へ通常移行。
又は「③」をスキップし「④」へ移行
―――――――――
970:名無しさん@お腹いっぱい。
16/03/18 18:51:32.08 37KGhb4W0.net
素人すぎて正しく伝わっているか心配ですが、
アドバイスを貰えると有り難いです・・・。
971:名無しさん@お腹いっぱい。
16/03/18 18:56:09.29 37KGhb4W0.net
尚、
「①」最初の動作にへ戻る、
又は「③」へ通常移行。
又は「③」をスキップし「④」へ移行
この3パターンは「3個同時で判定」ではなく、
全て「単体」で動作させる事を前提とした場合のスプリクトです。
972:名無しさん@お腹いっぱい。
16/03/18 19:01:31.23 JI+YMOVs0.net
そうだね!がんばれ!
973:名無しさん@お腹いっぱい。
16/03/18 19:13:18.26 cs2HMD100.net
フローチャート作って
974:名無しさん@お腹いっぱい。
16/03/18 19:14:32.75 37KGhb4W0.net
>>919
了解致しました。
少々お待ち下さいませ。
975:名無しさん@お腹いっぱい。
16/03/18 19:44:54.92 37KGhb4W0.net
>>919
お待たせしました。2パターン作りました。
画像Cからのジャンプ先は①にしてますが、場合によって③や④にも変えたいです。
URLリンク(www.dotup.org)
URLリンク(www.dotup.org)
シンプルに作ってみたのですが、どうでしょうか。
976:名無しさん@お腹いっぱい。
16/03/18 20:28:40.25 3mTNmK/i0.net
そこまで出来てるならそのままコーディングすればいいだけじゃ?
977:名無しさん@お腹いっぱい。
16/03/18 20:41:45.76 XTMTGWl20.net
>>922
元々スプリクトを使わない自動化ソフトを使っており、頭の中で流れの構築は出来ているのですが、
スプリクト上に起こすのがどうしても難しく、、。
頭でイメージ出来ているのに、絵に描けない状態です、、、。
978:名無しさん@お腹いっぱい。
16/03/18 20:49:53.51 wiffpfVZ0.net
①, ③, ④ をそれぞれ関数化するといいような気がするよ
979:名無しさん@お腹いっぱい。
16/03/18 21:06:54.37 a/2iCbr10.net
>>921です。
正直センスが無さ過ぎて、見せるのも恥ずかしいのですが・・・。
一応途中まで作ったスプリクトです。
URLリンク(www.dotup.org)
980:名無しさん@お腹いっぱい。
16/03/18 21:43:41.41 p+rJK2780.net
>>925
画像1と画像2の関係性は?
画像1をクリックしたら画像1が消えて画像2がでてくる?
画像1をクリックしたら画像1も画像2も表示されてる?
981:名無しさん@お腹いっぱい。
16/03/18 22:12:44.85 a/2iCbr10.net
>>926
画像はクリック毎に、前の画像は消えて、
次は必ず決まった画像が一個出ます。
画像判断の所だけ、別の画像が出てくる場合がある為、
この様な条件付き画像判断スプリクトを組み込む必要があります。
982:名無しさん@お腹いっぱい。
16/03/18 23:36:00.24 lyGpkKZO0.net
たぶん、"IF"ってのの使い方を勉強するといいと思う
983:名無しさん@お腹いっぱい。
16/03/18 23:44:46.31 p+rJK2780.net
>>927
while 1
if chk 画A
if chk 画④
elseif chk 画③
endif
elseif chk 画B
if chk 画D
elseif chk 画C
endif
elseif chk 画②
elseif chk 画①
endif
wend
こういう感じ?
984:名無しさん@お腹いっぱい。
16/03/19 00:04:11.56 SY2bECL70.net
while true
画像クリック("画像①")
画像クリック("画像②")
if chkimg("画像A") then break
画像クリック("画像B")
画像クリック("画像C")
wend
画像クリック("画像③")
画像クリック("画像④")
procedure 画像クリック(画像)
chkimg(画像)
btn(left, click, G_img_X, G_img_Y)
fend
985:名無しさん@お腹いっぱい。
16/03/19 00:08:39.27 BW58rut60.net
フローチャート作れるならトライアンドエラーで頑張れ
986:名無しさん@お腹いっぱい。
16/03/19 01:41:22.95 bIkT5e8S0.net
>>930
素人の私でもめちゃくちゃ分かりやすいです、激しく感謝します!
動作確認してみましたが、全く問題なく希望通りの動きをしてくれました!
最後にもう一つだけ教えてください・・・。画像④の後に「wend」を持ってきて
一番最初の「while true 」に戻らせてループさせようとしたらエラーが出ました。
これは何が原因になるのでしょうか??
987:名無しさん@お腹いっぱい。
16/03/19 01:43:58.70 4bvWfFXm0.net
whileとwendは必ず1個ずつのセットじゃないとだめ
一連の処理を繰り返させたいなら、wendを画像④の下に置くだけじゃなくて最初のwhileの更に上にwhileを置かないと
988:名無しさん@お腹いっぱい。
16/03/19 01:56:50.27 bIkT5e8S0.net
>>933
私も最初そう思ったんですが、なんかエラーが出たのであれ・・?と思いまして
URLリンク(www.dotup.org)
こういう事ですよね?
989:名無しさん@お腹いっぱい。
16/03/19 02:07:08.90 FgddRy/I0.net
trueが無いじゃん。
990:名無しさん@お腹いっぱい。
16/03/19 02:07:45.33 4bvWfFXm0.net
ワロタ
991:名無しさん@お腹いっぱい。
16/03/19 02:08:06.81 jrQgNiRM0.net
最初のwhileの条件が無いとか?
ヘルプで分かる内容は質問しない方がいいよ
992:名無しさん@お腹いっぱい。
16/03/19 02:35:41.05 bIkT5e8S0.net
while true
初歩的なミスでした、、、申し訳ないです。
皆様のアドバイスのお陰で
993:本当に捗りました。 繰り返しになりますが、有り難うございます! wend
994:名無しさん@お腹いっぱい。
16/03/19 02:56:04.14 tZvnxb2Q0.net
インデント入れろよ。
995:名無しさん@お腹いっぱい。
16/03/19 03:59:10.94 aYU7I2EX0.net
みんな優し過ぎてww
996:名無しさん@お腹いっぱい。
16/03/19 08:12:31.88 BINz+wH10.net
優しいな
俺がこんな質問した時は完全スルーされたぞ
997:名無しさん@お腹いっぱい。
16/03/19 08:20:59.56 fFrQFvev0.net
自分でコードを書く努力している人だからでしょ
998:名無しさん@お腹いっぱい。
16/03/19 11:07:56.96 YmXGVn/20.net
フロチャート作ってちょっとづつスクリプトを書いてまめにテストする
オイラの経験上ifb while たまにbreakでたいがいのゲームは動く
コツは最初はsleepに余裕をもって書く
パートを分けるんだな 戦闘、補給、修理 これらをcallで呼び出す
そうするとイベントやりながら通常戦闘もできるぞ
ゲームの完全自動化までがんばれ
(´・ω・`)
999:名無しさん@お腹いっぱい。
16/03/19 11:21:09.91 YmXGVn/20.net
あとゲームにありがちな点滅、明滅するボタン
ボタンの上に光がもやもやしてたり炎がメラメラしてるときは
他の安定してる画像をchkimgしてそこからx+A y+Bするときっちりボタン押せるぞ
(´・ω・`)
1000:名無しさん@お腹いっぱい。
16/03/19 14:27:55.04 7vlPDXm10.net
>>944
そういうのは短い時間でchkimgを繰り返せば認識できるぞ
1001:名無しさん@お腹いっぱい。
16/03/19 14:43:51.18 w1t+Hd6h0.net
>>945
それするぐらいなら>>944のほうが確実
1002:名無しさん@お腹いっぱい。
16/03/19 14:54:36.33 7vlPDXm10.net
>>944では通用しないケースは割とあるからな
1003:名無しさん@お腹いっぱい。
16/03/19 20:11:11.15 BINz+wH10.net
メラメラはいつもは諦めてほかの画像からの相対座標使ってますけど
メラメラは一致するまでwhile chkimgでいいのですか?
メラメラは私も苦手です
1004:名無しさん@お腹いっぱい。
16/03/19 20:26:21.82 71k0Vm/10.net
色幅を持たせてchkimgすればいい
1005:名無しさん@お腹いっぱい。
16/03/19 20:52:39.80 BINz+wH10.net
>>949
ありがとうございます。感謝します
もう一つ質問失礼します
今色幅IMG_MSK_BGR4でやったのですがもっと広げる方法ありますか?
メラメラが水色-黄色-赤みたいな感じのメラメラです
1006:名無しさん@お腹いっぱい。
16/03/19 20:57:57.92 bgGs7ybY0.net
そこまでは無理
1007:名無しさん@お腹いっぱい。
16/03/19 21:02:17.45 BINz+wH10.net
>>951
ありがとうございます。素直に相対座標を使います
1008:名無しさん@お腹いっぱい。
16/03/19 21:04:56.10 szW1lJKS0.net
色無視入れたらどう
1009:名無しさん@お腹いっぱい。
16/03/19 21:49:17.82 BINz+wH10.net
gifのメラメラは色幅と色無視両方1秒以内で認識しました
FFのような(画像?)メラメラはどちらもダメでした。10秒タイムアウト
では失礼します
1010:名無しさん@お腹いっぱい。
16/03/19 21:50:22.43 71k0Vm/10.net
>>950
定数じゃなくても、自分で好きな数値指定できるよ
1011:名無しさん@お腹いっぱい。
16/03/19 22:48:20.75 ejAiv50P0.net
不特定多数の場で堂々とゲームの自動化を口にするでないグラブル厨か?
ぼかして言うのが作法だぞ。
作法を守らないならネトゲそのものが嫌になるような脱洗脳スクリプト貼るからな。
1012:名無しさん@お腹いっぱい。
16/03/19 22:49:54.86 ejAiv50P0.net
にしても本当にフローチャート書いてくるのは珍しいな。
構造文もまともに知らない時点でこれなら十分適正あるな。
1013:名無しさん@お腹いっぱい。
16/03/20 02:13:45.61 PtQjd96F0.net
以前まではここでゲームの話題はNGだったんだけどね
質問者も変われば回答者も変わった
1014:名無しさん@お腹いっぱい。
16/03/20 02:49:33.10 157+05md0.net
その以前の前のことも知らんのか
ほんとに変わったな
1015:名無しさん@お腹いっぱい。
16/03/20 07:39:38.49 6LNOBso90.net
peekcolor関数を使う際に範囲が 指定できますが、
マウスカーソル周囲を指定することってできないのですか?
1016:名無しさん@お腹いっぱい。
16/03/20 07:45:07.67 6rS3nJ0Q0.net
範囲でない座標のみ
そしてマウス座標は特殊変数に入っている
ヘルプの スクリプト→スクリプト関数→特殊変数 辺
1017:りを見ろ あと本当に周辺を調べたいなら PEEKCOLORをループさせるユーザー関数化する必要があるぞ
1018:名無しさん@お腹いっぱい。
16/03/20 08:00:40.40 6LNOBso90.net
ありがとう
マウス座標そのものではなく、
マウス座標から、その周辺を調べたいんです
最終的にPEEKCOLORでマウス座標周辺の色を取得し続けるという動作をしたかったのですが
すみませんPEEKCOLORをループさせるユーザー関数とは、どんなものでしょうか
もう少し詳しく教えてくれませんか
1019:名無しさん@お腹いっぱい。
16/03/20 08:17:15.47 h63WLHEt0.net
フローチャートじゃなくてそのまんまコードじゃん
1020:名無しさん@お腹いっぱい。
16/03/20 08:51:03.34 6rS3nJ0Q0.net
考える事を否定している人にはヒントすら惜しいなぁ
マウス座標は特殊変数に入っている
マウス座標の周辺とは矩形であれば-10と+10とかで表現可能
Forは変数に初期値、終了値、増減値を設定してループ可能
後はユーザー関数の引数と戻り値かな
判断材料(引数)とその結果(戻り値)なんで
同じ色が複数あった場合にどうしたいかとか
考えることは色々あるよ
1021:名無しさん@お腹いっぱい。
16/03/20 16:51:23.89 xNax6tI9f
peekcolorが遅い。
具体的には1点15msくらいかかる。
UWSCが全体画像取得から1点取り出して調べてるから遅いんであって、
ある程度範囲をまとめて取得したいってのがこの質問の趣旨じゃないかな?
そんな方法ありませんか?
ないです。
このスレにある画像判定Xを使うと、3つの画像判定が1回分の画像判定の処理速度でできたりとかするんですか?
それなら画像をドットにして代用できそうですが?
1022:名無しさん@お腹いっぱい。
16/03/21 19:07:10.29 7t5Ndceu0.net
>>932です。以前、皆様より頂いたアドバイスを元に自分なりにスプリクトを考えてみました。
一応希望通りの動作はしてくれる為、内容としては完成しました。
もしよろしければ「もっとこうしたらいいよ」「こういうやり方もあるよ」等
厳しいお言葉でも結構ですので、アドバイスを頂けると幸いです。
URLリンク(www.dotup.org)
URLリンク(www.dotup.org)
1023:名無しさん@お腹いっぱい。
16/03/21 19:43:31.70 FyEV7Y7F0.net
斬新なインデントですね
1024:名無しさん@お腹いっぱい。
16/03/21 19:49:10.85 WT79cWH60.net
エクセルかこれ…?
まずはまともなテキストエディタを拾ってくるのが先だろ
1025:名無しさん@お腹いっぱい。
16/03/21 19:54:36.21 JOINNpX40.net
やっぱりゲームか・・・
1026:名無しさん@お腹いっぱい。
16/03/21 20:02:44.88 ZoeE04qr0.net
>>967
インデントというか、自分なりに見やすくした結果
こういう分け方になりました・・
1027:名無しさん@お腹いっぱい。
16/03/21 20:09:11.46 ZoeE04qr0.net
>>968
テキストエディタという物の存在自体をしりませんでした・・・。
サクラエディタという物をDLしてみましたが・・・めちゃくちゃ便利ですねこれ・・。
1028:名無しさん@お腹いっぱい。
16/03/21 23:00:19.32 +SrzIg6H0.net
サクラエディタは強調ワードにUWSCスクリプトを指定できるのは過去ログ読めば出てくるしやってるよな?
インデントはこれかな~
URLリンク(ja.wikipedia.org)
URLリンク(www.google.co.jp)
1029:名無しさん@お腹いっぱい。
16/03/21 23:20:08.26 Dl8KMauT0.net
>>966
ゲームマクロはにごせって言われただろ馬鹿
1030:名無しさん@お腹いっぱい。
16/03/22 00:18:54.15 YYqgpZK30.net
>>971
emEditorってのもオススメ
サクラと使い分けるのもいいけど
1031:名無しさん@お腹いっぱい。
16/03/22 04:46:30.63 DDV+vLl80.net
ゲームマクロの質問に答え始めるとド初心者のマクロの話題だらけになるぞ
1032:名無しさん@お腹いっぱい。
16/03/22 07:19:13.62 ey+ZWHj+0.net
インデント難しい
字下げすると見にくくなって自分でよく解らなくなる
1033:名無しさん@お腹いっぱい。
16/03/22 07:41:59.43 GjQDazUb0.net
字下げして見難くなるとか何かがおかしい
1034:名無しさん@お腹いっぱい。
16/03/22 08:10:41
1035:.21 ID:C5ffbueJ0.net
1036:名無しさん@お腹いっぱい。
16/03/22 08:45:39.65 1TlcaC730.net
aaa(){
// こっちつかう
}
aaa()
{
// これの人も多い
}
1037:名無しさん@お腹いっぱい。
16/03/22 09:00:46.38 C5ffbueJ0.net
} else { //これが無性に気にくわない
1038:名無しさん@お腹いっぱい。
16/03/22 09:02:54.38 1TlcaC730.net
となると下が一般的なのかな?
1039:名無しさん@お腹いっぱい。
16/03/22 09:35:25.64 S1yVAMwN0.net
ここは幼稚園か
uwscと関係ない話はほどほどにな
1040:名無しさん@お腹いっぱい。
16/03/22 23:47:34.60 Ol86bvxv0.net
少し知恵をお貸し下さい。
通常の画像認識は出来るのですが、少し光を帯びた(点滅)の画像の判定はどのようにするのがセオリーなのでしょうか?
色幅は?と思い、BGR3で試してみましたがうまくいきませんでした
while true
ifb CHKIMG("A.bmp") //A画像認識
x=G_IMG_X //代入
y=G_IMG_Y //
BTN(LEFT, CLICK, x+5, y+5, 100) //画像クリック
sleep(2) //待機
endif
wend
お願い致します。
1041:名無しさん@お腹いっぱい。
16/03/23 00:11:32.78 Y8+Uhjvq0.net
ゲームマクロの質問に安易に答えるとこうやって調子こいて次から次へとこういう質問をしてくる
1042:名無しさん@お腹いっぱい。
16/03/23 00:23:26.39 F3sbSHdJ0.net
>>983
スレチ。
特異点を見つけるだけ。
1043:名無しさん@お腹いっぱい。
16/03/23 00:24:03.93 LGiv8vs60.net
>>983=>>920じゃないの
当人だとしても別人だとしてもばかちんにかわりは無いけど
1044:名無しさん@お腹いっぱい。
16/03/23 00:53:32.64 Y8+Uhjvq0.net
どう見ても同一人物
1045:名無しさん@お腹いっぱい。
16/03/23 01:37:19.33 ojrTHT/Q0.net
しょうもない質問で埋まってきたな
1046:名無しさん@お腹いっぱい。
16/03/23 11:51:42.28 CF5/3UwB0.net
同一人物じゃねぇだろ。
前のヤツはもう完成したスプリクト張ってたし
1047:名無しさん@お腹いっぱい。
16/03/23 12:00:41.47 CF5/3UwB0.net
>>983
>>945これでいいじゃん。なにが問題なの?
1048:名無しさん@お腹いっぱい。
16/03/23 12:34:28.58 Pb+9aq2M0.net
> スプリクト
1049:名無しさん@お腹いっぱい。
16/03/23 14:20:10.33 LGiv8vs60.net
スプリクトで検索した結果くそわろち
903 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/18(金) 18:56:09.29 ID:37KGhb4W0 [4/6]
尚、
「①」最初の動作にへ戻る、
又は「③」へ通常移行。
又は「③」をスキップし「④」へ移行
この3パターンは「3個同時で判定」ではなく、
全て「単体」で動作させる事を前提とした場合のスプリクトです。
909 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/18(金) 20:41:45.76 ID:XTMTGWl20
>>922
元々スプリクトを使わない自動化ソフトを使っており、頭の中で流れの構築は出来ているのですが、
スプリクト上に起こすのがどうしても難しく、、。
頭でイメージ出来ているのに、絵に描けない状態です、、、。
911 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/18(金) 21:06:54.37 ID:a/2iCbr10 [1/2]
>>921です。
正直センスが無さ過ぎて、見せるのも恥ずかしいのですが・・・。
一応途中まで作ったスプリクトです。
URLリンク(www.dotup.org)
913 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/18(金) 22:12:44.85 ID:a/2iCbr10 [2/2]
>>926
画像はクリック毎に、前の画像は消えて、
次は必ず決まった画像が一個出ます。
画像判断の所だけ、別の画像が出てくる場合がある為、
この様な条件付き画像判断スプリクトを組み込む必要があります。
1050:名無しさん@お腹いっぱい。
16/03/23 14:21:00.41 LGiv8vs60.net
951 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/21(月) 19:07:10.29 ID:7t5Ndceu0
>>932です。以前、皆様より頂いたアドバイスを元に自分なりにスプリクトを考えてみました。
一応希望通りの動作はしてくれる為、内容としては完成しました。
もしよろしければ「もっとこうしたらいいよ」「こういうやり方もあるよ」等
厳しいお言葉でも結構ですので、アドバイスを頂けると幸いです。
URLリンク(www.dotup.org)
URLリンク(www.dotup.org)
974 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/23(水) 11:51:42.28 ID:CF5/3UwB0 [1/2]
同一人物じゃねぇだろ。
前のヤツはもう完成したスプリクト張ってたし
1051:名無しさん@お腹いっぱい。
16/03/23 14:49:52.58 q+4+2VgZ0.net
www
1052:名無しさん@お腹いっぱい。
16/03/23 14:53:03.90 Y8+Uhjvq0.net
ブラゲクソガキは自演までしてんのか
この共通した無駄な部分がある糞コード見りゃ同じってすぐに分かるのにな
1053:名無しさん@お腹いっぱい。
16/03/23 15:24:33.17 tn83PLJk0.net
>>989
>>989
>>989
1054:名無しさん@お腹いっぱい。
16/03/23 15:24:46.46 NjVpGs9j0.net
最初に突っ込んでやろうかと思ったけどスルーしておいてよかった
1055:名無しさん@お腹いっぱい。
16/03/23 15:29:26.46 iSrnwjTb0.net
975 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/03/23(水) 12:00:41.47 ID:CF5/3UwB0 [2/2]
>>983
>>945これでいいじゃん。なにが問題なの?
このレスがまた笑えるw
1056:名無しさん@お腹いっぱい。
16/03/23 15:49:32.31 SZmWshPl0.net
画像認識ってゲーム系以外だと主に何に使うの?
1057:名無しさん@お腹いっぱい。
16/03/23 16:32:45.56 U9esxu690.net
スプリクト
1058:名無しさん@お腹いっぱい。
16/03/23 18:53:42.87 2z8VVxvV0.net
スクリプトをスプリクトというのは既出をガイシュツ(何故か変換できない)みたいなもんだろ。
動きのある画像判定は工夫次第、方法を自分で編み出して秘密にしておかなければ広まったら対策されるだけ。
ヒントとしては状況を特定するための手段
1059:なのであれば、その状況を確定できる動きのない不透過部分がないか探すのが第一。 直接だけではなく対象のソフト上でサブメニュー出してみたり何なりの間接的な手段も併用する。 動きのある画像しかなければ、その動きが一番遅くなる時の1コマの画像を使い、 動きがループして最初に戻るまでの間、継続的に判定し続ける。当然処理は遅く重くなる。
1060:名無しさん@お腹いっぱい。
16/03/23 19:01:18.76 VyfxdPXZ0.net
すぷりくと という間違いがバカにされてるわけじゃないんだよ?
1061:名無しさん@お腹いっぱい。
16/03/23 19:24:36.03 qNW8EAYN0.net
>>1001
すぐに誤字や変換ミスを指摘するのは病んでるよ
もっと余裕持たないと顔に出ちゃうよ
1062:名無しさん@お腹いっぱい。
16/03/23 19:33:23.63 OFvmjkT/0.net
ゲシュタルト崩壊してきた
1063:名無しさん@お腹いっぱい。
16/03/23 19:56:05.50 NgjE2cjv0.net
現在タイマー設定の式による設定で
(9<=HH AND HH<18) AND ((YMDNN mod 25) = 0)
として9時から18時までプログラムを実行させているのです。
これをもう少し細かく8時40分から17時55分までにしたいのですが、
どのように設定したらよいでしょうか?
1064:名無しさん@お腹いっぱい。
16/03/23 20:06:18.89 vA7M7au70.net
>>1005=ID:kLHNktmf0
だからここは拾ったスクリプトの改造法を聞くとこじゃない
1065:名無しさん@お腹いっぱい。
16/03/23 20:12:20.70 LGiv8vs60.net
>>1001
これ以上わらかさないで
次スレいってくる
1066:名無しさん@お腹いっぱい。
16/03/23 20:14:26.73 LGiv8vs60.net
スレリンク(software板)l50
はい
1067:991
16/03/23 20:18:27.14 vA7M7au70.net
>>1005
と思ったら、これってUWSC本体のスケジュール設定のことか。失礼。
こんな機能は自分でスクリプトに組み込んだ方が楽だから、使う人少ないと思う。
1068:名無しさん@お腹いっぱい。
16/03/23 20:30:41.58 vA7M7au70.net
>>1005
こんな感じ、かなぁ?
((9<=HH AND HH<17) or (HH=8 and NN>=40) or (HH=17 and NN<=55)) AND ((YMDNN mod 25) = 0)
1069:名無しさん@お腹いっぱい。
16/03/23 21:21:44.74 xEMVsYD30.net
>>1005
時間を分に直せばいいんじゃない?
1070:名無しさん@お腹いっぱい。
16/03/23 21:43:13.06 OPsOkY1U6
>>1005
スケジュール設定->タイマー設定->式による設定 8時40分から17時55分まで25分間隔で実行
(840<=HHNN AND HHNN<1755) AND (YMDNN mod 25) = 0
1071:名無しさん@お腹いっぱい。
16/03/24 00:46:59.95 WL420SBN0.net
>>1010
ありがとうございました
1072:名無しさん@お腹いっぱい。
16/03/24 06:03:20.37 IqeVqZIs0.net
> YMDNN mod 25) = 0)
これって日によって起動時間が変わると思うけどそれでいいの?
1073:名無しさん@お腹いっぱい。
16/03/24 12:03:56.76 WL420SBN0.net
>>1014
確認してみたら日によって起動時間変わっちゃってました
毎日8時40分から17時55分まで25分おきに実行させたいのですが…
分に直して
(520<=NN AND NN<1075) AND ((YMDNN mod 25) = 0)
と入力すると「1年以内での実行はなし」と出てしまいました
1074:名無しさん@お腹いっぱい。
16/03/24 12:43:37.75 LgRlES+x0.net
>>1015
HHを分に直せよ・・・
1075:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 133日 22時間 58分 9秒
1076:1002
Over 1000 Thread.net
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
──────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
──────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
URLリンク(premium.2ch.net)
URLリンク(pink-chan-store.myshopify.com)
1077:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています