[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 06/01 13:14 / Filesize : 257 KB / Number-of Response : 662
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

自動化ツールuwsc使いよ集まれ5



1 名前:名無しさん@お腹いっぱい。 [2009/12/09(水) 05:27:33 ID:J1DL1P1U0]
Windowsを自動化させるツールUWSC。
www.uwsc.info/

uwsc使いのみなさま、マターリ己のスクリプトを晒しましょ。

463 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/25(火) 23:42:12 ID:PWagYqdo0]
sleep(2)
sleep(2)



sleep(4)

は同じことですか?



464 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 00:45:15 ID:tqM7XX7P0]
>>455
タスクマネージャにuwsc.exeがあれば実行中かも。
メイン画面も1件としてリストに出てくるけど、見た目で実行中か分かるし。
コマンドはqprocess


>>457-462
試してみたけど、スクリプトの保存形式はunicodeでも動くけど、コードの扱いはシフトJISだね。

DEF_DLL MessageBoxA(HWND,pchar, pchar, DWORD): Long: user32.DLL
DEF_DLL MessageBoxW(HWND,pchar, pchar, DWORD): Long: user32.DLL
MessageBoxAなら保存形式に関係なくテキストが表示できるけど、
MessageBoxWだと文字化け。


>>463
微妙に違う。
sleep(2)×2の方がCPUを消費するし、時間もかかる。


465 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 01:15:34 ID:HAnL27G70]
なんで教えを乞う立場の者が煽れるんだろう。
基本的に人間ができてないな。

466 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 04:40:14 ID:7RyXzF0VP]
人間的云々言う場所じゃないだろ
嫌ならレスするなカス

467 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 07:11:30 ID:L/ZmdYFd0]
レスしているのは人工知能だよ

468 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 09:36:14 ID:bXusYbn00]
じゃあ俺も人口知能!

469 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 15:21:35 ID:Ce2KrQJg0]
このスレの人口分布

回答者・・・・・・・・・・・・・・・・・・・ 1%
質問者・・・・・・・・・・・・・・・・・・・10%
態度がでかい自称回答者・・・89%

470 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 18:00:04 ID:DoB0DBXA0]
なぜ態度のでかい質問者がないんだろう

471 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 18:03:02 ID:Y3WtWtht0]
実際はレベルの低い回答者が原因で荒れるからだろ



472 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/26(水) 22:45:02 ID:HAnL27G70]
>>466
悔しそうだなwカスw

473 名前:名無しさん@お腹いっぱい。 [2010/05/28(金) 06:10:20 ID:6og4XoNt0]
ついでに書いておくと、Pythonの場合は保存形式の文字コードがスクリプトにも反映される。
だから大変。
Pythonでも新しめのバージョンでは、リテラル文字指定でユニコードに指定できたりする。



それよりこれ。
for i = 1 to 33000
 navigate(url)
 sleep(1)
next
この程度のスクリプトで逮捕ですよ。

【社会】 図書館HPにアクセス3万3千回で、会社社長逮捕。1秒に1回アクセス繰り返すプログラム作る…愛知
ttp://tsushima.2ch.net/test/read.cgi/newsplus/1274928007/


474 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/28(金) 11:11:33 ID:kipVwqRc0]
それは手動でやってても同じだわな。
問題なのはスクリプトじゃなくて意図。

475 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/28(金) 12:08:01 ID:XdAWpU3T0]
>図書館のホームページに集中的にアクセスし、閲覧しにくくしたとして、 逮捕・・・

1秒間に3万3千回アクセスかと思ったら、1秒間に1回かよ?
逆に1秒間に1回のアクセスで重くなるHPなんて、どうやったら作れるんだよ?

476 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/28(金) 12:10:35 ID:N8m5GgbM0]
>>473
お前素人だろ


477 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/28(金) 13:27:01 ID:kipVwqRc0]
>>475
日本のお役所仕事を舐めちゃいけない

478 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/28(金) 18:03:34 ID:a1h0S9px0]
>>475
きっと鯖が初代PC98のまま更新できなかったりするとそうなるんじゃね?

479 名前:名無しさん@お腹いっぱい。 [2010/06/01(火) 04:12:46 ID:6RwPsnvD0]
343 名前:名無しさん@十周年[sage] 投稿日:2010/06/01(火) 01:25:49 ID:SDO0GhkS0
 楽天プライズでUWSCのスクリプトで24時間スロット廻し続けてたら対策された。
 何時間も遊んでたら「遊びすぎじゃ、休憩せい」って弾かれる様になったのは
 俺のせい。 楽天グッズとかショボイ景品が途中で出るようになったのも俺のせいかも。

 ちなみに、ゴールドは長時間遊ぶほどに出玉が悪くなる仕様だと統計とれた。

480 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/01(火) 09:26:32 ID:OoGhQHoP0]
20年以上動いてる鯖があるってのか

481 名前:名無しさん@お腹いっぱい。 [2010/06/01(火) 09:43:30 ID:6RwPsnvD0]
30年前のだって現役です

【大分】 「『ょ』入力できぬ」代わりに「き『よ』う子」と入力した健康保険証や年金手帳などを発行 年金事務所が謝罪
ttp://tsushima.2ch.net/test/read.cgi/newsplus/1275304190/
>  同事務所が調べたところ、使用しているシステム(国が1980年に導入)は通常のパソコンとは違い、
> 「ょ」「っ」などは特殊な入力方法のため、職員が知らなかったらしい。



482 名前:家電.com [2010/06/01(火) 09:47:46 ID:Cz2396tn0]
家電.com
HP
Kadencom.chochouo.com



483 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/04(金) 23:40:40 ID:iS3gjDV40]
2chなどでリンクを踏んだら直接リンク先に行くのではなく
リンク確認の画面に一度飛ばされるのですが、
その画面になったらすぐに次のリンクをクリックする
スクリプトを書きたいのです。

UWSCの誘惑にクリップボードのURLをブラウザに渡すスクリプトあるけど、
そうじゃない形で常に監視しておく形で次々にリンクを踏む形を
取りたいのです。

だれか書いてくださいませんか? お願いします。
初心者ながら書いているのですが
エラーがでてしまいます。

484 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 00:04:07 ID:iS3gjDV40]
こんなんじゃ、まだまだ遠いですか?
エラーでてとまっちゃいます

ctrlwin(getid("","TAppication"),activate)
STOPFORM(TRUE) // ストップボタン表示
ACW(0, 1150, 850)

IE = CREATEOLEOBJ("InternetExplorer.Application")
IE.visible = true
X=0
repeat

IEid = GETID("Internet Explorer")

wks = GETSTR(IEid, 0, STR_STATIC )  // タイトルをGET


IFB POS("リンク確認", wks) > 0 THEN
MsgBox("発見")
sleep(0.5)
UNTIL !IE.busy AND IE.readystate = 4

ret = IELINK(IE,"上記のページにジャンプしようとしています。問題ない場合はクリックしてください")
x=x+1

ELSE
 sleep(1)

ENDIF
until x <> 30

485 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 01:01:23 ID:7xrzyNYi0]
敢えて言おう。専ブラ使え。

486 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 01:32:53 ID:sSGL2jFW0]
初歩的な質問ですみません。
for i= 1 to 100
で回している間、実行したくない i に対して
if i=5 or i=10 or i=32 or i=56 then ・・・
の様に書いているのですが、 i= が多くなると書くのが面倒くさいのでもう少しまとめて
書く方法はあるのでしょうか?例えば
i=(5,10,32,56)
みたいに・・。これではダメだとは思うのですが、他の書き方で。
どなたかお願いします。

487 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 03:01:33 ID:7xrzyNYi0]
実行したくない数に法則性があるならそれを式にする。
単なるリストならそれを置換して作ってしまえば。

置換したくない番号の配列作っておいて、iをそれを比較するとか。

for i=0 to 10
if isNG(i) then print "NG:"+i
next
function isNG(num)
dim ng[]=5,10,32,56
for i=0 to resize(ng)-1
ifb num=ng[i]
result = 1
exit
endif
next
result = 0
fend

488 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 05:19:02 ID:XHbnzUaJ0]
>>486
基本的にない。

C言語ならこう書けるけど
switch{
 case 5:
 case 10:
 case 32:
 case 56:
  コード;
  break;
 default:
}

でも、ORoperation()っていう関数を作ればそういう書き方は可能。
if ORoperation( i, 5, 10, 32, 56 ) then
って感じで。
まあ、数値の奴は配列に入れて渡した方がいいんだけど。
if ORoperation( i, Array ) then

function ORoperation( a, x1=0, x2=0, x3=0, x4=0, x5=0, x6=0 )
 dim Array[] = x1, x2, x3, x4, x5, x6, 0 // 0はループ脱出条件
 result = true
 i = 0
 while Array[i]
  if i = Array[i] then exit
  i = i + 1
 wend
 result = false
fend
動くかどうかは知らない。


489 名前:名無しさん@お腹いっぱい。 [2010/06/05(土) 05:37:27 ID:XHbnzUaJ0]
>>486
全ての場合にそういう共通処理が考えられるのなら、配列パラメタを使うべきかも

dim Pattern[101] // ="a","x","b","x","c"・・って感じで並べてもいい
Pattern[5] = "a" // 数値の方が扱いやすいが、とりあえず文字の方が分かりやすいかと。
Pattern[10] = Pattern[5] // 都度代入は変更がめんどいので
Pattern[32] = Pattern[5]
Pattern[56] = Pattern[5]

if "a" = Pattern[i] then
もしくは
select Pattern[i]
 case "a"
  コード
 case "b"
 case "c"
 default
  print "パターンなし"
selend

490 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 08:54:06 ID:BLq+NU9U0]
初歩的かもしれませんが自分ではちょっとできないので質問させていただきます。
Aという画像が始めない場合はそのままで、もし見つかったら次に画像Aが消えたときに各処理をしていくというものとして下のようなものを書きました。
while true
 ifb chkimg(A)       ・・・1
   while true
     ifb chkimg(A)  ・・・2
   else
     処理
   endif
   wend
 else
   sleep(1)
 endif
wend
実際に動かしてみたことろ処理が終わった状態でもずっと2のifbを続けます
そこでこのスクリプトに「特定のキーを押した場合1のループに戻る」といった機能をつけようと思ったのですが、
どこにどのような命令を挿し込めばいいでしょうか。
一応2のifbのあとにif GETKEYSTATE(VK_ESC) then exitを入れてみたのですがどうにも反応していないようです。
稚拙な文にてわからづらいところ多々あるかと思いますがよろしくお願いします。

491 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 13:14:44 ID:hXFmkiOc0]
>>490
処理が終わったらループから抜けるのを忘れてるんじゃない?
2 の IFB ブロックの『処理』で最後に BREAK すれば一つ上のループに戻るよ



492 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 15:14:33 ID:XHbnzUaJ0]
>>490
elseの処理に数秒以上かかるようなら、キー入力を拾えてないかも。
キーをクリックしてから1秒以上経過してからGETKEYSTATEを動かしても、
キー情報は消えてるっぽいから、押されてないことになってるんだよ。

ESCを連打していればそのうち抜けると思うけど。


493 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/05(土) 18:08:16 ID:7xrzyNYi0]
>>490
 while true
  ifb chkimg(A)  ・・・2
  else
   処理
  endif
 wend

2の結果にかかわらずずっとwhileループの中。
画像Aが無くなった後ずっと「処理」を続ける。
その間2はずっとfalseなんでifの直後つまりifがtrueの時実行される場所に
getkeystateを置いても実行されない。
入れるなら「処理」の直前。

while true
 ifb chkimg(A)
  while chkimg(A)
  wend
  処理
 endif
wend

ていうかこんなんでいいんじゃないの?
sleep無いけど。

494 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/08(火) 20:48:06 ID:/dGW5DYk0]
斧戦争ツール作れよカスども

495 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/10(木) 23:23:04 ID:t9RcVFEr0]
スクリプトを指定した時間だけ動かすという方法はあるのでしょうか?
例えばスクリプトを走らせてから30分間とかです。

496 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/11(金) 00:39:39 ID:aLuYGiLxP]
これはひどい

497 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/11(金) 04:58:24 ID:l1wBl/570]
>>495
UWSCはメインが終了したら、他のスレッドが動いていても終了します。

だから、こんな感じでやれば30分きっかりで終了できますが、当然処理は無条件に中断します。
-- sample.uws ここから--
thread func()
sleep(30*60)
exitexit // 不要だが、ここで終了と明示する意味で。

proceduer func()
 // 基本的にこちらですべて処理する
 while true
  sleep(1)
 wend
fend
-- sample.uws ここまで--

中途半端に終了したくない場合、sleep(30*60)の代わりにGettimeのループで
今はダメっていうフラグを監視すればいい
f = false // 処理中フラグ。処理中はtrueがセットされる
t = GetTime()
while GetTime < t + 30*60
 repeat
  sleep(1)
 until ! f
wend
ちなみに、この場合はrepeatじゃないといけない。
そうしないとsleep()してる間にフラグがセットされる可能性が高いから。
もっと確実にやるなら終了するぞっていうフラグも立てるべきかな。


498 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/12(土) 13:07:37 ID:1g6XM8MfP]
あるウィンドウの子ウィンドウにドラッグドロップしたいんですが、子ウィンドウのIDはどうやって取得すればいいんでしょうか?

499 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/12(土) 13:34:30 ID:e7naQunBP]
// 指定ウィンドウの ID を返す
戻値 = GETID( タイトル, [クラス名, 待ち時間秒, MDI子タイトル] )
引数
 タイトル: 識別したいウィンドウのタイトル (タイトルの一部分だけでもOK)
 クラス名: 区別に必要でなければ省略して構いません (前方一致でのみ部分指定可)
 待ち時間秒: 確認できるまで指定された秒数待ちます (0.01〜)
         0: 0.1〜10秒まで状況や負荷により自動判断 (デフォルト)
        -1: 無期限待ち
 MDI子タイトル: MDIウィンドウ中の子ウィンドウタイトル

500 名前:498 mailto:sage [2010/06/12(土) 16:28:35 ID:1g6XM8MfP]
そうではなくて、子ウィンドウのタイトルが分からない場合はどうすれば・・・

501 名前:横レス mailto:sage [2010/06/12(土) 17:52:51 ID:o26Fnx3o0]
>>500
>タイトルの一部分だけでもOK
これでだめならGETALLWINで存在する全ウインドウのIDとってから消去法
またはなんらかのWIN32API(知らないけど探せばあるんじゃね?)でハンドル取得してHNDTOID



502 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/12(土) 18:45:49 ID:5Y2bRnnp0]
参考になるか分からんが、ぴたすちおを使えば子ウィンドウ情報がみえる

503 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/12(土) 20:19:26 ID:e7naQunBP]
//こういう事?
def_dll GetWindow(hWnd,long):long:user32.dll
GW_HWNDNEXT = 2
GW_CHILD = 5

uCmd = GW_CHILD

p_id = getid("親")

while true
  c_h = GetWindow(idtohnd(p_id), uCmd)
  if c_h = 0 then break
  
  p_id = hndtoid(c_h)
  uCmd = GW_HWNDNEXT
  
  msgbox( status(p_id, ST_TITLE) )
wend

504 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 08:48:23 ID:c9kd9eBN0]
>>486
うんこ発見装置を授けよう


うんこ ="1 5 10 18 25 37 56 58 68 74 81 97 99"
for i = 1 to 100
if pos(i,うんこ) > 0 then print i+"に うんこ発見"
next

505 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 09:55:53 ID:fmHGMG6r0]
>>504
それ、致命的に駄目だろw

506 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 11:23:05 ID:c9kd9eBN0]
>>505
=0 に変更すれば処理したくないiの条件になるが何がダメなんだ?
理由を書いてくれ


507 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 11:47:08 ID:o9NSeFNt0]
>>506
自分で書いたのにためしに動作させてないのか?
一回動作させて、プリントログよく見てみろよ。1〜9まで全部条件に引っかかってるだろ。

508 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 12:05:28 ID:86pvNGkL0]
簡単な方法として、正規表現使えるようにすればいけるな

509 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 12:07:17 ID:86pvNGkL0]
ほかには、文字の前後にゴミつけて区切りをはっきりさせればいける

510 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 15:49:17 ID:c9kd9eBN0]
そうだったすっかりわすれてた悪いな
これでいけるだろ

うんこ =" 1 5 10 18 25 37 56 58 68 74 81 97 99 "

for i = 1 to 100
if pos(" "+i+" ",うんこ) > 0 then print i+"に うんこ発見"
next

511 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 16:31:53 ID:lV2bpcq40]
TOKEN() と連想配列でやってみた

DIM うんこ = "1 5 10 18 25 37 56 58 68 74 81 97 99"

HASHTBL hash
DIM str = うんこ

WHILE LENGTH(str)
  hash[TOKEN(" ", str, TRUE)] = TRUE
WEND

DIM i

FOR i=1 TO 100
  IF hash[i] THEN PRINT i+"に うんこ発見"
NEXT



512 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 18:09:26 ID:Q8xDlz5x0]
なるほど。
ハッシュテーブルならパターンが2次元配列で大量にあったとしてもすぐに発見できるね。


513 名前:名無しさん@お腹いっぱい。 [2010/06/13(日) 18:28:57 ID:M6ZVIcE70]
UWSCを使っていて、パスが通っていないのが使いにくい。
CALL文や、ライブラリファイルを別フォルダにした場合、等。

ディレクトリ検索と、よく使うファイルのパスを登録したファイルとそれを使うスクリプトを作って、
CALLやいくつかの変数(プログラムファイル名等)はそれを経由するようにするとか
出来ないことはないけど(CALLとか作る)、
シンプルとはいえ、結構素人が作っていいのか本格的な感じになる。

みなさんはどうしているの? ひょっとしてどなたかが作ったのがありますか?

514 名前:513 [2010/06/13(日) 18:31:58 ID:M6ZVIcE70]
>>513
すいません。誤記。
× (CALLとか作る)
○ (CALL2とか作る)

CALL2みたいな新しいprocedureを作ってそこからCALLを呼ぶ、という意味にしたかった。。。

515 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 21:06:35 ID:E/dbXkmj0]
>>511
変数strの参照部全部変数うんこだろw

516 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 21:48:07 ID:lV2bpcq40]
>>515
参照部とは?

TOKEN() は第二引数を破壊するので
うんこに配慮して、うんこの値をコピーした str を渡しました

517 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/13(日) 21:53:05 ID:E/dbXkmj0]
>>516
ああごめん。ちっと勘違いしてたわ。

518 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/14(月) 16:34:31 ID:A4WmwryV0]
ifb iegetdata(ie, true, "yes", "はい") > 0
iesetdata(ie, true, "yes", "はい")
sleep(0.5)
else
break
endif
iesetdata(ie, true, "yes", "確認")

これ、もう少し纏まりませんか。主に1.2行目・・・
アンケサイトで「はい/いいえ」で確認ボタン出るまで押すって奴なんですが

519 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/14(月) 17:02:01 ID:A4WmwryV0]
While iegetdata(ie, true, "yes", "はい") > 0
iesetdata(ie, true, "yes", "はい")
sleep(0.5)
wend
iesetdata(ie, true, "yes", "確認")

あれ、こうか・・・?

520 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/14(月) 17:32:38 ID:jt+/tNC/0]
そんなアンケートに価値はない

521 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/14(月) 20:43:35 ID:aNbH09Ww0]
ifb CHKIMG(IMG , -1 )
BTN(LEFT,DOWN,102,715,579)
BTN(LEFT,UP,180,411,641)
else
(ifbの所に戻りたい)
endif

この処理を作りたいのですがelseをどう書けば良いんでしょうか。
イメージ画像が発現するまで待機する様な文が書きたいです。
if以外でも良いのです。



522 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/14(月) 20:51:53 ID:aNbH09Ww0]
コンティニュー見つけました。
初心者ですみません。

523 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/15(火) 22:23:39 ID:Y3W88cOuP]
短髪の女の子?がセックスをしながら世界一周を目指すという成人誌を見たことがあるのですが、分かる人いますか?
たしか3年ぐらい前の漫画だったと思います

524 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/16(水) 01:11:20 ID:jeyh3hPj0]
どんな誤爆だよw

525 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/16(水) 13:04:10 ID:yLa0pynz0]
これは大胆な確信犯だな。

面白そうだから探してくるわw

526 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/16(水) 21:29:45 ID:Z1Itnvke0]
peekcolorを使ってB値だけを判定する方法を教えてください

527 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/16(水) 22:16:46 ID:nX9kgu9QP]
結果をmsgboxで表示すれば目視で判定できます
それとも「どのように」判定したいのか指定があるんですかね

528 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/16(水) 23:16:32 ID:6Hb0U1Mg0]
「記録」を使って、
作業に使うアプリをまとめて立ち上げたり、
新しいフォルダを生成したりする程度のヘタレた使用をしています

ヘルプを読んで起動オプションがあるのはわかりましたが

スクリプト実行、実行後はUWSC本体を起動したままにする場合
UWSC.exe /K スクリプト名
   ↑
この構文をどのように使えばいいのかがわかりません

例えば、こんな感じだと動きません
GETTIME()
HIDUKE = G_TIME_YY4 + G_TIME_MM2 + G_TIME_DD2
EXEC("NOTEPAD")
SENDSTR(GETID("無題"), HIDUKE + "<#CR>")
UWSC.exe /K 日時出力.UWS

おそらく単純すぎて目の前に答えがあるのに、答えが近すぎて逆に自分の視界に入ってない状態だと思います

ヒントだけでも教えていただければ・・・・orz

529 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 03:11:51 ID:sncjYoBq0]
>>526
BってBGRのB?
(peekcolor(x,y) and $FF0000)/$10000
とか?

530 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 06:51:29 ID:k9E1g4kJ0]
>>528
exec

531 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 08:09:29 ID:RfIdECVBP]
>>528
ヘルプにある「その他項目」は文法の話じゃないよ

スクランブルのほうには書いてあるけど
コマンドプロンプトで起動する場合とかにパラメータを付ける話



532 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 18:34:42 ID:Ff+fGhbK0]
ご教授願います。
以下のスクリプトを作ったのですが、再生すると
行目のIFBに対しENDIFが閉じられていないと出ます。
どこがダメなのか教えてください
WHILE TRUE
ifb GETID(GET_ACTIVE_WIN) = GETID("paper man") then
Ifb PeekColor(512,384) = $FFFF00 then
BTN(LEFT,CLICK)
Endif
Endif
sleep(0.02)
WEND

533 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 18:47:12 ID:+CCij1w00]
>>532見た感じで適当なカキコすると
2行目のGETID条件の相方が変数or定数じゃないのが気に食わないんじゃね?

534 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 18:48:19 ID:k9E1g4kJ0]
>>532
それで動いたのでどこが悪いか判りません。

…正直、ゲームチートっぽいのは歓迎したくないなぁ。

535 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 18:50:44 ID:x399c/MH0]
チートじゃないだろ
カスが!発言に気をつけろ
次はないと思え

536 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 18:56:59 ID:pUIHTkvJ0]
まぁ、チートでは無いわな。

ちなみにuwscは、ゲームで使ってこそ価値のある物だと思うw

537 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 19:19:52 ID:qd5QGDw6i]
単純にゲームに対する不正だなw

538 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 19:29:39 ID:sncjYoBq0]
ゲームに対する不正のどこがチートじゃないのかkwsk

539 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 19:40:04 ID:ydiblUFW0]
チートの定義はクライアント内部からでしょ。
UWSCってローカルな情報で動くし。
よくわからん、やってる事は同じだなw

540 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:44:42 ID:sncjYoBq0]
定義も何もチートはcheatでそのまんま「不正行為」って意味だろうに。
内部も外部も関係ないだろ。

541 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:47:52 ID:pUIHTkvJ0]
直訳とゲーム用語だと少し違うんだよね。



542 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:50:44 ID:k9E1g4kJ0]
>>541
チートを「不正」以外の言葉で使っている場面を見たことが無い。
どんな独自の用語なんだよw

543 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:54:53 ID:pUIHTkvJ0]
めんどくさいなー。

同じ不正でも、"チート"と"操作の自動化"は違うのだ。
後は自分で調べてね。

544 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:57:16 ID:l8wchoUV0]
操作の本来実装されている以外の方法での自動化が認められたゲームなんかあるのか?
俺ルールでこんくらいはおkって思ってるだけだろ

545 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 20:57:56 ID:k9E1g4kJ0]
>>543
ま、結局不正なのは変わりないからなぁ…

546 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 21:40:09 ID:RfIdECVBP]
不正行為の総称・・・チート
自分を正当化するための魔法の言葉・・・操作の自動化


確かに違うね

547 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 21:58:48 ID:lFzqbv68O]
ん? 自動化も不正だぜw

確かに、データ改ざんの事をチートと呼ぶのが一般的かな。

548 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 22:04:40 ID:SzGCTaJq0]
そもそも「ズル」のことをチートっていうのであってつまりマクロだろうがパケットいじろうがチートだと思うんだが

549 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 22:28:29 ID:lFzqbv68O]
ネットで調べたけど、一応はコンピューター用語として載ってるな。
でも人によって認識のズレがあるみたい。
単純に区別しやすいようにチートとマクロを分けてるとも言えるし。

俺的結論。みんな正しいw

550 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 22:34:10 ID:ydiblUFW0]
ゲームで語るか大きな意味で語るかの違いだな

551 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 23:06:27 ID:x399c/MH0]
マクロのほうが的確
ゲーム見たらなんでもファミコンっていう親くらい違う



552 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 23:41:31 ID:dSI3F+Sd0]
チートって聞いたらドラクエのHP999を思い出した。

553 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/17(木) 23:52:50 ID:jN7punls0]
そんなにネトゲの話題がしたければネトゲの板にマクロやスクリプトのスレ立てろよ
ここでネトゲの話題に反発してる連中もそこまで行って邪魔はしないだろうよ

554 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/18(金) 10:30:47 ID:RlvK9F450]
while true
ifb CHKIMG(IMG , -1 ) or CHKIMG(IMG7 , -1 ) ←ここ
break
endif
btn(right,click,800,250)
sleep(0.5)
mmv(900,333)
sleep(0.5)
mmv(1050,333)
sleep(1.0)
ifb CHKIMG(IMG6,-1)
mmv(G_IMG_X,G_IMG_Y)
btn(left,click,G_IMG_X,G_IMG_Y)
sleep(10.0)
endif
wend

最初のIMGが無いのにこの処理が終わってしまうのですが
どこか間違ってますか?

555 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/18(金) 13:17:56 ID:RlvK9F450]
別の文で解決しました
色を無視してるから何か引っかかってたのかも

556 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/20(日) 16:51:16 ID:iYsBGIJR0]
MapleStoryというゲームでピラミッドというサバイバルゲームがあり、それは敵がたくさん出てきてそれを倒し、14分で全てが終わる
ゲームなんですが、1分50秒ほど早く終わってしまいます。ピラミッドの低レベル版の9分で全てが終わるサバイバルゲームでは、
ほとんどずれずに繰り返しできたのですが、ピラミッドで時間をずれずにUWSCでするにはどうしたらいいでしょうか?

557 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/20(日) 18:29:19 ID:PoKuH6O30]
>>556
正確に行動するとか
時間やタイミングを合わせて行動するとかならここでもいいけど、
きっちり14分で敵を倒すやり方はゲームやキャラの詳細が分からないと答えようがないよ。

まずはきっちり14分で倒すやり方をメイポスレで聞いて来い。


558 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/20(日) 19:35:11 ID:l35pdc4w0]
ずれるって事は記録機能を使ってるんだろうけど
自分で作れば可能、色々なサイトを見て少し勉強したらすぐできる

559 名前:横レス mailto:sage [2010/06/20(日) 19:42:03 ID:1vSDRlXF0]
それも今のスクリプトの適当な場所にSLEEP(150)を挿入するだけっぽい

560 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/20(日) 20:40:13 ID:iYsBGIJR0]
>>557
レスありがとうございます!
ピラミッド自体は普通にやっても14分で終わるんですね。ステージが5つに分かれていて、
敵が沸いてきたのを倒して、ゲージが0にならなければ次のステージに進めて、14分ちょうどに終わるんです。
詳細は↓ここに書いてあります。
maplesonar.com/wiki/index.php?%E3%83%8D%E3%83%88%E3%81%AE%E3%83%94%E3%83%A9%E3%83%9F%E3%83%83%E3%83%89
マクロで実行すると1分50秒早く実行を完了して停止してしまうんです。残った1分50秒の間にゲージが0になってゲームオーバーに
なってしまいます。

>>558
いろいろなサイトを見て勉強してみたいと思います。

>>559
動作を止めているとゲージが0になってしまいます。



みなさんありがとうございます。もっと考えてみようと思います。

561 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/20(日) 21:23:06 ID:PoKuH6O30]
>>560
ACTゲージのMAX近くのドットをキャプチャ(PeekColor)して
赤っぽかったら数秒休む(Sleep(5))っていう処理を追加すればいい。
赤っぽいというのはRGB分解してRが128超えてたら赤っぽいということで。

そういう処理を一箇所に入れるだけで済むようにするには、全体の行動を一つのループに集約する方法がある。

もう一つの方法は、たとえばマウス、キーボードクリックをある関数経由にし、
その関数内で、実行しても良いか悪いか判断する。
その判断するフラグを別スレッドでループする監視処理。
そうすれば延々とキークリックを羅列していても1箇所書き換えるだけで済む。

関数名の変更はエディタの痴漢・・・もとい、チカン・・・・あれ?弛緩・・・
置換だ置換
それでやる。




562 名前:名無しさん@お腹いっぱい。 [2010/06/21(月) 20:42:32 ID:2HQccvy70]
>>473
やっぱりUWSCでもできるような単純な処理っぽい。
ttp://librahack.jp/okazaki-library-case/comparativetable.html
>朝日新聞「1回ボタンを押すだけで、1秒に1回程度の速度でアクセスを繰り返せるプログラムを作っていたという。」
>ローカル環境(Thinkpad+XAMPP【Webサーバー】)では、Eclipseの実行ボタンを押して、PHPスクリプトを実行していました。

ttp://librahack.jp/okazaki-library-case/comparativetable.html
>警察・マスコミ「HTTP500が発生した時刻を「停止日時」と表現。」

HTTP500 = 内部サーバーエラー

>朝日新聞:「ホームページの閲覧は21回停止されていた。」
>中日新聞:「計8回機能を停止させ、」
>読売新聞:「閲覧しにくい状態にさせ、」
>日経新聞:「21回にわたりHP閲覧をできないようにした。」
>毎日新聞:「サーバーを21回シャットダウンさせた疑いがある。」
>毎日新聞:「県警が25日に自宅を家宅捜索した際も自動アクセス中だったという。」

>ThinkpadのEclipse環境から、合計64,008回をリクエスト送信。
>家宅捜索のとき Thinkpad電源オフ。リクエストなし。


563 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/06/22(火) 16:15:11 ID:cUoPGlwu0]
>>556ですがピラミッドマクロできましたw
攻撃する動作を追加していくっていうアナログな方法で作れましたw







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<257KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef