This page is a work in progress and could be pending updates.

SDK & Release Notes

Getting The Fusion SDK

Nightly Builds

Version Release Date Download
0.7.0 Beta Sep 17, 2021 Fusion SDK 0.7.0 Beta Nightly Build 292 Release Notes

Back To Top

Requirements

  • Unity 2020.3 or above;
  • Asset Serialization HAS to be set to text (Project Settings > Editor > Asset Serialization, Mode = Force Text).
  • Mono.Cecil (the com.unity.nuget.mono-cecil package can be added manually via the package manager if it is missing from the project).

Back To Top

Supported Platforms

  • Microsoft Windows
  • macOS
  • Android (including Quest)
  • iOS
  • Linux

During the Beta cycle support for the following platforms wil be added:

  • Nintendo Switch
  • Xbox One
  • Xbox Series X
  • PS4
  • PS5

Back To Top

SDK Contents

Back To Top

Release Notes

Back To Top

0.7.0

Beta Nightly

Build 292 (Sep 17, 2021)

Bug Fixes

  • Fixed: IL error in [Networked] properties returning NetworkBehaviours

Back To Top
Back To "Release Notes"

Build 291 (Sep 15, 2021)

Changes

  • LagCompensatedHit.Object is deprecated and renamed to GameObject, now also having a more descriptive documentation

Back To Top
Back To "Release Notes"

Build 290 (Sep 13, 2021)

What's New

  • [NetworkSerializeMethod] and [NetworkDeserializeMethod] attributes. Together they can make any type Fusion-serializable (usable in [Networked] properties and in Rpcs). Expected signatures, for type T, are [NetworkSerializeMethod(MaxSize = <MaxByteSize>)] public static int <MethodName>(NetworkRunner runner, T obj, byte* data) (returns number of bytes written) and [NetworkDeserializeMethod] public static int <MethodName>(NetworkRunner, byte* data, ref T result) (returns number of bytes read). There's also an alternative signature supported, which "wraps" T with an existing INetworkStruct type (S): [NetworkSerializeMethod] public static S <MethodName>(NetworkRunner runner, T obj) and [NetworkDeserializeMethod] public static T <MethodName>(NetworkRunner runner, S wrapper) or [NetworkDeserializeMethod] public static void <MethodName>(NetworkRunner runner, S wrapper, ref T result)

Bug Fixes

  • Fixed: NDS in SharedMode with Empty Session Name

Back To Top
Back To "Release Notes"

Build 289 (Sep 09, 2021)

Bug Fixes

  • Fixed: Physics2D.simulateMode automatically set to Script mode at runtime, when NetworkProjectConfig PhysicsEngine is set to 2D
  • Fixed: Unexpected characters in Fusion.Editor.cs

Back To Top
Back To "Release Notes"

Build 288 (Sep 08, 2021)

Bug Fixes

  • Fixed: Inspector - NetworkObject multiple selection
  • Fixed: ILWeaver throwing an exception if multiple netstandard assemblies are referenced
  • Fixed: AssetDatabaseUtils compile for Unity 2021.2b

Back To Top
Back To "Release Notes"

Build 287 (Sep 07, 2021)

What's New

  • Tanknarok Demo link added to Fusion Hub Window
    Refactored styles in Fusion hub to a single GuiSkin and unified light and dark themes for easier future maintenance
  • Links to Fusion and Photon settings added to Fusion Hub Window

Bug Fixes

  • Fixed: Removed localization from Fusion Hub links (all were pointing to en-us versions)

Back To Top
Back To "Release Notes"

Build 286 (Sep 03, 2021)

Changes

  • Added GuiSkin option to NetworkDebugStartGUI which uses a GuiSkin asset for its defaults. While not meant to be used for production interfaces, this does allow for some customization

Bug Fixes

  • Fixed: NetworkDebugStart handling for Automatic with setting of Client should now work correctly in all cases (Multi-peer and Single-Peer)

Back To Top
Back To "Release Notes"

Build 285 (Sep 01, 2021)

Changes

  • NT/NRB/NCC Teleport changed to hold on interpolation To rather than From state, to be consistent with 'NoInterpolation' handling

Bug Fixes

  • Fixed: Hit normal being inverted in some configurations when performing lag-compensated raycasts against boxes
  • Fixed: NetworkDebugStartGUI null errors when editing text ilelds fixed

Back To Top
Back To "Release Notes"

Build 283 (Aug 31, 2021)

What's New

  • Shutdown button added to NetworkDebugStart and option to Hide GUI After Start
  • Option in NetworkDebugStart for showing a shutdown button
  • Shutdown handling and cleanup/reset to NetworkDebugStart and NetworkRunner
  • NetworkRunner Shutdown button added to component inspector at runtime
  • NetworkDebugStartGUI adeded current stage information label

Bug Fixes

  • Fixed: Execute Order Inspector window will correctly warn of OrderBefore/OrderAfter conflicts again
  • Fixed: DrawifAttribute was adding one vertical space to GUI for hidden elements
  • Fixed: Missing covert to local space in NRB in some edge cases
  • Fixed: NetworkDebugStartGUI handling of vertical aspect ratio screens, and extreme screen aspect ratios

Back To Top
Back To "Release Notes"

Build 282 (Aug 30, 2021)

Bug Fixes

  • Fixed: Issue with despawn in shared mode
  • Fixed: Bug in shared mode with interest management

Back To Top
Back To "Release Notes"

Build 280 (Aug 28, 2021)

Bug Fixes

  • Fixed: TempAlloc now handles allocations larger than managed allocator page size

Back To Top
Back To "Release Notes"

Build 279 (Aug 27, 2021)

What's New

  • Added 'Property Groups' functionality

Bug Fixes

  • Fixed: Issues with initial state of scene objects in shared mode
  • Fixed: State auth handling when receiving data in shared mode you have state auth over already
  • Fixed: Bug with NRB.SharedMode.Defaults init
  • Fixed: Issue with corrupted shared mode object state

Back To Top
Back To "Release Notes"

Build 276 (Aug 26, 2021)

What's New

  • Added ILocalPrefabCreated and IRemotePrefabCreated interfaces that can be used on NetworkBehaviour to get a callback _before_ Spawned is invoked to setup internal state on the behaviour

Changes

  • Simplified PlayerJoined/PlayerLeft callback to always happen during a tick instead of randomly before/after ticks

Bug Fixes

  • Fixed: Issue with remote prefabs not being created
  • Fixed: Issue with Defaults overriding received state for NRB/NT during first rollback

Back To Top
Back To "Release Notes"

Build 274 (Aug 25, 2021)
  • Fusion SDK version 0.7.0 released

Back To Top
Back To "Release Notes"

0.6.0

Beta Nightly

Build 273 (Aug 25, 2021)

What's New

  • Added changed state cache sharing for EC

Changes

  • Improved Allocator.Copy performance massively

Bug Fixes

  • Fixed: Memory leak on client when relasing SimulationInput instances
  • Fixed: NetworkBehaviour sub classes not calling base types' Defaults(bool,bool)
  • Fixed: SimulationInput.Buffer.CopySortedTo alloc
  • Fixed: Removed extra unnecessary state copy done in delta snapshots transformed mode by server

Back To Top
Back To "Release Notes"

Build 272 (Aug 25, 2021)

Breaking Changes

  • SimulationBehaviour.GetInput moved down to NetworkBehaviour, if you need to get input inside of a SimulationBehaviour use Object.Runner.TryGetInputForPlayer
  • Spawned() and Despawned() virtual methods moved down to NetworkBehaviour, not available on SimulationBehaviour anymore. If you need Spawned/Despawned callbacks on a SimulationBehaviour use the ISpawned and IDespawned callback interface
  • SimulationBehaviour.StateAuthorityChanged was removed, use the new IStateAuthorityChanged callback interface instead

What's New

  • Added support for connection token supplied via StartGameArgs.ConnectionToken. Not used in shared mode
  • Added StartGameArgs.CustomCallbackInterfaces to allow users to hook into our O(1) constant time callback lookup
  • Added NetworkRunner.GetInterfaceListNext and NetworkRunner.GetInterfaceListPrev to get prev/next of an interface simulation behaviour linked list
  • Added IsFirstTick and IsForward

Bug Fixes

  • Fixed: GetInterfaceListHead now uses the type parameter properly
  • Fixed: Cant use pointers outside of unsafe compiler error in NetworkObjectGuidDrawer
  • Fixed: Prefabs for remote objects are now properly spawned inside of a tick
  • Fixed: IsLastTick now has correct value during resimulations
  • Fixed: Scan for matching predicted spawned object now uses PredictionKey and PrefabType instead of only PredictionKey
  • Fixed: OnBeforeSpawned callback is now invoked for predicted spawns when they are successful
  • Fixed: IBeforeClientPredictionReset and IAfterClientPredictionReset are now called properly
  • Fixed: StateAuthorityChanged is now called properly in all cases
  • Fixed: Burst integration parameter call amount and order
  • Fixed: NetworkRigidBody now properly replicates IsKinematic == true to proxies
  • Fixed: NetworkRigidbody now respects and uses Space Local setting

Back To Top
Back To "Release Notes"

Build 271 (Aug 24, 2021)

What's New

  • QueryTriggerInteraction parameter for lag compensated raycasts (when including PhysX)

Bug Fixes

  • Fixed: Lag compensated API can also be used in shared mode (queries are local to client)
  • Fixed: Bug with invalid message sequence number assert check
  • Fixed: Same bit/byte copy issue on plugin code
  • Fixed: Issue with CloudCommunicator copying memory using bit length instead of byte length of buffer
  • Fixed: A rare memory leak related to connection token
  • Fixed: Incorrect Free order on native socket shutdown that could lead to rare crash
  • Fixed: Minor memory leak on net bit buffer stacks

Back To Top
Back To "Release Notes"

Build 268 (Aug 23, 2021)

What's New

  • Serialized Accuracy retains hash reference to user defined tags even if those tags are deleted in NetworkProjectConfig, and will use AccuracyDefaults.Default for their value until the tag is restored, or a different tag is selected for the Accuracy's global setting

Changes

  • Accuracy struct defaults to AccuracyDefaults.Default rather than AccuracyDefaults.Uncompressed

Back To Top
Back To "Release Notes"

Build 266 (Aug 20, 2021)

What's New

  • Fusion.CodeGen.Trigger asset that forces weaver to run if AssembliesToWeaver or Accuracy of the project config changes

Changes

  • Default prefab asset container changed to "Assets/Photon/Fusion/User/NetworkPrefabAssetContainer.asset"
  • Removed 'Recompile' button from AccuracyDefaults drawer. Will be replaced by auto re-weave when needed after changes to config

Back To Top
Back To "Release Notes"

Build 265 (Aug 19, 2021)

Breaking Changes

  • OnConnectionRequest callback now takes an additional byte[] token parameter

What's New

  • Added support for a 128 byte connection token
  • Legacy NetworkProjectConfig assets automatic conversion

Changes

  • NetworkRunner.Connect now accepts a byte[] token parameter
  • SocketThreadingMode no longer configurable

Back To Top
Back To "Release Notes"

Build 264 (Aug 19, 2021)

Breaking Changes

  • NetworkProjectConfig format and file extension have changed. If upgrading, select your NetworkProjectConfig asset and click Convert To The New Config Format button

What's New

  • ILWeaver suggest possible NetworkProjectConfig locations is the config is not found in the default location

Changes

  • ILWeaver no longer requires global asset text serialization

Removed

  • NetworkProjectConfigAsset.Instance.Config removed. Use NetworkProjectConfig.Global instead

Back To Top
Back To "Release Notes"

Build 263 (Aug 19, 2021)

Breaking Changes

  • Server/Host mode with Client Auth has been removed completely. Client authoritative games are only possible in shared mode from now on. Server/Host mode is always server authoritative
  • Physics Prediction has been removed in Shared Mode

What's New

  • Added Runner.Topology to easily query if you are running in Client/Server or Shared mode

Changes

  • PhysicsMode in NetworkProjectConfiguration is now called Server Physics Mode as it does not longer apply to Shared mode
  • ReplicationMode in NetworkProjectConfiguration now only has 'Delta Snapshots' and 'Eventual Consistency', ServerAuth prefixed and ClientAUth prefixed options are removed
  • Removed NetworkRunner.GetActiveSimulationBehaviours, use NetworkRunner.GetAllBehaviours instead
  • HitboxManager no longer runs on FUN if the runner is being shutdown

Bug Fixes

  • Fixed: Predicted spawns are now factored into RunnerVisibilityNode handling
  • Fixed: Possible NullReferenceException on Hitbox.OnDrawGizmos when the Runner is being shutdown and disposed

Back To Top
Back To "Release Notes"

Build 262 (Aug 18, 2021)

Bug Fixes

  • Fixed: Issue with predictively spawned objects being pre-emptively flagged as failure despite the correct data from server having arrived
  • Fixed: Made sure Despawn cant be called on an object which belongs to another runner

Back To Top
Back To "Release Notes"

Build 261 (Aug 18, 2021)

Bug Fixes

  • Fixed: 'Add NetworkObject' button on NetworkBehaviour's inspector now works with mutli-selection

Back To Top
Back To "Release Notes"

Build 260 (Aug 16, 2021)

What's New

  • FUSION_ODIN_EDITOR_ONLY define added, which disables advanced Odin serialization (Sirenix.Serialization). This define needs to be added to your Unity project in order to use Odin's Editor Only mode
  • Added NetworkObject.LastReceiveTick
  • Added Simulation Culling feature
  • Added layer masks to area of interest system

Changes

  • NetworkProjectConfig uses scene paths consistently now. However, to ensure backwards and Unity compatibility NetworkProjectConfig.TryGetSceneRef accepts both full scene paths and scene names
  • Renamed 'Player' config setting to 'Default Players' to better convey what it does
  • Removed 'send client input to server' configuration option for client auth mode
  • Renamed UseAreaOfInterest to UseInterestManagement in config

Bug Fixes

  • Fixed: PredictionKey does not end up in game state when running in client auth mode anymore
  • Fixed: Empty Room Name when starting Server
    Now, if no Room Name is specified, a Server peer will always create a Room with a random name
  • Fixed: NetworkDebugStart not adding the current scene to NetworkProjectConfig correctly
  • Fixed: Corrected error message about missing compiler define to show correct constant FUSION_BURST
  • Fixed: Issues with RPC forwarding in Shared Mode

Back To Top
Back To "Release Notes"

Build 259 (Aug 10, 2021)

What's New

  • Improved 'Lite' theme handling for inline-help and headers.
    Simplified inline-help skin to just use basic GUIStyles
    Added graphic source for gui styles/icons

Changes

  • HitOptions.DetailedHit is obsolete: lag-compensated queries now always compute detailed info

Bug Fixes

  • Fixed: An issue in the computation of the broad-phase volume of lag-compensated hitbox roots with position offset that could cause hitboxes to not be checked
  • Fixed: An issue in the computation of lag-compensated HitboxRoot bounds that could reduce the efficiency of the broad-phase data structure
  • Fixed: An issue in the lag-compensated ray-cast queries against sphere objects when the ray length was set to Mathf.Infinity, float.MaxValue or very large values, causing the hit point to be set at infinity
  • Fixed: Rpcs not being invoked for client authority objects
  • Fixed: Rpc with source=RpcSources.StateAuthority not being invokable in Shared mode
  • Fixed: Inspector handling with inline-help and component headers on Retina/hi-res type displays
    Changed header skins to use basic styles and single textures for simpiler reskinning.
    Saved make files for headers to project
    Added more header color/icon options
    Added Fusion styles to make eventual skinning/look changes later easier

Back To Top
Back To "Release Notes"

Build 258 (Aug 08, 2021)

Bug Fixes

  • Fixed: NetworkBehaviour "Missing NetworkObject" button now correctly adds NetworkObject to transform.root when clicked

Back To Top
Back To "Release Notes"

Build 257 (Aug 07, 2021)

Bug Fixes

  • Fixed: ILWeaver throwing an exception if an assembly is referenced more than once
  • Fixed: RunWeaver() force saves any changes to the NetworkProjectConfigAsset before weaving

Back To Top
Back To "Release Notes"

Build 256 (Aug 06, 2021)

What's New

  • Fusion/Run Weaver menu item. Can be run in case of Type Foo has not been weaved runtime error messages
  • Improvements in layout/help on the HitboxRoot component.
    Moved button UI code out of editor and into HitRoot class (trying to avoid editor scripts unless absolutely needed)

Bug Fixes

  • Fixed: Auto-BroadRange button on HitboxRoot handles Box collider types correctly now
  • Fixed: Auto-BroadRange button on HitboxRoot ignores scaling selectively, in agreement with Hitboxes handling of scaling and offset values

Back To Top
Back To "Release Notes"

Build 255 (Aug 05, 2021)

What's New

  • Added TickTimer.RemainingTime to get the remaining time in seconds
  • Inline-help support for inspector buttons using BehaviourButtonActionAttribute
  • XMLDocumentation added support for tooltip/summary handling for all member types (to allow inline buttons etc to make use of inline help/tooltips)
  • HitboxRoot.SetMinBoundingRadius method that resets the root BroadRadius to be the minimum bounding radius for the current hitboxes.
    The method can be triggered from a new button on the component editor and is automatically called if the root is initialized with a zeroed broad radius

Changes

  • FusionInstaller installs com.unity.nuget.mono-cecil instead of the outdated nuget.mono-cecil
  • If the config is not serialized in text mode, ILWeaver emits a warning

Bug Fixes

  • Fixed: Recompile button in AccuracyDefaults not recompiling everything in Unity 2021.1
  • Fixed: In case of Mono-Cecil being missed, Fusion.CodeGen emits a warnings instead of not compiling

Back To Top
Back To "Release Notes"

Build 254 (Aug 04, 2021)

What's New

  • Added Interpolator<T>ReaderDelegate to allow access to reading the interpolated data out
  • Added Interpolator<T>.InterpolationDelegate to allow you to override the interpolation delegate

Changes

  • Lag Compensated Hitbox and HitboxRoot active states are now decoupled from the GameObject/Behavior states and can be accessed with new get/set methods and properties

Bug Fixes

  • Fixed: An issue in the lag-compensated structure that could cause stack overflow when removing entries
  • Fixed: Several fixes for share mode scene objects

Back To Top
Back To "Release Notes"

0.5.0

Beta Nightly

Build 253 (Aug 03, 2021)

What's New

  • DestroyOrphaned - a way to destroy "non-existent" NOs
  • Support for advanced Odin serialization(such as interfaces) added. Use BehaviourSerializedOdin, SimulationBehaviourSerializedOdin, and NetworkBehaviourSerializedOdin as base classes for the equivalent of Odin's SerializedMonoBehaviour

Changes

  • NetworkSceneManager - abstract NetworkSceneManagerBase can now be extended and added to the runner prefab to implement custom scene loading logic

Bug Fixes

  • Fixed: Derived NetworkedBehaviours will show parent's private [Networked] values in their Networked Properties foldout. (Previously only protected/public values were shown)
  • Fixed: NetworkSceneManager reloading initial scene
  • Fixed: Scene baking for SimulationBehaviours not in NetworkObject hierarchy
  • Fixed: NetworkDebugStart DontDestroyOnLoad - the containing game object unparents itself with a warning
  • Fixed: An issue when a client joins while a scene switch is happening (multiple peers)
  • Fixed: If NetworkDebugStart is parented, move it to root in runtime; otherwise DontDestroyOnLoad won't work
  • Fixed: Map baking - orphaned SimulationBehaviours (i.e. ones without NetworkObjects up the hierarchy) are acceptable
  • Fixed: Removing game objects in multiple peer mode cleans up SharedInstanceUnitySceneRoot correctly

Back To Top
Back To "Release Notes"

Build 251 (Aug 02, 2021)

What's New

  • InterpolationDataSource.NoInterpolation as an option to disable Fusion handling interpolation for a NetworkBehaviour
  • Added quick setup of basic working 2D scene with menu 'GameObject>Fusion>Setup Basic Fusion Scene 2D'
  • Component header graphics reduced garbage and added more caching. Long component names now gracefully truncate words in order to fit the width of the inspector

Changes

  • HitboxManager is now automatically handled by Runner (config moved to NetworkProjectSettings). Instance accessible through Runner.LagCompensation
  • Improved client disconnect behaviour in case of a forcible shutdown (ALT-F4, etc.)
  • Fusion header graphics now display when using BehaviourOdin, NetworkBehaviourOdin and SimulationBehaviourOdin base classes
  • NRB and NRB2D now derive from NetworkRigidbodyBase class
  • Exception message when NetworkBehaviourWeavedAttribute is not found to a more meaningful one
  • SimulationBehaviour.Runner and SimulationBehaviour.Object is now marked as NonSerialized
  • ILWeaver has been moved to a separate assembly (Unity.Fusion.CodeGen) and is now using Unity's ILPostProcessor pipeline. As a result the weaver is now an order of magnitude faster and more reliable. Also, weaving errors are now treated as compile errors (can't be accidentally cleared with the Clear button). If NetworkProjectConfig is not stored in its default location, implement ILWeaverSettings.OverrideNetworkProjectConfigPath in Fusion.CodeGen.User.cs

Bug Fixes

  • Fixed: NetworkTransformAnchor treats a null parent and a parent which is the MultiPeer root scene object both as null. Fixes teleport hitch when reparenting an object which has the MultiPeer root as its parent the first time
  • Fixed: NetworkCharacterController now uses same Defaults() handling as NetworkTransform, which resolves a teleport from origin occurring on Spawn.
    Renamed SharedInstance to MultiPeer in a few places there were missed
  • Fixed: Spawning position issues related to Defaults() handling in NT/NRB/NCC classes.
    Changed Before/AfterAllTicks from explicit to implicit interface implementations
  • Fixed: Assembly resolve when building using IL2CPP and .NET 4.x on Unity 2021.1+
  • Fixed: Issue with ILWeaver trying to reference mscorelib when netstandard is being used
  • Fixed: ILWeaver referencing .NET core libraries in Unity 2021.1
  • Fixed: Added null checks inside DestroyRemotePrefab to catch cases where unity already destroyed an object but it's still exists in the network id lookup table
  • Fixed: Memory leak relating to un-sent and un-received packets when shutting down
  • Fixed: Memory leak in unity editor when using latency simulation
  • Fixed: Additional memory leaks
  • Fixed: NetworkRigidbody2D functionality restored
  • Fixed: Several issues with packet fragmentation and IPv6
  • Fixed: Issue with new Spawn<T> overload not finding NetworkObject reference properly
  • Fixed: FUSION_WEAVER_DEBUG with UnityEditor weaver compile error
  • Fixed: Unity has hard time parsing call stacks from exceptions logged in ILPP, split them into lines and log individually then
  • Fixed: NetworkObjects are no longer automatically set to DontDestroyOnLoad
  • Fixed: Several memory leaks

Back To Top
Back To "Release Notes"

Build 246 (Jul 27, 2021)

What's New

  • Added NetworkRunner.Spawn<T>(T prefab) where T : NetworkBehaviour as a complement to NetworkRunner.Spawn(NetworkObject prefab)
  • Added NetworkBehaviour.Interpolator<T>.TryGetValues

Back To Top
Back To "Release Notes"

Build 245 (Jul 23, 2021)

What's New

  • Double-clicking component header graphic now opens script for editing (same behaviour as the unity default script field)
  • Added support for interpolating user defined networked properties of type float/vector2/vector3/vector4/quaternion

Bug Fixes

  • Fixed: Importing new Fusion releases should now properly detect existing config files
  • Fixed: An issue in the lag compensated queries performed on the server/host when the state authority is not a client and sub-tick accuracy is set in the query options

Back To Top
Back To "Release Notes"

Build 244 (Jul 22, 2021)

Bug Fixes

  • Fixed: Config files should now be able to create correctly, even with completely missing/deleted/moved resource folders

Back To Top
Back To "Release Notes"

Build 243 (Jul 22, 2021)

Changes

  • SimulationBehaviour.Object and NetworkBehaviour.Object is now assigned for predicted spawned objects

Bug Fixes

  • Fixed: NetworkObject.IsProxy now checks if object exists also

Back To Top
Back To "Release Notes"

Build 242 (Jul 22, 2021)

What's New

  • Added NetworkObject.IsPredictedSpawn, Obsoleted NetworkObject.IsPredicted

Changes

  • StartGameArgs now allows you to provide an INetworkObjectPool at runtime to set the pool object to use dynamically
  • NetworkObjectPool is now a scriptable object instead of a mono behaviour to allow it to be hooked up in editor inspector
  • Second Despawned parameter "bool hasState" will now be true when running in EC mode, if hasState is true it means you can access the networked state of the object being destroyed
  • Despawned now takes NetworkRunner as first parameter so runner is always accessible during Despawn
  • NetworkObject StateAuthority/InputAuthoirty/IsSceneObject will no longer throw null ref exceptions for un-attached objects

Bug Fixes

  • Fixed: Removed bandwidth overhead for unused words in input delta compressor
  • Fixed: NetworkRunner.Despawn will now properly check for null object
  • Fixed: NetworkProjectConfig and PhotonConfig assets should not generate correctly when creating a new project

Back To Top
Back To "Release Notes"

Build 241 (Jul 21, 2021)

What's New

  • Added PlayerRef.PlayerId

Changes

  • NetworkObject.IsPredicted is no longer true after object has been confirmed by server
  • Predicted spawned objects now have access to the runner
  • Despawn now takes an optional allowPredicted parameter (defaults to false) which allows you to "despawn" predicted spawned objects on clients also

Back To Top
Back To "Release Notes"

Build 238 (Jul 20, 2021)

What's New

  • NetworkProjectConfig and PhotonAppSettings assets are now created if they do not exist
  • Added Inspector component graphic headers (replacement for default script field)
  • Added recompile button to AccuracyDefaults with warning when defaults are changed (a recompile is needed before running/building in order to reweave the new accuracy values)

Changes

  • Realtime Client Conn Timeout to 30secs
    This aims to prevent unwanted disconnects for long-running sessions
  • Removing NetworkProjectConfig.asset and PhotonAppSettings.asset from the SDK packages

Back To Top
Back To "Release Notes"

Build 236 (Jul 12, 2021)

Removed

  • Removed NetworkTransformParent. Has been replaced with NetworkTransformAnchor for syncing parenting

Bug Fixes

  • Fixed: Longs and ulongs [Networked] properties causing ILWeaver error

Back To Top
Back To "Release Notes"

Build 235 (Jul 10, 2021)

Bug Fixes

  • Fixed: NetworkBehaviour's inspector buttons for adding a missing NetworkObject will now allow undo, and should dirty correctly in all use cases

Back To Top
Back To "Release Notes"

Build 234 (Jul 09, 2021)

What's New

  • Runner.GameInfo
    This property exposes some Photon Cloud metadata like Room Name and current connected Region
  • RpcAttribute.TickAligned - if set to false the Rpc will be handled without waiting for a target's tick to catch up, if there are not any tick aligned Rpcs waiting (order is preserved)

Bug Fixes

  • Fixed: Longs and ulongs as Rpc parameters causing ILWeaver error
  • Fixed: Fusion windows should now remember their state when Unity is restarted

Back To Top
Back To "Release Notes"

Build 233 (Jul 08, 2021)

Bug Fixes

  • Fixed: ILWeaver error when deriving from NetworkTransformAnchor

Back To Top
Back To "Release Notes"

Build 232 (Jul 07, 2021)

Bug Fixes

  • Fixed: Transient despawned objects are now ignored on lag compensated queries

Back To Top
Back To "Release Notes"

Build 231 (Jul 06, 2021)

Bug Fixes

  • Fixed: FusionStats are now created last in NetworkDebugStart, and check to see if any active EventSystems exist. Fixes issues with 'multiple event systems' warnings spamming the logs

Back To Top
Back To "Release Notes"

Build 229 (Jul 02, 2021)

Changes

  • NetworkBehaviour.Defaults now take two parameters: afterSpawned and isLocalSpawn
  • Renamed AppIdRealtime to AppIdFusion in Photon App Settings scriptable object
  • Photon Realtime SDK to v4.1.6.3

Bug Fixes

  • Fixed: Issues with transform.position not being consistent in Spawned callback between server/client in server mode, and also not being consistent in client auth mode

Back To Top
Back To "Release Notes"

Build 228 (Jul 01, 2021)

Bug Fixes

  • Fixed: Issue with [Accuracy(0)] on Vector2/Vector3/Quaternion
  • Fixed: Bug with objects spawned by re-used player indices not showing up for other clients in shared mode
  • Fixed: Weaver issue with static fields on structs implementing INetworkStruct

Back To Top
Back To "Release Notes"

Build 227 (Jun 30, 2021)

Breaking Changes

  • Added ShutdownReason to OnShutdown Event
    You must modify any INetworkRunnerCallbacks to include the extra param on the OnShutdown callback

What's New

  • Added shortcuts for 'Rebuild Object Table' and 'Import Scenes From Build Settings' to the Fusion menu in Unity
  • Added AlwaysShowStats boolean setting on NetworkDebugStart
  • Added area of interest support for shared mode
  • Added transform parenting support to NetworkTransform/NetworkRigidbody/NetworkCharacterController
  • Added Teleport to NetworkRigidbody and NetworkCharacterController

Changes

  • Renamed NetworkAreaOfInterestBehaviour.PositionOffset to NetworkAreaOfInterestBehaviour.PositionWordOffset

Back To Top
Back To "Release Notes"

Build 226 (Jun 29, 2021)

What's New

  • Added NetworkRunner.RequestStateAuthority and NetworkRunner.ReleaseStateAuthority

Bug Fixes

  • Fixed: Object destruction when clients leave in shared mode

Back To Top
Back To "Release Notes"

Build 223 (Jun 25, 2021)

Bug Fixes

  • Fixed: "Could not load NetworkProjectConfigAsset" errors after importing package on some Unity versions

Back To Top
Back To "Release Notes"

Build 222 (Jun 24, 2021)

What's New

  • Added NetworkObject.RemoveInputAuthority and NetworkObject.RemoveStateAuthority

Bug Fixes

  • Fixed: Weaver will now longer throw an exception when Accuracy is specified with a double

Back To Top
Back To "Release Notes"

Build 221 (Jun 23, 2021)

Changes

  • Callback interfaces like ISceneLoaded, IPlayerJoined, IBeforeAllTicks, etc. will no longer be invoked on behaviours which are not enabled

Bug Fixes

  • Fixed: An issues in the Lag-Compensated system when adding the first HitboxRoot object to a Manager that started with no initial objects
  • Fixed: Issue with NetworkRigidbody throwing errors when physics mode is set to None

Back To Top
Back To "Release Notes"

Build 220 (Jun 22, 2021)

What's New

  • RaycastAll to lag compensated queries

Changes

  • NetworkRigidbody now automatically disabled the built in unity rigidbody interpolation, if NetworkRigidbody is used fusion takes care of all interpolation for that rigidbody
  • Changed order of SyncDragMass and InterpolationTarget in inspector for NetworkRigidbody
  • Networked Properties in inspector now use a default closed foldout, monitoring these values can cause performance issues in the editor with complex NetworkBehaviours

Bug Fixes

  • Fixed: SinglePlayer Mode
  • Fixed: IL2CPP memory alignment issue on android

Back To Top
Back To "Release Notes"

Build 218 (Jun 19, 2021)

Changes

  • Runtime and Baked info exposed in the NetworkObject inspector

Back To Top
Back To "Release Notes"

Build 217 (Jun 18, 2021)

What's New

  • Lag compensated query for past pos/rot of any specific hitbox (two overloads: based on tick, or on player reference view)

Changes

  • Improved documentation and ease of interpolation configuration options

Bug Fixes

  • Fixed: All issues with nested INetworkInput and INetworkStruct types
  • Fixed: Minor issue in interpolation time jitter delta calculation where a small amount of delta time would sometimes be discarded

Back To Top
Back To "Release Notes"

Build 216 (Jun 17, 2021)

What's New

  • Implemented new ingame stats

Changes

  • NetworkDebugStart Auto mode will never show menu. Use Manual or UserInterface settings to start clients

Bug Fixes

  • Fixed: MaxPlayers connected to a Dedicated Server
  • Fixed: NetworkDebugStart menu for StartClients and StartClient working again
  • Fixed: Bug where client side prediction time would get stuck in very high prediction offset in rare cases
  • Fixed: Bug where client side prediction time would get stuck in very high prediction offset in rare cases
  • Fixed: Assert bug in SmoothRandom constructor

Back To Top
Back To "Release Notes"

Build 215 (Jun 16, 2021)

Bug Fixes

  • Fixed: Issue with NetworkBehaviourUtils marked as private causing issues when weaving certain RPCs

Back To Top
Back To "Release Notes"

Build 214 (Jun 15, 2021)

What's New

  • Added NetworkRunner.GetAllBehaviours<T> API to get all active network/simulation behaviours of a certain type
  • IRunnerVisibilityRecognizedType can be added to Monobehaviours to flag them for inclusion in the RunnerVisibility system

Changes

  • Obsoleted GetActiveSimulationBehaviours for GetAllBehaviours

Bug Fixes

  • Fixed: SinglePlayer mode start

Back To Top
Back To "Release Notes"

Build 213 (Jun 14, 2021)

Bug Fixes

  • Fixed: Networked Properties UI added handling for [Neworked] pointer types

Back To Top
Back To "Release Notes"

Build 211 (Jun 11, 2021)

Bug Fixes

  • Fixed: Nanosockets for macOS
  • Fixed: Singleplayer game sdtart

Back To Top
Back To "Release Notes"

Build 208 (Jun 09, 2021)
  • Initial beta release

Changes

  • Cleared alpha changelog


Back To "Release Notes"

To Document Top