Commit Graph

2065 Commits

Author SHA1 Message Date
vis2k
1d120a9d80 NetworkIdentity.RebuildObserver: move observers code above host visibility code 2020-03-04 18:38:17 +01:00
vis2k
d9ea5fdcf2 NetworkIdentityTests: RebuildObserversReturnsIfNull 2020-03-04 17:21:56 +01:00
vis2k
37e783f625 NetworkIdentityTests: RebuildObserversAddRemoveAndVisListTest that tests a full add/remove observers workflow 2020-03-04 17:17:21 +01:00
vis2k
0093a2cfe1 NetworkConnection.visList made internal so we can test RebuildObservers fully. It's a complex function and we need to be 100% sure that visList behaviour is correct. 2020-03-04 17:16:59 +01:00
vis2k
290561167d NetworkIdentityTests: RebuildObserversAddsReadyComponentConnectionsIfImplemented 2020-03-04 14:55:34 +01:00
vis2k
a5f495a774 fix: NetworkIdentity.RebuildObservers: added missing null check for observers coming from components that implement OnRebuildObservers. Previously this caused a NullReferenceException. 2020-03-04 14:55:27 +01:00
vis2k
26c0c03fd8 NetworkIdentityTests: RebuildObserversSetsHostVisibility 2020-03-04 14:34:07 +01:00
vis2k
1ddb9ae075 add comment 2020-03-04 13:21:18 +01:00
vis2k
0f110eb4b7 NetworkIdentity.RebuildObservers: put conn null/ready checks into one line 2020-03-04 13:20:39 +01:00
vis2k
4ba456439a NetworkIdentity.RebuildObservers: improve comments to explain what happens 2020-03-04 13:15:56 +01:00
vis2k
dbfd1830d3 NetworkIdentity.RebuildObservers: syntax improved 2020-03-04 13:14:26 +01:00
vis2k
1133fe4e25 forgot to remove comment 2020-03-04 09:23:23 +01:00
vis2k
8e6f5ba89c NetworkIdentityTests: RebuildObserversDoesNotAddServerConnectionsIfImplemented 2020-03-04 09:22:04 +01:00
vis2k
9c09c26a5c fix: SendToObservers missing result variable 2020-03-04 09:20:28 +01:00
vis2k
66d858e631 NetworkIdentityTests: RebuildObserversAddsReadyServerConnectionsIfNotImplemented 2020-03-04 09:17:47 +01:00
Paul Pacheco
9c81c9b2eb
refactor: SendToObserver returns void (#1539)
We calculate a bool out of SendToObserver, but it is not clear what it is
and we don't use the result at all.  So just simplify things.
2020-03-04 08:52:17 +01:00
vis2k
549c729a07 NetworkIdentityTests: AddAllReadyServerConnectionsToObservers 2020-03-03 23:43:20 +01:00
vis2k
a5602011dd rename to be 100% obvious 2020-03-03 23:31:44 +01:00
vis2k
66d3e8ddf7 NetworkIdentity.RebuildObservers code split into AddAllServerConnectionsToObservers helper function 2020-03-03 23:29:47 +01:00
vis2k
d6a93275f9 NetworkIdentity.RebuildObservers: result renamed to rebuildOverwritten because that's what it's for 2020-03-03 23:22:49 +01:00
vis2k
6eedd2405c NetworkIdentity.GetNewObservers: result renamed to rebuildOverwritten because that's what it's for 2020-03-03 23:22:37 +01:00
vis2k
15a47ca19c NetworkIdentityTests: RebuildObserversOnlyAddsOwnPlayerIfReady 2020-03-03 23:05:41 +01:00
vis2k
3e8c6089b0 NetworkIdentityTests: RebuildObserversAddsOwnReadyPlayer 2020-03-03 23:05:41 +01:00
Paul Pacheco
60226797ac tests: Fix tests
CI/CD pipeline runs in headless mode,  so this check is invalid
2020-03-03 15:43:25 -06:00
Paul Pacheco
108c83a43a refactor: use NUnit idiomatic constraints
Why?
Suppose you have this:
```cs
Assert.That(manager.networkAddress == "localhost");
```
and suppose it fails,   it will give you:
"Expected True,  but got False"
which does not give you anything useful.

Suppose you have this instead:
```cs
Assert.That(manager.networkAddress, Is.EqualTo("localhost"));
```
Suppose it fails,  now it will give you a much more useful error message:
"Expected 'localhost'  but got 'xxxxx'"

It makes debugging tests a lot easier.
2020-03-03 15:39:25 -06:00
vis2k
fb9c55bf6e NetworkIdentityTests cleaned up 2020-03-03 22:37:13 +01:00
vis2k
b2a094930f syntax 2020-03-03 22:27:27 +01:00
vis2k
a302306dd1 NetworkIdentityTests: GetNewObserversFalseIfNoComponents test 2020-03-03 22:24:13 +01:00
vis2k
102484b811 NetworkIdentityTests: GetNewObserversClearsHashSet test 2020-03-03 22:24:13 +01:00
vis2k
260ca9a491 NetworkIdentityTests: GetNewObservers test 2020-03-03 22:24:13 +01:00
vis2k
01f5fb4a94 NetworkIdentity.RebuildObservers: GetNewObservers code split into separate function 2020-03-03 22:24:13 +01:00
Paul Pacheco
e00e8195bb Simplify 2020-03-03 10:40:57 -06:00
vis2k
4bc1c3eb20 NetworkIdentityTests HandleEvent tests invalid component index / function hash too 2020-03-03 13:19:09 +01:00
vis2k
bbcc3599ef NetworkIdentityTests HandleRpc tests invalid component index / function hash too 2020-03-03 13:19:03 +01:00
vis2k
b9dab2ca7a NetworkIdentityTests HandleCommand tests invalid component index / function hash too 2020-03-03 13:18:55 +01:00
vis2k
ea54890dca NetworkIdentityTests: HandleCommand/Rpc/SyncEvent tests improved 2020-03-03 13:15:54 +01:00
vis2k
6cdb9a3d8b NetworkIdentityTests: HandleSyncEvent 2020-03-03 13:08:58 +01:00
vis2k
0f362ec1cf NetworkIdentityTests: HandleRPC 2020-03-03 13:06:20 +01:00
vis2k
598766764c typo 2020-03-03 13:03:25 +01:00
vis2k
0b257fbd3a NetworkIdentityTests: HandleCommand 2020-03-03 13:02:44 +01:00
vis2k
bd9747e735 NetworkReader/WriterTest: benchmark doesn't need to run each time, takes at least 6s together. 2020-03-03 12:15:07 +01:00
uwee
67462553fb
test add NetworkManagerTests (#1537)
* test add NetworkManagerTests

not complete and 1 does not reliably work

* fix broken client test

* remove incomplete test for NG

* added more state checking

* shutdown state test

* add startposition tests
2020-03-03 09:28:28 +01:00
Lymdun
ca166bd95f
Improve LocalConnectionTest (#1538) 2020-03-02 22:41:27 +01:00
vis2k
e9d4f04da5 typo 2020-03-02 15:55:01 +01:00
vis2k
7df6e79b61 NetworkIdentityTests: AssignAndRemoveClientAuthority improved 2020-03-02 15:54:47 +01:00
vis2k
4b6affb523 NetworkIdentityTests: AssignAndRemoveClientAuthority test improved 2020-03-02 15:50:32 +01:00
vis2k
eb958ae182 NetworkIdentity.AssignClientAuthority: null check first. more obvious error message and easier to test. 2020-03-02 15:50:13 +01:00
vis2k
66a9127b96 NetworkIdentityTests: AssignAndRemoveClientAuthority 2020-03-02 15:40:26 +01:00
vis2k
9c8d6f3cb1 NetworkIdentityTests: ServerUpdate 2020-03-02 13:28:10 +01:00
vis2k
97a5a1211d add comment 2020-03-02 12:13:23 +01:00
vis2k
b787274732 forgot to save 2020-03-02 12:07:56 +01:00
vis2k
5a1bfdf1a4 NetworkIdentity.MirrorUpdate renamed to ServerUpdate because that's what it does 2020-03-02 12:06:12 +01:00
vis2k
de4a7107a6 NetworkIdentityTests: Reset 2020-03-02 11:44:36 +01:00
vis2k
e43ed3e09d NetworkIdentityTests: ClearAllComponentsDirtyBits 2020-03-02 11:14:27 +01:00
vis2k
f9fdca3598 NetworkIdentityTests: ClearDirtyComponentsDirtyBits test improved 2020-03-02 11:09:16 +01:00
vis2k
eac93e1a27 NetworkIdentityTests: ClearDirtyComponentsDirtyBits 2020-03-02 11:07:07 +01:00
uwee
df430e1bfc
Test coverage for NetworkTransformChild (#1536)
* Test coverage for NetworkTransformChild

* add missing meta file

* applied codacy suggestions
2020-03-02 09:44:39 +01:00
uwee
05a44b9c6f
adds missing addplayertest (#1530)
* adds missing addplayertest

code is set to depreciate but should still be covered until then.

* remove json file from commit

opps

* updated to include suggestions from Codacy
2020-03-02 09:43:10 +01:00
Paul Pacheco
22636c9a6c
Disable telepathy tests until they are fixed (#1534) 2020-03-02 09:40:04 +01:00
vis2k
65645dd266 NetworkIdentity: AssignClientAuthority moved above RemoveClientAuthority 2020-03-01 12:05:46 +01:00
vis2k
508e253bb1 NetworkIdentityTests: AddObserver 2020-03-01 12:02:25 +01:00
vis2k
8cd50cf9f2 NetworkIdentityTests: make sure that calling OnStartClient twice will return early 2020-03-01 11:54:23 +01:00
vis2k
90cece63dc NetworkIdentityTests: ClearObservers 2020-03-01 11:54:02 +01:00
vis2k
d9036a6a79 CustomAttributeTests: use channels enum 2020-03-01 11:41:25 +01:00
uwee
b440130647
adds test coverage for CustomAttribute (#1531) 2020-03-01 11:13:48 +01:00
vis2k
3bc38d8938 copy paste error 2020-02-28 16:56:38 +01:00
vis2k
4357752f91 NetworkIdentityTests: OnNetworkDestroy 2020-02-28 16:55:22 +01:00
vis2k
6b35bf0133 NetworkIdentity.OnNetworkDestroy moved upwards and catches exceptions now too 2020-02-28 16:55:14 +01:00
vis2k
62c5cf4b14 fix error log 2020-02-28 16:54:55 +01:00
vis2k
5ed5f84409 fix: NetworkIdentity.OnStartLocalPlayer catches exceptions now too. fixes a potential bug where an exception in PlayerInventory.OnStartLocalPlayer would cause PlayerEquipment.OnStartLocalPlayer to not be called 2020-02-28 16:33:59 +01:00
vis2k
4926bb818a add comments 2020-02-28 16:32:48 +01:00
vis2k
fc7d2e8df6 NetworkIdentity: OnStartLocalPlayer moved next to OnStartClient 2020-02-28 16:31:39 +01:00
vis2k
1c356bff44 NetworkIdentity: remove redundant OnUpdateVars function 2020-02-28 16:26:05 +01:00
vis2k
782848094b NetworkIdentityTests: OnStartLocalPlayer 2020-02-28 16:23:14 +01:00
vis2k
bbaad910f7 NetworkIdentityTests: OnDeserializeSafelyShouldDetectAndHandleDeSerializationMismatch 2020-02-28 16:10:48 +01:00
vis2k
fe7c1c7f50 improve previous test 2020-02-28 15:43:01 +01:00
vis2k
0df42ebf75 NetworkIdentityTests: OnSerializeAllSafelyShouldDetectTooManyComponents 2020-02-28 15:41:34 +01:00
vis2k
bfe09ab141 NetworkIdentityTests: OnSerializeAndDeserializeAllSafely 2020-02-28 15:35:37 +01:00
vis2k
a5269b4261 NetworkIdentityTests: OnCheckObserver 2020-02-28 11:58:51 +01:00
vis2k
f21b80b8b0 NetworkIdentityTests: OnSetHostVisibilityCallsComponentsAndCatchesExceptions 2020-02-27 10:23:44 +01:00
vis2k
cd4e39729e NetworkIdentityTests: NotifyAuthorityCallsOnStartStopAuthority 2020-02-27 10:19:16 +01:00
vis2k
44addfa336 NetworkIdentityTests: rename 2020-02-27 10:10:54 +01:00
vis2k
47b1aa7400 NetworkIdentityTests: OnStopAuthorityComponentExceptionIsCaught 2020-02-27 10:10:07 +01:00
vis2k
b62487cf87 NetworkIdentity.OnStopAuthority made internal for consistency with OnStartServer/OnStartClient, and so that we can test it 2020-02-27 10:08:45 +01:00
vis2k
e87c1d6a26 add comments 2020-02-27 10:08:36 +01:00
vis2k
85aae6482d NetworkIdentityTests: OnStartAuthorityComponentExceptionIsCaught 2020-02-27 10:06:56 +01:00
vis2k
0965283c53 NetworkIdentity.OnStartAuthority made internal for consistency with OnStartServer/OnStartClient, and so that we can test it 2020-02-27 10:06:46 +01:00
vis2k
6183cae611 NetworkIdentityTests: OnStartClient test makes sure that OnStartClient was called exactly once 2020-02-27 10:05:07 +01:00
vis2k
f6c8e0e89e NetworkIdentityTests: OnStartServer test makes sure that OnStartServer was called exactly once 2020-02-27 10:04:58 +01:00
vis2k
617bd0a175 NetworkIdentity.OnStartClient: added comment 2020-02-27 09:53:24 +01:00
vis2k
53499f031f NetworkIdentityTests: OnStartClientComponentExceptionIsCaught 2020-02-27 09:53:24 +01:00
Paul Pacheco
59faa81926
fix: build in IL2CPP (#1524)
The weaver generated code now builds properly under IL2CPP
fixes #1519
fixes #1520
2020-02-26 18:02:14 -06:00
vis2k
ae451e6fe0 NetworkIdentityTests: OnStartServerInHostModeSetsIsClientTrue to make sure that isClient is true in OnStartServer if in host mode. we fixed the bug recently, now we have a test too 2020-02-26 22:08:47 +01:00
vis2k
6f3c286a62 Tests: MemoryTransport for easier testing 2020-02-26 21:56:55 +01:00
vis2k
89859c9fd4 NetworkIdentityTests: OnStartServerComponentExceptionIsCaught 2020-02-26 20:01:21 +01:00
vis2k
1b624f12e0 add comment 2020-02-26 19:55:27 +01:00
vis2k
42c0128f18 NetworkIdentityTests: OnValidateSetupIDsSetsEmptyAssetIDForSceneObject 2020-02-26 19:42:01 +01:00
vis2k
a0f798f65f NetworkIdentityTests: SetSceneIdSceneHashPartInternal 2020-02-26 19:34:35 +01:00
vis2k
12d2c68301 NetworkIdentityTest: make sure that it's added to sceneId dict too 2020-02-26 19:25:20 +01:00
vis2k
8ca4deb61d NetworkIdentityTests: AssignSceneID 2020-02-26 19:23:32 +01:00
vis2k
4b430d98f7 NetworkIdentityTests: RemoveObserverInternal 2020-02-26 19:12:34 +01:00
vis2k
4d2c81e12e NetworkIdentityTests: SetClientOwner test to make sure the previous commit's bug doesn't happen again 2020-02-26 18:30:55 +01:00
vis2k
548db52fdf fix: NetworkIdentity.SetClientOwner: overwriting the owner was still possible even though it shouldn't be. all caller functions double check and return early if it already has an owner, so we should do the same here. 2020-02-26 18:30:30 +01:00
vis2k
1a9625ee4a NetworkIdentity.SetClientOwner: improve error message 2020-02-26 18:28:57 +01:00
vis2k
4269cfe43c NetworkIdentityTests: cleanup spawned dict too 2020-02-26 18:19:11 +01:00
vis2k
ebe12b6cdb NetworkIdentityTest: GetSetAssetId 2020-02-26 18:15:14 +01:00
vis2k
22ee387470 NetworkIdentityTests: proper GameObject cleanup 2020-02-26 18:12:45 +01:00
vis2k
66776a744d NetworkServer.UnSpawn test 2020-02-26 17:40:07 +01:00
vis2k
29fe487954 NetworkIdentity.IsMarkedForReset helper function to check reset state 2020-02-26 17:39:57 +01:00
vis2k
8a05826ca4 NetworkServerTest.SpawnObject: make sure that it doesn't touch non-scene-objects 2020-02-26 17:30:19 +01:00
vis2k
708d7838d6 NetworkServerTest: SpawnObjects 2020-02-26 17:20:35 +01:00
vis2k
d4d524dad2 fix: NetworkServer.SpawnObjects: return false if server isn't running 2020-02-26 17:16:38 +01:00
vis2k
cdfc1752f2 NetworkServerTest: ValidateSceneObject 2020-02-26 17:08:36 +01:00
vis2k
e409ed8f48 NetworkServer.ValidateSceneObject made internal so it can be tested and reused if needed 2020-02-26 17:01:31 +01:00
vis2k
1be758b12b syntax 2020-02-26 17:01:10 +01:00
vis2k
c8fbea387d update comment 2020-02-26 16:57:09 +01:00
vis2k
bba4ebd154 NetworkServerTest: CommandTest tries invalid netid and command without authority too 2020-02-26 10:27:36 +01:00
vis2k
038e3c1969 NetworkServerTest: HideForConnection 2020-02-26 10:14:42 +01:00
vis2k
9bdfb676e3 NetworkServerTest: ShowForConnection 2020-02-26 10:11:00 +01:00
vis2k
5cdf02b258 NetworkServerTest: GetNetworkIdentity 2020-02-25 22:25:47 +01:00
vis2k
67a2a85cb9 NetworkServer.GetNetworkIdentity made internal so it can be tested and reused in other places if needed 2020-02-25 22:25:39 +01:00
vis2k
e7c9dc4f6e NetworkServerTest: SendToClientOfPlayer 2020-02-25 22:13:58 +01:00
vis2k
c2afc05692 NetworkServerTest: RegisterUnregisterClearHandlerTest 2020-02-25 22:07:44 +01:00
vis2k
212af3fc9d NetworkServerTest: RegisterHandlerTest 2020-02-25 22:01:48 +01:00
vis2k
d4f21c0818 remove unused var 2020-02-25 11:53:04 +01:00
vis2k
48bdc68906 NetworkServerTest: SendToAllTest 2020-02-25 11:35:15 +01:00
vis2k
4596b19dd9 fix: SendToReady sends to that exact connection if it is detected as local connection, instead of falling back to the .localConnection field which might be something completely different. 2020-02-25 11:14:26 +01:00
vis2k
4b90aafe12 fix: SendToAll sends to that exact connection if it is detected as local connection, instead of falling back to the .localConnection field which might be something completely different. 2020-02-25 11:13:59 +01:00
vis2k
4267983139 fix: SendToObservers sends to that exact connection if it is detected as local connection, instead of falling back to the .localConnection field which might be something completely different. 2020-02-25 11:13:38 +01:00
vis2k
a497803de0 NetworkServerTests: use call counts instead of bools to make sure that it's called exactly once 2020-02-25 11:00:35 +01:00
vis2k
69bb1574f0 NetworkServerTest: ActivateHostSceneCallsOnStartClient 2020-02-25 10:36:40 +01:00
vis2k
f378333000 NetworkServer.ActivateLocalClientScene renamed to ActivateHostScene because that's what it really does. It does NOT do something for every local client on a client. Only for a host. 2020-02-25 10:31:30 +01:00
vis2k
5efaa4af1a CommandMessageCallsCommandTest: use two components to make sure that the correct one is used by the command 2020-02-24 15:44:05 +01:00
vis2k
1315bd3dde CommandMessageCallsCommandTest: proper usage of weaver generated command code (static!) 2020-02-24 15:40:06 +01:00
vis2k
6d2b4eb102 remove comment 2020-02-24 15:37:31 +01:00
vis2k
e6b12133d1 remove comment 2020-02-24 15:35:46 +01:00
vis2k
3eb1e8968c add comment 2020-02-24 15:35:16 +01:00
vis2k
02c31d0805 NetworkServerTest: CommandMessageCallsCommandTest to run a full command through our pipeline 2020-02-24 15:31:53 +01:00
vis2k
e9c6f6f2a9 NetworkBehaviour.GetMethodHash made internal for tests 2020-02-24 15:31:53 +01:00
vis2k
e6cd2e2280 NetworkBehaviour.RegisterRpc/Command/EventDelegate made public for tests. internal won't work because they are called from outside assemblies like NetworkTransform. protected won't work because then we can't test them from the outside. 2020-02-24 15:31:53 +01:00
vis2k
31af385a70 NetworkBehaviour.ClearDelegates added for tests 2020-02-24 15:31:53 +01:00
vis2k
215e973903 NetworkServerTest: ReadyMessageSetsClientReadyTest 2020-02-24 14:46:58 +01:00
vis2k
dc29106370 NetworkServerTest.TearDown rests state 2020-02-24 14:32:41 +01:00
vis2k
ea0b20636b NetworkServerTest: SetAllClientsNotReadyTest 2020-02-24 14:31:30 +01:00
vis2k
012c053597 NetworkServerTest: SetClientReadyAndNotReadyTest 2020-02-24 11:26:19 +01:00
vis2k
3bd947a973 NetworkServerTest: OnDataReceivedInvalidConnectionIdTest 2020-02-24 11:17:53 +01:00
vis2k
e49f4e0aff NetworkServerTest: OnDataReceivedTest 2020-02-24 11:14:11 +01:00
vis2k
ad0d20144a NetworkServerTests: ConnectDuplicateConnectionIdsTest 2020-02-24 10:51:04 +01:00
vis2k
9c325abbd8 NetworkServerTests: OnConnectedOnlyAllowsGreaterZeroConnectionIdsTest 2020-02-24 10:48:39 +01:00
vis2k
47a4ac7ff7 NetworkServerTest: SetLocalConnectionTest checks overwrite too 2020-02-24 10:43:19 +01:00
Paul Pacheco
f0a993c106
fix: properly detect NT rotation (#1516) 2020-02-23 20:46:06 +01:00
MrGadget
8417465413
Make StartHost Not virtual (#1513) 2020-02-23 14:40:06 +01:00
vis2k
1cce3164b9 NetworkServerTest: DisconnectAllTest 2020-02-23 11:43:08 +01:00
vis2k
357ad0ffb6 add comment 2020-02-23 11:40:47 +01:00
vis2k
a57a46764e NetworkServerTest: DisconnectAllConnectionsTest 2020-02-23 11:40:01 +01:00
vis2k
fe1b158b22 NetworkServerTest: RemoveLocalConnectionTest 2020-02-23 11:36:14 +01:00
vis2k
ad0442be02 NetworkServerTest: RemoveConenctionTest 2020-02-23 11:30:58 +01:00
vis2k
8b16c7c343 NetworkServerTest: AddConnectionTest tests duplicate too 2020-02-23 11:29:08 +01:00
vis2k
12faf65d18 NetworkServerTest: AddConnectionTest 2020-02-23 11:25:20 +01:00
vis2k
a0d6a02a99 NetworkServer.Reset made obsolete 2020-02-23 11:20:42 +01:00
vis2k
5de22d2ff2 NetworkServerTests: ShutdownCleanupTest improved 2020-02-23 11:18:54 +01:00
vis2k
45ba9a9939 syntax 2020-02-23 11:17:40 +01:00
vis2k
7b6f1326eb NetworkServertest: LocalClientActiveTest 2020-02-23 11:17:17 +01:00
vis2k
1e198e4bcc remove unnecessary assert 2020-02-23 11:16:05 +01:00
vis2k
7333cc8f46 NetworkServerTest: SetLocalConnectionTest 2020-02-23 11:15:03 +01:00
vis2k
ec23c1fc58 NetworkServerTests: ShutdownCleanupTest 2020-02-23 11:13:11 +01:00
vis2k
ab98846566 NetworkServerTest: ConnectionsDictTest 2020-02-23 11:06:35 +01:00
vis2k
933ce4a3d5 NetworkServerTests: DisconnectMessageHandlerTest 2020-02-23 11:02:05 +01:00
vis2k
77929e9aa0 NetworkServerTests: ConnectMessageHandlerTest 2020-02-23 11:00:16 +01:00
vis2k
b1ff0757ee NetworkServerTest: MaxConnectionsTest 2020-02-23 10:58:07 +01:00
vis2k
f750d77a8c NetworkServerTests: IsActiveTest 2020-02-23 10:19:38 +01:00
Chris Langsenkamp
e1d1d41ed6 fix: Room example to use new override 2020-02-23 02:43:53 -05:00
Chris Langsenkamp
b5dfcf45bc feat: Added NetworkConnection to OnRoomServerSceneLoadedForPlayer 2020-02-22 18:46:47 -05:00
Chris Langsenkamp
b39b4ffc62 Removed extraneous blank line 2020-02-22 17:40:58 -05:00
MrGadget
f53b12b2f7
feat: Cosmetic Enhancement of Network Manager (#1512)
* Cosmetic enhancement to Network Manager

* Removed region block
2020-02-22 20:25:46 +01:00
Chris Langsenkamp
8487be877d Added missing blank line 2020-02-20 19:45:27 -05:00
MrGadget
8bf6690312
Remove Redundant Set of mode = Offline (#1510)
* Remove redundant code

* Removed blank line
2020-02-20 19:19:28 +01:00
MrGadget
b33515ba8f
Rearranged StartHost methods (#1506)
* Rearranged StartHost methods

* Added braces

* Moved and added comments.

* moved finishStartHostPending per Vis2k request
2020-02-20 12:58:58 +01:00
MrGadget
b8bcd9ad25
fix: Add missing channelId to NetworkConnectionToClient.Send calls (#1509)
* fix: Add missing channelId to NetworkConnectionToClient.Send calls

* Updated ChangeLog

* Added braces

* Found one more
2020-02-20 09:51:03 +01:00
MrGadget
61fdd892d9
fix: return & continue on separate line (#1504)
* fix: return & continue on separate line

* Update Assets/Mirror/Runtime/Transport/Telepathy/Server.cs
2020-02-17 16:48:41 +01:00
MrGadget
ecc0659b87
feat: Check for client authority in NetworkAnimator Cmd's (#1501) 2020-02-15 16:18:01 +01:00
MrGadget
8b359ff6d0
feat: Check for client authority in CmdClientToServerSync (#1500) 2020-02-15 08:33:14 +01:00
MrGadget
7bb80e3b79
feat: NetworkSceneChecker use Scene instead of string name (#1496)
* NetworkSceneChecker use Scene instead of string name

* Added comment
2020-02-15 08:32:34 +01:00
MrGadget
4c4a52bff9
fix: Host Player Ready Race Condition (#1498) 2020-02-15 08:32:12 +01:00
Chris Langsenkamp
1662c5a139 fix: Fixed NetworkRoomManager Template 2020-02-14 00:45:04 -05:00
Chris Langsenkamp
853e5ab7d7 Simplified Additive example code 2020-02-12 20:09:37 -05:00
Chris Langsenkamp
e467921377 fixed obsolete comment 2020-02-11 11:55:22 -05:00
Chris Langsenkamp
79708d94a2 breaking: bump version to 10 2020-02-11 09:39:06 -05:00
MrGadget
0e80e1996f
feat: Block Play Mode and Builds for Weaver Errors (#1479)
* WIP first draft

* Much closer now

* Whoop! There it is!

* Added comment

* Restore Player

* Moved WeaveFailed back where it was

* Restore delegate wireup

* Moved the delegate wireup and added comments

* Formatted comment and error message

* Added comment

* Use a separate session bool

* Code formatting

* Delete Mirror.Editor.asmdef

* Add Debug

* No WeaveExistingAssemblies

* Revert "No WeaveExistingAssemblies"

This reverts commit 50d4790ee4.

* Revert "Add Debug"

This reverts commit 185b403361.

* Revert "Delete Mirror.Editor.asmdef"

This reverts commit f7647cce3f.

* Update Assets/Mirror/Editor/Mirror.Editor.asmdef

* Update Assets/Mirror/Editor/Mirror.Editor.asmdef

* reverted changes to Mirror.Editor.asmdef

* Re-applied change to Mirror.Editor.asmdef

* commented Debug line
2020-02-10 23:23:34 +01:00
MrGadget
bb55baa679
feat: Disposable PooledNetworkReader / PooledNetworkWriter (#1490)
* Inherit IDisposable

* using NetworkWriter from pool

* Remove Recycles

* Add comments to Recycle

* Add comments to Recycle

* using NetworkReader from pool

* Unity doesn't like the simplified form

* combined usings

* Updated Reader / Writer Tests

* wip

* Disposable NetworkReaderPool:NetworkReader

* uncomment NetworkDiagnostics.OnReceive

* Removed unnecessary constructor

* Implemented NetworkWriterPool : NetworkWriter

* code cleanup

* Separated classes: PooledNetworkReader / PooledNetworkWriter

* Removed blank line

* Update Assets/Mirror/Tests/Editor/NetworkReaderTest.cs

* Test restored

Co-authored-by: Paul Pacheco <paulpach@gmail.com>
2020-02-10 22:26:55 +01:00
Chris Langsenkamp
436d8fe831 fixed xml comment 2020-02-10 16:18:11 -05:00
Chris Langsenkamp
745aea8f9a Added Deprecated dates to Obsoletes 2020-02-10 16:14:22 -05:00
Paul Pacheco
0f10c72744
feat: supports scriptable objects (#1471)
* feat: supports scriptable objects

Now you can pass scriptable objects in commands, rpcs and syncvars
For example:

```cs
class Weapon: ScriptableObject
{
    public string name;
    public string description;
    public int damage;
    ...
}

class Player : NetworkBehaviour
{

    [SyncVar]
    Weapon equipped;

    ...
}
```

Scriptable objects will be created in the client using
ScriptableObject.CreateInstance.  If users want something else
they can provide a custom serializer (that has not changed)

* fix: remove scriptableobject error Tests

The test that checks that scrscriptableobjects give error is no
longer valid
2020-02-09 20:16:13 +01:00
Chris Langsenkamp
ab6a03b9fa remove SerializeField attribute 2020-02-08 21:08:38 -05:00
Chris Langsenkamp
831db2f033 Updated comments 2020-02-08 21:07:39 -05:00
Chris Langsenkamp
6431c28a12 OnEnable is safer than Awake 2020-02-08 21:02:22 -05:00
MrGadget
90d92fc0cf
Add headless check to Discovery (#1485) 2020-02-07 12:13:09 +01:00
vis2k
9f7c30c1ac
fix #1475: isClient is true in OnDestroy on host/client mode again. Reverts commit d00c95bb55 (#1483)
* fix #1475: isClient is true in OnDestroy on host/client mode again. Reverts commit d00c95bb55

* add comment

* ClientScene.InternalAddPlayer doesn't need to set isClient anymore
2020-02-07 10:14:54 +01:00
Chris Langsenkamp
c06ea6b6c8 Fix comment 2020-02-06 11:51:38 -05:00
vis2k
3568dc356c NetworkIdentityTests: HostMode isLocalPlayer check added 2020-02-06 13:16:13 +01:00
vis2k
85e9a0aa13 NetworkIdentityTests: HostMode isServer/isClient/isLocalPlayer test added 2020-02-06 12:42:19 +01:00
vis2k
09ec344821 NetworkIdentityTests: OnStartServer isServer/isClient/isLocalPlayer test added 2020-02-06 12:36:36 +01:00
MrGadget
58df3fd6d6
feat: Added Read<T> Method to NetworkReader (#1480)
* Added Read<T> Method

* Renamed to ReadMessage
2020-02-06 11:39:39 +01:00
MrGadget
02e4245f3d
BREAKING: Rename NetworkWriter Write<T>to WriteMessage (#1482) 2020-02-06 11:38:54 +01:00
Chris Langsenkamp
1c58891e32 Formatted comment and error message 2020-02-05 10:29:49 -05:00
Chris Langsenkamp
86a2c6f52c Added comments for WeaveFailed 2020-02-05 10:15:09 -05:00
Chris Langsenkamp
4108b79340 Code cleanup 2020-02-05 00:53:14 -05:00
Chris Langsenkamp
34fc52bd50 Added empty AddComponent attribute 2020-02-04 15:05:57 -05:00
Chris Langsenkamp
c7e269d0c5 Removed extraneous comment 2020-02-04 14:55:42 -05:00
vis2k
f614bc8f3a Icon updated for transparent border 2020-02-04 20:53:48 +01:00
Paul Pacheco
36980f4a34
Refactor: Rename method to avoid confussion (#1477) 2020-02-03 10:00:58 -06:00
Paul Pacheco
d0b0bc92bc
fix: weaver support array of custom types (#1470)
* WIP

* Proposed Rearrange

* Rearrange Code

* Unit test for PR

* unit test

* unit test

* Update TestingScriptableObjectArraySerialization.cs

Improving code

* Update TestingScriptableObjectArraySerialization.cs

* Remove blank lines

* remove blank space

* Remove leftover log

Co-authored-by: MrGadget <chris@clevertech.net>
Co-authored-by: Uchiha I_A_H_I <jkaran.sharma101@gmail.com>
2020-02-03 14:00:37 +01:00
Paul Pacheco
1736bb0c42
fix: call callback after update dictionary in host (#1476)
When the callback for SyncDictionary is called in the server
for set or add
it is getting called before the syncdictionary is updated.

In the client this happens after.  

Example:

```cs
   public void OnScoreUpdatedCallback(ScoreSyncDict.Operation op, uint ident, int score) 
   {
       if (op == ScoreSyncDict.Operation.OP_SET) 
              Debug.Log($"The value in the dictionary is {scoreDict[ident]}");
   }
```

In host mode this prints the previous value.   In client mode this prints the current value.  This PR fixes this problem and makes both print the current value
2020-02-02 20:29:31 -06:00
Chris Langsenkamp
c2e7466c43 Updated Preprocessor defines 2020-02-02 15:18:49 -05:00
Chris Langsenkamp
c827216a66 Restructured prefabs in examples 2020-02-02 14:55:49 -05:00
MrGadget
eee969201d
Renamed localEulerAnglesSensitivity (#1474)
BREAKING CHANGE:  localEulerAnglesSensitivity renamed to localRotationSensitivity
2020-02-02 13:35:07 -06:00
Chris Langsenkamp
8816ce5d03 Add headers for inspector 2020-02-02 13:53:25 -05:00
MrGadget
7c1b5ab5f8
Add Header to NetworkBehaviourInspector (#1473) 2020-02-02 13:40:30 -05:00
MrGadget
9257112c65
feat: Implemented NetworkReaderPool (#1464)
* Implement NetworkReaderPool

* Reset Position

* Debug logging removed

* SetBuffer methods internal

* Edited comment
2020-02-01 14:05:09 +01:00
Chris Langsenkamp
d0e493ac92 Updated ScriptTemplates 2020-01-31 21:25:38 -05:00
Chris Langsenkamp
a28ccbb477 Allow Room Manager Additional GamePlay Scenes 2020-01-31 21:18:01 -05:00
Chris Langsenkamp
1433d369c8 Applied Mirror Icon to Discovery components 2020-01-30 15:40:23 -05:00
MrGadget
28212aa8d7
Message Tests (#1463)
* Added UpdateVarsMessageTest

* commit staged

* Added SpawnMessageTest

* Delete MessageTests.cs

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Added RemovePlayerMessageTest

* Added ReadyMessageTest

* Added ObjectSpawnStartedMessageTest

* Added ObjectSpawnFinishedMessageTest

* Added ObjectHideMessageTest

* Added ObjectDestroyMessageTest

* Added NotReadyMessageTest

* Added DisconnectMessageTest

* Added ConnectMessageTest

* Added NetworkPingMessageTest

* Updated NetworkPingMessageTest

* Added NetworkPongMessageTest

* Updated ErrorMessageTest

* Tests in alphabetic order
2020-01-30 09:42:05 +01:00
MrGadget
e44ca7f334
BasicAuthenticatorTest (#1459)
* First Draft

* Second Draft

* Third Draft

* First 2 tests that work
2020-01-29 20:44:30 +01:00
vis2k
93a9eb8339 Disable two telepathy tests that sometimes fail in Unity's mono version 2020-01-29 20:29:21 +01:00
vis2k
d0d77b661c fix: Telepathy reverted to older version to fix freezes when calling Client.Disconnect on some platforms like Windows 10 2020-01-29 20:20:18 +01:00
Paul Pacheco
e75b45f888
feat: LAN Network discovery (#1453)
* Fix typo

* Updated Changelog

* first commit

* Add example for discovery

* NetworkDiscovery component should be added

* fixed UI

* Fix some warnings

* refactor: network discovery reimplemented

* Remove unused GUIstyle

* Fix namespaces

* Just send to the broadcast address

* Fix indentation

* Log errors in ClientListen

* Code formatting cleanup, HelpURL's fixed, comments revised. (#38)

* Transport can now provide server uri

* work with any transport by passing uri

* Move discovery initialization to start

* feat: Discovery can now be easily customized per game

* Use generics to simplify api

* Renamed ServerInfo -> ServerResponse

* Rename method

* Moved up one folder

* Move ServerId to NetworkDiscovery

* tests now reference Mirror.Discovery

* Cleaned up blank space

* Disable GUID apparently fixes it

* Use UnityEvents for ease of use

* Remove noisy log

* remove blank spaces

* Process request receives the client endpoint

* use consistent name for parameters

* Remove white space

* Keep it minimalistic,  we don't need age or totalPlayers

* Comment non obvious property

* Don't break transports

* Documentation and image

* Code formatting

* removed privates

* Added Range attribute

* Rename ActiveDiscoverySecondInterval

* Revised NetworkDiscovery doc

* Swapped field order (Cosmetics)

* Added ScriptTemplate

* Update ProjectSettings/ProjectVersion.txt

* Updated ScriptTemplate

* Updated xml comment and ScriptTemplate

* Updated ScriptTemplate

* Improve xmldocs

* Improve xmldocs

* Remove leftover comment

* Renamed event

* Moved discovery inside components

* Keep parameter names consistent

* Provide a guide for network discovery

* XML Comments and ScriptTemplate

* Moved Credits

* fixed template

* Removed comment

* removed comment

* xml comments and template

* fixed method name

* fixed method and template

* removed semicolon

* fixed template

* fixed method and template

* fixed template

* fixed template

* Fix copypasta error

* Show error if no url is available

Network Discovery now shows an error if the transport does not support
providing Url

* Grammar fix

* Extended Template

* fixed template

* Added guide link to template

* New image

* Update NetworkDiscovery.md

* Updated Guid Doc and Template

* fixed bullets

* Remove unnecessary using

* Make it like Mirror's

* Update ScriptTemplates Image & Zip

* Removed from Deprecations

* Updated ChangeLog

* Updated ChangeLog

* Update NetworkDiscovery.md

Remove last line...this was copied to the paragraph above the code block

Co-authored-by: MrGadget <chris@clevertech.net>
2020-01-29 09:56:29 +01:00
MrGadget
9621b0bd30
Update PreprocessorDefines (#1456)
* Update PreprocessorDefines

* Removed 8

* Update PreprocessorDefine.cs
2020-01-29 09:53:39 +01:00
MrGadget
d52aa7e173 Prevent AddPlayer after Additve Scene operation (#1458) 2020-01-28 22:54:46 +01:00
Paul Pacheco
b916064856 breaking: Transports can now provide their Uri (#1454)
* Fix typo

* Updated Changelog

* first commit

* Add example for discovery

* NetworkDiscovery component should be added

* fixed UI

* Fix some warnings

* refactor: network discovery reimplemented

* Remove unused GUIstyle

* Fix namespaces

* Just send to the broadcast address

* Fix indentation

* Log errors in ClientListen

* Code formatting cleanup, HelpURL's fixed, comments revised. (#38)

* Transport can now provide server uri

* work with any transport by passing uri

* Move discovery initialization to start

* feat: Discovery can now be easily customized per game

* Use generics to simplify api

* Renamed ServerInfo -> ServerResponse

* Rename method

* Moved up one folder

* Move ServerId to NetworkDiscovery

* tests now reference Mirror.Discovery

* Cleaned up blank space

* Disable GUID apparently fixes it

* Use UnityEvents for ease of use

* Remove noisy log

* remove blank spaces

* Process request receives the client endpoint

* use consistent name for parameters

* Remove white space

* Keep it minimalistic,  we don't need age or totalPlayers

* Comment non obvious property

* Don't break transports

* Documentation and image

* Code formatting

* removed privates

* Added Range attribute

* Rename ActiveDiscoverySecondInterval

* Revised NetworkDiscovery doc

* Swapped field order (Cosmetics)

* Added ScriptTemplate

* Update ProjectSettings/ProjectVersion.txt

* Updated ScriptTemplate

* Updated xml comment and ScriptTemplate

* Updated ScriptTemplate

* Improve xmldocs

* Improve xmldocs

* Remove leftover comment

* Renamed event

* Moved discovery inside components

* Keep parameter names consistent

* Provide a guide for network discovery

* XML Comments and ScriptTemplate

* Moved Credits

* fixed template

* Removed comment

* removed comment

* xml comments and template

* fixed method name

* fixed method and template

* removed semicolon

* fixed template

* fixed method and template

* fixed template

* fixed template

* Fix copypasta error

* Show error if no url is available

Network Discovery now shows an error if the transport does not support
providing Url

* breaking: Make server uri mandatory

BREAKING CHANGE: Make the server uri method mandatory in transports

Co-authored-by: MrGadget <chris@clevertech.net>
2020-01-28 22:50:52 +01:00
MrGadget
a706ef72e2 Make the Dictionary public (#1457) 2020-01-28 08:49:50 +01:00
MrGadget
a7efb13e29 feat: Mirror Icon for all components (#1452)
* Apply Icon

* Assigned Icons

* Assigned Icons

* Updated ChangeLog
2020-01-27 18:00:27 +01:00
vis2k
ab7c28ea91 Telepathy Tests added 2020-01-27 14:53:43 +01:00
vis2k
4007423db2 fix: Telepathy updated to latest version. Threads are closed properly now. 2020-01-27 14:43:00 +01:00
vis2k
ef7993cac1 MessageTests: SyncEventMessageTest 2020-01-27 14:32:31 +01:00
vis2k
8d272a4107 MessageTests: RpcMessageTest 2020-01-27 14:32:31 +01:00
vis2k
0b2965af1c MessageTests: CommandMessageTest 2020-01-27 14:32:31 +01:00
MrGadget
49529db347 Restore Empty NetworkIdentityEditor (#1455) 2020-01-27 09:18:41 +01:00
vis2k
1a08f1b95d NetworkWriterTests: benchmark test so it's easier to check performance after changes 2020-01-26 13:12:39 +01:00
Paul Pacheco
0c2556ac64 feat: network writer and reader now support uri 2020-01-25 16:16:14 -06:00
MrGadget
71c0d3b2ee
feat: Network Scene Checker Component (#1271)
* Create Network Scene Checker Component

* Move objects to subscene in client

* Remove OnStartClient

* Rewritten with static dictionary

* Updated doc

* renamed image

* Replaced image

* fixed image name

* Changed to short-circuit return in Update

* Changed to using string for key since additive scenes may be unloaded

* Added null check

* Removed commented line

* Update Assets/Mirror/Components/NetworkSceneChecker.cs

Co-Authored-By: vis2k <info@noobtuts.com>

* Moved initializer to declaration

* Removed [Scene, SerializeField]

Co-authored-by: vis2k <info@noobtuts.com>
2020-01-25 15:48:47 -05:00
Chris Langsenkamp
e58f84758e set port to 7777 2020-01-25 00:38:21 -05:00
MrGadget
dde8c5d0c5 Remove m_sceneId (#1310)
* Remove m_sceneId

* remove commented code

* copied comment from removed field

* made it full public

* Added FormerlySerializedAs

* Added HideInInspector

* Updated example
2020-01-24 22:33:55 +01:00
Chris Langsenkamp
a82fe9191f Fixed Additive Scene Visualizer 2020-01-24 12:34:08 -05:00
MrGadget
c84b00336d Fix GetSceneIdenity name typo (#1450) 2020-01-23 11:46:03 -06:00
vis2k
84fc240d00 NetworkReaderTest: stopwatch not needed, Unity already shows the time 2020-01-23 15:56:16 +01:00
vis2k
2f7a67e3f9 NetworkReaderTest: benchmark test so it's easier to check performance after changes 2020-01-23 15:51:52 +01:00
Paul Pacheco
0ed8550c02 refactor: Move Editor tests to Tests/Editor (#1449) 2020-01-22 21:35:10 +01:00
vis2k
b5a4988331 FallbackTransportTest from paul 2020-01-22 11:55:56 +01:00
vis2k
9d7513925f NetworkReaderTest to reach 100% NetworkReader coverage 2020-01-22 09:51:06 +01:00
vis2k
e798ac45de MessagePackerTest: cover UnpackMessage non generic version 2020-01-22 09:46:30 +01:00
vis2k
5736dd8d05 MessagePackerTest: cover FormatException case 2020-01-22 09:30:09 +01:00
Chris Langsenkamp
17af872f99 Use conn instead of NetworkClient 2020-01-21 21:44:15 -05:00
Chris Langsenkamp
f778b4c399 Removed unnecessary using 2020-01-21 17:35:57 -05:00
Chris Langsenkamp
71bd09417c Removed MonoBehaviour inheritance 2020-01-21 17:23:14 -05:00
Chris Langsenkamp
388a338cfa Removed commented code 2020-01-21 17:16:08 -05:00
MrGadget
c147caf30c Added ErrorMessage Test (#1448) 2020-01-21 23:01:34 +01:00
Chris Langsenkamp
cbbe82e4d1 Make roomSlots work correctly for clients 2020-01-20 20:04:09 -05:00
vis2k
15c77c6926 NetworkTransform.SerializeIntoWriterTest 2020-01-20 11:02:11 +01:00
vis2k
875f19e030 Mirror.Tests asmdef references Mirror.Components asmdef 2020-01-20 10:54:59 +01:00
Chris Langsenkamp
eef97e9a52 Code cleanup 2020-01-19 23:34:53 -05:00
Chris Langsenkamp
c57c01a47a Updated Script Templates 2020-01-19 16:45:12 -05:00
MrGadget
268753c3bd fix: Fix Room Slots for clients (#1439)
* Fix Room Slots for clients

* Removed change to ServerChangeScene
2020-01-19 11:39:26 +01:00
MrGadget
cb4be4df78 Set AllPlayersready false in the Room scene (#1440) 2020-01-19 11:38:59 +01:00
MrGadget
e4c498312e Reorder properties with headers (#1437) 2020-01-17 12:09:08 +01:00
MrGadget
f69f1743c5 feat: Add Sensitivity to NetworkTransform (#1425)
* Add Sensitivity to NetworkTransform

* Removed commented lines

* Made them floats

* Tooltips

* Added comments

* Update NetworkTransformBase.cs

Co-authored-by: vis2k <info@noobtuts.com>
2020-01-16 09:06:25 +01:00
Chris Langsenkamp
bafe3b28fd Freshen Example Appearance 2020-01-13 22:05:08 -05:00
vis2k
2186f3c7d7 clean up Pong folder 2020-01-13 17:34:55 +01:00
vis2k
cb3d9f0d08 fix: Telepathy works on .net core again 2020-01-13 17:27:44 +01:00
Paul Pacheco
0c047f9227
Remove latin placeholder text in chat window (#1430) 2020-01-12 17:07:57 -06:00
Paul Pacheco
42a2f9b853
fix: Decouple ChatWindow from player (#1429) 2020-01-12 16:53:14 -06:00
MrGadget
a0c96f8518 fix: StopHost with offline scene calls scene change twice (#1409)
* Separate StopHostClient

* Added comments

* move comment

* add comment

* Changed to loadingSceneAsync check

* Update Assets/Mirror/Runtime/NetworkManager.cs

Co-authored-by: vis2k <info@noobtuts.com>
2020-01-12 00:12:46 +01:00
MrGadget
29c96b6bc0 made handlers private (#1426) 2020-01-11 21:38:09 +01:00
MrGadget
c30e4a9f83 feat: NetworkAnimator warns if you use it incorrectly (#1424)
* Added warnings to NetworkAnimator

* Updated ChangeLog

* pauls suggestions
2020-01-11 10:35:58 -06:00
MrGadget
f858f4d703 Rename WeaveExisingAssemblies to fix spelling (#1423) 2020-01-10 19:07:59 -06:00
MrGadget
dffdf02be5 feat: Network Animator can reset triggers (#1420) 2020-01-10 18:33:10 -06:00
MrGadget
7d472f21f9 perf: Use NetworkWriterPool in NetworkAnimator (#1421) 2020-01-10 18:10:06 -06:00
MrGadget
a4578458a1 perf: Use NetworkWriterPool in NetworkTransform (#1422) 2020-01-10 18:09:27 -06:00
vis2k
b9f52fdb46
breaking: fix: #1151 - assign SyncVars before calling the Hook. Hook now passes old and new value instead of changing it from new value to old value, as this would break all SyncVar Hook projects silently. (#1416)
* test

* new docs

* adjust CheckForHookFunction to expect two hooks

* update example

* update example

* update example

* update test

* update example

* SyncVar.set: store value in oldValue variable

* SyncVar.set: pass old value to hook too

* TODO

* SyncVar deserialize store value in oldValue variable (for simple types)

* SyncVar deserialize: pass old value to hook too (for simple types)

* add test for GameObject type

* fix comment

* SyncVar deserialize: set value before calling hook

* add TODO

* SyncVar.set: set value before calling hook

* replace tests

* GO test

* SyncVar deserialize: move oldvalue code higher up so it applies to GO/NI too

* syntax

* SyncVar deserialize: pass oldValue to hook (GO/NI types)

* SyncVar deserialize: set netid before calling hook (GO/NI types)

* update comment

* update comment

* update comment

* shorter

* comment, TODO

* put oldValue code into separate cases again

* fix SyncVarEqual comparing the same two __goNetId values

* get rid of tmpValue

* fix weaver tests

* remove TODO

* SyncVar deserialize simple types: get rid of tmpValue here too

* remove tests
2020-01-10 16:17:13 +01:00
vis2k
a1649dfb25 remove outdated comment 2020-01-10 12:36:18 +01:00
vis2k
49d93d814c NetworkClient.Shutdown calls Client.Disconnect as suggested in #923 2020-01-10 12:34:42 +01:00
vis2k
260cb49698 NetworkServer.Shutdown: add comment on why we call Transport.ServerStop, not Shutdown as suggested in #923 2020-01-10 12:30:01 +01:00
vis2k
fd7dc5e226 fix: #723 - NetworkTransform teleport works properly now 2020-01-09 09:15:47 +01:00
vis2k
2d59de801f fix #923: move NetworkManager.OnApplicationQuit Transport Shutdown code into Transport.OnApplicationQuit. Fixes a potential bug where the Transport wouldn't be shut down if someone doesn't use the NetworkManager. 2020-01-09 08:32:25 +01:00
vis2k
76a514aeec syntax 2020-01-09 08:32:20 +01:00
vis2k
651e709785
fix #1407: Check EnterPlayModeSettings and disable if needed for 2019.3 support (#1415)
* fix #1407: Check EnterPlayModeSettings and disable if needed for 2019.3 support

* add reference
2020-01-09 08:03:47 +01:00
vis2k
a3ffd1264c
fix: #1278 - only call initial state SyncVar hooks on clients if the SyncVar value is different from the default one. (#1414)
* move comment

* add comment

* fix: #1278 - only call initial state SyncVar hooks on clients if the SyncVar value is different from the default one.

* initialState test for an if

* !initialstate

* getting there

* closer

* works but incompatible stack heights message

* better comments

* better

* not needed

* syntax

* rename

* incompatible stack height fixed

* update comment

* remove first todo

* SAVE PROGRESS

* compare go/ni too

* whitespace

* update comments
2020-01-08 16:58:46 +01:00
vis2k
32abb70ae9 add comment 2020-01-08 13:27:11 +01:00
vis2k
aafe387899 add comment 2020-01-08 12:16:58 +01:00
vis2k
a71ecdba4a fix: #1380 - NetworkConnection.clientOwnedObjects changed from uint HashSet to NetworkIdentity HashSet for ease of use and to fix a bug where DestroyOwnedObjects wouldn't find a netId anymore in some cases. 2020-01-08 11:32:29 +01:00
vis2k
a2173d37db NetworkConnection.DestroyOwnedObjects clears the hashset afterwards 2020-01-08 11:04:57 +01:00
vis2k
43030ac917 NetworkConnection.DestroyOwnedObjects to move code out of NetworkServer 2020-01-08 11:04:17 +01:00
Chris Langsenkamp
6111021252 meta file 2020-01-08 01:34:09 -05:00
vis2k
228b32e1da fix: #1241 - Telepathy updated to latest version. All tests are passing again. Thread.Interrupt was replaced by Abort+Join. 2020-01-07 20:55:34 +01:00
vis2k
2dc13e9666
Merge pull request #1404 from vis2k/NetTransAuthority
fix: Use hasAuthority instead of isLocalPlayer
2020-01-07 16:24:27 +01:00
Chris Langsenkamp
3d3436c80a Renamed and added comment 2020-01-07 10:17:44 -05:00
vis2k
28803b90de
Merge pull request #1405 from vis2k/NetAnimClientAuthCheck
fix: Check clientAuthority in NetworkAnimator
2020-01-06 15:15:37 +01:00
vis2k
25277e00ad
Merge pull request #1406 from vis2k/Remove-DDOL-Escape
Remove DDOL escape
2020-01-06 15:15:07 +01:00
vis2k
bfe90857bb Log is enough for now 2020-01-06 12:51:01 +01:00
vis2k
474a9480a5 ConnectHost moved into FinishStartHost 2020-01-06 12:36:03 +01:00
vis2k
3eb11c9a2d FinishLoadScene uses new NetworkManager.mode. This way the host connection doesn't need to be connected before changing host server's online scene. This makes everything easier. 2020-01-06 12:35:56 +01:00
vis2k
b9c9a3c350 NetworkManager.mode to simplify FinishLoadScene afterwards 2020-01-06 12:35:49 +01:00
Chris Langsenkamp
5a728ac4e6 Remove DDOL escape 2020-01-06 06:04:08 -05:00
Chris Langsenkamp
00149f3a2d Fixed comment 2020-01-06 04:27:43 -05:00
Chris Langsenkamp
847d02cfda Add clientAuthority check 2020-01-05 20:01:42 -05:00
Chris Langsenkamp
7b1761ea1e Add clientAuthority check 2020-01-05 19:56:33 -05:00
MrGadget
039cf5af22
Use hasAuthority instead of isLocalPlayer
This allows non-player objects that have been assigned authority to the client to be moved around by the client and their positions updated from that client appropriately when clientAuthority is also true.
2020-01-05 18:50:13 -05:00
vis2k
7776049526 ConnectHost moved into FinishStartHost 2020-01-05 20:42:41 +01:00
vis2k
f33d90a4ca FinishLoadScene uses new NetworkManager.mode. This way the host connection doesn't need to be connected before changing host server's online scene. This makes everything easier. 2020-01-05 20:38:18 +01:00
vis2k
1fe1ca730c NetworkManager.mode to simplify FinishLoadScene afterwards 2020-01-05 20:35:00 +01:00
vis2k
ccb45a6215 FinishLoadSceneHost doesn't call OnClientSceneChanged if the scene changed because of a StartHost call. fixes a bug where AddPlayer was called twice in mrgadget's simple scenes example. 2020-01-05 20:30:22 +01:00
vis2k
df9c29a6b3 fix: FinishLoadSceneHost calls FinishStart host which now calls StartHostClient AFTER server online scene was loaded. Previously there was a race condition where StartHostClient was called immediately in StartHost, before the scene change even finished. This was still from UNET. 2020-01-05 19:49:26 +01:00
vis2k
4f169b021d add comment 2020-01-05 19:26:14 +01:00
vis2k
fadcd46eff add more comments 2020-01-05 19:14:44 +01:00
vis2k
5029bc5253 StartHost: add comment on what StartHostClient does 2020-01-05 19:14:02 +01:00
vis2k
7f7658ad75 add comment 2020-01-05 19:12:34 +01:00
vis2k
f7500a2a82 OnClientConnect: explain clientLoadedScene flag 2020-01-05 19:04:46 +01:00
vis2k
af878bd915
Merge pull request #1388 from paulpach/privatehandler
refactor: this should not be accessible
2020-01-03 09:49:06 +01:00
vis2k
654979aa3c
Merge pull request #1387 from vis2k/UpdateRoomExample
Room Example: NetworkManager moved to Offline scene
2020-01-03 09:48:40 +01:00
vis2k
217f880191
Merge pull request #1389 from paulpach/privatevislist
fix: it is not safe to modify this outside this class
2020-01-02 10:35:28 +01:00
Paul Pacheco
ae3860f51b refactor: use save parameter name as overriden method 2020-01-01 20:28:43 -06:00
Paul Pacheco
addbd91fbd Fix floating point comparison 2020-01-01 20:28:43 -06:00
Paul Pacheco
480350d413 refactor: avoid unused private warning 2020-01-01 20:28:43 -06:00
Paul Pacheco
bd7e27c662 refactor: remove unnecesary base. 2020-01-01 20:22:03 -06:00
Paul Pacheco
12c10a3896 refactor: reuse authentication expiration 2020-01-01 20:11:50 -06:00
Paul Pacheco
12de543aa4 fix: move NetworkStreamExtension in a namespace 2020-01-01 20:02:37 -06:00
Paul Pacheco
7ce95c5cea fix: null reference exception 2020-01-01 19:59:07 -06:00
Paul Pacheco
bc7a961e4d fix: it is not safe to modify this outside this class 2020-01-01 19:56:56 -06:00
Paul Pacheco
663773c3fc refactor: this should not be accessible 2020-01-01 19:55:20 -06:00
Paul Pacheco
33493a0137 fix: potential null reference exception with debug logging 2020-01-01 19:34:55 -06:00
Paul Pacheco
2668b17162 fix: move listserver classes into package 2020-01-01 19:09:37 -06:00
Paul Pacheco
f02d3174db fix: list server logs properly when disconnected 2020-01-01 19:07:48 -06:00
Paul Pacheco
a438216458 refactor: Remove double semicolon 2020-01-01 15:33:52 -06:00
Chris Langsenkamp
97871e23c2 Updated ReadMe 2020-01-01 15:56:40 -05:00
Chris Langsenkamp
147ddab13e NetworkManager moved to Offline scene 2020-01-01 15:46:36 -05:00
Chris Langsenkamp
f64cf6e3db Update Prefabs & Scenes to Master 2020-01-01 12:34:30 -05:00
vis2k
c2d817259b NetworkManager.FinishLoadScene: split into host/server/client functions to prepare for further improvements 2020-01-01 13:34:34 +01:00
vis2k
5d68ef2c28 update comment 2020-01-01 12:49:59 +01:00
vis2k
11586a4177 explain StartHost 2020-01-01 12:18:07 +01:00
vis2k
9d9625b42f explain StartServer 2020-01-01 12:16:01 +01:00
Paul Pacheco
05ce317714 refactor: cleanup code format using dotnet-format 2019-12-31 23:14:17 -06:00
Paul Pacheco
1d20a27879 Follow naming convention for private variable 2019-12-31 22:23:20 -06:00
Paul Pacheco
c90bbaa66b Follow naming convention for private variable 2019-12-31 22:23:08 -06:00
Paul Pacheco
c31e7c8202 Follow naming conventions 2019-12-31 22:18:24 -06:00
Paul Pacheco
cfc280a527 Don't use deprecated methods in test 2019-12-31 21:27:48 -06:00
Paul Pacheco
e8ca3401d0 Don't use deprecated methods in test 2019-12-31 21:24:07 -06:00
Chris Langsenkamp
f117bdb9fc Filled in missing summary comments 2019-12-31 09:54:03 -05:00
vis2k
588117e6d4 add comment 2019-12-31 15:39:08 +01:00
vis2k
c4e3c2debf ServerChangeScene: disable Transport before sceneload call. it's cleaner this way. 2019-12-31 15:34:24 +01:00
vis2k
a603a55ed5 syntax 2019-12-31 15:33:41 +01:00
vis2k
0ed0c077fb remove empty line 2019-12-31 15:28:33 +01:00
vis2k
21045466bf NetworkManager.ConnectLocalClient renamed to StartHostClient for consistency with StartClient (it does almost the same as StartClient) 2019-12-31 12:09:21 +01:00
vis2k
97fd6b5d7e NetworkManager.StartHost: OnStartClient call moved into ConnectLocalClient for consistency with StartClient functions 2019-12-31 12:07:22 +01:00
vis2k
0b0c1edad2 update log message 2019-12-31 12:06:20 +01:00
vis2k
668d6a063d NetworkManager.ConnectLocalClient moved higher near StartClient because it's similar 2019-12-31 12:06:09 +01:00
vis2k
a472edd14c NetworkClient.SetupLocalConnection renamed to ConnectHost for consistency with NetworkClient.Connect (it does almost the same anyway) 2019-12-31 11:10:10 +01:00
vis2k
b36c347200 call OnStartHost AFTER SetupServer 2019-12-31 11:02:21 +01:00
vis2k
ed260cfb18 add comments 2019-12-31 10:24:21 +01:00
vis2k
23b5b50155 Call SetupLocalConnection after SetupServer to prepare for local connection removal, where a real connection can only connect to the server after it was started, not before. 2019-12-31 10:24:10 +01:00
vis2k
07a85309e0 StartHost calls SetupServer + scene change + spawnobjects manually 2019-12-31 10:14:42 +01:00
vis2k
539fe69585 StartServer code mostly moved into SetupServer 2019-12-31 10:11:20 +01:00
vis2k
a8d3e0c998 move log message above 2019-12-31 09:41:05 +01:00
vis2k
e54728d1cc NetworkManager.StartServer changed to void because it always returned true 2019-12-31 09:40:53 +01:00
vis2k
9969cc1c08 NetworkServer.Listen changed to void because it always returned true 2019-12-31 09:32:51 +01:00
vis2k
8787910d34 add comment 2019-12-31 09:30:29 +01:00
vis2k
2971345f37 NetworkManager.StartServer: scene change check moved into IsServerOnlineSceneChangeNeeded 2019-12-31 09:26:13 +01:00
Paul Pacheco
39817fcf00 docs: refer to the correct RegisterHandler method 2019-12-30 13:17:40 -06:00
Chris Langsenkamp
3a17699c23 Cleared Spawn Prefabs - not needed 2019-12-30 13:15:21 -05:00
vis2k
892acf272c explain SetupLocalConnection order properly 2019-12-30 18:47:24 +01:00
vis2k
cfe9520f7c add comments 2019-12-30 17:37:44 +01:00
Chris Langsenkamp
53b160e480 Update NetworkBehaviour Template 2019-12-30 09:47:44 -05:00
vis2k
3e28b10dcb syntax 2019-12-30 13:33:02 +01:00
vis2k
d712cd0303 fix: NetworkTransform clientAuthority works again via clientAuthority option that is configurable in inspector. this had to be fixed after we removed local authority. 2019-12-30 11:09:18 +01:00
vis2k
e8015dfc80 typos 2019-12-30 09:12:24 +01:00
vis2k
87376ae3af SendTargetRPCInternal: disallow all connections to server, not just the local client one 2019-12-29 22:07:47 +01:00
vis2k
53aa0bcc19 improve comments 2019-12-29 21:42:42 +01:00
vis2k
ee1807c85c remove empty line 2019-12-29 21:36:07 +01:00
Paul Pacheco
7258823a3c Test that OnStartServer is propagated by NI 2019-12-27 19:20:01 -06:00
Julien Heimann
3c0bc28228 feat: generate serializers for IMessageBase structs (#1353)
* Allow Weaver to add bodies to IMessageBase structs with empty de/serialize methods

* Update Assets/Mirror/Editor/Weaver/Processors/MessageClassProcessor.cs

Co-Authored-By: Paul Pacheco <paulpach@gmail.com>

* applied suggested changes

* adjusted empty method check

* Update Assets/Mirror/Editor/Weaver/Processors/MessageClassProcessor.cs

formatting

Co-Authored-By: vis2k <info@noobtuts.com>

Co-authored-by: Paul Pacheco <paulpach@gmail.com>
Co-authored-by: vis2k <info@noobtuts.com>
2019-12-27 10:12:28 -06:00
MrGadget
b34ae51965 Replace License.txt (#1360) 2019-12-26 09:51:56 -06:00
vis2k
4cc4279d7d fix: #1359. Revert "Destroy objects owned by this connection when disconnecting (#1179)"
This reverts commit 8931944005.
2019-12-26 13:43:02 +01:00
MrGadget
8e77da3424 Call OnClientConnect in FinishLoadScene (#1357) 2019-12-26 10:07:37 +01:00
MrGadget
ba3f855c98 Add Meta Files (#1358) 2019-12-26 10:07:08 +01:00
Paul Pacheco
d7a58d25d4
fix: destroy owned objects (#1352)
* fix: destroy owned objects

fix #1346
Broken in PR #1206

alternative to #1351

* fix nre

* Simplify
2019-12-23 19:25:16 -06:00
Paul Pacheco
d83efbbd8d Test connect and send 2019-12-23 19:06:14 -06:00
Paul Pacheco
e7abf4e7c7 Test transport events 2019-12-23 18:06:00 -06:00
Paul Pacheco
fe39459181 Test ClientSend 2019-12-23 17:44:03 -06:00
Paul Pacheco
ad115af845 Test ClientDisconnect 2019-12-23 17:37:50 -06:00
Paul Pacheco
947c473a3d Test ClientConnected 2019-12-23 17:23:58 -06:00
Paul Pacheco
3e0802607a Test connecting with uri 2019-12-23 16:44:40 -06:00
Paul Pacheco
1eff4ed4e6 Test connect 2019-12-23 16:36:13 -06:00
Paul Pacheco
caece9ecde Fully initialize multiplex for testing 2019-12-23 16:29:40 -06:00
Paul Pacheco
a132a9c47a Test available method 2019-12-23 16:26:25 -06:00
Paul Pacheco
c6af3c39f7 Add NSubstitute 2019-12-23 16:19:03 -06:00
Paul Pacheco
b55cf957a8 refactor: move ninja websocket in it's own assembly 2019-12-23 16:03:09 -06:00
Paul Pacheco
885e1f4c73
test: Mocking library for testing (#1350)
* Include mocking libraries

* reimported nsubstitute dlls

* Only include as part of test assemblies
2019-12-23 14:51:20 -06:00
Paul Pacheco
9f2dca56f0 refactor: compatibility with 2019.3 2019-12-23 13:40:16 -06:00
Paul Pacheco
a800064d8a test: Test packing floats into ushort 2019-12-23 12:52:39 -06:00
Paul Pacheco
ad2bee222a test: removing pair test 2019-12-23 12:25:14 -06:00
Paul Pacheco
f12fa2f51a test: Simplify tests 2019-12-23 12:21:50 -06:00