2015/04/10

AutoTouch findimage error 3.1.1 , 3.1.2

AutoTouch関連の記事はこちらから

http://memorosa.blogspot.jp/search/label/AutoTouch

構文やら色々変更っぽい

AutoTouchを3.0.1から3.1.x(3.1.1と3.1.2)にアップデートしたらスクリプトが動かなくなったので調べてみた。

AutoTouchを起動して「Setting」→「Help」を覗いてみると、文法の書き方やサンプルも出るのでfindimageの使い方を見てみると下記のように変わっていた。


追記 エラー内容:bad argument #-5 to 'findImage' (string expected, got nil)


findImage

   1:  findImage(imagePath, count, fuzzy, ignoreColors, region)

パラメータが1つ増えて範囲指定ができるっぽいのと、括弧の付け方も違う、あとは値の省略ができないっぽい感じ

設定しないパラメータには「nil」を設定するといいみたい。。。たぶん。。。


使い方、チェック方法はなんとか分かった感じだと思う。あとは範囲も調べて設定できたら処理速度が早くなるんだろうと・・・

とりあえず確認用スクリプト


findImage Test Script

   1:  local r = findImage("test.png", 1, 1, nil, nil);
   2:   
   3:  if r == nil then
   4:      alert("nil");
   5:  else
   6:      local n = 0;
   7:      for i, v in pairs(r) do
   8:          n = n + 1;
   9:      end
  10:   
  11:      if n == 0 then
  12:          alert("false");
  13:      else
  14:          alert("true");
  15:      end
  16:  end



8 件のコメント:

  1. Hello, could you help me out in making a game bot for my game..? I really need it.. please mail me @ weisong90@gmail.com =). incentives will be provided if it works well.. =)

    返信削除
  2. はじめまして。
    autotouchのスクリプトを自作しようと検索していたところ此方のサイトがヒットいたしましたのでコメントさせていただきます。
    私自身は今までuwscで遊び程度のマクロを組んだ程度ですのでプログラミング知識がありません。そのため、locar rとlocar nの違いやforの構文が理解できません。どこのサイトで勉強されたかだけでもいいので教えていただけないでしょうか?
    よろしくお願いいたします。

    返信削除
    返信
    1. こんにちは、Яosaです。
      AutoTouch使うまではLUAは分からなくて調べてもルーターあたりのいじり方ばかりでした・・・
      けれど、AutoTouchのアプリ→ホームページ→ドキュメント→Lua 5.2 Reference Manualを見たらある程度は作れるようになりました。
      頑張ってくださいψ(。。)

      削除
  3. 追記・・・すみません、プログラム知識がないと言うことでしたね、

    やってたことは、部分的にスクリプトを作って動かしてみる、思い通りの結果になればそれでOK、エラーが出たら原因を追求の繰り返しですね・・・iPhoneでメッセージ表示させてみるのは面倒ですが。

    特に「このページを見たら作れた」っていうことではないです、「LUA 配列」で検索し、サンプル見たりした感じでした。

    返信削除
  4. スクリプト作成中いくつかエラーがでるのですが、同じような症状があったら教えていただけると助かります。
    1. スクリーンショットが撮れない。
    コード:screenshot ("image/screenshot1.png", nil);
    2. findimageが比較元の画像によってはnilを返す。
    iphoneのスクリーンショットサイズだと☓
    サイズが小さくても、横長の画像だと☓

    返信削除
    返信
    1. 1.について私も使おうかなと思ってたので、3パターン試したら保存されました。。。なぜでしょうかね
      screenshot("test.png", nil);
      screenshot("image/test.png", nil);
      screenshot("image/test.png", {60/2, 240/2, 500/2, 100/2});

      2.については、以前にゲームの画像検索したときに見つからないことが多々あったのですが、そのときは、背景が微妙に変わっていたりしてうまくできないことはありました。
      あとは、同じ画像を探すという認識よりも、実際はアプリでどのようにしているかわかりませんが、
      例えば32x32の画像の場合だと「ドット1024個の同色を探しているだろう」と考えた方がいいかと。
      そこで色の曖昧さの調節をfuzzyで行っていくとか・・・ただ意図しない画像を探してしまう可能性もあると思います。
      iPhone5s AutoTouch 3.5.1-2

      削除
  5. 返信ありがとうございます。当方iphone6 ios8.1 Auto Touch 3.5.1-2 を使用していますが、端末のせいもあるかもしれません。引き続き検証していきたいと思います。ありがとうございました。

    返信削除
  6. はじめまして
    最近からautotouchとluaを触り始めたのですが聞きたいことがあります

    findimageで画像指定をしてもnilしか返ってきません

    パスは相対パス、絶対パス等々試してみたのですが画像が読み込まれてすらいないような気がします

    返信削除