Hyprland binds called `ipc` twice so mapped keys never reached the daemon. Overlays now use mpv with wayland-app-id and JSON reload. Empty window_match matches nothing. Ctrl-c clears binds. Proven: send_shortcut to unfocused XWayland, mpv overlay class enboxer-vfx.
34 lines
1.6 KiB
Markdown
34 lines
1.6 KiB
Markdown
# Notes (WoW + Hyprland)
|
|
|
|
## Interact with Target
|
|
|
|
The game bind does what a right-click on the current target would do: attack, loot, gossip. With Click to Move (`autoInteract`), the character faces and walks to the target. They stop if the interact happens. They do not stop if they miss. Spamming the bind makes them circle. That is the game, not a timer in enBoxer.
|
|
|
|
Walking is the client. `walk_delay_ms` only holds Click to Move on long enough to arrive, then turns it off so a stray click does not send people running.
|
|
|
|
Styles:
|
|
|
|
| Style | Click to Move | Interact |
|
|
| --- | --- | --- |
|
|
| standard | on, then off after the delay | once |
|
|
| auto | left on | once |
|
|
| hold | on while the hotkey is down | on press; CTM off on release |
|
|
|
|
Macros: `docs/MACROS.md`.
|
|
|
|
## Hyprland 0.56
|
|
|
|
Lua dispatchers. Example:
|
|
|
|
```lua
|
|
hl.dispatch(hl.dsp.send_shortcut({ window = "address:0x…", mods = "ALT", key = "g" }))
|
|
hl.dispatch(hl.dsp.send_key_state({ window = "address:0x…", mods = "", key = "e", state = "down" }))
|
|
hl.bind("ALT + G", function() … end, { description = "enboxer:loot" })
|
|
```
|
|
|
|
Binds exist only while a managed game window or an `enboxer-vfx` overlay is focused.
|
|
|
|
Keys to **other** slots use `send_shortcut` on a window address. That reaches **XWayland** clients (Wine WoW) while they are not focused. Native Wayland terminals often ignore unfocused synthetic keys; the game clients this is built for are XWayland.
|
|
|
|
Visible-pixel capture: `grim`. Overlay: `mpv --wayland-app-id=enboxer-vfx` plus JSON IPC to reload frames. Covered windows: `hyprland-toplevel-export` (not wired yet).
|