Files
Commonwealth-Online-Public/docs/setup.md
T
Andrew Zambazos 5bbcccee2c Add Ultralight SDK submodule and update scripts
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.
2026-06-11 14:16:41 +12:00

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

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 framework
  • ThirdParty/Ultralight-SDK — Ultralight SDK (Windows branch) for PrismaUI_F4 builds
  • ThirdParty/GameNetworkingSockets-src — networking library
  • ThirdParty/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.