diff --git a/Source/Editor/Cooker/CookingData.h b/Source/Editor/Cooker/CookingData.h
index 06e48cc95..8fe930335 100644
--- a/Source/Editor/Cooker/CookingData.h
+++ b/Source/Editor/Cooker/CookingData.h
@@ -19,6 +19,8 @@ class PlatformTools;
#define GAME_BUILD_DOTNET_VER TEXT("")
#endif
+#define COOKER_MIN_DOTNET_RUNTIME_VERSION 8
+
///
/// Game building options. Used as flags.
///
diff --git a/Source/Editor/Cooker/Steps/DeployDataStep.cpp b/Source/Editor/Cooker/Steps/DeployDataStep.cpp
index ff22247ef..a6f6c40b2 100644
--- a/Source/Editor/Cooker/Steps/DeployDataStep.cpp
+++ b/Source/Editor/Cooker/Steps/DeployDataStep.cpp
@@ -117,7 +117,11 @@ bool DeployDataStep::Perform(CookingData& data)
for (String& version : versions)
{
version = String(StringUtils::GetFileName(version));
- if (!version.StartsWith(TEXT("8."))) // Check for major part of 8.0
+ const int32 dot = version.Find('.');
+ int majorVersion = 0;
+ if (dot != -1)
+ StringUtils::Parse(version.Substring(0, dot).Get(), &majorVersion);
+ if (majorVersion >= COOKER_MIN_DOTNET_RUNTIME_VERSION) // Check for major part of 8.0
version.Clear();
}
Sorting::QuickSort(versions);
diff --git a/Source/Engine/Core/Collections/OrderedDictionary.cs b/Source/Engine/Core/Collections/OrderedDictionary.cs
index ab3467d73..aa2fce31b 100644
--- a/Source/Engine/Core/Collections/OrderedDictionary.cs
+++ b/Source/Engine/Core/Collections/OrderedDictionary.cs
@@ -1,5 +1,7 @@
// Copyright (c) 2012-2024 Wojciech Figat. All rights reserved.
+#if !NET9_0_OR_GREATER
+
using System;
using System.Collections;
using System.Collections.Generic;
@@ -674,3 +676,5 @@ namespace FlaxEngine.Collections
public object Current => Entry;
}
}
+
+#endif
diff --git a/Source/Engine/Scripting/Runtime/DotNet.cpp b/Source/Engine/Scripting/Runtime/DotNet.cpp
index 38df5c16f..ddafab614 100644
--- a/Source/Engine/Scripting/Runtime/DotNet.cpp
+++ b/Source/Engine/Scripting/Runtime/DotNet.cpp
@@ -1758,7 +1758,7 @@ bool InitHostfxr()
// Warn user about missing .Net
#if PLATFORM_DESKTOP
- Platform::OpenUrl(TEXT("https://dotnet.microsoft.com/en-us/download/dotnet/8.0"));
+ Platform::OpenUrl(TEXT("https://dotnet.microsoft.com/en-us/download/dotnet"));
#endif
#if USE_EDITOR
LOG(Fatal, "Missing .NET 8 or later SDK installation required to run Flax Editor.");
diff --git a/Source/Tools/Flax.Build/Build/DotNet/DotNetSdk.cs b/Source/Tools/Flax.Build/Build/DotNet/DotNetSdk.cs
index 0e200ea39..093b2b39e 100644
--- a/Source/Tools/Flax.Build/Build/DotNet/DotNetSdk.cs
+++ b/Source/Tools/Flax.Build/Build/DotNet/DotNetSdk.cs
@@ -135,7 +135,7 @@ namespace Flax.Build
///
/// The maximum SDK version.
///
- public static Version MaximumVersion => new Version(8, 0);
+ public static Version MaximumVersion => new Version(9, 0);
///
public override TargetPlatform[] Platforms
@@ -166,10 +166,11 @@ namespace Flax.Build
///
public string CSharpLanguageVersion => Version.Major switch
{
- 8 => "12.0",
- 7 => "11.0",
- 6 => "10.0",
- 5 => "9.0",
+ _ when Version.Major >= 9 => "13.0",
+ _ when Version.Major >= 8 => "12.0",
+ _ when Version.Major >= 7 => "11.0",
+ _ when Version.Major >= 6 => "10.0",
+ _ when Version.Major >= 5 => "9.0",
_ => "7.3",
};