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.
This commit is contained in:
Andrew Zambazos
2026-06-11 14:16:41 +12:00
parent 0980567605
commit 5bbcccee2c
8 changed files with 71 additions and 4 deletions
+4
View File
@@ -7,3 +7,7 @@
[submodule "ThirdParty/framework-F4-Conversion"]
path = ThirdParty/framework-F4-Conversion
url = https://github.com/NomadsReach/framework-F4-Conversion.git
[submodule "ThirdParty/Ultralight-SDK"]
path = ThirdParty/Ultralight-SDK
url = https://git.zambazosmedia.group/andrew/Ultralight-SDK.git
branch = Windows
Vendored Submodule
+1
+7 -1
View File
@@ -5,7 +5,7 @@ set "SCRIPT_DIR=%~dp0"
set "FRAMEWORK_DIR=%SCRIPT_DIR%ThirdParty\framework-F4-Conversion"
set "UL_SDK=%ULTRALIGHT_SDK_PATH%"
if not defined UL_SDK set "UL_SDK=F:\UltralightSDK"
if not defined UL_SDK set "UL_SDK=%SCRIPT_DIR%ThirdParty\Ultralight-SDK"
where xmake >nul 2>&1
if errorlevel 1 (
@@ -19,6 +19,12 @@ if not exist "%FRAMEWORK_DIR%\xmake.lua" (
exit /b 1
)
if not exist "%UL_SDK%\include" (
echo Ultralight SDK submodule missing. Run:
echo git submodule update --init --recursive ThirdParty/Ultralight-SDK
exit /b 1
)
echo Linking Ultralight SDK from:
echo %UL_SDK%
powershell -NoProfile -ExecutionPolicy Bypass -File "%SCRIPT_DIR%scripts\setup-ultralight-link.ps1" -SdkPath "%UL_SDK%"
+1 -1
View File
@@ -21,7 +21,7 @@ set "PRISMA_DLL="
set "CO_DLL=%SCRIPT_DIR%plugin\build\windows\x64\release\CommonwealthOnline.dll"
set "UL_SDK=%ULTRALIGHT_SDK_PATH%"
if not defined UL_SDK set "UL_SDK=F:\UltralightSDK"
if not defined UL_SDK set "UL_SDK=%SCRIPT_DIR%ThirdParty\Ultralight-SDK"
for /r "%FRAMEWORK_DIR%\build" %%F in (PrismaUI_F4.dll) do set "PRISMA_DLL=%%F"
+34
View File
@@ -7,6 +7,40 @@ failed experiments, successful tests, and next steps.
---
## 2026-06-11 - Ultralight SDK Submodule
### Summary
Added the Ultralight SDK as a vendored git submodule on the `Windows` branch so the SDK travels with the repo across machines. Updated PrismaUI build/deploy scripts to default to the submodule path instead of a fixed local drive path.
### Files Changed
- `.gitmodules`
- `ThirdParty/Ultralight-SDK` (new submodule)
- `build-prismaui.bat`
- `deploy-all.bat`
- `scripts/setup-ultralight-link.ps1`
- `plugin/setup.md`
- `docs/setup.md`
### Details
- Submodule URL: `https://git.zambazosmedia.group/andrew/Ultralight-SDK.git`
- Submodule branch: `Windows`
- Default SDK path is now `ThirdParty/Ultralight-SDK`; `ULTRALIGHT_SDK_PATH` still overrides it
- `build-prismaui.bat` checks that the Ultralight submodule is initialized before linking
### Testing
- `git submodule add -b Windows ...` completed successfully
- Verified submodule checkout is on `Windows` at commit `c0395a49bd`
- Build scripts not run in this session
### Known Issues
- None currently known
### Next Steps
- Run `build-prismaui.bat` on a clean clone to confirm junction linking and PrismaUI_F4 build
- Commit submodule pointer and script/doc updates
---
## 2026-06-05 - Locomotion Tier + Jump Takeoff Fix (Round 2)
### Summary
+17
View File
@@ -43,6 +43,23 @@ Windows version:
Compiler version:
```
## Git Submodules
After cloning, initialize vendored dependencies:
```bat
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.
+2 -1
View File
@@ -61,7 +61,8 @@ ThirdParty/framework-F4-Conversion
Ultralight SDK setup:
* Default SDK path: `F:\UltralightSDK`
* Vendored as a git submodule at `ThirdParty/Ultralight-SDK` (tracks the `Windows` branch)
* Initialize with: `git submodule update --init --recursive ThirdParty/Ultralight-SDK`
* Override with environment variable: `ULTRALIGHT_SDK_PATH`
Build PrismaUI_F4:
+5 -1
View File
@@ -1,11 +1,15 @@
param(
[string]$SdkPath = "F:\UltralightSDK"
[string]$SdkPath = ""
)
$ErrorActionPreference = "Stop"
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
$repoRoot = Split-Path -Parent $scriptDir
if ([string]::IsNullOrWhiteSpace($SdkPath)) {
$SdkPath = Join-Path $repoRoot "ThirdParty\Ultralight-SDK"
}
$frameworkBuild = Join-Path $repoRoot "ThirdParty\framework-F4-Conversion\build"
$linkPath = Join-Path $frameworkBuild "ultralight-1.4.0"