Skip to content
This repository has been archived by the owner on Dec 10, 2017. It is now read-only.

Resupply All Error #397

Open
Danielosama opened this issue Sep 21, 2017 · 10 comments
Open

Resupply All Error #397

Danielosama opened this issue Sep 21, 2017 · 10 comments

Comments

@Danielosama
Copy link

Danielosama commented Sep 21, 2017

Environment details

  • kancolle-auto version (date on first line of your CHANGELOG.md): 2017-06-07
  • Viewer/browser: KanColleViewer!
  • Operating system: Virtual Machine Windows 10 32bits

Issue

The issue can be seen in the following image :
image

As you can see, the resupply all button acts as if the mouse is hovering it, yet it isn't. I'm not sure what happens, but sometimes the mouse seems to go too fast.
It happens quite often, but at random. Some days it will happens 2/3 times in a row, and some days not happen at all.

Console log (if applicable)

�[94m[2017-09-21 23:59:01] Navigating to resupply screen with 0 sidestep(s)!�[0m
[log] CLICK on L(359,242)@S(0)[0,0 1357x846] (578 msec)
�[91m[2017-09-21 23:59:18] Non-catbomb script crash, or catbomb script crash w/ unsupported Viewer!�[0m
FindFailed: resupply_all.png: (11x16) seen at (391, 152) with 1.00 in S(0)[0,0 1357x846] E:Y, T:3.0
  Line 2718, in file Region.java

[error] script [ C:\SikuliX\kancolle_auto.sikuli ] stopped with error in line 542
[error] FindFailed ( resupply_all.png: (11x16) seen at (391, 152) with 1.00 in S(0)[0,0 1357x846] E:Y, T:3.0 )
[error] --- Traceback --- error source first
line: module ( function ) statement
585: util (  pattern_generator )     m = match(r'M\[\d+\,\d+ (\d+)x(\d+)\]', str(find(pic)))
159: main (  resupply )     check_and_click(global_regions['fleet_flags_main'], pattern_generator(global_regions['fleet_flags_main'], Pattern('resupply_all.png').exact()), expand_areas('fleet_id'))
257: main (  sortie_action )     resupply()
478: main (  kancolle_auto_wrapper )     sortie_action()
540: main (  <module> )     kancolle_auto_wrapper()
[error] --- Traceback --- end --------------
@mrmin123
Copy link
Owner

Could you try adding this line before the check_and_click on L159 of kancolle_auto.py?:

rejigger_mouse(kc_window, 50, 750, 0, 100)

@Danielosama
Copy link
Author

Alright I give up. I've tried to add the line in 4 different ways, but the script always crashes as soons as I launch it. I think I just don't know how to do it properly, mind showing me how?

@mrmin123
Copy link
Owner

I can't test this since I'm away from my primary rig, but it should look like this (whitespace is important):

                        sleep_fast()
                        while_count += 1
                        while_count_checker(kc_window, settings, while_count)
                rejigger_mouse(kc_window, 50, 750, 0, 100)
                check_and_click(global_regions['fleet_flags_main'], pattern_generator(global_regions['fleet_flags_main'], Pattern('resupply_all.png').exact()), expand_areas('fleet_id'))
                sleep_fast()
        log_success("Done resupplying!")

Note that the middle line is the addedline

@mrmin123
Copy link
Owner

You might also need to add the kc_window variable to the imported globals at the beginning of the resupply() method (L141):

def resupply():
    global kc_window, fleet_needs_resupply, settings
    log_msg("Lets resupply fleets!")

(middle line is modified line)

@Danielosama
Copy link
Author

Thanks, I've successfully added the lines now, script works.
Will update if the problem ever appears again.

@Danielosama
Copy link
Author

Danielosama commented Sep 26, 2017

Well, it happened again:

exampleagain

You can see the mouse near the resources, yet the resupply all again acts as if it was hovering it.
I should note that I don't think this has ever happened when I used the script on my main PC, but ever since I use it on the VM, it has happened quite often.

�[94m[2017-09-27 02:38:54] Lets resupply fleets!�[0m
�[94m[2017-09-27 02:38:56] Navigating to resupply screen with 1 sidestep(s)!�[0m
[log] CLICK on L(402,431)@S(0)[0,0 1357x846] (579 msec)
[log] CLICK on L(303,231)@S(0)[0,0 1357x846] (610 msec)
�[91m[2017-09-27 02:39:21] Non-catbomb script crash, or catbomb script crash w/ unsupported Viewer!�[0m
FindFailed: resupply_all.png: (11x16) seen at (391, 152) with 1.00 in S(0)[0,0 1357x846] E:Y, T:3.0
  Line 2718, in file Region.java

[error] script [ C:\SikuliX\kancolle_auto.sikuli ] stopped with error in line 543
[error] FindFailed ( resupply_all.png: (11x16) seen at (391, 152) with 1.00 in S(0)[0,0 1357x846] E:Y, T:3.0 )
[error] --- Traceback --- error source first
line: module ( function ) statement
585: util (  pattern_generator )     m = match(r'M\[\d+\,\d+ (\d+)x(\d+)\]', str(find(pic)))
160: main (  resupply )     check_and_click(global_regions['fleet_flags_main'], pattern_generator(global_regions['fleet_flags_main'], Pattern('resupply_all.png').exact()), expand_areas('fleet_id'))
258: main (  sortie_action )     resupply()
479: main (  kancolle_auto_wrapper )     sortie_action()
541: main (  <module> )     kancolle_auto_wrapper()
[error] --- Traceback --- end --------------

Here is the console log.

@mrmin123
Copy link
Owner

Unfortunately that's more of an issue with the VM environment than with the script, and I have very little control over that. If you're intent on the VM method, the alternative method I could think of is to manually move the mouse to the location, and then trigger a click event. This DOES has its own set of own possible points of failures, however, and wouldn't be a foolproof way to conduct the resupply action.

I can come up with a code snippet for you to try but it's pretty late where I am right now so it'll have to wait a day or two.

@Danielosama
Copy link
Author

Don't worry about it, I'm not in a hurry or anything.
The issue was pretty random to begin with, some days it wouldn't happen at all, and some days it'd happen 2/3 times in a row.
It does seems to happen less with the new line added, so there is that.
Thanks for all the help, if you ever come up with a code snippet I'll be happy to try it :)

@mrmin123
Copy link
Owner

Could you download the latest master branch and give that a spin?

@Danielosama
Copy link
Author

Sure thing.
I should add one thing, the issue only happens when resupplying the first fleet, because since my last message I've been using the script doing nothing but expeditions and I've had no problems at all.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants