diff --git a/Dalamud/Dalamud.csproj b/Dalamud/Dalamud.csproj
index dd84c42e5..5093fbfe9 100644
--- a/Dalamud/Dalamud.csproj
+++ b/Dalamud/Dalamud.csproj
@@ -105,6 +105,10 @@
+
+
+
+
diff --git a/Dalamud/Game/AddonEventManager/AddonCursorType.cs b/Dalamud/Game/Addon/Events/AddonCursorType.cs
similarity index 97%
rename from Dalamud/Game/AddonEventManager/AddonCursorType.cs
rename to Dalamud/Game/Addon/Events/AddonCursorType.cs
index 57d58c60c..83a81582c 100644
--- a/Dalamud/Game/AddonEventManager/AddonCursorType.cs
+++ b/Dalamud/Game/Addon/Events/AddonCursorType.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Reimplementation of CursorType.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventEntry.cs b/Dalamud/Game/Addon/Events/AddonEventEntry.cs
similarity index 96%
rename from Dalamud/Game/AddonEventManager/AddonEventEntry.cs
rename to Dalamud/Game/Addon/Events/AddonEventEntry.cs
index 48c3feb24..a7430acf0 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventEntry.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventEntry.cs
@@ -1,10 +1,8 @@
-using System;
-
-using Dalamud.Memory;
+using Dalamud.Memory;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// This class represents a registered event that a plugin registers with a native ui node.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventHandle.cs b/Dalamud/Game/Addon/Events/AddonEventHandle.cs
similarity index 90%
rename from Dalamud/Game/AddonEventManager/AddonEventHandle.cs
rename to Dalamud/Game/Addon/Events/AddonEventHandle.cs
index 48abba9a0..fb0e2886c 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventHandle.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventHandle.cs
@@ -1,6 +1,4 @@
-using System;
-
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Class that represents a addon event handle.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventListener.cs b/Dalamud/Game/Addon/Events/AddonEventListener.cs
similarity index 98%
rename from Dalamud/Game/AddonEventManager/AddonEventListener.cs
rename to Dalamud/Game/Addon/Events/AddonEventListener.cs
index 6f7c55c4c..ceac38108 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventListener.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventListener.cs
@@ -1,9 +1,8 @@
-using System;
using System.Runtime.InteropServices;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Event listener class for managing custom events.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventManager.cs b/Dalamud/Game/Addon/Events/AddonEventManager.cs
similarity index 98%
rename from Dalamud/Game/AddonEventManager/AddonEventManager.cs
rename to Dalamud/Game/Addon/Events/AddonEventManager.cs
index dfc037e23..8ec77b10d 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventManager.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventManager.cs
@@ -1,7 +1,8 @@
-using System;
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Linq;
+using Dalamud.Game.Addon.Lifecycle;
+using Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
using Dalamud.Hooking;
using Dalamud.IoC;
using Dalamud.IoC.Internal;
@@ -11,7 +12,7 @@ using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Client.UI;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Service provider for addon event management.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventManagerAddressResolver.cs b/Dalamud/Game/Addon/Events/AddonEventManagerAddressResolver.cs
similarity index 94%
rename from Dalamud/Game/AddonEventManager/AddonEventManagerAddressResolver.cs
rename to Dalamud/Game/Addon/Events/AddonEventManagerAddressResolver.cs
index 71a6093bb..1405446fe 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventManagerAddressResolver.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventManagerAddressResolver.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// AddonEventManager memory address resolver.
diff --git a/Dalamud/Game/AddonEventManager/AddonEventType.cs b/Dalamud/Game/Addon/Events/AddonEventType.cs
similarity index 98%
rename from Dalamud/Game/AddonEventManager/AddonEventType.cs
rename to Dalamud/Game/Addon/Events/AddonEventType.cs
index 74f35c257..2c6c96334 100644
--- a/Dalamud/Game/AddonEventManager/AddonEventType.cs
+++ b/Dalamud/Game/Addon/Events/AddonEventType.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Reimplementation of AtkEventType.
diff --git a/Dalamud/Game/AddonEventManager/IAddonEventHandle.cs b/Dalamud/Game/Addon/Events/IAddonEventHandle.cs
similarity index 93%
rename from Dalamud/Game/AddonEventManager/IAddonEventHandle.cs
rename to Dalamud/Game/Addon/Events/IAddonEventHandle.cs
index 3b2c5c3ae..f9272c92a 100644
--- a/Dalamud/Game/AddonEventManager/IAddonEventHandle.cs
+++ b/Dalamud/Game/Addon/Events/IAddonEventHandle.cs
@@ -1,6 +1,4 @@
-using System;
-
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Interface representing the data used for managing AddonEvents.
diff --git a/Dalamud/Game/AddonEventManager/PluginEventController.cs b/Dalamud/Game/Addon/Events/PluginEventController.cs
similarity index 98%
rename from Dalamud/Game/AddonEventManager/PluginEventController.cs
rename to Dalamud/Game/Addon/Events/PluginEventController.cs
index b66bbc99e..7847dd482 100644
--- a/Dalamud/Game/AddonEventManager/PluginEventController.cs
+++ b/Dalamud/Game/Addon/Events/PluginEventController.cs
@@ -1,5 +1,4 @@
-using System;
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Linq;
using Dalamud.Game.Gui;
@@ -8,7 +7,7 @@ using Dalamud.Memory;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Events;
///
/// Class to manage creating and cleaning up events per-plugin.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonArgs.cs
similarity index 96%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonArgs.cs
index 949d3fde9..334542c71 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonArgs.cs
@@ -1,7 +1,7 @@
using Dalamud.Memory;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Base class for AddonLifecycle AddonArgTypes.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonDrawArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonDrawArgs.cs
similarity index 77%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonDrawArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonDrawArgs.cs
index d93001d1c..6bb72f567 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonDrawArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonDrawArgs.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Finalize events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonFinalizeArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonFinalizeArgs.cs
similarity index 79%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonFinalizeArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonFinalizeArgs.cs
index ed7aa1b3c..782943955 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonFinalizeArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonFinalizeArgs.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Finalize events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRefreshArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRefreshArgs.cs
similarity index 92%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRefreshArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRefreshArgs.cs
index 6376c16b0..a50dc68f6 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRefreshArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRefreshArgs.cs
@@ -1,6 +1,6 @@
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Finalize events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs
similarity index 89%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs
index a31369aaf..e73d11e23 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonRequestedUpdateArgs.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Finalize events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonSetupArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonSetupArgs.cs
similarity index 86%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonSetupArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonSetupArgs.cs
index 17c87967a..df2ec26be 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonSetupArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonSetupArgs.cs
@@ -1,8 +1,6 @@
-using System;
+using FFXIVClientStructs.FFXIV.Component.GUI;
-using FFXIVClientStructs.FFXIV.Component.GUI;
-
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Setup events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonUpdateArgs.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonUpdateArgs.cs
similarity index 86%
rename from Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonUpdateArgs.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonUpdateArgs.cs
index 993883d77..6870746db 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgTypes/AddonUpdateArgs.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgTypes/AddonUpdateArgs.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
///
/// Addon argument data for Finalize events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonArgsType.cs b/Dalamud/Game/Addon/Lifecycle/AddonArgsType.cs
similarity index 94%
rename from Dalamud/Game/AddonLifecycle/AddonArgsType.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonArgsType.cs
index 8a07d445b..11f73a4de 100644
--- a/Dalamud/Game/AddonLifecycle/AddonArgsType.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonArgsType.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle;
///
/// Enumeration for available AddonLifecycle arg data.
diff --git a/Dalamud/Game/AddonLifecycle/AddonEvent.cs b/Dalamud/Game/Addon/Lifecycle/AddonEvent.cs
similarity index 97%
rename from Dalamud/Game/AddonLifecycle/AddonEvent.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonEvent.cs
index cfc83fb8a..75a77482d 100644
--- a/Dalamud/Game/AddonLifecycle/AddonEvent.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonEvent.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle;
///
/// Enumeration for available AddonLifecycle events.
diff --git a/Dalamud/Game/AddonLifecycle/AddonLifecycle.cs b/Dalamud/Game/Addon/Lifecycle/AddonLifecycle.cs
similarity index 99%
rename from Dalamud/Game/AddonLifecycle/AddonLifecycle.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonLifecycle.cs
index 8de98abcc..f1ee69f2b 100644
--- a/Dalamud/Game/AddonLifecycle/AddonLifecycle.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonLifecycle.cs
@@ -1,8 +1,8 @@
-using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
+using Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
using Dalamud.Hooking;
using Dalamud.Hooking.Internal;
using Dalamud.IoC;
@@ -11,7 +11,7 @@ using Dalamud.Logging.Internal;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Component.GUI;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle;
///
/// This class provides events for in-game addon lifecycles.
diff --git a/Dalamud/Game/AddonLifecycle/AddonLifecycleAddressResolver.cs b/Dalamud/Game/Addon/Lifecycle/AddonLifecycleAddressResolver.cs
similarity index 97%
rename from Dalamud/Game/AddonLifecycle/AddonLifecycleAddressResolver.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonLifecycleAddressResolver.cs
index 16fd54832..7690db50d 100644
--- a/Dalamud/Game/AddonLifecycle/AddonLifecycleAddressResolver.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonLifecycleAddressResolver.cs
@@ -1,4 +1,4 @@
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle;
///
/// AddonLifecycleService memory address resolver.
diff --git a/Dalamud/Game/AddonLifecycle/AddonLifecycleEventListener.cs b/Dalamud/Game/Addon/Lifecycle/AddonLifecycleEventListener.cs
similarity index 97%
rename from Dalamud/Game/AddonLifecycle/AddonLifecycleEventListener.cs
rename to Dalamud/Game/Addon/Lifecycle/AddonLifecycleEventListener.cs
index 12ccf5e8f..6464a1edd 100644
--- a/Dalamud/Game/AddonLifecycle/AddonLifecycleEventListener.cs
+++ b/Dalamud/Game/Addon/Lifecycle/AddonLifecycleEventListener.cs
@@ -1,6 +1,6 @@
using Dalamud.Plugin.Services;
-namespace Dalamud.Game.Addon;
+namespace Dalamud.Game.Addon.Lifecycle;
///
/// This class is a helper for tracking and invoking listener delegates.
diff --git a/Dalamud/Game/Gui/Dtr/DtrBar.cs b/Dalamud/Game/Gui/Dtr/DtrBar.cs
index e8e6ca6c5..06d37e7ec 100644
--- a/Dalamud/Game/Gui/Dtr/DtrBar.cs
+++ b/Dalamud/Game/Gui/Dtr/DtrBar.cs
@@ -4,6 +4,9 @@ using System.Linq;
using Dalamud.Configuration.Internal;
using Dalamud.Game.Addon;
+using Dalamud.Game.Addon.Events;
+using Dalamud.Game.Addon.Lifecycle;
+using Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
using Dalamud.Game.Text.SeStringHandling;
using Dalamud.IoC;
using Dalamud.IoC.Internal;
diff --git a/Dalamud/Interface/Internal/Windows/SelfTest/AgingSteps/AddonLifecycleAgingStep.cs b/Dalamud/Interface/Internal/Windows/SelfTest/AgingSteps/AddonLifecycleAgingStep.cs
index a9948430f..b2229e4e4 100644
--- a/Dalamud/Interface/Internal/Windows/SelfTest/AgingSteps/AddonLifecycleAgingStep.cs
+++ b/Dalamud/Interface/Internal/Windows/SelfTest/AgingSteps/AddonLifecycleAgingStep.cs
@@ -1,6 +1,8 @@
using System.Collections.Generic;
using Dalamud.Game.Addon;
+using Dalamud.Game.Addon.Lifecycle;
+using Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
using ImGuiNET;
namespace Dalamud.Interface.Internal.Windows.SelfTest.AgingSteps;
diff --git a/Dalamud/Plugin/Services/IAddonEventManager.cs b/Dalamud/Plugin/Services/IAddonEventManager.cs
index 52f836b4f..e696bbaae 100644
--- a/Dalamud/Plugin/Services/IAddonEventManager.cs
+++ b/Dalamud/Plugin/Services/IAddonEventManager.cs
@@ -1,4 +1,5 @@
using Dalamud.Game.Addon;
+using Dalamud.Game.Addon.Events;
namespace Dalamud.Plugin.Services;
diff --git a/Dalamud/Plugin/Services/IAddonLifecycle.cs b/Dalamud/Plugin/Services/IAddonLifecycle.cs
index 2bc41a366..6f44349d5 100644
--- a/Dalamud/Plugin/Services/IAddonLifecycle.cs
+++ b/Dalamud/Plugin/Services/IAddonLifecycle.cs
@@ -2,6 +2,8 @@
using System.Runtime.InteropServices;
using Dalamud.Game.Addon;
+using Dalamud.Game.Addon.Lifecycle;
+using Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
namespace Dalamud.Plugin.Services;