Commit Graph

3698 Commits

Author SHA1 Message Date
vis2k
bbeb544d23 Tests: SyncVarCacheNetidForBehaviour: don't use generic magic 2021-05-20 13:18:38 +08:00
MrGadget1024
b2105be8f1 feat: RoomManager Auto-Restart
When in headless server mode, and when last player disconnects, RoomManager will self-call `StopServer` which will fully reset it to the offline scene and then back to the Room scene so players can join again for another play.
2021-05-20 01:16:08 -04:00
MrGadget1024
c7fe7acc15 Moved Discovery Stop buttons down a bit 2021-05-20 01:16:08 -04:00
vis2k
bcb0e1f53d Tests: SyncVarCacheNetidForIdentity: don't use generic magic 2021-05-20 13:15:57 +08:00
vis2k
11be7869fc Tests: SyncVarCacheNetIdForGameObject: don't use generic magic 2021-05-20 13:13:57 +08:00
vis2k
a8249bb13d remove unused test 2021-05-20 13:10:10 +08:00
vis2k
0af57b1bea SyncVarHookTest: reduce dependencies on CreateNetworkIdentity to prepare for removal 2021-05-20 13:08:12 +08:00
vis2k
35e1976373 SyncVarHookTest: reduce dependencies on CreateNetworkIdentity to prepare for removal 2021-05-20 13:06:21 +08:00
MrGadget
b4e81537c9
fix: Shutdown Discovery in OnDisable / OnDestroy (#2736) 2021-05-20 13:06:12 +08:00
MrGadget1024
d0e5131b3f feat: Added Stop buttons to Discovery HUD
Copied from NetworkManagerHUD
2021-05-20 00:49:12 -04:00
vis2k
e153cd6ced TODO 2021-05-20 12:25:34 +08:00
vis2k
538f6c7b29 SyncVarTest: reuse CreateNetworked instead of CreateNetworkIdentity 2021-05-20 12:23:04 +08:00
vis2k
2650d92804 NetworkIdentity.Reset: add comment 2021-05-20 11:46:06 +08:00
vis2k
404d5a884f Tests call NetworkIdentity.Awake now too. prepares for NetworkComponents initialization. 2021-05-20 11:39:12 +08:00
vis2k
69fea4064b CreateNetworkedAndSpawn: reuse CreateNetworked 2021-05-20 11:35:57 +08:00
vis2k
86d8986f5b remove unused 2021-05-19 20:21:30 +08:00
vis2k
1a75bcc616 SyncVarHookTest: reuse CreateNetworked 2021-05-19 20:21:05 +08:00
vis2k
c59d453cd8 remove unused 2021-05-19 20:16:47 +08:00
vis2k
819552d6a7 SyncVarTests: reuse CreateNetworked 2021-05-19 20:15:25 +08:00
vis2k
f6583f5d88 MirrorTest: set syncInterval=0 too 2021-05-19 19:58:20 +08:00
vis2k
1a4cd6a250 SyncVarTestBase: reuse MirrorTest 2021-05-19 19:54:06 +08:00
vis2k
ad224baf38 RemoteTestBase: remove unused 2021-05-19 19:48:32 +08:00
vis2k
181464521c NetworkServerTest: use MirrorTest CreateNetworked 2021-05-19 19:47:10 +08:00
vis2k
f6c13424cf MirrorTest: CreateNetworked<T,U> 2021-05-19 19:47:10 +08:00
vis2k
152ffb11a7 NetworkMatchCheckerTest reuses MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
09d749e613 NetworkManagerTest reuses MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
9c8f60bd56 NetworkManagerStopHostOnServerDisconnectTest reuses MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
b7cbbb02c0 NetworkIdentityTests reuse MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
4ee6eec558 NetworkConnectionToClientTests reuse MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
b180fd5001 NetworkClientTests reuse MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
d2f181a7d6 MirrorTest.UpdateTransport helper 2021-05-19 19:47:10 +08:00
vis2k
385facbe5c NetworkBehaviourTests reuses MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
787a734ce5 TODO 2021-05-19 19:47:10 +08:00
vis2k
6db98895a1 MirrorTest: CreateNetworkedAndSpawn, ProcessMessages 2021-05-19 19:47:10 +08:00
vis2k
97c525eb88 TargetRpcTest: reuse CreateNetworked 2021-05-19 19:47:10 +08:00
vis2k
e98ce05bee protected 2021-05-19 19:47:10 +08:00
vis2k
8a7c474e25 null check 2021-05-19 19:47:10 +08:00
vis2k
0d8ca1fe66 RemoteTestBase uses MirrorTest 2021-05-19 19:47:10 +08:00
vis2k
753ee98a09 MirrorTest creates MemoryTransport too 2021-05-19 19:47:10 +08:00
vis2k
8d4a6f0f21 Tests: MirrorTest helper class 2021-05-19 19:47:10 +08:00
vis2k
31e85ac834 remove unnecessary NetworkTransformChildTest 2021-05-19 19:46:59 +08:00
vis2k
511f9ee453 NetworkMatchCheckerTest: don't use reflection 2021-05-19 19:29:38 +08:00
vis2k
4a52a566c6 perf: NetworkBehaviour ComponentIndex O(N) => O(1) via caching 2021-05-19 15:31:23 +08:00
vis2k
72c440bd9c TODO 2021-05-19 15:29:38 +08:00
vis2k
237357c147 TODO 2021-05-19 15:29:10 +08:00
vis2k
3851325c59 oops 2021-05-19 12:37:31 +08:00
vis2k
dc70cd33d7 Tests: CreateNetworked without NetworkBehaviour 2021-05-19 12:37:20 +08:00
vis2k
c4491fe0d6 Tests: ActivateHostSceneCallsOnStartClient uses CreateNetworked 2021-05-19 12:35:54 +08:00
vis2k
691ac1311c TestUtils.CreateNetworked<T> 2021-05-19 12:32:34 +08:00
vis2k
c8349f3f01 TestUtils.CreateBehaviour 2021-05-19 12:03:29 +08:00
Chris Lang
96cf4e74c4 Updated processor define symbols for breaking changes
- We really need to remember or automate this.
2021-05-18 14:14:16 -04:00
Chris Lang
c48beedb48 Dated Deprecations 2021-05-18 11:00:34 -04:00
vis2k
a14da0a701 TODO 2021-05-18 22:03:44 +08:00
vis2k
c4dcb4d176 add comment 2021-05-18 22:00:46 +08:00
vis2k
c4e37f670c NetworkReader API cleanup: ReadInt16 => ReadShort etc. 2021-05-18 21:01:48 +08:00
vis2k
46539ef816 NetworkWriter API cleanup: WriteInt16 => WriteShort etc. 2021-05-18 13:31:44 +08:00
vis2k
c661fdac36 fix test after NetworkWriter Length removal 2021-05-18 13:25:13 +08:00
vis2k
8a4416e3b5
breaking: perf: remove NetworkWriter.Length/SetLength/EnsureLength. Position is enough. (#2731)
* NetworkWriter: obsolete .Length and .SetLength()

* breaking: perf: remove NetworkWriter.Length/SetLength/EnsureLength. Position is enough.
2021-05-18 12:07:10 +08:00
vis2k
e823de74bd Mirror uses new Transport.Send version everywhere 2021-05-17 17:41:54 +08:00
vis2k
9a0cce64cd Transport.Send API cleanup: channelId is now the last parameter, for consistency with the rest of Mirror where it's often a default parameter (which has to be last) 2021-05-17 17:27:58 +08:00
vis2k
f79709a263 Transport: xml comments cleanup 2021-05-17 17:06:53 +08:00
vis2k
6ebe813fc8 add comment 2021-05-16 14:06:09 +08:00
MrGadget
28f186a76f
fix: Reset Network Time whenever server starts (#2713) 2021-05-15 14:45:26 +08:00
vis2k
d33965c800 NetworkServer broadcasting: GetEntitySerialization helper function 2021-05-14 12:43:21 +08:00
vis2k
d045918ea7 add TODO 2021-05-14 12:41:08 +08:00
vis2k
16d0829ee4 NetworkClient.Shutdown: clear connection too 2021-05-13 22:13:50 +08:00
vis2k
269f9f486c obsolete test 2021-05-13 21:57:17 +08:00
vis2k
55263977f8
breaking: obsolete FallbackTransport (#2720) 2021-05-13 21:52:10 +08:00
vis2k
b0b4b9523c breaking: remove Cloud API and examples. 2021-05-13 21:51:49 +08:00
vis2k
c5073da7b3 syntax 2021-05-13 13:07:57 +08:00
vis2k
15232d35b3 syntax 2021-05-13 13:07:04 +08:00
vis2k
f4c72cf135 syntax 2021-05-13 13:06:07 +08:00
vis2k
d8786b16ff syntax 2021-05-13 13:05:33 +08:00
vis2k
c5579e9744 syntax 2021-05-13 13:02:23 +08:00
vis2k
cce0e7db03 syntax 2021-05-13 13:00:23 +08:00
vis2k
74297fd7fb syntax 2021-05-13 12:58:42 +08:00
vis2k
46dce930fb syntax 2021-05-13 12:58:00 +08:00
vis2k
3a3a726059 NetworkServerTest: syntax 2021-05-13 12:55:12 +08:00
vis2k
0d6b677660 syntax 2021-05-13 12:53:34 +08:00
vis2k
f5a856abc1 remove NetworkReader/WriterPoolTests. Pool<T> is already tested. 2021-05-13 12:51:33 +08:00
vis2k
d22e4387a0 add comments 2021-05-13 12:50:10 +08:00
vis2k
8cb68f6a16 Tests: MessageBaseTests renamed to NetworkMessageTests 2021-05-13 12:48:13 +08:00
vis2k
23cfcb7db7 Tests: LocalConnectionsTest ClientToServer 2021-05-13 12:47:15 +08:00
vis2k
02ff1076f8 Tests: LocalConnectionsTest ServerToClient 2021-05-13 12:43:51 +08:00
vis2k
3d122ea37e Tests: remove unnecessary CustomAttributeTest 2021-05-13 12:30:59 +08:00
vis2k
9d50c1a1d0 Tests: BuiltInMessages cleanup 2021-05-13 12:30:04 +08:00
vis2k
b7a6932b93 use local function 2021-05-13 12:06:00 +08:00
vis2k
a66fefb1e3 syntax 2021-05-13 12:00:59 +08:00
vis2k
35b16df3e5 add comments 2021-05-13 11:59:41 +08:00
vis2k
56b52b4973
NetworkManager.StopHost: call NetworkServer.OnTransportDisconnected directly so we can obsolete NetworkClient.DisconnectLocalServer. (#2717) 2021-05-11 22:00:16 +08:00
vis2k
97b4cb1c0b NetworkServer.DisconnectAllExternalConnections moved into DisconnectAll, because that's what it actually does. 2021-05-11 21:54:06 +08:00
vis2k
c44016b049 add comment 2021-05-11 21:21:43 +08:00
vis2k
007dd80852 fix: NetworkServer.OnDisconnected removed. There is only one way to invoke the disconnect handling, which is OnTransportDisconnected. fixes bugs where OnDisconnect would handle the disconnect, not remove the connection, then the Transport callback would call OnTransportDisconnected->OnDisconnect a second time. fixes #2706 and many more 2021-05-11 21:19:45 +08:00
vis2k
bac1f94033 NetworkServerTest: use ClientConnect so that invoked connectionId and MemoryTransport's internal connectionId match. 2021-05-11 18:21:03 +08:00
vis2k
2d24dfefbe NetworkServerTest: UpdateTransport helper function 2021-05-11 16:36:34 +08:00
vis2k
e942062c79 NetworkServerTests simplified by storing Transport in a field 2021-05-11 16:34:44 +08:00
vis2k
7c358054d7 fix: NetworkServer.OnTransportDisconnected doesn't call conn.Disconnect() again. avoids possible deadlocks etc. 2021-05-11 13:15:14 +08:00
vis2k
7d807d04fa add TODO 2021-05-11 13:05:20 +08:00
vis2k
4722b9739d NetworkClient.Disconnect: RemoveLocalConnection call moved into LocalConnectionToServer where it belongs 2021-05-11 12:58:02 +08:00
vis2k
015a8ea1a4 NetworkClient.Disconnect: connection != null check not needed because of the new early return 2021-05-11 12:41:07 +08:00
vis2k
f0caa19270 add TODO 2021-05-11 12:36:20 +08:00
vis2k
e8a6b5c2b5 NetworkClient.Disconnect: remove dead code 2021-05-11 12:35:44 +08:00
vis2k
79caa1b9a2 NetworkClient.Disconnect: early return so it's not called twice 2021-05-11 12:31:20 +08:00
vis2k
1733b84cbe breaking: Transport.ServerDisconnect return value changed from bool to void because it's not used anywhere 2021-05-11 12:06:12 +08:00
vis2k
45e481e65e NetworkConnection.RemoveObservers renamed to RemoveFromObservingsObservers because that's what it actually does 2021-05-11 11:47:46 +08:00
vis2k
979f67497e disable failing test 2021-05-10 23:23:20 +08:00
vis2k
76241da75f
breaking: obsolete Mirror timeout handling. Transport handle it instead. (#2711) 2021-05-10 21:37:29 +08:00
vis2k
9b2e7d09c7 add comment 2021-05-10 21:33:38 +08:00
vis2k
939f2820ea fix: NetworkServer.OnDisconnect now calls DestroyPlayerForConnection if NetworkManager doesn't handle it. 2021-05-10 21:04:03 +08:00
vis2k
eadda02701 add comment 2021-05-10 20:59:30 +08:00
vis2k
e723a52c97 add comments 2021-05-10 20:57:38 +08:00
vis2k
497c279b2f TODO 2021-05-10 20:49:45 +08:00
vis2k
561ec64960 NetworkManager: remove redundant OnServerDisconnectInternal 2021-05-10 20:44:19 +08:00
vis2k
522a9533f6 NetworkConnection.TransportReceive renamed to OnTransportData 2021-05-10 20:17:34 +08:00
vis2k
0d3d0bdf5f NetworkClient: Transport events renamed to be more obvious 2021-05-10 20:11:31 +08:00
vis2k
b11cc9c52a NetworkServer: Transport events renamed to be more obvious 2021-05-10 20:07:16 +08:00
vis2k
5b84aee346 Transport: add comments on what is required 2021-05-10 19:47:20 +08:00
MrGadget1024
18dc7cc373 feat: sync scale and interpolation adjustments
- PR #2704 should have been prefixed with "feat" for version bump
2021-05-05 00:25:41 -04:00
JesusLuvsYooh
fa8ef7da49
sync scale and interpolation adjustments (#2704)
* sync scale and interpolation adjustments

* Update NetworkTransformBase.cs
2021-05-03 10:22:39 +08:00
MrGadget
474f278575
fix: Network Authentators: Removed NetworkConnection parameter (#2703)
As was done in other areas, now using `NetworkClient.connection` instead of passing a `conn` parameter around.
- Abstract NetworkAuthenticator now has obsoletes.
- Basic and Timeout Authenticators Updated
- Network Manager Updated
- Script Template Updated
2021-04-30 09:33:17 +08:00
Musab Gültekin
1167e50fed
Typo fix (#2696)
Fix a typo at line 1218 on NetworkManager.cs
2021-04-22 09:17:40 -04:00
MrGadget
29668bdf6a
feat: Prevent Player Prefab from being added to spawnPrefabs (#2678)
* feat: Prevent Player Prefab from being added to spawnPrefabs
This will prevent this unhelpful warning:
`Replacing existing prefab with assetId 'c3ee5d2b-0807-ecb4-f85b-93753624468e'. Old prefab 'Player', New prefab 'Player'`

* added comment

Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-04-22 10:47:23 +08:00
vis2k
9fe19bf8e8 'Spawn scene object not found' error improved 2021-04-19 11:44:03 +08:00
Laur3nt1u
6db8e4a929
SimpleWebTransport fix ssl handshake (#2689)
This fixes the handshake for reverse proxy use
2021-04-14 10:11:56 +08:00
MrGadget
8ef84791be
Moved "removed" files to Empty folders (#2692)
Moved "removed" files to Empty folders in same folder as original to preserve meta references.
In one case the entire Logging folder was moved.
In all cases I stayed within the coverage of AsmDef's that they were previously.
2021-04-14 10:10:30 +08:00
vis2k
3e555c92ba breaking: MessagePacking GetId<T> return value changed to ushort because that's what it always is. type safety matters. 2021-04-06 18:57:55 +08:00
MrGadget1024
6c5934f731 fix: Added ServerAuthFailed bool to Basic Authenticator
Fixes #2621
2021-04-06 00:02:51 -04:00
MrGadget1024
5fee51ada0 doc: Updated docs urls 2021-04-01 06:23:32 -04:00
vis2k
93ee04723a version define 2021-03-28 10:03:55 +08:00
MrGadget
621153c95e
feat: Call ConfigureServerFrameRate For Headless Clients (#2660)
* feat: Call ConfigureServerFrameRate for headless clients

* code order consistancy

Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-27 18:53:18 +08:00
MrGadget
008dbbcf9c
fix: Prevent client shutdown from running twice (#2666)
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-27 18:52:27 +08:00
vis2k
2ec53df4a9 syntax 2021-03-27 12:06:14 +08:00
vis2k
3a9d954404 fix: #2579 - Weaver skips already weaved assemblies when restarting Unity. fixes a bug where GeneratedNetworkCode class would exist twice, while the newer one was missing some writers 2021-03-27 11:49:12 +08:00
vis2k
afc4f584fc syntax 2021-03-27 11:30:52 +08:00
vis2k
a4eb0c4d77 Weaver: CreateGeneratedCodeClass helper function and some restructuring so it's not hidden in WeaverList constructor 2021-03-27 11:09:52 +08:00
vis2k
e356e4f9c8 Weaver: GeneratedNetworkCode name as const 2021-03-27 11:05:01 +08:00
vis2k
42065c1699 add comment 2021-03-27 11:05:01 +08:00
MrGadget1024
38250ebb59 Added tooltip to SyncMode for inspector 2021-03-26 13:07:46 -04:00
vis2k
95a7f830c3 add log for debugging if needed 2021-03-26 19:34:37 +08:00
vis2k
98109c0ed3 add comments 2021-03-26 11:32:40 +08:00
vis2k
b1754c8748 Weaver.ReaderWriterProcessor.InitialzieReaderAndWriters: eli5 2021-03-26 11:31:41 +08:00
vis2k
417642475a fix: #2579 "No writer found" error when running Mirror tests in Unity 2020.3 Editor. fixes the first bug in editor, but maybe not the runtime bug? or maybe it does. 2021-03-26 11:17:56 +08:00
vis2k
b7c63c3067 fix: #2517 - NetworkManager.UpdateScene wraps FinishLoadScene in try/catch to guarantee loadingSceneAsync being cleared no matter what. fixes a bug where if FinishLoadScene throws then loadingSceneAsync is never cleared and the code runs every update 2021-03-21 23:54:13 +08:00
vis2k
57ae5372ba NetworkManager.UpdateScene made non static. it wasn't obvious why this would be static, and it's called from nonstatic Update() anyway. makes it cleaner. 2021-03-21 12:33:06 +08:00
vis2k
b422ccb29e NetworkManager.FinishLoadScene made protected so inheritors can still use it, but users don't need to worry about it (not in the public API) 2021-03-21 12:31:41 +08:00
MrGadget1024
fedc2884ce Revert "Replaced Proximity Checker with Distance Interest Mgmt"
This reverts commit 5c7bfa4834.
2021-03-21 00:24:19 -04:00
MrGadget1024
5c7bfa4834 Replaced Proximity Checker with Distance Interest Mgmt 2021-03-20 22:51:00 -04:00
MrGadget
0c903dabc6
Updated examples to not sync scale (#2661)
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-21 10:05:07 +08:00
MrGadget
cd6a4805d7
breaking: Compiler symbols culled to Mirror 17 and later. (#2659)
* breaking: Compiler symbols culled to Mirror 17 and later.

* added missing quote

Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-21 10:04:45 +08:00
MrGadget1024
95f55e652f doc: Added DDOL note to NetworkBehaviour template 2021-03-20 19:26:35 -04:00
MrGadget1024
1f22066f9b fix: MultipleAdditiveScenes disabled Server Batching
This can be enabled again when batching is fixed.
See https://github.com/vis2k/Mirror/issues/2651
2021-03-19 22:46:55 -04:00
MrGadget1024
9190dcfb7e NetworkManager: Make FinishLoadScene public
FinishLoadScene needs to be accessible from override of LateUpdate
2021-03-19 09:22:51 -04:00
MrGadget1024
1335b40d11 NetworkManager: move clientSceneOperation caching up 2021-03-19 09:07:12 -04:00
JesusLuvsYooh
6b9b7ce5af
Added new syncScale boolean to NT Test writer. (#2657) 2021-03-18 16:47:01 -04:00
JesusLuvsYooh
68ae40818b
NetworkTransformBase sync scale boolean. (#2655)
* NetworkTransformBase syncScale boolean

https://github.com/vis2k/Mirror/pull/2646

* NT - Command for client to server - Unreliable
2021-03-18 16:39:14 +08:00
vis2k
09bf1c5bf0 fix: NetworkLoop inserts a fresh PlayerLoopSystem instead of resizing and overwriting partially. fixes undefined behaviour where the previous nativeLoop IntPtrs weren't cleared, possibly still updating a native loop accidentally. See also #2652 2021-03-18 12:59:00 +08:00
MrGadget1024
1defc926dc Basic Example: Moved playersList to Player class 2021-03-17 21:56:13 -04:00
MrGadget1024
f70946a362 fix: Fixed field lable not shown for SyncVars 2021-03-16 14:40:55 -04:00
vis2k
c957500710 customizable noise 2021-03-16 16:30:27 +08:00
vis2k
e9081c468c LatencySimulation: perlin noise spikes 2021-03-16 16:12:04 +08:00
vis2k
d8fb7cda63 range slider 2021-03-16 15:32:04 +08:00
vis2k
83f8593caa LatencySimulation: spike latency via multiplier 2021-03-16 15:29:20 +08:00
vis2k
1281f72ac2 LatencySimulation: SimulateLatency helper function 2021-03-16 15:26:42 +08:00
vis2k
de076348c0 syntax 2021-03-16 15:24:52 +08:00
vis2k
58560166ca Latency Simulation: add latency when adding to queue 2021-03-16 15:24:23 +08:00
vis2k
28be3a814c syntax 2021-03-16 15:19:37 +08:00
vis2k
1938597a7b LatencySimulation: scramble changed to a probability 2021-03-16 13:40:04 +08:00
vis2k
c5322ac5d5
remove performance test framework to fix CI (#2648) 2021-03-16 12:40:26 +08:00
MrGadget
53dad15e04 Shorten Channel Enums (#2644)
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-16 12:08:28 +08:00
ThatDan123
254a0b929d Added what size the rejected packet was (#2645) 2021-03-16 12:08:23 +08:00
MrGadget1024
386a26c5b7 GUIConsole in Mirror namespace, formatting 2021-03-16 12:08:18 +08:00
vis2k
0713db8338 add comment 2021-03-15 19:26:18 +08:00
vis2k
0c39279239 obsolete Utils.Version 2021-03-15 19:21:24 +08:00
vis2k
257dd2a775 cleanup 2021-03-15 19:18:02 +08:00
vis2k
a5ab683917 cleanup 2021-03-15 19:18:02 +08:00
JesusLuvsYooh
ce62184a86
interpolateScale On NT (#2639)
interpolateScale On NT
2021-03-15 18:01:55 +08:00
vis2k
c4e4bf3148 LatencySimulation: add latency spikes 2021-03-15 13:43:15 +08:00
vis2k
f3997b6030 syntax 2021-03-15 13:38:40 +08:00
vis2k
7de5c18986 fix: LatencySimulation now sends all messages that are ready to be sent. previously a scrambled message being inserted randomly could delay the ones behind it in the list 2021-03-15 13:21:34 +08:00
vis2k
7c7fa74572 add comment 2021-03-15 13:16:12 +08:00
vis2k
2f2ffb9f36
feature: Latency Simulation (#2640)
* wrap around a transport

* loss

* unreliable client to server latency

* reliable client to server latency

* unreliable/reliable server to client latency

* add comment

* list to prepare for scramble

* unreliable scramble

* rename to LatencySimulation

* help url

* doc: updated comment

* fix: MultipleAdditiveScenes AddPlayer timing

* Update Assets/Mirror/Runtime/Transport/LatencySimulation.cs

Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>

* Update Assets/Mirror/Runtime/Transport/LatencySimulation.cs

Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>

* remove old comments

* SimuateSend helper function as per suggestion

Co-authored-by: MrGadget1024 <chris@clevertech.net>
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2021-03-15 10:12:54 +08:00
MrGadget1024
86c8e1bb24 fix: MultipleAdditiveScenes AddPlayer timing 2021-03-14 17:06:05 -04:00
MrGadget1024
6384d1c244 doc: updated comment 2021-03-14 15:10:13 -04:00
vis2k
78b6cfbde7 feat: NetworkTransform.compressRotation option. disabled by default to not break 2D projects. 2021-03-14 14:53:23 +08:00
vis2k
19017dfb41 fix: NetworkTransform compression disabled for now to fix tiny 'wobbly' 2D sprite rotations. NetworkTransform will be remade anyway. make it work, then make it fast. 2021-03-14 14:41:10 +08:00
vis2k
7428941c93 CompressionTests: test 90 degree euler angle 2021-03-14 14:14:43 +08:00
MrGadget1024
383a0279c0 fix: Updated Authenticator Template for NetworkClient.connection 2021-03-13 15:57:30 -05:00
vis2k
c3c95d22ca Utils.IsPrefab: remove <2018.3 support 2021-03-13 20:00:12 +08:00
vis2k
df2330239f add TODO 2021-03-13 19:53:51 +08:00
vis2k
b9027737c8 add TODO 2021-03-13 19:47:35 +08:00
vis2k
23722ce828 add comment 2021-03-13 19:42:49 +08:00
vis2k
b258a27c09 add comment 2021-03-13 19:42:20 +08:00
vis2k
f19385d565 add TODO 2021-03-13 19:40:18 +08:00
vis2k
461ce519ff obsolete redundant NetworkClient.RegisterHandler version with NetworkConnection 2021-03-13 19:35:49 +08:00
vis2k
e0d023828f add TODOs 2021-03-13 19:30:46 +08:00
vis2k
5cb86830f1 BasicAuthenticator.OnAuthResponseMessage: remove unnecessary NetworkConnection parameter to remove last dependency on RegisterHandler version with NetworkConnection 2021-03-13 19:30:16 +08:00
vis2k
ecf15f5070 NetworkManager: OnClientSceneInternal uses RegisterHandler version without NetworkConnection parameter to prepare for removal 2021-03-13 19:25:29 +08:00
vis2k
8e0ef05c64 NetworkManager: OnClientNotReadyMessageInternal uses RegisterHandler version without NetworkConnection parameter to prepare for removal 2021-03-13 19:24:45 +08:00
vis2k
5bf7be143c NetworkClient.OnConnected/DisconnectEvent: remove redundant NetworkConnection parameter. It's always NetworkClient.connection anyway. 2021-03-13 19:22:57 +08:00
vis2k
f38d29b61c MultipleMatches example: CanvasController uses RegisterHandler version without NetworkConnection parameter to prepare for removal 2021-03-13 19:17:59 +08:00
vis2k
3cfee7dd14 add TODO 2021-03-13 19:13:53 +08:00
vis2k
21e0d6c8e0 NetworkClient.RegisterSystemHandlers: use the variant without NetworkConnection parameter so we can remove the other one later 2021-03-13 19:12:08 +08:00
vis2k
251d3cd392 NetworkClient.ClearLocalPlayer removed. clear it directly instead. 2021-03-13 18:36:52 +08:00
vis2k
9cf4207819 fix: #2635 - Reset also checks if local player before clearing it (see previous commit) 2021-03-13 18:36:29 +08:00
vis2k
457b21d907 fix: #2635 NetworkIdentity.OnDestroy only clears NetworkClient.localPlayer if WE are STILL the local player.
fixes data race in rooms scene (explanation see comments)
2021-03-13 18:29:20 +08:00
vis2k
2cd4403429 add TODO 2021-03-13 13:59:19 +08:00
vis2k
be229f27d8 add TODO 2021-03-13 13:58:39 +08:00
vis2k
251000436f syntax 2021-03-13 13:54:04 +08:00
vis2k
e5f6d25ae3 syntax 2021-03-13 13:53:27 +08:00
vis2k
01d1630b7f syntax 2021-03-13 13:52:44 +08:00
vis2k
a643cf7045 syntax 2021-03-13 13:52:32 +08:00
vis2k
89df32563b syntax 2021-03-13 13:52:14 +08:00
vis2k
b2892e7e1a add TODO 2021-03-13 13:51:20 +08:00
vis2k
0949c9d875 NetworkClient.HandleClientDisconnect removed. set .ready=false directly instead. way easier to understand. 2021-03-13 13:48:29 +08:00
vis2k
d7ee25e589 NetworkClient.HandleClientDisconnect: remove unnecessary connection parameter. it wasn't even used. 2021-03-13 13:44:34 +08:00
vis2k
4a47b1c7d2 NetworkClient.Ready: easier syntax 2021-03-13 13:34:58 +08:00
vis2k
f38af96202
NetworkClient.Ready: remove unnecessary NetworkConnection parameter (#2634) 2021-03-13 13:33:02 +08:00
vis2k
4daf0e439f add TODOs 2021-03-13 13:17:17 +08:00
vis2k
5e7c873af9 comment formatting 2021-03-13 13:15:00 +08:00
vis2k
a5224ecd10 syntax 2021-03-13 13:11:13 +08:00
vis2k
4ce55f585c NetworkClient.Ready: improve error message 2021-03-13 13:10:39 +08:00
vis2k
10aca712c2 add TODO 2021-03-13 13:08:20 +08:00
vis2k
a2dc9e6283 add TODO 2021-03-13 13:07:15 +08:00
vis2k
87c2f982cd NetworkClient.AddPlayer: remove unnecessary ready line. we don't even get there if we aren't already ready. 2021-03-13 13:04:24 +08:00
vis2k
d118de81db NetworkClient.AddPlayer: check if ready again. UNET checked if it has a readyConnection before too. 2021-03-13 13:01:21 +08:00
vis2k
c3f27f0fa1 NetworkClient.AddPlayer: simplify syntax, add TODO 2021-03-13 12:53:36 +08:00
vis2k
dc181ffe08 NetworkClient.AddPlayer: remove unnecessary NetworkConnection parameter 2021-03-13 12:44:54 +08:00
vis2k
0d5df4842f obsolete NetworkClient.readyConnection redundant state 2021-03-13 12:36:54 +08:00
vis2k
dd5c137c7b Tests: remove last dependencies on .readyConnection 2021-03-13 12:35:45 +08:00
vis2k
13b4f7d5e7 old Logging files moved into Old folder 2021-03-13 12:22:56 +08:00
MrGadget1024
c7c43da3ad fix: NetworkLoop compiler definition wrong version 2021-03-12 09:04:44 -05:00
vis2k
c39a35077e SendCommandInternal: use NetworkClient.connection instead of NetworkClient.readyConnection to remove dependency on .readyConnection 2021-03-12 16:37:36 +08:00
vis2k
cf08822f00 test for #2629 [Command(requiresAuthority=false)] to make sure it never happens again 2021-03-12 15:32:10 +08:00
vis2k
9d38188d6e fix: NetworkClient.Ready(): set .connection to connection parameter like UNET did.
this was changed in 89cdec3075 because it's unnecessary.
but NetworkBehaviourTests.SendCommandInternal depends on it.
so let's keep feature parity for now.
2021-03-12 15:26:56 +08:00
vis2k
67d24ee2ca forgot to revert test too 2021-03-12 15:07:47 +08:00
vis2k
c749c84ee4 forgot to fix log 2021-03-12 15:06:03 +08:00
vis2k
73cd1ac72a fix: #2629 - Revert "NetworkBehaviour.SendCommandInternal: use connectionToServer instead of NetworkClient.readyConnection. reduces dependencies on NetworkClient.readyConnection (which is redundant) and reduces static states. (#2620)"
This reverts commit 64f247fb32.
=> also adding a comment for next time
2021-03-12 14:54:09 +08:00
vis2k
413291a857 add TODO 2021-03-12 14:28:02 +08:00
MrGadget1024
5d00885564 perf: NetworkTransform - Removed redundant .transform 2021-03-11 08:49:24 -05:00
vis2k
2d004609c4 add comment 2021-03-11 14:23:18 +08:00
Coyote-A
038a1e3fd2
fix: networkloop breaks other libraries that use playerloop (#2627)
* use GetCurentPlayerLoop in unity 2019.3 or newer

* Update NetworkLoop.cs

Co-authored-by: vis2k <info@noobtuts.com>
2021-03-11 14:15:03 +08:00
vis2k
48a55ab487 remove old comment 2021-03-11 11:27:37 +08:00
vis2k
0992d71fe3 NetworkClient.CheckForLocalPlayer: remove dependency on readyConnection 2021-03-11 11:25:25 +08:00
MrGadget1024
540af6a9d5 fix: fix broken summary comments 2021-03-10 22:22:20 -05:00
vis2k
4c7a5d64a5 NetworkClient.AddPlayer: remove dependency on .readyConnection. the code has a '!ready' check before. so by definition, .readyConnection == .connection here. 2021-03-11 11:14:21 +08:00
vis2k
d299d607eb NetworkClient.InternalAddPlayer: remove dependency on readyConnection 2021-03-11 11:09:54 +08:00
vis2k
9ee2bc5893 NetworkClient.HandleClientDisconnect: remove unnecessary readyConnection comparison 2021-03-11 11:09:54 +08:00
MrGadget
1042a39d85
fix: Added PersistNetworkManagerToOfflineScene (#2625)
* Added PersistNetworkManagerToOfflineScene
- Fixes #2624

* Added pragma suppression

* Fixed bool check

* More comments

Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-10 22:08:29 -05:00
vis2k
171b674a0f comment 2021-03-11 10:48:20 +08:00
vis2k
89cdec3075 NetworkClient.readyConnection state removed. points to .connection if .ready instead. 2021-03-11 10:36:11 +08:00
vis2k
5a1a67298b update comment 2021-03-11 10:21:29 +08:00
vis2k
816c8885de wat 2021-03-11 10:19:51 +08:00
vis2k
c5d1af2287 fix tests that started failing after isLocalPlayer fixes commit (a6f6f80f65) because it assumed ApplySpawPayload would set isLocalPlayer=true. but now it's only set true in OnStartLocalPlayer, which is only called in ApplySpawnPayload if spawnFinished is true. which it isn't. so we set it manually instead. 2021-03-11 00:09:16 +08:00
vis2k
accf843283 fix: NetworkIdentity.Reset resets isLocalPlayer AFTER the isLocalPlayer ClearLocalPlayer check. fixes a runtime UnSpawn test. 2021-03-10 23:45:29 +08:00
vis2k
a23c01aa24 add OnStartLocalPlayer comment from paul 2021-03-10 23:28:11 +08:00
vis2k
956bfff3ad wat 2021-03-10 21:08:40 +08:00
vis2k
be2369f4a1 forgot one 2021-03-10 20:58:35 +08:00
vis2k
388b6bab71 NetworkAnimator: replace UNET's magic readyConnection check with isClient. this was from UNET and there was no comment, so nobody knew why it was used instead of isClient. 2021-03-10 20:55:21 +08:00
vis2k
97615b9491 syntax 2021-03-10 20:54:24 +08:00
vis2k
64f247fb32
NetworkBehaviour.SendCommandInternal: use connectionToServer instead of NetworkClient.readyConnection. reduces dependencies on NetworkClient.readyConnection (which is redundant) and reduces static states. (#2620) 2021-03-10 19:46:31 +08:00
vis2k
abbe34501d add TODOs 2021-03-10 19:31:54 +08:00
vis2k
a58cd37a36 [Command] tests: set up NetworkIdentity connectionToServer everywhere too, not just to client. prepares for making SendCommandInternal use connectionToServer instead of NetworkClient.readyConnection. 2021-03-10 19:04:08 +08:00
vis2k
b3c25d1094 add TODO 2021-03-10 18:46:41 +08:00
Coyote-A
29590401bc
add missing virtual update methods in MultiplexTransport (#2618) 2021-03-10 17:34:25 +08:00
vis2k
f239ee678a cleanup 2021-03-10 17:25:53 +08:00
vis2k
15d595fe41 SyncObject cleanup 2021-03-10 17:25:26 +08:00
vis2k
debcb400fe syntax 2021-03-10 17:23:29 +08:00
vis2k
ba9b9ec85b RemoteCallHelper cleanup 2021-03-10 17:22:57 +08:00
vis2k
0b9539b8de NetworkWriterPool cleanup 2021-03-10 17:20:37 +08:00
vis2k
055ff8dae4 NetworkWriter cleanup 2021-03-10 17:19:12 +08:00
vis2k
5dd37b5c09 cleanup 2021-03-10 16:31:13 +08:00
vis2k
459d5e203e NetworkTime: add TODOs 2021-03-10 16:31:13 +08:00
vis2k
b596294917 NetworkTime.rttSd was renamed to rttStandardDeviation 2021-03-10 16:31:13 +08:00
vis2k
46f4079856 NetworkTime.rttVar was renamed to rttVariance 2021-03-10 16:31:13 +08:00
vis2k
8a7fd39cf0 NetworkTime.timeSd was renamed to timeStandardDeviation 2021-03-10 16:31:13 +08:00
vis2k
b8b72d4482 NetworkTime.timeVar renamed to timeVariance to not confuse it with 'timeVariable' etc. 2021-03-10 16:31:13 +08:00
vis2k
fef1184404 NetworkTime cleanup 2021-03-10 16:18:11 +08:00
vis2k
a079f2a412 typo 2021-03-10 16:10:04 +08:00
vis2k
6ad3b5a6b7 previous syntax 2021-03-10 16:09:50 +08:00
vis2k
efc303ceb8 NetworkStartPosition cleanup 2021-03-10 16:09:14 +08:00
vis2k
5a6db1e4b7 NetworkReaderPool cleanup 2021-03-10 16:00:48 +08:00
vis2k
1358ab643f cleanup 2021-03-10 15:57:39 +08:00
vis2k
b2d9279e76 NetworkReader cleanup 2021-03-10 15:53:13 +08:00
vis2k
f7c6d09b44 empty files moved into Empty folder 2021-03-09 19:20:10 +08:00
vis2k
078a0c4aec NetworkManager comments cleaned up 2021-03-09 19:07:21 +08:00
vis2k
4962cee248 feat: NetworkManager.OnServerAddPlayer instantiates with name "Player [connId=42]" instead of "Player (clone)" for easier debugging 2021-03-09 18:58:20 +08:00
vis2k
fc92a28715 cleanup 2021-03-09 18:56:27 +08:00
vis2k
5e2f3c239f syntax 2021-03-09 18:54:00 +08:00
vis2k
46c9bddb6c cleanup 2021-03-09 18:53:24 +08:00
vis2k
64b436445f cleanup 2021-03-09 18:49:58 +08:00
vis2k
a4e237d307 cleanup 2021-03-09 18:41:42 +08:00
vis2k
9f68d269cc NetworkManagerHUD doesn't need xml comments except one 2021-03-09 18:25:35 +08:00
vis2k
ea141c30d6 syntax 2021-03-09 18:24:28 +08:00
vis2k
1f550b8289 cleanup 2021-03-09 18:22:36 +08:00
vis2k
22384458bd cleanup 2021-03-09 18:07:29 +08:00
vis2k
013a748da6 cleanup 2021-03-09 18:03:16 +08:00
vis2k
6926bad7d6 cleanup 2021-03-09 17:55:19 +08:00
vis2k
25e9904fa8 add TODO 2021-03-09 17:54:43 +08:00
vis2k
0291d0a402 cleanup 2021-03-09 17:53:46 +08:00
vis2k
e79dd1e443 cleanup 2021-03-09 17:52:41 +08:00
vis2k
f02c163232 add comment about static state 2021-03-09 17:48:15 +08:00
vis2k
71e7393278 syntax 2021-03-09 16:17:07 +08:00
vis2k
fe3e365c7d cleanu 2021-03-09 16:16:55 +08:00
vis2k
7ae1496b88 update url 2021-03-09 16:16:08 +08:00
vis2k
294fd46146 syntax 2021-03-09 16:12:40 +08:00
vis2k
94707b2554 add TODO 2021-03-09 16:07:55 +08:00
vis2k
2cf41cf835 syntax 2021-03-09 15:53:20 +08:00
vis2k
c4d217af2f syntax 2021-03-09 15:50:27 +08:00
vis2k
b0ccb28f18 add comment 2021-03-09 15:50:22 +08:00
vis2k
c47a6b0085 NetworkIdentity.ThisIsASceneObjectWithPrefabParent moved to Utils 2021-03-09 15:47:46 +08:00
vis2k
04b3e34593 syntax 2021-03-09 15:40:33 +08:00
vis2k
6b9acacaf0 cleanup 2021-03-09 15:40:12 +08:00
vis2k
dd2b4f8736 syntax 2021-03-09 15:38:01 +08:00
vis2k
7d3666a121 syntax 2021-03-09 15:37:41 +08:00
vis2k
ad40b260d1 syntax 2021-03-09 15:35:02 +08:00
vis2k
7fc91537ed remove unused NetworkBehavioursCache 2021-03-09 15:34:47 +08:00
vis2k
a21344196e cleanup 2021-03-09 15:32:48 +08:00
vis2k
4a1f4115d5 cleanup 2021-03-09 15:30:30 +08:00
vis2k
15aa2e091e cleanup 2021-03-09 15:23:48 +08:00
vis2k
4e7c49ee50 syntax 2021-03-09 15:21:11 +08:00
vis2k
d131367245 syntax 2021-03-09 15:19:40 +08:00
vis2k
665b1c2156 perf: batching is now enabled by default 2021-03-09 15:17:29 +08:00
vis2k
1b6f898a5a update batching comment 2021-03-09 15:16:08 +08:00
vis2k
fbe378a069 cleanup 2021-03-09 15:15:11 +08:00
vis2k
7cc3e166c4 cleanup 2021-03-09 15:02:02 +08:00
vis2k
c4cf8c263d syntax: avoid hiding property 2021-03-09 14:59:40 +08:00
vis2k
1bf08bbf89 syntax: avoid hiding property 2021-03-09 14:59:29 +08:00
vis2k
fc6ada4ab9 syntax: avoid hiding property 2021-03-09 14:59:15 +08:00
vis2k
8bcc8d29ef syntax 2021-03-09 14:57:41 +08:00
vis2k
4e71f324c6 cleanup 2021-03-09 14:56:54 +08:00
vis2k
387571722b cleanup 2021-03-09 14:55:03 +08:00
vis2k
5118f43a83 cleanup 2021-03-09 14:51:50 +08:00
vis2k
57432d94c9 NetworkVisibility: improve obsolete message 2021-03-09 14:05:11 +08:00
vis2k
d8e2f1650f cleanup 2021-03-09 11:27:09 +08:00
vis2k
c2af82f897 cleanup 2021-03-09 11:18:15 +08:00
vis2k
2be35efbad cleanup 2021-03-09 11:16:30 +08:00
vis2k
2d46c13ef5 syntax 2021-03-09 11:09:35 +08:00
vis2k
f1f51ce213 cleanup 2021-03-09 11:09:17 +08:00
vis2k
2f77fec632 cleanup 2021-03-09 10:57:42 +08:00
vis2k
e8e5f30fd6 cleanup 2021-03-08 22:50:24 +08:00
vis2k
86c0abd2b9 remove unused 2021-03-08 22:41:01 +08:00
vis2k
488d67de85 add TODO 2021-03-08 22:39:15 +08:00
vis2k
ecf6a42a2d syntax 2021-03-08 22:36:20 +08:00
vis2k
bb5513338c syntax 2021-03-08 22:34:30 +08:00
vis2k
9932b56b65 cleanup 2021-03-08 22:33:42 +08:00
vis2k
77ed0055a8 add comments 2021-03-08 22:31:03 +08:00
vis2k
4eed0ff7f1 cleanup 2021-03-08 22:29:54 +08:00
vis2k
36e7ebd50e cleanup 2021-03-08 22:19:45 +08:00
vis2k
f53ee6583c cleanup 2021-03-08 22:13:53 +08:00
vis2k
6045736266 clean up 2021-03-08 22:11:22 +08:00