diff --git a/.gitignore b/.gitignore
index 61c0475..05f5f61 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,6 +28,8 @@ x86/
bld/
[Bb]in/
[Oo]bj/
+[Bb]in_net6/
+[Oo]bj_net6/
[Ll]og/
[Ll]ogs/
diff --git a/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.Net6.csproj b/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.Net6.csproj
index 13045db..d1bb249 100644
--- a/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.Net6.csproj
+++ b/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.Net6.csproj
@@ -9,6 +9,8 @@
NovetusIcon.ico
obj_net6\
bin_net6\
+ false
+ false
$(DefineConstants);BASICLAUNCHER;NOVETUS_APPS
diff --git a/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.csproj b/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.csproj
index 5cea970..2a16c04 100644
--- a/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.csproj
+++ b/Novetus/Novetus.Bootstrapper/Novetus.Bootstrapper.csproj
@@ -108,4 +108,8 @@ del "%25path%25"\$(TargetName).vshost.exe.config
del "%25path%25"\$(TargetName).vshost.exe.manifest
del "%25path%25"\$(TargetName).xml
+
+
+
+
\ No newline at end of file
diff --git a/Novetus/Novetus.ClientScriptTester/Novetus.ClientScriptTester.csproj b/Novetus/Novetus.ClientScriptTester/Novetus.ClientScriptTester.csproj
index f891823..ce5ba5b 100644
--- a/Novetus/Novetus.ClientScriptTester/Novetus.ClientScriptTester.csproj
+++ b/Novetus/Novetus.ClientScriptTester/Novetus.ClientScriptTester.csproj
@@ -102,4 +102,8 @@ del "%25path%25"\$(TargetName).vshost.exe.config
del "%25path%25"\$(TargetName).vshost.exe.manifest
del "%25path%25"\$(TargetName).xml
+
+
+
+
\ No newline at end of file
diff --git a/Novetus/Novetus.ReleasePreparer/Novetus.ReleasePreparer.csproj b/Novetus/Novetus.ReleasePreparer/Novetus.ReleasePreparer.csproj
index c798feb..af8183c 100644
--- a/Novetus/Novetus.ReleasePreparer/Novetus.ReleasePreparer.csproj
+++ b/Novetus/Novetus.ReleasePreparer/Novetus.ReleasePreparer.csproj
@@ -63,4 +63,8 @@ del "%25path%25"\$(TargetName).vshost.exe.config
del "%25path%25"\$(TargetName).vshost.exe.manifest
del "%25path%25"\$(TargetName).xml
+
+
+
+
\ No newline at end of file
diff --git a/Novetus/NovetusLauncher/Novetus.Launcher.Net6.csproj b/Novetus/NovetusLauncher/Novetus.Launcher.Net6.csproj
index bd92a3d..1dae37d 100644
--- a/Novetus/NovetusLauncher/Novetus.Launcher.Net6.csproj
+++ b/Novetus/NovetusLauncher/Novetus.Launcher.Net6.csproj
@@ -10,6 +10,8 @@
NovetusIcon.ico
bin_net6\
obj_net6\
+ false
+ false
$(DefineConstants);LAUNCHER;NOVETUS_APPS
diff --git a/Novetus/NovetusLauncher/Novetus.Launcher.csproj b/Novetus/NovetusLauncher/Novetus.Launcher.csproj
index 9cfa608..3ac9187 100644
--- a/Novetus/NovetusLauncher/Novetus.Launcher.csproj
+++ b/Novetus/NovetusLauncher/Novetus.Launcher.csproj
@@ -454,4 +454,8 @@ rd /s /q "%25path2%25"
+
+
+
+
\ No newline at end of file
diff --git a/Novetus/NovetusURI/Novetus.URI.Net6.csproj b/Novetus/NovetusURI/Novetus.URI.Net6.csproj
index d357b2d..e6c2c36 100644
--- a/Novetus/NovetusURI/Novetus.URI.Net6.csproj
+++ b/Novetus/NovetusURI/Novetus.URI.Net6.csproj
@@ -9,6 +9,8 @@
NovetusIcon.ico
bin_net6\
obj_net6\
+ false
+ false
$(DefineConstants);URI;NOVETUS_APPS
diff --git a/Novetus/NovetusURI/Novetus.URI.csproj b/Novetus/NovetusURI/Novetus.URI.csproj
index a4d4baf..631618c 100644
--- a/Novetus/NovetusURI/Novetus.URI.csproj
+++ b/Novetus/NovetusURI/Novetus.URI.csproj
@@ -202,6 +202,10 @@ rd /s /q "%25path2%25"
+
+
+
+
-
\ No newline at end of file
diff --git a/Novetus/old/NovetusLauncher2_0/NovetusLauncher2_0.sln b/Novetus/old/NovetusLauncher2_0/NovetusLauncher2_0.sln
deleted file mode 100644
index 6a602e2..0000000
--- a/Novetus/old/NovetusLauncher2_0/NovetusLauncher2_0.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.31624.102
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NovetusLauncher2_0", "NovetusLauncher2_0.csproj", "{4403821F-B3C8-4DCF-866C-7EAC6541C204}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {4403821F-B3C8-4DCF-866C-7EAC6541C204}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {4403821F-B3C8-4DCF-866C-7EAC6541C204}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {4403821F-B3C8-4DCF-866C-7EAC6541C204}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {4403821F-B3C8-4DCF-866C-7EAC6541C204}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {8A913E51-0CA6-4792-9D8F-B361B7803AE4}
- EndGlobalSection
-EndGlobal
diff --git a/Novetus/old/NovetusLauncher2_0/Properties/AssemblyInfo.cs b/Novetus/old/NovetusLauncher2_0/Properties/AssemblyInfo.cs
deleted file mode 100644
index 50b07c4..0000000
--- a/Novetus/old/NovetusLauncher2_0/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-using System.Reflection;
-using System.Resources;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-using System.Windows;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("NovetusLauncher2_0")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("NovetusLauncher2_0")]
-[assembly: AssemblyCopyright("Copyright © 2020")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-//In order to begin building localizable applications, set
-//CultureYouAreCodingWith in your .csproj file
-//inside a . For example, if you are using US english
-//in your source files, set the to en-US. Then uncomment
-//the NeutralResourceLanguage attribute below. Update the "en-US" in
-//the line below to match the UICulture setting in the project file.
-
-//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
-
-
-[assembly: ThemeInfo(
- ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
- //(used if a resource is not found in the page,
- // or application resource dictionaries)
- ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
- //(used if a resource is not found in the page,
- // app, or any theme specific resource dictionaries)
-)]
-
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/Novetus/old/NovetusLauncher2_0/Properties/Resources.Designer.cs b/Novetus/old/NovetusLauncher2_0/Properties/Resources.Designer.cs
deleted file mode 100644
index ea30d90..0000000
--- a/Novetus/old/NovetusLauncher2_0/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace NovetusLauncher2_0.Properties
-{
-
-
- ///
- /// A strongly-typed resource class, for looking up localized strings, etc.
- ///
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources
- {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources()
- {
- }
-
- ///
- /// Returns the cached ResourceManager instance used by this class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager
- {
- get
- {
- if ((resourceMan == null))
- {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("NovetusLauncher2_0.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture
- {
- get
- {
- return resourceCulture;
- }
- set
- {
- resourceCulture = value;
- }
- }
- }
-}
diff --git a/Novetus/old/NovetusLauncher2_0/Properties/Resources.resx b/Novetus/old/NovetusLauncher2_0/Properties/Resources.resx
deleted file mode 100644
index af7dbeb..0000000
--- a/Novetus/old/NovetusLauncher2_0/Properties/Resources.resx
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/Novetus/old/NovetusLauncher2_0/Properties/Settings.Designer.cs b/Novetus/old/NovetusLauncher2_0/Properties/Settings.Designer.cs
deleted file mode 100644
index f9056e8..0000000
--- a/Novetus/old/NovetusLauncher2_0/Properties/Settings.Designer.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace NovetusLauncher2_0.Properties
-{
-
-
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
- {
-
- private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default
- {
- get
- {
- return defaultInstance;
- }
- }
- }
-}
diff --git a/Novetus/old/NovetusLauncher2_0/Properties/Settings.settings b/Novetus/old/NovetusLauncher2_0/Properties/Settings.settings
deleted file mode 100644
index 033d7a5..0000000
--- a/Novetus/old/NovetusLauncher2_0/Properties/Settings.settings
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Novetus/old/NovetusLauncher2_0/resources/N.png b/Novetus/old/NovetusLauncher2_0/resources/N.png
deleted file mode 100644
index bf96a6a..0000000
Binary files a/Novetus/old/NovetusLauncher2_0/resources/N.png and /dev/null differ
diff --git a/Novetus/old/NovetusLauncher2_0/resources/N_new_final_repositioned_smol.png b/Novetus/old/NovetusLauncher2_0/resources/N_new_final_repositioned_smol.png
deleted file mode 100644
index bf96a6a..0000000
Binary files a/Novetus/old/NovetusLauncher2_0/resources/N_new_final_repositioned_smol.png and /dev/null differ
diff --git a/Novetus/old/NovetusLauncher2_0/resources/TinyBcIcon.png b/Novetus/old/NovetusLauncher2_0/resources/TinyBcIcon.png
deleted file mode 100644
index 1e2c7ef..0000000
Binary files a/Novetus/old/NovetusLauncher2_0/resources/TinyBcIcon.png and /dev/null differ
diff --git a/Novetus/old/NovetusLauncher2_0/resources/TinyObcIcon.png b/Novetus/old/NovetusLauncher2_0/resources/TinyObcIcon.png
deleted file mode 100644
index f12104d..0000000
Binary files a/Novetus/old/NovetusLauncher2_0/resources/TinyObcIcon.png and /dev/null differ
diff --git a/Novetus/old/NovetusLauncher2_0/resources/TinyTbcIcon.png b/Novetus/old/NovetusLauncher2_0/resources/TinyTbcIcon.png
deleted file mode 100644
index d5c37fe..0000000
Binary files a/Novetus/old/NovetusLauncher2_0/resources/TinyTbcIcon.png and /dev/null differ
diff --git a/Novetus_SolutionLoader.bat b/Novetus_SolutionLoader.bat
new file mode 100644
index 0000000..7ff9721
--- /dev/null
+++ b/Novetus_SolutionLoader.bat
@@ -0,0 +1,50 @@
+@ECHO OFF
+:CLEAN
+CLS
+echo Cleaning Novetus.Bootstrapper
+rd /s /q "%cd%\Novetus\Novetus.Bootstrapper\bin"
+rd /s /q "%cd%\Novetus\Novetus.Bootstrapper\obj"
+rd /s /q "%cd%\Novetus\Novetus.Bootstrapper\bin_net6"
+rd /s /q "%cd%\Novetus\Novetus.Bootstrapper\obj_net6"
+
+echo Cleaning Novetus.ClientScriptTester
+rd /s /q "%cd%\Novetus\Novetus.ClientScriptTester\bin"
+rd /s /q "%cd%\Novetus\Novetus.ClientScriptTester\obj"
+rd /s /q "%cd%\Novetus\Novetus.ClientScriptTester\bin_net6"
+rd /s /q "%cd%\Novetus\Novetus.ClientScriptTester\obj_net6"
+
+echo Cleaning Novetus.ReleasePreparer
+rd /s /q "%cd%\Novetus\Novetus.ReleasePreparer\bin"
+rd /s /q "%cd%\Novetus\Novetus.ReleasePreparer\obj"
+rd /s /q "%cd%\Novetus\Novetus.ReleasePreparer\bin_net6"
+rd /s /q "%cd%\Novetus\Novetus.ReleasePreparer\obj_net6"
+
+echo Cleaning NovetusLauncher
+rd /s /q "%cd%\Novetus\NovetusLauncher\bin"
+rd /s /q "%cd%\Novetus\NovetusLauncher\obj"
+rd /s /q "%cd%\Novetus\NovetusLauncher\bin_net6"
+rd /s /q "%cd%\Novetus\NovetusLauncher\obj_net6"
+
+echo Cleaning NovetusURI
+rd /s /q "%cd%\Novetus\NovetusURI\bin"
+rd /s /q "%cd%\Novetus\NovetusURI\obj"
+rd /s /q "%cd%\Novetus\NovetusURI\bin_net6"
+rd /s /q "%cd%\Novetus\NovetusURI\obj_net6"
+goto MENU
+
+:MENU
+CLS
+ECHO Which solution do you wish to load?
+ECHO.
+ECHO 1 - Novetus (.NET Framework 4.0)
+ECHO 2 - Novetus.Tools (.NET Framework 4.0)
+ECHO 3 - Novetus (.NET 6)
+ECHO 4 - Novetus.Tools (.NET 6)
+ECHO 5 - EXIT
+ECHO.
+SET /P M=Option:
+IF %M%==1 start "" "%cd%\Novetus\Novetus.sln"
+IF %M%==2 start "" "%cd%\Novetus\Novetus.Tools.sln"
+IF %M%==3 start "" "%cd%\Novetus\Novetus.Net6.sln"
+IF %M%==4 start "" "%cd%\Novetus\Novetus.Tools.Net6.sln"
+IF %M%==5 EXIT
\ No newline at end of file
diff --git a/README.md b/README.md
index 4782a44..f5407b3 100644
--- a/README.md
+++ b/README.md
@@ -6,10 +6,12 @@
Source code for Novetus' launcher, installer, LUA scripts, and server.
If you want to look at test applications built for Novetus' development, look here: https://github.com/Novetus/NovetusTests
-## Building
+## Building (Windows)
-To build, this project requires Visual Studio 2017 or over.
-Please note that you need to right click and click "Restore Nuget Packages" before compiling.
+To build, this project requires Visual Studio 2017 or over. Modern versions of Novetus are compiled with Visual Studio 2022.
+
+Open "Novetus_SolutionLoader.bat" and choose a solution. Then, right click the solution and click "Restore Nuget Packages" before compiling.
+This batch file is used to clean and load solutions due to the move to .NET 6 conflicting with some files.
## Legal info: