ARCHITECTURE SHIFT: Instead of dynamically spawning proxies (which lack proper AI), use a pre-placed proxy pool from the Creation Kit. BENEFITS: - ✅ All proxies have full AI, character controllers, and animations - ✅ Pre-placed = guaranteed proper setup and initialization - ✅ Simpler architecture (no dynamic spawning complexity) - ✅ Predictable player limits (# of placed proxies = max players) IMPLEMENTATION: - Added InitializeProxyPool() to discover pre-placed proxies in cell - Added TryGetProxyFromPool() to get available proxies - Logs number of available proxies and max concurrent players - Falls back gracefully if no proxies found (warns user) USAGE: 1. Create proxy actor references in Creation Kit 2. Place them in the game cell 3. Ensure they have AI packages (for animations to work) 4. Plugin finds and manages them automatically LIMITATIONS: - Max concurrent players = number of pre-placed proxies - Users must place proxies in CK (documented requirement) This is a pragmatic solution for testing and can remain for release. Co-authored-by: Cursor <cursoragent@cursor.com>
Fallout4Together Plugin
This is the native Fallout4Together 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_PATHor
-
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 thexmakeextension 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.