Merge official Dalamud sample plugin into template
CI / build (push) Failing after 18s

- Replace Plugin.cs/ConfigWindow.cs skeleton with working sample code
- Add MainWindow.cs (goat-image demo + PlayerState/Lumina queries)
- Rename src/PluginConfiguration.cs → src/Configuration.cs (sample naming)
- Add Data/goat.png sample asset
- Add src/packages.lock.json (NuGet lockfile from sample)
- Add PluginNameTemplate.sln solution file
- Bump csproj from Dalamud.NET.Sdk 13.0.0 → 15.0.0
- Bump yaml dalamud_api_level: 13 → 15
- Update README with sample-removal walkthrough and SDK-bump section

Template now builds end-to-end out of the box. Goat demo
intact for verification; strip per README when implementing
the real plugin.
This commit is contained in:
2026-05-09 17:15:26 +02:00
parent 4a2e840888
commit 6e9a4abd8a
11 changed files with 363 additions and 77 deletions
+13 -7
View File
@@ -1,8 +1,7 @@
<Project Sdk="Dalamud.NET.Sdk/13.0.0">
<Project Sdk="Dalamud.NET.Sdk/15.0.0">
<!--
Replace `Dalamud.NET.Sdk/13.0.0` with the SDK version current at the time
you start your plugin. Check https://github.com/goatcorp/Dalamud.NET.Sdk
for the latest tag.
SDK 15.0.0 is current as of 2026-05. Check https://github.com/goatcorp/Dalamud.NET.Sdk
for the latest tag when you bump this template.
-->
<PropertyGroup>
@@ -20,12 +19,19 @@
<ItemGroup>
<!--
Add additional NuGet refs here as needed. Dalamud.NET.Sdk pulls in
Dalamud, ImGui.NET, FFXIVClientStructs, Lumina, etc. by default.
Sample asset bundled with the working demo (the goat-image referenced
by MainWindow.cs). Drop your real plugin assets here and adjust the
include-path. CopyToOutputDirectory ensures the file lands next to the
compiled DLL so PluginInterface.AssemblyLocation finds it.
-->
<Content Include="Data\goat.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>false</Visible>
</Content>
</ItemGroup>
<ItemGroup>
<None Include="images\icon.png" Pack="true" PackagePath="\" />
<!-- Plugin icon used by the Dalamud manifest. Drop your real icon at images/icon.png. -->
<None Include="images\icon.png" Pack="true" PackagePath="\" Condition="Exists('images\icon.png')" />
</ItemGroup>
</Project>