Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-17 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Status: Answered => Solved

David Bachschmid confirmed that the question is solved:
Thanks RaiMan, that solved my question.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-15 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

RaiMan proposed the following answer:
with my coding suggestion from comment #12 it should click the last
match in reg1, which in turn remembers the given target offset.

For the reason behind my suggestion see comment #7

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-15 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

David Bachschmid posted a new comment:
Ok ty, now I understand why the error occured. Still when I do not
include a picture within "click(picture.png)", sikuli will only click on
the center of the region in which it was searching for a specific image.
Anyways it works really fine by now, thanks to you. :)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-15 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Status: Open => Answered

RaiMan proposed the following answer:
see comment #7

--- Also in these specific lines is a relatively high Target Offset included.
... does not matter for the search, since only applied to the match

reg1 = Region(2804,219,332,161) 
if reg1.exists(Pattern("hero.png").targetOffset(-202,247), 0.1): 
reg1.click() # clicks what was found with exists() before

your solution
if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-202,247), 
0.1): Region(2804,219,332,161).click(Pattern("hero.png").targetOffset(-202,247))

leads to another search with the click, and apparently the image is no
longer visible (FindFailed)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-15 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Status: Solved => Open

David Bachschmid is still having a problem:
Since I added a timeout to the exists commands, I've received this error
three times:

[error] script [ sdfsdf ] stopped with error at line --unknown--
[error] Error caused by: Traceback (most recent call last): File 
"F:\Sikuli\sdfsdf.sikuli\sdfsdf.py", line 15, in  if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-202,247), 
0.1): 
Region(2804,219,332,161).click(Pattern("hero.png").targetOffset(-202,247)) Line 
2759, in file Region.java 
at org.sikuli.script.Region.wait(Region.java:2759)
at org.sikuli.script.Region.find(Region.java:2336)
at org.sikuli.script.Region.getLocationFromTarget(Region.java:3213)
at org.python.proxies.sikuli.Region$Region$3.getLocationFromTarget(Unknown 
Source)
at org.sikuli.script.Region.click(Region.java:3698)
at org.sikuli.script.Region.click(Region.java:3683)
at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
org.sikuli.script.FindFailed: FindFailed: hero.png: (121x38) seen at (2967, 
301) with 0,97 in R[2804,219 332x161]@S(1) E:Y, T:3,0 Line 2759, in file 
Region.java 


Here's an extract from my script: 

while running:
if Region(3092,648,385,133).exists(Pattern("Fight.png").exact(), 0.5): 
Region(3092,648,385,133).click("Fight.png")
if Region(3168,686,370,215).exists(Pattern("Dungeon.png").similar(0.85), 
0.5): Region(3168,686,370,215).click(Pattern("Dungeon.png").similar(0.85))
if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-97,251), 
1.5): Region(2804,219,332,161).click(Pattern("hero.png").targetOffset(-97,251))
if Region(3314,757,205,167).exists("skip.png", 0.5): 
Region(3314,757,205,167).doubleClick("skip.png")
if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-202,247), 
0.1): Region(2804,219,332,161).click(Pattern("hero.png").targetOffset(-202,247))

The error always occurs in the "hero.png" line. Also in these specific
lines is a relatively high Target Offset included.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-14 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

RaiMan posted a new comment:
Danke für die Rückmeldung. Have fun. All the best.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-14 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Status: Answered => Solved

David Bachschmid confirmed that the question is solved:
Vielen lieben Dank RaiMan!!

No Blue Screens or any crashes since yesterday + my PC doesn't care
anymore about running this script (in terms of proccess power usage)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-14 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

David Bachschmid posted a new comment:
Also I can run the game on 60FPS instead of 10. :)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

RaiMan proposed the following answer:
Again Python and OOP:
if Region(2927,567,639,340).exists("Fight.png"): 
Region(2927,567,639,340).click()

both Region() each create different (new) objects and hence have
different content/attributes.

region1 =  Region(2927,567,639,340)
if region1.exists("Fight.png"): region1.click()

BTW: is rather easy in the IDE:
write
region 1 = 

leave the cursor behind the = and click the "select a Region" button.

Watch and be enthusiastic ;-)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

David Bachschmid posted a new comment:
Thanks again. Solved the first problem.
My second problem is that sikuli does not click the point in the image which I 
set it to click on. Right now it only clicks the middle of the search region.

Here's my new code:

Settings.MoveMouseDelay = 0.1
running = True

def runHotkey(event):
global running
running = False

Env.addHotkey(Key.F1, KeyModifier.CTRL, runHotkey)

while running:
if Region(2927,567,639,340).exists("Fight.png"): 
Region(2927,567,639,340).click()
if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-97,251)): 
Region(2804,219,332,161).click()
if Region(3037,617,584,324).exists(Pattern("Dungeon.png").similar(0.95)): 
Region(3037,617,584,324).click()
if 
Region(2804,219,332,161).exists(Pattern("hero.png").targetOffset(-202,247)): 
Region(2804,219,332,161).click()
if Region(2255,174,612,493).exists(Pattern("rewards.png").similar(0.90)):
Region(2255,174,612,493).click()
Region(3243,632,211,237).wait("skip.png", 6)
Region(3243,632,211,237).click()

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

RaiMan proposed the following answer:
It is Python ;-)

i guess you tried to transform this:

if Screen(1).exists(Pattern("1516812605236-1.png").similar(0.90)):
Screen(1).click(Pattern("1516812605236.png").similar(0.90))
Screen(1).wait("1516812737846.png", 60)
Screen(1).click(Pattern("1516812737846.png").targetOffset(320,134))

would get:
if Screen(1).exists(Pattern("1516812605236-1.png").similar(0.90)):
Screen(1).click()
Screen(1).wait("1516812737846.png", 60)
Screen(1).click(Pattern("1516812737846.png").targetOffset(320,134))

Go back and understand:
instead of:
if Screen(1).exists(Pattern("1516809781721.png").similar(0.90)):
Screen(1).click(Pattern("1516809781721.png").similar(0.90))

use:
if regionOnScreen1.exists(image1, 0)): regionOnScreen1.click()

or better:
if regionOnScreen1.exists(image1, 0)): 
regionOnScreen1.click()

With the click() you have to specify the region, that remembered the match to 
click!
Screen(1) in your case.

BTW:
once at the beginning say
screen1 = Screen(1)

and use screen1 later instead of Screen(1)

The latter each time creates a new Object, which is costly.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

David Bachschmid posted a new comment:
Danke RaimMan ;)

Now sikuli has a problem with this line:

20if Screen(1).exists(Pattern("rewards.png").similar(0.90)):click()
21Screen(1).wait("rewards2.png", 6):click()

Error msg:
[error] script [ dd always restart ] stopped with error in line 21 at column 8
[error] SyntaxError ( "mismatched input '' expecting DEDENT", )

Everything is alright with the length of the tabs but I can't find the
error...


How do I implement "setWaitScanRate(rate)" in my code? Does including "simular" 
cost more CPU?
Here's what I have so far:

Settings.MoveMouseDelay = 0.1
running = True

def runHotkey(event):
global running
running = False

Env.addHotkey(Key.F1, KeyModifier.CTRL, runHotkey)

while running:
if Region(2927,567,639,340).exists("image1.png", 0):click()
if exists(image2.png):click()
if Region(3037,617,584,324).exists(Pattern("image3.png").similar(0.95), 
0):click()
if Screen(1).exists("choosehero.png"):
Screen(1).click(Pattern("choosehero.png").targetOffset(-70,230))
   //old code, will change it after posting this
if Screen(1).exists(Pattern("rewards.png").similar(0.90)):click()
Screen(1).wait("rewards2.png", 6):click()

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

RaiMan proposed the following answer:
ok, ein bißchen versteckt ;-)

http://sikulix-2014.readthedocs.io/en/latest/region.html#Region.setWaitScanRate

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

David Bachschmid posted a new comment:
Ok ty. I will adjust everything now.
However, I still do not get how to implement the neccessary lines for scanrate 
reduction.

This is how it is displayed on the features site:

def myHandler(e):
print "it happened"
# you may wish to save the actual settings before
Settings.ObserveScanRate = 0.2
onAppear(some_image, myHandler)
observe(FOREVER, background = True)
# the observer will look every 5 seconds ;-)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread RaiMan
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Status: Open => Answered

RaiMan proposed the following answer:
-- 1. latest version of SikuliX? at least 1.1.1? http://sikulix.com

-- 2. understood, how SikuliX works?
http://sikulix-2014.readthedocs.io/en/latest/basicinfo.html#sikulix-how-does-it-find-images-on-the-screen

--3. reduce CPU usage
- reduce the search region to the minimum acceptable
- reduce the scanrate 

general recommendation: name your images.

instead of:
if Screen(1).exists(Pattern("1516809781721.png").similar(0.90)):
Screen(1).click(Pattern("1516809781721.png").similar(0.90))

use:
if regionOnScreen1.exists(image1, 0)): regionOnScreen1.click()

- searches only once, does not wait 3 seconds
- clicks what was found before in regionOnScreen1

Optimize your image shots:
- as little background to the edges as possible
- concentrate on the key differentiating aspects

Good shots are found with a score of 0.95+, so no need for
Pattern.similar

You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


Re: [Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread David Bachschmid
Question #664345 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/664345

Description changed to:
Hi everyone,

I've created a farming bot for a mobile game which I am playing on my PC with 
the android emulator Nox.
My problem is that once I start the script the CPU usage goes up really high. 
Here's a SS: https://imgur.com/a/HcKIm

And here is my script / code:

Settings.MoveMouseDelay = 0.1
running = True

def runHotkey(event):
global running
running = False

Env.addHotkey(Key.F1, KeyModifier.CTRL, runHotkey)

while running:
if Screen(1).exists(Pattern("1516809781721.png").similar(0.90)):
Screen(1).click(Pattern("1516809781721.png").similar(0.90))

if Screen(1).exists("1516823633104.png"):
Screen(1).click(Pattern("1516823633104.png").targetOffset(125,220))

if Screen(1).exists(Pattern("1517864572951.png").similar(0.60)):
Screen(1).click(Pattern("1517864572951.png").similar(0.60))

if Screen(1).exists("1516823633104.png"):
Screen(1).click(Pattern("1516823633104.png").targetOffset(-70,230))

if Screen(1).exists(Pattern("1516820524383.png").exact()):
Screen(1).click(Pattern("1516820524383.png").exact())

if Screen(1).exists(Pattern("1516812605236-1.png").similar(0.90)):
Screen(1).click(Pattern("1516812605236.png").similar(0.90))
Screen(1).wait("1516812737846.png", 60)
Screen(1).click(Pattern("1516812737846.png").targetOffset(320,134))

To run the script I'm just pressing on "run / execute" (Ausführen in
German) in Sikuli.

So if anyone knows how to reduce the CPU and RAM usage, please tell me!
If I do not set the FPS in the emulator to 10 my PC crashes within 20 mins or 
so.

Greetings, Dave

PS: I'm a noob on this territory. This is the first I've ever coded
something so please explain it so I can understand what I should do. :)

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp


[Sikuli-driver] [Question #664345]: CPU usage going through the roof when running script

2018-02-13 Thread David Bachschmid
New question #664345 on Sikuli:
https://answers.launchpad.net/sikuli/+question/664345

Hi everyone,

I've created a farming bot for a mobile game which I am playing on my PC with 
the android emulator Nox.
My problem is that once I start the script the CPU usage goes up really high. 
Here's a SS: https://imgur.com/a/HcKIm

And here is my script / code:

Settings.MoveMouseDelay = 0.1
running = True

def runHotkey(event):
global running
running = False

Env.addHotkey(Key.F1, KeyModifier.CTRL, runHotkey)

while running:
if Screen(1).exists(Pattern("1516809781721.png").similar(0.90)):
Screen(1).click(Pattern("1516809781721.png").similar(0.90))

if Screen(1).exists("1516823633104.png"):
Screen(1).click(Pattern("1516823633104.png").targetOffset(125,220))

if Screen(1).exists(Pattern("1517864572951.png").similar(0.60)):
Screen(1).click(Pattern("1517864572951.png").similar(0.60))

if Screen(1).exists("1516823633104.png"):
Screen(1).click(Pattern("1516823633104.png").targetOffset(-70,230))

if Screen(1).exists(Pattern("1516820524383.png").exact()):
Screen(1).click(Pattern("1516820524383.png").exact())

if Screen(1).exists(Pattern("1516812605236-1.png").similar(0.90)):
Screen(1).click(Pattern("1516812605236.png").similar(0.90))
Screen(1).wait("1516812737846.png", 60)
Screen(1).click(Pattern("1516812737846.png").targetOffset(320,134))

To run the script I'm just pressing on "run / execute" (Ausführen in German) in 
Sikuli.

So if anyone knows how to reduce the CPU and RAM usage, please tell me!
If I do not set the FPS in the emulator to 10 my PC crashes within 20 mins or 
so.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.

___
Mailing list: https://launchpad.net/~sikuli-driver
Post to : sikuli-driver@lists.launchpad.net
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp