cottiAC / zombidleBot

Autohotkey project for idle game Zombidle
5 stars 3 forks source link

Any ETA on steam support and a couple questions? #2

Open JourneyOver opened 7 years ago

JourneyOver commented 7 years ago

Hey I seen you are working on getting the bot to support the steam version, which is great but I have a couple questions.

  1. Pretty much the title, is there any eta on when you'll have the steam version of the bot in a working state of order?
  2. Does this support early/mid game any and if not are you going to support early/mid game any? or is this only going to be for people who play late game (having all the current worlds unlocked)
cottiAC commented 7 years ago

Some basic mechanics are already working with the steam release. Just switch to the steamrelease branch to try it out: https://github.com/cottiAC/zombidleBot/tree/steamrelease

Currently I have a huge problem with the buggy scrollbar. Its almost impossible to make sure every click works fine.

The version will not support very early game. But I think you can use it after some hours of gameplay. Just unlock the second world and it will work fine. There is no need to have unlocked all worlds.

JourneyOver commented 7 years ago

I tried it a few days back, and whenever it picked up a scroll and tried to use it it would always break, auto clicking would stop and it would just not do anything. Though I did see you added a option to disable scrolls in the latest release.

Yea I can't wait for the buggy scrollbar to be fixed, along with some various other quirks that are getting kinda annoying.

Alright, I believe I'm currently at a halfway point through world 1 right now (sitting at 15k-16k orbs and able to get up to around difficulty 270) so hopefully I'll be able to push to world 2 soon enough.

For some reason whenever I run the bot as well the current tab is always stuck on "unknown" even though I have the UI in the big mode instead of the minimized mode.

cottiAC commented 7 years ago

Its because of the changes to scrolls in the steam version. In the web client you don't need bloodstones so the Bot just collect every scroll. With the steam release I need to implement a way to let you decide which boost you want to collect because you don't want to waste any bloodstones.

Right now, just deactivate scroll pickup with the latest commit.

JourneyOver commented 7 years ago

yea it works a bit better with the scrolls disabled, still have the current tab stuck on "unknown" always but I think I'm just going to wait for more stuff to get updated (especially since I'm still only in world 1 right now).

cottiAC commented 7 years ago

The tab should be known with the help of small images. I think its a resolution issue, because the bot can not find the image in another resolution. Try a resolution of 1136x640 in the game settings. Not sure how to handle different resolutions without saving all the different images.

JourneyOver commented 7 years ago

There we go on that seems to have fixed that issue at least while the game is the active window. Should get inactive/hidden window image search going on this :p https://autohotkey.com/boards/viewtopic.php?p=92362&sid=60081c1ab1fd96a14195af4d02f7b21a#p92362

cottiAC commented 7 years ago

Thanks for the tip. Sounds awesome for hidden windows. All the feedback I found so far, was that it is not possible to search for images if you can't see the window. I will test it and implement it.

But it should already work with inactive windows insofar the window is visible. Are you sure its not working if another window has the focus?

JourneyOver commented 7 years ago

Oh woops I should have worded my last message a bit better xD, things work just fine if the game window is visible and/or active any, so there is no issue there. I just can't keep the game window visible all the time since I only have 1 monitor at the moment so that's mostly why I threw that tip about the whole hidden window image search option.

cottiAC commented 7 years ago

Now using Gdip_ImageSearch and it works fine. This was a great idea. Not only it works with not visible windows, it is also faster than the original imagesearch function.

I need to change one little thing regarding returned click positions, but this is not a big deal. Let me know, if it works for you.

JourneyOver commented 7 years ago

Looks to be working great :D at least with the scroll usage disabled still. I should have world 2 unlocked soonish (possibly tomorrow) so once that happens I'll hopefully be able to test things a bit more.

JourneyOver commented 7 years ago

Alright well a few days later and got a few bugs to report.

  1. "Buy monsters" seems to not work out at all, I'm effectively able to buy both the squid and the tomb king relatively easy now, haven't gotten to the point of being able to get carl yet though but whenever the buy monsters action is turned on all that seems to happen when the script goes to upgrade is scroll all the way to the right and that's it, once it scrolls all the way to the right it just goes straight back to clicking again.

  2. Even if "find chests" are turned off I still seem to get spammed with

2017-06-08 19:29:35 [LOOT] found chest loot.
2017-06-08 19:29:40 [LOOT] could not identify chest loot. Taking the first item

in my status.log whenever I pick up a chest. thankfully it doesn't actually take the first item even if find chests is turned on. [mostly have it off until it's re-implemented for steam usage]

  1. Idle timer never seems to work at all, I currently have "idletime" set to default and it never seems to do anything.

tbh the "idletime" and the "interval" (the one right below the "idletime") settings I don't fully understand like where does the interval come into place and is idle time supposed to activate after say like a minute if you leave it at default or is it saying it'll idle for a minute?

P.S gotta get those scrolls (and possibly chests soon after? :D) working xD I keep getting stuck on the scroll window because the bot accidentally picks up a scroll sometimes when it lands in the auto clicker spot.

cottiAC commented 7 years ago
  1. "Buy monsters" is the same problem with the buggy scroll part on the right side of the game area (world overview and monster tab). I have some ideas to fix it, but I need to experiment a little bit.

  2. I can reproduce it. I have thousands of items so I didn't click chests for a long time and never ran into it. I try to store some new pics of the loot, so it should work again after the next commit. Clicking world chests was not on top of my roadmap because of the buggy click issue I mentioned :/

  3. interval is the time in ms between the autoclicks. So "50" would be 20 clicks per second. idletime: if your mouse is over the zombidle steam window, the bot is paused because it seems like you want to do something there. The bot will not do anything for %idletime% in ms. After the time the bot will continue to click because you are most likely not at the keyboard ;) default: 60000ms Idle means not moving the mouse or using the keyboard at all.

I can handle the "accidental" clicked scrolls in the browser version so it should not be a big deal to do it in the steam version. I will prioritize it.

Thanks for you feedback again!

JourneyOver commented 7 years ago
  1. Ah okay, hopefully you can get it fixed with one of your ideas, I can't remember if the devs know about it or not off the top of my head (I believe they do) so hopefully they can get it fixed as well soon enough.

  2. Glad you can reproduce it, and have a possible fix for the chests in the next commit. I'm not to worried about the bot clicking on the world chests and doing them at the moment so take your time in that area, but would like to get my item priorization to use through the bot so I don't have to keep track of it myself xD

  3. Thanks a bunch for the information on what both of those did :D

great haha :p sometimes I miss (or I'm asleep) the accidental clicked scrolls and they end up staying there forever on the screen until I notice them (or I wake up and check the game) which gets kinda annoying at times >.< so getting this fixed will be nice as well.

It's not a problem :) glad to help since this bot does help me out a bit (especially with collecting diamonds from the villagers) even in the early stages of the steam version of the bot.

cottiAC commented 7 years ago

Scrolls should be no problem now. If you have a free bloodstone (one of the bloodstones you get every 20 minutes) the bot will use it. If you have zero free bloodstones, one of the stored bloodstones will be used.

I will add a configurable list where you can decide which item you want to not waste bloodstones. I hope you have enough bloodstones right now ;)

JourneyOver commented 7 years ago

Oh my haha, I have 107 right now so dunno how quickly it will end up going through those xD got an eta on when the configurable list will be implemented? oh and what will happen if you have no bloodstones nor the free blood droplets? will it get stuck or will it say no?

JourneyOver commented 7 years ago

There is a small problem with the scroll usage it seems, sometimes it'll try to click yes but fail and get stuck. This happens during using either method (free blood drops or bloodstone usage).

It seems to mouse over the button to use the free blood drop (and sometimes when it asks if you want to use a bloodstone if you don't have any available blood drops) and try to click yes but from what it looks like is a mouse click down event is stuck so it doesn't see a full click only a mouse click up event.

[I'm sure you know about this bug since you mentioned having click registering trouble in your first post]

(this bug is known by devs dunno if they have had any luck with trying to fix it if they are or not though)

cottiAC commented 7 years ago

yes, I know about it. I tried a workaround by just pressing a second time. But this can lead to other issues if the first click was already successful. To be honest I have no idea how to fix it, without searching for images all the time.

On the other hand I tried some other methods to do save clicks on the world and monster tab - without any luck :/ I'm not an ahk professional but I think its the way the devolopers implemented the zombidle UI. Any ideas?

JourneyOver commented 7 years ago

Sadly I'm not a professional at ahk either :s but I don't think there really is much you could do, other than possibly running an error check and having a second search go off on the images for scroll usage and such, short of the devs just finding and fixing the problem.

I did check the bug report thread on reddit recently to see if anything has been going on with the mouse events problem and so far it's still just under investigation.

Another thing I did notice was the bot doesn't ever try to switch worlds (starting at world 2 and check world does do it's whole count up to 10 stuff and I'm effectively able to get 600/600 on w2) any not that it would work well anyways with the click events problem going on so I can't say much about completely registering clicks on the world tab.

cottiAC commented 7 years ago

Maybe the click issue can be resolved with this upcoming zombidle update? https://www.reddit.com/r/Zombidle/comments/6guhx3/kojak_stream_june_12/ We will see. I will implement the world switch feature again soon (maybe tomorrow)

BTW: thanks for helping out in the other reported issue.

JourneyOver commented 7 years ago

I had asked Kojak when he started up the stream today if they had found the issue to the click/scroll issue yet and sadly they have not so I don't have much hope atm for it being in the next update but there is still a week and 3 days till the update comes out so who knows they may find something before then, I honestly hope they do find whatever is causing it soon.

Sounds good, even if it is kinda moot right now with the click/scroll issue being rampant at the moment.

and it's not a problem, glad to be of help where and when I can :p

JourneyOver commented 7 years ago

Hey just checking in to see how the configurable list for scrolls is going, along with the whole chest thing/possible switching world feature.

Still no fix for the scrolling/click issue has been found yet sadly as well going by what kojak has stated in his last stream.

cottiAC commented 7 years ago

Sorry for the last response. I reworked the switch world part. It seems to work good but its not perfect right now. Same problem like the other known issues - We cant be sure that the click worked. You should disable "find chests", because it cant work right now. I'm not sure if it will work again. Its because ... yeah you already suspect it ;)

JourneyOver commented 7 years ago

Not a problem, and sweet will check/test it out and will report back with any bugs that I may possibly find :p I have had "find chests disabled ever since I started using the bot so not much of a problem there xD

Hmm one thing we could try is to make a click with a delay between the click down and up part of the click event on a part of the screen where there is nothing that is clickable so even if it is a random click to reset the mouse event it won't affect anything in the game at all, it would be kinda hacky and stupid (especially having to put in an extra click for a lot of things) but it might work. :x

I'm honestly just hoping that once the update comes out today/tomorrow kojak can sit down and actually look into a few of the bugs that have been reported that may take longer to reproduce/fix (especially the whole clicking/scrolling issue).

cottiAC commented 7 years ago

Hmm one thing we could try is to make a click with a delay between the click down and up part of the click event on a part of the screen where there is nothing that is clickable so even if it is a random click to reset the mouse event it won't affect anything in the game at all, it would be kinda hacky and stupid (especially having to put in an extra click for a lot of things) but it might work.

This is exactly my approach since some hours :D And I had luck by just clicking a dummy position at the same x coordinate but with a different y outside of the scrollbar area. For me it seems like a problem with different click positions and flash cant handle the "instant" position change within a scroll area.

JourneyOver commented 7 years ago

Haha two minds think alike :p and glad that you are having some luck with it as well. It would probably end up being the best solution to combat the problems for the time being until kojak figures the problem out and can get an actual fix in place.

your talking about the problem like for example when you put your cursor into the map/monster area while the game is clicking and it tries to instant move your mouse over there but at the same time it scrolls map/monster selection to the left or right super fast depending on where the mouse cursor would be located at?

So to report on world switching, first time around it worked splendidly and switched from 2 to 1 to 3 just fine, after I did a portal though it decided to not work out so well anymore xD it'll go and try to switch world but get stuck with it auto clicking either in the middle of the screen or like I just experienced a moment ago it'll click on the world marker to go and switch to the world but not actually go to the world and then it just starts auto clicking on the world marker over and over again.

cottiAC commented 7 years ago

The click bug was fixed yesterday during the stream I think. I will wait for the release and have a look at the behavior again.

JourneyOver commented 7 years ago

I've missed a couple streams as of late, but if that is true then omg I will be so happy when the fix comes out!

Edit: so just got word back that it is not fixed yet, he was trying to fix it yesterday but hasn't been able to yet.

Edit2: btw you broke world switching even more in your latest commit. It'll keep just keep spamming "world # is complete and switching worlds" over and over again in the status.log but will not actually do anything for several minutes, then once it does finally do something it just gets stuck trying to click on the world map (in the spot between map 3 and map 5 right at the waters edge) over and over again.

cottiAC commented 7 years ago

Yea, world switch needs some love again :/ The new worlds (6+7) changed the layout and the world overview is scrollable now.

BTW I added a prio list for the bloodstone deals. You can now decide which deal you want to click with free bloodstones left and bloodstones in your bank account.

With first start you should see new lists in your privatesettings.ini. freebslist: collection of scrolls you want to click with free bloodstones you get every 20 minutes bankbslist: collection of scrolls you want to click with collected bloodstones in your bank account

Default values are

[freebslist]
prio1=craftingTime
prio2=5_Diamonds
prio3=5_Level
prio4=x4_Skull

[bankbslist]
prio1=craftingTime
prio2=5_Diamonds

Possible values are:

JourneyOver commented 7 years ago

Woo yay! so far with testing scroll prio/choosing seem to be working pretty well, there are a few hiccups every so often where when the click fails due to the click bug it'll spam the logs and add extra scrolls to the #'s for stats.log, it does eventually sort itself out and do a reclick thankfully after a few seconds or so, as so far it hasn't actually gotten stuck on a scroll yet.

Btw you should probably disable the "Chest" as a possible value until you get a chest rework done as it will just get stuck on the chest screen until user manually clicks one of the rewards. (though I would probably hold off on any chest reworks for the script, at least until the devs implement their chest/items rework update)

cottiAC commented 7 years ago

Oh also how would I make it so that it doesn't use any bloodstones, only the free blood? Would I just add a blank prio1 to the banksblist?

Yes, a blank prio1 should work. Otherwise just write "dummy" in it. Deleting all prios will not work, due to the fact, that the script can not find any entries and will insert the default settings again.

I disabled the "find chests" by default now. You are right, it is confusing and annoying.

JourneyOver commented 7 years ago

Yea haha figured that bit out myself :p since first time I did delete all entries for the bankbslist and it ended up just re-adding the default settings again and second time I only deleted up to prio 1 and then made it empty and it worked out xD

and I meant the chests for the scroll priority, as if people end up adding it to the priority list for scrolls and one pops up it'll just get stuck when the screen pops up to pick which item you want from the chest, though the "find chests" on the option GUI being disabled also helps as well, though a mouse over note could be added to it maybe that stats that chests are currently not implemented or something for the steam release.

JourneyOver commented 7 years ago

So couple notes on newest zombidle update.

  1. Click bug still has not been fixed yet sadly :c
  2. World switching is still pretty buggy, mostly due to #1 still. (I've pretty much disabled world switching completely on my side and just have been doing it manually)
  3. Monster leveling is same as #2 due to #1.
  4. Sometimes (like 99% of the time) on the new boss (the angel) the bot decides to just not click at all even if clicking is enabled and mouse is off of the game screen, don't know what is causing this exactly.
JourneyOver commented 7 years ago

Dunno if you are still around, but the issues I had in the above comment are still valid for the latest release of zombidle, One good thing noted in the latest stream is that Kojak has stated that the click/scrolling issue is higher up on the priority list now and he plans on looking more into it after he releases the next update (toss the turtle event).

cottiAC commented 6 years ago

I will wait with new major releases, until we have a fix for the click issues. But it seems like it gets more and more attention - https://www.reddit.com/r/Zombidle/comments/6q3h1f/please_remove_annoying_touch_features_from/

We will see ... ;)

JourneyOver commented 6 years ago

Looks like it's possibly going to be fixed in the next update finally going by this http://i.imgur.com/318DBmc.png

cottiAC commented 6 years ago

Not completely but the bot works much better I think. The last three runs I was able to autofarm all worlds without getting stuck. Even the automatic Carl buying works sometimes. Maybe it just need some rework and extra checking but I think its worth a try.

I'm not sure I can do it the next days because of some other work, but I will try to push some updates again.

JourneyOver commented 6 years ago

that's okay, you can take the extra time if you need as I'm not even able to play zombidle right now because of a graphics card issue causing me to have to replace my graphics card and I dunno when exactly I'm going to be able to do so, so I'm pretty much unable to play any games at the moment.