diff --git a/DCGEngine.sln b/DCGEngine.sln
index d6a5e56..11e82b4 100644
--- a/DCGEngine.sln
+++ b/DCGEngine.sln
@@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SVSim.UnitTests", "SVSim.Un
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SVSim.Bootstrap", "SVSim.Bootstrap\SVSim.Bootstrap.csproj", "{666786D9-9A4D-49EA-A759-39055C57F9AA}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SVSim.BattleNode", "SVSim.BattleNode\SVSim.BattleNode.csproj", "{F4549DD3-566A-4155-8D52-3A4D2A7072F7}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -31,5 +33,9 @@ Global
{666786D9-9A4D-49EA-A759-39055C57F9AA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{666786D9-9A4D-49EA-A759-39055C57F9AA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{666786D9-9A4D-49EA-A759-39055C57F9AA}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F4549DD3-566A-4155-8D52-3A4D2A7072F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F4549DD3-566A-4155-8D52-3A4D2A7072F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F4549DD3-566A-4155-8D52-3A4D2A7072F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F4549DD3-566A-4155-8D52-3A4D2A7072F7}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal
diff --git a/SVSim.BattleNode/AssemblyMarker.cs b/SVSim.BattleNode/AssemblyMarker.cs
new file mode 100644
index 0000000..f486251
--- /dev/null
+++ b/SVSim.BattleNode/AssemblyMarker.cs
@@ -0,0 +1,4 @@
+namespace SVSim.BattleNode;
+
+/// Marker class so dotnet build emits the assembly. Remove once real content lands.
+internal static class AssemblyMarker;
diff --git a/SVSim.BattleNode/SVSim.BattleNode.csproj b/SVSim.BattleNode/SVSim.BattleNode.csproj
new file mode 100644
index 0000000..cff6997
--- /dev/null
+++ b/SVSim.BattleNode/SVSim.BattleNode.csproj
@@ -0,0 +1,14 @@
+
+
+ net8.0
+ enable
+ enable
+
+
+
+
+
+
+
+
+
diff --git a/SVSim.EmulatedEntrypoint/SVSim.EmulatedEntrypoint.csproj b/SVSim.EmulatedEntrypoint/SVSim.EmulatedEntrypoint.csproj
index 4d8cb43..70d9917 100644
--- a/SVSim.EmulatedEntrypoint/SVSim.EmulatedEntrypoint.csproj
+++ b/SVSim.EmulatedEntrypoint/SVSim.EmulatedEntrypoint.csproj
@@ -28,6 +28,7 @@
+
diff --git a/SVSim.UnitTests/SVSim.UnitTests.csproj b/SVSim.UnitTests/SVSim.UnitTests.csproj
index 179e1b8..5cf500a 100644
--- a/SVSim.UnitTests/SVSim.UnitTests.csproj
+++ b/SVSim.UnitTests/SVSim.UnitTests.csproj
@@ -27,6 +27,7 @@
+