csiqueirasilva / poe-skills-overlay

stream the user interface into floating icons, similar to the popular world of warcraft addon "weak auras"
10 stars 2 forks source link

poe-skills-overlay

Stream the user interface into floating icons, similar to the popular world of warcraft addon "weak auras"

(Click the image for a video) Screenshot of the icons floating

disclaimer

Currently don't know if using it would violate any terms in the game. Refrain from using it.

environment

was tested on windows 10; there's a parameter to use the capture with dx9, so it in theory should be able to run on windows below 8 (with dx: 9 set on the configuration file)

how to set up UI

When running the application, there will be two small icons on the top right corner of the screen. One is used for closing the overlay and the other to toggle configuration mode. In this mode, you can left click the overlay icons to open a context menu (similar to right click menu on many applications). In the context menu there will be a few buttons:

You can also interact with the overlay icon with the keyboard if the context menu for it is open. The functions are as follows:

configuration file

(this configuration scheme started in v1.0-rc3; previous versions wipe the config.json on reinstall)

poeskillsoverlay-config.json, stored inside your 'Documents' folder (or 'My Documents') is created when the application is first run. there resides all your customizations (icons zoom, position, opacity and visibility).

config_ref.json is the default configuration file

Configuration is read as follows: first the app checks if poeskillsoverlay-config.json exists, if not, it creates it by copying config_ref.json.

Some settings, like DirectX capture mode, must be made manually to poeskillsoverlay-config.json.

Below is some explanation for the configuration file.

{
    "debug": false, /* opens the browser inspector, allows some additional debugging information to be displayed; values are true or false */
    "log": false, /* logs some information to output.log; values are true or false */
    "dx": 11, /* sets directX capture mode; values are 9 or 11 */
    "gridsize": 30, /* sets the size of the squares for grid visual aid, in pixels */
    "clientLog": "C:\\Games\\Path of Exile\\logs\\Client.txt", /* path to game Client.txt */
    "autohide": true, /* toggles autohide feature */
    "autohideAreas": [ /* array of areas where the autohide feature will trigger the hide event */
        "The Rogue Harbour",
        "Coastal Hideout",
        "Oriath",
        (...)
    ],
    "groups": [ /* the app captures the screen based on elements in this array.   */
        {       /* only tooltips will be updated as the user makes any changes to */ the interface */
            "name": "skills",
            "screen": {
                "sourceWidth": 0.1432291666666667,  /* some settings were made  */
                "sourceHeight": 0.1111111111111111, /* using percentages        */
                "offsetX": -0.265625,               /* thoses will likely scale */
                "offsetY": 0.87962962962962965      /* to any aspect ratio      */
            },                                      /* as the app does the      */
            "tooltips": [                           /* calculations             */
                {   
                /* inside tooltips, only visible, opacity, zoom, left and top will be updated by the user, when customizing the icons within the user interface */
                    "visible": true,
                    "opacity": 0.65,
                    "zoom": 0.5,
                    "name": "q-aura",
                    "img": {
                        "margin-left": "calc(-0.46296296296296vh * zoom)",
                        "margin-top": "calc(-8.33333333333333vh * zoom)"
                    },
                    "width": "calc(5.75539568345324vh * zoom)",
                    "height": "calc(5.75539568345324vh * zoom)",
                    "left": "calc(50vw - (5.75539568345324vh * zoom))",
                    "top": "calc(29.5vh - (5.75539568345324vh * zoom))"
                } 
    (...) 

errors

some errors are reported on error.log, inside the installation directory.

tested resolutions and environment

added some code to attempt to scale (up or down) everything, based on my display settings (1920x1080).

game has to be on fullscreen windowed for overlay to work.

tested resolutions (icons should work, but UI is not properly tested)