Commit Graph

5626 Commits

Author SHA1 Message Date
Robin Rolf
1b4cc63c2e Correct send rate in bot name 2023-02-14 19:59:52 +01:00
Robin Rolf
dd2151b582 /ssl and /nossl args 2023-02-14 19:40:42 +01:00
Robin Rolf
39faecc911 /h: command line arg 2023-02-14 18:45:05 +01:00
MrGadget1024
7e693c93d1 bots setup 2023-02-14 07:10:24 -05:00
MrGadget1024
b53892e2de Latest 2023-02-14 06:52:58 -05:00
MrGadget1024
31349c708c Merged master 2023-02-14 03:51:38 -05:00
MrGadget
59dc88c981
perf: Cache Stable Hashes (#3377)
* perf: Cache Stable Hashes
- Static dictionary of message hashes
- ResetStatics

* Added debug log for future debugging.

* Update Extensions.cs

---------

Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-14 02:45:36 +01:00
MrGadget1024
d1e263acac Merged master 2023-02-13 04:35:50 -05:00
MrGadget1024
6a506b0abe WebGL 2023-02-13 04:34:39 -05:00
JesusLuvsYooh
adc28267f7 Updated function name in code summary. 2023-02-12 16:19:43 +00:00
MrGadget1024
456e7eefdd Latest 2023-02-12 07:52:50 -05:00
MrGadget1024
a0034fb01c Player prefab 2023-02-11 20:48:53 -05:00
MrGadget1024
f41f03833b Bot Test 2023-02-11 19:31:03 -05:00
MrGadget1024
948defd3ec WIP 2023-02-10 16:11:14 -05:00
MrGadget1024
2088b46b59 SWT logging 2023-02-10 04:47:21 -05:00
MrGadget1024
578c01ea31 OfflineWeb 2023-02-10 04:47:09 -05:00
MrGadget1024
e93dea4dfa Merged master 2023-02-09 11:27:33 -05:00
MrGadget1024
80211ba827 fix: NetworkRoomManager.ReadyStatusChange is now a virtual method
- Script Template updated accordingly.

Fixes #1889
2023-02-09 11:21:06 -05:00
MrGadget
e260d1eb2a
fix: NetworkWriter - Change MaxStringLength to ushort.MaxValue (#3374)
* fix: NetworkWriter - Change MaxStringLength to ushort.MaxValue
- local `realsize` in NetworkReaderExtensions.ReadString changed to ushort with proper casting
- Comments added to NetworkWriterExtensions
- Comments added to NetworkReaderExtensions
- Log output updated in both for consistency

* Added comment

* Changes per request
2023-02-09 09:24:03 -05:00
MrGadget
9f7ed98ccc
feat: Read / Write DateTime (#3373)
* feat: Read / Write DateTime
- no UTC conversion...users can do that on their own if they want / need to.

DateTime is a public struct but has no public fields (all properties) so no error is thrown if users try to use it in SyncVar / Cmd / Rpc / NetMsg, but no value is put on the wire and SyncVar hooks don't fire because the client determines no actual value change.

* Added nullable DateTime support

* Removed mysterious using
2023-02-09 09:25:57 +01:00
MrGadget1024
607d61406a Merged master 2023-02-08 10:16:47 -05:00
MrGadget1024
efeab67331 NetworkRoomManager - refactor CheckReadyToBegin 2023-02-08 10:05:01 -05:00
MrGadget1024
324c41e1c7 NetworkRoomManager - refactor CheckReadyToBegin 2023-02-08 10:04:30 -05:00
MrGadget1024
1794d206e1 Merged master 2023-02-08 03:05:43 -05:00
MrGadget1024
bbcf4b38c0 breaking: MIRROR_73_OR_NEWER 2023-02-08 03:04:41 -05:00
MrGadget1024
3ef5e06431 Revert "breaking: MIRROR_73_OR_NEWER"
This reverts commit 8596f1d827.
2023-02-08 03:02:30 -05:00
MrGadget1024
3811a42411 Merged master 2023-02-08 02:59:11 -05:00
MrGadget1024
8596f1d827 breaking: MIRROR_73_OR_NEWER 2023-02-08 02:57:27 -05:00
MrGadget1024
1adf221423 Merged master 2023-02-08 01:22:02 -05:00
MrGadget1024
43907b102a Changed dropdown order 2023-02-08 01:20:36 -05:00
MrGadget
229a1a6509
perf: Distance Interest Management caches custom ranges to avoid runtime TryGetComponent overhead (#3372)
* fix: Distance Interest Mgmt static dictionary

* Clear on Reset

* Allow for changing range at runtime

* Use OnSpawned / OnDestroyed

* reverted default visRange

* Update DistanceInterestManagement.cs

* Update DistanceInterestManagement.cs

---------

Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-08 05:02:55 +01:00
MrGadget1024
cf429f14a5 Merged master 2023-02-07 15:20:40 -05:00
MrGadget1024
340a4b907a DistanceInterestManagementCustomRange - larger default visRange 2023-02-07 10:13:41 -05:00
MrGadget1024
f86010b192 DistanceInterestManagement - larger default visRange 2023-02-07 10:12:45 -05:00
MrGadget1024
cbcfeede16 fix: Removed buggy canvas from example player prefabs 2023-02-07 10:09:24 -05:00
Robin Rolf
2a021f73f5
fix: Weaver doesn't NRE on generic array (#3371)
* Failing generics weaver test for T[]

* fix: weaver doesn't handle generic array field

T[] would cause a NRE:

(0,0): error ----------------------------------------------
(0,0): error Exception :System.NullReferenceException: Object reference not set to an instance of an object.
(0,0): error    at Mirror.Weaver.Extensions.IsDerivedFrom(TypeReference tr, Type baseClass) in Mirror\Editor\Weaver\Extensions.cs:line 21
(0,0): error    at Mirror.Weaver.Extensions.IsDerivedFrom[T](TypeReference tr) in Mirror\Editor\Weaver\Extensions.cs:line 17
(0,0): error    at Mirror.Weaver.SyncObjectProcessor.FindSyncObjectsFields(Writers writers, Readers readers, Logger Log, TypeDefinition td, Boolean& WeavingFailed) in Mirror\Editor\Weaver\Processors\SyncObjectProcessor.cs:line 25
(0,0): error    at Mirror.Weaver.NetworkBehaviourProcessor.Process(Boolean& WeavingFailed) in Mirror\Editor\Weaver\Processors\NetworkBehaviourProcessor.cs:line 76
(0,0): error    at Mirror.Weaver.Weaver.WeaveNetworkBehavior(TypeDefinition td) in Mirror\Editor\Weaver\Weaver.cs:line 109
(0,0): error    at Mirror.Weaver.Weaver.WeaveModule(ModuleDefinition moduleDefinition) in Mirror\Editor\Weaver\Weaver.cs:line 125
(0,0): error    at Mirror.Weaver.Weaver.Weave(AssemblyDefinition assembly, IAssemblyResolver resolver, Boolean& modified) in Mirror\Editor\Weaver\Weaver.cs:line 208
(0,0): error ----------------------------------------------
2023-02-07 14:10:15 +01:00
MrGadget1024
63235f2f73 fix: Added missing EventSystem to example scenes 2023-02-07 02:42:09 -05:00
MrGadget1024
a3dbc9dbb6 fix: Improved Player Controller in examples 2023-02-06 11:27:29 -05:00
MrGadget1024
df7a56825e Default Layers 2023-02-06 10:08:09 -05:00
MrGadget1024
a8a6b403fe fix: Updated Multiple Matches example
- MatchController needed longer delay in ServerEndMatch
- Syntax and formatting
2023-02-05 23:53:24 -05:00
MrGadget1024
1399a930ac Extended wait to .5 seconds for RpcExitGame to process 2023-02-05 22:55:23 -05:00
MrGadget1024
10553cab84 Removed Debug logs 2023-02-05 22:54:32 -05:00
MrGadget1024
4920f5ff6b Merged master 2023-02-05 20:35:40 -05:00
MrGadget1024
42d4723f4e fix: Network Manager - don't call OnClientConnect from FinishLoadScene 2023-02-05 19:37:56 -05:00
MrGadget1024
40e4a57be2 fix: Network Manager now calls OnClientConnect as soon as authenticated
- No longer waits for scene change first so users can override on successful connect.
- clientLoadedScene flag is set before calling OnClientConnect.
2023-02-05 19:32:36 -05:00
MrGadget1024
70cee43a71 fix: Examples code review and updates
- ServerCallback / ClientCallback attributes applied
- Commented out Debug.Logs removed
- Syntax cleanup
- Reset Player prefabs to Default layer
- Simplified TryGetComponent usage
- All Prefabs updated to Unity 2021.3.17
2023-02-05 18:04:54 -05:00
MrGadget1024
5a161a07ce Simplified TryGetComponent usage 2023-02-05 14:14:21 -05:00
MrGadget1024
f451087d81 WIP 2023-02-05 12:16:09 -05:00
MrGadget1024
467aa70e3d CanvasController - use attributes 2023-02-05 08:28:07 -05:00
MrGadget1024
35f72c198e MatchNetworkManager - removed comments 2023-02-05 07:08:37 -05:00
MrGadget1024
dca22bd5d3 MatchController - syntax 2023-02-05 07:08:19 -05:00
MrGadget1024
d3038478cf fix: Updated examples to handle StopClient for Host 2023-02-04 21:19:29 -05:00
MrGadget1024
3d9e95e52c fix: NetworkManager - keep in DDOL if ServerOnly
- like when StopClient called for Host
2023-02-04 21:19:08 -05:00
MrGadget1024
a83379fe17 fix: NetworkManager - handle StopClient in Host mode 2023-02-04 20:13:17 -05:00
JesusLuvsYooh
5e0b450f87
LatencySimulator - User friendly changes. (ready for approval) (#3316)
* syntax

* SyncDirection example: increase spacing

* LatencySimulator - User friendly changes.

Changed "ping" to milliseconds, from seconds.
Changed % from 0-1, to 0-100  (previously 1 on slider, meant 100%)
Tooltip adjusted to show a good default value to use, and a worst case scenario value.

* Delete Scene.unity

* Revert "Delete Scene.unity"

This reverts commit 305235f6f4.

* Revert "SyncDirection example: increase spacing"

This reverts commit c2176876cb.

* Revert "syntax"

This reverts commit a668c78f68.

* Tooltip adjustments, also now has default values.

* Update LatencySimulation.cs

---------

Co-authored-by: vis2k <info@noobtuts.com>
2023-02-03 07:08:31 -05:00
MrGadget1024
dc8f0b3165 Unity updated Player prefab 2023-02-02 19:17:50 -05:00
MrGadget1024
459a3833bd Merged TestNT2 2023-01-30 07:32:15 -05:00
MrGadget1024
d6e81dc687 Merged master 2023-01-30 07:31:42 -05:00
MrGadget1024
2554372913 Updated Interest Management Script Template 2023-01-29 06:44:20 -05:00
vis2k
c4e9071700 unused import 2023-01-29 19:08:19 +09:00
vis2k
deddbe6ee9 fix: #3367 NetworkTransformReliable now checks for changes at the end of UpdateServer, not at the beginning [imer] 2023-01-29 13:11:33 +09:00
vis2k
3815fe94a8 fix: #3259 NetworkClient.ApplySpawnPayload now initializes NetworkIdentity flags before DeserializeClient invokes SyncVar hooks 2023-01-29 12:54:44 +09:00
vis2k
db83e2dd42 naming 2023-01-29 12:46:29 +09:00
vis2k
8d8bde72f4 fix: NetworkClient now sets NetworkIdentity.connectionToServer before OnStartAuthority/OnStartClient callbacks.
previously this was only available in OnStartLocalPlayer
2023-01-29 12:40:03 +09:00
vis2k
384e551245 NetworkClient.BootstrapIdentity split into SetIdentityFlags and InvokeIdentityCallbacks 2023-01-29 12:40:03 +09:00
MrGadget1024
d27e08647a NetworkClient - comment typo 2023-01-28 13:00:47 -05:00
vis2k
5c989491b9 NetworkClient.NetworkLateUpdate: use .localTime in all Unity versions 2023-01-29 01:48:56 +09:00
vis2k
a0accce89a syntax: remove redundant type qualifiers 2023-01-29 01:46:26 +09:00
vis2k
46f07cc71a syntax 2023-01-29 01:44:55 +09:00
MrGadget1024
7dd3ce0163 AdditiveLevelsNetworkManager - comments 2023-01-28 11:23:18 -05:00
vis2k
5bbad6fd2f kcp2k V1.29 [2023-01-28]
- fix: KcpServer.CreateServerSocket now handles NotSupportedException when setting DualMode
  fixes https://github.com/MirrorNetworking/Mirror/issues/3358
2023-01-28 23:59:54 +09:00
vis2k
7d2d21ac2c fix: #3365 NetworkClient.OnTransportDisconnected now always invokes OnDisconnected, even during connecting phase 2023-01-28 23:41:14 +09:00
vis2k
e21d42a324 syntax 2023-01-28 23:14:09 +09:00
vis2k
c389a526a9 kcp2k V1.28 [2023-01-28]
- fix: KcpClient.Connect now resolves hostname before creating peer
  https://github.com/MirrorNetworking/Mirror/issues/3361
2023-01-28 23:11:33 +09:00
JesusLuvsYooh
56a01c3941
Application.isFocused check on tanks Update input. (#3364) 2023-01-28 11:37:23 +01:00
vis2k
0312bf7103 fix: #3362 BootstrapIdentity now initializes isClient/isLocalPlayer flags before calling OnStartAuthority 2023-01-28 13:20:21 +09:00
vis2k
25ef55413c BootstrapIdentity: local player code simplified 2023-01-28 13:13:13 +09:00
vis2k
77c915eb34 NetworkClient: CheckForLocalPlayer merged into BootstrapIdentity 2023-01-28 13:10:22 +09:00
vis2k
4d8c74593d NetworkClient.ChangeOwner: remove dependency on CheckForLocalPlayer to prepare merging CheckForLocalPlayer into BootstrapIdentity 2023-01-28 13:03:38 +09:00
vis2k
7cea78fae5 syntax 2023-01-28 12:54:34 +09:00
vis2k
a48f0af43b NetworkClient.CheckForStartClient merged into BootstrapIdentity 2023-01-28 12:49:15 +09:00
vis2k
b6cee2aae2 remove unnecessary HostMode.ActivateHostScene function.
this would call OnStartClient for scene objects if .isClient was false.
however, NetworkManager.FinishStartHost calls NetworkServer.SpawnObjects first.
which always sets isClient = true for all scene objects.
2023-01-28 12:47:37 +09:00
vis2k
bb6c0de495 NetworkServer.SpawnObject: add explanation 2023-01-28 12:34:38 +09:00
vis2k
547da088b1 syntax 2023-01-28 12:33:48 +09:00
vis2k
99360ffbcb NetworkClient.BootstrapIdentity helper function to move OnStartAuthority/Client/LocalPlayer callers in one place 2023-01-28 12:15:23 +09:00
vis2k
e9e3874205 fix: NetworkClient.OnHostClientSpawn now sets AOI visibility before invoking user callbacks. 2023-01-28 12:07:45 +09:00
MrGadget1024
98d2950474 Merged master 2023-01-27 04:47:52 -05:00
MrGadget1024
140e4608cb Merged master 2023-01-27 04:46:40 -05:00
MrGadget1024
7318dfed3f fix: Use GUID's in AsmDef's
- Unity also appled changes per 2021.3.17

See https://docs.unity3d.com/2021.3/Documentation/Manual/class-AssemblyDefinitionImporter.html#asmdef-references
2023-01-27 04:27:15 -05:00
MrGadget1024
900c23a173 fix: Removed invalid reference from KCP AsmDef 2023-01-27 04:17:57 -05:00
MrGadget1024
79718d0638 fix: Added SimpleWebTransport to Mirror.Transports AsmDef 2023-01-27 04:13:56 -05:00
MrGadget1024
31fd837058 SWT Logging added 2023-01-27 04:09:58 -05:00
MrGadget1024
6030838d76 Reverse Proxy 2023-01-27 04:09:09 -05:00
MrGadget1024
28829e7f61 Compress Rotation 2023-01-27 04:08:06 -05:00
MrGadget1024
36e801089c Only sync on change restored 2023-01-26 13:10:59 -05:00
MrGadget1024
973ee34850 restored Gravity 2023-01-26 11:34:14 -05:00
MrGadget1024
3a9eac8e04 fixed spawn lookat 2023-01-26 11:15:54 -05:00
MrGadget1024
a2ec18a06c prefabs y=1 2023-01-26 11:03:27 -05:00
MrGadget1024
21799dc856 zero gravity 2023-01-26 11:03:00 -05:00
vis2k
f311ba7caa disable onlySyncOnChange 2023-01-27 00:03:28 +09:00
vis2k
b0d87e3851 other stuff 2023-01-27 00:03:25 +09:00
vis2k
ec3703ec5e remove vel callback 2023-01-27 00:01:30 +09:00
vis2k
8eb75f39fc remove move modes 2023-01-27 00:00:41 +09:00
vis2k
5a5788fac5 remove anim code 2023-01-26 23:59:38 +09:00
vis2k
fb2d8d380a npc spawn stuff 2023-01-26 23:56:09 +09:00
vis2k
3cd0c847a1 spawn bots at same position 2023-01-26 23:55:52 +09:00
vis2k
3510361d08 change colors 2023-01-26 23:55:35 +09:00
MrGadget1024
c640a85bbe Bot spawning fixed 2023-01-26 09:10:58 -05:00
MrGadget1024
8694f98f87 Prefabs fixed 2023-01-26 09:10:46 -05:00
MrGadget1024
bc64a7358c Bot Fixes 2023-01-26 08:15:31 -05:00
MrGadget1024
2fed347e6d NPC Server To Client 2023-01-26 07:53:23 -05:00
MrGadget1024
13dfe41b01 Spawn correct thing for bots 2023-01-26 07:45:55 -05:00
MrGadget1024
f5a63cc910 PlayerMove jumpSpeed 2023-01-26 06:50:25 -05:00
MrGadget1024
d7d754884d Removed collider 2023-01-26 06:50:01 -05:00
MrGadget1024
2c556661a2 removed line from CmdSpawnNPC 2023-01-26 06:25:34 -05:00
MrGadget1024
f5d28334ee NPC Variant 2023-01-26 06:17:33 -05:00
MrGadget1024
010073b3a0 fixed scene assignments 2023-01-26 05:59:09 -05:00
vis2k
6f15f2f17a fix scene refs 2023-01-26 19:59:04 +09:00
vis2k
2af9dc106c add text mesh pro files :/ 2023-01-26 19:58:12 +09:00
MrGadget1024
d20bd1186a TestNT Example 2023-01-26 05:51:48 -05:00
MrGadget1024
505a8eca43 RemoteStats, NetworkStats minor changes 2023-01-26 03:29:28 -05:00
MrGadget1024
f16e1973c0 Additive Levels Offline Scene resaved 2023-01-26 03:28:29 -05:00
vis2k
5802fec712 SHA-1 comments 2023-01-26 01:41:34 +09:00
vis2k
01d0ae1a6b SimpleWebTransport: add SHA1 comments 2023-01-26 01:31:15 +09:00
MrGadget1024
debc78310d AdditiveLevels Example - Portal.cs typo 2023-01-24 15:16:46 -05:00
MrGadget1024
22ac763199 NetworkTransformBase - OnClientAuthorityChanged is Server Only 2023-01-20 19:32:06 -05:00
MrGadget1024
2239bb0245 NetworkTransformBase - syntax 2023-01-20 19:29:27 -05:00
MrGadget1024
dd5d7cab01 fix: NetworkTransform classes - methods in call order 2023-01-19 07:26:56 -05:00
MrGadget
af0bacf8ae
NetworkTransformBase - Reset when changing authority (#3357) 2023-01-19 12:04:14 +01:00
MrGadget1024
16b60e80f3 PlayerCamera - Added warnings for no MainCamera 2023-01-18 09:10:48 -05:00
MrGadget1024
a35c0dbd9a fix: ChangeOwner now adds/removes from owned hashset
We do this in spawn and destroy already.
2023-01-16 07:30:39 -05:00
MrGadget1024
3e7837cebd Revert "Added License, Notice, Version files"
This reverts commit 585be60d38.
2023-01-14 11:01:42 -05:00
MrGadget1024
585be60d38 Added License, Notice, Version files 2023-01-14 11:01:14 -05:00
MrGadget
a024753a42
fix: Fixes #3317 - NetworkTransformReliable: don't send last snapshot (#3355) 2023-01-14 11:34:28 +01:00
MrGadget
875b34540a
fix: #3351 - Reset Statics in NS, NC, and NC_TimeInterpolation (#3353)
* fix: Fix #3351 - NetworkClient_TimeInterpolation reset statics
- Fixes #3351

* NetworkServer - reset actualTickRate

* NetworkClient - reset lastSendTime

* NetworkClient_TimeInterpolation - reverted reset of bufferTimeMultiplier
- added comment as to why we're not resetting it.
2023-01-13 22:11:43 +01:00
MrGadget1024
626180b2d3 Network Manager HUD - made it wider so it doesn't wrap as much 2023-01-12 22:09:15 -05:00
MrGadget1024
0cc27d2372 NetworkClient - added bufferTimeMultiplier to OnGUI 2023-01-12 22:08:38 -05:00
vis2k
027458db96 fix: #3344 NetworkServer.Shutdown sets active=false after destroying spawned objects.
this way scene objects without owners can still modify SyncLists in OnStopServer without IsWriteable() throwing an exception about NetworkServer being inactive.
2023-01-12 12:06:04 +01:00
vis2k
74e6b72239 fix: NetworkServer.DisconnectAll doesn't set inactive anymore. it should simply "disconnect all" connections.
otherwise Shutdown may not be able to properly clean up all objects.
prepares to fix #3344
2023-01-12 11:46:45 +01:00
vis2k
c04eeacba6 comment improved 2023-01-12 11:38:24 +01:00
vis2k
e16e55616b fix: #3354 SyncList callback for OP_SET index parameter fixed 2023-01-12 00:44:18 +01:00
MrGadget1024
3e8880db1c BasicAuthenticator - comment typo 2023-01-11 15:47:37 -05:00
MrGadget1024
655d0b0aa8 fix: NetworkClient - make OnGUI public 2023-01-09 19:24:49 -05:00
MrGadget1024
b642da6b2f fix: Fix #3349 - NetworkTransformReliable use correct value in OnSerialize
- Fixes #3349
2023-01-09 09:41:19 -05:00
vis2k
2c9f6c4960 fix: kcp2k V1.27. fixes #3337 2023-01-08 11:51:50 +01:00
MrGadget1024
c93935422e Check for no Camera.main in OnGUI
- avoids NRE flood if no camera with MainCamera tag.
2023-01-06 18:50:13 -05:00
mischa
3c85efa2d9
fix: #3330 #2422 SpawnObjects now activates, but does not spawn scene objects with inactive parents (#3347)
* fix: #3330 #2422 SpawnObjects now activates, but does not spawn scene objects with inactive parents

* helper function

* remove old workaround.
identities which aren't active in hierarchy don't have Awake called forcefully anymore.
it's not necessary because the second pass won't spawn them anymore.

* add comments
2023-01-06 18:21:03 +01:00
vis2k
c9dfd95bb7 add comment 2023-01-06 17:40:57 +01:00
vis2k
7b7ad85204 fix: #3340 SyncSet/Dictionary callbacks are only called once 2023-01-05 21:54:53 +01:00
vis2k
c5aa4746e1 fix: #3340 SyncList callbacks are only called once 2023-01-05 21:21:51 +01:00
vis2k
0d53f7c3a0 fix: #3343 allow modifying client synclists for unspawned objects like character previews 2023-01-04 01:32:11 +01:00
vis2k
8570afab94 fix: #3341 SyncLists can now be modified before spawning again 2023-01-04 01:10:53 +01:00
vis2k
02218bda13 fix: #3342 InitSyncObject IsWritable/IsRecording permissions fixed for host mode and other player's objects on client 2023-01-04 01:10:51 +01:00
vis2k
d645aad95c fix: forgot to remove SyncList OnSerializeAll log message 2023-01-04 01:02:47 +01:00
MrGadget1024
34f6df24a1 NetworkClient - moved RegisterMessageHandlers down 2023-01-03 15:41:01 -05:00
MrGadget
273f91088f
fix: #3326 NetworkIdentity doesn't reset SyncObjects anymore (#3339)
* Fixes: #3326
- All callers to Reset are either unspawning (disabling) the object or have run a custom UnSpawnHandler
- Sync collections should retain their data in any case because the object may get respawned
- When it is respawned, OnDeserializeAll clears the internal collection and changes lists before adding back the entire payload.
- Users can always call the public Reset on the SyncObject themselves if they want it wiped.

* fixed comment
2023-01-03 09:59:36 +01:00
MrGadget1024
30ec858551 NetworkClient - formatting 2023-01-02 12:50:41 -05:00
MrGadget1024
0189b7f45e NetworkServer - formatting 2023-01-02 12:49:53 -05:00
MrGadget1024
1f09c7f98d NetworkIdentity - formatting 2023-01-02 12:49:04 -05:00
MrGadget1024
ed102ffb23 NetworkIdentity - moved SetClientOwner down with AssignClientAuthority
- AssignClientAuthority is the only caller in this class
2023-01-02 12:28:58 -05:00
MrGadget1024
9405e9fef6 NetworkIdentity - moved ResetStatics up 2023-01-02 12:26:53 -05:00
MrGadget1024
bc28022552 NetworkIdentity - moved HandleRemoteCall up
- Nothing in NetworkIdentity calls this, only external callers
2023-01-02 12:24:20 -05:00
MrGadget1024
de421cdc1f NetworkIdentity - moved ClearDirtyBits methods up to their respective callers 2023-01-02 12:21:08 -05:00
MrGadget1024
c0e047b01a NetworkClient - moved NotifyAuthority and 2 related others down below Reset 2023-01-02 12:13:59 -05:00
MrGadget1024
d71c9e2a77 NetworkIdentity - moved ClearObservers down below Reset 2023-01-02 12:09:15 -05:00
MrGadget1024
82ff8fddf7 NetworkClient - moved DestroyObject down 2023-01-02 11:15:13 -05:00
MrGadget1024
3616ad818b NetworkServer - moved obsoletes
- localClientActive to above active
- ActivateHostScene to bottom out of the way
2023-01-02 09:53:01 -05:00
MrGadget1024
ce7706b5a0 NetworkServer - moved RemoveTransportHandlers up 2023-01-02 09:42:46 -05:00
MrGadget1024
ed8baffc6c NetworkServer - moved Listent and Shutdown up 2023-01-02 09:40:43 -05:00
MrGadget1024
2943aff578 NetworkServer - moved RebuildObserversCustom down 2023-01-02 09:33:52 -05:00
MrGadget1024
c4b919b7bc NetworkServer - moved AddAllReadyServerConnectionsToObservers down 2023-01-02 09:32:41 -05:00
MrGadget1024
5f455245ee NetworkServer - moved message handers up with RegisterMessageHandlers 2023-01-02 09:22:49 -05:00
MrGadget1024
ecfa4dd26e NetworkServer - Organized spawn methods to call order 2023-01-02 09:10:14 -05:00
MrGadget1024
a25502f82d NetworkServer - put AddPlayerForConnection methods in call order
- moved RemovePlayerForConnection up
2023-01-02 08:57:29 -05:00
MrGadget1024
051b63caee NetworkServer - put Destroy methods together in call order 2023-01-02 08:54:08 -05:00
MrGadget1024
1f87ebdf45 NetworkClient - Moved Destroy method down
- put it with DestroyAllClientObjects
- preparing for consolidation
2023-01-02 07:12:21 -05:00
MrGadget
77a4ad9674
breaking: Removed Old Obsoletes (#3335)
- Also normalized Deprecatd comments for easier searching
2023-01-01 18:37:49 +01:00
MrGadget
c364d194fe
fix: #3334 NetworkClient DestroyAllClientObjects Before ClearSpawners (#3336)
* fix: NetworkClient DestroyAllClientObjects Before ClearSpawners
- DestroyAllClientObjects needs to be able to call Unspawn handlers
- Fixes: 3334

* Update Assets/Mirror/Core/NetworkClient.cs

Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-01-01 18:22:02 +01:00
MrGadget1024
4deb179d62 PreprocessorDefine - fixed typo in comment 2022-12-31 10:32:41 -05:00
MrGadget1024
ff461331d4 PreprocessorDefine - added 12 months comment 2022-12-31 10:29:48 -05:00
MrGadget1024
97547a285c Culled compiler symbols to last 12 months
- Going forward, we need to remove oldest when we add new one each month when we publish to the store, so we only keep them back 12 months.
2022-12-31 10:19:16 -05:00
vis2k
642423aef8 MIRROR_71_0_OR_NEWER 2022-12-31 14:44:09 +01:00
vis2k
ca9f07d812 fix: #3329 NetworkTransform UpdateServer checks if .connectionToClient is null to support room demo / scene changes 2022-12-31 14:36:57 +01:00
vis2k
6581300ce0 remove unused imports 2022-12-31 14:34:28 +01:00
MrGadget
993caf3b36
NetworkClient - Use TryGetComponent (#3331)
This eliminates allocations, at least in the editor, per Unity docs.
2022-12-31 13:59:57 +01:00
MrGadget
82a7e752a8
Use TryGetComponent (#3332)
This eliminates allocations, at least in the editor, per Unity docs.
2022-12-31 13:59:42 +01:00
MrGadget
fe4aa931e1
feat: NetManHUD StopClient button for Host (#3333) 2022-12-31 13:59:12 +01:00
MrGadget1024
be5cd6472a fix: set offline mode before OnStopClient
- Prevents StopClient from running more than once
- Fixes: #2080
2022-12-30 22:03:53 -05:00
mischa
739ef7ccc0
fix: #2240 #3324 NetworkIdentity.OnDestroy removes from spawned if not removed yet. prevents null entries in .spawned. (#3327)
* fix: #2240 #3324 NetworkIdentity.OnDestroy removes from spawned if not removed yet.
prevents null entries in .spawned.

* Update Assets/Mirror/Core/NetworkIdentity.cs

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

Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2022-12-30 22:38:16 +01:00
mischa
e95c9ae9a7
fix: #3318 NetworkServer.SpawnObjects only spawns objects which haven't been spawned yet. (#3328)
additive scene loading would call SpawnObjects again, which would attempt to spawn _all_ previously spawned objects _and_ the newly loaded ones.
2022-12-30 21:45:51 +01:00
MrGadget1024
1746468bef Removed unnecessary check 2022-12-30 15:32:46 -05:00
vis2k
c4e0e1b3bd NetworkServer: explain 'already spawned' warning in comments 2022-12-30 21:24:01 +01:00
mischa
100847cc31
fix: #3308 scene change NetworkClient.owned null entry. NetworkIdentity.OnDestroy now removes from owned. (#3325) 2022-12-30 18:02:34 +01:00
MrGadget1024
17c5a6c956 comment added 2022-12-30 07:23:52 -05:00
MrGadget1024
205ced88aa fix: Use NetworkClient.Send
- there is a null check in Send before attempting to use the connection
2022-12-30 07:20:24 -05:00
MrGadget1024
321b68238d FPS - fixed namespace 2022-12-28 09:19:45 -05:00
vis2k
ac3d6b7699 NetworkTransformBase: expose lists for outside access 2022-12-28 09:29:40 +01:00
MrGadget1024
fdd7a32402 NetworkManager Template - moved Awake override up 2022-12-27 20:00:33 -05:00
MrGadget
3faec24681
NetworkTransformBase - make snapshot lists readonly (#3322)
- code smell
2022-12-27 22:42:22 +01:00
MrGadget1024
16d8c08a75 Network Manager Template - moved setting singleton to Awake 2022-12-27 15:23:08 -05:00
MrGadget1024
26e3c5a4fa TimeSampleTests- Bigger Within so it passes more reliably 2022-12-27 10:38:46 -05:00
mischa
6cf03d60a3
fix: #3315 ClientToServer SyncList support (#3320)
* SyncDirection demo: add SyncList test

* resaved prefab

* update error message

* logs

* disable AddOperation ReadOnly checks for now

* logs

* IsRecording adjusted to client

* kcp: larger timeout for debugging

* WORKS but not very clean yet

* update comments

* IsReadOnly moved to SyncObject

* IsWriteable lambda

* better

* fix tests

* fix host mode

* tests

* tests

* throw if undefined behaviour

* fix test

* remove logs
2022-12-26 10:39:55 +01:00
vis2k
19b712fac8 Weaver: Rpc hash collision warning improved. 2022-12-23 12:03:21 +01:00
vis2k
e1e6fb0098 NetworkBehaviour.OnSerialize/OnDeserialize: De/SerializeSyncObjects helper functions for cleaner code 2022-12-22 23:38:56 +01:00
vis2k
cd6e34f4b4 fix: kcp2k V1.26 [2022-12-22]
- KcpPeer.RawInput: fix compile error in old Unity Mono versions
- fix: KcpServer sets up a new connection's OnError immediately.
  fixes KcpPeer throwing NullReferenceException when attempting to call OnError
  after authentication errors.
- improved log messages
2022-12-22 22:59:42 +01:00
vis2k
13c349d27a SyncDirection example: increase spacing 2022-12-22 22:59:39 +01:00
vis2k
a8bb5e3647 syntax 2022-12-22 22:59:37 +01:00
MrGadget1024
4434ab1be3 NetworkServer - added gameobject param to debug logs 2022-12-22 16:23:17 -05:00
MrGadget1024
6c101c5c85 NetworkLerpRigidbody - syntax 2022-12-22 02:44:52 -05:00
MrGadget1024
6bb396ef5b NetworkRigidbody2D - syntax 2022-12-22 02:41:38 -05:00
MrGadget1024
bcd9621a89 NetworkRigidbody2D - HelpURL 2022-12-22 02:35:22 -05:00
MrGadget1024
faede54e14 NetworkRigidbody - syntax 2022-12-22 02:33:31 -05:00
MrGadget1024
274721b297 fix: AddComponentMenu hide example / obsolete components
Added [AddComponentMenu("")] to:
- BenchmarkNetworkManager
- CCUNetworkManager
- NetworkTransformChild
2022-12-22 02:22:23 -05:00
MrGadget1024
b662e367a9 NetworkRoomManager removed maxxConnections checks
- NetworkServer cuts them off earlier.
2022-12-21 09:59:27 -05:00
MrGadget1024
e468443a2e Merge branch 'master' of https://github.com/vis2k/Mirror 2022-12-21 09:57:30 -05:00
MrGadget1024
22fa56da70 Discovery Template - Changed to structs 2022-12-21 09:57:24 -05:00
vis2k
d4dc9a7585 fix broken tests 2022-12-21 10:36:22 +01:00
Tubeliar
74a24150f6
breaking: Reduce code duplication with common base class for NetworkTransform and NetworkTransformReliable (#3314)
* Move Networktransform OnGUI and gizmos to a common baseclass

* Move networktransform teleportation and reset to common base class

* Move networktransform adding snapshots to common base class

* Move networktransform snapshot construction and application to common base class

* Move networktransform awake, onvalidate and IsClientWithAuthority to common base class
2022-12-20 22:14:18 +01:00
TCROC
ebc087ad54
Fixed server and client connection attempt with AddPlayer before authentication completes (#3310)
* Fixed server and client connection attempt before authentication completes

* Removed auth check on server

* Updated with suggestions from MrGadget
2022-12-20 11:03:20 -05:00
vis2k
c50ea9cb55 script icons 2022-12-20 10:49:23 +01:00
MrGadget1024
48926e841a NetworkRoomManager - kick late joiner
- OnServerConnect should do this, but for corner case of miraculous timing, do it here too.
2022-12-18 20:31:35 -05:00
MrGadget1024
0b082530ba Restored [RequireComponent(typeof(NetworkTransform))]
In these 4 examples, NT Unreliable is fine.
2022-12-18 18:49:42 -05:00
MrGadget1024
2991598405 Merge branch 'master' of https://github.com/vis2k/Mirror 2022-12-14 23:51:44 -05:00
MrGadget1024
461ce27908 fix: Added clientStarted check to OnStopClient
- fixes: #3245
2022-12-14 23:51:08 -05:00
vis2k
fe3627f03b perf: fix: KcpTransport CongestionWindow force disabled. enabling this would cause a significant slowdown in throughput, with only 2-3 MTU sized messages being flushed per update. best to keep this disabled, as the feature may be broken in kcp. 2022-12-14 21:09:13 +01:00
vis2k
1a0a9a0cce KcpTransport: [Header] improved 2022-12-14 21:04:39 +01:00
vis2k
f14d423183 kcp2k V1.25 [2022-12-14]
- breaking: removed where-allocation. use IL2CPP on servers instead.
- breaking: KcpConfig to simplify configuration
- high level cleanups
- perf: KcpPeer: StopWatch replaced with time parameters.
  all peers can now share the same stopwatch on servers.
2022-12-14 21:04:28 +01:00
vis2k
69ac95e55e NetworkClient: improve 'found null entry' message to not sound the same as on the server 2022-12-14 18:30:16 +01:00
vis2k
3e3a1cbb44 fix: #3307 kcp2k V1.24 2022-12-14 01:04:16 +01:00
mischa
42a0c8ef67
fix: #3302 StartHost: user callbacks OnStartServer/OnStartHost aren't invoked until everything was set up in FinishStartHost. (#3304) 2022-12-13 13:17:53 +01:00
mischa
b58084583f
Welcome message moved out of NetworkManager into standalone Editor script, per-session instead of per-play. (#3306) 2022-12-13 13:16:59 +01:00
MrGadget1024
83581f0be1 syntax 2022-12-13 05:52:37 -05:00
MrGadget1024
da3f3e2f29 Merge branch 'master' of https://github.com/vis2k/Mirror 2022-12-13 05:27:14 -05:00
MrGadget1024
9c4774f14f SWT - fixed server logging showColor 2022-12-13 05:27:09 -05:00
vis2k
60948b13b3 NetworkManager.SetupServer: OnStartServer callback is now invoked manually by callers to prepare for host mode fix for #3302 2022-12-12 17:52:37 +01:00
vis2k
db8c54f913 NetworkServer.localConnection: strong typing 2022-12-12 16:35:54 +01:00
vis2k
0e9edbd0ad NetworkClient.activeHost to replace .isHostClient (consistent with NetworkServer.activeHost) 2022-12-12 15:50:45 +01:00
vis2k
a4f3872a01 NetworkServer.activeHost to replace .localClientActive 2022-12-12 15:50:41 +01:00
vis2k
6088591269 NetworkClient.RegisterSystemHandlers renamed to RegisterMessageHandlers for consistency with NetworkServer.RegisterMessageHandlers 2022-12-12 15:25:59 +01:00
vis2k
725fdc24f4 syntax for readability 2022-12-12 15:19:15 +01:00
vis2k
97b365c54f NetworkManager.IsSceneActive moved to Utils.IsSceneActive as it's a general purpose Unity function, unrelated to NetworkManager itself 2022-12-12 15:18:17 +01:00
vis2k
599519e163 NetworkManager.FinishStartHostClient merged with FinishStartHost, because the functions configures both server & client, just as FinishStartHost does. this is less confusing. 2022-12-12 14:29:42 +01:00
vis2k
636995e3f0 HostMode.ActivateHostScene to move ActivateHostScene out of NetworkServer.cs 2022-12-12 14:27:12 +01:00
vis2k
0a9fcdcf06 HostMode.InvokeOnConnected to move ConnectLocalServer out of NetworkClient 2022-12-12 14:23:48 +01:00
vis2k
def22c864d HostMode.cs - to move host mode connection setup out of NetworkClient 2022-12-12 14:13:31 +01:00
vis2k
ca3bfed93a TODO 2022-12-12 13:58:23 +01:00
vis2k
e0ffc66be8 NetworkClient.ConnectHost: local connection setup moved into a separate function 2022-12-12 13:56:13 +01:00
vis2k
1b7906c1ed NetworkManager.StartHostClient renamed to FinishStartHostClient to be more obvious 2022-12-12 13:48:11 +01:00
vis2k
d406a55e49 Utils.CreateLocalConnections for use from NetworkClient.ConnectHost & Tests 2022-12-12 13:40:50 +01:00
vis2k
8c5152dc65 revert: "Weaver: added missing HashSet<T> reader/writer generation after recent PR" - tests are still failing 2022-12-10 22:37:59 +01:00
vis2k
51eeb8a22d add comments 2022-12-10 22:36:27 +01:00
vis2k
5e6b647723 Tests: add missing attribute 2022-12-10 22:16:22 +01:00
vis2k
25794f2411 NetworkClient.InternalAddPlayer: improve error message 2022-12-10 02:47:09 +01:00
vis2k
6f98725247 MIRROR_70_0_OR_NEWER 2022-12-09 21:36:39 +01:00
vis2k
5509bb73bb fix: 2019 support 2022-12-09 21:36:36 +01:00
vis2k
8f480ad963 add comments 2022-12-09 20:47:50 +01:00
vis2k
c994bb41b7 syntax 2022-12-09 20:47:33 +01:00
Reuben Carolan
7b4e174d23 feature: Weaver HashSet<T> support (we already had List<T> support) for cases where we a struct may need to serialize a HashSet member for serialization etc. 2022-12-09 20:45:49 +01:00
MrGadget1024
c36e1f564d Added [Multiplexer] to logging 2022-12-09 09:23:53 -05:00
MrGadget1024
6ae165e308 SimpleWebTransport - Added UNITY_SERVER around Exception logging
- don't need color tags on server
2022-12-09 09:08:17 -05:00
MrGadget1024
33f1f95b8b WebSocketServer- added false for showColor to server side logging 2022-12-09 09:01:40 -05:00
MrGadget1024
1412c4606c Added [SimpleWebTransport] to logging in case using Multiplexer 2022-12-09 08:57:12 -05:00
MrGadget1024
1cf5e7f333 Added [KCP] to logging in case using Multiplexer 2022-12-09 08:42:07 -05:00
MrGadget1024
ce462aea99 Added [Telepathy] to logging in case Multiplexer is used 2022-12-09 08:35:41 -05:00
MrGadget1024
a7fb58d54f Updated NetworkManager Script Template 2022-12-07 16:22:34 -05:00
vis2k
b91c7027a5 fix: kcp V1.23 - fixes #3296 2022-12-07 19:14:59 +01:00
vis2k
98e7d2f475 Basic Example: added GUIConsole for easier debugging 2022-12-07 19:14:42 +01:00
MrGadget1024
519b9e0bd8 fixed comment 2022-12-07 19:14:39 +01:00
MrGadget1024
05e18380c0 Updated Basic Example 2022-12-07 19:14:35 +01:00
vis2k
566407cd86 Tests: fix Unity 2020 compilation 2022-12-05 07:43:25 -05:00
vis2k
5e1f17373a comment 2022-12-04 17:03:57 -05:00
vis2k
d5f7c4bc01 fix: ClientToServer [SyncVar] wouldn't be broadcast to other clients because server never set it dirty 2022-12-04 16:51:24 -05:00
vis2k
4743d27f74 SyncDirection demo: add more spacing 2022-12-04 16:38:08 -05:00
vis2k
9d00ba3261 SyncDirection demo: zoom in 2022-12-04 16:37:16 -05:00
vis2k
1598a7cd15 SyncDirection demo: local player color 2022-12-04 16:36:41 -05:00
mischa
4ae4834f7a
fix: #3290: Weaver HasNetworkConnectionParameter now supports inheritance (#3293)
* test to reproduce

* fix: #3290: Weaver HasNetworkConnectionParameter now supports inheritance
2022-12-04 17:31:41 +01:00
vis2k
859138f137 Weaver: add explanations for Is vs. IsDerivedFrom 2022-12-04 11:00:14 -05:00
vis2k
4c0c5e74d3 Tests: TargetThatIsTotallyValid renamed to TargetRpcWithNetworkConnection for easier debugging 2022-12-04 10:47:55 -05:00
mischa
6d60471868
fix: #3280 #3083 #3217 MultiplexTransport connectionId multiplexing out of int.max range (#3291)
* lookup wip

* so far

* transport lookup

* wip

* okokok

* all done

* better

* x

* tests
2022-12-04 13:57:51 +01:00
vis2k
5991a9a53a fix: MultiplexTransport.ServerStart: AddServerCallbacks is only called once, not for each transport 2022-12-03 22:20:44 -05:00
vis2k
b770f9ffa9 spacing 2022-12-03 20:04:12 -05:00
vis2k
9fd1e65eab syntax: move Multiplex connectionId calculations to the top of the file 2022-12-03 20:01:42 -05:00
vis2k
2566911e78 MultiplexTransport: Test to reproduce #3280 2022-12-03 19:49:13 -05:00
vis2k
d77655f19b comment improved 2022-12-03 19:32:58 -05:00
vis2k
9d212bc117 // A Test behaves as an ordinary method 2022-12-03 19:23:31 -05:00
vis2k
02de011ab0 perf: MultiplexTransport.ServerSend: remove unnecessary O(N) loop 2022-12-03 19:21:56 -05:00
vis2k
25959df80c MultiplexTransportTests: add ServerSend tests via NSubstitute 2022-12-03 19:17:02 -05:00
vis2k
5bfc646bd8 MultiplexTransportTests: add substitute explanations 2022-12-03 19:11:59 -05:00
vis2k
4f45e9eada comments 2022-12-03 19:01:24 -05:00
vis2k
9ad3f08392 MultiplexTransport: parameters switched to be more obvious 2022-12-03 18:59:18 -05:00
vis2k
2b1ebea7b7 MultiplexTransport: ID functions renamed to be more obvious 2022-12-03 18:56:54 -05:00
vis2k
0dfd4e15cc comments 2022-12-03 18:52:13 -05:00
vis2k
33a697896c syntax 2022-12-03 18:46:21 -05:00
vis2k
2def856707 syntax 2022-12-03 18:45:51 -05:00
vis2k
40564da5cc Tests: MultiplexTransport To/From ID computations 2022-12-03 18:42:52 -05:00
vis2k
beb9c04218 comments 2022-12-03 18:39:33 -05:00
vis2k
e8d178688f Tests: MultiplexTest renamed to MultiplexTransportTest 2022-12-03 18:36:32 -05:00
vis2k
576bcd80d7 MultiplexTransport: Id calculations made static for easier testing 2022-12-03 18:31:06 -05:00
vis2k
f4d4563a43 MultiplexTransport: syntax for readability 2022-12-03 18:28:19 -05:00
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