Skip to content

Commit b461ed1

Browse files
feat: report whether the session was hybrid in editor analytics
HybridSession is true when the session started with hybrid prefabs registered, so a hybrid session that spawned no hybrid instances is still identifiable.
1 parent d1bc02c commit b461ed1

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

‎com.unity.netcode.gameobjects/Editor/Analytics/NetcodeAnalytics.cs‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ internal struct NetworkSessionInfo
1818
public bool UsedCMBService;
1919
public string Transport;
2020
public NetworkConfig NetworkConfig;
21+
public bool HybridSession;
2122
public int NgoSpawnCount;
2223
public int HybridSpawnCount;
2324
}
@@ -125,6 +126,9 @@ internal override void SessionStopped(NetworkManager networkManager)
125126
{
126127
return;
127128
}
129+
#if UNIFIED_NETCODE
130+
recentSession.HybridSession = networkManager.NetworkConfig.Prefabs.HasGhostPrefabs;
131+
#endif
128132
recentSession.UsedCMBService = networkManager.CMBServiceConnection;
129133
var spawnManager = networkManager.SpawnManager;
130134
if (spawnManager != null)
@@ -228,6 +232,7 @@ private NetworkManagerAnalytics GetNetworkManagerAnalytics(NetworkSessionInfo ne
228232
NetworkTransport = networkSession.Transport,
229233
EnableSceneManagement = networkSession.NetworkConfig.EnableSceneManagement,
230234
TickRate = (int)networkSession.NetworkConfig.TickRate,
235+
HybridSession = networkSession.HybridSession,
231236
NgoSpawnCount = networkSession.NgoSpawnCount,
232237
HybridSpawnCount = networkSession.HybridSpawnCount,
233238
};

‎com.unity.netcode.gameobjects/Editor/Analytics/NetworkManagerAnalytics.cs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ internal struct NetworkManagerAnalytics : IAnalytic.IData, IEquatable<NetworkMan
1717
public string NetworkTransport;
1818
public bool EnableSceneManagement;
1919
public int TickRate;
20+
public bool HybridSession;
2021
public int NgoSpawnCount;
2122
public int HybridSpawnCount;
2223
public override string ToString()
@@ -30,6 +31,7 @@ public override string ToString()
3031
message.AppendLine($"{nameof(NetworkTransport)}: {NetworkTransport}");
3132
message.AppendLine($"{nameof(EnableSceneManagement)}: {EnableSceneManagement}");
3233
message.AppendLine($"{nameof(TickRate)}: {TickRate}");
34+
message.AppendLine($"{nameof(HybridSession)}: {HybridSession}");
3335
message.AppendLine($"{nameof(NgoSpawnCount)}: {NgoSpawnCount}");
3436
message.AppendLine($"{nameof(HybridSpawnCount)}: {HybridSpawnCount}");
3537
return message.ToString();
@@ -44,7 +46,7 @@ public bool Equals(NetworkManagerAnalytics other)
4446
return IsDistributedAuthority == other.IsDistributedAuthority && WasServer == other.WasServer && WasClient == other.WasClient
4547
&& UsedCMBService == other.UsedCMBService && IsUsingMultiplayerSDK == other.IsUsingMultiplayerSDK
4648
&& EnableSceneManagement == other.EnableSceneManagement && TickRate == other.TickRate
47-
&& NgoSpawnCount == other.NgoSpawnCount && HybridSpawnCount == other.HybridSpawnCount
49+
&& NgoSpawnCount == other.NgoSpawnCount && HybridSpawnCount == other.HybridSpawnCount && HybridSession == other.HybridSession
4850
&& NetworkTransport.Equals(other.NetworkTransport);
4951
}
5052
}

0 commit comments

Comments
 (0)