Files
Commonwealth-Online-Public/plugin
andrew 31406a1275 Add hover sync and CO hover component
Add a hover system to restore :hover-like behavior for custom UI elements in the CommonwealthOnline view. Changes include:

- plugin/src/F4TPrismaUI.cpp: add SyncBrowserHover() which reads the native cursor position, converts it to client coordinates, and invokes a JS update on the server browser view; register a periodic task to call SyncBrowserHover every other tick.
- ui/views/CommonwealthOnline/browser/components/hover.js: new component that tracks pointer position, determines hovered targets using a selector list, and applies/removes a .hovered class; exposes bind(), updateFromPoint(), and clear().
- ui/views/CommonwealthOnline/browser/app.js & index.html: include and bind the new hover component during UI initialization.
- ui/views/CommonwealthOnline/browser/styles.css: add .hovered variants and transitions for nav items, buttons, rows, and filter controls to match hover visuals.
- steam_interfaces.txt: add a list of Steam interface version strings (new file).

Purpose: ensure custom buttons/rows that don't receive native :hover updates from the renderer get visible hover feedback by syncing the native cursor into the web UI and toggling a .hovered class.
2026-06-16 15:55:32 +12:00
..
2026-05-30 18:13:54 +12:00
2026-06-16 15:55:32 +12:00

Commonwealth Online Plugin

This is the native Commonwealth Online F4SE plugin using CommonLibF4.

Requirements

  • XMake [3.0.0+]
  • C++23 Compiler (MSVC or Clang-CL)

Getting Started

git clone --recurse-submodules https://github.com/libxse/Fallout4Together
cd Fallout4Together

Build

To build the project, run the following command:

xmake build

Note: This will generate a build/windows/ directory in the project's root directory with the build output.

Build Output (Optional)

If you want to redirect the build output, set one of the following environment variables:

  • Path to a Mod Manager mods folder: XSE_FO4_MODS_PATH

    or

  • Path to a Fallout 4 install folder: XSE_FO4_GAME_PATH

Project Generation (Optional)

If you use Visual Studio, run the following command:

xmake project -k vsxmake

Note: This will generate a vsxmakeXXXX/ directory in the project's root directory using the latest version of Visual Studio installed on the system.

Alternatively, if you do not use Visual Studio, you can generate a compile_commands.json file for use with a laguage server like clangd in any code editor that supports it, like vscode:

xmake project -k compile_commands

Note: You must have a language server extension installed to make use of this file. I recommend clangd. Do not have more than one installed at a time as they will conflict with each other. I also recommend installing the xmake extension if available to make building the project easier.

Upgrading Packages (Optional)

If you want to upgrade the project's dependencies, run the following commands:

xmake repo --update
xmake require --upgrade

Documentation

Please refer to the Wiki for more advanced topics.