MrGadget1024
e4281fe5bf
fix: fixed warning in test
2023-02-16 08:20:01 -05:00
MrGadget1024
9e0c59526c
fix: Extensions - Remove static StableHashes dictionary
...
- Now that all callers to GetStableHashCode are either one-timers or design-time (weaver) the dictionary is no longer needed.
2023-02-16 08:19:48 -05:00
Robin Rolf
5d6022ff19
Remove outdated comment ( #3385 )
2023-02-16 13:21:01 +01:00
Robin Rolf
8b7bc6858f
perf: Weave in pre-computed function hash for RPCs ( #3384 )
...
* perf: Weave in pre-computed function hash for RPCs
Instead of computing it at runtime for every call
See #3381 , #3377 and #3375
* Update Assets/Mirror/Editor/Weaver/Processors/CommandProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/RpcProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/TargetRpcProcessor.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 13:01:03 +01:00
Robin Rolf
b933dcbe1a
feat: InterestManagementBase ( #3379 )
...
* feat: InterestManagementBase
A interest management base class that allows more advanced interest management by bypassing the built-in HashSet checks via Rebuild overriding
* Update Assets/Mirror/Core/InterestManagementBase.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 12:57:31 +01:00
Robin Rolf
c2d834315c
cleanup: move observer HashSet rebuild logic to IM ( #3383 )
...
This cleanup step prepares for InterestManagement classes being able to customize the rebuild logic, but for that we should move it out of the NetworkServer class
2023-02-16 12:11:54 +01:00
JesusLuvsYooh
e0e262678b
feature: NetworkTransform interpolation can be disabled ( #3378 )
...
* Interpolation off bools for NetworkTransform.
Gives a snap-like effect to position, rotation and scaling.
* Update Assets/Mirror/Components/NetworkTransformBase.cs
* Update NetworkTransformBase.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 04:19:02 +01:00
Robin Rolf
569938c8c7
perf: Use static generic class to cache message id ( #3381 )
...
* perf: Use static generic class to cache message id
we can (ab)use c# generics to cache the message id in a static field
this is significantly faster than doing a runtime Dictionary lookup in my testing (16% thread cpu-> ~0.22% for 121 moving nts)
generic classes have separate static fields per type specification, so we can store things per-type there, exactly what we need!
* Obsolete NetworkMessages.GetId
* Update Assets/Mirror/Core/NetworkMessages.cs
* Copy comment from GetId up to the Id field
* wording
---------
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2023-02-15 16:39:25 +01: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
JesusLuvsYooh
adc28267f7
Updated function name in code summary.
2023-02-12 16:19:43 +00: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
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
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
8596f1d827
breaking: MIRROR_73_OR_NEWER
2023-02-08 02:57:27 -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
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
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
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
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
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
vis2k
ff3039bdb4
breaking: fix: circular calls from Transport -> NetworkClient -> NetworkManager.OnClientDisconnected -> StopClient() -> NetworkClient.Disconnect() -> ...
...
NetworkManager.OnClientDisconnect now doesn't call NetworkClient.Disconnect anymore.
NetworkManager.StopClient() still calls NetworkManager.OnClientDisconnect for compatibility.
2022-12-03 13:49:27 -05:00
vis2k
3a7a5be152
fix : #3152 #3213 NetworkClient.AddTransportHandlers ensures they are only added once, never twice even if a community Transport forgets to call OnDisconnected
2022-12-03 13:36:53 -05:00
vis2k
ce9d52e8fd
fix : #3287 Telepathy NullReferenceException on client after Server was forcefully closed
2022-12-03 13:31:26 -05:00
vis2k
9da1786979
KcpTransport: expose conversion methods
2022-11-30 13:34:45 -05:00
vis2k
aeba5940bf
KcpClient: expose RawReceiveBuffer
2022-11-30 13:29:55 -05:00
vis2k
6938bd15e6
Tanks demo: add NetworkPingDisplay for latency tests
2022-11-30 13:16:31 -05:00
vis2k
f0aae71f16
kcp2k V1.22
2022-11-29 13:33:22 -05:00
MrGadget
563f6feea0
syntax
2022-11-29 06:36:57 -05:00
MrGadget
91c3439948
fix: MatchInterestManagement - Use TryGetValue in Update
2022-11-29 06:35:58 -05:00
MrGadget
904d44333e
MatchInterestManagement - naming consistency
2022-11-29 06:34:19 -05:00
MrGadget
c0908a2f58
fix: SceneInterestManagement - Use TryGetValue in Update
2022-11-29 06:33:33 -05:00
MrGadget
c70145d535
ServerCallback attributes added
2022-11-29 06:23:10 -05:00
MrGadget
94e315caca
TeamInterestManagement- syntax
2022-11-29 06:19:41 -05:00
MrGadget
12c83effbb
fix: SceneInterestManagement - use TryGetValue in OnDestroyed
2022-11-29 06:17:49 -05:00
MrGadget
f67aa64d59
fix: MatchInterestManagement - use TryGetValue in OnDestroyed
2022-11-29 06:16:53 -05:00
MrGadget
186702f810
feat: Add Mirror.Transports AsmDef ( #3282 )
...
- Keeps transports in their own assembly to users' own AsmDef's can reference them.
2022-11-28 12:12:51 +01:00
MrGadget
094b925797
fix: Fix vector3 long warnings ( #3281 )
...
* fix: Suppress Warnings in Vector3Long
* fix comment
* formatting
* Formatting
2022-11-28 12:11:44 +01:00
MrGadget
a86a115a30
Fix time as double unity 2019 ( #3279 )
...
* NetworkServer - TimeAsDouble compatibility for Unity 2019
* NetworkStatistics - TimeAsDouble compatibility for Unity 2019
* Simplified - rely on defines in NetworkTime
2022-11-27 07:35:05 -05:00
MrGadget
abd1c1689d
NetworkRoomManager - Removed OnRoomClientAddPlayerFailed virtual method
...
- Fixes #3168
- There is no good place to call that - use OnRoomClientDisconnect or OnRoomStopClient
2022-11-26 14:03:29 -05:00
MrGadget
71668c530f
Team and Match Interest Management Updates
...
- Fixes #3273 (removed erroneous evaluation in OnCheckObserver)
- NetworkTeam TeamId and Force Shown are now SyncVars for debugging
- Better naming of variables
2022-11-26 13:36:59 -05:00
vis2k
73b83c14cc
Merge remote-tracking branch 'origin/master'
2022-11-24 11:03:34 +01:00
vis2k
d100ecb4c4
kcp2k V1.21 [2022-11-24]
...
- high level refactor, part one.
- KcpPeer instead of KcpConnection, KcpClientConnection, KcpServerConnection
- RawSend/Receive can now easily be overwritten in KcpClient/Server.
for non-alloc, relays, etc.
2022-11-24 10:51:47 +01:00
MrGadget
51209096a3
Updated RigidbodyPhysics Example
2022-11-23 05:56:30 -05:00
MrGadget
8fc73b034b
Updated Examples Player Prefabs
...
Default NT Settings Updated
2022-11-23 05:21:23 -05:00
MrGadget
6c041dce22
Merge branch 'master' of https://github.com/vis2k/Mirror
2022-11-23 05:08:24 -05:00
MrGadget
bd88d665de
Updated Rigidbody Pysics Example
2022-11-23 05:08:10 -05:00
vis2k
e1a5f0300f
perf: kcp2k V1.20 [2022-11-22]
...
- perf: KcpClient receive allocation was removed entirely.
reduces Mirror benchmark client sided allocations from 4.9 KB / 1.7 KB (non-alloc) to 0B.
- fix: KcpConnection.Disconnect does not check socket.Connected anymore.
UDP sockets don't have a connection.
fixes Disconnects not being sent to clients in netcore.
- KcpConnection.SendReliable: added OnError instead of logs
2022-11-23 00:18:41 +01:00
vis2k
9c0814fa54
Tanks demo resaved
2022-11-22 12:04:47 +01:00
vis2k
cc170b2569
update script icon
2022-11-22 12:01:46 +01:00
vis2k
fcf148184e
fix: Unity 2019 Vector3Long semicolon error:
...
https://forum.unity.com/threads/mirror-open-source-networking-for-unity.425437/page-37#post-8592787
2022-11-17 18:41:24 +01:00
JesusLuvsYooh
ca33b91460
A define mistake, fixed Under 2021 support. ( #3276 )
...
There is no HashCode.Combine in this function, so 2021 define is not needed.
Removing the define brings back support for under Unity 2021's
2022-11-17 14:40:12 +01:00
JesusLuvsYooh
eaf16608ca
Support for c# versions under 9 (is not to ! is) ( #3275 )
2022-11-17 14:37:48 +01:00
vis2k
c750851ac4
[RequireComponent(typeof(NetworkTransform))] tags disabled to support both NTs
2022-11-13 18:27:37 +01:00
vis2k
9b39e31e8a
feature: perf: NetworkTransform V3 (Reliable)
2022-11-13 18:09:04 +01:00
vis2k
5f251f00ed
rename NetworkTransform V2 folder
2022-11-13 17:59:54 +01:00
vis2k
c4ca2734fa
NetworkServer.GetEntitySerializationForConnection renamed to SerializeForConnection (shorter)
2022-11-13 16:13:22 +01:00
mischa
260aaf6f8c
perf: bundle Rpcs together for each connection. saves 2 bytes of Rpc message headers per Rpc ( #3257 )
...
* buffer TargetRpcs
* buffer Rpcs
* TODO
* readonly
* ok
* better
* ensure max
* parse on client
* fix size
* oops
* adjust test
2022-11-12 12:53:42 +01:00
vis2k
a9e63724e3
remove old comment
2022-11-11 21:55:27 +01:00
vis2k
b04e8e681a
SetSyncObjectDirtyBit helper function
2022-11-11 21:07:05 +01:00
vis2k
41ef03fff5
OnStartLocalPlayer multiple calls workaround explained
2022-11-11 18:49:43 +01:00
vis2k
7e1a579ff2
OnStartLocalPlayer initialization moved to NetworkClient
2022-11-11 18:25:16 +01:00
vis2k
ce819e253a
OnStartClient initializations moved to NetworkClient
2022-11-11 18:19:04 +01:00
vis2k
8d7b3ec89b
NetworkClient.CheckForStartClient to prepare for OnStartClient cleanup
2022-11-11 18:18:37 +01:00
vis2k
0c116e29f2
perf: NetworkIdentity.observers is now always initialized. removes extra null checks everywhere.
2022-11-10 21:09:29 +01:00
vis2k
264a652abe
use explicit type
2022-11-10 20:49:45 +01:00
vis2k
940a467035
SendToReadyObservers: use explicit type
2022-11-10 20:47:12 +01:00
vis2k
5ffdd06602
OnStartServer isClient assignment moved to caller NetworkServer
2022-11-10 20:27:15 +01:00
vis2k
2c40b15a08
syntax
2022-11-10 20:27:01 +01:00
vis2k
75e7af1312
OnStartServer spawned assignment moved to NetworkServer caller
2022-11-10 20:26:56 +01:00
vis2k
c6df8f01d8
OnStartServer netId assignment moved to NetworkServer caller
2022-11-10 20:26:53 +01:00
vis2k
17d874fee8
OnStartServer netId != 0 check moved to NetworkServer caller
2022-11-10 20:26:49 +01:00
vis2k
e7abbaf531
OnStartServer isLocalPlayer initialization moved to NetworkServer caller
2022-11-10 20:26:34 +01:00
vis2k
f2b0f2bab2
OnStartServer isServer check + initialization moved to NetworkServer for cleaner code
2022-11-10 20:26:29 +01:00
vis2k
d79de6bf0c
fix : #3258 NetworkWriter.WriteString now ensures capacity before manually writing into the buffer
2022-11-10 10:57:13 +01:00
vis2k
53a9717334
fix: Unity 2020 support
2022-11-09 15:04:12 +01:00
vis2k
1dada3bb4b
MIRROR_2022_10_OR_NEWER
2022-11-09 10:55:50 +01:00
vis2k
3617ffac00
comment updated
2022-11-06 20:32:06 +01:00
vis2k
6315260286
syntax
2022-11-06 19:30:54 +01:00
vis2k
761b70e8e7
remove unused import
2022-11-03 16:16:39 +01:00
vis2k
d021c1a01e
TimeSample moved to Tools
2022-11-03 16:15:18 +01:00
vis2k
e6a65bc5b2
breaking: remove SyncVar<T> which was meant to replace [SyncVar]s implementation behind the scenes. this hasn't happened, so we don't actually need it.
2022-11-03 16:09:36 +01:00
vis2k
085ed1da81
NetworkBehaviourSyncVar moved into separate file to keep NetworkBehaviour.cs clean
2022-11-03 15:57:16 +01:00
vis2k
a62452c826
TODO
2022-11-03 15:54:44 +01:00
vis2k
18cc7a0558
Pool moved to Tools
2022-11-03 15:52:39 +01:00
vis2k
a8241e5794
Mathd moved to Tools
2022-11-03 15:52:32 +01:00
vis2k
32561576ec
Tools folder to distinguish between Unity integration and standalone algorithms
2022-11-03 15:50:28 +01:00
vis2k
395c447b02
feature: manual DeltaCompression to prepare for NetworkTransform V3
2022-11-01 17:34:41 +01:00
vis2k
9e352f5be2
Compression: ScaleToLong/Float Vector3Long variants to prepare for NetworkTransform V3
2022-11-01 17:34:10 +01:00
vis2k
701c16a307
feature: Vector3Long to prepare for NetworkTransform V3
2022-11-01 17:33:44 +01:00
MikiBordils
fb95c411ef
fix: NetworkDiscovery BroadcastAddress exposed for iOS support ( #3255 )
...
* exposing BroadCasting Address
iOS build prevents broadcasting to 0.0.0.0, so we needed to expose it to change it for our built
* Update NetworkDiscoveryBase.cs
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2022-10-31 22:12:45 +01:00
vis2k
33e0bea844
CCU test demo: only sync on change
2022-10-31 10:46:34 +01:00
mischa
a2756af514
feature: RemoteStatistics tool ( #3254 )
2022-10-31 10:43:10 +01:00
vis2k
d26d12fb55
feature: CCU test demo
2022-10-31 09:23:26 +01:00
vis2k
68ab1816bb
breaking: NetworkManager.serverTickRate renamed to sendRate because that's what it is
2022-10-31 09:15:19 +01:00
vis2k
723da0cecc
fix: NetworkClient now only tries to broadcast every sendInterval. otherwise ClientToServer NetworkTransform components (which have syncInterval=0) would sync every single tick. prepare for NT V3 as well.
2022-10-30 18:54:50 +01:00
vis2k
3d3a542ddd
comment
2022-10-30 18:53:57 +01:00
vis2k
b0f0c38592
script icons
2022-10-30 12:05:00 +01:00
vis2k
8039bcbda5
syntax
2022-10-27 19:17:42 +02:00
vis2k
c0ac491993
NetworkTransform: reorder code
2022-10-27 19:15:22 +02:00
vis2k
e473d154d9
fix: NetworkRigidbody now uses double time to keep precision over multiple days
2022-10-26 12:28:06 +02:00
vis2k
5abc261320
fix: NetworkLerpRigidbody now uses double time to keep precision over multiple days
2022-10-26 12:27:57 +02:00
vis2k
25d0e7929a
fix: NetworkTransform now always sends at the same sendInterval as time interpolation. as configured in NetworkManager.
2022-10-26 12:17:49 +02:00
vis2k
8d3d623fac
fix: NetworkManager now always applies the exposed NetworkServer.send/tickRate. fixes a bug where some NetworkBehaviours may try to send with NetworkServer.tickRate, which wouldn't be available on client because NetworkManager.StartServer was never called, so the rate was never set.
2022-10-26 11:28:40 +02:00
vis2k
485b65f18d
perf: NetworkBehaviour.IsDirty: check bits before time
2022-10-25 19:05:10 +02:00
mischa
d05feed59e
breaking: NetworkTransform.clientAuthority flag obsoleted. use SyncDirection instead. automatically sets syncDirection if still used. ( #3250 )
2022-10-25 11:53:12 +02:00
mischa
ca25956347
perf: breaking: NetworkTransformChild replaced by NetworkTransform with exposed .target. no more virtual property call. and no more redundant components which do the exact same thing. ( #3249 )
2022-10-25 11:44:24 +02:00
vis2k
79bb48bbf5
Compression: remove unnecessary inline
2022-10-24 12:49:35 +02:00
vis2k
1176494587
fix: NetworkClient.sendRate is now coupled to NetworkServer.sendRate in order to avoid snapshot interpolation errors where server & client may be on different send rates, components use the wrong rate to send vs. interpolate, etc.
2022-10-22 10:41:57 +02:00
vis2k
464bd365fe
NetworkServer: sendRate comments improved
2022-10-22 10:37:20 +02:00
vis2k
b31eeb5a4f
NetworkTransform: force syncDirection to follow the old clientAuthority state to make it obvious that there is only one source of truth
2022-10-22 10:26:31 +02:00
vis2k
dfd4d0b672
NetworkTransform: explain that sendInterval is coupled with time interpolation interval; use OnValidate to force syncInterval so it's more obvious in the Inspector
2022-10-22 10:16:43 +02:00
vis2k
38d94f36b1
NetworkTransform: always show OnGUI buffers. easier to debug issues if they aren't filled.
2022-10-21 19:34:23 +02:00
vis2k
8c09b936b9
syntax
2022-10-21 19:21:55 +02:00
mischa
d46e2eaf74
feature: NetworkBehaviour.SetDirty() to trigger custom OnSerialize without having to call SetSyncVarDirtyBit(1). prepares for NetworkTransform v3. ( #3248 )
...
* perf: SetSyncVarDirtyBit inlining
* feature: NetworkBehaviour.SetDirty() to trigger custom OnSerialize without having to call SetSyncVarDirtyBit(1).
prepares for NetworkTransform v3
* imer
2022-10-21 19:02:46 +02:00
vis2k
7c1fac9085
perf: SetSyncVarDirtyBit inlining
2022-10-21 19:02:41 +02:00
mischa
1b6768a691
feature: perf: NetworkConnectionToClient snapshot interpolated .remoteTimeline to simplify NetworkTransform ( #3247 )
...
* move fields to conn
* syntax
* split into time and value
* timeline moved to conn
* OnTimeSnapshot
* old
* NetworkClient sends TimeSnapshots
* server inserts
* update time interp from server
* buffer size limit moved too
* naming
* fix tests
* non public
* readonly
* comments
2022-10-21 19:02:36 +02:00
vis2k
c07c0797ec
TimeSnapshot moved into it's own file
2022-10-21 12:42:59 +02:00
mischa
e0a91eeb3a
feature: SyncDirection (V2) to easily support client auth components without extra Rpcs/Cmds. previously OnSerialize was only server-to-client direction. ( #3244 )
...
* feature: SyncDirection to easily support client auth components without extra Rpcs/Cmds. previously OnSerialize was only server-to-client direction. (#3232 )
* fix and test
* add test
* remove todo
* comments
* only serialize once
* simplify dirty checks
* syntax
* remove doulbe comments
2022-10-19 23:54:54 +02:00
vis2k
a1fbc55e8a
Tests: syntax for easier debugging
2022-10-19 19:51:30 +02:00
vis2k
6f4c7cb805
feature: NetworkWriter.WriteBytes(byte*) unsafe version to prepare for BitTree delta compression
2022-10-19 19:39:08 +02:00
vis2k
76313cd30c
Mirror.Components.asmdef: allow unsafe to prepare for NetworkTransform V3
2022-10-19 19:39:01 +02:00
vis2k
25a45a9ce8
Revert "Utils.RoundBitsToFullBytes from DOTSNET / Mirror II to prepare for manual per-field Delta Compression for NetworkTransform V3"
...
This reverts commit c7e3dc32d6
.
2022-10-18 09:39:49 +02:00
vis2k
9c2444475c
Tests: allow unsafe
2022-10-17 19:18:01 +02:00
vis2k
c7e3dc32d6
Utils.RoundBitsToFullBytes from DOTSNET / Mirror II to prepare for manual per-field Delta Compression for NetworkTransform V3
2022-10-17 18:41:14 +02:00
vis2k
d9aa7b152e
Compression.ScaleToLong/Float to prepare for next NetworkTransform float<->long compression
2022-10-17 10:04:31 +02:00
vis2k
9d487b3a86
comment
2022-10-15 22:30:24 +02:00
vis2k
743e00bd20
SendTargetRpc: improve error messages
2022-10-15 20:42:43 +02:00
vis2k
ed0b7339eb
assetId is now printed as decimal instead of hex, for consistency with Unity Inspector which also shows it as decimal.
2022-10-14 11:18:33 +02:00
vis2k
270be5f452
fix : #3234 assetId setter now allows overwriting an old assetId after duplicating a prefab.
...
the previous assetId Guid to int commit (4430001521
) changed AssignAssetId() from modifying m_assetId to assetId.set directly, which introduced this bug.
2022-10-14 11:13:42 +02:00
vis2k
8006251382
NetworkIdentity.assetId.set: update explanation, copied the wrong one from Mirror II
2022-10-14 11:00:54 +02:00
vis2k
149d907823
syntax
2022-10-13 17:38:39 +02:00
vis2k
bf55c68d96
unnecessary
2022-10-13 17:27:41 +02:00
vis2k
9120de1016
comment
2022-10-13 13:46:52 +02:00
vis2k
e647df8fa3
feature: NetworkConnection.owned objects are now available on server AND on client
2022-10-13 13:29:06 +02:00
vis2k
6bb42e9e81
breaking: NetworkConnectionToServer.clientOwnedObjects renamed to .owned (simplify API)
2022-10-13 11:03:42 +02:00
vis2k
8cb64383fc
add deprecated dates
2022-10-13 11:01:19 +02:00
mischa
a20bad57e5
breaking: .hasAuthority renamed to .isOwned because it's easier to understand, and to prepare for SyncDirection where there is a difference between: ( #3231 )
...
isOwned = is this one of the client connection's .owned entities?
authority = can we modify this component's state? depends on SyncDirection AND owned
2022-10-13 10:59:39 +02:00
vis2k
90028b43ea
NetworkServer.sendInterval calculated separately so it's easier to change sendRate later
2022-10-13 10:49:07 +02:00
vis2k
1433bb7993
comment
2022-10-12 21:22:16 +02:00
vis2k
2bab435832
perf: NetworkIdentity.Serialize: only iterate if any dirty bit set, otherwise don't need to iterate again
2022-10-12 21:17:10 +02:00
vis2k
4127345f8a
fix: Benchmark demo Spatial Hashing radius reduced from 200 to 30 so the monsters actually despawn when walking out of range in the demo
2022-10-12 21:14:55 +02:00
vis2k
e6886e8a84
fix: ensure Serialize writes nothing at all if not dirty and add test so it's never missed again(!).
...
fixes unchanged objects sending an unnecessary 1 byte dirty mask after recent dirtybits improvement.
2022-10-12 21:06:03 +02:00
vis2k
8ec99fa153
NetworkIdentity: ValidateComponents for use from initialize, serialize, deserialize all together
2022-10-12 12:33:25 +02:00
vis2k
227940e054
comment
2022-10-12 11:13:58 +02:00
vis2k
9dd04e2efa
fix: NetworkIdentity.MaxNetworkBehaviours and EnsureMax function so we have the same code in both places, where previously Serialize() still checked for 255 instead of 64
2022-10-12 11:08:12 +02:00
mischa
c179d233a1
fix: Unity 2019, 2020 support added again ( #3230 )
...
* fix: Examples/AdditiveLevels/Prefabs/Portal doesn't depend on TextMeshPro anymore (for 2019 compatibility)
* packages: removed unnecessary TextMeshPro (causes errors in Unity 2019)
* fix: NetworkReader byte[] constructor added again for 2019 support
* fix: NetworkReader byte[] SetBuffer added again for 2019 support
* fix: NetworkClient OnTimeSnapshotMessage: NetworkTime.localTime for 2019 support
* fix: NetworkServer NetworkLateUpdate: NetworkTime.localTime for 2019 support
* fix: Read/WriteGuid support for 2019
* fix: NetworkTransformBase: NetworkTime.localTime for 2019 support
* fix: Grid2D new hashSet constructor without capacity for 2019 support
* 2019
* this
2022-10-10 23:32:13 +08:00
vis2k
e7110d3015
TODO
2022-10-10 14:52:19 +02:00
vis2k
5efcd8f113
inlining
2022-10-10 10:56:16 +02:00
vis2k
2310c248c1
NetworkBehaviour.IsDirty: shorter
2022-10-10 10:56:05 +02:00
vis2k
76ea4369ba
NetworkClient: common Initialize() method for all connect functions
2022-10-10 10:37:37 +02:00
vis2k
fe6147dd4d
fix: NetworkClient ConnectHost now initializes time interpolation as well
2022-10-10 10:34:08 +02:00
mischa
88e4260252
perf: NetworkBehaviour.Serialize safety check reduced from 4 bytes length header to 1 byte length hash, while keeping error correction ( #3229 )
...
* wip
* self correction
* separate function
* test
2022-10-10 15:51:15 +08:00
mischa
b5ac61c7b2
perf: NetworkIdentity.Serialize bandwidth reduced from 1 byte per component index to (roughly) 1 bit per component ( #3228 )
...
* serialize with varint masks
* deserialize
* test
* fixfix
* redundant
* unused
* comment
* faster
* old
* comment
* comment
2022-10-10 15:50:28 +08:00
vis2k
01cd1041f6
update comment
2022-10-09 22:34:57 +02:00
vis2k
2a3e681e03
comment
2022-10-09 16:47:12 +02:00
vis2k
58a89a5d24
Tests: split VarInt and VarUInt tests
2022-10-09 15:25:52 +02:00
vis2k
16d5a7e6ed
naming
2022-10-09 15:12:01 +02:00
vis2k
822ecdaaba
syntax
2022-10-09 15:11:23 +02:00
vis2k
d2775e5d42
NetworkIdentity.DeserializeAll renamed to Deserialize, now that the other Deserialize method was moved to NetworkBehaviour
2022-10-09 14:03:36 +02:00
vis2k
482d5777d9
NetworkIdentity.SerializeAll renamed to Serialize, now that the other Serialize method was moved to NetworkBehaviour
2022-10-09 14:03:11 +02:00
vis2k
389726b011
NetworkIdentity.Deserialize(NetworkBehaviour) moved to NetworkBehaviour.Deserialize
2022-10-09 13:57:43 +02:00
vis2k
882b3a69b3
NetworkIdentity.Serialize(NetworkBehaviour) moved to NetworkBehaviour.Serialize
2022-10-09 13:56:46 +02:00
vis2k
10296e0586
syntax
2022-10-09 13:51:01 +02:00
vis2k
10e34488e2
NetworkIdentity: OnDeserializeAllSafely renamed to DeserializeAll
2022-10-09 13:45:56 +02:00
vis2k
41f60a5486
NetworkIdentity: OnSerializeAllSafely renamed to SerializeAll
2022-10-09 13:45:08 +02:00
vis2k
b292aebd08
NetworkIdentity: OnDeserializeSafely renamed to Deserialize
2022-10-09 13:42:22 +02:00
vis2k
deeddac185
NetworkIdentity: OnSerializeSafely renamed to Serialize
2022-10-09 13:42:02 +02:00
vis2k
22b3c71a6c
comment
2022-10-09 13:38:24 +02:00
vis2k
0745e44c5c
syntax
2022-10-09 13:20:57 +02:00
vis2k
3b78b87ee9
perf: all client NetworkTransforms now run on the same NetorkClient.timeline instead of each component computing its own
2022-10-09 10:45:27 +02:00
vis2k
47d5ecd776
fix: LatencySimulation now flushes properly. fixes barely any packets getting through even on 0 settings
2022-10-09 10:31:48 +02:00
vis2k
a6d055db51
syntax
2022-10-09 10:09:44 +02:00
vis2k
666d1d7df2
fix: LatencySimulation now uses Time.unscaledTimeAsDouble for long running server precision
2022-10-09 10:08:47 +02:00
vis2k
5a2962c27b
syntax
2022-10-09 10:06:37 +02:00
vis2k
f1f7b37288
NetworkManager: always show OnGUI because snapshot interpolation gui is useful in builds / for debugging as well
2022-10-09 10:04:38 +02:00
vis2k
b9bf63790f
breaking: perf: fix: NetworkTime from NetworkClient snapshot interpolation timeline.
...
-> fixes initial delayed NetworkTime jump after 1-2s from 1.. to 500... depending on how long server was running.
-> improves accuracy / precision of NetworkTime
-> prepares for NetworkTransform & NetworkTime being on the same timeline instead of each component calculating their own timeline separately
2022-10-09 08:40:01 +02:00
vis2k
7298de3929
feature: global NetworkClient snapshot interpolation timeline.
...
=> for usage as significantly better NetworkTime after
=> for usage in NetworkTransform after
2022-10-09 08:36:17 +02:00
vis2k
f5d1a55fdd
fix tests after recent commit
2022-10-08 08:58:09 +02:00
vis2k
1ebb4368dd
perf: NetworkServer: Broadcast() now only runs every tickInterval, even if Application.targetFrameRate isn't set in host mode.
...
previously a host may run at 120 Hz, and even with tickInterval set to 10 Hz, Broadcast() would run 120 times per second, checking every component's dirty bits + send interval.
note that the actual _send rate_ wasn't broken.
this change simply reduces the need to check for "has send rate elapsed?"
=> prepares for NetworkClient time snapshot interpolation, where time snapshots need to be sent only every sendInterval.
=> if host mode would send every update, this would be way too much.
2022-10-07 21:44:02 +02:00
vis2k
0f8553ff2f
feature: AccurateInterval from Mirror II to prepare for proper RemoteStatistics measurements & snapshot time interpolation, which requires accurate send interval even if .targetFrameRate can't be set (i.e. in host)
2022-10-07 21:20:38 +02:00
vis2k
9870705141
Header
2022-10-06 13:53:11 +02:00
vis2k
c940963779
breaking: NetworkServer.tickRate and .tickInterval, set from exposed NetworkManager.serverTickInterval.
...
prepares for NetworkClient time interpolation
2022-10-06 13:50:48 +02:00
vis2k
d72c769882
NetworkRoomManager: remove redundant maxConnections validation
2022-10-03 09:28:15 +02:00
vis2k
26144edc22
syntax
2022-10-03 09:27:49 +02:00
vis2k
b4149f2b94
syntax
2022-10-03 09:06:05 +02:00
vis2k
4fbbc0cbc1
NetworkManager: SetupClient() for consistency with SetupServer()
2022-10-03 08:51:50 +02:00
vis2k
d4b1239dc4
syntax
2022-09-28 11:57:02 +07:00
vis2k
7a7b5a0072
syntax
2022-09-28 11:50:54 +07:00
vis2k
02336b41b5
syntax
2022-09-28 11:34:18 +07:00
vis2k
b56b12ff54
partial classes
2022-09-28 11:33:52 +07:00
vis2k
7123a7925c
feature: Snapshot Interpolation split into time + value interpolation (backported from Mirror II) to allow for global time interpolation with local value interpolation, instead of interpolating everything locally per-component
2022-09-27 13:40:57 +07:00
vis2k
34acc450bd
syntax
2022-09-27 12:19:15 +07:00
vis2k
fcc6c31c7a
breaking: NTSnapshot renamed to TransformSnapshot
2022-09-27 12:19:08 +07:00
vis2k
6988853ee2
comment
2022-09-27 11:55:51 +07:00
vis2k
136b8d9956
feature: NetworkWriter implicit ArraySegment conversion for convenience.
...
also allows for implicit NetworkWriter to NetworkReader conversion.
2022-09-27 11:53:04 +07:00
vis2k
a84bf0769e
syntax
2022-09-27 11:49:59 +07:00
vis2k
2037b317c1
NetworkWriter.WriteBytes: rename parameter to avoid name collision
2022-09-25 13:56:30 +07:00
vis2k
618b7a6e16
NetworkWriterExtensions: removed static state by moving .encoding into each writer
2022-09-25 13:53:12 +07:00
vis2k
ab9a92388c
Tests: ReadString_InvalidUTF8
2022-09-25 13:53:12 +07:00
vis2k
2ce8ee72a8
NetworkReaderExtensions: removed static state by moving .encoding into each reader
2022-09-25 13:53:12 +07:00
vis2k
e97da2605c
feature: NetworkWriter.ToString in form of "[DD-CC-BB-AA-FF @ 5/1000]"
2022-09-25 13:26:58 +07:00
vis2k
61318d4c82
NetworkWriter.DefaultCapacity exposed
2022-09-25 13:26:53 +07:00
vis2k
3b8810f532
feature: NetworkWriter.Capacity
2022-09-25 13:24:08 +07:00
vis2k
606f147872
comment
2022-09-25 13:20:59 +07:00
vis2k
3664f26d65
Read<T>: error message improved
2022-09-25 13:19:44 +07:00
vis2k
df875a4bc1
syntax
2022-09-25 13:18:38 +07:00
vis2k
6fa5a65cd3
NetworkReader.ToString improved to be more readable: "[B2-C3-D4 @ 0/3]"
2022-09-25 13:18:04 +07:00
vis2k
27398721a2
Extensions: ArraySegment.ToHexString for convenience
2022-09-25 13:17:02 +07:00
vis2k
9525a4649d
NetworkReader.ReadBytesSegment: ensure count >= 0 & guarantee exception with test.
2022-09-25 13:09:54 +07:00
vis2k
44e56ae753
NetworkReader.ReadBytes: ensure count >= 0 & guarantee exception with test.
...
previously it did throw the same exception unintentionally in the Array.Copy call
2022-09-25 13:08:45 +07:00
vis2k
c64925f9f6
Tests cleanup
2022-09-25 13:04:06 +07:00
vis2k
78fb0b57ae
NetworkReader.ReadBytesSegment: use .Remaining
2022-09-25 13:00:57 +07:00
vis2k
98be66ec13
NetworkReader.ReadBytes: use .Remaining
2022-09-25 13:00:38 +07:00
vis2k
6e042ed2a8
NetworkReader.ReadBlittable: use .Remaining
2022-09-25 13:00:13 +07:00
vis2k
81e666af9e
NetworkReader: remove SetBuffer byte[] variant. implicit ArraySegment conversion is enough.
2022-09-25 12:48:09 +07:00
vis2k
0ffa971413
NetworkReader: remove byte[] constructor, implicit ArraySegment constructor is enough
2022-09-25 12:46:47 +07:00
vis2k
c9642dbbb2
NetworkReader.ReadArray: use .Remaining
2022-09-25 12:44:06 +07:00
vis2k
451cd26b47
syntax
2022-09-25 12:43:19 +07:00
vis2k
5fa5269a11
NetworkReader: more readable syntax
2022-09-25 12:43:12 +07:00
vis2k
d3ee9e325e
NetworkReader.Length renamed for Capacity (more obvious, similar to List.Capacity)
2022-09-25 12:43:03 +07:00
vis2k
ee6bbaa8ba
NetworkReader.Remaining uses buffer.Count directly
2022-09-25 12:40:12 +07:00
vis2k
e3c4bf5eba
syntax
2022-09-25 12:38:08 +07:00
vis2k
cf0b884c1f
MessagePacking renamed to NetworkMessages (it contains more network message code than just packing)
2022-09-25 12:21:38 +07:00
vis2k
8249508fa7
MessagePacking.Unpack renamed to PackId for consistency
2022-09-25 12:10:29 +07:00
vis2k
1baadc1dbe
syntax & comments
2022-09-25 12:08:13 +07:00
vis2k
458eeca0e8
syntax
2022-09-25 12:07:14 +07:00
vis2k
92a766af36
update comment
2022-09-25 12:06:16 +07:00
vis2k
4d5bf360ec
MessagePacking.GetId: remove unnecessary AND
2022-09-25 12:05:28 +07:00
vis2k
16c572cfc4
syntax
2022-09-25 12:05:17 +07:00
vis2k
13e6c77bad
MessagePacking.HeaderSize renamed to IdSize
2022-09-25 12:03:49 +07:00
vis2k
c97bf5a06a
syntax
2022-09-25 12:00:03 +07:00
vis2k
f24acb6372
Transport.activeTransport renamed to .active
2022-09-25 12:00:03 +07:00
vis2k
94345c94bf
Tests: Mathd
2022-09-25 11:50:56 +07:00
vis2k
dea63ba59e
syntax
2022-09-25 11:49:35 +07:00
vis2k
827a6d310c
syntax
2022-09-25 11:49:11 +07:00
vis2k
4ea52a0283
fix: InterestManagement.Awake is now protected virtual ( #3214 )
2022-09-24 22:13:46 +07:00
vis2k
6ba926bcb1
NetworkManager: serverTickInterval for convenience (prepares for remote statistics)
2022-09-24 22:08:20 +07:00
vis2k
80abe21047
NetworkManager: auto connect client build option for CCU test bots
2022-09-24 22:08:03 +07:00
vis2k
4d5e55511c
Utils.KeepInScreen
2022-09-24 22:02:35 +07:00
vis2k
4dd3c6df8c
Utils.PrettySeconds
2022-09-24 22:02:30 +07:00
vis2k
72f65a1b66
rename folder
2022-09-24 21:58:23 +07:00
vis2k
c49cc5f422
Examples/_Common folder
2022-09-24 18:17:39 +07:00
vis2k
4430001521
breaking: perf: assetId as uint instead of Guid. saves 12 bytes and much conversion magic (as suggested by james). may need to resave prefabs once in case of spawn issues.
2022-09-24 18:08:12 +07:00
vis2k
9c5e10f71b
breaking: NetworkBehaviour.SerializeSyncVars return type changed from bool to void to simplify weaver (and reduce branches)
2022-09-24 17:30:20 +07:00
vis2k
7c7f83362b
breaking: perf: NetworkIdentity/NetworkBehaviour OnSerialize return type changed from bool to void to a-void confusion (and branches)
2022-09-23 14:21:48 +07:00
vis2k
92ff55120a
weaver comments
2022-09-23 14:21:31 +07:00
vis2k
29fef498eb
Weaver NetworkBehaviourProcessor: add explanation
2022-09-23 14:19:25 +07:00
vis2k
e63742523c
fix broken tests caused by default transport adding. also fixes tests using kcp unintentionally.
2022-09-23 13:55:54 +07:00
vis2k
99851945e9
NetworkManager.transport field made public so it can be set from tests
2022-09-23 13:55:17 +07:00
vis2k
b82bb86fc7
remove unused import
2022-09-23 13:39:12 +07:00
vis2k
6941df570c
NetworkAnimator: remove unnecessary XML comments
2022-09-23 13:37:13 +07:00
vis2k
498c3c568a
remove unused imports
2022-09-23 13:32:24 +07:00
vis2k
63e3780ecd
Runtime folder renamed to Core. makes it more obvious that Components/, Transports/, Authenticators/ etc. are optional
2022-09-23 13:30:08 +07:00
vis2k
f1e53a09ae
remove old Runtime/Transports folder
2022-09-23 13:29:21 +07:00
vis2k
7a8a3c6e1e
KCP transport moved to root Transports folder; removed old auto upgrading which would require a circular dependency
2022-09-23 13:27:19 +07:00
vis2k
70d82f844d
kcp2k moved to root Transports folder
2022-09-23 13:25:57 +07:00
vis2k
8abf17acae
Middleware transport moved to root Transports folder
2022-09-23 13:24:55 +07:00
vis2k
3e4f4d7614
Multiplex transport moved to root Transports folder
2022-09-23 13:23:33 +07:00
vis2k
1507c764cc
Telepathy transport moved to root Transports folder
2022-09-23 13:21:56 +07:00
vis2k
1c9101b3d4
LatencySimulation transport moved to root Transports folder
2022-09-23 13:21:21 +07:00
vis2k
78e65c40ec
Transports folder next to Components; SimpleWebTransport moved from Runtime to Transports
2022-09-23 13:19:19 +07:00
vis2k
de830650a5
script icons
2022-09-23 13:12:47 +07:00
vis2k
a8c84fe9b8
perf: NetworkIdentity.assetId is now cached to avoid expensive "new GUID" construction
2022-09-17 17:13:56 +08:00
vis2k
a94fe67c23
Utils.IsSceneObject common function for NetworkServer/Client
2022-09-17 17:04:25 +08:00
vis2k
a99bc0ebf5
NetworkClient: ConsiderForSpawning renamed to IsSceneObject because that's what it checks
2022-09-17 16:58:52 +08:00
vis2k
4654a281f3
NetworkServer: ValidateSceneObject renamed to IsSceneObject - that's what it checks
2022-09-17 16:58:13 +08:00
vis2k
0fbf400697
fix: Tanks demo: remove light from projectile as well to fix visual glitches
2022-09-17 16:53:15 +08:00
vis2k
478e1d8c0e
perf: NetworkWriter.WriteString now writes directly into the buffer without the intermediate stringBuffer step
2022-09-17 16:51:03 +08:00