Index: /binary-improvements/7dtd-server-fixes/src/AllocsLogFunctions.cs
===================================================================
--- /binary-improvements/7dtd-server-fixes/src/AllocsLogFunctions.cs	(revision 158)
+++ /binary-improvements/7dtd-server-fixes/src/AllocsLogFunctions.cs	(revision 159)
@@ -29,5 +29,5 @@
 				);
 
-				PersistentContainer.Instance.Players[steamId].SetOnline(ci);
+				PersistentContainer.Instance.Players [steamId].SetOnline (ci);
 				PersistentData.PersistentContainer.Instance.Save ();
 			} catch (Exception e) {
@@ -36,9 +36,10 @@
 		}
 
-		public static void PlayerDisconnected (GameManager manager, int _clientId) {
+		public static void PlayerDisconnected (ConnectionManager manager, int _clientId, bool _bShutdown)
+		{
 			try {
-				Player p = PersistentContainer.Instance.Players.GetPlayerByClientId(_clientId);
+				Player p = PersistentContainer.Instance.Players.GetPlayerByClientId (_clientId);
 				if (p != null) {
-					p.SetOffline();
+					p.SetOffline ();
 				}
 				PersistentData.PersistentContainer.Instance.Save ();
Index: /binary-improvements/7dtd-server-fixes/src/PersistentData/Players.cs
===================================================================
--- /binary-improvements/7dtd-server-fixes/src/PersistentData/Players.cs	(revision 158)
+++ /binary-improvements/7dtd-server-fixes/src/PersistentData/Players.cs	(revision 159)
@@ -38,5 +38,5 @@
 		{
 			foreach (Player p in players.Values) {
-				if (p.ClientInfo.clientId == _clientid) {
+				if (p.ClientInfo != null && p.ClientInfo.clientId == _clientid) {
 					return p;
 				}
Index: /binary-improvements/assembly-patcher/Main.cs
===================================================================
--- /binary-improvements/assembly-patcher/Main.cs	(revision 158)
+++ /binary-improvements/assembly-patcher/Main.cs	(revision 159)
@@ -64,5 +64,6 @@
 			TypeDefinition type = module.GetType ("GameManager");
 			addHook (type, "RequestToSpawnPlayer", true, 5, true, typeof(AllocsFixes.AllocsLogFunctions).GetMethod ("RequestToSpawnPlayer"));
-			addHook (type, "PlayerDisconnected", true, 1, false, typeof(AllocsFixes.AllocsLogFunctions).GetMethod ("PlayerDisconnected"));
+			type = module.GetType ("ConnectionManager");
+			addHook (type, "RemovePlayer", true, 2, false, typeof(AllocsFixes.AllocsLogFunctions).GetMethod ("PlayerDisconnected"));
 		}
 
Index: /binary-improvements/bin/Release/7dtd-server-fixes_version.txt
===================================================================
--- /binary-improvements/bin/Release/7dtd-server-fixes_version.txt	(revision 158)
+++ /binary-improvements/bin/Release/7dtd-server-fixes_version.txt	(revision 159)
@@ -1,1 +1,1 @@
-Version:       0.91.5359.24216
+Version:       0.91.5359.26222
