Educational application aimed at automating user-defined workflows for the mobile game, "Granblue Fantasy", using a variety of CV technologies in the backend such as OpenCV, PyAutoGUI and EasyOCR and a frontend coded in Typescript.

Overview

Granblue Automation using Template Matching (It is like Full Auto, but with Full Customization!)

GitHub commit activity GitHub last commit GitHub issues GitHub pull requests GitHub

Discord here: https://discord.gg/5Yv4kqjAbm

Android version here: https://github.com/steve1316/granblue-automation-android

uClriDn77l.mp4

This Python application is designed for educational research purposes on studying how to automate certain workflows via image template matching using OpenCV. The application uses PyAutoGUI for direct mouse control, hence why it is recommended to run this on a separate machine than the one that you use daily. This can be circumvented by running this on a virtual machine like VMWare Workstation Player so you can keep using your main computer without interruption.

Screenshots are taken and cropped by PyAutoGUI for OpenCV to perform image template matching. This will determine where the bot is currently at and will inform the bot on what to do next from there.

There is a feature already in-game that can automate gameplay called "Semi/Full Auto" but does not offer any way to customize what each character does on a turn-by-turn basis. This program's primary goal is to provide that customization. Users can create their own combat scripts using predefined case-insensitive keywords and can indicate which turns the bot will execute their script, somewhat akin to constructing pseudocode.

For example:

// This is a comment. The bot will ignore this line.
# This is also a comment.

Turn 1:
    // On Turn 1, the following commands will be executed in order:
    // 6th Summon is invoked, character 1 uses Skill 2 and then Skill 4,
    // and finally character 3 uses Skill 3.
    summon(6)
    character1.useSkill(2).useSkill(4)
    character3.useSkill(3)
end

# The bot will keep clicking the Attack button until it reaches the 5th turn.
Turn 5:
    character2.useSkill(2)
end

// Use the exit keyword to leave the raid without retreating.
// Useful when you want to farm multiple raids at once.
exit

Disclaimer

By downloading this program, you consent to your account potentially getting flagged for excessive amounts of farming for multiple hours straight and banned in the next banwave by KMR. I hold no responsibility for how much or how long you use this program for. I trust you have the self-control necessary to only farm in reasonable bursts of time with breaks in between and to always be alert for when the bot encounters the CAPTCHA.

Table of Contents

Features

  • Customize what skills to use during each turn in a user-created plan. Users can select which plan to use when starting the bot.
  • A launchable GUI to keep track of logs, adjust settings and selecting what combat script to use.
  • Farm user-defined amounts of specified materials from the supported Farming Modes.
  • A user-defined timer for how long the bot should run for.
  • Support for the following game modes:
    • Quest
    • Special
    • Coop
    • Raid
    • Event
    • Guild Wars
    • Rise of the Beasts
    • Dread Barrage
    • Proving Grounds
    • Xeno Clash
    • Arcarum
  • Alert for when anti-bot CAPTCHA pops up.
  • Discord integration for informing you of status updates like loot drops via private DMs.

Wiki

Visit the Wiki here for detailed documentation and examples.

Requirements

  1. Python 3.8.3 (any version higher than this breaks PyTorch)
  2. Granblue Fantasy account
  3. Twitter Developer account (optional, needed to farm Raids)
  4. VMware Workstation Player (optional, if your computer is strong enough to support virtualization)
  5. New frontend requirement Microsoft Edge WebView2 (Windows 11 comes with this by default. Failure to install this leads to nothing showing up on the screen when the executable is launched.)
  6. New frontend requirement Microsoft Visual C++ 2015-2019 Redistibutable (x64)

Python Dependencies (make sure to have these installed before moving on to the instructions)

# Execute this command in a terminal opened inside the /backend/ folder to install all of these requirements:

pip install -r requirements.txt

Instructions

  1. Download the entire project folder.
  2. Make sure you installed the project dependencies by having Python 3.8.3 installed and ran pip install -r requirements.txt as stated above.
  3. Open up the game on a Chromium-based browser and log in if you haven't already done so. Click away any daily log in popups until you are at the Main/Home screen.
    1. Make sure the window size is set to this or else the bot will not be able to detect the "Home" button:

      Correct Window Size

  4. Now open up the program executable and follow the onscreen instructions and checking that the Settings page is filled out. You will be informed that the bot is ready to start by the status message at the top of the window.
    1. (Optional) Additionally, you can check the Extra Settings page for more general settings like Twitter, Discord and Configuration settings.
  5. You can now head back to the Home page of the program and hit the "Start" button to begin.
    1. Message logs are stored in the /logs/ folder after the bot ends or encounters an error/unexpected situation.

Instructions for farming Raids (optional, only if you want to farm Raids)


Instructions to set up Discord integration


How to create my own Combat Script?


What Missions/Items/Summons are supported?


Virtual Machine Setup (optional)

Technologies Used

  1. Python - The main language
  2. Qt - Application development framework for the GUI (old frontend)
  3. Typescript - Language for the new GUI (new frontend)
  4. Tauri - Toolkit to transform the Typescript frontend framework into a desktop application
  5. PyAutoGUI - Primarily for screenshot capturing and mouse control
  6. pyclick - For making mouse movements human-like via Bezier Curves
  7. OpenCV-Python - Image template matching
  8. EasyOCR - For text recognition and detection
  9. Twitter Standard API 1.1 - For searching and parsing texts for Raid room codes to join
  10. VMWare Workstation Player - For virtualizing the program to circumvent control of the main cursor
Comments
  •  [WARNING] Could not find any valid room code

    [WARNING] Could not find any valid room code

    Hi Steve,

    I have noticed that the warning message " [WARNING] Could not find any valid room code" always showing from 0:00 am (GMT +8),. Are there any limitations on the raid finder?

    Cheers, Yi

    opened by polarbear127 19
  • Dread Barrage

    Dread Barrage

    Hello there Steve!

    Keep up the good work!

    I know this is pretty tall order but I couldn't make the event tab work with the new event "Dread Barrage".

    Could you please check it?

    qwe8585.

    bug enhancement 
    opened by qwe8585 16
  • Raid Already Defeated

    Raid Already Defeated

    Requesting for the bot to automatically close and proceed if the "This raid has already been defeated" window appears due to using a skill on a raid which has already reached 0 HP.

    Also, sorry for the double issue opening! Is it better to open one issue at a time for separate cases, or post multiple issues/suggestions in one thread?

    opened by PortablePanda 13
  • ROTB Ex+ Config Script

    ROTB Ex+ Config Script

    If the auto ap consumption pop up occurs during ROTB ex+ being found it will default back to the original script ignoring the config settings

    image

    Will try to get log next time this occurs if needed

    bug 
    opened by zorkings 12
  • Random clicking feature

    Random clicking feature

    Thanks for sharing! Awesome! But do you use a random shift while clicking buttons/images? Cygames record the clicking position information and send it back to their server side.

    bug enhancement 
    opened by polarbear127 12
  • Arcarum Mode

    Arcarum Mode

    First off, thank you so much for adding this! Maybe those 70 tickets I have will actually end up getting used now, and fingers crossed for Replicard support in the future.

    Just popping in to say that it seems as if CAPTCHAs which appear after clicking a node to start a fight and before selecting your party aren't checked for, and requesting a method to either stop the bot or allow for a script/party to be chosen for Stage 3/6/9 bosses.

    opened by PortablePanda 11
  • Error Refreshing Summons

    Error Refreshing Summons

    Recently, it seems as if I get an error whenever the program tries to refresh summons. It gets to the Trial Battle selection screen, but stops at this screen; error log included. image

    0:00:00 [INFO] Initializing EasyOCR reader. This may take a few seconds...
    0:00:04 [INFO] EasyOCR reader initialized.
    
    0:00:07 [INFO] Moving back to the Home screen...
    
    0:00:12 [INFO] Optimizing window dimensions...
    0:00:12 [INFO] Optimizing window dimensions complete.
    
    0:00:12 ********************************************************************************
    0:00:12 ********************************************************************************
    0:00:12 [INFO] Screen Size: Size(width=1920, height=1080)
    0:00:12 [INFO] Game Window Dimensions: Region(64, 80, 474, 946)
    0:00:12 ********************************************************************************
    0:00:12 ********************************************************************************
    
    0:00:12 ################################################################################
    0:00:12 ################################################################################
    0:00:12 [FARM] Starting Farming Mode for Event (Token Drawboxes).
    0:00:12 [FARM] Farming 50x Repeated Runs at EX Event Raid.
    0:00:12 ################################################################################
    0:00:12 ################################################################################
    
    
    0:00:12 [INFO] Initializing settings for Event...
    0:00:12 [INFO] Settings initialized for Event...
    0:00:12 [INFO] Bot is at the Home screen.
    0:00:16 [INFO] Occurrence for EVENT_BANNER found at: Point(x=148, y=713)
    0:00:21 [INFO] Now hosting Event Raid...
    
    0:00:29 [INFO] Now waiting for event_raid_extreme to vanish from screen...
    0:00:30 [SUCCESS] Image successfully vanished from screen...
    0:00:33 [INFO] AP is available. Continuing...
    0:00:33 [INFO] Now checking if bot is currently at Summon Selection screen...
    0:00:33 [INFO] Bot is currently at Summon Selection screen.
    0:00:33 [INFO] Now attempting to find: BAHAMUT
    0:00:36 [WARNING] Failed to find the BOTTOM_OF_EVENT_SUMMON_SELECTION button.
    0:00:39 [WARNING] Failed to find the BOTTOM_OF_EVENT_SUMMON_SELECTION button.
    0:00:42 [WARNING] Failed to find the BOTTOM_OF_EVENT_SUMMON_SELECTION button.
    0:00:44 [WARNING] Failed to find the BOTTOM_OF_EVENT_SUMMON_SELECTION button.
    0:00:49 [WARNING] Could not find any of the specified Summons.
    
    0:00:49 [INFO] Now refreshing Summons...
    
    0:00:52 [INFO] Moving back to the Home screen...
    0:01:08 [WARNING] Failed to find the PLAY_ROUND_BUTTON button.
    0:01:11 [WARNING] Failed to find the CHOOSE_A_SUMMON button.
    
    0:01:11 [ERROR] Bot encountered exception in Farming Mode: 
    Traceback (most recent call last):
      File "D:\Desktop\GBF Bot\bot\game.py", line 1138, in start_farming_mode
        summon_check = self._select_summon(self._summon_list, self._summon_element_list)
      File "D:\Desktop\GBF Bot\bot\game.py", line 435, in _select_summon
        self._reset_summons()
      File "D:\Desktop\GBF Bot\bot\game.py", line 464, in _reset_summons
        self.mouse_tools.move_and_click_point(choose_a_summon_location[0], choose_a_summon_location[1] + 187, "choose_a_summon")
    TypeError: 'NoneType' object is not subscriptable
    
    
    0:01:11 ################################################################################
    0:01:11 ################################################################################
    0:01:11 [FARM] Ending Farming Mode.
    0:01:11 ################################################################################
    0:01:11 ################################################################################
    
    opened by PortablePanda 11
  • Xeno Diablo Clash

    Xeno Diablo Clash

    Hello there Steve!

    I know we have support for the normal showdowns. But Xeno Diablo Clash is here! I hope we can get support for it. Thanks in advance!

    qwe8585.

    enhancement 
    opened by qwe8585 10
  • "Failed to find the BOTTOM_OF_SUMMON_SELECTION button." loop after Dimensional Halo

    I ran into this behavior today while running Angel Halo. So far it occurs 100% of the time after the bot detects and runs a Dimensional Halo. It makes it to the loot screen and then gets stuck.

    I've attached a log file from my most recent run. log.txt

    opened by manafount 10
  • Unable to install one of the requirements - Autopy

    Unable to install one of the requirements - Autopy

    Hi!

    (WARNING: LONG BLOCK OF TEXT BELOW)

    I am very new to Python, but a little familiar with code structure and the such. I have very limited C/C++ knowledge, so I can somehow figure out what's happening when I see even foreign code for example. So forgive me if I sound dumb, or missed very simple steps!

    So I tried installing this, following the instructions by the letter, but I run into a problem when Python tries to install Autopy: It cannot somehow find a compatible version for what's being asked from the pip installer. So I've tried directly going to their git page and download and install it myself (I am literally running in the dark here, reading Python commands as I go), and I am completely being blocked by this error, and I cannot. unfortunately, translate it anymore:

    C:\Users\havoc\Desktop\granblue-automation-pyautogui-main>py -m pip install autopy-4.0.0.tar.gz Processing c:\users\havoc\desktop\granblue-automation-pyautogui-main\autopy-4.0.0.tar.gz Building wheels for collected packages: autopy Building wheel for autopy (setup.py) ... error ERROR: Command errored out with exit status 1: command: 'C:\Program Files (x86)\Python\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\havoc\\AppData\\Local\\Temp\\pip-req-build-xxjv69ss\\setup.py'"'"'; __file__='"'"'C:\\Users\\havoc\\AppData\\Local\\Temp\\pip-req-build-xxjv69ss\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\havoc\AppData\Local\Temp\pip-wheel-jfpocj5k' cwd: C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\ Complete output (139 lines): running bdist_wheel running build running build_py creating build creating build\lib creating build\lib\autopy copying autopy\__init__.py -> build\lib\autopy running build_ext running build_rust Updating crates.io index cargo rustc --lib --manifest-path Cargo.toml --features pyo3/extension-module --target x86_64-pc-windows-msvc --release --verbose -- --crate-type cdylib Compiling autocfg v1.0.1 Compiling cfg-if v1.0.0 Compiling proc-macro2 v0.4.30 Compiling unicode-xid v0.1.0 Compiling lazy_static v1.4.0 Compiling proc-macro2 v1.0.26 Compiling syn v0.15.44 Compiling libc v0.2.93 Compiling unicode-xid v0.2.1 Compiling scopeguard v1.1.0 Compiling memchr v2.3.4 Compiling rayon-core v1.9.0 Runningrustc --crate-name autocfg C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\autocfg-1.0.1\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=ea465f7a7b6278b6 -C extra-filename=-ea465f7a7b6278b6 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name cfg_if --edition=2018 C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\cfg-if-1.0.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=8bbb5a4cb441b35b -C extra-filename=-8bbb5a4cb441b35b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro2-0.4.30\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" --cfg "feature="proc-macro"" -C metadata=e49362ff5a049737 -C extra-filename=-e49362ff5a049737 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\proc-macro2-e49362ff5a049737 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name unicode_xid C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\unicode-xid-0.1.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" -C metadata=2961e2639d42de8a -C extra-filename=-2961e2639d42de8a --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name lazy_static C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\lazy_static-1.4.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=2a6a8d760a25d41b -C extra-filename=-2a6a8d760a25d41b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build --edition=2018 C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro2-1.0.26\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" --cfg "feature="proc-macro"" -C metadata=20bee6311394f03e -C extra-filename=-20bee6311394f03e --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\proc-macro2-20bee6311394f03e -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\syn-0.15.44\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="clone-impls"" --cfg "feature="default"" --cfg "feature="derive"" --cfg "feature="extra-traits"" --cfg "feature="full"" --cfg "feature="parsing"" --cfg "feature="printing"" --cfg "feature="proc-macro"" --cfg "feature="quote"" -C metadata=e3f568836e4026b6 -C extra-filename=-e3f568836e4026b6 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\syn-e3f568836e4026b6 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\libc-0.2.93\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" --cfg "feature="std"" -C metadata=3308cf3071d09cc2 -C extra-filename=-3308cf3071d09cc2 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\libc-3308cf3071d09cc2 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name unicode_xid C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\unicode-xid-0.2.1\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" -C metadata=c7524b7d78273a32 -C extra-filename=-c7524b7d78273a32 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name scopeguard C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\scopeguard-1.1.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg "feature="default"" --cfg "feature="use_std"" -C metadata=ebd248a620be7a8a -C extra-filename=-ebd248a620be7a8a --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\memchr-2.3.4\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="default"" --cfg "feature="std"" --cfg "feature="use_std"" -C metadata=8b945bf47907a2d1 -C extra-filename=-8b945bf47907a2d1 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\memchr-8b945bf47907a2d1 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowRunningrustc --crate-name build_script_build --edition=2018 C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\rayon-core-1.9.0\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=4375927583755be9 -C extra-filename=-4375927583755be9 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\rayon-core-4375927583755be9 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowCompiling syn v1.0.69 Runningrustc --crate-name build_script_build --edition=2018 C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\syn-1.0.69\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="clone-impls"" --cfg "feature="default"" --cfg "feature="derive"" --cfg "feature="full"" --cfg "feature="parsing"" --cfg "feature="printing"" --cfg "feature="proc-macro"" --cfg "feature="quote"" -C metadata=7f2fc2a7963ee07b -C extra-filename=-7f2fc2a7963ee07b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\syn-7f2fc2a7963ee07b -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowCompiling getrandom v0.1.16 Runningrustc --crate-name build_script_build --edition=2018 C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\getrandom-0.1.16\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature="std"" -C metadata=7f2182b4fc40a5d0 -C extra-filename=-7f2182b4fc40a5d0 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\getrandom-7f2182b4fc40a5d0 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allowCompiling proc-macro-hack-impl v0.4.3 Runningrustc --crate-name proc_macro_hack_impl C:\Users\havoc.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro-hack-impl-0.4.3\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type proc-macro --emit=dep-info,link -C prefer-dynamic -C embed-bitcode=no -C debug-assertions=off -C metadata=716e5c57b6188f72 -C extra-filename=-716e5c57b6188f72 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --extern proc_macro --cap-lints allowerror: linkerlink.exe` not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: could not compile rayon-core

    Caused by: process didn't exit successfully: rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\rayon-core-1.9.0\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=4375927583755be9 -C extra-filename=-4375927583755be9 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\rayon-core-4375927583755be9 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow (exit code: 1) warning: build failed, waiting for other jobs to finish... error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but link.exe was not found

    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option

    error: aborting due to previous error

    error: build failed error: cargo failed with code: 101


    ERROR: Failed building wheel for autopy Running setup.py clean for autopy Failed to build autopy Installing collected packages: autopy Running setup.py install for autopy ... error ERROR: Command errored out with exit status 1: command: 'C:\Program Files (x86)\Python\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\setup.py'"'"'; file='"'"'C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\havoc\AppData\Local\Temp\pip-record-litp3q39\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Program Files (x86)\Python\Include\autopy' cwd: C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss
    Complete output (138 lines): running install running build running build_py creating build creating build\lib.win-amd64-3.9 creating build\lib.win-amd64-3.9\autopy copying autopy_init_.py -> build\lib.win-amd64-3.9\autopy running build_ext running build_rust cargo rustc --lib --manifest-path Cargo.toml --features pyo3/extension-module --target x86_64-pc-windows-msvc --release --verbose -- --crate-type cdylib Compiling autocfg v1.0.1 Compiling cfg-if v1.0.0 Compiling proc-macro2 v0.4.30 Compiling unicode-xid v0.1.0 Compiling proc-macro2 v1.0.26 Compiling lazy_static v1.4.0 Compiling libc v0.2.93 Compiling syn v0.15.44 Compiling unicode-xid v0.2.1 Compiling memchr v2.3.4 Compiling scopeguard v1.1.0 Compiling syn v1.0.69 Running rustc --crate-name autocfg C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\autocfg-1.0.1\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off -C metadata=ea465f7a7b6278b6 -C extra-filename=-ea465f7a7b6278b6 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name cfg_if --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\cfg-if-1.0.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=8bbb5a4cb441b35b -C extra-filename=-8bbb5a4cb441b35b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro2-0.4.30\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" --cfg "feature=\"proc-macro\"" -C metadata=e49362ff5a049737 -C extra-filename=-e49362ff5a049737 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\proc-macro2-e49362ff5a049737 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name unicode_xid C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\unicode-xid-0.1.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" -C metadata=2961e2639d42de8a -C extra-filename=-2961e2639d42de8a --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro2-1.0.26\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" --cfg "feature=\"proc-macro\"" -C metadata=20bee6311394f03e -C extra-filename=-20bee6311394f03e --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\proc-macro2-20bee6311394f03e -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name lazy_static C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\lazy_static-1.4.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C metadata=2a6a8d760a25d41b -C extra-filename=-2a6a8d760a25d41b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\libc-0.2.93\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" --cfg "feature=\"std\"" -C metadata=3308cf3071d09cc2 -C extra-filename=-3308cf3071d09cc2 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\libc-3308cf3071d09cc2 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\syn-0.15.44\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"clone-impls\"" --cfg "feature=\"default\"" --cfg "feature=\"derive\"" --cfg "feature=\"extra-traits\"" --cfg "feature=\"full\"" --cfg "feature=\"parsing\"" --cfg "feature=\"printing\"" --cfg "feature=\"proc-macro\"" --cfg "feature=\"quote\"" -C metadata=e3f568836e4026b6 -C extra-filename=-e3f568836e4026b6 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\syn-e3f568836e4026b6 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name unicode_xid C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\unicode-xid-0.2.1\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" -C metadata=c7524b7d78273a32 -C extra-filename=-c7524b7d78273a32 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\memchr-2.3.4\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" --cfg "feature=\"std\"" --cfg "feature=\"use_std\"" -C metadata=8b945bf47907a2d1 -C extra-filename=-8b945bf47907a2d1 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\memchr-8b945bf47907a2d1 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name scopeguard C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\scopeguard-1.1.0\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg "feature=\"default\"" --cfg "feature=\"use_std\"" -C metadata=ebd248a620be7a8a -C extra-filename=-ebd248a620be7a8a --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps --target x86_64-pc-windows-msvc -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\x86_64-pc-windows-msvc\release\deps -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Running rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\syn-1.0.69\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"clone-impls\"" --cfg "feature=\"default\"" --cfg "feature=\"derive\"" --cfg "feature=\"full\"" --cfg "feature=\"parsing\"" --cfg "feature=\"printing\"" --cfg "feature=\"proc-macro\"" --cfg "feature=\"quote\"" -C metadata=7f2fc2a7963ee07b -C extra-filename=-7f2fc2a7963ee07b --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\syn-7f2fc2a7963ee07b -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Compiling rayon-core v1.9.0 Running rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\rayon-core-1.9.0\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=4375927583755be9 -C extra-filename=-4375927583755be9 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\rayon-core-4375927583755be9 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Compiling getrandom v0.1.16 Running rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\getrandom-0.1.16\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"std\"" -C metadata=7f2182b4fc40a5d0 -C extra-filename=-7f2182b4fc40a5d0 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\getrandom-7f2182b4fc40a5d0 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow Compiling bitflags v1.2.1 Running rustc --crate-name build_script_build C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\bitflags-1.2.1\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" -C metadata=3a680c004f042875 -C extra-filename=-3a680c004f042875 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\bitflags-3a680c004f042875 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow error: linker link.exe not found | = note: The system cannot find the file specified. (os error 2)

    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: could not compile `rayon-core`
    
    Caused by:
      process didn't exit successfully: `rustc --crate-name build_script_build --edition=2018 C:\Users\havoc\.cargo\registry\src\github.com-1ecc6299db9ec823\rayon-core-1.9.0\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off -C metadata=4375927583755be9 -C extra-filename=-4375927583755be9 --out-dir C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\build\rayon-core-4375927583755be9 -L dependency=C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\target\release\deps --cap-lints allow` (exit code: 1)
    warning: build failed, waiting for other jobs to finish...
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: linker `link.exe` not found
      |
      = note: The system cannot find the file specified. (os error 2)
    
    note: the msvc targets depend on the msvc linker but `link.exe` was not found
    
    note: please ensure that VS 2013, VS 2015, VS 2017 or VS 2019 was installed with the Visual C++ option
    
    error: aborting due to previous error
    
    error: build failed
    error: cargo failed with code: 101
    
    ----------------------------------------
    

    ERROR: Command errored out with exit status 1: 'C:\Program Files (x86)\Python\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\setup.py'"'"'; file='"'"'C:\Users\havoc\AppData\Local\Temp\pip-req-build-xxjv69ss\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\havoc\AppData\Local\Temp\pip-record-litp3q39\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Program Files (x86)\Python\Include\autopy' Check the logs for full command output.`

    opened by kookok0 10
  • Event quest

    Event quest

    Hello there Steve!

    It's me again.

    The new story event is here and I wanted to farm some materials. Problem is the script can't find the special quest tab.

    I'm linking the log and the picture below.

    qwe8585.

    image

    event.txt

    bug enhancement 
    opened by qwe8585 9
  • [feature request] Departure from Raid

    [feature request] Departure from Raid

    Is it possible to refer to the contribution value instead of time as to when to leave Raid? This would be very important and directly related to getting the blue box reward.

    enhancement 
    opened by enustah28 0
  • Support for non 1080p/1440p resolution

    Support for non 1080p/1440p resolution

    opened by Ekytfy 3
  • Failed to find the PROVING_GROUNDS_MISSIONS button.

    Failed to find the PROVING_GROUNDS_MISSIONS button.

    This is my log. log 2022-07-9 04-04-22.txt My proving grounds pages: https://media.discordapp.net/attachments/884577329953771590/994632832683085884/unknown.png?width=480&height=676 warning window: https://media.discordapp.net/attachments/884577329953771590/994592618908504126/unknown.png

    opened by Anuise 0
  • [feature request] timeout of script operation

    [feature request] timeout of script operation

    Request for implementation of timers to stop a script

    e.g after 2 hours (user-definable in settings), kill script operation regardless of its current state

    enhancement 
    opened by FZFalzar 0
Releases(v2.1.0)
  • v2.1.0(Dec 29, 2022)

    v2.1.0 - Changelog

    New

    • New attack chain command for useSkill(#), summon(#), and quicksummon. Chaining .attack after those commands will click the Attack button and immediately end the Turn. Useful if you want to skip the process of clicking Back to exit out of the Skill / Summon menus if that was the last action and save some seconds.
    • New setting in the Extra Settings page to reduce each and every delay by X amount of seconds. This will be helpful for people with very fast connections such that the pages load almost instantly especially with the help of the recent HTTPS change. This comes with the caveat that the entire application being unreliable since the default experience was made with the current delays in mind but you are welcome to reduce it by 0.5s for example and see how much you can increase it without encountering instabilities.

    Changed

    • Increase number of tries to close out the Items Picked Up popup during Quest Farming Mode.

    Fixed

    • Fix frontend not letting Set B from being selectable.

    Pull Requests

    • Implement new attack chain command by @steve1316 in https://github.com/steve1316/granblue-automation-pyautogui/pull/155

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v2.0.3...v2.1.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v2.1.0.zip(6.33 MB)
  • v2.0.3(Nov 23, 2022)

  • v2.0.2(Nov 21, 2022)

    v2.0.2 - Changelog

    Fixed

    • #154 fixes navigation for certain Arcarum Sandbox missions whose rewards are boosted.

    What's Changed

    • Changed the replicard ">" image by @KoiKomei in https://github.com/steve1316/granblue-automation-pyautogui/pull/154

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v2.0.1...v2.0.2

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v2.0.2.zip(6.35 MB)
  • v2.0.1(Nov 5, 2022)

    v2.0.1 - Changelog

    For those of you experiencing the AttributeError: partially initialized module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline' (most likely due to a circular import), execute the commands in https://stackoverflow.com/a/74245841 to uninstall and reinstall OpenCV.

    Fixed

    • Fixed the ModuleNotFoundError: No module named 'async_lru' error by adding it as a new dependency.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v2.0.0...v2.0.1

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v2.0.1.zip(6.35 MB)
  • v2.0.0(Nov 2, 2022)

    v2.0.0 - Changelog

    New

    • Add support for Twitter API V2 for real-time streaming of room codes and updated the wiki page with new instructions and warnings about the new changes. These new changes impacts everyone for both veterans still using V1.1 and new people using V2.

    Changed

    • Increased number of attempts to get a code from 5 to 30.
    • Updated the README and clarified some confusing aspects of the instructions.

    Fixed

    • Fixed support for Twitter API V1.1 by removing the now defunct real-time streaming feature as V2 is the only one allowed to use that feature as per new Twitter changes. Replacing it is the old manual not real-time searching method from last year.

    What's Changed

    • Update dependencies to latest as of 10/23/2022 by @steve1316 in https://github.com/steve1316/granblue-automation-pyautogui/pull/151
    • Support Twitter API v2 and fix support for Twitter API V1.1 by @steve1316 in https://github.com/steve1316/granblue-automation-pyautogui/pull/152

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.9.3...v2.0.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v2.0.0.zip(6.34 MB)
  • v1.9.3(Sep 21, 2022)

  • v1.9.2(Sep 18, 2022)

  • v1.9.1(Sep 17, 2022)

  • v1.9.0(Sep 9, 2022)

    v1.9.0 - Changelog

    New

    • #141 - Add support for the remaining leftover high difficulty raids:
      • Lvl 250 Beelzebub
      • Lvl 250 Belial
      • Lvl 300 Super Ultimate Bahamut
      • Lvl 275 Mugen

    Fixed

    • #142 - Fix Meat Farming navigation due to new UI changes.
    • #143 - Adjust scrolling behavior when looking for Quest mission on 1080p screens.

    What's Changed

    • Gold chest opening for replicard sandbox by @KoiKomei in https://github.com/steve1316/granblue-automation-pyautogui/pull/139

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.8.0...v1.9.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.9.0.zip(6.32 MB)
  • v1.8.0(Aug 26, 2022)

    v1.8.0 - Changelog

    New

    • Add support for Atum, Bennu, Ra, Tefnut and Diaspora raids and their raid-specific items.

    Changed

    • Some fixes and more replicard logic by @KoiKomei in https://github.com/steve1316/granblue-automation-pyautogui/pull/138

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.7.1...v1.8.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.8.0.zip(6.31 MB)
  • v1.7.1(Jul 17, 2022)

  • v1.7.0(Jun 12, 2022)

    v1.7.0 - Changelog

    For those of you who submitted results using the API before, the database is reset to account for these new changes. Whoops.

    New

    • Add a standalone "attack" command.
    • Add option in Settings page to default to bottom selection for Xeno Clash's new UI update.
    • Add option to disable attempts at circumventing possible bot detection via the mouse moving off of the game window. It is enabled by default.

    Changed

    • Elapsed combat time per run will now be appended in the API call if it is enabled.
    • App version will now be appended in the API call to validate each client to make sure they have the latest changes before being allowed to create a new result.
    • Discord testing in the Extra Settings page will now properly tell you what error it received like invalid user ID or invalid token.
    • Adjusted subtitle text for the API category in the Extra Settings page.

    Fixed

    • Various bugfixes related to location confirmation calls.
    • Typo fix for Mad Shearwielder and Y coordinate fix for Goliath Vanguard by @KoiKomei #128

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.5.2...v1.6.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.7.0.zip(6.30 MB)
  • v1.6.0(Apr 14, 2022)

    v1.6.0 - Changelog

    New

    • New integration with the Granblue Automation Statistics website at https://granblue-automation-statistics.com. This is an opt-in feature to voluntarily send your item drop results from the Loot Collection process after each run to the API. You will need to register an account in order to use the credentials in the application.

    Changed

    • Enabled console for release builds.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.5.2...v1.6.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.6.0.zip(6.29 MB)
  • v1.5.2(Mar 24, 2022)

    v1.5.2 - Changelog

    New

    • Added Defender handling logic by @KoiKomei.

    Changed

    • Data adjustment and corrections for Arcarum Sandbox missions to have "Repeated Run" item added to all of them.

    Fixed

    • Add missing image asset for House of Happiness mission.
    • #121 Fix several bugs related to Quest navigation.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.5.1...v1.5.2

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.5.2.zip(6.24 MB)
  • v1.5.1(Mar 15, 2022)

    v1.5.1 - Changelog

    New

    • Add new option in Settings page to adjust category selection for Event (Token Drawboxes) new raid layout and updated backend to handle it.

    Changed

    • Increase default tries to check if bot ran out of AAP for Sandbox.
    • Minor adjustment to Combat Mode for slower instances.

    Fixed

    • #116 Remove remaining references to old Special quests.
    • Fix x-coordinate for Bloody Soothsayer in data.
    • #117 @KoiKomei Fixed incorrect data for Replicard Sandbox Part 2.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.5.0...v1.5.1

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.5.1.zip(6.41 MB)
  • v1.5.0(Mar 10, 2022)

    v1.5.0 - Changelog

    New

    • Add support for Quest Farming Mode to include the items farmable on Nalhegrande and Oarlyegrande skydoms.
    • Add support for Replicard Sandbox Part 2.
    • Add Thor and Gorrilla as support summon options.
    • Add support for Lvl 120 Horus.
    • Add support for Rocket Raid mission for Steel Liquid farming in Agastia.
    • Add standalone "wait(#)" command.

    Changed

    • Manual AP/EP restore is now no longer supported. Auto restore is on by default and README instructions have been updated to have you enable the correct settings to let this run smoothly.
    • Adjusted exit and error conditions for navigation.
    • Adjusted delay when opening the Home Menu.
    • Adjusted delay when pressing the Join Room button during Raid farming.
    • Update Special Farming Mode to account for 3/10/22 ingame Special rework

    Fixed

    • #114 Revamp Summon Selection process to fix existing bugs.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.4.2...v1.5.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.5.0.zip(6.41 MB)
  • v1.4.2(Feb 16, 2022)

  • v1.4.1(Feb 13, 2022)

  • v1.4.0(Feb 12, 2022)

    v1.4.0 - Changelog

    New

    • Add support for Replicard Sandbox farming for all 4 Zones currently available. No support for Treasures/Defenders/Bosses.

    Changed

    • Change the behavior of the Item and Mission selectors in the Settings page to be interchangeable. Now you can select the Mission first and it will filter out the items available in the Item selector.
    • Increase the amount of scrolling at the start of Arcarum and Arcarum Sandbox navigation by a little bit when trying to find the Arcarum banner at the bottom of the Home page.

    Fixed

    • Fix Discord notifications having the wrong item amounts.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.3.4...v1.4.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.4.0.zip(6.17 MB)
  • v1.3.4(Feb 6, 2022)

    v1.3.4 - Changelog

    New

    • Add 4 new Combat Mode options in the Adjustments page.

    Fixed

    • Possible fix for reloading right after combat ended, causing the bot to break navigation by skipping the Loot Collection screen.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.3.3...v1.3.4

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.3.4.zip(6.00 MB)
  • v1.3.3(Feb 3, 2022)

    v1.3.3 - Changelog

    New

    • Add dictor as requirement and use it to improve parsing of settings.json. Install dictor by calling pip install -r requirements.txt in the /backend/ folder.
    • Add new command, attackback that will press the "Attack" button and then press the "Back" button to advance to the next wave (useful for farming Fragments quickly from the Elemental Treasure Quests).

    Changed

    • Optimize call to check for battle end during combat.

    Fixed

    • Fix the fix previously implemented to handle comments in same string.
    • Fix variable names for Arcarum adjustment settings.
    • Fix general bypass on adjustments for image processing.
    • Fix incorrect printing of loot collection to message log.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.3.2...v1.3.3

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.3.3.zip(6.00 MB)
  • v1.3.2(Feb 2, 2022)

    v1.3.2 - Changelog

    New

    • Add new Arcarum adjustment settings in the Adjustments page.

    Changed

    • Add another exit condition for Combat Mode.

    Fixed

    • Fix reading command where there is a comment in the same string.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.3.1...v1.3.2

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.3.2.zip(5.99 MB)
  • v1.3.1(Jan 29, 2022)

    v1.3.1 - Changelog

    New

    • Enabled the long overdue ability for GA to detect if there is an available update starting from v1.3.1. A Snackbar will appear at the top of the application on program start if there is an update. Clicking on the "Go to GitHub" button will open a new window leading to this Releases page in the GitHub repo.
    • Add some additional options in Adjustments page like adjusting how long to search for CAPTCHA.

    Changed

    • Minor changes and tweaks.
    • Update descriptions in Adjustments page.

    Fixed

    • Add missing condition to reload for Arcarum combat.
    • Fix possible situation where bot executes skill command when combat end

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.3.0...v1.3.1

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.3.1.zip(5.99 MB)
  • v1.3.0(Jan 27, 2022)

    v1.3.0 - Changelog

    New

    • Add a new Adjustments page to fine-tune number of tries the bot attempts in image searching during certain situations to compensate for ping and/or long animations.
    • Add Belial support summon.
    • Add option to enable/disable refreshing during combat in the Extra Settings page.
    • Add option to automatically use quick summons during Full/Semi Auto in the Extra Settings page.
    • Add option to bypass the process to reset summons and just select the first summon at the top of the page in the Extra Settings page.

    Changed

    • Consolidated exit logic for Combat Mode.
    • Full/Semi Auto behavior will no longer stop combat script reading.
    • Certain checkboxes are hidden when the "Enable Auto Restore" checkbox is checked.
    • Generally increased the amount of tries the bot attempts to image search in almost everything.

    Fixed

    • Fix unable to use exit time setting while Raid farming.
    • Fix Generic Farming Mode not working when trying to farm Coop missions.
    • Attempt at fixing bug where bot stops during Auto while Raid farming.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.2.7...v1.3.0

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.3.0.zip(5.99 MB)
  • v1.2.7(Jan 20, 2022)

  • v1.2.6(Jan 18, 2022)

    v1.2.6 - Changelog

    New

    • Add a new chain command .wait(#) used in skill and summon commands. Refer to the wiki for usage examples.

    Fixed

    • Prevent bot from restarting Auto if combat already ended.
    • Fix issue where bot was not auto reloading after attacking in NM95 for GW.

    Full Changelog: https://github.com/steve1316/granblue-automation-pyautogui/compare/v1.2.5...v1.2.6

    Source code(tar.gz)
    Source code(zip)
    Granblue.Automation.v1.2.6.zip(6.25 MB)
  • v1.2.5(Jan 17, 2022)

  • v1.2.4(Jan 17, 2022)

  • v1.2.3(Jan 16, 2022)

  • v1.2.2(Jan 15, 2022)

A tool combining EasyOCR and LaMa to automatically detect text and replace it with an inpainted background.

EasyLaMa (WIP) This is a tool combining EasyOCR and LaMa to automatically detect text and replace it with an inpainted background. Installation For GP

null 3 Sep 17, 2022
A bot that plays TFT using OCR. Keeps track of bench, board, items, and plays the user defined team comp.

NOTES: To ensure best results, make sure you are running this on a computer that has decent specs. 1920x1080 fullscreen is required in League, game mu

francis 125 Dec 30, 2022
Comparison-of-OCR (KerasOCR, PyTesseract,EasyOCR)

Optical Character Recognition OCR (Optical Character Recognition) is a technology that enables the conversion of document types such as scanned paper

null 21 Dec 25, 2022
A tool for extracting text from scanned documents (via OCR), with user-defined post-processing.

The project is based on older versions of tesseract and other tools, and is now superseded by another project which allows for more granular control o

Maxim 32 Jul 24, 2022
An advanced 2D image manipulation with features such as edge detection and image segmentation built using OpenCV

OpenCV-ToothPaint3-Advanced-Digital-Image-Editor This application named ‘Tooth Paint’ version TP_2020.3 (64-bit) or version 3 was developed within a w

JunHong 1 Nov 5, 2021
Opencv-image-filters - A camera to capture videos in real time by placing filters using Python with the help of the Tkinter and OpenCV libraries

Opencv-image-filters - A camera to capture videos in real time by placing filters using Python with the help of the Tkinter and OpenCV libraries

Sergio Díaz Fernández 1 Jan 13, 2022
This repo contains several opencv projects done while learning opencv in python.

opencv-projects-python This repo contains both several opencv projects done while learning opencv by python and opencv learning resources [Basic conce

Fatin Shadab 2 Nov 3, 2022
A document scanner application for laptops/desktops developed using python, Tkinter and OpenCV.

DcoumentScanner A document scanner application for laptops/desktops developed using python, Tkinter and OpenCV. Directly install the .exe file to inst

Harsh Vardhan Singh 1 Oct 29, 2021
A set of workflows for corpus building through OCR, post-correction and normalisation

PICCL: Philosophical Integrator of Computational and Corpus Libraries PICCL offers a workflow for corpus building and builds on a variety of tools. Th

Language Machines 41 Dec 27, 2022
Motion Detection Squid Game with OpenCV Python

*Motion Detection Squid Game with OpenCV Python i am newbie in python. In this project I made a simple game to follow the trend about the red light gr

Nayan 17 Nov 22, 2022
BoxToolBox is a simple python application built around the openCV library

BoxToolBox is a simple python application built around the openCV library. It is not a full featured application to guide you through the w

František Horínek 1 Nov 12, 2021
Opencv face recognition desktop application

Opencv-Face-Recognition Opencv face recognition desktop application Program developed by Gustavo Wydler Azuaga - 2021-11-19 Screenshots of the program

Gus 1 Nov 19, 2021
Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices)

English | 简体中文 Introduction PaddleOCR aims to create multilingual, awesome, leading, and practical OCR tools that help users train better models and a

null 27.5k Jan 8, 2023
Discord QR Scam Code Generator + Token grab mobile device.

A Python script that automatically generates a Nitro scam QR code and grabs the Discord token when scanned.

Visual 9 Nov 22, 2022
A python scripts that uses 3 different feature extraction methods such as SIFT, SURF and ORB to find a book in a video clip and project trailer of a movie based on that book, on to it.

A python scripts that uses 3 different feature extraction methods such as SIFT, SURF and ORB to find a book in a video clip and project trailer of a movie based on that book, on to it.

tooraj taraz 3 Feb 10, 2022
This is a project to detect gestures to zoom in or out, using the real-time distance between the index finger and the thumb. It's based on OpenCV and Mediapipe.

Pinch-zoom This is a python project based on real-time hand-gesture detection, to zoom in or out, using the distance between the index finger and the

Harshit Bhalla 6 Jul 11, 2022
Image Detector and Convertor App created using python's Pillow, OpenCV, cvlib, numpy and streamlit packages.

Image Detector and Convertor App created using python's Pillow, OpenCV, cvlib, numpy and streamlit packages.

Siva Prakash 11 Jan 2, 2022
Virtualdragdrop - Virtual Drag and Drop Using OpenCV and Arduino

Virtualdragdrop - Virtual Drag and Drop Using OpenCV and Arduino

Rizky Dermawan 4 Mar 10, 2022