Releases: FirstGearGames/FishNet
Releases · FirstGearGames/FishNet
1.3.4
- Fixed SyncList and SyncDictionary doubling initial values for clients under rare circumstances.
- Fixed Vector2Int and Vector3Int not deserializing properly.
1.3.2
- 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
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
- 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
- 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
- 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
- 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
- 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.
1.1.1
- Fixed prediction not working when a RPC/SyncType used the same type as prediction.
- Fixed data sometimes bundling into other ticks causing the transport to exceed MTU.
- Fixed PredictedRigidbody stalling.
- Added Warning to PredictedRigidbody inspector.
- Improved XML for FrameRate and MaximumClientMTU.
- Changed sealed ClientManager, ServerManager, TimeManager, Observermanager, NetworkObject, NetworkManager, NetworkObserver.
- Fixed IsNetworked not being set true for client spawns.
- Improved internally ServerManager.MaximumClientMTU.
- Changed channels count is now hard-coded at 2, for reliable and unreliable.
- Obsoleted GetChannelCount() from Transport. Will be removed 2022/06/01.
1.1.0
- Fluidity transport replaced with Tugboat.
- Tugboat now use GetTimeout() properly.
- Fixed objects being moved into incorrect scenes when stacking.
- Fixed fields not importing for class/struct types from other assemblies.
- Added Nullable serialization.
- Added Dictionary serialization.
- Added FrameRate to ClientManager.
- Fixed Null collections not serializing properly with automatic serializers.
- Added snapping to NetworkTransform.
- Improved Codegen is now 8x faster.
- Added NetworkBehaviour.ClearReplicateCache.
- Fixed RoundTripTime being slightly off.
- Fixed StackOverflow when trying to serialize a Type which had it's Type as a field.
- Changed SceneLoadData.ReplaceScenes is now an enum.
- Fixed Client callbacks not running when stopping server while running as host.
- Fixed IL2CPP compile error for nullables writer.
- Fixed NetworkTransform NaN.
- TimeManager -> AddNetworkLoops moved to Initialize method.
- Fixed Tugboat sometimes not stopping server properly when stopping server only while also acting as client.
- Fixed client callbacks not running when stopping server while running as host.
- TimeManager -> AddNetworkLoops moved to Initialize method.
- Fixed XML for a few methods.
- Fixed Color not deserializing properly.
- Added FISHNET scripting define for third party developers.
- Added OnStop/StartNetwork to NetworkBehaviour callbacks.
- Added RPCs can now be virtual.
- Added ObserverManager.
- Added NetworkObserver condition override options.
- Removed StartConnection(string) from Transport in favor of Transport.SetClientAddress.
- Added ClientManager.StartConnection(address), StartConnection(address, port).
- Fixed Headless builds throwing errors with autostart server.
- Added DisallowMultiple components to several manager scripts.
- Change Internally replicate collection is now a queue.
- Added ReadPermission.Exclude owner to SyncTypes.
- Fixed Custom serializers sometimes detecting a method as a custom serializer when it was not.