diff --git a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
index d099192a4f..377d5f27d4 100644
--- a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
+++ b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
@@ -123,11 +123,15 @@
+
+
+
+
diff --git a/OpenRA.Mods.RA/CreateMPPlayers.cs b/OpenRA.Mods.Common/World/CreateMPPlayers.cs
similarity index 98%
rename from OpenRA.Mods.RA/CreateMPPlayers.cs
rename to OpenRA.Mods.Common/World/CreateMPPlayers.cs
index 7755d0502c..aa7f05bb1b 100644
--- a/OpenRA.Mods.RA/CreateMPPlayers.cs
+++ b/OpenRA.Mods.Common/World/CreateMPPlayers.cs
@@ -12,7 +12,7 @@ using System.Linq;
using OpenRA.Network;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common
{
[Desc("Attach this to the world actor.")]
public class CreateMPPlayersInfo : TraitInfo { }
diff --git a/OpenRA.Mods.RA/MPStartLocations.cs b/OpenRA.Mods.Common/World/MPStartLocations.cs
old mode 100755
new mode 100644
similarity index 98%
rename from OpenRA.Mods.RA/MPStartLocations.cs
rename to OpenRA.Mods.Common/World/MPStartLocations.cs
index 6c88e55f7a..790d820a98
--- a/OpenRA.Mods.RA/MPStartLocations.cs
+++ b/OpenRA.Mods.Common/World/MPStartLocations.cs
@@ -15,7 +15,7 @@ using OpenRA.Graphics;
using OpenRA.Primitives;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common
{
public class MPStartLocationsInfo : TraitInfo
{
diff --git a/OpenRA.Mods.RA/MPStartUnits.cs b/OpenRA.Mods.Common/World/MPStartUnits.cs
similarity index 97%
rename from OpenRA.Mods.RA/MPStartUnits.cs
rename to OpenRA.Mods.Common/World/MPStartUnits.cs
index 1bca9eb766..e370bc2738 100644
--- a/OpenRA.Mods.RA/MPStartUnits.cs
+++ b/OpenRA.Mods.Common/World/MPStartUnits.cs
@@ -10,7 +10,7 @@
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common
{
[Desc("Used by SpawnMPUnits. Attach these to the world actor. You can have multiple variants by adding @suffixes.")]
public class MPStartUnitsInfo : TraitInfo
diff --git a/OpenRA.Mods.RA/SpawnMapActors.cs b/OpenRA.Mods.Common/World/SpawnMapActors.cs
similarity index 97%
rename from OpenRA.Mods.RA/SpawnMapActors.cs
rename to OpenRA.Mods.Common/World/SpawnMapActors.cs
index 1108793e50..0aa4edcec8 100644
--- a/OpenRA.Mods.RA/SpawnMapActors.cs
+++ b/OpenRA.Mods.Common/World/SpawnMapActors.cs
@@ -13,7 +13,7 @@ using System.Linq;
using OpenRA.Graphics;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common
{
public class SpawnMapActorsInfo : TraitInfo { }
diff --git a/OpenRA.Mods.D2k/Render/WithCrumbleOverlay.cs b/OpenRA.Mods.D2k/Render/WithCrumbleOverlay.cs
index c7a4920379..c270d3d9be 100644
--- a/OpenRA.Mods.D2k/Render/WithCrumbleOverlay.cs
+++ b/OpenRA.Mods.D2k/Render/WithCrumbleOverlay.cs
@@ -9,6 +9,7 @@
#endregion
using OpenRA.Graphics;
+using OpenRA.Mods.Common;
using OpenRA.Mods.Common.Traits.Render;
using OpenRA.Mods.RA;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/Activities/Transform.cs b/OpenRA.Mods.RA/Activities/Transform.cs
index be0a2168f0..89e6dd826c 100644
--- a/OpenRA.Mods.RA/Activities/Transform.cs
+++ b/OpenRA.Mods.RA/Activities/Transform.cs
@@ -9,6 +9,7 @@
#endregion
using System.Linq;
+using OpenRA.Mods.Common;
using OpenRA.Primitives;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/Attack/AttackPopupTurreted.cs b/OpenRA.Mods.RA/Attack/AttackPopupTurreted.cs
index 80c1e2af7c..f1317dc115 100644
--- a/OpenRA.Mods.RA/Attack/AttackPopupTurreted.cs
+++ b/OpenRA.Mods.RA/Attack/AttackPopupTurreted.cs
@@ -10,6 +10,7 @@
using System.Linq;
using OpenRA.GameRules;
+using OpenRA.Mods.Common;
using OpenRA.Mods.RA.Buildings;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/Buildings/Building.cs b/OpenRA.Mods.RA/Buildings/Building.cs
index 747b2ffb4b..62ddf624d1 100644
--- a/OpenRA.Mods.RA/Buildings/Building.cs
+++ b/OpenRA.Mods.RA/Buildings/Building.cs
@@ -13,6 +13,7 @@ using System.Collections.Generic;
using System.Linq;
using OpenRA.Primitives;
using OpenRA.Traits;
+using OpenRA.Mods.Common;
using OpenRA.Mods.RA.Render;
namespace OpenRA.Mods.RA.Buildings
diff --git a/OpenRA.Mods.RA/LeavesHusk.cs b/OpenRA.Mods.RA/LeavesHusk.cs
index a21b494a9b..ae9a13ba57 100644
--- a/OpenRA.Mods.RA/LeavesHusk.cs
+++ b/OpenRA.Mods.RA/LeavesHusk.cs
@@ -9,6 +9,7 @@
#endregion
using System.Linq;
+using OpenRA.Mods.Common;
using OpenRA.Mods.RA.Move;
using OpenRA.Primitives;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
index 3c37b073ca..d55a0331c7 100644
--- a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
+++ b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
@@ -203,7 +203,6 @@
-
@@ -234,7 +233,6 @@
-
@@ -318,7 +316,6 @@
-
@@ -401,7 +398,6 @@
-
diff --git a/OpenRA.Mods.RA/Scripting/Global/MapGlobal.cs b/OpenRA.Mods.RA/Scripting/Global/MapGlobal.cs
index 54cbf1776f..3fe79db0e2 100644
--- a/OpenRA.Mods.RA/Scripting/Global/MapGlobal.cs
+++ b/OpenRA.Mods.RA/Scripting/Global/MapGlobal.cs
@@ -11,6 +11,7 @@
using System;
using System.Linq;
using Eluant;
+using OpenRA.Mods.Common;
using OpenRA.Scripting;
namespace OpenRA.Mods.RA.Scripting
diff --git a/OpenRA.Mods.RA/Scripting/LuaScript.cs b/OpenRA.Mods.RA/Scripting/LuaScript.cs
index 192001913e..9a3b8bba15 100644
--- a/OpenRA.Mods.RA/Scripting/LuaScript.cs
+++ b/OpenRA.Mods.RA/Scripting/LuaScript.cs
@@ -10,6 +10,7 @@
using System;
using OpenRA.Graphics;
+using OpenRA.Mods.Common;
using OpenRA.Scripting;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs b/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs
index 50027f9cc6..67f67140a1 100644
--- a/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs
+++ b/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs
@@ -17,6 +17,7 @@ using OpenRA.Network;
using OpenRA.Server;
using S = OpenRA.Server.Server;
using OpenRA.Mods.Common.Server;
+using OpenRA.Mods.Common;
namespace OpenRA.Mods.RA.Server
{
diff --git a/OpenRA.Mods.RA/ServerTraits/LobbySettingsNotification.cs b/OpenRA.Mods.RA/ServerTraits/LobbySettingsNotification.cs
index 0cf68370c0..d77dbbfcd2 100644
--- a/OpenRA.Mods.RA/ServerTraits/LobbySettingsNotification.cs
+++ b/OpenRA.Mods.RA/ServerTraits/LobbySettingsNotification.cs
@@ -9,6 +9,7 @@
#endregion
using System.Linq;
+using OpenRA.Mods.Common;
using OpenRA.Network;
using OpenRA.Server;
diff --git a/OpenRA.Mods.RA/SpawnMPUnits.cs b/OpenRA.Mods.RA/SpawnMPUnits.cs
index 13dea80636..15c42a0eb9 100644
--- a/OpenRA.Mods.RA/SpawnMPUnits.cs
+++ b/OpenRA.Mods.RA/SpawnMPUnits.cs
@@ -11,6 +11,7 @@
using System;
using System.Linq;
using OpenRA.Graphics;
+using OpenRA.Mods.Common;
using OpenRA.Mods.RA.Move;
using OpenRA.Primitives;
using OpenRA.Traits;
diff --git a/OpenRA.Mods.RA/Widgets/Logic/LobbyLogic.cs b/OpenRA.Mods.RA/Widgets/Logic/LobbyLogic.cs
index 515f01b8bc..ed89c7cbc8 100644
--- a/OpenRA.Mods.RA/Widgets/Logic/LobbyLogic.cs
+++ b/OpenRA.Mods.RA/Widgets/Logic/LobbyLogic.cs
@@ -14,6 +14,7 @@ using System.Drawing;
using System.Linq;
using System.Threading;
using OpenRA.Graphics;
+using OpenRA.Mods.Common;
using OpenRA.Mods.Common.Widgets;
using OpenRA.Network;
using OpenRA.Traits;