CBT API 14 compatibility: Dalamud SDK 14, net10, fix ISigScanner and LocalPlayer
Debug Build and Test / Build against Latest Dalamud (push) Has been cancelled
Debug Build and Test / Build against Staging Dalamud (push) Has been cancelled
Release Build and Publish / Release Build against Staging Dalamud and deploy to MyDalamudPlugins (release) Has been cancelled

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-02-08 13:27:41 -05:00
commit 5b3d8c87d1
65 changed files with 5613 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
# CBT Local build (Dalamud API 14)
This copy of CBT has been updated to **Dalamud API level 14** so it runs on current FFXIV/Dalamud. The upstream repo may still ship API 13, which shows as "outdated and incompatible."
## Install the built plugin
### Option A: Dev plugins folder (recommended)
1. Create the folder (if it doesnt exist):
- `%AppData%\XIVLauncher\addon\Hooks\dev\plugins\CBT\`
2. Copy everything from:
- `CBT\bin\Release\`
into that folder, so the DLL and manifest are directly inside `...\plugins\CBT\`:
- `CBT.dll`
- `CBT.json`
- `CBT.deps.json`
- `Media\` (folder)
- `Data\` (folder)
- `images\` (folder)
3. In-game: enable **test/development** plugins in Dalamud settings if required, then enable **CBT**.
### Option B: Install from zip
A zip is built at:
- `C:\Users\flick\Desktop\MyDalamudPlugins\release-zips\CBT.zip`
If your Dalamud/plugin installer supports “Install from custom zip” or “Install from file”, use that and select `CBT.zip`. Otherwise use Option A.
## Rebuild after changes
From repo root:
```powershell
cd "C:\Users\flick\Desktop\MyDalamudPlugins\repos\CBT-main"
dotnet build -c Release
```
Output: `CBT\bin\Release\`. Copy those contents into `...\dev\plugins\CBT\` again (or re-zip and reinstall).
## Changes made for API 14
- **CBT.csproj**: `Dalamud.NET.Sdk` 13.0.0 → 14.0.1, `net9.0-windows``net10.0-windows`, version set to 0.0.3.7.
- **CBT.json**: `DalamudApiLevel` 13 → 14, added `InternalName`, `ApplicableVersion`.
- **PluginAddressResolver.cs**: Added `using Dalamud.Plugin.Services` so `ISigScanner` resolves (moved in API 14).
- **PluginManager.cs**: `LocalPlayer` now uses `Service.ObjectTable.LocalPlayer` instead of obsolete `IClientState.LocalPlayer`.