Tool for Path of Exile game to automatically scan Archemesis inventory and display related information

Overview

poe-archnemesis-scanner

Tool for Path of Exile game to automatically scan Archemesis inventory and display related information

Features

Controls

When you start the program three small buttons will pop up in the top left corner of your screen.

controls

  • '[X]' button just closes the program.
  • 'Settings' button open settings window (see below).
  • 'Scan' button does all the magic. Once you press it, the program will enter the scanning mode and the button will change to 'Scanning...'. It will scan your screen according to the scanning window area and will create a list of all possible recipes. After the scan completes, the button will change again to 'Hide'. Once you examine the scan result, click the 'Hide' button to hide them.

Settings

The setting window allows you to adjust some parameters to improve the searching efficiency or change the display settings:

settings_window

  • 'Set scanner window' button modifies the scanning area. The format for the window position is the following x, y, width, height. x and y are the horizontal and vertical offset from the top left corner of the screen. width and height are horizontal and vertical size of the window.

    When you press the button, a white rectangle will pop up for a moment and then disappear. This rectangle shows the scanning window area to help with adjustments. The default value should work in most cases, but if you want to speed the search, it's recommended to adjust it.

  • 'Set image scale' button sets the scaling factor for the source images. The current search algorithm expects the source image and the image on the screen to be the same size. Thus, we'll need to scale down/up the source images in order to get reliable results.

    The default calculated automatically based on the screen resolution and should work for most of the people. However, if you have some non-standard resolution, the search algorithm may not work properly, so you'll need to adjust this parameter manually.

  • 'Set confidence threshold' button sets the threshold used by the search algorithm to filter the results. If the algorithm was able to find an area with confidence value higher than the confidence threshold then it will treat it as a match. The default value is 0.94 (or 94%) and should work in most of the cases.

  • 'Display inventory items' checkbox turns additional display setting for scan window. The scan results will also include a list of all of your archnemesis items in the inventory.

The settings are persistent and will be saved/loaded from settings.ini file.

Scan results

The scan result will be displayed at the top of the screen like that:

scan_results

It shows you all available recipes that you can create right now. If the text is green, then that means you already have such item in the inventory. If the text is orange, then this item doesn't exist in your inventory.

You could then hover over any of the recipes to highlight the items in your inventory that could be combined to create it:

scan_results_highlight

If you checked 'Display inventory items' box, then your scan results will also include a list of all of your items in inventory (colored in white):

scan_results_display_inventory_items

Again, hover over any items to display them in your inventory.

Installation

Standalone

You could download a standalone version from release page: https://github.com/4rtzel/poe-archnemesis-scanner/releases. The package was created using pyinstaller.

Manual

You'll need to install Python and all project dependencies. Python could be installed from Microsoft Store and from the main site: https://www.python.org/downloads/ (doesn't include pip, so you'll have to install it separately).

Once the Python and pip are installed, run this command from the project directory to install all project dependencies:

pip.exe install -r requirements.txt

and then start the program

python.exe poe_arch_scanner.py

Known Issues

  • Doesn't work if the game is in the fullscreen.
  • Only works for the primary monitor (Tk limitation).
  • Occasionally hangs.
Comments
  • Script does nothing, just hangs on start

    Script does nothing, just hangs on start

    Hi, I have tried running both through the release executable and the script after installing the dependencies. Both just hang with no output at all. I am using python 3.10 on Windows 11, running with admin rights. The game is running in the background when I try.

    bug 
    opened by cyrilbos 17
  • Added a

    Added a "Shopping List" mode feature

    • Added a "Shopping List" mode, where you can specify items that you want and the scan will inform you of everything you are missing. It also adds a dynamically added "Trash" recipe that identifies items in your inventory that you don't need to accomplish your goal

      • If it isn't clear in the screenshots, the recipe list is filtered to only show the recipes that are in the chain for the specified shopping list
      • The recipe list also includes the "trash" recipe, which selects up to 4 items that aren't in the shopping list tree PathOfExile_wBUXXeDmJc PathOfExile_MVR1rlmPUG
    • I also just refactored the initial code base to break it out into multiple files, which I think is just easier to maintain

      • The first two commits are 100% the refactor, all commits beyond that are my feature changes
    • Fixed misspelled Treant Horder > Treant Horde

    • I noticed the settings.ini file wasn't commited to the repo, so I added it to the .gitignore

    opened by williammetcalf 10
  • Entangler not detected

    Entangler not detected

    Thank you again for this league-changing tool. Version 0.0.3 has everything needed to be optimal and not lose time in maps. The new recipe tree idea is brilliant. Everything's perfect for me except for Entangler not being detected correctly, even when changing the threshold or image scale.

    bug 
    opened by vaelrock 6
  • Group rectangles

    Group rectangles

    изображение

    16 berserkers found, but actually 7 is in inventory

    Seems you don't group rectangles with cv2, do you?

    For example:

    def get_rectangles(image, template, THRESHOLD = 0.8):
        result = cv2.matchTemplate(image, template, cv2.TM_CCOEFF_NORMED)
        yloc, xloc = np.where(result >= THRESHOLD)
    
        rectangles = []
    
        [ht, wt] = template.shape
        for (x, y) in zip(xloc, yloc):
            rectangles.append([int(x), int(y), int(wt), int(ht)])
            rectangles.append([int(x), int(y), int(wt), int(ht)])
    
        rectangles, weights = cv2.groupRectangles(rectangles, 1, 0.1)
    
        return rectangles
    
    opened by antofa 6
  • Green markers block clicks

    Green markers block clicks

    The green markers that also seem to have no way to get rid of block interactions.

    So once you've clicked a recipie, you are blocked from interacting with the items you want.

    Also recipie trees seem to not be closable.. I can't get rid of green markers or some trees with any interaction but closing the app.

    bug 
    opened by Davst 4
  • Error when scanning inventory

    Error when scanning inventory

    Just downloaded the latest commit and getting this error message when I press "Scan"

    https://pastebin.com/cNkMA2NN

    Not sure which commit is the cause, but yesterday it was scanning properly

    bug 
    opened by drac69 3
  • Populate clipboard with recipe clicked in tree

    Populate clipboard with recipe clicked in tree

    Your tree UI is amazing for discovery but doesn't quickly allow you to highlight all the components again after moving onto the second/third mob in a recipe chain.

    My solution is to:

    • Iterate over the tree for component names, or use the top-level item if no components
    • Push these items to the clipboard wrapped in ^(componet_1|component_2):
      • Example: Clicking on Trickster icon copies this to my clipboard ^(Overcharged|Assassin|Echoist)
    • Hide your tree UI
    • Hit ctrl+f and paste into the in-game filter for easy highlighting when spending the components

    Thanks for making this tool, it's fantastic!

    opened by alexberryman 3
  • Try to translate into simplified Chinese(zh-cn)

    Try to translate into simplified Chinese(zh-cn)

    Hello, I'm trying to translate this software into Chinese. Would you mind? I posted it on website "17173", a Chinese forum website about Poe, Of course, I will indicate the author and source.

    this is the link: http://bbs.17173.com/thread-11336859-1-1.html

    (sry, my english is pretty poor).

    opened by RoyXin 2
  • count max 1 per slot, show warning if there is no match for some? show total matchs

    count max 1 per slot, show warning if there is no match for some? show total matchs

    *so first of all maybe you can add some that check if slot number x already got a match and a new match for same slot come take the best one and ignore the other one

    *show the total count of match can help so ppl know that the scan is not 100% real

    *maybe show "7x unnacounted" if 7 slot had not match

    here you can check what i mean Sin título

    opened by kevindevm 2
  • [Enhancement] Ingredient used in

    [Enhancement] Ingredient used in

    At the moment when you left click an recipe or ingredient, when displaying inventory items, it shows how to make what was clicked.

    It would be cool with the ability to show what something that was clicked is used for. This could be done on click with mouse button three or maybe left click while holding shift or something similar.

    i.e clicking a "Toxic", would show two combination, one to make "Entangler" and one for "Treant Horde".

    enhancement 
    opened by andr9528 2
  • [GitHub] Improvement to GitHub usage.

    [GitHub] Improvement to GitHub usage.

    It would appear that your experience using GitHub is low, from how few repositories you have . As such i have a few suggestion, to improve readability for you and others visiting the GitHub. You already got the hang of Markdown it would seems from the Readme on the frontpage. Markdown can be used anywhere on GitHub, afaik.

    At the moment you are adding things like "Bug" and "Feature Request" in the titel. This can be easiliy done by adding Labels to an Issues. By default, afaik, there exists 9 different Labels, but you can freely create more as needed. Among the default ones exists "Bug", for Bugs, and "Enhancement" for Feature Requests. As the owner of this GitHub repository, you can add Labels while creating an issues, and on existing issues. Labels can also be sorted by, so you can easier find all the ones labeled bugs or anything else. Skærmbillede 2022-02-12 105459

    I'd also suggest enabling "Discussions" in the settings. This adds another tap, just like Issues, where users can discuss anything. This would be an ideal area get feedback from user through, or discuss any changes you might be working on with users. Skærmbillede 2022-02-12 104344

    Hope you like my suggestions.

    opened by andr9528 2
  • Feature: Inventory Cap -> Trash

    Feature: Inventory Cap -> Trash

    So. I do appreciate the shopping list mode and the trash can setting as well.

    One way I believe the trash feature could be improved would be if the app could calculate the inventory and put spillover items in the trash.

    When running several recipies, sometimes complex ones, it is hard to keep the total number of individual components in mind... a setting where you could limit the collection to the amount of components you need to finish a tracked set

    eg. take the base components needed and remove the ones you have in inventory and the ones built from the base list.. you maybe could select to have one spare each .. or to ignore certain uncommon ones.

    This would help to decide what to throw away.

    opened by Davst 0
  • does not work for 2560 monitors

    does not work for 2560 monitors

    Tried latest version 2.2 I also tried to directly set window location

    poe_arch_scanner.exe --scanner-window-x 112 --scanner-window-y 383 --scanner-window-width 640 --scanner-window-height 640

    opened by kirillp 6
  • Feature request - Show missing T1 ingredients

    Feature request - Show missing T1 ingredients

    Just like a tittle. There is an option to show not available recipes, but no option to show missing T1 ingredients. This would be really helpful method of showing what we should pick from the ground to fill the "blanks". I think it should be separate option in the menu. By the way, big thanks for this app.

    opened by trusql 0
  • [Bug] Multiple different in same spot

    [Bug] Multiple different in same spot

    At the moment, if the confidence is set too low, a spot can end up being multiple different ones, As of PoE v. 3.17.1, with a confidense of 0.91, Bloodletter and Frenzied can end up being in the same spot.

    If a set of cordinates for an inventory slot has been used already, any additional ones that want to use that same spot, should be flaged as conflicting, indicating that the tool is unsure of which piece it is.

    bug 
    opened by andr9528 2
Releases(v0.2.2)
  • v0.2.2(Feb 20, 2022)

    • Fix scanner window calculation for 1920x1080 resolutions.
    • Add debug command line options to help with troubleshooting:
      • --show-capture-image -- display the image that was captured by scanner window.
      • --scanner-window-{x,y,width,height} -- sets scanner window position and size.
    • Add output message for the number of items found.
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(54.91 MB)
  • v0.2.1(Feb 18, 2022)

    • Use "best match per slot" to improve scan algorithm accuracy (thanks https://github.com/meepen).
    • Change log message to show which slots the algorithm was able to match.
    • Change the default confidence threshold from 0.94 to 0.88.
    • Remove scanning window setting. The scanning window is now calculated automatically.
    • Fix copy to clipboard for recipes that contain spaces (thanks https://github.com/alexberryman)
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(54.90 MB)
  • v0.2.0(Feb 16, 2022)

    • Add a "Shopping List" feature that allows you to specify the recipes that you're interested in. Only these recipes, and the recipes that are needed to create them, will show up in scanning results (thanks https://github.com/williammetcalf).
    • Add a Scan/Hide hotkeys.
    • Add an option to disable overlay mode.
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(54.90 MB)
  • v0.1.0(Feb 13, 2022)

    • Update images for Entangler, Innocence-Touched, Kitava-Touched, Lunaris-Touched, Opulent, Solaris-Touched to match their in-game equivalents.
    • Add copy recipe to clipboard feature (thanks https://github.com/alexberryman).
    • Fix an issue where highlights would stay on the screen when interacting with the recipe tree.
    • Add a way to hide the tree by clicking on the top recipe.
    • Add a list of recipes that the currently selected recipe is used in.
    • Add an error message box pop up when start the tool without game running.
    • Add a warning message box pop up when the tool wasn't able to detect game resolution.
    • Add "Other languages" section to the README.
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(54.83 MB)
  • v0.0.3(Feb 11, 2022)

    • Add the drag feature with right mouse button held for UI elements.
    • Add support for the windowed mode.
    • Add recipe tree browser.
    • Add a new setting to show unavailable recipes.
    • Fix multiple detection of the same item by using rectangle grouping for the scan results.
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(54.81 MB)
  • v0.0.2(Feb 10, 2022)

    • Adjust algorithm for the default scale value calculation.
    • Add confidence threshold setting. Bump the default value to 0.94.
    • Move the settings window to the controls between close and scan buttons. The program will now skip settings window when started.
    • Change Drought Bringer picture to the proper one.
    • Make settings persistent. The program now will retrieve/save them from setting.ini file.
    • Change the size calculation for highlight windows.
    Source code(tar.gz)
    Source code(zip)
    poe_arch_scanner.zip(53.70 MB)
FlappyBird game with python and pygame

FlappyBird game with python and pygame

Mohammad Dori 4 Jul 15, 2022
🪨 📄 ✂ game in python with recursion

🪨 📄 ✂ Game Rock Paper Scissor game in python with recursion ⚙️ Developer's Guide Things you need to get started with this code:- Download python3 fr

Atul Anand 3 Jul 25, 2022
This is text based adventure game

CHOOSE-YOUR-OWN-ADVENTURE This is text based adventure game CONTRIBUTORS Aditya binukumar Srishti Sharma Shiva Tripathi Tanishq Tanwar ABOUT Theme: Ho

Tanishq Tanwar 3 May 31, 2022
2D ping pong game

pingpong 2D Ping Pong game How to play: player 1 w To move up s To move Down player 2 up To move up down To move Down To change the game settings, you

menachem 0 Mar 27, 2022
Pong is one of the first computer games that ever created, this simple

Pong-Game Pong is one of the first computer games that ever created, this simple "tennis like" game features two paddles and a ball, the goal is to de

Lateefah Ajadi 0 Jan 15, 2022
Meu primeiro jogo desenvolvido em Python, usado o módulo do Pygame

📖 Sobre Esse repositório é dedicado ao meu primeiro jogo feito em Python, utilizando o módulo do pygame. O jogo foi desenvolvido seguindo o tutorial

Michael Douglas 0 May 06, 2022
This is a simple tic tac toe game that runs in the command line.

Tic Tac Toe Game This is a simple tic tac toe game that runs in the command line. Game Description: The game is made up of a square grid with 9 portio

Josias Aurel 2 Nov 12, 2022
WordleHelper suggests words to help players better enjoy the hit game Wordle

WordleHelper Introduction WordleHelper suggests words to help players better enjoy the hit game Wordle. Both the general mode and the hard mode are su

Shao-Yu, Chu 5 Jun 02, 2022
Mandaw 2 Mar 01, 2022
A Python based program that displays Your Minecraft Server's Status Infos.

Minecraft-server-Status This (very) small python script allows you to view any Minecraft server's status Information Usage Download the file, install

Jonas_Jones 2 Oct 05, 2022
An old time game Tic-Tac-toe

A Tic Tac Toe Bot This is the code repository for my article on Medium - Playing Games with Python - Tic Tac Toe, where I have tried to take the famou

Jigyanshu 0 Feb 25, 2022
A classic alien shooting game.

Space-Invaders A classic alien shooting game. Description An open source game created by me and friends. How to play Install the latest python version

Phạm Thanh Sơn 1 Feb 08, 2022
A fun discord bot for music, mini games, admin controls, economy, ai chatbot and levelling system

A fun discord bot for music, mini games, admin controls, economy, ai chatbot and levelling system. This bot was specially made for Dspark discord server.

2 Aug 30, 2022
Scalable computer implemented in the game of life.

scalable-gol-computer This is a computer built in Conway’s game of life. It supports variable sizes of 8, 16 and 32 bit. Maximum program size: 256 lin

Nicolas Loizeau 19 Nov 19, 2022
Implementation of Conway's game of life in python.

👾 👨🏻‍💻 Conway's Game of Life 👨🏻‍💻 👾 by FranciscoCharles An interactive simulator that implements the standard Conway Game of Life with a simpl

3 Oct 01, 2021
Algorithm to solve Wordle correctly 100% of the time within 6 attempts.

WordleSolver © Zulkarnine, 2022. Algorithm to solve Wordle 100% of the time within 6 attempts. You can go ahead and run main.py to run it for all 2315

Zulkarnine Mahmud 69 Dec 11, 2022
MinMax Algo , Python

Write a PYTHON program to play the game of TIC-TAC-TOE on a 3×3 board with alternate inputs from user and computer.

Naman Anand 1 Nov 26, 2021
用于 blivechat 的图形界面

blivechat GUI 用于 blivechat 的图形界面。 有朋友在搞 Vtuber,像 blivechat 类似的项目能通过自定义 CSS 的方式在 OBS 上添加一个非常好看的聊天栏。但是想要在桌面端看到弹幕的话得要再开一个浏览器页面,十分不方便。就想写一个背景透明的浮窗浏览器。 挺喜欢

Silence 11 Dec 29, 2022
Sukoku-solver Python About Sudoku is one of the most popular puzzle games of all time

Sukoku-solver Python About Sudoku is one of the most popular puzzle games of all time. As a logic puzzle, Sudoku is also an excellent brain game. Bein

Harshith VH 1 Nov 20, 2021
Made by Ashish and Avinash-sord12k. Powered by pygame

Spook_alle About -Made by Ashish (Github: Ashish-Github193) and Avinash-sord12k Version - BETA v_1.0 /1-11-2021/ (game is at its base version more ite

Ashish Kumar Jha 1 Nov 01, 2021