2.1.1
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Additional documentation and release notes are available at Multiplayer Documentation.
[2.1.1] - 2024-10-18
Added
- Added ability to edit the
NetworkConfig.AutoSpawnPlayerPrefabClientSide
within the inspector view. (#3097) - Added
IContactEventHandlerWithInfo
that derives fromIContactEventHandler
that can be updated per frame to provideContactEventHandlerInfo
information to theRigidbodyContactEventManager
when processing collisions. (#3094)ContactEventHandlerInfo.ProvideNonRigidBodyContactEvents
: When set to true, non-Rigidbody
collisions with the registeredRigidbody
will generate contact event notifications. (#3094)ContactEventHandlerInfo.HasContactEventPriority
: When set to true, theRigidbody
will be prioritized as the instance that generates the event if theRigidbody
colliding does not have priority. (#3094)
- Added a static
NetworkManager.OnInstantiated
event notification to be able to track when a newNetworkManager
instance has been instantiated. (#3088) - Added a static
NetworkManager.OnDestroying
event notification to be able to track when an existingNetworkManager
instance is being destroyed. (#3088)
Fixed
- Fixed issue where
NetworkPrefabProcessor
would not mark the prefab list as dirty and prevent saving theDefaultNetworkPrefabs
asset when only imports or only deletes were detected.(#3103) - Fixed an issue where nested
NetworkTransform
components in owner authoritative mode cleared their initial settings on the server, causing improper synchronization. (#3099) - Fixed issue with service not getting synchronized with in-scene placed
NetworkObject
instances when a session owner starts aSceneEventType.Load
event. (#3096) - Fixed issue with the in-scene network prefab instance update menu tool where it was not properly updating scenes when invoked on the root prefab instance. (#3092)
- Fixed an issue where newly synchronizing clients would always receive current
NetworkVariable
values, potentially causing issues with collections if there were pending updates. Now, pending state updates serialize previous values to avoid duplicates on new clients. (#3081) - Fixed issue where changing ownership would mark every
NetworkVariable
dirty. Now, it will only mark anyNetworkVariable
with owner read permissions as dirty and will send/flush any pending updates to all clients prior to sending the change in ownership message. (#3081) - Fixed an issue where transferring ownership of
NetworkVariable
collections didn't update the new owner’s previous value, causing the last added value to be detected as a change during additions or removals. (#3081) - Fixed issue where a client (or server) with no write permissions for a
NetworkVariable
using a standard .NET collection type could still modify the collection which could cause various issues depending upon the modification and collection type. (#3081) - Fixed issue where applying the position and/or rotation to the
NetworkManager.ConnectionApprovalResponse
when connection approval and auto-spawn player prefab were enabled would not apply the position and/or rotation when the player prefab was instantiated. (#3078) - Fixed issue where
NetworkObject.SpawnWithObservers
was not being honored when spawning the player prefab. (#3077) - Fixed issue with the client count not being correct on the host or server side when a client disconnects itself from a session. (#3075)
Changed
- Changed
NetworkConfig.AutoSpawnPlayerPrefabClientSide
is no longer automatically set when startingNetworkManager
. (#3097) - Updated
NetworkVariableDeltaMessage
so the server now forwards delta state updates from clients immediately, instead of waiting until the end of the frame or the next network tick. (#3081)