vis2k
27a22620db
breaking: virtual NetworkManager.OnClientDisconnect is now simply a user callback. users don't need to call base or StopClient anymore when overwriting.
2022-12-03 13:49:27 -05:00
vis2k
ff3039bdb4
breaking: fix: circular calls from Transport -> NetworkClient -> NetworkManager.OnClientDisconnected -> StopClient() -> NetworkClient.Disconnect() -> ...
...
NetworkManager.OnClientDisconnect now doesn't call NetworkClient.Disconnect anymore.
NetworkManager.StopClient() still calls NetworkManager.OnClientDisconnect for compatibility.
2022-12-03 13:49:27 -05:00
vis2k
3a7a5be152
fix : #3152 #3213 NetworkClient.AddTransportHandlers ensures they are only added once, never twice even if a community Transport forgets to call OnDisconnected
2022-12-03 13:36:53 -05:00
vis2k
ce9d52e8fd
fix : #3287 Telepathy NullReferenceException on client after Server was forcefully closed
2022-12-03 13:31:26 -05:00
vis2k
9da1786979
KcpTransport: expose conversion methods
2022-11-30 13:34:45 -05:00
vis2k
aeba5940bf
KcpClient: expose RawReceiveBuffer
2022-11-30 13:29:55 -05:00
vis2k
6938bd15e6
Tanks demo: add NetworkPingDisplay for latency tests
2022-11-30 13:16:31 -05:00
vis2k
f0aae71f16
kcp2k V1.22
2022-11-29 13:33:22 -05:00
MrGadget
563f6feea0
syntax
2022-11-29 06:36:57 -05:00
MrGadget
91c3439948
fix: MatchInterestManagement - Use TryGetValue in Update
2022-11-29 06:35:58 -05:00
MrGadget
904d44333e
MatchInterestManagement - naming consistency
2022-11-29 06:34:19 -05:00
MrGadget
c0908a2f58
fix: SceneInterestManagement - Use TryGetValue in Update
2022-11-29 06:33:33 -05:00
MrGadget
c70145d535
ServerCallback attributes added
2022-11-29 06:23:10 -05:00
MrGadget
94e315caca
TeamInterestManagement- syntax
2022-11-29 06:19:41 -05:00
MrGadget
12c83effbb
fix: SceneInterestManagement - use TryGetValue in OnDestroyed
2022-11-29 06:17:49 -05:00
MrGadget
f67aa64d59
fix: MatchInterestManagement - use TryGetValue in OnDestroyed
2022-11-29 06:16:53 -05:00
MrGadget
186702f810
feat: Add Mirror.Transports AsmDef ( #3282 )
...
- Keeps transports in their own assembly to users' own AsmDef's can reference them.
2022-11-28 12:12:51 +01:00
MrGadget
094b925797
fix: Fix vector3 long warnings ( #3281 )
...
* fix: Suppress Warnings in Vector3Long
* fix comment
* formatting
* Formatting
2022-11-28 12:11:44 +01:00
MrGadget
a86a115a30
Fix time as double unity 2019 ( #3279 )
...
* NetworkServer - TimeAsDouble compatibility for Unity 2019
* NetworkStatistics - TimeAsDouble compatibility for Unity 2019
* Simplified - rely on defines in NetworkTime
2022-11-27 07:35:05 -05:00
MrGadget
abd1c1689d
NetworkRoomManager - Removed OnRoomClientAddPlayerFailed virtual method
...
- Fixes #3168
- There is no good place to call that - use OnRoomClientDisconnect or OnRoomStopClient
2022-11-26 14:03:29 -05:00
MrGadget
71668c530f
Team and Match Interest Management Updates
...
- Fixes #3273 (removed erroneous evaluation in OnCheckObserver)
- NetworkTeam TeamId and Force Shown are now SyncVars for debugging
- Better naming of variables
2022-11-26 13:36:59 -05:00
vis2k
73b83c14cc
Merge remote-tracking branch 'origin/master'
2022-11-24 11:03:34 +01:00
vis2k
d100ecb4c4
kcp2k V1.21 [2022-11-24]
...
- high level refactor, part one.
- KcpPeer instead of KcpConnection, KcpClientConnection, KcpServerConnection
- RawSend/Receive can now easily be overwritten in KcpClient/Server.
for non-alloc, relays, etc.
2022-11-24 10:51:47 +01:00
MrGadget
51209096a3
Updated RigidbodyPhysics Example
2022-11-23 05:56:30 -05:00
MrGadget
8fc73b034b
Updated Examples Player Prefabs
...
Default NT Settings Updated
2022-11-23 05:21:23 -05:00
MrGadget
6c041dce22
Merge branch 'master' of https://github.com/vis2k/Mirror
2022-11-23 05:08:24 -05:00
MrGadget
bd88d665de
Updated Rigidbody Pysics Example
2022-11-23 05:08:10 -05:00
vis2k
e1a5f0300f
perf: kcp2k V1.20 [2022-11-22]
...
- perf: KcpClient receive allocation was removed entirely.
reduces Mirror benchmark client sided allocations from 4.9 KB / 1.7 KB (non-alloc) to 0B.
- fix: KcpConnection.Disconnect does not check socket.Connected anymore.
UDP sockets don't have a connection.
fixes Disconnects not being sent to clients in netcore.
- KcpConnection.SendReliable: added OnError instead of logs
2022-11-23 00:18:41 +01:00
vis2k
9c0814fa54
Tanks demo resaved
2022-11-22 12:04:47 +01:00
vis2k
cc170b2569
update script icon
2022-11-22 12:01:46 +01:00
vis2k
fcf148184e
fix: Unity 2019 Vector3Long semicolon error:
...
https://forum.unity.com/threads/mirror-open-source-networking-for-unity.425437/page-37#post-8592787
2022-11-17 18:41:24 +01:00
JesusLuvsYooh
ca33b91460
A define mistake, fixed Under 2021 support. ( #3276 )
...
There is no HashCode.Combine in this function, so 2021 define is not needed.
Removing the define brings back support for under Unity 2021's
2022-11-17 14:40:12 +01:00
JesusLuvsYooh
eaf16608ca
Support for c# versions under 9 (is not to ! is) ( #3275 )
2022-11-17 14:37:48 +01:00
vis2k
c750851ac4
[RequireComponent(typeof(NetworkTransform))] tags disabled to support both NTs
2022-11-13 18:27:37 +01:00
vis2k
9b39e31e8a
feature: perf: NetworkTransform V3 (Reliable)
2022-11-13 18:09:04 +01:00
vis2k
5f251f00ed
rename NetworkTransform V2 folder
2022-11-13 17:59:54 +01:00
vis2k
c4ca2734fa
NetworkServer.GetEntitySerializationForConnection renamed to SerializeForConnection (shorter)
2022-11-13 16:13:22 +01:00
mischa
260aaf6f8c
perf: bundle Rpcs together for each connection. saves 2 bytes of Rpc message headers per Rpc ( #3257 )
...
* buffer TargetRpcs
* buffer Rpcs
* TODO
* readonly
* ok
* better
* ensure max
* parse on client
* fix size
* oops
* adjust test
2022-11-12 12:53:42 +01:00
vis2k
a9e63724e3
remove old comment
2022-11-11 21:55:27 +01:00
vis2k
b04e8e681a
SetSyncObjectDirtyBit helper function
2022-11-11 21:07:05 +01:00
vis2k
41ef03fff5
OnStartLocalPlayer multiple calls workaround explained
2022-11-11 18:49:43 +01:00
vis2k
7e1a579ff2
OnStartLocalPlayer initialization moved to NetworkClient
2022-11-11 18:25:16 +01:00
vis2k
ce819e253a
OnStartClient initializations moved to NetworkClient
2022-11-11 18:19:04 +01:00
vis2k
8d7b3ec89b
NetworkClient.CheckForStartClient to prepare for OnStartClient cleanup
2022-11-11 18:18:37 +01:00
vis2k
0c116e29f2
perf: NetworkIdentity.observers is now always initialized. removes extra null checks everywhere.
2022-11-10 21:09:29 +01:00
vis2k
264a652abe
use explicit type
2022-11-10 20:49:45 +01:00
vis2k
940a467035
SendToReadyObservers: use explicit type
2022-11-10 20:47:12 +01:00
vis2k
5ffdd06602
OnStartServer isClient assignment moved to caller NetworkServer
2022-11-10 20:27:15 +01:00
vis2k
2c40b15a08
syntax
2022-11-10 20:27:01 +01:00
vis2k
75e7af1312
OnStartServer spawned assignment moved to NetworkServer caller
2022-11-10 20:26:56 +01:00
vis2k
c6df8f01d8
OnStartServer netId assignment moved to NetworkServer caller
2022-11-10 20:26:53 +01:00
vis2k
17d874fee8
OnStartServer netId != 0 check moved to NetworkServer caller
2022-11-10 20:26:49 +01:00
vis2k
e7abbaf531
OnStartServer isLocalPlayer initialization moved to NetworkServer caller
2022-11-10 20:26:34 +01:00
vis2k
f2b0f2bab2
OnStartServer isServer check + initialization moved to NetworkServer for cleaner code
2022-11-10 20:26:29 +01:00
vis2k
d79de6bf0c
fix : #3258 NetworkWriter.WriteString now ensures capacity before manually writing into the buffer
2022-11-10 10:57:13 +01:00
vis2k
53a9717334
fix: Unity 2020 support
2022-11-09 15:04:12 +01:00
vis2k
1dada3bb4b
MIRROR_2022_10_OR_NEWER
2022-11-09 10:55:50 +01:00
vis2k
3617ffac00
comment updated
2022-11-06 20:32:06 +01:00
vis2k
6315260286
syntax
2022-11-06 19:30:54 +01:00
vis2k
761b70e8e7
remove unused import
2022-11-03 16:16:39 +01:00
vis2k
d021c1a01e
TimeSample moved to Tools
2022-11-03 16:15:18 +01:00
vis2k
e6a65bc5b2
breaking: remove SyncVar<T> which was meant to replace [SyncVar]s implementation behind the scenes. this hasn't happened, so we don't actually need it.
2022-11-03 16:09:36 +01:00
vis2k
085ed1da81
NetworkBehaviourSyncVar moved into separate file to keep NetworkBehaviour.cs clean
2022-11-03 15:57:16 +01:00
vis2k
a62452c826
TODO
2022-11-03 15:54:44 +01:00
vis2k
18cc7a0558
Pool moved to Tools
2022-11-03 15:52:39 +01:00
vis2k
a8241e5794
Mathd moved to Tools
2022-11-03 15:52:32 +01:00
vis2k
32561576ec
Tools folder to distinguish between Unity integration and standalone algorithms
2022-11-03 15:50:28 +01:00
vis2k
395c447b02
feature: manual DeltaCompression to prepare for NetworkTransform V3
2022-11-01 17:34:41 +01:00
vis2k
9e352f5be2
Compression: ScaleToLong/Float Vector3Long variants to prepare for NetworkTransform V3
2022-11-01 17:34:10 +01:00
vis2k
701c16a307
feature: Vector3Long to prepare for NetworkTransform V3
2022-11-01 17:33:44 +01:00
MikiBordils
fb95c411ef
fix: NetworkDiscovery BroadcastAddress exposed for iOS support ( #3255 )
...
* exposing BroadCasting Address
iOS build prevents broadcasting to 0.0.0.0, so we needed to expose it to change it for our built
* Update NetworkDiscoveryBase.cs
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2022-10-31 22:12:45 +01:00
vis2k
33e0bea844
CCU test demo: only sync on change
2022-10-31 10:46:34 +01:00
mischa
a2756af514
feature: RemoteStatistics tool ( #3254 )
2022-10-31 10:43:10 +01:00
vis2k
d26d12fb55
feature: CCU test demo
2022-10-31 09:23:26 +01:00
vis2k
68ab1816bb
breaking: NetworkManager.serverTickRate renamed to sendRate because that's what it is
2022-10-31 09:15:19 +01:00
vis2k
723da0cecc
fix: NetworkClient now only tries to broadcast every sendInterval. otherwise ClientToServer NetworkTransform components (which have syncInterval=0) would sync every single tick. prepare for NT V3 as well.
2022-10-30 18:54:50 +01:00
vis2k
3d3a542ddd
comment
2022-10-30 18:53:57 +01:00
vis2k
b0f0c38592
script icons
2022-10-30 12:05:00 +01:00
vis2k
8039bcbda5
syntax
2022-10-27 19:17:42 +02:00
vis2k
c0ac491993
NetworkTransform: reorder code
2022-10-27 19:15:22 +02:00
vis2k
e473d154d9
fix: NetworkRigidbody now uses double time to keep precision over multiple days
2022-10-26 12:28:06 +02:00
vis2k
5abc261320
fix: NetworkLerpRigidbody now uses double time to keep precision over multiple days
2022-10-26 12:27:57 +02:00
vis2k
25d0e7929a
fix: NetworkTransform now always sends at the same sendInterval as time interpolation. as configured in NetworkManager.
2022-10-26 12:17:49 +02:00
vis2k
8d3d623fac
fix: NetworkManager now always applies the exposed NetworkServer.send/tickRate. fixes a bug where some NetworkBehaviours may try to send with NetworkServer.tickRate, which wouldn't be available on client because NetworkManager.StartServer was never called, so the rate was never set.
2022-10-26 11:28:40 +02:00
vis2k
485b65f18d
perf: NetworkBehaviour.IsDirty: check bits before time
2022-10-25 19:05:10 +02:00
mischa
d05feed59e
breaking: NetworkTransform.clientAuthority flag obsoleted. use SyncDirection instead. automatically sets syncDirection if still used. ( #3250 )
2022-10-25 11:53:12 +02:00
mischa
ca25956347
perf: breaking: NetworkTransformChild replaced by NetworkTransform with exposed .target. no more virtual property call. and no more redundant components which do the exact same thing. ( #3249 )
2022-10-25 11:44:24 +02:00
vis2k
79bb48bbf5
Compression: remove unnecessary inline
2022-10-24 12:49:35 +02:00
vis2k
1176494587
fix: NetworkClient.sendRate is now coupled to NetworkServer.sendRate in order to avoid snapshot interpolation errors where server & client may be on different send rates, components use the wrong rate to send vs. interpolate, etc.
2022-10-22 10:41:57 +02:00
vis2k
464bd365fe
NetworkServer: sendRate comments improved
2022-10-22 10:37:20 +02:00
vis2k
b31eeb5a4f
NetworkTransform: force syncDirection to follow the old clientAuthority state to make it obvious that there is only one source of truth
2022-10-22 10:26:31 +02:00
vis2k
dfd4d0b672
NetworkTransform: explain that sendInterval is coupled with time interpolation interval; use OnValidate to force syncInterval so it's more obvious in the Inspector
2022-10-22 10:16:43 +02:00
vis2k
38d94f36b1
NetworkTransform: always show OnGUI buffers. easier to debug issues if they aren't filled.
2022-10-21 19:34:23 +02:00
vis2k
8c09b936b9
syntax
2022-10-21 19:21:55 +02:00
mischa
d46e2eaf74
feature: NetworkBehaviour.SetDirty() to trigger custom OnSerialize without having to call SetSyncVarDirtyBit(1). prepares for NetworkTransform v3. ( #3248 )
...
* perf: SetSyncVarDirtyBit inlining
* feature: NetworkBehaviour.SetDirty() to trigger custom OnSerialize without having to call SetSyncVarDirtyBit(1).
prepares for NetworkTransform v3
* imer
2022-10-21 19:02:46 +02:00
vis2k
7c1fac9085
perf: SetSyncVarDirtyBit inlining
2022-10-21 19:02:41 +02:00
mischa
1b6768a691
feature: perf: NetworkConnectionToClient snapshot interpolated .remoteTimeline to simplify NetworkTransform ( #3247 )
...
* move fields to conn
* syntax
* split into time and value
* timeline moved to conn
* OnTimeSnapshot
* old
* NetworkClient sends TimeSnapshots
* server inserts
* update time interp from server
* buffer size limit moved too
* naming
* fix tests
* non public
* readonly
* comments
2022-10-21 19:02:36 +02:00
vis2k
c07c0797ec
TimeSnapshot moved into it's own file
2022-10-21 12:42:59 +02:00
mischa
e0a91eeb3a
feature: SyncDirection (V2) to easily support client auth components without extra Rpcs/Cmds. previously OnSerialize was only server-to-client direction. ( #3244 )
...
* feature: SyncDirection to easily support client auth components without extra Rpcs/Cmds. previously OnSerialize was only server-to-client direction. (#3232 )
* fix and test
* add test
* remove todo
* comments
* only serialize once
* simplify dirty checks
* syntax
* remove doulbe comments
2022-10-19 23:54:54 +02:00
vis2k
a1fbc55e8a
Tests: syntax for easier debugging
2022-10-19 19:51:30 +02:00