diff --git a/RoR2-UncappedConvergence/RoR2-UncappedConvergence.sln b/RoR2-UncappedConvergence/RoR2-UncappedConvergence.sln
deleted file mode 100644
index 1eb96cd..0000000
--- a/RoR2-UncappedConvergence/RoR2-UncappedConvergence.sln
+++ /dev/null
@@ -1,25 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.30204.135
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RoR2-UncappedConvergence", "RoR2-UncappedConvergence\RoR2-UncappedConvergence.csproj", "{36053921-F3F1-4CE0-B8DF-A3EC05BB49A0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {36053921-F3F1-4CE0-B8DF-A3EC05BB49A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {36053921-F3F1-4CE0-B8DF-A3EC05BB49A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {36053921-F3F1-4CE0-B8DF-A3EC05BB49A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {36053921-F3F1-4CE0-B8DF-A3EC05BB49A0}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {F654F7C7-5B18-4361-8C08-C439360718C9}
- EndGlobalSection
-EndGlobal
diff --git a/RoR2-UncappedConvergence/RoR2-UncappedConvergence/RoR2-UncappedConvergence.csproj b/RoR2-UncappedConvergence/RoR2-UncappedConvergence/RoR2-UncappedConvergence.csproj
deleted file mode 100644
index 3c646a2..0000000
--- a/RoR2-UncappedConvergence/RoR2-UncappedConvergence/RoR2-UncappedConvergence.csproj
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
- netstandard2.0
- RoR2_UncappedConvergence
- UncappedConvergence
-
-
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\0Harmony.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\Risk of Rain 2_Data\Managed\Assembly-CSharp.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\monomod\Assembly-CSharp.R2API.mm.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\BepInEx.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\BepInEx.Harmony.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\patchers\BepInEx.MonoMod.Loader\BepInEx.MonoMod.Loader.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\BepInEx.Preloader.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\plugins\R2API\MMHOOK_Assembly-CSharp.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\Mono.Cecil.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\Mono.Cecil.Mdb.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\Mono.Cecil.Pdb.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\Mono.Cecil.Rocks.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\MonoMod.RuntimeDetour.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\core\MonoMod.Utils.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\BepInEx\plugins\R2API\R2API.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\Risk of Rain 2_Data\Managed\UnityEngine.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\Risk of Rain 2_Data\Managed\UnityEngine.CoreModule.dll
-
-
- H:\SteamLibrary\steamapps\common\Risk of Rain 2\Risk of Rain 2_Data\Managed\UnityEngine.Networking.dll
-
-
-
-
diff --git a/RoR2-UncappedConvergence/RoR2-UncappedConvergence/UncappedConvergence.cs b/RoR2-UncappedConvergence/RoR2-UncappedConvergence/UncappedConvergence.cs
deleted file mode 100644
index 103578a..0000000
--- a/RoR2-UncappedConvergence/RoR2-UncappedConvergence/UncappedConvergence.cs
+++ /dev/null
@@ -1,26 +0,0 @@
-using BepInEx;
-using RoR2;
-using MonoMod.Cil;
-
-namespace ChevRoR
-{
- [BepInDependency("com.bepis.r2api")]
- [BepInPlugin("com.ChevRoR.UncappedConvergence", "Uncapped Convergence", "1.0.0")]
- public class UncappedConvergence : BaseUnityPlugin
- {
- public void Awake()
- {
- IL.RoR2.HoldoutZoneController.FocusConvergenceController.FixedUpdate += (il) =>
- {
- ILCursor c = new ILCursor(il);
- c.GotoNext(
- x => x.MatchCall("Min")
- );
- c.Index -= 3;
- c.RemoveRange(6); // remove Mathf.min code
- };
-
- Console.print("\'Uncapped Convergence\' mod loaded");
- }
- }
-}
diff --git a/UncappedConvergence/UncappedConvergence.sln b/UncappedConvergence/UncappedConvergence.sln
new file mode 100644
index 0000000..0e8c168
--- /dev/null
+++ b/UncappedConvergence/UncappedConvergence.sln
@@ -0,0 +1,22 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UncappedConvergence", "UncappedConvergence\UncappedConvergence.csproj", "{00626815-D7B5-4F45-A14D-4EB6D5F9A3BF}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {00626815-D7B5-4F45-A14D-4EB6D5F9A3BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {00626815-D7B5-4F45-A14D-4EB6D5F9A3BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {00626815-D7B5-4F45-A14D-4EB6D5F9A3BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {00626815-D7B5-4F45-A14D-4EB6D5F9A3BF}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+EndGlobal
diff --git a/UncappedConvergence/UncappedConvergence/PluginUncappedConvergence.cs b/UncappedConvergence/UncappedConvergence/PluginUncappedConvergence.cs
new file mode 100644
index 0000000..75263e9
--- /dev/null
+++ b/UncappedConvergence/UncappedConvergence/PluginUncappedConvergence.cs
@@ -0,0 +1,34 @@
+using BepInEx;
+using MonoMod.Cil;
+using System.Security.Permissions;
+
+[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
+namespace Chev
+{
+ [BepInDependency(R2API.R2API.PluginGUID)]
+ [BepInPlugin(PluginGUID, PluginName, PluginVersion)]
+ public class PluginUncappedConvergence : BaseUnityPlugin
+ {
+ public const string PluginGUID = PluginAuthor + "." + PluginName;
+ public const string PluginAuthor = "Chev";
+ public const string PluginName = "UncappedConvergence";
+ public const string PluginVersion = "2.0.0";
+
+ public void Awake()
+ {
+ Logger.LogInfo("Hooking into HoldoutZoneController.FocusConvergenceController.FixedUpdate...");
+
+ IL.RoR2.HoldoutZoneController.FocusConvergenceController.FixedUpdate += (il) =>
+ {
+ ILCursor c = new ILCursor(il);
+ c.GotoNext(
+ x => x.MatchCall("Min")
+ );
+ c.Index -= 3;
+ c.RemoveRange(6); // remove Mathf.min code
+ };
+
+ Logger.LogInfo("Hook finished, mod loaded");
+ }
+ }
+}
diff --git a/UncappedConvergence/UncappedConvergence/UncappedConvergence.csproj b/UncappedConvergence/UncappedConvergence/UncappedConvergence.csproj
new file mode 100644
index 0000000..59df77e
--- /dev/null
+++ b/UncappedConvergence/UncappedConvergence/UncappedConvergence.csproj
@@ -0,0 +1,24 @@
+
+
+
+ netstandard2.0
+ preview
+ true
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
+
+
+
+ NU1701
+
+
+
+
diff --git a/UncappedConvergence/nuget.config b/UncappedConvergence/nuget.config
new file mode 100644
index 0000000..429ce75
--- /dev/null
+++ b/UncappedConvergence/nuget.config
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file