/GW2Overlay

Main repo moved to gitlab

Primary LanguageC++GNU General Public License v3.0GPL-3.0

GW2Overlay

This is aimed to be a (very basic) GW2 overlay which runs natively on Linux as an alternative to GW2Taco. The GW2 data is sent via UDP from a python script inside the wine environment, since using mmap with wine is not straightforward.

Requirements

  • libx11
  • opengl
  • glew
  • boost-program-options
  • openssl
  • SDL2
  • qt5
  • vulkan sdk (including glslc)
  • pthreads

Python for Windows installed in ${WINEPREFIX}/drive_c/Program Files/Python38/python.exe

Compilation

mkdir build && cd build && cmake ../src && make

Usage

  • Start GW2
  • Start the overlay with ./GW2Overlay --xml-folder <path to your poi folder>
    • Open the options menu and select the location of the mumble.py helper script (one time)
    • All the required resources are expected to be in the current working directory
  • Currently it is required to start gw2 first AND have the game window in the final position
    • The program uses the position on start to place the overlay. A dynamic adaption is not implemented yet

Features

  • Can load and display GW2Taco XML POIs and trails
  • Can load and save Builds from your API
  • Markers for WvW
  • Markers are displayed on the map

Status

  • Current status: It is usable, but the UI is still lacking (Just a simple window to activate/deactivate POIs)
  • Tested on Arch with i3wm and picom
  • OpenGL and Vulkan renderers both working
    • CPU usage with Vulkan is pretty much non existent. Most is just calculating the view matrix
    • Seeing as a very bad Vulkan implementation, is much faster than the OpenGL version, the OpenGL version won't get any further updates

TODO

  • Some kind of GUI for settings etc. (Very basic one is implemented)
    • Boss timer/reminder
    • daily, killed bosses
    • Make the GUI GW2 themed
    • Overlay manager to create Overlays with boss timers and other stuff
  • Icons on Minimap
  • Vulkan specific
    • Draw everything in a single cmd (might also fix the bug after creating the queue)
  • Move from a PoC to a "real" program
    • Restructure almost everything and remove those awful singletons

BUGS

  • Vulkan specific
    • For the first seconds after creating the new command buffers (when switching the displayed POIs) the overlay lags behind. After that it works perfectly. This seems to be a problem with the fences.
    • If you encounter any visual related bugs/crashes when using vulkan, please start the program with --validation (for the very slim chance someone other than me is using this program)
  • The WvW API caches the results, so the displayed values might be wrong. Nothing I can do
  • Some Traits don't have all the required information as in the game. Again nothing I can do
  • On some maps the markers don't line up perfectly

screenshot overlay build