Repo Cleanup
This commit is contained in:
+11
-8
@@ -1,14 +1,17 @@
|
||||
# Tools
|
||||
|
||||
This folder is for helper tools and development scripts.
|
||||
Helper utilities and development scripts for Commonwealth Online.
|
||||
|
||||
Possible future tools:
|
||||
## Scripts
|
||||
|
||||
- Build scripts
|
||||
- Packaging scripts
|
||||
- Log parsers
|
||||
- Packet replay tools
|
||||
- Test client scripts
|
||||
- Development environment helpers
|
||||
| Script | Purpose |
|
||||
|---|---|
|
||||
| [`scripts/setup-ultralight-link.ps1`](scripts/setup-ultralight-link.ps1) | Junction-link Ultralight SDK for PrismaUI builds (called by `build-prismaui.bat`) |
|
||||
| [`restore-vanilla-mainmenu.ps1`](restore-vanilla-mainmenu.ps1) | Restore vanilla `MainMenu.swf` from game archives |
|
||||
| [`extract_ba2.py`](extract_ba2.py) | BA2 archive extraction helper |
|
||||
|
||||
## Reference assets
|
||||
|
||||
Decompiled vanilla interface reference files live under [`docs/reference/Interface/`](../docs/reference/Interface/). Do not deploy patched SWFs from that folder.
|
||||
|
||||
Do not place Fallout 4 game files or proprietary tools in this folder.
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
param(
|
||||
[string]$SdkPath = ""
|
||||
)
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
|
||||
$repoRoot = Split-Path -Parent (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"
|
||||
|
||||
if (-not (Test-Path $SdkPath)) {
|
||||
Write-Error "Ultralight SDK not found at: $SdkPath"
|
||||
}
|
||||
|
||||
foreach ($required in @("include", "lib", "bin", "resources")) {
|
||||
$candidate = Join-Path $SdkPath $required
|
||||
if (-not (Test-Path $candidate)) {
|
||||
Write-Error "Ultralight SDK is missing required folder: $candidate"
|
||||
}
|
||||
}
|
||||
|
||||
New-Item -ItemType Directory -Path $frameworkBuild -Force | Out-Null
|
||||
|
||||
if (Test-Path $linkPath) {
|
||||
$item = Get-Item $linkPath -Force
|
||||
if ($item.Attributes -band [IO.FileAttributes]::ReparsePoint) {
|
||||
Write-Host "Removing existing junction: $linkPath"
|
||||
cmd /c rmdir "$linkPath" | Out-Null
|
||||
} else {
|
||||
Write-Error "Expected a junction at $linkPath but found a normal directory. Remove it manually and rerun."
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host "Linking $linkPath -> $SdkPath"
|
||||
cmd /c mklink /J "$linkPath" "$SdkPath" | Out-Null
|
||||
Write-Host "Ultralight SDK link ready."
|
||||
Reference in New Issue
Block a user