Omni key - Lailloken/Exile-UI-Legacy GitHub Wiki
Feature Overview
-
context-sensitive hotkey used to access the majority of features in LLK-UI
-
uses screen-reading and copying item-info to determine the context of the keypress, and which action to trigger
-
it will not block the in-game action of the hotkey
Context-assessment
-
pressing the omni-key will send Alt-Ctrl-C to the client to copy item information
-
NOTE: if item-highlighting (showing hidden loot on the ground) is bound to a key other than Alt, additional setup in the hotkeys section of the settings menu is required (more info)
-
NOTE: if anything other than the character screen (that shows attributes, offense & defense stats, etc.) is bound to the C-key, additional setup in the hotkeys section of the settings menu is required (more info)
-
-
if item-info copying succeeds (i.e. if the cursor is hovering over an item), the script will execute item-related features
-
if copying does not succeed, a series of screen-checks is performed
Screen-checks
-
'game-screen' pixel-check: the script checks if the user is on the 'game-screen' (where you control your character) or in a specific interface (e.g. inventory, betrayal, etc.)
-
currently, the only reliable way of detecting the game-screen is checking the color or a specific pixel in the area displayed in the screenshot
-
this means you'll have to play with the mini-map displayed on the centre of the screen, otherwise omni-key-presses may trigger features randomly whenever you press it to use a skill that is also bound to it
-
-
if the game-screen pixel-check is positive, the script will not take any further action because it assumes the omni-key was pressed to use a skill bound to the key
-
if the pixel-check is negative, the script will scan the screen for multiple UIs (e.g. gwennen window, betrayal board, stash, etc.) because it assumes the omni-key was pressed to activate a specific feature
-
depending on hardware and other factors, this scan may cause short bursts of moderate to high CPU load (which is usually not noticeable while accessing the interfaces mentioned above)
-
BUT: if the pixel-check is a false-negative (e.g. if the pixel-check is not calibrated correctly), this scan will occur every time the omni-key is pressed while controlling the character
-
this may then cause a short performance drop which manifests in a short burst of lag or stutter (depending on game-client and general CPU load)
-
this is why it's important to make sure that the game-screen pixel-check is always calibrated correctly (game updates sometimes slightly change the colors of the panel in the screenshot above, requiring manual recalibration)
-
Requirements
- features that are not connected to items, e.g. info-sheets, require specific screen-checks to be set up so that the script is able to contextualize the use of the omni-key