Skip to content

Releases: FirstGearGames/FishNet

1.4.2

Choose a tag to compare

@FirstGearGames FirstGearGames released this 23 Mar 21:10
  • Fixed scene objects network initializing before server was set as started.
  • Improved state change messages for local client and local server are more descriptive.
  • Fixed NetworkObject not being removed in time when as a child of another NetworkObject while also a scene object.

1.4.1

Choose a tag to compare

@FirstGearGames FirstGearGames released this 22 Mar 21:50
  • Added experimental NetworkManager.Incoming/OutgoingIterationOrder.
  • Improved NetworkAnimator performance marginally.
  • Improved NetworkBehaviours are now found even when disabled on prefabs.
  • Fixed delay in CSP replication when a client loses ownership upon disconnect, then reconnects regaining ownership.
  • Improved SceneManager now prevents MovedObjectsHolder from becoming the active scene.
  • Improved compression on some numeric types using IntVar.
  • Improved NetworkObject initialization speed and made changes in preperation of nested NetworkObjects.
  • Improved several debug messages.
  • Fixed NetworkTransform sometimes incorrectly extrapolating slightly when using exceptionally low tick rates.
  • Improved CharacterController Prediction example now disables CharacterController for non-owners.
  • Improved spawn rotation now sends uncompressed to prevent initial alignment problems.
  • Improved all files have proper line endings.
  • Removed non-functional ServerBindAddress from Tugboat.
  • Changed ConcurrentQueues to Queues in Tugboat.
  • Fixed Tugboat polling order which would sometimes cause clients to send packets before being confirmed as connected.
  • Added Multipass, a transport that allows a server to run multiple transports at once.
  • Improved codegen to throw when attempting to create generic RPCs.
  • Fixed codegen error when implementing a generic field within a generic class that inherits NetworkBehaviour.
  • Improved exposed 'force' parameter in SyncList.Set.
  • Improved NetworkObserver no longer destroys itself with no conditions while using Ignore Manager. This is to allow global visibility.
  • Added SyncHashSet.
  • Improved unreliable packets by reducing bandwidth an additional 2 bytes.
  • Fixed NetworkAnimatorEditor possible null reference exception while the component was selected in the inspector, and while setting the animator controller to null at runtime.
  • Changed client connections are no longer considered added to a scene if they own an object in that scene; clients must specifically be loaded into scenes now.
  • Added serialized field PlayerSpawner.AddToDefaultScene. While true the player will be added to the scene where the player prefab is instantiated only if there are no global scenes already.
  • Improved NetworkObject removed warning no longer displays on nested NetworkObjects while NetworkObject.IsNetworked is false.
  • Fixed missing object errors when server-host unloads a scene and unexpectedly destroyed object data is sent to client-host.
  • Improved NetworkBehaviours no longer add NetworkObjects to root at runtime.
  • Added SyncList.Dirty(index). This allows users to mark a SyncList index dirty such as if they are changing properties within a reference type on that index.
  • Improved ListCache.AddValues can now take ISet.
  • Improved Tugboat incoming handling speed slightly.
  • Improved ReadDictionary speed slightly.
  • Changed NetworkManager.RefreshDefaultPrefabs is now false by default.
  • Improved NetworkManager tries to refresh default prefabs in a more intelligent manner now.
  • Added TransportManager.GetTransport to better support Multipass.
  • Added several ServerObject.RebuildObservers overloads to support upcoming MatchCondition.
  • Fixed codegen not creating a deserializer for dictionaries when they were used in RPCs.

1.3.4

Choose a tag to compare

@FirstGearGames FirstGearGames released this 24 Feb 04:18
  • Fixed SyncList and SyncDictionary doubling initial values for clients under rare circumstances.
  • Fixed Vector2Int and Vector3Int not deserializing properly.

1.3.2

Choose a tag to compare

@FirstGearGames FirstGearGames released this 20 Feb 20:34
  • Fixed SyncDictionary/SyncList clearing when client host would disconnect but server would remain running.
  • Removed unnused InitialState from ComponentStateSync.
  • Fixed SyncDictionary and SyncList adding double entries as host.
  • Fixed serializing null GameObjects causing read error on clients.
  • Improved ServerManager now errors when a third party transport provides an invalid clientId.

1.3.1

Choose a tag to compare

@FirstGearGames FirstGearGames released this 18 Feb 18:16

If coming from Fish-Networking 1.2.0.Nightly.0 or lower and NOT updating from the asset store delete your FishNet folder first.

  • Improved MirrorUpgrade tool to support Mirror57x+.
  • Improved objectIds are randomized in release builds.
  • (Pro) Added Yak transport, an offline transport which doesn't create sockets.
  • (Pro) Added automatic build code stripping.
  • Fixed SceneManager not clearing values when the server would disconnect.
  • Improved several logging and codegen messages.
  • Fixed clientId and RPCLinks not working properly after exceeding 32,767 concurrent connections or spawned objects.
  • Added Configuration window under Fish-Networking menu.
  • Added additional IL2CPP support for older Android devices.
  • Improved PredictedRigidbody.
  • Changed RigidbodyPrediction default prediction ratio to 0f.
  • Added PredictedRigidbody2D.
  • Fixed scene objects being disabled on clients with NetworkObject.IsNetworked unchecked.
  • Fixed SceneManager unloading scenes that were in scenes to be loaded, while using SceneLoadData.ReplaceOption.
  • Fixed incorrect parsing when sending multiple split packets in the same tick, one immediately after the other.
  • Added RPC overloading support.
  • Fixed ServerManager not sending Id to owner with ShareIds off.
  • Changed NetworkTransform send checks from OnTick to OnPostTick.
  • Improved Pro tools now only show locked message if user does not have Pro.
  • Fixed NetworkTransform in rare cases not completing a rotation with extremely low tick rates.
  • Improved NetworkTransform movement by turning on a feature that wasn't supposed to be turned off.
  • Improved Physics simulation mode and times revert to user settings on exit/stop play.
  • Improved codegen warns against directly accessing SyncVars which are being inherited from different assemblies.
  • Fixed broadcasts no longer warn when nothing is registered to a broadcast.
  • Fixed Client/ServerAttribute creating IL errors when used on a static method in a class that inherited NetworkBehaviour.
  • Added Manually Refresh Default Prefabs button to NetworkManager inspector.
  • Fixed Tugboat client timeout sometimes not working in editor.
  • Fixed scene objects sometimes not spawning when using Enter Play Mode Options with Reload Domain unchecked, and Reload Scene checked.
  • Fixed SyncType values not resetting on scene objects when server or client were stopped, while also not exiting play mode.
  • Improved TimeManager.TicksToTime to now take an optional boolean for using LocalTick or Tick.
  • Added TimeManager.TicksToTimeDouble methods.
  • Removed old files.
  • Fixed ClientAttribute.RequireOwnership not working properly.
  • Added more constructors to SceneLoadData.
  • Added RunLocally field to all RPC attributes. This allows the logic to run on the caller as well send the RPC.
  • Improved disabled socket timeout when acting as host.
  • Added TimeManager.SetTickRate to allow setting TickRate at runtime. This change must be synchronized manually.
  • Improved when server frame rate is default value(9999) it changes to tick rate.
  • Removed ServerManager.MaximumClientMTU. This feature will be greatly improved upon over the next release.

1.2.0

Choose a tag to compare

@FirstGearGames FirstGearGames released this 26 Jan 02:14
  • Added ComponentStateSync to examples. This new SyncType uses the custom SyncType feature to synchronize components enabled/disabled states.
  • Improved DefaultPrefabObjects compatibility over cloned projects. These changes should alleviate prefab mismatch errors.
  • Improved NetworkTransform. It now has considerably better replication and can withstand harsh network conditions much better as well.
  • Added NetworkTransform Pro; available to supporters. This unlocks parent synchronization and extrapolation.
  • Added NetworkAnimator Pro; available to supporters. This unlocks choosing which parameters to synchronize.
  • Added Collider Rollback/Lag Compensation Pro; available to supporters.
  • Added TimeManager.TickPercent, to know how far into the next tick the client or server is.
  • Fixed HUD example not allowing Server socket to be toggled after server failed to initialize due to the port being unavailable.
  • Improved ping abuse checks no longer apply when running server as editor.
  • Improved codegen now errors when using a SyncObject type without the proper attribute.
  • Improved missing sceneId error message to be more descriptive.
  • Fixed codegen errors when a synchronizing type was in another assembly and inherited from NetworkBehaviour.
  • Changed IsOwner no longer returns true in Update before client callbacks when running as host.
  • Improved (removed) allocations in NetworkTransform.
  • Improved (removed) allocations in Reader.
  • Improved (removed) allocations in Tugboat.
  • Improved ByteArrayPool for less resize chances.
  • Changed ByteArrayPool useConcurrent option is now gone.
  • Fixed Unity stripping needed code from Android builds.
  • Added NetworkAnimator.SendAll, which force sends the entire animator state and all current values.
  • Improved XML on PlayerSpawner.
  • Added ClientManager.OnAuthenticated.
  • Added more verbose state changes for server and client connections.
  • Added Writer now allows users to send null NetworkBehaviours.
  • Changed NetworkObjects.NetworkBehaviours now includes disabled NetworkBehaviours.

1.1.5

Choose a tag to compare

@FirstGearGames FirstGearGames released this 14 Jan 16:09
  • Added NetworkManager.RefreshDefaultPrefabs to improve multiple-editor support.
  • Fixed SyncList/SyncDictionary client hooks initially calling twice when values were set using OnStartServer.
  • Improved several parts of XML (thanks Expostech).
  • Fixed TransportManager.IterateOutgoing sometimes throwing collection modified.
  • Added host now hides renderers when host-client is no longer an observer.
  • Fixed ObserverManager sometimes not initializing added conditions.
  • Improved how ObjectIds are assigned.
  • Improved error message text in several areas.
  • Fixed NetworkObjects sometimes not clearing observers in time.
  • Improved codegen by warning against generic RPC parameters.
  • Fixed harmless null NetworkObject warning when sometimes trying to despawn as host.
  • Improved connection.FirstObject now works for other client objects as well.
  • Added ClientManager.Clients, a collection that contains all clientIds and their objects. This feature requires ServerManager.ShareIds to be enabled.
  • Changed default logging type from Off to Warning for Server and Client attribute.
  • Added IntCache to ListCaches.
  • Improved ServerManager now tries to find Authenticator if missing on object.
  • Improved Tugboat ensuring data sends out to clients before disconnecting them when applicable.
  • Fixed NetworkAnimator incorrectly writing int values.
  • Added smoothing to transform prediction example (thanks milk7874).
  • Added smoothing to CharacterController prediction example (thanks milk7874).
  • Fixed an incorrect define in LoggingConfiguration.
  • Improved timing when clients had poor connections.

1.1.4

Choose a tag to compare

@FirstGearGames FirstGearGames released this 06 Jan 16:39
  • Fixed client timing taking too long to correct when client would lose connection for several seconds.
  • Fixed TimeManager not caching and clearing client tick data when server was stopped/started.

1.1.3

Choose a tag to compare

@FirstGearGames FirstGearGames released this 06 Jan 00:16
  • Fixed Tugboat ServerSocket not obeying polltime variable causing increased CPU usage.
  • Fixed NetworkAnimator throwing when an animator was not present.
  • Improved SyncListOperation XML.
  • Changed server callbacks now occur when setting SyncType values within OnStartServer.

1.1.2

Choose a tag to compare

@FirstGearGames FirstGearGames released this 04 Jan 15:50
  • Fixed ObjectIds in rare cases not being assigned correctly when stopping server/client multiple times without restarting the application.
  • Improved context for several RPC related warnings.
  • Added NetworkTransform classic option to improve smoothing until NetworkTransform is finalized.
  • Added AutoStartType option to NetworkHudCanvas.
  • Improved when OnClientLoadedStartScenes is invoked. Start scenes loaded confirmation now goes through clients rather than invoking immediately when there are no global scenes.
  • Added more debug outputs for when clients are kicked.
  • Added Remove Defines to upgrade tool.
  • Fixed upgrade tool throwing errors when Mirror was imported due to IReadOnlyCollection.
  • Reverted NetworkTransform to 1.1.1 release so that it is stable until the new one is complete.
  • Changed internally from obsoleted methods.
  • Fixed disconnects related to the transport sending large packets.
  • Fixed Unity serializing a property causing NRE when using some NetworkBehaviour.QOL properties.
  • Improved Tugboat now sends on the main thread so throws are not hidden.
  • Improved Authenticator example scene by removing missing script reference.
  • Obsoleted OwnerIsValid, OwnerIsActive in favor of Owner.IsValid, Owner.IsActive. Will be removed on 2022/06/01.
  • Fixed RpcLinks clashing with prediction RPCs, resulting in reader errors.
  • Added DebugManager; mostly for internal use but is available for everyone.