bennieboj / BlishHud-Mounts

7 stars 4 forks source link

Adds mounts, mastery skills and novelty icons in the form of radial, icon rows and corner icons.

Custom icons, out of combat queueing and automatically loading after map change (mounts only).

Settings need to be configured before using the module!

Settings

  1. Enable the module
  2. Go to settings

General Settings (1st tab)

On the left you'll see a list of actions with their keybinds and icons.

Keybinds

The keybinds in the module need to match the ones in you in-game settings:

  1. Match the keybinds to the game settings and configure the module keybind (purple) The game and the module might display different values for the keybinds due to your keyboard layout, especially for QWERTY vs AZERTY etc.
    • Each keybind should have their own unique non-overlapping key. (e.g. not use "B" for 1 keybind and B/Ctrl+B/Alt+B/Shift+B for the other, for more info on overlapping see: blish-hud/Blish-HUD#862)
  2. When you are just standing on the ground, not in water, etc you should see this result when you hold down the keybind.
Custom icons

To use custom icons:

On the right you'll see a list of settings:

The module keybind

The jump keybind

Falling or gliding update frequency

Display the module on the loading screen

Either display or not display the module on the loading screen.

Mount automatically after loading screen

StoreThingForLaterActivation: keeps track of which character is mounted on which mount and re-applies this afterwards. Only applicable on mounts, since for other things we cannot determine if it's in use via the API.

Out of Combat queuing

When using an mount that cannot be used in combat we automatically queuing this action when out of combat.

Settings related to out of combat queueing:

The following actions are usable in-game when in combat:

Combat Launch

Currently it's not possible to detect this via the API, see these issues for more information:

The "Combat Launch mastery unlocked" setting was added to mimick this.

General Radial Settings

These radial settings are globally applied and should be self explanatory:

Radial Settings (2nd tab)

Custom radial settings come in two forms:

Some settings are common for both contextual- and user-defined radial settings:

Enabled

The settings/context is ignored when not enabled.

Default action

This action is chosen when

Center action

List of actions

The list of actions that are used in this radial settings/context.

❗ If there are actions in the list that do not have a keybind set in the general settings then they will be displayed in red.

Contextual Radial Settings

Module versions up until v1.3.3 contained hard coded logic for automatic dismounting, default water mount, default flying mount, default WvW mount, etc.

Later versions got rid of this since the logic became too complex to maintain. Now this logic is configurable by the end user in the form of so-called radials settings (or contexts if you will).

In above picture we see all states the player character can be in:

These contexts are evaluated according to the evalation order from lowest to highest, first the one with 0, then 1, etc till 99. This is done because there might be overlap in these states e.g.: a player can both be underwater and mounted. Only 1 radial/context can be active at the same time. Being mounted takes precedence in-game so we need to take care of that first.

The last radial setting/context is the default, this one is always active and is used as a fallback.

Which radial settings/context is active is a bit hidden for the end user, but should generally work fine, if you want more information on this enabling additional debug data will help.

Underwater in SotO maps

Normally all water is at the same level (z = 0). The underwater radial settings/context currently does not support SotO under water areas (some of these are above above z = 0).

Gliding and falling detection

Gliding and falling is detected by looking at the z values of the player character and calculating the velocity of that movement. Gliding only happens downwards and flying can happen both up and downwards (e.g. being catapulted by dismounting, jumping into the air).

Initially there was only 1 threshold for both gliding and falling, but this caused false positives when walking up and down sloped surfaces.

Since version 1.4.2 the threshold for falling has been increased to avoid false positives. The threshold for gliding has lowered for better detection and an extra input (based on the jump keybind) has been added to avoid triggering when walking on sloped surfaces.

Unmounting since 1.4.0

In version 1.3.3 we handled unmounting in the following way:

In version 1.4.0 we handle unmounting in the following way:

Per radial settings/context we have the following options:

Apply instantly if single

When there is only 1 action configured in a radial context and this option is checked we do not display the radial, but we perform the action immediately instead. Remember the "hard coded logic" we talked about earlier in the section, this is the replacement of this.

Unconditionally Do Action

Used to disable out of combat queuing, LastUsed and mount automatically after loading screen. Only useful when the user has configured a mount action (e.g.: Raptor) instead of the dismount action to dismount in the IsPlayerMounted contextual radial settings.

User-defined Radial Settings

Users are able to define their own radial settings which are not dependent on the context their character is in.

This allows for the creation of seperate sets of things/actions displayed in their own radial.

These keybinds are not sent to Gw2.

These user-defined radial settings each should have their own unique non-overlapping keybind. (e.g. not use "B" for 1 keybind and B/Ctrl+B/Alt+B/Shift+B for the other, for more info on overlapping see: https://github.com/blish-hud/Blish-HUD/issues/862)

Icon Settings (3rd tab)

Icon settings provide rows of actions that are always on the screen.

Up to 5 icon settings can be created. The default icon settings cannot be removed, they can however be disabled.

Per icon settings we have the following options:

Name

Only changeable in icon settings other than the default one.

Enabled

Not rendered otherwise.

Enable corner icons

Use these actions also for corner icons, only available on the default icon settings.

Orientation

Display the row horizontally or vertically.

Opacity

The opacity of the displayed icons.

Drag

Option to reposition the icons.

List of actions

The list of actions that are used in this icon settings.

❗ If there are actions in the list that do not have a keybind set in the general settings then they will be displayed in red.

Debugging option, logging and reporting issues

Before reproducing an issue, please do the following steps:

Then reproduce the issue in as little steps as possible.

Report the issue on github or post on our discord:

FAQ

Q: I want to support you

A: I don't expect anything in return, but if you want you can:

Q: Can I configure mouse buttons for keybinds?

A: Not directly, but read on:

Releases

GitHub releases are out of date. Recent releases moved to in-Blish-HUD repository: https://blishhud.com/docs/user/installing-modules.

Credits

Code:

Art resources (see resources/user-provided folder):