Add Ultralight SDK as a git submodule (ThirdParty/Ultralight-SDK, Windows branch) and update build/deploy tooling and docs to use the vendored SDK by default. Updated .gitmodules and added the submodule pointer; build-prismaui.bat and deploy-all.bat now default UL_SDK to the submodule path and build-prismaui.bat checks the submodule is initialized. The PowerShell linker script (scripts/setup-ultralight-link.ps1) now falls back to ThirdParty/Ultralight-SDK when no SdkPath is provided. Documentation and developer log updated (docs/setup.md, plugin/setup.md, docs/dev-log.md) to document submodule initialization and usage; ULTRALIGHT_SDK_PATH can still override the default. Run 'git submodule update --init --recursive' on clones to initialize the SDK.
1.8 KiB
Development Setup
Required Tools
- Fallout 4 on PC
- Fallout 4 Script Extender, F4SE
- Fallout 4 Creation Kit
- Visual Studio 2022 or newer
- Git
- CMake or another build system required by the selected plugin template
- Mod Organizer 2 or Vortex
Recommended Fallout 4 Setup
Use a clean test profile.
Recommended:
Fallout 4
F4SE
Commonwealth Online test plugin
No other gameplay mods
Dedicated test save
Avoid testing with a full modlist while developing the core systems.
Main menu
Do not deploy a patched Interface/MainMenu.swf. Commonwealth Online injects the Multiplayer row at runtime via the F4SE plugin. Use vanilla MainMenu.swf or no loose override. See MainMenu_Button_Injection_Guide.md (full how-to) and MainMenu_Injection.md (project-specific notes).
Version Tracking
Record the exact versions used:
Fallout 4 version:
F4SE version:
Creation Kit version:
CommonLibF4 template:
Windows version:
Compiler version:
Git Submodules
After cloning, initialize vendored dependencies:
git submodule update --init --recursive
This includes:
ThirdParty/framework-F4-Conversion— PrismaUI_F4 HTML overlay frameworkThirdParty/Ultralight-SDK— Ultralight SDK (Windowsbranch) for PrismaUI_F4 buildsThirdParty/GameNetworkingSockets-src— networking libraryThirdParty/xbyak— assembler dependency
build-prismaui.bat links the Ultralight SDK submodule into the PrismaUI build tree automatically. Override the SDK location with ULTRALIGHT_SDK_PATH if needed.
Folder Notes
Do not copy Fallout 4 game files into this repository.
Do not copy F4SE binaries into this repository.
Use the plugin/external/README.md file to document where external dependencies should be installed.