snollygolly / sourceio-automation

:video_game: A bot to automatically play s0urce.io for you
MIT License
29 stars 27 forks source link

Hacking stops for a variety of reasons and must be restart manually #11

Closed minenightowl closed 7 years ago

minenightowl commented 7 years ago

I find that sometimes the OCR sends back the wrong text, and when it does it spams the console with what the title says, i think that if it says bar hasnt moved maybe it should send another request?

snollygolly commented 7 years ago

Yeah, there's a few reasons that hacking stops, but OCR failing is definitely one of them. It's a really tough problem to solve for a few reasons.

The main one is that sometimes after you enter a word the progress bar doesn't move, even though the word is correct. I don't know if this is an attempt at throttling, or something going wrong with the server (perhaps due to load). I do know that if you soldier through and keep submitting words, you seem to get permanently disconnected.

I think the only solution is perhaps a 30-60 second wait period before resuming, probably with a different target.

minenightowl commented 7 years ago

Yea I noticed that if I "hack" right up to around lvl 10 and dont stop it boots me from the server

On Fri, Jul 7, 2017 at 9:23 AM, Matt Horning notifications@github.com wrote:

Yeah, there's a few reasons that hacking stops, but OCR failing is definitely one of them. It's a really tough problem to solve for a few reasons.

The main one is that sometimes after you enter a word the progress bar doesn't move, even though the word is correct. I don't know if this is an attempt at throttling, or something going wrong with the server (perhaps due to load). I do know that if you soldier through and keep submitting words, you seem to get permanently disconnected.

I think the only solution is perhaps a 30-60 second wait period before resuming, probably with a different target.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/snollygolly/sourceio-automation/issues/11#issuecomment-313679438, or mute the thread https://github.com/notifications/unsubscribe-auth/AclbZ8XhS3dnuTsaOuUlX0dayyy_cHzfks5sLjFTgaJpZM4OQnlj .

snollygolly commented 7 years ago

Might be resolved entirely by #22

myrondebruijn commented 7 years ago

Hi, why not use app.stop() and app.automate() in the if statement when the bot can't fill in the word or the prograss bar hasn't moved? The code below never stops running

            if (waiting === true) {
                const newHackProgress = parseHackProgress($("#progressbar-firewall-amount").attr("style"));
                // check to see if it's new
                if (hackProgress === newHackProgress) {
                    // the bar hasn't moved
                    log("* Progress bar hasn't moved, waiting");
                    // maybe the URLs have changed
                    // the user must press "restart bot"
                    listingURL = {};
                    app.stop();
                    app.automate();
                    // TODO: make this an automatic process
                    return;
                } else {
                    // the bar has moved
                    hackProgress = newHackProgress;
                    waiting = false;
                }
            }
snollygolly commented 7 years ago

When I originally did that part, having it like that resulted in it occasionally rapidly cycling. May work now though? Submit a PR and I'll test.

myrondebruijn commented 7 years ago

Will do that in a bit, and it works fine now. Runned it the whole night and I am currently level 940 without any problems

snollygolly commented 7 years ago

I just did a full refactor of the code, so I don't think it's needed anymore (as I think you might suspect). Closing.