Skip to content

Commit 6280f0f

Browse files
committed
Small fixes
1 parent 80b2353 commit 6280f0f

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

com.unity.netcode.gameobjects/Runtime/Core/NetworkObject.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3324,12 +3324,23 @@ internal static NetworkObject Deserialize(in SerializedObject serializedObject,
33243324
{
33253325
var endOfSynchronizationData = reader.Position + serializedObject.SynchronizationDataSize;
33263326

3327+
if (serializedObject.NetworkObjectId == default)
3328+
{
3329+
if (networkManager.LogLevel <= LogLevel.Error)
3330+
{
3331+
NetworkLog.LogErrorServer($"[{nameof(GlobalObjectIdHash)}={serializedObject.Hash}] Received spawn request with invalid {nameof(NetworkObjectId)} {serializedObject.NetworkObjectId}. This should not happen!");
3332+
}
3333+
3334+
reader.Seek(endOfSynchronizationData);
3335+
return null;
3336+
}
3337+
33273338
// Do the SpawnManager parts of the object spawn
33283339
var succeeded = networkManager.SpawnManager.NonAuthorityLocalSpawn(in serializedObject, out var networkObject, reader, serializedObject.DestroyWithScene);
33293340

33303341
// Process any deferred messages once the object is 100% finished spawning
33313342
// Ensure this is done whether the spawn succeeds or fails
3332-
networkManager.DeferredMessageManager.ProcessTriggers(IDeferredNetworkMessageManager.TriggerType.OnSpawn, networkObject.NetworkObjectId);
3343+
networkManager.DeferredMessageManager.ProcessTriggers(IDeferredNetworkMessageManager.TriggerType.OnSpawn, serializedObject.NetworkObjectId);
33333344

33343345
// Ensure that the buffer is completely reset
33353346
if (reader.Position != endOfSynchronizationData)

com.unity.netcode.gameobjects/Runtime/Spawning/NetworkSpawnManager.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -896,7 +896,7 @@ internal NetworkObject GetNetworkObjectToSpawn(uint globalObjectIdHash, ulong ow
896896
{
897897
if (NetworkLog.CurrentLogLevel <= LogLevel.Error)
898898
{
899-
NetworkLog.LogError($"Failed to create object locally. [{nameof(globalObjectIdHash)}={globalObjectIdHash}]. {nameof(NetworkPrefab)} could not be found. Is the prefab registered with {NetworkManager.name}?");
899+
NetworkLog.LogErrorServer($"[{nameof(globalObjectIdHash)}={globalObjectIdHash}] Failed to create object locally. {nameof(NetworkPrefab)} could not be found. Is the prefab registered with {NetworkManager.name}?");
900900
}
901901
return null;
902902
}
@@ -1199,7 +1199,7 @@ internal bool NonAuthorityLocalSpawn(in NetworkObject.SerializedObject serialize
11991199
{
12001200
if (NetworkManager.LogLevel <= LogLevel.Error)
12011201
{
1202-
NetworkLog.LogWarning($"Trying to spawn a {nameof(NetworkObject)} with a {nameof(NetworkObject.NetworkObjectId)} of {serializedObject.NetworkObjectId} but an object with that id already in the spawned list!");
1202+
NetworkLog.LogWarning($"Trying to spawn a {nameof(NetworkObject)} with a {nameof(NetworkObject.NetworkObjectId)} of {serializedObject.NetworkObjectId} but an object with that id is already in the spawned list. This should not happen!");
12031203
}
12041204
networkObject = null;
12051205
return false;
@@ -1219,7 +1219,7 @@ internal bool NonAuthorityLocalSpawn(in NetworkObject.SerializedObject serialize
12191219
{
12201220
if (NetworkManager.LogLevel <= LogLevel.Normal)
12211221
{
1222-
NetworkLog.LogError($"Failed to spawn {nameof(NetworkObject)} for Hash {serializedObject.Hash}.");
1222+
NetworkLog.LogError($"[{nameof(NetworkObject.GlobalObjectIdHash)}={serializedObject.Hash}] Failed to spawn {nameof(NetworkObject)}!");
12231223
}
12241224

12251225
return false;
@@ -1271,7 +1271,7 @@ internal bool NonAuthorityLocalSpawn(in NetworkObject.SerializedObject serialize
12711271
var succeeded = SpawnNetworkObjectLocallyCommon(networkObject, serializedObject.NetworkObjectId, serializedObject.IsSceneObject, serializedObject.IsPlayerObject, serializedObject.OwnerClientId, destroyWithScene);
12721272
if (!succeeded)
12731273
{
1274-
Debug.LogError($"Failed to spawn {nameof(NetworkObject)} for Hash {serializedObject.Hash}.");
1274+
// Don't need to log here as SpawnNetworkObjectLocallyCommon should log the specific error
12751275
return false;
12761276
}
12771277

0 commit comments

Comments
 (0)