vis2k
98082c8527
comments
2021-09-16 14:50:06 +08:00
vis2k
3da14d2430
Tests: SetDirtyBit
2021-09-16 14:49:33 +08:00
vis2k
f43a29e712
NetworkBehaviour.AnySyncObjectDirty: reuse DirtyobjectBits
2021-09-16 14:42:44 +08:00
vis2k
0ad7cf7da7
Tests: IsDirty checks sync interval
2021-09-16 14:41:31 +08:00
vis2k
58ef1faaf9
Tests: IsDirty
2021-09-16 14:40:30 +08:00
vis2k
7828f25875
Tests: add SyncVars
2021-09-16 14:38:43 +08:00
vis2k
d9320b72f4
syntax
2021-09-16 14:37:06 +08:00
vis2k
cc22fabe1d
syntax
2021-09-16 14:36:38 +08:00
vis2k
b5b3d33704
syntax
2021-09-16 14:35:31 +08:00
vis2k
f161fa8f43
NetworkBehaviour: DirtyObjectBits grouped to the dirty code section
2021-09-16 14:35:08 +08:00
vis2k
0954fb2b44
comment
2021-09-16 14:32:18 +08:00
vis2k
6b57e34d80
comment
2021-09-16 14:30:22 +08:00
vis2k
42e5a4d5ce
NetworkBehaviourDirtyBitsTests: AnySyncObjectDirty
2021-09-16 14:28:29 +08:00
vis2k
2f2feb4d93
Tests: NetworkBehaviourDirtyBitsTests to prepare for cleanups
2021-09-16 14:21:34 +08:00
vis2k
860ee754f4
comment
2021-09-16 14:14:11 +08:00
vis2k
cf02df3a72
comment
2021-09-16 14:12:02 +08:00
vis2k
c4cc416385
comment
2021-09-16 14:11:01 +08:00
vis2k
bae099a981
syntax: NetworkBehaviour: group dirty bit code together
2021-09-16 14:10:20 +08:00
vis2k
6bd5cd7bb9
comment
2021-09-16 14:08:42 +08:00
vis2k
1b842bb168
comments
2021-09-16 14:06:29 +08:00
vis2k
e9a6b6e3d3
breaking: get/setSyncVarHookGuard renamed to Get/SetSyncVarHookGuard
2021-09-16 13:53:21 +08:00
vis2k
e4305b9d97
fix: disable weaver registered twice logs on ILPP again
2021-09-16 13:51:36 +08:00
vis2k
bb61c5324f
comment
2021-09-16 13:39:25 +08:00
vis2k
f479a7404a
syncVarDirtyBits comment
2021-09-16 13:38:39 +08:00
vis2k
b6fad02f13
remove unused import
2021-09-16 13:32:45 +08:00
MrGadget1024
5cde52171f
formatting
2021-09-12 17:30:44 -04:00
MrGadget1024
c0dba76d35
Fixed typos in comments
2021-09-12 16:48:54 -04:00
MrGadget1024
4797007979
Removed unnecessary componet
2021-09-11 11:55:32 -04:00
vis2k
3bd30d13e2
Revert "Syntax"
...
This reverts commit 73c47b5fc3
.
2021-09-07 11:22:42 +08:00
Justin Nolan
32f0fa47ef
Update weaver log, remove unused test and make transport send methods abstract ( #2910 )
...
* Turn on duplicate writer/reader logs in weaver
* Make Transport Client/ServerSend abstract
* Remove unused test
2021-09-07 11:20:48 +08:00
MrGadget1024
fe021f8fe7
fix: updated NetworkTransform2k test
2021-09-06 14:21:58 -04:00
MrGadget1024
73c47b5fc3
Syntax
2021-09-06 14:21:58 -04:00
vis2k
198fed4bdf
comment
2021-09-07 01:16:45 +08:00
MrGadget1024
e565fce30b
Updated comments
2021-09-06 13:15:36 -04:00
MrGadget1024
50ee8737a5
Moved FalbackTransport to Empty folder
2021-09-06 13:07:13 -04:00
MrGadget
8612c023a6
breaking: Remove Obsoletes ( #2909 )
...
* breaking: Remove Obsoletes
- MIRROR_47_0_OR_NEWER symbol added
- A few obsoletes with Network Visibility remain...not ready to remove just yet.
* fixed test
2021-09-07 00:10:36 +08:00
MrGadget1024
3afd3ba726
Updated deprecation dates
...
- We still need to replace NetworkOwnerChecker
2021-09-06 11:31:12 -04:00
MrGadget1024
9c4cc2926f
fix: NTv2 interpolateScale default false, like syncScale
2021-09-06 11:15:46 -04:00
MrGadget1024
d457103850
fix: Updated NTv2 settings in examples
2021-09-06 10:01:02 -04:00
MrGadget1024
f2b3329c6f
feat: Updated Additive Scenes example
...
- Now uses Distance Interest Management
- Adjusted position & rotation of scene objects
- Tank and Player have custom distance components
2021-09-06 09:36:55 -04:00
vis2k
1827b9558b
remove unnecessary test
2021-09-06 17:25:59 +08:00
vis2k
5ab2ef0c6a
Test: remove unused
2021-09-06 17:23:51 +08:00
James Clancey
8400cc46cd
Fixes a crash, if you stop discovery. ( #2908 )
...
* Fixes a crash, if you stop discovery.
* Update NetworkDiscoveryBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-09-06 17:17:34 +08:00
vis2k
d23403c0a3
NetworkTransformBase: expose IsClientWithAuthority
2021-09-05 20:20:22 +08:00
Justin Nolan
5bfc96d8ba
Remove obsolete weaver method calls ( #2904 )
...
* Weaver uses NetworkClient.connection instead of NetworkClient.readyConnection for client targetrpcs
* Update weaver tests to not use obsoletes
* Update test to expect SyncList<int> instead of SyncListInt
2021-09-05 19:30:50 +08:00
JesusLuvsYooh
7d4d5bf597
Default variables adjusted. ( #2899 )
...
- Old default variables are for 'worst case connection' types, or fine for casual social game movement.
- It should be set as minimum delay, whilst still containing some smooth buffer data by default.
- Tool tip suggests what users can change it to for non-ideal connections from the new default value.
- First impressions are vital.
2021-09-04 20:44:54 +08:00
vis2k
5128c4f987
MIRROR_46_0_OR_NEWER
2021-09-03 14:11:16 +08:00
vis2k
57f9923f78
OnTransportData: too short error changed to warning. it can happen if an attacker sends random data.
2021-09-02 19:30:37 +08:00
vis2k
f67704bbd9
UnpackAndInvoke: invalid message header errors changed to warnings. it can happen if an attacker sends random data.
2021-09-02 19:29:31 +08:00
vis2k
2026b6038b
Tests for #2882
2021-09-02 19:17:56 +08:00
vis2k
0c65d29a32
NetworkServer/NetworkClient: UnpackAndInvoke disconnect responsibility moved to caller to avoid unbatcher count error. we already know what happened and we already disconnect anyway.
2021-09-02 19:10:10 +08:00
vis2k
99e0a6f401
update comments
2021-09-02 19:01:18 +08:00
vis2k
86eeecc9cf
fix : #2882 UnpackAndInvoke now errors and disconnects in case of missing handler. This is necessary because messages in a batch are not length prefixed. we always need to read to the end, otherwise it overlaps into the next one, causing undefined behaviour.
2021-09-02 18:50:01 +08:00
vis2k
181267b99d
add explanation to errors
2021-09-02 18:39:29 +08:00
vis2k
bce20b5f46
add comment
2021-09-02 18:36:36 +08:00
vis2k
3e4def126f
fix: NetworkServer/NetworkClient batch processing now detects ever growing batches (as caused by #2882 )
2021-09-02 18:31:43 +08:00
vis2k
9578deeb55
typo
2021-09-02 17:43:35 +08:00
vis2k
f6399f91db
Tanks example: add GUIConsole to camera for easier debugging
2021-09-02 13:50:03 +08:00
MrGadget1024
d559d45031
fixed usings order
2021-08-31 10:45:03 -04:00
vis2k
04c364346e
fix: Weave via ILPostProcessor (Unity 2020+) fixes #2872 #2685 #1491 #2683 #2880 ( #2891 )
...
* WeaverTypes: make imported ReaderExtensions public
* WeaverTypes: import WriterExtensions too
* process reader/writer extensions
* rebase squashed previous ilpostprocessor branch
* adjust to weaver preparations changes
* fix: show strack trace
* better
* readability
* fix file not found cecilx exception
* fix rocks nto found exception
* syntax
* pass Mirror.dll to Weave()
* ILPostProcessorAssemblyResolver from paul
* comments, ifdef, syntax
* ILPostProcessorAssemblyResolver: add logging
* ILPostProcessorAssemblyResolver: add warnings on why Resolve() failed
* comments
* better warning
* rename
* use the custom resolver
* fix: ILPostProcessorReflectionImporter to fix System.Private.CoreLib not being found in Resolver
* add TODO
* comment
* fix Mirror.dll Resolve() issues in ReaderWriterProcessor when resolving from the passed Mirror.dll.
DefaultAssemblyResolver doesn't work with ILPostProcessor.
* fix comment
* check mirror assembly resolve result
* pass resolver to weaver
* fix Mirror.dll resolving Mirror.dll types NullReferenceException
* comments
* syntax
* comments
* readability
* syntax
* forgot to save
* rebase
* write
* fix self referencing Mirror.dll assembly
* disable log
* make tests work again
* comment
* comment
* fix rebase
* fix rebase
* comment
* fix: WeaverAssembler: only invoke weaver manually on mac. ILPP is invoked on windows automatically.
* this too
* remove comment
* ifdef out CompilationFinishedHook
* CompiledAssemblyFromFile
* comments
* tests assembly renamed to access compilationpipeline
* wip
* comments
* handle logs
* move file
* use WeaverTests error handling functions
* ILPP hook: don't log weaving failed errors for consistency with old method, and so that tests still work
* ILPPLogger: don't log prefix
* disable weaving succeeded log
* remove comment
* WeaverAssembly: save result to file
* move
* Weaver tests: compilationpipeline dependencies moved into Unity.Mirror.Weaver.CodeGen assembly.
so Tests assembly is actually weaved.
* disable self reference warning
* CompiledAssemblyFromFile simplified
* remove unused
* comments; run ILPP in all cases not just on mac
* ignore compilermessages on 2020+.
fixes windows tests not running.
* comment
* fix: ILPostProcessor ignore define added so WeaverAssembler can tell it not to run after being invoked by Unity after AssemblyBuilder.Build(). fixes SyncVarSyncList test failing on windows because ILPP was ran on it twice.
* typo
* comment
* comment
* static
* ifdef for 2019 support
* ifdef for 2019
2021-08-29 15:43:20 +08:00
ninjakickja
92965731d1
fix: Fix delayed movement in client authority mode ( #2856 )
...
* Fix - From !isLocalPlayer to !hasAuthority
Changed !isLocalPlayer to !hasAuthority because object might not be player object.
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
* Fix - delayed movement in clients in ClientAuthority mode - NetworkTransformBase.cs
Fixed issue where clients experience delayed movement in client authority mode.
Problem: Clients update the server first, server builds buffer then moves object, and then sends server's current snapshot to all the other clients who then build their buffers first before moving. This results in delayed movement in clients.
Changed the process to pass on the snapshot which the authoritative client updates the server onwards to other clients immediately instead and added checks to ensure server only broadcasts when object is on server authority or on host client authority.
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-28 23:23:57 +08:00
vis2k
aff6a8a9c9
fix: WeaverTests 'type was declared in both UnityEngine.dll and UnityEngine.CoreModule.dll'
2021-08-27 22:38:18 +08:00
vis2k
851ad16a17
breaking: Weaver: add ReaderWriterProcessor [Runtime/InitializeOnLoad] Attributes without Reflection ( #2893 )
...
* breaking: Weaver: [InitializeOnLoad] attribute is now added without using Reflection.
(possibly a breaking change according to the comment, although it's not obvious why it would break)
* breaking: Weaver: [RuntimeInitializeOnLoad] attribute is now added without using Reflection.
(possibly a breaking change according to the comment, although it's not obvious why it would break)
* comments
* fix builds
2021-08-27 21:06:22 +08:00
vis2k
e87f1cb6eb
Weaver: IsEditorAssembly moved into Helpers
2021-08-26 15:38:24 +08:00
vis2k
67418620fc
Weave: WeaveFromFile simplified
2021-08-26 13:16:05 +08:00
vis2k
bf5b0e36ec
Weaver: FindMirrorRuntime changed to FindCompilationPipelineAssembly
2021-08-26 13:08:31 +08:00
vis2k
6d1a13fc27
syntax
2021-08-26 13:06:59 +08:00
vis2k
bb8268dd06
typo
2021-08-26 13:05:02 +08:00
Shaun He
56910a1f70
* fix: The type or namespace name 'Exception' could not be found ( #2889 )
2021-08-25 12:17:02 +08:00
vis2k
95b009a126
Weaver WeaveFromFile: remove unused parameter
2021-08-24 23:15:36 +08:00
vis2k
e8cf20847d
Weaver: move writing out of Weave()
2021-08-24 12:45:28 +08:00
vis2k
7088938bb7
Weaver: pass AssemblyResolver to Weave() so ReaderWriterProcessor can resolve Mirror.dll from CurrentAssembly's References instead of passing the AssemblyDefinition / using reflection / opening the file from Weaver / etc.
...
-> prepares for ILPostProcessor which needs to use the resolver to find it
2021-08-23 19:03:50 +08:00
vis2k
5d629b0fb7
syntax
2021-08-22 21:36:28 +08:00
vis2k
41f1c7abb8
syntax
2021-08-22 21:36:04 +08:00
vis2k
ad107e3b84
comments on why reflection is used
2021-08-22 21:33:19 +08:00
vis2k
46368df7fe
rename
2021-08-22 21:30:19 +08:00
vis2k
c6b9b33a47
Weaver: ReaderWriterProcessor AddRuntimeInitializeOnLoadAttribute / AddInitializeOnLoadAttribute helper functions
2021-08-22 21:30:00 +08:00
vis2k
057d765656
syntax
2021-08-22 21:08:04 +08:00
vis2k
b7ec1ebfad
Weaver: Weave() now requires MirrorAssembly parameter. we resolve it in CompilationFinishedHook instead of ReaderWriterProcessor.
...
-> all processors can easily access the mirror assembly if necessary
-> CompilationPipeline doesn't have to be referenced anymore, which would break ILPostProcessor
-> Weaver simply weaves given assemblies now, without opening anything
2021-08-22 21:02:24 +08:00
vis2k
38e6cfb893
syntax
2021-08-22 20:56:21 +08:00
vis2k
0c698df4ca
rename
2021-08-22 20:55:21 +08:00
vis2k
20be56079c
syntax
2021-08-22 20:54:33 +08:00
vis2k
9db804467c
syntax
2021-08-22 20:52:58 +08:00
vis2k
08fdffd6ab
comments
2021-08-22 20:49:37 +08:00
vis2k
852ef64034
Weaver: syntax
2021-08-22 20:42:11 +08:00
vis2k
16579ea9e8
Weaver CompilationFinishedHook: FindMirrorRuntime returns the assembly so we can use that later
2021-08-22 20:34:54 +08:00
vis2k
98737b8863
rename and clarify
2021-08-22 17:36:07 +08:00
vis2k
8db0f34f2c
Weaver: add comment
2021-08-22 17:18:20 +08:00
vis2k
265a6384e1
ReaderWriterProcessor: ProcessMirrorAssemblyReaderWriterExtensions helper function for cleaner code
2021-08-22 17:08:31 +08:00
vis2k
2420a6d18b
Weaver: add comments
2021-08-22 00:30:57 +08:00
vis2k
6ba4124724
Weaver: weaverTypes doesn't need to be public anymore
2021-08-21 16:31:44 +08:00
vis2k
59b2d731ea
WeaverClientServerAttributeTests: remove dependencies on Weaver.weaverTypes
2021-08-21 16:31:34 +08:00
vis2k
eb04bb4d58
syntax
2021-08-21 16:14:53 +08:00
vis2k
9d43d3c6c6
remove xml comment
2021-08-21 16:14:29 +08:00
vis2k
737a2b1b28
syntax
2021-08-21 14:44:26 +08:00
vis2k
37cfdbbcae
comment
2021-08-21 14:43:58 +08:00
vis2k
32d6eb0689
typo
2021-08-21 14:42:11 +08:00
vis2k
3b756ecdc8
WeaverTestsBuildFromTestName split into separate file
2021-08-21 13:56:39 +08:00
vis2k
7d0ac8e992
comment
2021-08-21 13:52:57 +08:00
vis2k
e1f04153b1
syntax
2021-08-21 13:52:08 +08:00
vis2k
de20998dcf
syntax
2021-08-21 13:51:07 +08:00
vis2k
8af6e02420
remove unused
2021-08-21 13:50:04 +08:00
vis2k
d1a7dadb40
syntax
2021-08-21 13:49:43 +08:00
vis2k
69cd7c9d85
syntax
2021-08-21 13:48:18 +08:00
vis2k
b996b52c0f
comment
2021-08-21 13:47:23 +08:00
vis2k
1d298fb588
syntax
2021-08-21 13:44:13 +08:00
vis2k
cf42e303ef
syntax
2021-08-21 13:43:59 +08:00
vis2k
9cf66b511d
syntax
2021-08-21 13:42:02 +08:00
vis2k
e9b86cf085
syntax
2021-08-21 13:41:58 +08:00
vis2k
e32ac5b3db
Weaver: ModuleDefinition.ContainsClass extension
2021-08-21 13:39:11 +08:00
vis2k
eff4736f71
syntax
2021-08-21 13:33:18 +08:00
vis2k
63af62affd
Weaver: WeaveModule remove unnecessary catch and rethrow
2021-08-21 13:32:56 +08:00
vis2k
d5a8a8b5b5
syntax
2021-08-21 13:31:13 +08:00
vis2k
4a45732fe1
fix 2019 error
2021-08-21 12:43:44 +08:00
vis2k
5b86754042
Weaver as instance class
2021-08-20 22:40:37 +08:00
vis2k
54cc3de33b
remove unnecessary parameter
2021-08-20 22:32:15 +08:00
vis2k
a20c7a4c93
Weaver: make more fields private
2021-08-20 22:32:15 +08:00
vis2k
18d472edf7
Readers/Writers: remove static GeneratedCodeClass references
2021-08-20 22:32:15 +08:00
vis2k
98f9dcfc94
ReaderWriterProcessor: remove static GeneratedCodeClass reference
2021-08-20 22:32:15 +08:00
vis2k
f134e0c210
syntax
2021-08-20 22:32:15 +08:00
vis2k
afc82a36a1
NetworkBehaviourProcessor: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
9fe4608532
Writers: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
7762058b86
Resolvers: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
2a1929f7f1
Readers: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
c358358f1d
ServerClientAttributeProcessor: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
298a7aef58
SyncVarProcessor: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
dfafd48f08
SyncObjectProcessor: remove static WeavingFailed reference
2021-08-20 22:32:15 +08:00
vis2k
b87096d5c9
MonoBehaviourProcessor: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
64964fb169
MethodProcessor: remove static WeavingFailed references
2021-08-20 22:32:15 +08:00
vis2k
081cd1d92c
add comment
2021-08-20 22:32:15 +08:00
vis2k
71eb7cb91d
Weaver: group allocations together
2021-08-20 22:32:15 +08:00
vis2k
4ad2af4f74
ReaderWriterProcessor: remove static Readers/Writers state
2021-08-20 22:32:15 +08:00
vis2k
e01a796b47
SyncObjectProcessor: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
9e9b9d3303
ServerClientAttributeProcessor: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
12084f6013
NetworkBehaviourProcessor: remove more static Log references
2021-08-20 22:32:15 +08:00
vis2k
f0747c5418
MethodProcessor: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
b430e29e8b
NetworkBehaviourProcessor: remove more static Log references
2021-08-20 22:32:15 +08:00
vis2k
42d33b5b7c
NetworkBehaviourProcessor: remove static Log references from all instance methods
2021-08-20 22:32:15 +08:00
vis2k
ce40488f20
MonoBehaviourProcessor: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
3f721c04ae
Resolvers: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
21c6bea6b1
SyncVarProcessor: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
7320cd8a2f
Writers: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
20405c76f9
Readers: remove static Log references
2021-08-20 22:32:15 +08:00
vis2k
a018f5dc37
Weaver: Logger as interface with MemberReference variants to avoid static Error/Warning methods
2021-08-20 22:32:15 +08:00
vis2k
1da0744875
Weaver: remove Error() function. Use Log.Error to prepare for static removal.
2021-08-20 22:32:15 +08:00
vis2k
7481057418
restore Log class, but as instance
2021-08-20 22:32:15 +08:00
vis2k
9462499c8b
rename for consistency
2021-08-20 22:32:15 +08:00
vis2k
55580ba9f3
ProperySiteProcessor: remove static weaverLists references
2021-08-20 22:32:15 +08:00
vis2k
cffc983731
SyncVarProcessor: remove static weaverLists references
2021-08-20 22:32:15 +08:00
vis2k
3ccf9c51f5
NetworkBehaviourProcessor: remove static weaverLists references
2021-08-20 22:32:15 +08:00
vis2k
7101088d40
Writers: remove static weaverTypes references
2021-08-20 22:32:15 +08:00
vis2k
4c6af1ff6f
Readers: remove static weaverTypes references
2021-08-20 22:32:15 +08:00
vis2k
00357d119a
ReaderWriterProcessor: remove static weaverTypes reference
2021-08-20 22:32:15 +08:00
vis2k
7b205a23bb
TargetRpcProcessor: remove static weaverTypes reference
2021-08-20 22:32:15 +08:00
vis2k
5e2a22b71a
SyncVarProcessor: remove static weaverTypes reference
2021-08-20 22:32:15 +08:00
vis2k
c89cbd02c5
ServerClientAttributeProcessor: remove static weaverTypes reference
2021-08-20 22:32:15 +08:00
vis2k
3f9c40cafd
SyncObjectInitializer: remove static weaverTypes reference
2021-08-20 22:32:15 +08:00
vis2k
cd190de21f
NetworkBehaviourProcessor: remove static weaverTypes references
2021-08-20 22:32:15 +08:00
vis2k
133c4bb181
SyncVarProcessor: remove static Weaver.CurrentAssembly references
2021-08-20 22:32:15 +08:00
vis2k
e36b39f328
Weaver: SyncVarProcessor changed to instance class to prepare for non static ILostProcessor
2021-08-20 22:32:15 +08:00
vis2k
6af792e4c5
Extensions: remove Weaver.CurrentAssembly static references
2021-08-20 22:32:15 +08:00
vis2k
f471b85dcb
NetworkBehaviourProcessor: remove Weaver.CurrentAssembly static reference
2021-08-20 22:32:15 +08:00
vis2k
2f7ce58dc7
Readers: remove Weaver.CurrentAssembly reference
2021-08-20 22:32:15 +08:00
vis2k
df716572f5
Writers: remove Weaver.CurrentAssembly reference
2021-08-20 22:32:15 +08:00
vis2k
5098868c2a
Weaver: Command/Rpc/TargetRpcProcessor: pass WeaverTypes as parameter instead of static access everywhere
2021-08-20 22:32:15 +08:00
vis2k
a7c892cfe1
fix rebase
2021-08-20 22:32:15 +08:00
vis2k
49d8608b7b
rename field
2021-08-20 22:32:15 +08:00
vis2k
d996ef23ac
comments
2021-08-20 22:32:15 +08:00
vis2k
ed9aa1431c
Readers: initialize with AssemblyDefinition to remove static dependency on Weaver
2021-08-20 22:32:15 +08:00
vis2k
0cc0fb92d6
Writers: initialize with AssemblyDefinition to remove static dependency on Weaver
2021-08-20 22:32:15 +08:00
vis2k
b7c186f2b9
Weaver: Readers as non static class
2021-08-20 22:32:15 +08:00
vis2k
5fcf5eb62f
Weaver: Writer as non static class
2021-08-20 22:32:15 +08:00
vis2k
0e30d2131c
Weaver: static Log class removed. moved into Weaver.LogWarning/ErrorFunc
2021-08-20 22:32:15 +08:00
vis2k
a8668514ce
WeaverTypes as non static class
2021-08-20 22:32:15 +08:00
vis2k
fd68a2b69f
remove unused import
2021-08-20 22:32:15 +08:00
vis2k
27c09f2973
syntax
2021-08-20 22:32:15 +08:00
vis2k
5f93a7ce7e
Weaver: Weave(AssemblyDefinition). WeaveFromFile code moved into CompilationFinishedHook to prepare for ILPP.
2021-08-20 22:32:15 +08:00
vis2k
ba067d30bf
syntax
2021-08-20 22:14:03 +08:00
vis2k
cafd560163
WeaverAssembler: use string interpolation
2021-08-20 22:12:56 +08:00
vis2k
b40d9b24b9
WeaverAssembler: use string interpolation
2021-08-20 22:11:58 +08:00
vis2k
ee59bd10df
syntax
2021-08-20 22:11:51 +08:00
vis2k
f6c1f8fad3
Weaver: separate WeavingFailed from other Logging
2021-08-19 22:03:39 +08:00
vis2k
9196bd37e1
forgot to rename back
2021-08-19 22:02:39 +08:00
vis2k
9c7c0cdd93
Weaver: separate WeavingFailed from Logging
2021-08-19 21:49:54 +08:00
vis2k
33add82042
Weaver.InvokeRpcPrefix: const instead of static state
2021-08-19 16:00:44 +08:00
vis2k
499cb72173
WeaverLists public
2021-08-19 12:51:54 +08:00
vis2k
28274f707f
Weaver: WeaverLists moved into separate file
2021-08-19 12:50:44 +08:00
vis2k
625947a4cf
Weaver: remove DLog and DebugEnabled. we never use it to check log files anyway.
2021-08-18 00:58:45 +08:00
vis2k
850d2bbb2b
Weaver: remove unnecessary GenerateLogErrors static
2021-08-17 20:41:12 +08:00
vis2k
3c5a9de323
syntax
2021-08-17 17:18:13 +08:00
vis2k
f64b808aed
syntax
2021-08-17 17:14:27 +08:00
vis2k
9a07feda28
syntax
2021-08-17 13:24:02 +08:00
vis2k
c80fbab7fa
Weaver: use string interpolation instead of string.Format
2021-08-17 13:23:17 +08:00
vis2k
6a62ab9c52
Weaver: remove xml comments
2021-08-17 13:12:49 +08:00
vis2k
d0de7ed92f
syntax
2021-08-17 13:09:43 +08:00
vis2k
c63152f71e
Weaver: try/catch moved into Weave() to prepare reuse from ILPP
2021-08-17 13:06:49 +08:00
vis2k
2821b34398
Weaver: remove xml comments
2021-08-17 13:04:18 +08:00
vis2k
ab462a598c
syntax
2021-08-17 13:01:29 +08:00
vis2k
eb3ac79bd9
Weaver: remove XML comments
2021-08-17 13:01:17 +08:00
vis2k
d329c60899
syntax
2021-08-17 12:58:20 +08:00
vis2k
d1604b5686
syntax
2021-08-17 12:57:08 +08:00
vis2k
950b439035
Weaver: remove XML comment
2021-08-17 12:56:07 +08:00
vis2k
2acc9f77ea
Weaver: remove xml comments
2021-08-17 11:53:58 +08:00
vis2k
31babe6b03
Weaver: hooks moved into EntryPoint folder
2021-08-13 18:51:17 +08:00
vis2k
5d2797847e
Weaver: Enter-Play-Mode check moved into separate file in Weaver folder
2021-08-13 18:45:07 +08:00
vis2k
ff34a50fdf
feat: Expose NetworkEarlyUpdate/NetworkLateUpdate (see #2826 )
2021-08-13 11:58:50 +08:00
vis2k
966af93e50
feat: Prevent Nested Network Managers (see #2867 )
2021-08-13 11:48:41 +08:00
vis2k
8ca5203262
breaking: NetworkIdentity.spawned split into NetworkServer/Client.Spawned ( #2877 )
...
* breaking: NetworkIdentity.spawned split into NetworkServer.Spawned / NetworkClient.spawned.
WIP: 1 failing test
* clear spawned in NetworkClient.Shutdown
* MirrorTest doesn't need to clear spawned anymore. NetworkClient/NetworkServer.Shutdown already do.
* InterestManagement: use NetworkServer.spawned
* NetworkServer: use NetworkServer.spawned
* Match/SceneInterestManagement: use NetworkServer.spawned
* InterestManagementTests: use NetworkServer.spawned
* NetworkIdentity.OnStartServer: use NetworkServer.spawned
* NetworkClient: use NetworkClient.spawned everywhere; and modify OnHostClientSpawn
* NetworkIdentity.spawned: throw if server/client not active to make it more obvious why tests fail
* NetworkBehaviour GetSyncVar functions: use NetworkClient.spawned
* adjust test
* adjust test
* adjust test
* CreateNetworkedAndSpawn functions that return client object too
* adjust test
* adjust test
* adjust test
* adjust test
* adjust tests
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* adjust test
* NetworkReader.ReadNetworkIdentity adjusted
2021-08-13 11:20:32 +08:00
vis2k
a13f474243
NetworkReader.ReadNetworkBehaviour: reuse ReadNetworkIdentity
2021-08-12 18:04:20 +08:00
vis2k
4def515c9f
SyncVarTest: prepare for .spawned split. this is better.
2021-08-12 15:38:39 +08:00
vis2k
cf3e7acc39
Tests: SyncVarHOokTests improved
2021-08-12 14:24:20 +08:00
MrGadget
33e77d69cb
fix: NT Base OnDrawGizmos only when playing ( #2876 )
...
* fix: NT Base OnDrawGizmos only when playing
* Update NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-12 12:25:49 +08:00
vis2k
875c78c222
improve 'No writer found' error to make it more obvious why it happens and how to solve it
2021-08-12 00:18:55 +08:00
vis2k
811f1fadfc
NetworkServerTests: Command tests: use host mode to prepare for easier .spawned split
2021-08-11 19:42:59 +08:00
vis2k
a7910c0c97
SyncVarTests: use host mode for easier .spawned split
2021-08-11 19:38:09 +08:00
vis2k
e22b0c0c4e
NetworkWriterTests: use host mode to prepare for easier .spawned split too
2021-08-11 19:29:46 +08:00
vis2k
b089692dab
Tests: NetworkTransform2 tests use host mode for now to make .spawned split easier
2021-08-11 19:22:12 +08:00
vis2k
309761a37b
Tests: fix check
2021-08-11 16:32:08 +08:00
vis2k
8902cd1b4e
simplify tests
2021-08-11 15:15:21 +08:00
vis2k
23cc3b8223
Tests: reuse CreateNetworkedAndSpawn
2021-08-11 15:07:02 +08:00
vis2k
c89e119743
Tests: reuse CreateNetworkedAndSpawn
2021-08-11 15:05:39 +08:00
vis2k
d9ecd21d1e
Tests: reuse CreateNetworked
2021-08-11 15:03:49 +08:00
vis2k
777fb9bfb9
syntax
2021-08-11 14:23:05 +08:00
vis2k
8b42915429
Tests simplified
2021-08-11 14:22:51 +08:00
vis2k
2328747b33
remove unnecessary line
2021-08-11 14:20:44 +08:00
vis2k
06f287176c
syntax
2021-08-11 14:19:34 +08:00
vis2k
47bc75cdc8
syntax
2021-08-11 14:18:40 +08:00
vis2k
1b9aaebee1
Tests simplified
2021-08-11 14:18:21 +08:00
vis2k
2fd87a49ec
comments
2021-08-11 14:15:24 +08:00
vis2k
52a560ca6d
Tests simplified
2021-08-11 14:14:57 +08:00
vis2k
2fff5ef02b
Tests simplified
2021-08-11 14:13:59 +08:00
vis2k
ff4bc267e0
syntax
2021-08-11 14:12:14 +08:00
vis2k
f0441738d0
Tests: reuse CreateNetworked
2021-08-11 14:11:37 +08:00
vis2k
e36a9a16fb
remove unnecessary destroys. CreateNetworked does it.
2021-08-11 14:10:29 +08:00
vis2k
7b62f3c7fd
NetworkServerRuntimeTest: reuse CreateNetworked
2021-08-11 14:09:30 +08:00
vis2k
7c5d453a3b
Tests: remove unnecessary DestroyImmediate now that CreateNetworked tracks it anyway
2021-08-11 14:04:31 +08:00
vis2k
b949034abb
Tests: simplify
2021-08-11 14:03:48 +08:00
vis2k
2c1736f29e
Tests: reuse CreateNetworked
2021-08-11 14:02:43 +08:00
vis2k
4f15ba9a2e
syntax
2021-08-11 14:01:02 +08:00
vis2k
6c5bee8106
syntax
2021-08-11 13:59:52 +08:00
vis2k
cf29a06bca
cleanup
2021-08-11 13:59:31 +08:00
vis2k
f61dd290e3
Tests: use CreateNetworked<T>
2021-08-11 13:55:27 +08:00
JesusLuvsYooh
5c45c5cd75
Defines for OnGUI ( #2875 )
...
* Defines for OnGUI KcpTransport.cs
Related to: https://github.com/vis2k/Mirror/pull/2874
"OnGUI allocates even if it does nothing. avoid in release."
* Defines for OnGUI SpatialHashing IM.cs
Related to: https://github.com/vis2k/Mirror/pull/2874
"OnGUI allocates even if it does nothing. avoid in release."
* Update SpatialHashingInterestManagement.cs
* Update KcpTransport.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-11 12:43:31 +08:00
vis2k
9cb4c55276
simplify tests
2021-08-11 00:34:55 +08:00
vis2k
bd6f2fd31a
Runtime tests: remove old transport enabled tests. transport enabled isn't needed anymore since Unbatcher GetNextMessage
2021-08-10 19:50:02 +08:00
vis2k
e342d58e5c
syntax
2021-08-10 19:49:00 +08:00
vis2k
c6bdbecfda
ClientSceneTests_LocalPlayer: huge cleanup
2021-08-10 19:48:01 +08:00
vis2k
96c526a7c5
remove unnecessary TearDown
2021-08-10 19:47:56 +08:00
vis2k
38d2a7e315
syntax
2021-08-10 19:38:30 +08:00
vis2k
494484ef78
ClientSceneTest_LocalPlayer_AsHost: huge cleanup
2021-08-10 19:36:58 +08:00
vis2k
4925f1397a
Tests: merge HostSetup into the only class that inherits from it
2021-08-10 19:19:14 +08:00
vis2k
87478178e9
MirrorTests: CreateNetworkedAndSpawnPlayer without <T> helper function
2021-08-10 19:11:05 +08:00
vis2k
881d90f539
Tests: remove unused FakeSpawnServerClientIdentity function
2021-08-10 19:07:06 +08:00
vis2k
080cd184c5
remove unused import
2021-08-10 19:02:41 +08:00
vis2k
47a948b87f
NetworkIdentityTests: remove old HandleRpc test
2021-08-10 19:02:27 +08:00
vis2k
d094c70588
NetworkWriterTests: use CreateNetworkedAndSpawn everywhere instead of manually adding to spawned
2021-08-10 18:58:53 +08:00
vis2k
281b200a69
SyncVarHookTests: use CreateNetworkedAndSpawn everywhere instead of manually adding to spawned
2021-08-10 18:55:49 +08:00
vis2k
f146ca8b87
SyncVarTests: use CreateNetworkedAndSpawn everywhere instead of manually adding to spawned
2021-08-10 18:52:28 +08:00
vis2k
3d350f3320
GetSyncVarNetworkIdentityOnClient Test: use CreateNetworkedAndSpawn instead of manually adding to spawned
2021-08-10 18:45:07 +08:00
vis2k
4591bde5e3
GetSyncVarGameObjectOnClient Test: use CreateNetworkedAndSpawn instead of manually adding to spawned
2021-08-10 18:43:48 +08:00
JesusLuvsYooh
bafe8832f6
NTB.cs defines for OnGUI ( #2874 )
...
* NTB.cs defines for OnGUI
#if UNITY_EDITOR || DEVELOPMENT_BUILD for OnGUI() added.
Related to this post, and discord discussion: https://github.com/vis2k/Mirror/issues/2871
"OnGUI calls allocate gc even when not doing anything"
This should give developers a mini optimisation, and means no manual editing needed of NTB.cs for their final releases.
* NTB.cs defines for OnGUI + Gizmos
#if UNITY_EDITOR || DEVELOPMENT_BUILD for OnGUI() added.
Related to this post, and discord discussion: #2871
"OnGUI calls allocate gc even when not doing anything"
This should give developers a mini optimisation, and means no manual editing needed of NTB.cs for their final releases.
Will apply to the other components, if accepted/good idea.
+ Added Gizmos section by request.
* Update NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-10 14:46:11 +08:00
ninjakickja
ae622bfa57
Changes to validation of catchupThreshold - NetworkTransform2k - NetworkTransformBase ( #2853 )
...
* Changes to validation of catchupThreshold.
catchupThreshold needs to be at least 4, or it will interfere/conflict with checking if we have at least 3 old enough buffers. Catchup will decrease buffer while check needs at least 3 older.
catchupThreshold should also at least be bufferTimeMultiplier + 2, to take into account of the first 2 snapshots which is used for interpolation, before trying to implement catch up.
* Changes to validation of catchupThreshold - NetworkTransform2k - NetworkTransformBase
catchupThreshold needs to be at least 4, or it will interfere/conflict with checking if we have at least 3 old enough buffers. Catchup will decrease buffer while check needs at least 3 older.
catchupThreshold should also at least be bufferTimeMultiplier + 2, to take into account of the first 2 snapshots which is used for interpolation, before trying to implement catch up.
* Changes to validation of catchupThreshold - NetworkTransform2k - NetworkTransformBase
catchUpThreshold should be a minimum of bufferTimeMultiplier + 3, to prevent clashes with SnapshotInterpolation looking for at least 3 old enough buffers, else catch up will be implemented while there is not enough old buffers, and will result in jitter.
* Update NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-10 14:25:37 +08:00
vis2k
79c9d2cc6a
Tests simplified
2021-08-09 16:56:43 +08:00
vis2k
6031f8936c
Tests simplified
2021-08-09 16:47:53 +08:00
vis2k
d02262e4a7
Test simplified
2021-08-09 16:46:39 +08:00
vis2k
c77406730c
NetworkServerTests: SendCommand test simplified
2021-08-09 16:45:42 +08:00
vis2k
0340dd2d38
NetworkServerTests: SendCommand test simplified
2021-08-09 16:44:44 +08:00
vis2k
b99b6d314d
NetworkServerTests: SendCommand test simplified
2021-08-09 16:43:42 +08:00
vis2k
b340397ad0
NetworkServerTests: SendCommand test simplified
2021-08-09 16:42:48 +08:00
vis2k
4f72d5f8f6
NetworkServer.CleanupNetworkIdentities renamed to CleanupSpawned because that's what it does.
2021-08-09 16:29:08 +08:00
MrGadget1024
d4f7a26278
Removed Network Observer Script Template
2021-08-09 00:32:26 -04:00
MrGadget1024
279db96a16
Consistant naming of NetworkManager object in example scenes
2021-08-09 00:06:43 -04:00
MrGadget1024
ed291183f6
fix: Multiple Matches example transport to KCP
2021-08-09 00:01:53 -04:00
MrGadget1024
9aced8f106
fix: Updated Multiple Matches example to use Match Int. Mgmt.
2021-08-08 23:53:08 -04:00
MrGadget1024
61f2ab809d
Suppress noisy Debug
2021-08-08 12:56:57 -04:00
MrGadget1024
43a4fdc4be
Added HelpUrl
2021-08-08 11:47:11 -04:00
vis2k
6d59807745
add logs
2021-08-08 18:46:22 +08:00
vis2k
f512928a3d
comment
2021-08-08 18:36:20 +08:00
vis2k
8f8a8ce690
Test simplified
2021-08-08 18:34:57 +08:00
vis2k
f88c3af277
syntax
2021-08-08 18:34:09 +08:00
vis2k
046e6d45f7
NetworkIdentitySerializationTests: simplify
2021-08-08 18:33:02 +08:00
vis2k
d7ee83d696
formatting
2021-08-08 18:31:24 +08:00
vis2k
b3bbec793f
NetworkIdentitySerializationTests: SerializationException
2021-08-08 18:29:21 +08:00
vis2k
d0ea26b42f
shorter name
2021-08-08 18:23:19 +08:00
vis2k
de4d2dc92f
Tests: NetworkIdentity serialization tests moved to separate file
2021-08-08 18:22:32 +08:00
vis2k
6ed56f08ea
Tests: CreateNetworkedAndSpawn<T,U,V> helper
2021-08-08 18:15:29 +08:00
vis2k
baad907fe8
Tests: CreateNetworkedAndSpawn<T,U> helper
2021-08-08 18:15:26 +08:00
vis2k
26fd44c0bd
MIRROR_44_0_OR_NEWER
2021-08-08 17:40:26 +08:00
vis2k
e28d7e903a
NetworkIdentity.OnSerializeSafely: remove unnecessary ownerWritten, observersWritten parameters
2021-08-08 13:59:09 +08:00
vis2k
6ce8dfcc23
syntax
2021-08-08 13:41:54 +08:00
vis2k
1e89a3a65d
NetworkServer.CreateSpawnMessagePayload: don't need OnSerializeAllSafely 'ownerWritten' and 'observersWritten' values. always convert to ArraySegment - and if nothing was written, they are empty.
2021-08-08 13:34:00 +08:00
vis2k
9dd1420edf
NetworkWriterTest: empty arraysegment
2021-08-08 13:29:13 +08:00
vis2k
a76fa59fee
NetworkIdentity.OnSerializeSafely simplified: owner/observers 'written' changed from int to bool
2021-08-08 13:23:39 +08:00
vis2k
adc7687807
stepsize 10 is enough
2021-08-07 22:09:34 +08:00
vis2k
a2f5659723
comment
2021-08-07 22:01:35 +08:00
vis2k
93246ffda5
better logging
2021-08-07 21:51:26 +08:00
vis2k
59b7d79db6
rename to make it more obvious
2021-08-07 21:47:24 +08:00
vis2k
6e87337792
Quaternion Compression Tests: [0..360] in 5 degree steps for all x, y, z components
2021-08-07 21:38:24 +08:00
vis2k
1666bf5309
syntax
2021-08-07 21:31:10 +08:00
vis2k
572ce6c751
LargestAbsoluteComponentIndex: rename largest to largestAbs to be more obvious
2021-08-07 21:27:38 +08:00
vis2k
2aa791a726
fix : #2674 - Quaternion Compression LargestAbsoluteComponentIndex largest absolute was accidentally initialized with largest, instead of largest absolute
2021-08-07 21:27:18 +08:00
vis2k
c5080d1ab3
Tests: LargestAbsoluteComponentIndex test to reproduce #2674
2021-08-07 21:24:10 +08:00
vis2k
3d67c72336
enable test
2021-08-07 21:17:10 +08:00
vis2k
13c2a42a77
remove unused runtime SceneObjectSpawningTests
2021-08-07 19:31:29 +08:00
vis2k
99109076e4
syntax
2021-08-07 19:27:23 +08:00
vis2k
300e236715
syntax
2021-08-07 19:26:38 +08:00
vis2k
1fc008f1ef
syntax
2021-08-07 19:24:43 +08:00
vis2k
02cc3de7b8
SnapshotInterpolationTests: casting not necessary anymore
2021-08-07 19:23:07 +08:00
vis2k
664f21ba45
RemoteTestBase: reuse ConnectHostClientBlockingAuthenticatedAndReady
2021-08-07 19:21:36 +08:00
vis2k
964188868d
syntax
2021-08-07 19:20:31 +08:00
vis2k
8673471cf1
comment
2021-08-07 19:20:11 +08:00
vis2k
0fdb39fa1c
CreateNetworkedAndSpawn without component helper function
2021-08-07 19:15:01 +08:00
vis2k
aff28a0c07
syntax
2021-08-07 19:12:09 +08:00
vis2k
e3f7b8ce74
Tests: rewrite #2629 fix test
2021-08-07 18:56:42 +08:00
vis2k
f12082d0a3
Tests: CreateNetworkedAndSpawn remove unnecesary .connetionToServer setup. it's not necessary anymore.
2021-08-07 18:50:31 +08:00
vis2k
b29a76d242
add assert just to be sure
2021-08-07 18:45:28 +08:00
vis2k
e52b9b24de
fix comment
2021-08-07 18:44:52 +08:00
vis2k
4436fb85ad
syntax
2021-08-07 15:18:04 +08:00
vis2k
e2a26cd438
syntax
2021-08-07 15:16:46 +08:00
vis2k
ed505b7b65
syntax
2021-08-07 15:16:11 +08:00
vis2k
95a7899b76
TODO
2021-08-07 15:13:22 +08:00
vis2k
90674529e0
syntax
2021-08-07 15:12:23 +08:00
vis2k
fd8023dafe
remove redundant TargetRpc (manual) test
2021-08-07 15:11:24 +08:00
vis2k
39ebfc6126
remove redundant RPC (manual) test
2021-08-07 14:04:21 +08:00
vis2k
b71e2f373a
syntax
2021-08-07 13:59:35 +08:00
vis2k
98eba5c9c1
syntax
2021-08-07 13:54:18 +08:00
vis2k
f74fb388b4
syntax
2021-08-07 13:45:42 +08:00
vis2k
3350760edb
Multiplex Test: reuse CreateGameObject with component
2021-08-07 13:44:52 +08:00
vis2k
70f117a950
AOI Test: reuse CreateGameObject with component
2021-08-07 13:40:46 +08:00
vis2k
dccf1a95f1
AOI Test: reuse CreateGameObject with component
2021-08-07 13:39:43 +08:00
vis2k
5dad5db819
Tests: CreateGameObject with Component helper
2021-08-07 13:39:32 +08:00
vis2k
0888776f06
AOI Test: use CreateGameObject for automated tracking & destroying
2021-08-07 13:37:47 +08:00
vis2k
5c8bd25b7e
namespaces
2021-08-07 13:30:11 +08:00
vis2k
46d7e2d6a3
Tests: remove generators
2021-08-07 13:28:18 +08:00
vis2k
4facadfc24
syntax
2021-08-07 13:24:17 +08:00
vis2k
b67156aafa
Test: GetStableHashCode
2021-08-07 13:22:57 +08:00
vis2k
fbd3342a76
syntax
2021-08-07 13:19:43 +08:00
vis2k
af94cb902c
ignore test
2021-08-07 13:14:34 +08:00
vis2k
35b024197a
syntax
2021-08-07 13:12:21 +08:00
vis2k
79fc5f528e
comment
2021-08-07 13:11:54 +08:00
vis2k
ac58ca4fd5
syntax
2021-08-07 13:11:27 +08:00
vis2k
8aeeb4daa2
syntax
2021-08-07 13:10:54 +08:00
vis2k
48b430c0ae
simplify test
2021-08-07 13:09:54 +08:00
vis2k
80dbbc9697
simplify tests
2021-08-07 13:07:39 +08:00
vis2k
13d9f3ae51
syntax
2021-08-07 13:05:49 +08:00
vis2k
765de95607
cleanup
2021-08-07 13:01:42 +08:00
vis2k
a4be521a87
syntax
2021-08-07 13:00:35 +08:00
vis2k
c47004bdc5
syntax
2021-08-07 13:00:00 +08:00
vis2k
3c5560d0ac
remove unused
2021-08-07 12:59:09 +08:00
vis2k
1b6ab9d7c0
syntax
2021-08-07 12:57:52 +08:00
vis2k
a34b974580
syntax
2021-08-07 12:55:49 +08:00
vis2k
3bb95aa528
remove unnecessary tests
2021-08-07 12:55:05 +08:00
MrGadget
7312d20a67
Simplify NetworkManager.isNetworkActive ( #2843 )
...
* fix: Obsolete NetworkManager.isNetworkActive
Use NetworkServer.active and/or NetworkClient.active instead.
Fixes #2842
* Cleaned up after conflicts
* Moved invocation of OnDisconnectedEvent handler to before setting of connectState
* Now without obsolete
* Commented Debug lines
* Uncommented another debug line
* Removed conflicted code
* removed debug line
* fixed debug msg
* reverted changes to debug lines
* moved change to separate PR
2021-08-07 12:09:04 +08:00
MrGadget
95de1a3aae
fix: Raise OnDisconnectedEvent before changing ConnectState ( #2870 )
2021-08-07 12:08:28 +08:00
MrGadget1024
8c6daf318f
commented noisy debug
2021-08-06 11:23:51 -04:00
MrGadget1024
a662a52430
commented noisy debug
2021-08-06 11:21:42 -04:00
MrGadget1024
70ddb2f41d
commented noisy debugs
2021-08-06 11:14:00 -04:00
MrGadget1024
9a1eb763b5
Added base method call to NetworkManagerOnServerDisconnect test
2021-08-06 11:05:00 -04:00
vis2k
e9791dff13
breaking: perf: SnapshotInterpolation.Compute: removed final boxing allocation. Snapshot.Interpolate is now a Func<T>.
2021-08-03 12:00:51 +08:00
vis2k
a7c0c29025
SnapshotInterpolationTests: use actual type instead of interface now
2021-08-03 11:50:18 +08:00
vis2k
2c70e71555
SnapshotInterpolation.Compute now returns <T> instead of Snapshot for ease of use
2021-08-03 11:11:38 +08:00
vis2k
23a663bdae
perf: SnapshotInterpolation.GetFirstSecondAndDelta: return <T> instead of Snapshot to avoid boxing
2021-08-03 11:05:17 +08:00
vis2k
ee78043725
whitespace
2021-08-03 11:05:15 +08:00
vis2k
bb8245c944
rename
2021-08-01 19:54:23 +08:00
ninjakickja
053ab364a9
Fix: ArgumentExceptionError when adding snapshots to buffer ( #2862 )
...
* Fix - From !isLocalPlayer to !hasAuthority
Changed !isLocalPlayer to !hasAuthority because object might not be player object.
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
* Fix ArgumentExceptionError when adding snapshot to buffer - SnapshotInterpolation.cs
Occassionally duplicate messages may be received with the same remoteTimestamp. Adding an already existing key to buffer (Sorted List) will throw an ArgumentExceptionError and disconnect the client from the server.
Fixed by adding an if check to add snapshot only if remoteTimestamp key does not exist in the buffer.
* Test for ArgExceptionError - Adding snapshot to buffer with same key
* Update SnapshotInterpolation.cs
* Update SnapshotInterpolationTests.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-08-01 19:53:10 +08:00
MrGadget
03cd2e286f
Improved NetworkIdentity.Reset test ( #2863 )
2021-08-01 15:22:20 +08:00
vis2k
b495eaa965
syntax
2021-08-01 14:48:05 +08:00
vis2k
0d2733c564
fix : #2797 Clear hasAuthority when Destroying and call OnStopAuthority
2021-08-01 14:45:54 +08:00
vis2k
88112e7778
NetworkServerTest: use CreateNetworkedAndSpawnPlayer
2021-08-01 14:42:59 +08:00
vis2k
a55c75b945
MirrorTest: CreateNetworkedAndSpawnPlayer helper
2021-08-01 14:42:50 +08:00
vis2k
c879f17936
test for #2797 fixed
2021-08-01 14:33:38 +08:00
vis2k
2d2ea64d8a
Tests: ConnectHostClientBlocking() now connects local server too. otherwise NetworkServer.localConnection isn't added to NetworkServer.Connections.
2021-08-01 13:51:51 +08:00
vis2k
2c85cfbd06
Tests: ConnectHostClientBlockingAuthenticatedAndReady helper
2021-08-01 13:44:25 +08:00
vis2k
9351c3bb99
test to reproduce #2797
2021-07-31 21:12:05 +08:00
vis2k
b0be4a3540
remove check
2021-07-31 21:04:09 +08:00
vis2k
d82388aff4
Tests: ConnectHostClientBlocking helper function
2021-07-31 20:54:42 +08:00
vis2k
d897da8a6b
TODO
2021-07-31 20:51:09 +08:00
vis2k
3232001466
NetworkServer.DestroyObject: added comments
2021-07-31 20:17:55 +08:00
vis2k
e9f8af40f9
split OnStopClient tests into two
2021-07-31 20:06:23 +08:00
vis2k
3c52284c8c
keep old name
2021-07-31 20:04:51 +08:00
vis2k
d466d73f85
fix : #2119 - DestroyObject is now called when cleaning up scene identities too. Sends unspawn messages and calls OnStopClient/Server properly.
2021-07-31 17:30:25 +08:00
vis2k
3d9493dbfd
Test to reproduce #2119
2021-07-31 17:22:17 +08:00
vis2k
0f069fc848
fix: CleanupNetworkIdentities needs to iterate a copied .spawned list becuase we now call DestroyObject directly. previously Destroy would call OnDestroy the next frame.
2021-07-31 17:22:00 +08:00
vis2k
47bd2b7c78
CleanupNetworkIdentities: better comments and call DestroyObject with DestroyMode.Destroy for spawned prefabs directly. more obvious.
2021-07-31 17:10:49 +08:00
vis2k
beff4b634a
rename DestroyMode
2021-07-31 17:08:50 +08:00
vis2k
4a505860eb
NetworkServer.DestroyObject: 'DestroyMode' enum instead of bool to make it more obvious.
...
we don't just need it
2021-07-31 12:33:11 +08:00
vis2k
47217bef6c
NetworkServer.CleanupNetworkIdentities: call NetworkServer.Destroy directly instead of GameObject.Destroy->NetworkIdentity.OnDestroy->NetworkServer.Destroy (see #2119 )
2021-07-31 12:24:24 +08:00
vis2k
4685ee653d
comment
2021-07-31 12:21:24 +08:00
vis2k
e951abeb34
better comments
2021-07-31 12:20:25 +08:00
vis2k
7071a6afc8
comments
2021-07-31 12:03:27 +08:00
vis2k
77a3e0f23b
cleanup and rename
2021-07-31 11:47:59 +08:00
vis2k
2a48d80afc
rename
2021-07-31 11:44:54 +08:00
Eunseop Shim
f0d4f1595a
Allow reader generation of abstract NetworkBehaviours by reordering checks in Readers.GenerateReader() ( #2808 )
...
* Reorder checks to simplify and allow reader generation of abstract NetworkBehaviours
* Add SyncVar/ClientRpc Tests for abstract NetworkBehaviour
2021-07-31 11:32:42 +08:00
vis2k
7036ea5cab
fix: NetworkAnimator uses double precision time for accuracy over days/weeks ( #2840 )
2021-07-31 11:10:25 +08:00
Robin Rolf
93b262dc94
feat: ZigZag VarInt Compression ( #2859 )
2021-07-30 21:10:36 +08:00
MrGadget1024
015c4d3f35
fix: Added missing [Command] attribute to NetworkAnimator.CmdSetAnimatorSpeed
2021-07-29 08:49:59 -04:00
ninjakickja
7e425d3106
fix: From !isLocalPlayer to !hasAuthority - NetworkTransform2k/NetworkTransformBase.cs ( #2855 )
...
* Fix - From !isLocalPlayer to !hasAuthority
Changed !isLocalPlayer to !hasAuthority because object might not be player object.
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-07-29 11:44:04 +08:00
Robin Rolf
7e72683850
fix: Lazy create telepathy client/server ( #2847 )
...
Otherwise any options set via script are never going to be applied with no way of doing so
2021-07-25 13:12:13 +08:00
vis2k
06a77308ce
remove version.txt again. not the one from asset store.
2021-07-23 12:06:00 +08:00
vis2k
ad45a0eb0f
feature: Compression.VarInt added again
2021-07-23 12:05:38 +08:00
vis2k
15d2e8caa2
NetworkManager: ConfigureServerFrameRate renamed to ConfigureHeadlessFrameRate
2021-07-21 13:35:45 +08:00
vis2k
24033c101b
fix : #2842 Revert "fix: Prevent recursion overflow when stopping ( #2833 )"
...
This reverts commit 32fdd5215f
.
2021-07-20 11:48:54 +08:00
vis2k
c3bd1f2798
Test for #2842 - StopHostTest
2021-07-20 11:47:12 +08:00
vis2k
c1bfdea524
NetworkManagerTests: StartHost
2021-07-20 11:45:38 +08:00
vis2k
5cd3ad3ec0
missed a test
2021-07-19 11:44:27 +08:00
vis2k
d17156749d
feature: NetworkTransform 2 - Snapshot Interpolation ( #2791 )
2021-07-19 11:38:06 +08:00
MrGadget1024
ca4c2fd930
fix: Removed ServerAuthFailed from Basic Authenticator
...
Doesn't do what I intended it to do...better solution needed.
2021-07-18 08:24:12 -04:00
vis2k
b268e61928
add comment
2021-07-18 12:23:04 +08:00
vis2k
f79eab5d20
feature: MatchInterestManagement ( #2837 )
...
* feature: MatchInterestManagement component
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Components/InterestManagement/Match/MatchInterestManagement.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2021-07-17 10:54:48 +08:00
MrGadget1024
6242c618d5
Updated comment
2021-07-16 08:48:54 -04:00
vis2k
6d021c0875
fix: kcp2k V1.12 (updated)
...
-> where-allocation now optional to handle platforms that don't support it
2021-07-16 20:31:34 +08:00
vis2k
d66d228079
fix: kcp2k V1.12
...
- where-allocation removed. will be optional in the future.
- Tests: don't depend on Unity anymore
- fix : #26 - Kcp now catches exception if host couldn't be resolved, and calls
OnDisconnected to let the user now.
- fix: KcpServer.DualMode is now configurable in the constructor instead of
using #if UNITY_SWITCH. makes it run on all other non dual mode platforms too.
2021-07-16 13:10:05 +08:00
vis2k
69116bfeb2
fix: NetworkTime.UpdateClient uses double precision time for accuracy over days/weeks
2021-07-16 12:25:53 +08:00
Robin Rolf
d516280dca
fix: NetworkBehaviour dirty check uses double time ( #2839 )
2021-07-16 12:18:59 +08:00
vis2k
28bcce7f0f
fix log
2021-07-16 10:52:21 +08:00
vis2k
fecfcd3378
fix: SceneInterestManagement OnCheckObserver uses identity.gameObject instead of own gameObject
2021-07-16 10:46:49 +08:00
vis2k
02ad57cae8
fix: SceneInterestManagement OnSpawned uses identity.gameObject instead of own gameObject
2021-07-16 10:46:08 +08:00
vis2k
53b54f3dac
syntax
2021-07-16 10:45:08 +08:00
MrGadget1024
398824703d
Updated comments in ZoneHandler
2021-07-15 13:54:29 -04:00
MrGadget
a3e3543797
feat: Transport Exception Handling ( #2835 )
...
* feat: Transport Exception Handling
Transports can raise OnServerError and OnClientError
Both are propagated up through NetworkServer & NetworkClient & NetworkManager
Virtual methods added to Network Manager and Template
Fixes : #2782
* Fixed typo
* Better handling of server error
* Updated template comments
* Updated comments in Transport base class
* Syntax
* Update Transport.cs
* Update NetworkServer.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-07-15 13:26:01 +08:00
MrGadget
32fdd5215f
fix: Prevent recursion overflow when stopping ( #2833 )
...
* fix: Prevent recursion overflow when stopping
Calling StopServer from OnStartServer or StopClient from OnStopClient (or from user code invoked from those virtual methods) would create a recursion overflow.
This PR moves the setting of `isNetworkActive = false;` up above the virtual method calls in both cases, and adds a check to early out if false to prevent recursion and overflow.
Debug logs were also moved up nearer the top of the method.
Fixes : #2080
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-07-15 13:18:55 +08:00
MrGadget
8453a03bd4
fix: Reset lastPingTime ( #2832 )
...
* fix: Reset lastPingTime
* Update Assets/Mirror/Runtime/NetworkTime.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-07-15 13:16:39 +08:00
vis2k
08c74deca0
fix : #2536 , #2834 - stop transport server even if dontListen in case it was enabled at runtime
2021-07-15 13:11:05 +08:00
MrGadget1024
8717b6082f
fix: Updated Compiler Symbols to MIRROR_43_0_OR_NEWER
2021-07-15 00:57:27 -04:00
MrGadget1024
35e41227d0
fix: Added empty version file
...
This is a test to see if CI will fill it and include it in the Unity package.
2021-07-14 22:07:21 -04:00
MrGadget1024
0b4fd22c36
fix: Call StopDiscovery when stopping Host/Server/Client in DiscoveryHUD
...
Fixes : #2477
2021-07-14 18:04:11 -04:00
vis2k
79024450f2
breaking: NetworkMatch component to hold matchId. Prepares for AOI2 match checker. ( #2831 )
...
* NetworkMatch component
* NetworkMatchChecker currentMatch points to NetworkMatch.matchId
* NetworkMatchChecker.Update just like scene checker
* remove NetworkMatchChecker.matchId
* adjust tests
* fixed comments, simplified null check
Co-authored-by: MrGadget1024 <github@clevertech.net>
2021-07-14 23:46:09 +08:00
vis2k
fe36a83353
feature: SnapshotInterpolation algorithm ( #2824 )
2021-07-14 17:42:23 +08:00
vis2k
09cbc7e782
feature: DistanceInterestManagement custom range component
2021-07-14 11:31:45 +08:00
vis2k
99316d6ab9
fix: DistanceInterestManagement initial range check uses '<' instead of '<=' for consistency with the other range checks
2021-07-14 11:26:34 +08:00
vis2k
af03da01ff
syntax & comments
2021-07-14 11:06:26 +08:00
vis2k
7206c56a53
comments
2021-07-14 11:04:12 +08:00
Robin Rolf
99db407990
feat: SceneInterestManagement ( #2762 )
...
* feat: Add OnSpawned/OnDestroyed events to interest management
* feat: SceneInterestManagement
2021-07-14 11:01:43 +08:00
Robin Rolf
3bc7572154
feat: Add OnSpawned/OnDestroyed events to interest management ( #2758 )
2021-07-14 11:01:13 +08:00
MrGadget1024
cdf6d2c901
fix: fixed naming typo
...
#Fixes #2827
2021-07-13 18:47:55 -04:00
vis2k
5afc4e9eed
syntax
2021-07-13 19:53:20 +08:00
vis2k
368c08be63
remove comment
2021-07-12 19:43:14 +08:00
vis2k
d60ec59444
syntax
2021-07-12 19:42:07 +08:00
vis2k
3363162dd8
syntax
2021-07-12 19:40:47 +08:00
vis2k
dd716eb0c0
rename
2021-07-12 19:38:00 +08:00
vis2k
3e77166952
syntax
2021-07-12 19:37:28 +08:00
vis2k
f67caa2c1d
rename
2021-07-12 19:30:31 +08:00
vis2k
36a1411c4a
syntax
2021-07-12 17:23:55 +08:00
vis2k
7eccab0433
PreprocessorDefine: 42_0_OR_NEWER
2021-07-11 16:25:33 +08:00
vis2k
9b160bce5d
fix: FallbackTransport didn't propagate Early/LateUpdate
2021-07-10 14:37:54 +08:00
vis2k
b305741b4b
fix : #2822 - OnClientDisconnect wasn't called for host disconnect because LocalConnectionToServer wouldn't call OnTransportDisconnected ( #2823 )
...
* test
* fix
2021-07-08 18:25:45 +08:00
vis2k
b1a2ade539
committed the wrong chang
2021-07-08 18:00:50 +08:00
vis2k
2c18d5d4ee
add comment
2021-07-08 17:41:58 +08:00
vis2k
1c23b70ca8
fix : #2818 NetworkClient Disconnecting state added. Disconnect now sets state to Disconnecting. OnTransportDisconnected doesn't early return anymore because state was == Disconnected already before. fixes OnClientDisconnect not being called for remote connections. ( #2821 )
...
* fix : #2818 NetworkClient Disconnecting state added. Disconnect now sets state to Disconnecting. OnTransportDisconnected doesn't early return anymore because state was == Disconnected already before.
* add test
2021-07-08 16:59:14 +08:00
vis2k
57c0f70df8
NetworkClient.Disconnect: explicitly check against Connecting and Connected.
...
prepares for Disconnecting state so we don't need to change this here.
2021-07-08 16:10:15 +08:00
vis2k
49eeb58af6
add comment
2021-07-08 16:06:38 +08:00
vis2k
0a7af48e6e
NetworkIdentity.SetupIDs: use GetPrefabStage(gameObject) for correctness ( #2781 )
2021-07-08 15:19:54 +08:00
vis2k
fb052a30b5
fix : #2793 - Interest Management V2 now offers SetHostVisibility overwriting ( #2813 )
...
* InterestManagement.SetHostVisibility virtual
* NetworkServer uses it
* NetworkClient uses it
2021-07-08 13:36:27 +08:00
vis2k
188be9ead0
fix: serialization precision over days by using frameCount instead of single precision time ( #2815 )
...
* fix: serialization precision over days by saving a double timestamp at the start of Broadcast() once
* use tick instead
2021-07-07 22:22:15 +08:00
vis2k
9ac3cf9534
comment
2021-07-07 20:46:50 +08:00
vis2k
c241d9dc20
remove unused import
2021-07-07 19:47:54 +08:00
vis2k
d25df4035b
linebreaks
2021-07-07 19:45:05 +08:00
vis2k
e20bcc6f0c
syntax
2021-07-07 19:43:45 +08:00
Robin Rolf
ef1f1a55f1
Add (failing) test for large timestamp serialization ( #2814 )
...
* Add test for large timestamp serialization
* Update Assets/Mirror/Tests/Runtime/NetworkIdentityTests.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-07-07 19:42:56 +08:00
vis2k
92d4429c55
add comments
2021-07-07 12:23:29 +08:00
vis2k
80387ffa03
fix: nimoyd unbatcher InvalidOperationException ( #2812 )
2021-07-07 11:48:51 +08:00
vis2k
1100af2ae0
rename
2021-07-07 11:24:37 +08:00
vis2k
fe7ed2ace1
Tests: nimoyd unbatcher repro
2021-07-07 11:23:18 +08:00
MrGadget1024
fb608d685a
fix: Fixed additive scenes on host client
...
- This was broken by #a0f5a846
2021-07-06 12:07:36 -04:00
Eunseop Shim
c0a5dff95f
Use Debug.LogException for NetworkBehaviour error messages ( #2803 )
2021-07-02 10:10:13 +08:00
MrGadget1024
357ef138c9
code style
2021-06-30 13:17:44 -04:00
MrGadget1024
5b9c7e11d5
syntax
2021-06-30 13:14:36 -04:00
MrGadget1024
6bb97abd2d
fix: fixed order of fields in NT Base
2021-06-30 11:26:31 -04:00
MrGadget1024
b86c8615f4
fix: Added null check and error logging to OnDeserializeAllSafely
2021-06-30 00:41:56 -04:00
MrGadget
a0f5a846d7
fix: OnClientChangeScene not firing for host client ( #2801 )
2021-06-30 10:56:50 +08:00
MrGadget
57d1892433
fix: Avoid NRE in UnpackAndInvoke ( #2800 )
...
Client message handlers may call conn.Disconnect, which will make connection = null, so we must check for that after calling `handler.Invoke`.
2021-06-30 10:56:09 +08:00
vis2k
021470360d
Tests: WriteUri(null) for https://github.com/vis2k/Mirror/pull/2796/
2021-06-30 10:54:43 +08:00
MrGadget
e07488d91b
fix: null handling in WriteUri & ReadUri ( #2796 )
2021-06-30 10:54:06 +08:00
MrGadget1024
b460b90007
fixed deprecation date
2021-06-29 06:07:47 -04:00
MrGadget1024
58c832f614
Removed comment
2021-06-28 07:38:23 -04:00
MrGadget1024
b7e6b6b3bc
Added missing Deprecated dates
2021-06-27 13:14:45 -04:00
vis2k
ff218adc17
fix: OverrideVirtualWithBaseCallsBothVirtualAndBase etc. failing tests because Weaver Cmd/Rpc SubstitueMethods couldn't be accessed by inheriting classes
2021-06-26 13:17:18 +08:00
Cooper H
74ae04d222
fix: Weaver Generated Cmd/Rpc should be private ( #2799 )
...
* Fix for users calling weaver gen'd methods in the inspector
Forces the new weaver generated method to be private, preventing prevents users from mistakenly calling weaver generated methods in dropdown menus (such as buttons) in the inspector.
* Update Assets/Mirror/Editor/Weaver/Processors/MethodProcessor.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-06-26 01:45:47 +08:00
MrGadget1024
5528bdd27e
Syntax
2021-06-23 23:24:57 -04:00
vis2k
243586254d
'multiple NetworkIdentity components' warning changed to Error to make it more obvious that this breaks a project
2021-06-23 12:45:23 +08:00
MrGadget1024
81854247c7
indention
2021-06-22 12:18:33 -04:00
vis2k
bb559b88eb
NetworkIdentity: fix define order for SceneManagement and use elif
2021-06-22 22:15:06 +08:00
vis2k
d7373ff175
remove unused imports
2021-06-22 21:25:11 +08:00
vis2k
25e13cb6ec
Tests: UtilsTest.GetTrueRandomUInt
2021-06-22 19:10:24 +08:00
vis2k
b309f546ca
NetworkIdentity: #if UNITY_2021_2 support when importing SceneManagent to avoid AutoUpgrader modifying NetworkIdentity
2021-06-22 19:06:30 +08:00
MrGadget
92334ba2aa
fix: Don't call FinishLoadScene when customHandling ( #2794 )
...
* fix: Don't call FinishLoadScene when customHandling
FinishLoadScene will be called from `UpdateScene` if `loadingSceneAsync != null && loadingSceneAsync.isDone` and it's the responsibility of the user in their custom handler to assign `loadingSceneAsync` to something to block FinishLoadScene until that completes.
* Update Assets/Mirror/Runtime/NetworkManager.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-06-22 13:29:49 +08:00
vis2k
a6f6dd2b7e
MessagePacking.WrapHandler: improve error message when disconnecting a connection because of exceptions. It needs to be obvious that it was disconnected, and why that's a good idea.
2021-06-20 12:10:07 +08:00
vis2k
820c5a6c44
feature: Timestamp Batching #2786
2021-06-20 12:10:07 +08:00
vis2k
e5771c23a0
MessagePacking: MaxMessageSize renamed to MaxContentSize so it's more obvious
2021-06-18 20:10:17 +08:00
vis2k
5644611d5d
NetworkServerTest: reuse MessagePacking.MaxMessageSize
2021-06-18 19:34:42 +08:00
vis2k
6ba6543278
MessagePacking: MaxMessageSize property for convenience
2021-06-18 19:31:38 +08:00
vis2k
15e3b3b11d
MessagePacking.HeaderSize made public for convenience
2021-06-18 19:30:38 +08:00
vis2k
64040536a6
NetworkConnectionToClient/Server.Update common code moved to NetworkConnection.Update
2021-06-18 18:31:26 +08:00
vis2k
6e9206deab
NetworkConnection.SendToTransport abstract; NetworkConnectionToClient/Server.Send(ArraySegment) common code moved into NetworkConnection
2021-06-18 18:31:26 +08:00
vis2k
970c3e8702
syntax
2021-06-18 18:31:02 +08:00
vis2k
cb05c5288b
syntax
2021-06-18 18:30:42 +08:00
vis2k
b3b6d04a8b
syntax
2021-06-18 18:28:04 +08:00
vis2k
33318555fe
add comments
2021-06-18 18:21:14 +08:00
vis2k
bbde7edc1d
add comments
2021-06-18 18:18:51 +08:00
vis2k
34492c5097
NetworkConnectionToClient/Server: Validate packet size again before passing batch to transport
2021-06-18 17:19:09 +08:00
vis2k
4382eb0f6e
syntax
2021-06-18 16:58:45 +08:00
vis2k
8338d02301
syntax
2021-06-18 16:48:59 +08:00
vis2k
651020852b
syntax
2021-06-18 16:45:04 +08:00
vis2k
caf143f4d7
update comment
2021-06-18 16:44:38 +08:00
vis2k
227efb6c7a
NetworkConnection.ValidatePacketSize: syntax
2021-06-18 16:41:40 +08:00
vis2k
d818b2d4aa
Tests: MemoryTransport guarantees max message size just like a real transport would. Guarantees that even if Mirror tests have max message size issues, transport would catch it.
2021-06-18 15:55:52 +08:00
vis2k
0cce4962d2
NetworkServerTest: MaxMessageSize + 1 server->client too
2021-06-18 13:58:38 +08:00
vis2k
0d86b2cdde
NetworkServerTest: max message size server->client too
2021-06-18 13:57:49 +08:00
vis2k
75b17b9a8d
NetworkServerTests: MaxMessageSize + 1
2021-06-18 13:56:27 +08:00
vis2k
4703c5e939
NetworkServerTests: MaxMessageSize
2021-06-18 13:55:44 +08:00
vis2k
e78304c465
NetworkServerTest: VariableSize message size adjusted for WriteBytesAndSize header
2021-06-18 13:51:24 +08:00
vis2k
8ded81fa20
cleanup
2021-06-18 13:03:52 +08:00
vis2k
400d5c7a10
NetworkServerTests: VariableSizedMessage for convenience
2021-06-18 13:02:35 +08:00
vis2k
a568ee4c6f
syntax
2021-06-18 12:13:52 +08:00
vis2k
379820c435
NetworkServerTest: send data race test to avoid previous bug where larger batch threshold messages would be sent immediately, out of order
2021-06-18 11:57:01 +08:00
vis2k
e374d21f86
better
2021-06-18 11:55:13 +08:00
vis2k
9bff0abbf3
NetworkServerTest: send data race test to avoid previous bug where larger batch threshold messages would be sent immediately, out of order
2021-06-18 11:54:28 +08:00
vis2k
26a8f19204
remove unnecessary imports
2021-06-18 11:42:54 +08:00
vis2k
75c145b175
replaced all GetMaxBatchSize with GetBatchTreshold everywhere
2021-06-17 20:26:04 +08:00
vis2k
b538285b9d
Transport.GetMaxBatchSize obsoleted and replaced by GetBatchThreshold
2021-06-17 20:26:02 +08:00
vis2k
2a563b96df
fix: Batcher 'MaxBatchSize' changed to 'Threshold' to support larger messages too. They simply become large batches, while smaller ones are still fitted into 'Threshold'. fixes data race where larger messages would be sent immediately, while smaller ones would be sent at the end of the frame. prepares for timestamp batching which assumes a timestamp prefix for ALL batches (including larger ones, which previously would be treated as not a batch) ( #2787 )
...
* fix: Batcher 'MaxBatchSize' changed to 'Threshold' to support larger messages too. They simply become large batches, while smaller ones are still fitted into 'Threshold'. fixes data race where larger messages would be sent immediately, while smaller ones would be sent at the end of the frame. prepares for timestamp batching which assumes a timestamp prefix for ALL batches (including larger ones, which previously would be treated as not a batch)
* add comment
* better comment
* do-while
* better comment
2021-06-17 19:08:50 +08:00
vis2k
41dc651576
Tests: >= max batch size send test added to NetworkServerTests
2021-06-17 12:31:16 +08:00
vis2k
90d23802ab
Tests: >= max batch size send test added to NetworkServerTests
2021-06-17 12:29:46 +08:00
vis2k
9aa34e8dae
NetworkClient/NetworkServer OnConnected/OnDisconnected events are now public so that custom NetworkManagers can hook into them too
2021-06-17 11:23:01 +08:00
vis2k
342da4fbc7
remove old comments
2021-06-16 23:04:28 +08:00
vis2k
70bfd3acc1
remove old comment
2021-06-16 18:52:07 +08:00
vis2k
185468ea38
NetworkServerTest: Send_ServerToClientMessage
2021-06-16 17:57:47 +08:00
vis2k
764cd988c5
rename
2021-06-16 17:55:48 +08:00
vis2k
22e6a83f00
NetworkClientTests: remove redundant Send test
2021-06-16 17:54:09 +08:00
vis2k
d07f10b7be
use NetworkTime.localTime where local time was previously implied when using NetworkTime.time on the server. for clarity.
2021-06-16 16:58:20 +08:00
vis2k
7aecc2b19a
feature: NetworkTime.localTime exposed for double precision alternative to Time.time (needed by timestamp batching)
2021-06-16 16:53:08 +08:00
vis2k
d56c0e0ad8
syntax
2021-06-16 16:50:57 +08:00
vis2k
f2496cf7bc
NetworkTime: LocalTime() renamed to .localTime for consistency with .time
2021-06-16 16:50:16 +08:00
vis2k
79c067e4aa
MirrorTest: ConnectClientBlockingAuthenticatedAndReady helper function
2021-06-16 12:47:05 +08:00
vis2k
2df5357647
rename
2021-06-16 12:44:13 +08:00
vis2k
b98e01b348
typo
2021-06-16 12:43:40 +08:00
vis2k
890cbba297
NetworkServerTest: SendCommand_RequiresAuthority
2021-06-16 12:43:15 +08:00
vis2k
831a2efda4
MirrorTest: ConnectClientBlocking returns server connection for convenience
2021-06-16 12:41:51 +08:00
vis2k
8720325892
NetworkServerTest: ReadyMessageSetsClientReady() simplified
2021-06-16 12:38:27 +08:00
vis2k
5a9adcd9ed
NetworkBehaviourTests: remove redundant SendCommandInternal test
2021-06-16 12:35:44 +08:00
vis2k
501d953216
MirrorTest: ConnectClientBlockingAndAuthenticate helper function
2021-06-16 12:34:44 +08:00
vis2k
def54b85fc
NetworkServerTest: [Command] tests use weaved [Command] functions now
2021-06-16 12:31:53 +08:00
vis2k
9df7db3db2
NetworkIdentityTests: remove redundant HandleCommand test
2021-06-16 12:29:27 +08:00
vis2k
56c46abd18
syntax
2021-06-16 12:21:53 +08:00
vis2k
0c13f23798
NetworkServerTest: [Command] with wrong netId
2021-06-16 12:21:15 +08:00
vis2k
7c9fd6d10d
NetworkServerTest: [Command] only allowed on owned objects
2021-06-16 12:18:52 +08:00
vis2k
c136c9c7f4
NetworkServerTest: [Command] with multiple components
2021-06-16 12:14:54 +08:00
vis2k
453e94a35d
NetworkServerTest: [Command] test simple version
2021-06-16 12:11:27 +08:00
vis2k
e49a5392b3
update comment
2021-06-16 12:07:40 +08:00
vis2k
02399940d1
remove unnecessary
2021-06-16 12:06:00 +08:00
vis2k
3577e187b1
comment
2021-06-16 12:03:44 +08:00
vis2k
f5f60ab177
syntax
2021-06-16 12:02:20 +08:00
vis2k
f80d5fd958
NetworkServerTest: HideForConnection rewritten
2021-06-16 12:01:54 +08:00
vis2k
ba019a678c
NetworkServerTest: ShowForConnection rewritten
2021-06-16 11:59:10 +08:00
vis2k
d18472b4d5
remove unnecessary
2021-06-16 11:41:25 +08:00
vis2k
b052e2bd91
NetworkServerTest: remove unused
2021-06-16 11:40:05 +08:00
vis2k
6037e7ac1f
NetworkServerTest: replace over engineered test
2021-06-16 11:38:58 +08:00
vis2k
3debc65ffd
NetworkServerTest cleanup
2021-06-16 11:28:49 +08:00
vis2k
ad5eac2016
sort tests
2021-06-15 17:46:22 +08:00
vis2k
6e015e9442
syntax
2021-06-15 17:44:57 +08:00
vis2k
acf9eff9d0
syntax
2021-06-15 17:44:34 +08:00
vis2k
5d77cda200
cleanup
2021-06-15 17:44:02 +08:00
vis2k
87cdf7bedd
NetworkServerTest: Unspawn simplified
2021-06-15 17:43:11 +08:00
vis2k
e18a17e8c7
cleanup
2021-06-15 17:41:45 +08:00
vis2k
58f7ff8902
cleanup
2021-06-15 17:39:52 +08:00
vis2k
0385effd13
syntax
2021-06-15 17:28:53 +08:00
vis2k
f08b6c2806
NetworkServerTest: GetNetworkIdentity tests simplified
2021-06-15 17:28:07 +08:00
vis2k
6d18c42593
NetworkServerTest: SendToClientOfPlayer test removed because it did not even test SendToClientOfPlayer, and the function is obsolete anyway
2021-06-15 17:26:09 +08:00
vis2k
e02032f1ca
NetworkServerTest: SendToClientOfPlayer cleanup
2021-06-15 17:24:29 +08:00
vis2k
4b2fa2c5b4
NetworkServerTest: RegisterUnregisterClearHandler cleanup
2021-06-15 17:22:48 +08:00
vis2k
50c6a69492
syntax
2021-06-15 17:17:49 +08:00
vis2k
afeef26fdb
NetworkServerTest: SendToAll simplified
2021-06-15 17:14:34 +08:00
vis2k
b2ae4ef7e1
NetworkServerTest: CommandMessageCallsCommand cleanup
2021-06-15 17:11:31 +08:00
vis2k
26e18d7e87
NetworkServerTest: ReadyMessageSetsClientReady cleanup
2021-06-15 17:06:51 +08:00
vis2k
092ff4538a
NetworkIdentityTests: reuse CreateLocalConnectionPair
2021-06-15 17:03:57 +08:00
vis2k
79c6897249
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 17:01:44 +08:00
vis2k
06628b3b70
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 17:00:31 +08:00
vis2k
841c3ca2f2
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 16:58:54 +08:00
vis2k
855e0017c8
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 16:50:23 +08:00
vis2k
bf7250c096
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 16:49:44 +08:00
vis2k
68c72a7d54
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 16:48:45 +08:00
vis2k
bfd03adb09
NetworkServerTest: reuse CreateLocalConnectionPair
2021-06-15 16:47:04 +08:00
vis2k
46d49381b0
syntax
2021-06-15 16:46:54 +08:00
vis2k
58cae69647
NetworkServerTest: SetAllClientsNotReady reuses CreateLocalConnectionPair
2021-06-15 16:45:27 +08:00
vis2k
bf6957c150
NetworkServerTest: RemoveLocalConnection reuses CreateLocalConnectionPair
2021-06-15 16:44:31 +08:00
vis2k
133b1eb841
LocalConnectionTest: use CreateLocalConnectionPair
2021-06-15 16:42:34 +08:00
vis2k
7f36a75ef7
NetworkServerTest: SetClientReadyAndNotReady simplified
2021-06-15 16:40:58 +08:00
vis2k
2506195e42
MirrorTest: CreateLocalConnectionPair helper function
2021-06-15 16:40:48 +08:00
vis2k
34634e51b0
LocalConnection classes made public for tests
2021-06-15 16:39:06 +08:00
vis2k
2706eb30b9
LocalConnectionToClient made internal for tests
2021-06-15 16:37:37 +08:00
MrGadget
8218979e32
fix: Prevent m_AssetId set to empty string ( #2766 )
...
* fix: Prevent m_AssetId set to empty string
Fixes : #2765
Checks path for empty string before assigning to `m_AssetId`.
I left commented debug logs in place from testing, which was setting `NetworkIdentity.ServerOnly` on and off both in normal edit mode and prefab edit mode. In either mode, OnValdidate fires 4 times, and two of those try to set an empty string to `m_AssetId`.
* Changes as requested
* Update Assets/Mirror/Runtime/NetworkIdentity.cs
* Update NetworkIdentity.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-06-15 16:10:42 +08:00
vis2k
b08cc62fd4
NetworkServerTest: OnDataReceivedInvalidConnectionId simplified
2021-06-15 14:16:55 +08:00
vis2k
e827c6c0f3
fix: NetworkClient.Shutdown now clears OnDis/ConnectedEvents
2021-06-15 14:13:05 +08:00
vis2k
68a4a06926
fix: NetworkServer.Shutdown now clears OnDis/ConnectedEvents
2021-06-15 14:11:02 +08:00
vis2k
8295c8d5ab
rename
2021-06-15 13:58:20 +08:00
vis2k
a45cef2536
Tests: reuse ProcessMessages
2021-06-15 13:58:03 +08:00
vis2k
3d0c13ec6a
MirrorTest: ProcessMessages updates transports too now
2021-06-15 13:52:02 +08:00
vis2k
2ab17571cf
MirrorTest: ProcessMessages: switch update order so we can use it in NetworkServerTest.ClientToServerMessage
2021-06-15 13:51:32 +08:00
vis2k
196f4d3f36
NetworkServerTest: remove complicated OnDataReceived test. ClientToServerMessage does the same now.
2021-06-15 13:46:54 +08:00
vis2k
113b8cebaa
NetworkServerTest: ClientToServerMessage
2021-06-15 13:46:06 +08:00
vis2k
4db998f9a6
MirrorTest: ConnectClientBlocking helper function
2021-06-15 13:45:57 +08:00
vis2k
41d4b31856
NetworkServerTest: DisconnectAllTest_LocalConnection cleanup
2021-06-15 13:37:17 +08:00
vis2k
0df666382f
NetworkServerTest: DisconnectAllTest_RemoteConnection cleanup
2021-06-15 13:36:18 +08:00
vis2k
42de58c9e9
NetworkServerTest: RemoveConnection cleanup
2021-06-15 13:34:55 +08:00
vis2k
86f83da2d9
NetworkServerTests: AddConnection test split into two, and cleaned up
2021-06-15 13:33:23 +08:00
vis2k
ab4c2bceae
NetworkServerTest: RemoveLocalConnection cleanup
2021-06-15 13:28:51 +08:00
vis2k
64e8697031
NetworkServerTest: SetLocalConnection split into two tests
2021-06-15 13:27:48 +08:00
vis2k
37c972658e
NetwrokServerTests: cleanup OnConnectedOnlyAllowsNonZeroConnectionIds
2021-06-15 13:25:25 +08:00
vis2k
79fee4c93d
syntax
2021-06-15 13:23:08 +08:00
vis2k
b3820991a1
syntax
2021-06-15 13:19:31 +08:00
vis2k
26d72ada5d
syntax
2021-06-15 13:17:50 +08:00
vis2k
f2f911808f
remove unused import
2021-06-15 13:09:40 +08:00
vis2k
ddb00ae2d1
Tests: remove empty TearDowns
2021-06-15 13:08:44 +08:00
vis2k
b1e286d779
RemoteTestBase: remove redundant NetworkClient.Disconnect
2021-06-15 13:07:17 +08:00
vis2k
52ee9408b1
Tests: remove redundant NetworkServer.Shutdowns
2021-06-15 12:50:27 +08:00
vis2k
6e7d71b9d3
MirrorTest: clear NetworkIdentity.spawned in TearDown
2021-06-15 12:48:19 +08:00
vis2k
7a7ea26cc9
MirrorTest: TearDown shuts down NetworkClient/Server too
2021-06-15 12:45:09 +08:00
vis2k
3d535e0c4e
LocalConnectionTest : MirrorTest so that transport etc. are available too (prepares for tick batching)
2021-06-15 12:37:33 +08:00
vis2k
0d7edde710
fix NetworkClientTests.Send() test
2021-06-15 12:07:37 +08:00
MrGadget1024
4a03c3034e
Fixed typo in comment
2021-06-14 13:26:07 -04:00
MrGadget1024
21a6b64e38
Updated Compiler Symbols MIRROR_41_0_OR_NEWER
2021-06-14 10:01:43 -04:00
Alexander Klaiber
d2ee4979f7
fix: clientAuthority access ( #2779 )
...
Provide the same interface access for runtime changes like the NetworkTransform class.
2021-06-14 09:42:59 -04:00
vis2k
7bd65c2d9b
syntax
2021-06-14 21:19:43 +08:00
vis2k
bdb410e015
fix: NetworkServer.OnTransportData header size is now checked before every message unpacking again like before batching.
2021-06-14 17:53:41 +08:00
vis2k
e6b379fb8d
fix: NetworkClient.OnTransportData header size is now checked before every message unpacking again like before batching.
2021-06-14 17:51:42 +08:00
vis2k
8e8cc71e94
Unbatcher.GetNextMessage: use NetworkReader.Remaining
2021-06-14 17:48:31 +08:00
vis2k
aa71d2a848
NetworkIdentity.OnDeserializeSafely: use NetworkReader.Remaining
2021-06-14 17:48:23 +08:00
vis2k
ccbd6185b4
feature: NetworkReader.Remaining for convenience
2021-06-14 17:46:12 +08:00
vis2k
7c91707d34
Unbatcher: StartReadingBatch helper function to prepare for tick batching
2021-06-14 16:43:14 +08:00
vis2k
2aa8958210
remove unused
2021-06-14 16:34:39 +08:00
vis2k
dcf470b1e9
breaking: remove NetworkClient/NetworkServer.batching properties. Tests still pass. Batching needs to be always on for tick batching.
2021-06-14 15:13:00 +08:00
vis2k
72f915a456
breaking: force enable batching to prepare for TickBatching
2021-06-14 14:54:00 +08:00
vis2k
7eacdaa96b
NetworkConnectionToClient.Disconnect(): remove RemoveFromObservingsObservers because we do that in OnTransportDisconnected now, which is called for both voluntary and involuntary disconnects. ( #2760 )
2021-06-14 12:11:40 +08:00
vis2k
2c9dd3fc01
add comments
2021-06-13 13:28:09 +08:00
vis2k
a55932ea81
Unbatcher: update icon
2021-06-13 13:05:52 +08:00
vis2k
2c2581fa08
fix : #2778 SpawnObjects SetActive(true) would not initialize NetworkIdentity if the parent is inactive because Unity would not call Awake()
2021-06-13 13:03:49 +08:00
vis2k
6eea1e77f5
fix : #2744 KcpTransport statistics changed to long to avoid int overflows
2021-06-12 18:39:49 +08:00
vis2k
c5e8614101
fix : #2651 scene changing with batching would cause errors because we wouldn't stop the batch processing after a scene message ( #2774 )
2021-06-12 18:33:46 +08:00
vis2k
9dfc823df6
perf: Client -> Server batching ( #2773 )
...
* perf: Client->Server batching to prepare for tickbatching/NT and batching scene change fix
* move to NetworkConnection base class
2021-06-11 12:19:45 +08:00
vis2k
72623ae60b
add comment
2021-06-10 21:11:51 +08:00
vis2k
9d7b83e035
The Unbatcher ( #2771 )
2021-06-10 12:33:45 +08:00
vis2k
53a119d3ab
The Batcher ( #2770 )
...
* Batcher & Tests
* NetworkConnectionToClient: use Batcher
* folder
* namespace
* comment
* rename param
* add comment
2021-06-10 12:23:25 +08:00
vis2k
2f5ce11491
NetworkReaderPool: use NetworkReader.SetBuffer
2021-06-09 21:13:30 +08:00
vis2k
854ea1e5a3
NetworkReader.SetBuffer helper function to prepare for batching improvements
2021-06-09 21:13:19 +08:00
vis2k
8089490b51
add TODO
2021-06-09 13:08:27 +08:00
vis2k
a159fe3c41
update comment
2021-06-09 13:06:04 +08:00
vis2k
6e448f22f7
breaking: remove batchInterval to prepare for TickBatching and for the scene change fix
2021-06-09 12:56:09 +08:00
vis2k
24130d6e35
update comments
2021-06-09 12:32:44 +08:00
Angga Permana
83c86f0f16
fix typo ( #2769 )
2021-06-08 19:19:04 -04:00
Robin Rolf
9ff054ade4
Missing space in weaver log message ( #2767 )
2021-06-08 08:36:23 -04:00
vis2k
3eefed30fb
cherry picked preprocessor define from asset store release branch
2021-06-08 12:45:19 +08:00
vis2k
f84c012ae8
perf: kcp2k V1.11 - where-allocation - 25x reduction in Socket.SendTo/ReceiveFrom allocations ( #2759 )
2021-06-08 12:41:56 +08:00
vis2k
0a9533eb92
fix: Telepathy V1.8 [2021-06-02]
...
- fix: Do not set timeouts on listener (fixes https://github.com/vis2k/Mirror/issues/2695 )
- fix : #104 - ReadSafely now catches ObjectDisposedException too
2021-06-02 11:52:14 +08:00
vis2k
a2c7a7e60d
add comment
2021-06-02 11:22:50 +08:00
MrGadget
456e098544
fix: Clear observers from other clients ( #2757 )
...
* fix: Clear observers from other clients
Fixes #2737
Added call to RemoveFromObservingsObservers in NetworkServer.DestroyPlayerForConnection
* Update NetworkServer.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-06-02 11:18:47 +08:00
vis2k
99db41b483
improve error message
2021-06-01 12:15:46 +08:00
MrGadget1024
4e5ad17699
Updated Readme
...
Unity version, formatting
2021-05-30 15:26:43 -04:00
vis2k
114c68a8d5
add test for #2674
2021-05-30 12:14:52 +08:00
MrGadget1024
9fc5e0c287
fix: Fixed PlauerUI Text in Basic Example
2021-05-29 16:22:28 -04:00
vis2k
3efc917b6e
fix: NetworkIdentity default execution order set to -1. guarantees Awake() initializing all NetworkBehaviours before their Awake is called. [imer, FakeByte]
2021-05-28 20:00:35 +08:00
vis2k
a0e062af94
add comment
2021-05-28 19:55:59 +08:00
vis2k
10c39a59cc
fix: kcp2k V1.10
...
- feature: configurable Timeout
- allocations explained with comments (C# ReceiveFrom / IPEndPoint.GetHashCode)
- fix : #17 KcpConnection.ReceiveNextReliable now assigns message default so it
works in .net too
- fix: Segment pool is not static anymore. Each kcp instance now has it's own
Pool<Segment>. fixes #18 concurrency issues
2021-05-28 16:36:52 +08:00
MrGadget1024
3abaa70f0f
NetworkManager: Commented noisy Debug.Log
2021-05-28 03:51:17 -04:00
MrGadget1024
4d1f440b7d
Revert "NetworkManager: Commented noisy Debug.Log"
...
This reverts commit 9c45d6685b
.
2021-05-28 03:44:19 -04:00
MrGadget1024
9c45d6685b
NetworkManager: Commented noisy Debug.Log
2021-05-28 03:43:48 -04:00
MrGadget1024
f77583c5e4
Changed all deprecation dates to ISO format
2021-05-28 03:39:48 -04:00
Robin Rolf
1432932c7f
Remove non-existant param from xml doc ( #2750 )
2021-05-28 12:15:30 +08:00
vis2k
e6b27cf7e8
fix: NetworkClient.Disconnect NullReferenceException if connection was null
2021-05-28 02:25:27 +08:00
vis2k
089e5bbb59
perf: NetworkServer.Broadcast serialization lookup removed. serializations are now cached and rebuilt in NetworkIdentity based on timestamp.
...
=> way easier
=> way faster because we don't need to recycle two writers for every .spawned at the end of broadcast
2021-05-27 12:24:06 +08:00
vis2k
fe3b7ae57c
TODO
2021-05-27 12:20:24 +08:00
vis2k
724eb7e09c
iso date format
2021-05-26 20:07:30 +08:00
vis2k
f8319d0f80
TODOs
2021-05-26 19:58:48 +08:00
vis2k
d0d32785db
Tests: ClientSceneTest_LocalPlayer_asHost moved to separate file
2021-05-26 19:55:24 +08:00
vis2k
06691c9aef
ClientSceneTests_LocalPlayer: reuse CreateNetworked
2021-05-26 19:54:22 +08:00
vis2k
edd580fb7b
syntax
2021-05-26 19:49:38 +08:00
vis2k
dd9949d3aa
HostSetup: reuse CreateGameObject
2021-05-26 19:40:16 +08:00
vis2k
c636e19dcd
remove unused import
2021-05-26 19:37:53 +08:00
vis2k
f94ff22f55
NetworkServerRuntimeTests: reuse MirrorPlayModeTest
2021-05-26 19:37:21 +08:00
vis2k
a911e580e1
add comment
2021-05-26 19:35:49 +08:00
vis2k
e45c6b98ca
add comment
2021-05-26 19:34:27 +08:00
vis2k
a143124941
NetworkIdentityTests (runtime): reuse MirrorPlayModeTest
2021-05-26 19:33:28 +08:00
vis2k
9b78ee82f1
Tests: MultiplexTransportEnableTest moved to separate file
2021-05-26 19:30:02 +08:00
vis2k
227402c6aa
ClientSceneTests_LocalPlayer: reuse CreateNetworked
2021-05-26 19:28:02 +08:00
vis2k
5e1e8128fe
ClientSceneTests_DestroyAllClientObjects uses MirrorPlayModeTest
2021-05-26 19:26:01 +08:00
vis2k
5c38f6f989
syntax
2021-05-26 19:20:20 +08:00
vis2k
359184942f
Tests: HostSetup reuses MirrorPlayModeTest
2021-05-26 19:17:46 +08:00
vis2k
e5f4461315
rename
2021-05-26 19:15:45 +08:00
vis2k
378a7402b9
MirrorPlayModeTest
2021-05-26 19:14:58 +08:00
vis2k
dc2fee7212
MirrorTest renamed to MirrorEditModeTest to prepare for MirrorPlayModeTest
2021-05-26 18:46:20 +08:00
vis2k
940ff58e72
NetworkClient.isLocalClient renamed to isHostClient, which is less confusing
2021-05-26 18:33:41 +08:00
vis2k
443b542fb6
update summary
2021-05-26 18:31:14 +08:00
vis2k
a43837e0d8
UpdateVarsMessage renamed to EntityStateMessage so it's more obvious. NetworkClient.OnEntityStateMessage can be reused for WorldState easier later.
2021-05-26 18:16:51 +08:00
vis2k
0a6cd15bbd
MessagePackingTest: don't rely on UpdateVarsMessage
2021-05-26 18:14:55 +08:00
vis2k
193d2cbfeb
syntax
2021-05-26 18:06:08 +08:00
vis2k
b4cecccbcb
NetworkServer: GetEntitySerializationForConnection helper function
2021-05-26 18:04:48 +08:00
vis2k
ca319fdb32
rename
2021-05-26 17:58:42 +08:00
vis2k
27378e3146
syntax
2021-05-26 17:57:17 +08:00
vis2k
98bd54f5eb
NetworkServer.Broadcast helper function
2021-05-26 17:56:14 +08:00
vis2k
4763bad896
NetworkServer: DisconnectInactive helper function
2021-05-26 17:55:06 +08:00
vis2k
82b79df1be
NetworkServer: ClearSpawnedDirtyBits helper function
2021-05-26 17:52:29 +08:00
vis2k
a8630abbf6
NetworkServer: CleanupSerializations helper function
2021-05-26 17:51:15 +08:00
vis2k
2085cd387f
NetworkServer: broadcast to connection code moved into BroadcastToConnection
2021-05-26 17:49:19 +08:00
vis2k
7af1156d4a
perf: Extensions.CopyTo foreach allocation removed
2021-05-26 14:51:17 +08:00
vis2k
15b13c9bf6
perf: Pool initial capacity. allocates writers during initialization so we have fewer allocations in the first few frames
2021-05-26 14:45:11 +08:00
vis2k
8adede43a2
NetworkIdentity.visibility: assign from Awake instead of lazy get
2021-05-26 14:19:13 +08:00
vis2k
a10cdd6cbf
NetworkConnection: move message processing to NetworkServer/Client to avoid extra round in call stack ( #2744 )
...
* NetworkConnection: remove redundant .handlers state. NetworkConnectionToClient/Server use NetworkServer/Client anyway.
* NetworkConnection: move OnTransportData to NetworkServer/Client to simplify call stack. previously it was:
Transport.OnData
Server/Client.OnTransportData
Connection.OnTransportData
Connection.UnpackAndInvoke
Connection.InvokeHandler
Server/Client.Handler
now it is:
Transport.OnData
Server/Client.OnTransportData
Server/Client.UnpackAndInvoke
Server/Client.Handler
2021-05-26 10:18:44 +08:00
MrGadget1024
26a7a2f76a
fix: Stop Discovery when client gets into Connected state
2021-05-24 22:30:11 -04:00
vis2k
e5f32feeba
syntax
2021-05-24 17:45:26 +08:00
vis2k
ceb7b24b8a
breaking: NetworkBehaviour .netIdentity, .ComponentIndex, .NetworkBehaviours[] simplified by setting it from NetworkIdentity.Awake() ( #2742 )
2021-05-24 17:41:34 +08:00
vis2k
52b3c94e20
NetworkServerTest: clean up client too
2021-05-24 16:04:43 +08:00
vis2k
9ac8997d6a
comments
2021-05-24 15:06:29 +08:00
vis2k
02e8cde323
syntax
2021-05-24 15:05:05 +08:00
vis2k
98ea3af0e0
LocalConnectionTest: correct test names
2021-05-24 15:04:41 +08:00
vis2k
7ebb7fafcb
rename
2021-05-24 14:55:03 +08:00
vis2k
3309fa4cc3
TODO
2021-05-23 23:42:44 +08:00
vis2k
77e8f1d7e4
ClientSceneTests: reuse CreateNetworked
2021-05-23 23:36:26 +08:00
vis2k
0a28072f26
syntax
2021-05-23 22:41:27 +08:00
vis2k
1f7e97e29b
BatchingTests : MirrorTest
2021-05-23 22:40:07 +08:00
vis2k
1f858fff01
remove unnecessary BasicAuthenticatorTest
2021-05-23 22:38:55 +08:00
vis2k
04d5b7d5f0
NetworkIdentityTests: cleanup via CreateNetworked
2021-05-23 20:03:21 +08:00
vis2k
0426920d88
MirrorTest: CreateNetworked<T,U,V>
2021-05-23 19:57:04 +08:00
vis2k
78493f5fe3
this too
2021-05-23 19:53:54 +08:00
vis2k
8f336b8551
NetworkIdentityTests: simplify cleanup
2021-05-23 19:49:07 +08:00
vis2k
aec7e7ac77
NetworkBehaviourTests: cleanup via CreateNetworked
2021-05-23 19:40:02 +08:00
vis2k
7d5655ae56
NetworkBehaviourTests: simplify cleanup
2021-05-23 19:19:44 +08:00
vis2k
4a4415d456
NetworkBehaviourTests: reuse CreateNetworked
2021-05-23 19:17:13 +08:00
vis2k
edcbaae9a4
NetworkBehaviourTests: ComponentIndex simplified
2021-05-23 19:12:03 +08:00
vis2k
ec332f8b74
syntax
2021-05-23 19:08:49 +08:00
vis2k
3e62659b6f
NetworkServerTests: cleanup
2021-05-23 19:05:37 +08:00
MrGadget1024
e09b313571
Syntax. made list readonly (code smell)
2021-05-23 06:30:19 -04:00
vis2k
c8156292a5
fix : #2739 : NetworkServer.Update now operates on a copy of connections so transports can call OnTransportDisconnected from within send. avoids 'collection can't be modified while iterating' exception
2021-05-23 17:32:01 +08:00
vis2k
7364361028
Extensions: CopyTo(List<T>) and test
2021-05-23 17:31:06 +08:00
vis2k
db6a842358
Tests: NetworkServer.UpdateWithTimedOutConnection related to #2718
2021-05-22 14:49:54 +08:00
vis2k
b20c5b636c
InterestManagementTests: utilize MirrorTest
2021-05-20 16:02:49 +08:00
vis2k
8961eb2ec6
SyncVarTest: reuse CreateNetworked
2021-05-20 15:56:54 +08:00
vis2k
f846b311f3
ClientSceneTestsBase: remove unnecessary shortcuts
2021-05-20 15:48:42 +08:00
vis2k
fd2288e541
ClientSceneTestsBase: remove tracking
2021-05-20 15:41:15 +08:00
vis2k
9e73f074c9
ClientSceneTests: reuse CreateNetworked/CreateGameObject
2021-05-20 15:40:22 +08:00
vis2k
25f069065e
MirrorTest: CreateGameObject
2021-05-20 15:38:53 +08:00
vis2k
d43e85b5ae
ClientSceneTests: reuse CreateNetworked
2021-05-20 15:36:08 +08:00
vis2k
63023c1f27
Tests: SpawnObject reuses CreateNetworked
2021-05-20 15:29:08 +08:00
vis2k
c8193c2100
ClientSceneTest: CreateSceneObject reuses CreateNetworked
2021-05-20 15:26:58 +08:00
vis2k
648b7a650b
ClientSceneTestsBase : MirrorTest
2021-05-20 15:26:58 +08:00
James Frowen
aee7c82ddd
fix: fixing NetworkDiagnostics receive for batching ( #2700 )
2021-05-20 15:05:33 +08:00
vis2k
80c69422ab
NetworkManagerHUD: show host status separately to avoid confusion (see #2725 )
2021-05-20 15:04:29 +08:00
vis2k
260eed289e
NetworkManagerHUD connected wording
2021-05-20 15:00:21 +08:00
MrGadget1024
c1d8964c82
MIRROR_39_0_OR_NEWER
2021-05-20 02:04:11 -04:00
vis2k
887a31942e
NetworkWriterTest: use CreateNetworked
2021-05-20 13:31:41 +08:00
vis2k
2052d1e7ca
NetworkWriterTest: use CreateNetworked
2021-05-20 13:30:50 +08:00
vis2k
4b3061a786
remove unused
2021-05-20 13:27:28 +08:00
vis2k
b6a8f6853f
Tests: finally remove CreateNetworkIdentity
2021-05-20 13:26:26 +08:00
vis2k
7011a1f49f
SyncVarTests: remove dependency on CreateNetworkIdentity
2021-05-20 13:26:04 +08:00
vis2k
ff2c264fae
Tests: remove generic magic
2021-05-20 13:19:19 +08:00
vis2k
bbeb544d23
Tests: SyncVarCacheNetidForBehaviour: don't use generic magic
2021-05-20 13:18:38 +08:00
MrGadget1024
b2105be8f1
feat: RoomManager Auto-Restart
...
When in headless server mode, and when last player disconnects, RoomManager will self-call `StopServer` which will fully reset it to the offline scene and then back to the Room scene so players can join again for another play.
2021-05-20 01:16:08 -04:00
MrGadget1024
c7fe7acc15
Moved Discovery Stop buttons down a bit
2021-05-20 01:16:08 -04:00
vis2k
bcb0e1f53d
Tests: SyncVarCacheNetidForIdentity: don't use generic magic
2021-05-20 13:15:57 +08:00
vis2k
11be7869fc
Tests: SyncVarCacheNetIdForGameObject: don't use generic magic
2021-05-20 13:13:57 +08:00
vis2k
a8249bb13d
remove unused test
2021-05-20 13:10:10 +08:00
vis2k
0af57b1bea
SyncVarHookTest: reduce dependencies on CreateNetworkIdentity to prepare for removal
2021-05-20 13:08:12 +08:00
vis2k
35e1976373
SyncVarHookTest: reduce dependencies on CreateNetworkIdentity to prepare for removal
2021-05-20 13:06:21 +08:00
MrGadget
b4e81537c9
fix: Shutdown Discovery in OnDisable / OnDestroy ( #2736 )
2021-05-20 13:06:12 +08:00
MrGadget1024
d0e5131b3f
feat: Added Stop buttons to Discovery HUD
...
Copied from NetworkManagerHUD
2021-05-20 00:49:12 -04:00
vis2k
e153cd6ced
TODO
2021-05-20 12:25:34 +08:00
vis2k
538f6c7b29
SyncVarTest: reuse CreateNetworked instead of CreateNetworkIdentity
2021-05-20 12:23:04 +08:00
vis2k
2650d92804
NetworkIdentity.Reset: add comment
2021-05-20 11:46:06 +08:00
vis2k
404d5a884f
Tests call NetworkIdentity.Awake now too. prepares for NetworkComponents initialization.
2021-05-20 11:39:12 +08:00
vis2k
69fea4064b
CreateNetworkedAndSpawn: reuse CreateNetworked
2021-05-20 11:35:57 +08:00
vis2k
86d8986f5b
remove unused
2021-05-19 20:21:30 +08:00
vis2k
1a75bcc616
SyncVarHookTest: reuse CreateNetworked
2021-05-19 20:21:05 +08:00
vis2k
c59d453cd8
remove unused
2021-05-19 20:16:47 +08:00
vis2k
819552d6a7
SyncVarTests: reuse CreateNetworked
2021-05-19 20:15:25 +08:00
vis2k
f6583f5d88
MirrorTest: set syncInterval=0 too
2021-05-19 19:58:20 +08:00
vis2k
1a4cd6a250
SyncVarTestBase: reuse MirrorTest
2021-05-19 19:54:06 +08:00
vis2k
ad224baf38
RemoteTestBase: remove unused
2021-05-19 19:48:32 +08:00
vis2k
181464521c
NetworkServerTest: use MirrorTest CreateNetworked
2021-05-19 19:47:10 +08:00
vis2k
f6c13424cf
MirrorTest: CreateNetworked<T,U>
2021-05-19 19:47:10 +08:00
vis2k
152ffb11a7
NetworkMatchCheckerTest reuses MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
09d749e613
NetworkManagerTest reuses MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
9c8f60bd56
NetworkManagerStopHostOnServerDisconnectTest reuses MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
b7cbbb02c0
NetworkIdentityTests reuse MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
4ee6eec558
NetworkConnectionToClientTests reuse MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
b180fd5001
NetworkClientTests reuse MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
d2f181a7d6
MirrorTest.UpdateTransport helper
2021-05-19 19:47:10 +08:00
vis2k
385facbe5c
NetworkBehaviourTests reuses MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
787a734ce5
TODO
2021-05-19 19:47:10 +08:00
vis2k
6db98895a1
MirrorTest: CreateNetworkedAndSpawn, ProcessMessages
2021-05-19 19:47:10 +08:00
vis2k
97c525eb88
TargetRpcTest: reuse CreateNetworked
2021-05-19 19:47:10 +08:00
vis2k
e98ce05bee
protected
2021-05-19 19:47:10 +08:00
vis2k
8a7c474e25
null check
2021-05-19 19:47:10 +08:00
vis2k
0d8ca1fe66
RemoteTestBase uses MirrorTest
2021-05-19 19:47:10 +08:00
vis2k
753ee98a09
MirrorTest creates MemoryTransport too
2021-05-19 19:47:10 +08:00
vis2k
8d4a6f0f21
Tests: MirrorTest helper class
2021-05-19 19:47:10 +08:00
vis2k
31e85ac834
remove unnecessary NetworkTransformChildTest
2021-05-19 19:46:59 +08:00
vis2k
511f9ee453
NetworkMatchCheckerTest: don't use reflection
2021-05-19 19:29:38 +08:00
vis2k
4a52a566c6
perf: NetworkBehaviour ComponentIndex O(N) => O(1) via caching
2021-05-19 15:31:23 +08:00
vis2k
72c440bd9c
TODO
2021-05-19 15:29:38 +08:00
vis2k
237357c147
TODO
2021-05-19 15:29:10 +08:00
vis2k
3851325c59
oops
2021-05-19 12:37:31 +08:00
vis2k
dc70cd33d7
Tests: CreateNetworked without NetworkBehaviour
2021-05-19 12:37:20 +08:00
vis2k
c4491fe0d6
Tests: ActivateHostSceneCallsOnStartClient uses CreateNetworked
2021-05-19 12:35:54 +08:00
vis2k
691ac1311c
TestUtils.CreateNetworked<T>
2021-05-19 12:32:34 +08:00
vis2k
c8349f3f01
TestUtils.CreateBehaviour
2021-05-19 12:03:29 +08:00
Chris Lang
96cf4e74c4
Updated processor define symbols for breaking changes
...
- We really need to remember or automate this.
2021-05-18 14:14:16 -04:00
Chris Lang
c48beedb48
Dated Deprecations
2021-05-18 11:00:34 -04:00
vis2k
a14da0a701
TODO
2021-05-18 22:03:44 +08:00
vis2k
c4dcb4d176
add comment
2021-05-18 22:00:46 +08:00
vis2k
c4e37f670c
NetworkReader API cleanup: ReadInt16 => ReadShort etc.
2021-05-18 21:01:48 +08:00
vis2k
46539ef816
NetworkWriter API cleanup: WriteInt16 => WriteShort etc.
2021-05-18 13:31:44 +08:00
vis2k
c661fdac36
fix test after NetworkWriter Length removal
2021-05-18 13:25:13 +08:00
vis2k
8a4416e3b5
breaking: perf: remove NetworkWriter.Length/SetLength/EnsureLength. Position is enough. ( #2731 )
...
* NetworkWriter: obsolete .Length and .SetLength()
* breaking: perf: remove NetworkWriter.Length/SetLength/EnsureLength. Position is enough.
2021-05-18 12:07:10 +08:00
vis2k
e823de74bd
Mirror uses new Transport.Send version everywhere
2021-05-17 17:41:54 +08:00
vis2k
9a0cce64cd
Transport.Send API cleanup: channelId is now the last parameter, for consistency with the rest of Mirror where it's often a default parameter (which has to be last)
2021-05-17 17:27:58 +08:00
vis2k
f79709a263
Transport: xml comments cleanup
2021-05-17 17:06:53 +08:00
vis2k
6ebe813fc8
add comment
2021-05-16 14:06:09 +08:00
MrGadget
28f186a76f
fix: Reset Network Time whenever server starts ( #2713 )
2021-05-15 14:45:26 +08:00
vis2k
d33965c800
NetworkServer broadcasting: GetEntitySerialization helper function
2021-05-14 12:43:21 +08:00
vis2k
d045918ea7
add TODO
2021-05-14 12:41:08 +08:00
vis2k
16d0829ee4
NetworkClient.Shutdown: clear connection too
2021-05-13 22:13:50 +08:00
vis2k
269f9f486c
obsolete test
2021-05-13 21:57:17 +08:00
vis2k
55263977f8
breaking: obsolete FallbackTransport ( #2720 )
2021-05-13 21:52:10 +08:00
vis2k
b0b4b9523c
breaking: remove Cloud API and examples.
2021-05-13 21:51:49 +08:00
vis2k
c5073da7b3
syntax
2021-05-13 13:07:57 +08:00
vis2k
15232d35b3
syntax
2021-05-13 13:07:04 +08:00
vis2k
f4c72cf135
syntax
2021-05-13 13:06:07 +08:00
vis2k
d8786b16ff
syntax
2021-05-13 13:05:33 +08:00
vis2k
c5579e9744
syntax
2021-05-13 13:02:23 +08:00
vis2k
cce0e7db03
syntax
2021-05-13 13:00:23 +08:00
vis2k
74297fd7fb
syntax
2021-05-13 12:58:42 +08:00
vis2k
46dce930fb
syntax
2021-05-13 12:58:00 +08:00
vis2k
3a3a726059
NetworkServerTest: syntax
2021-05-13 12:55:12 +08:00
vis2k
0d6b677660
syntax
2021-05-13 12:53:34 +08:00
vis2k
f5a856abc1
remove NetworkReader/WriterPoolTests. Pool<T> is already tested.
2021-05-13 12:51:33 +08:00
vis2k
d22e4387a0
add comments
2021-05-13 12:50:10 +08:00
vis2k
8cb68f6a16
Tests: MessageBaseTests renamed to NetworkMessageTests
2021-05-13 12:48:13 +08:00
vis2k
23cfcb7db7
Tests: LocalConnectionsTest ClientToServer
2021-05-13 12:47:15 +08:00
vis2k
02ff1076f8
Tests: LocalConnectionsTest ServerToClient
2021-05-13 12:43:51 +08:00
vis2k
3d122ea37e
Tests: remove unnecessary CustomAttributeTest
2021-05-13 12:30:59 +08:00
vis2k
9d50c1a1d0
Tests: BuiltInMessages cleanup
2021-05-13 12:30:04 +08:00
vis2k
b7a6932b93
use local function
2021-05-13 12:06:00 +08:00
vis2k
a66fefb1e3
syntax
2021-05-13 12:00:59 +08:00
vis2k
35b16df3e5
add comments
2021-05-13 11:59:41 +08:00
vis2k
56b52b4973
NetworkManager.StopHost: call NetworkServer.OnTransportDisconnected directly so we can obsolete NetworkClient.DisconnectLocalServer. ( #2717 )
2021-05-11 22:00:16 +08:00
vis2k
97b4cb1c0b
NetworkServer.DisconnectAllExternalConnections moved into DisconnectAll, because that's what it actually does.
2021-05-11 21:54:06 +08:00
vis2k
c44016b049
add comment
2021-05-11 21:21:43 +08:00
vis2k
007dd80852
fix: NetworkServer.OnDisconnected removed. There is only one way to invoke the disconnect handling, which is OnTransportDisconnected. fixes bugs where OnDisconnect would handle the disconnect, not remove the connection, then the Transport callback would call OnTransportDisconnected->OnDisconnect a second time. fixes #2706 and many more
2021-05-11 21:19:45 +08:00
vis2k
bac1f94033
NetworkServerTest: use ClientConnect so that invoked connectionId and MemoryTransport's internal connectionId match.
2021-05-11 18:21:03 +08:00
vis2k
2d24dfefbe
NetworkServerTest: UpdateTransport helper function
2021-05-11 16:36:34 +08:00
vis2k
e942062c79
NetworkServerTests simplified by storing Transport in a field
2021-05-11 16:34:44 +08:00
vis2k
7c358054d7
fix: NetworkServer.OnTransportDisconnected doesn't call conn.Disconnect() again. avoids possible deadlocks etc.
2021-05-11 13:15:14 +08:00
vis2k
7d807d04fa
add TODO
2021-05-11 13:05:20 +08:00
vis2k
4722b9739d
NetworkClient.Disconnect: RemoveLocalConnection call moved into LocalConnectionToServer where it belongs
2021-05-11 12:58:02 +08:00
vis2k
015a8ea1a4
NetworkClient.Disconnect: connection != null check not needed because of the new early return
2021-05-11 12:41:07 +08:00
vis2k
f0caa19270
add TODO
2021-05-11 12:36:20 +08:00
vis2k
e8a6b5c2b5
NetworkClient.Disconnect: remove dead code
2021-05-11 12:35:44 +08:00
vis2k
79caa1b9a2
NetworkClient.Disconnect: early return so it's not called twice
2021-05-11 12:31:20 +08:00
vis2k
1733b84cbe
breaking: Transport.ServerDisconnect return value changed from bool to void because it's not used anywhere
2021-05-11 12:06:12 +08:00
vis2k
45e481e65e
NetworkConnection.RemoveObservers renamed to RemoveFromObservingsObservers because that's what it actually does
2021-05-11 11:47:46 +08:00
vis2k
979f67497e
disable failing test
2021-05-10 23:23:20 +08:00
vis2k
76241da75f
breaking: obsolete Mirror timeout handling. Transport handle it instead. ( #2711 )
2021-05-10 21:37:29 +08:00
vis2k
9b2e7d09c7
add comment
2021-05-10 21:33:38 +08:00
vis2k
939f2820ea
fix: NetworkServer.OnDisconnect now calls DestroyPlayerForConnection if NetworkManager doesn't handle it.
2021-05-10 21:04:03 +08:00
vis2k
eadda02701
add comment
2021-05-10 20:59:30 +08:00
vis2k
e723a52c97
add comments
2021-05-10 20:57:38 +08:00
vis2k
497c279b2f
TODO
2021-05-10 20:49:45 +08:00
vis2k
561ec64960
NetworkManager: remove redundant OnServerDisconnectInternal
2021-05-10 20:44:19 +08:00
vis2k
522a9533f6
NetworkConnection.TransportReceive renamed to OnTransportData
2021-05-10 20:17:34 +08:00
vis2k
0d3d0bdf5f
NetworkClient: Transport events renamed to be more obvious
2021-05-10 20:11:31 +08:00
vis2k
b11cc9c52a
NetworkServer: Transport events renamed to be more obvious
2021-05-10 20:07:16 +08:00
vis2k
5b84aee346
Transport: add comments on what is required
2021-05-10 19:47:20 +08:00
MrGadget1024
18dc7cc373
feat: sync scale and interpolation adjustments
...
- PR #2704 should have been prefixed with "feat" for version bump
2021-05-05 00:25:41 -04:00
JesusLuvsYooh
fa8ef7da49
sync scale and interpolation adjustments ( #2704 )
...
* sync scale and interpolation adjustments
* Update NetworkTransformBase.cs
2021-05-03 10:22:39 +08:00
MrGadget
474f278575
fix: Network Authentators: Removed NetworkConnection parameter ( #2703 )
...
As was done in other areas, now using `NetworkClient.connection` instead of passing a `conn` parameter around.
- Abstract NetworkAuthenticator now has obsoletes.
- Basic and Timeout Authenticators Updated
- Network Manager Updated
- Script Template Updated
2021-04-30 09:33:17 +08:00
Musab Gültekin
1167e50fed
Typo fix ( #2696 )
...
Fix a typo at line 1218 on NetworkManager.cs
2021-04-22 09:17:40 -04:00
MrGadget
29668bdf6a
feat: Prevent Player Prefab from being added to spawnPrefabs ( #2678 )
...
* feat: Prevent Player Prefab from being added to spawnPrefabs
This will prevent this unhelpful warning:
`Replacing existing prefab with assetId 'c3ee5d2b-0807-ecb4-f85b-93753624468e'. Old prefab 'Player', New prefab 'Player'`
* added comment
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-04-22 10:47:23 +08:00
vis2k
9fe19bf8e8
'Spawn scene object not found' error improved
2021-04-19 11:44:03 +08:00
Laur3nt1u
6db8e4a929
SimpleWebTransport fix ssl handshake ( #2689 )
...
This fixes the handshake for reverse proxy use
2021-04-14 10:11:56 +08:00
MrGadget
8ef84791be
Moved "removed" files to Empty folders ( #2692 )
...
Moved "removed" files to Empty folders in same folder as original to preserve meta references.
In one case the entire Logging folder was moved.
In all cases I stayed within the coverage of AsmDef's that they were previously.
2021-04-14 10:10:30 +08:00
vis2k
3e555c92ba
breaking: MessagePacking GetId<T> return value changed to ushort because that's what it always is. type safety matters.
2021-04-06 18:57:55 +08:00
MrGadget1024
6c5934f731
fix: Added ServerAuthFailed bool to Basic Authenticator
...
Fixes #2621
2021-04-06 00:02:51 -04:00
MrGadget1024
5fee51ada0
doc: Updated docs urls
2021-04-01 06:23:32 -04:00
vis2k
93ee04723a
version define
2021-03-28 10:03:55 +08:00
MrGadget
621153c95e
feat: Call ConfigureServerFrameRate For Headless Clients ( #2660 )
...
* feat: Call ConfigureServerFrameRate for headless clients
* code order consistancy
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-27 18:53:18 +08:00
MrGadget
008dbbcf9c
fix: Prevent client shutdown from running twice ( #2666 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-27 18:52:27 +08:00
vis2k
2ec53df4a9
syntax
2021-03-27 12:06:14 +08:00
vis2k
3a9d954404
fix : #2579 - Weaver skips already weaved assemblies when restarting Unity. fixes a bug where GeneratedNetworkCode class would exist twice, while the newer one was missing some writers
2021-03-27 11:49:12 +08:00
vis2k
afc4f584fc
syntax
2021-03-27 11:30:52 +08:00
vis2k
a4eb0c4d77
Weaver: CreateGeneratedCodeClass helper function and some restructuring so it's not hidden in WeaverList constructor
2021-03-27 11:09:52 +08:00
vis2k
e356e4f9c8
Weaver: GeneratedNetworkCode name as const
2021-03-27 11:05:01 +08:00
vis2k
42065c1699
add comment
2021-03-27 11:05:01 +08:00
MrGadget1024
38250ebb59
Added tooltip to SyncMode for inspector
2021-03-26 13:07:46 -04:00
vis2k
95a7f830c3
add log for debugging if needed
2021-03-26 19:34:37 +08:00
vis2k
98109c0ed3
add comments
2021-03-26 11:32:40 +08:00
vis2k
b1754c8748
Weaver.ReaderWriterProcessor.InitialzieReaderAndWriters: eli5
2021-03-26 11:31:41 +08:00
vis2k
417642475a
fix : #2579 "No writer found" error when running Mirror tests in Unity 2020.3 Editor. fixes the first bug in editor, but maybe not the runtime bug? or maybe it does.
2021-03-26 11:17:56 +08:00
vis2k
b7c63c3067
fix : #2517 - NetworkManager.UpdateScene wraps FinishLoadScene in try/catch to guarantee loadingSceneAsync being cleared no matter what. fixes a bug where if FinishLoadScene throws then loadingSceneAsync is never cleared and the code runs every update
2021-03-21 23:54:13 +08:00
vis2k
57ae5372ba
NetworkManager.UpdateScene made non static. it wasn't obvious why this would be static, and it's called from nonstatic Update() anyway. makes it cleaner.
2021-03-21 12:33:06 +08:00
vis2k
b422ccb29e
NetworkManager.FinishLoadScene made protected so inheritors can still use it, but users don't need to worry about it (not in the public API)
2021-03-21 12:31:41 +08:00
MrGadget1024
fedc2884ce
Revert "Replaced Proximity Checker with Distance Interest Mgmt"
...
This reverts commit 5c7bfa4834
.
2021-03-21 00:24:19 -04:00
MrGadget1024
5c7bfa4834
Replaced Proximity Checker with Distance Interest Mgmt
2021-03-20 22:51:00 -04:00
MrGadget
0c903dabc6
Updated examples to not sync scale ( #2661 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-21 10:05:07 +08:00
MrGadget
cd6a4805d7
breaking: Compiler symbols culled to Mirror 17 and later. ( #2659 )
...
* breaking: Compiler symbols culled to Mirror 17 and later.
* added missing quote
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-21 10:04:45 +08:00
MrGadget1024
95f55e652f
doc: Added DDOL note to NetworkBehaviour template
2021-03-20 19:26:35 -04:00
MrGadget1024
1f22066f9b
fix: MultipleAdditiveScenes disabled Server Batching
...
This can be enabled again when batching is fixed.
See https://github.com/vis2k/Mirror/issues/2651
2021-03-19 22:46:55 -04:00
MrGadget1024
9190dcfb7e
NetworkManager: Make FinishLoadScene public
...
FinishLoadScene needs to be accessible from override of LateUpdate
2021-03-19 09:22:51 -04:00
MrGadget1024
1335b40d11
NetworkManager: move clientSceneOperation caching up
2021-03-19 09:07:12 -04:00
JesusLuvsYooh
6b9b7ce5af
Added new syncScale boolean to NT Test writer. ( #2657 )
2021-03-18 16:47:01 -04:00
JesusLuvsYooh
68ae40818b
NetworkTransformBase sync scale boolean. ( #2655 )
...
* NetworkTransformBase syncScale boolean
https://github.com/vis2k/Mirror/pull/2646
* NT - Command for client to server - Unreliable
2021-03-18 16:39:14 +08:00
vis2k
09bf1c5bf0
fix: NetworkLoop inserts a fresh PlayerLoopSystem instead of resizing and overwriting partially. fixes undefined behaviour where the previous nativeLoop IntPtrs weren't cleared, possibly still updating a native loop accidentally. See also #2652
2021-03-18 12:59:00 +08:00
MrGadget1024
1defc926dc
Basic Example: Moved playersList to Player class
2021-03-17 21:56:13 -04:00
MrGadget1024
f70946a362
fix: Fixed field lable not shown for SyncVars
2021-03-16 14:40:55 -04:00
vis2k
c957500710
customizable noise
2021-03-16 16:30:27 +08:00
vis2k
e9081c468c
LatencySimulation: perlin noise spikes
2021-03-16 16:12:04 +08:00
vis2k
d8fb7cda63
range slider
2021-03-16 15:32:04 +08:00
vis2k
83f8593caa
LatencySimulation: spike latency via multiplier
2021-03-16 15:29:20 +08:00
vis2k
1281f72ac2
LatencySimulation: SimulateLatency helper function
2021-03-16 15:26:42 +08:00
vis2k
de076348c0
syntax
2021-03-16 15:24:52 +08:00
vis2k
58560166ca
Latency Simulation: add latency when adding to queue
2021-03-16 15:24:23 +08:00
vis2k
28be3a814c
syntax
2021-03-16 15:19:37 +08:00
vis2k
1938597a7b
LatencySimulation: scramble changed to a probability
2021-03-16 13:40:04 +08:00
vis2k
c5322ac5d5
remove performance test framework to fix CI ( #2648 )
2021-03-16 12:40:26 +08:00
MrGadget
53dad15e04
Shorten Channel Enums ( #2644 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-16 12:08:28 +08:00
ThatDan123
254a0b929d
Added what size the rejected packet was ( #2645 )
2021-03-16 12:08:23 +08:00
MrGadget1024
386a26c5b7
GUIConsole in Mirror namespace, formatting
2021-03-16 12:08:18 +08:00
vis2k
0713db8338
add comment
2021-03-15 19:26:18 +08:00
vis2k
0c39279239
obsolete Utils.Version
2021-03-15 19:21:24 +08:00
vis2k
257dd2a775
cleanup
2021-03-15 19:18:02 +08:00
vis2k
a5ab683917
cleanup
2021-03-15 19:18:02 +08:00
JesusLuvsYooh
ce62184a86
interpolateScale On NT ( #2639 )
...
interpolateScale On NT
2021-03-15 18:01:55 +08:00
vis2k
c4e4bf3148
LatencySimulation: add latency spikes
2021-03-15 13:43:15 +08:00
vis2k
f3997b6030
syntax
2021-03-15 13:38:40 +08:00
vis2k
7de5c18986
fix: LatencySimulation now sends all messages that are ready to be sent. previously a scrambled message being inserted randomly could delay the ones behind it in the list
2021-03-15 13:21:34 +08:00
vis2k
7c7fa74572
add comment
2021-03-15 13:16:12 +08:00
vis2k
2f2ffb9f36
feature: Latency Simulation ( #2640 )
...
* wrap around a transport
* loss
* unreliable client to server latency
* reliable client to server latency
* unreliable/reliable server to client latency
* add comment
* list to prepare for scramble
* unreliable scramble
* rename to LatencySimulation
* help url
* doc: updated comment
* fix: MultipleAdditiveScenes AddPlayer timing
* Update Assets/Mirror/Runtime/Transport/LatencySimulation.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Runtime/Transport/LatencySimulation.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* remove old comments
* SimuateSend helper function as per suggestion
Co-authored-by: MrGadget1024 <chris@clevertech.net>
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2021-03-15 10:12:54 +08:00
MrGadget1024
86c8e1bb24
fix: MultipleAdditiveScenes AddPlayer timing
2021-03-14 17:06:05 -04:00
MrGadget1024
6384d1c244
doc: updated comment
2021-03-14 15:10:13 -04:00
vis2k
78b6cfbde7
feat: NetworkTransform.compressRotation option. disabled by default to not break 2D projects.
2021-03-14 14:53:23 +08:00
vis2k
19017dfb41
fix: NetworkTransform compression disabled for now to fix tiny 'wobbly' 2D sprite rotations. NetworkTransform will be remade anyway. make it work, then make it fast.
2021-03-14 14:41:10 +08:00
vis2k
7428941c93
CompressionTests: test 90 degree euler angle
2021-03-14 14:14:43 +08:00
MrGadget1024
383a0279c0
fix: Updated Authenticator Template for NetworkClient.connection
2021-03-13 15:57:30 -05:00
vis2k
c3c95d22ca
Utils.IsPrefab: remove <2018.3 support
2021-03-13 20:00:12 +08:00
vis2k
df2330239f
add TODO
2021-03-13 19:53:51 +08:00
vis2k
b9027737c8
add TODO
2021-03-13 19:47:35 +08:00
vis2k
23722ce828
add comment
2021-03-13 19:42:49 +08:00
vis2k
b258a27c09
add comment
2021-03-13 19:42:20 +08:00
vis2k
f19385d565
add TODO
2021-03-13 19:40:18 +08:00
vis2k
461ce519ff
obsolete redundant NetworkClient.RegisterHandler version with NetworkConnection
2021-03-13 19:35:49 +08:00
vis2k
e0d023828f
add TODOs
2021-03-13 19:30:46 +08:00
vis2k
5cb86830f1
BasicAuthenticator.OnAuthResponseMessage: remove unnecessary NetworkConnection parameter to remove last dependency on RegisterHandler version with NetworkConnection
2021-03-13 19:30:16 +08:00
vis2k
ecf15f5070
NetworkManager: OnClientSceneInternal uses RegisterHandler version without NetworkConnection parameter to prepare for removal
2021-03-13 19:25:29 +08:00
vis2k
8e0ef05c64
NetworkManager: OnClientNotReadyMessageInternal uses RegisterHandler version without NetworkConnection parameter to prepare for removal
2021-03-13 19:24:45 +08:00
vis2k
5bf7be143c
NetworkClient.OnConnected/DisconnectEvent: remove redundant NetworkConnection parameter. It's always NetworkClient.connection anyway.
2021-03-13 19:22:57 +08:00
vis2k
f38d29b61c
MultipleMatches example: CanvasController uses RegisterHandler version without NetworkConnection parameter to prepare for removal
2021-03-13 19:17:59 +08:00
vis2k
3cfee7dd14
add TODO
2021-03-13 19:13:53 +08:00
vis2k
21e0d6c8e0
NetworkClient.RegisterSystemHandlers: use the variant without NetworkConnection parameter so we can remove the other one later
2021-03-13 19:12:08 +08:00
vis2k
251d3cd392
NetworkClient.ClearLocalPlayer removed. clear it directly instead.
2021-03-13 18:36:52 +08:00
vis2k
9cf4207819
fix : #2635 - Reset also checks if local player before clearing it (see previous commit)
2021-03-13 18:36:29 +08:00
vis2k
457b21d907
fix : #2635 NetworkIdentity.OnDestroy only clears NetworkClient.localPlayer if WE are STILL the local player.
...
fixes data race in rooms scene (explanation see comments)
2021-03-13 18:29:20 +08:00
vis2k
2cd4403429
add TODO
2021-03-13 13:59:19 +08:00
vis2k
be229f27d8
add TODO
2021-03-13 13:58:39 +08:00
vis2k
251000436f
syntax
2021-03-13 13:54:04 +08:00
vis2k
e5f6d25ae3
syntax
2021-03-13 13:53:27 +08:00
vis2k
01d1630b7f
syntax
2021-03-13 13:52:44 +08:00
vis2k
a643cf7045
syntax
2021-03-13 13:52:32 +08:00
vis2k
89df32563b
syntax
2021-03-13 13:52:14 +08:00
vis2k
b2892e7e1a
add TODO
2021-03-13 13:51:20 +08:00
vis2k
0949c9d875
NetworkClient.HandleClientDisconnect removed. set .ready=false directly instead. way easier to understand.
2021-03-13 13:48:29 +08:00
vis2k
d7ee25e589
NetworkClient.HandleClientDisconnect: remove unnecessary connection parameter. it wasn't even used.
2021-03-13 13:44:34 +08:00
vis2k
4a47b1c7d2
NetworkClient.Ready: easier syntax
2021-03-13 13:34:58 +08:00
vis2k
f38af96202
NetworkClient.Ready: remove unnecessary NetworkConnection parameter ( #2634 )
2021-03-13 13:33:02 +08:00
vis2k
4daf0e439f
add TODOs
2021-03-13 13:17:17 +08:00
vis2k
5e7c873af9
comment formatting
2021-03-13 13:15:00 +08:00
vis2k
a5224ecd10
syntax
2021-03-13 13:11:13 +08:00
vis2k
4ce55f585c
NetworkClient.Ready: improve error message
2021-03-13 13:10:39 +08:00
vis2k
10aca712c2
add TODO
2021-03-13 13:08:20 +08:00
vis2k
a2dc9e6283
add TODO
2021-03-13 13:07:15 +08:00
vis2k
87c2f982cd
NetworkClient.AddPlayer: remove unnecessary ready line. we don't even get there if we aren't already ready.
2021-03-13 13:04:24 +08:00
vis2k
d118de81db
NetworkClient.AddPlayer: check if ready again. UNET checked if it has a readyConnection before too.
2021-03-13 13:01:21 +08:00
vis2k
c3f27f0fa1
NetworkClient.AddPlayer: simplify syntax, add TODO
2021-03-13 12:53:36 +08:00
vis2k
dc181ffe08
NetworkClient.AddPlayer: remove unnecessary NetworkConnection parameter
2021-03-13 12:44:54 +08:00
vis2k
0d5df4842f
obsolete NetworkClient.readyConnection redundant state
2021-03-13 12:36:54 +08:00
vis2k
dd5c137c7b
Tests: remove last dependencies on .readyConnection
2021-03-13 12:35:45 +08:00
vis2k
13b4f7d5e7
old Logging files moved into Old folder
2021-03-13 12:22:56 +08:00
MrGadget1024
c7c43da3ad
fix: NetworkLoop compiler definition wrong version
2021-03-12 09:04:44 -05:00
vis2k
c39a35077e
SendCommandInternal: use NetworkClient.connection instead of NetworkClient.readyConnection to remove dependency on .readyConnection
2021-03-12 16:37:36 +08:00
vis2k
cf08822f00
test for #2629 [Command(requiresAuthority=false)] to make sure it never happens again
2021-03-12 15:32:10 +08:00
vis2k
9d38188d6e
fix: NetworkClient.Ready(): set .connection to connection parameter like UNET did.
...
this was changed in 89cdec3075
because it's unnecessary.
but NetworkBehaviourTests.SendCommandInternal depends on it.
so let's keep feature parity for now.
2021-03-12 15:26:56 +08:00
vis2k
67d24ee2ca
forgot to revert test too
2021-03-12 15:07:47 +08:00
vis2k
c749c84ee4
forgot to fix log
2021-03-12 15:06:03 +08:00
vis2k
73cd1ac72a
fix : #2629 - Revert "NetworkBehaviour.SendCommandInternal: use connectionToServer instead of NetworkClient.readyConnection. reduces dependencies on NetworkClient.readyConnection (which is redundant) and reduces static states. ( #2620 )"
...
This reverts commit 64f247fb32
.
=> also adding a comment for next time
2021-03-12 14:54:09 +08:00
vis2k
413291a857
add TODO
2021-03-12 14:28:02 +08:00
MrGadget1024
5d00885564
perf: NetworkTransform - Removed redundant .transform
2021-03-11 08:49:24 -05:00
vis2k
2d004609c4
add comment
2021-03-11 14:23:18 +08:00
Coyote-A
038a1e3fd2
fix: networkloop breaks other libraries that use playerloop ( #2627 )
...
* use GetCurentPlayerLoop in unity 2019.3 or newer
* Update NetworkLoop.cs
Co-authored-by: vis2k <info@noobtuts.com>
2021-03-11 14:15:03 +08:00
vis2k
48a55ab487
remove old comment
2021-03-11 11:27:37 +08:00
vis2k
0992d71fe3
NetworkClient.CheckForLocalPlayer: remove dependency on readyConnection
2021-03-11 11:25:25 +08:00
MrGadget1024
540af6a9d5
fix: fix broken summary comments
2021-03-10 22:22:20 -05:00
vis2k
4c7a5d64a5
NetworkClient.AddPlayer: remove dependency on .readyConnection. the code has a '!ready' check before. so by definition, .readyConnection == .connection here.
2021-03-11 11:14:21 +08:00
vis2k
d299d607eb
NetworkClient.InternalAddPlayer: remove dependency on readyConnection
2021-03-11 11:09:54 +08:00
vis2k
9ee2bc5893
NetworkClient.HandleClientDisconnect: remove unnecessary readyConnection comparison
2021-03-11 11:09:54 +08:00
MrGadget
1042a39d85
fix: Added PersistNetworkManagerToOfflineScene ( #2625 )
...
* Added PersistNetworkManagerToOfflineScene
- Fixes #2624
* Added pragma suppression
* Fixed bool check
* More comments
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-03-10 22:08:29 -05:00
vis2k
171b674a0f
comment
2021-03-11 10:48:20 +08:00
vis2k
89cdec3075
NetworkClient.readyConnection state removed. points to .connection if .ready instead.
2021-03-11 10:36:11 +08:00
vis2k
5a1a67298b
update comment
2021-03-11 10:21:29 +08:00
vis2k
816c8885de
wat
2021-03-11 10:19:51 +08:00
vis2k
c5d1af2287
fix tests that started failing after isLocalPlayer fixes commit ( a6f6f80f65
) because it assumed ApplySpawPayload would set isLocalPlayer=true. but now it's only set true in OnStartLocalPlayer, which is only called in ApplySpawnPayload if spawnFinished is true. which it isn't. so we set it manually instead.
2021-03-11 00:09:16 +08:00
vis2k
accf843283
fix: NetworkIdentity.Reset resets isLocalPlayer AFTER the isLocalPlayer ClearLocalPlayer check. fixes a runtime UnSpawn test.
2021-03-10 23:45:29 +08:00
vis2k
a23c01aa24
add OnStartLocalPlayer comment from paul
2021-03-10 23:28:11 +08:00
vis2k
956bfff3ad
wat
2021-03-10 21:08:40 +08:00
vis2k
be2369f4a1
forgot one
2021-03-10 20:58:35 +08:00
vis2k
388b6bab71
NetworkAnimator: replace UNET's magic readyConnection check with isClient. this was from UNET and there was no comment, so nobody knew why it was used instead of isClient.
2021-03-10 20:55:21 +08:00
vis2k
97615b9491
syntax
2021-03-10 20:54:24 +08:00
vis2k
64f247fb32
NetworkBehaviour.SendCommandInternal: use connectionToServer instead of NetworkClient.readyConnection. reduces dependencies on NetworkClient.readyConnection (which is redundant) and reduces static states. ( #2620 )
2021-03-10 19:46:31 +08:00
vis2k
abbe34501d
add TODOs
2021-03-10 19:31:54 +08:00
vis2k
a58cd37a36
[Command] tests: set up NetworkIdentity connectionToServer everywhere too, not just to client. prepares for making SendCommandInternal use connectionToServer instead of NetworkClient.readyConnection.
2021-03-10 19:04:08 +08:00
vis2k
b3c25d1094
add TODO
2021-03-10 18:46:41 +08:00
Coyote-A
29590401bc
add missing virtual update methods in MultiplexTransport ( #2618 )
2021-03-10 17:34:25 +08:00
vis2k
f239ee678a
cleanup
2021-03-10 17:25:53 +08:00
vis2k
15d595fe41
SyncObject cleanup
2021-03-10 17:25:26 +08:00
vis2k
debcb400fe
syntax
2021-03-10 17:23:29 +08:00
vis2k
ba9b9ec85b
RemoteCallHelper cleanup
2021-03-10 17:22:57 +08:00
vis2k
0b9539b8de
NetworkWriterPool cleanup
2021-03-10 17:20:37 +08:00
vis2k
055ff8dae4
NetworkWriter cleanup
2021-03-10 17:19:12 +08:00
vis2k
5dd37b5c09
cleanup
2021-03-10 16:31:13 +08:00
vis2k
459d5e203e
NetworkTime: add TODOs
2021-03-10 16:31:13 +08:00
vis2k
b596294917
NetworkTime.rttSd was renamed to rttStandardDeviation
2021-03-10 16:31:13 +08:00
vis2k
46f4079856
NetworkTime.rttVar was renamed to rttVariance
2021-03-10 16:31:13 +08:00
vis2k
8a7fd39cf0
NetworkTime.timeSd was renamed to timeStandardDeviation
2021-03-10 16:31:13 +08:00
vis2k
b8b72d4482
NetworkTime.timeVar renamed to timeVariance to not confuse it with 'timeVariable' etc.
2021-03-10 16:31:13 +08:00
vis2k
fef1184404
NetworkTime cleanup
2021-03-10 16:18:11 +08:00
vis2k
a079f2a412
typo
2021-03-10 16:10:04 +08:00
vis2k
6ad3b5a6b7
previous syntax
2021-03-10 16:09:50 +08:00
vis2k
efc303ceb8
NetworkStartPosition cleanup
2021-03-10 16:09:14 +08:00
vis2k
5a6db1e4b7
NetworkReaderPool cleanup
2021-03-10 16:00:48 +08:00
vis2k
1358ab643f
cleanup
2021-03-10 15:57:39 +08:00
vis2k
b2d9279e76
NetworkReader cleanup
2021-03-10 15:53:13 +08:00
vis2k
f7c6d09b44
empty files moved into Empty folder
2021-03-09 19:20:10 +08:00
vis2k
078a0c4aec
NetworkManager comments cleaned up
2021-03-09 19:07:21 +08:00
vis2k
4962cee248
feat: NetworkManager.OnServerAddPlayer instantiates with name "Player [connId=42]" instead of "Player (clone)" for easier debugging
2021-03-09 18:58:20 +08:00
vis2k
fc92a28715
cleanup
2021-03-09 18:56:27 +08:00
vis2k
5e2f3c239f
syntax
2021-03-09 18:54:00 +08:00
vis2k
46c9bddb6c
cleanup
2021-03-09 18:53:24 +08:00
vis2k
64b436445f
cleanup
2021-03-09 18:49:58 +08:00
vis2k
a4e237d307
cleanup
2021-03-09 18:41:42 +08:00
vis2k
9f68d269cc
NetworkManagerHUD doesn't need xml comments except one
2021-03-09 18:25:35 +08:00
vis2k
ea141c30d6
syntax
2021-03-09 18:24:28 +08:00
vis2k
1f550b8289
cleanup
2021-03-09 18:22:36 +08:00
vis2k
22384458bd
cleanup
2021-03-09 18:07:29 +08:00
vis2k
013a748da6
cleanup
2021-03-09 18:03:16 +08:00
vis2k
6926bad7d6
cleanup
2021-03-09 17:55:19 +08:00
vis2k
25e9904fa8
add TODO
2021-03-09 17:54:43 +08:00
vis2k
0291d0a402
cleanup
2021-03-09 17:53:46 +08:00
vis2k
e79dd1e443
cleanup
2021-03-09 17:52:41 +08:00
vis2k
f02c163232
add comment about static state
2021-03-09 17:48:15 +08:00
vis2k
71e7393278
syntax
2021-03-09 16:17:07 +08:00
vis2k
fe3e365c7d
cleanu
2021-03-09 16:16:55 +08:00
vis2k
7ae1496b88
update url
2021-03-09 16:16:08 +08:00
vis2k
294fd46146
syntax
2021-03-09 16:12:40 +08:00
vis2k
94707b2554
add TODO
2021-03-09 16:07:55 +08:00
vis2k
2cf41cf835
syntax
2021-03-09 15:53:20 +08:00
vis2k
c4d217af2f
syntax
2021-03-09 15:50:27 +08:00
vis2k
b0ccb28f18
add comment
2021-03-09 15:50:22 +08:00
vis2k
c47a6b0085
NetworkIdentity.ThisIsASceneObjectWithPrefabParent moved to Utils
2021-03-09 15:47:46 +08:00
vis2k
04b3e34593
syntax
2021-03-09 15:40:33 +08:00
vis2k
6b9acacaf0
cleanup
2021-03-09 15:40:12 +08:00
vis2k
dd2b4f8736
syntax
2021-03-09 15:38:01 +08:00
vis2k
7d3666a121
syntax
2021-03-09 15:37:41 +08:00
vis2k
ad40b260d1
syntax
2021-03-09 15:35:02 +08:00
vis2k
7fc91537ed
remove unused NetworkBehavioursCache
2021-03-09 15:34:47 +08:00
vis2k
a21344196e
cleanup
2021-03-09 15:32:48 +08:00
vis2k
4a1f4115d5
cleanup
2021-03-09 15:30:30 +08:00
vis2k
15aa2e091e
cleanup
2021-03-09 15:23:48 +08:00
vis2k
4e7c49ee50
syntax
2021-03-09 15:21:11 +08:00
vis2k
d131367245
syntax
2021-03-09 15:19:40 +08:00
vis2k
665b1c2156
perf: batching is now enabled by default
2021-03-09 15:17:29 +08:00
vis2k
1b6f898a5a
update batching comment
2021-03-09 15:16:08 +08:00
vis2k
fbe378a069
cleanup
2021-03-09 15:15:11 +08:00
vis2k
7cc3e166c4
cleanup
2021-03-09 15:02:02 +08:00
vis2k
c4cf8c263d
syntax: avoid hiding property
2021-03-09 14:59:40 +08:00
vis2k
1bf08bbf89
syntax: avoid hiding property
2021-03-09 14:59:29 +08:00
vis2k
fc6ada4ab9
syntax: avoid hiding property
2021-03-09 14:59:15 +08:00
vis2k
8bcc8d29ef
syntax
2021-03-09 14:57:41 +08:00
vis2k
4e71f324c6
cleanup
2021-03-09 14:56:54 +08:00
vis2k
387571722b
cleanup
2021-03-09 14:55:03 +08:00
vis2k
5118f43a83
cleanup
2021-03-09 14:51:50 +08:00
vis2k
57432d94c9
NetworkVisibility: improve obsolete message
2021-03-09 14:05:11 +08:00
vis2k
d8e2f1650f
cleanup
2021-03-09 11:27:09 +08:00
vis2k
c2af82f897
cleanup
2021-03-09 11:18:15 +08:00
vis2k
2be35efbad
cleanup
2021-03-09 11:16:30 +08:00
vis2k
2d46c13ef5
syntax
2021-03-09 11:09:35 +08:00
vis2k
f1f51ce213
cleanup
2021-03-09 11:09:17 +08:00
vis2k
2f77fec632
cleanup
2021-03-09 10:57:42 +08:00
vis2k
e8e5f30fd6
cleanup
2021-03-08 22:50:24 +08:00
vis2k
86c0abd2b9
remove unused
2021-03-08 22:41:01 +08:00
vis2k
488d67de85
add TODO
2021-03-08 22:39:15 +08:00
vis2k
ecf6a42a2d
syntax
2021-03-08 22:36:20 +08:00
vis2k
bb5513338c
syntax
2021-03-08 22:34:30 +08:00
vis2k
9932b56b65
cleanup
2021-03-08 22:33:42 +08:00
vis2k
77ed0055a8
add comments
2021-03-08 22:31:03 +08:00
vis2k
4eed0ff7f1
cleanup
2021-03-08 22:29:54 +08:00
vis2k
36e7ebd50e
cleanup
2021-03-08 22:19:45 +08:00
vis2k
f53ee6583c
cleanup
2021-03-08 22:13:53 +08:00
vis2k
6045736266
clean up
2021-03-08 22:11:22 +08:00
vis2k
3fa8eb727c
remove unused LogFilter and NetworkManager.showDebugMessages
2021-03-08 22:09:37 +08:00
vis2k
925c9d749f
xml cleanup
2021-03-08 22:06:29 +08:00
vis2k
8bba4300a6
xml one liner
2021-03-08 22:02:31 +08:00
vis2k
a1381741d5
remove old batching comment
2021-03-08 11:50:14 +08:00
vis2k
92c9522388
move all the things
2021-03-07 19:57:46 +08:00
vis2k
0bc2a5573f
tests
2021-03-07 19:52:38 +08:00
vis2k
396fc4542b
ClientScene: move the rest to NetworkClient
2021-03-07 19:52:23 +08:00
vis2k
477d009f97
ClientScene.DestroyAllClientObjects moved into NetworkClient
2021-03-07 19:28:25 +08:00
vis2k
27ac635931
ClientScene: spawning moved into NetworkClient
2021-03-07 19:28:02 +08:00
vis2k
03f6ae59d3
ClientScene: internal Shutdown moved to NetworkClient
2021-03-07 19:15:51 +08:00
vis2k
ab1218fe17
ClientScene: internal hide & destroy moved into NetworkClient
2021-03-07 19:08:01 +08:00
vis2k
ae50ec751e
ClientScene: internal callbacks moved to NetworkClient
2021-03-07 19:04:31 +08:00
vis2k
5650d952c8
remove obsolete comment
2021-03-07 18:59:59 +08:00
vis2k
12ac3613ad
moved comment
2021-03-07 18:58:40 +08:00
vis2k
f20d30d4bb
ClientScene: prefab spawning and spawn handlers obsoleted and moved to NetworkClient
2021-03-07 18:57:17 +08:00
vis2k
13c5a409e5
add TODO
2021-03-07 18:23:55 +08:00
vis2k
d71c6e943a
internal function doesn't need summary
2021-03-07 18:22:26 +08:00
vis2k
c20de093ec
syntax
2021-03-07 18:19:46 +08:00
vis2k
95e0545759
cleanup and sorting
2021-03-07 18:18:04 +08:00
vis2k
e7dab8bd49
cleanup
2021-03-07 18:11:52 +08:00
vis2k
ead0d351c9
cleanup
2021-03-07 18:10:51 +08:00
vis2k
82b8f650fb
cleanup
2021-03-07 18:10:11 +08:00
vis2k
980c8a8b64
syntax
2021-03-07 18:09:12 +08:00
vis2k
9abc60c62b
cleanup
2021-03-07 18:08:37 +08:00
vis2k
5a9d7921c5
cleanup
2021-03-07 18:07:43 +08:00
vis2k
f7c6eb84e8
cleanup
2021-03-07 18:06:17 +08:00
vis2k
061d1c77ba
cleanup
2021-03-07 18:04:03 +08:00
vis2k
d3e3ada5c6
cleanup
2021-03-07 16:51:33 +08:00
vis2k
8ce209ac69
cleanup
2021-03-07 16:43:59 +08:00
vis2k
f06e6f0509
cleanup
2021-03-07 16:41:27 +08:00
vis2k
3667f76703
cleanup
2021-03-07 16:37:36 +08:00
vis2k
707c20c6d6
syntax
2021-03-07 16:34:04 +08:00
vis2k
5c9962100e
more sorting
2021-03-07 16:29:53 +08:00
vis2k
200bde6852
NetworkClient sorting
2021-03-07 16:25:56 +08:00
vis2k
51f5dd52a9
cleanup
2021-03-07 16:22:50 +08:00
vis2k
7d397d9172
cleanup
2021-03-07 16:06:40 +08:00
vis2k
19d848feec
cleanup
2021-03-07 16:03:28 +08:00
vis2k
159a35dbb4
feat: NetworkClient.isConnecting added
2021-03-07 16:01:17 +08:00
vis2k
9579789da3
NetworkClient cleanup
2021-03-07 16:00:16 +08:00
vis2k
191c1124b4
NetworkServer.VerifyCanSpawn moved into SpawnObject
2021-03-07 15:42:22 +08:00
vis2k
b7e21d9a44
NetworkServer: VerifyCanSpawn moved into SpawnObject
2021-03-07 15:41:28 +08:00
vis2k
10be9eada1
more sorting
2021-03-07 15:41:02 +08:00
vis2k
0fe5d30c00
more sorting
2021-03-07 15:37:32 +08:00
vis2k
632a4a8cc2
syntax
2021-03-07 15:34:58 +08:00
vis2k
f94091b585
more sorting
2021-03-07 15:34:12 +08:00
vis2k
0cef4d78a5
more sorting
2021-03-07 15:32:36 +08:00
vis2k
f54f9c3599
DisconnectAllConnections was renamed to DisconnectAllExternalConnections because that's what it does.
2021-03-07 15:29:20 +08:00
vis2k
207501de4e
NetworkServer.InternalReplacePlayerForConnection moved into ReplacePlayerForConnection
2021-03-07 15:25:50 +08:00
vis2k
330036f1a9
more sorting
2021-03-07 15:24:11 +08:00
vis2k
e4729c2608
more sorting
2021-03-07 15:23:22 +08:00
vis2k
5a23cd056e
more sorting
2021-03-07 15:22:22 +08:00
vis2k
688ec28d5d
more sorting
2021-03-07 15:22:00 +08:00
vis2k
84f5ea61cc
more sorting
2021-03-07 15:19:33 +08:00
vis2k
2f90fca1d5
more sorting
2021-03-07 15:18:00 +08:00
vis2k
bf804a93c2
more sorting
2021-03-07 15:17:01 +08:00
vis2k
c5947b92e2
more sorting
2021-03-07 15:12:54 +08:00
vis2k
c47f64908d
NetworkServer: more sorting
2021-03-07 15:11:37 +08:00
vis2k
6dc0b42d89
NetworkServer: more sorting
2021-03-07 15:09:04 +08:00
vis2k
7daab9dd40
NetworkServer: sort similar functions together
2021-03-07 15:04:13 +08:00
vis2k
cf7de49def
cleanup
2021-03-07 14:57:04 +08:00
vis2k
93217b4493
cleanup
2021-03-07 14:55:55 +08:00
vis2k
f3b7524691
cleanup
2021-03-07 14:53:56 +08:00
vis2k
0f8b06b12b
cleanup
2021-03-07 14:51:10 +08:00
vis2k
306620d0d0
cleanup
2021-03-07 14:43:02 +08:00
vis2k
2e9ecd73bb
cleanup
2021-03-07 14:42:01 +08:00
vis2k
f1bbdd62e7
cleanup
2021-03-07 14:40:38 +08:00
vis2k
ebcaf9a256
cleanup
2021-03-07 14:39:50 +08:00
vis2k
8f5c6c7b93
cleanup
2021-03-07 14:37:59 +08:00
vis2k
a5bc753150
cleanup
2021-03-07 13:31:35 +08:00
vis2k
b2490f9c1f
cleanup
2021-03-07 13:30:14 +08:00
vis2k
85287fe642
cleanup
2021-03-07 13:28:35 +08:00
vis2k
6799868517
NetworkServer.NoConnections renamed to NoExternalConnections
2021-03-07 13:09:30 +08:00
vis2k
a744c5c5e8
cleanup
2021-03-07 13:07:17 +08:00
vis2k
382b6c67f4
cleanup
2021-03-07 13:06:26 +08:00
vis2k
2797253cc4
cleanup
2021-03-07 13:04:41 +08:00
vis2k
988bd3a51c
cleanup
2021-03-07 13:03:54 +08:00
vis2k
a2f4d82dc0
NetworkServer cleanup
2021-03-07 13:02:46 +08:00
vis2k
e9b9c3819f
NetworkServer cleanup
2021-03-07 13:01:34 +08:00
vis2k
e60d22b7e1
NetworkServer cleanup
2021-03-07 13:00:00 +08:00
vis2k
06ff30f42c
NetworkServer cleanup
2021-03-07 12:56:29 +08:00
vis2k
f31044b23d
NetworkServer clean up
2021-03-07 12:55:52 +08:00
vis2k
fdcd0b8541
NetworkServer cleanup
2021-03-07 12:44:08 +08:00
vis2k
183de927d0
NetworkServer: clean up
2021-03-07 12:42:24 +08:00
vis2k
36e04e1272
NetworkServer: remove old UNET comments, XML summary one liner
2021-03-07 12:39:58 +08:00
vis2k
7de4c07cde
NetworkIdentity.Reset: update comment
2021-03-07 11:56:55 +08:00
vis2k
9d0b3bae81
ClientScene.DestroyAllClientObjects: use same syntax as NetworkServer.CleanupNetworkIdentities
2021-03-07 11:53:07 +08:00
vis2k
6447871d8f
DestroyAllClientObjects/CleanupNetworkIdentities: add comments
2021-03-07 11:51:26 +08:00
vis2k
4d971c1e57
NetworkServer.CleanupNetworkIdentities: add comments
2021-03-07 11:41:43 +08:00
vis2k
11718d9521
NetworkIdentity.OnDestroy: add comment
2021-03-07 11:39:44 +08:00
vis2k
22f1754ff8
xml to comment
2021-03-07 11:38:55 +08:00
Pandanym
921a7a2fde
feat: Added bool to Discovery to disable automatic active discovery ( #2580 )
...
* Use a negative value for ActiveDiscoveryInterval to disable automatic broadcasting
If you want to extend NetworkDiscoveryBase using the templates, you may hit this problem where you want to disable the automatic discovery. But you can't without modifying the base class. This is a proposition that is not breaking for users of the NetworkDiscovery.
* Added a bool to NetworkDiscoveryBase to toggle ActiveDiscovery
* Added tooltip and made enableActiveDiscovery field public
2021-03-06 21:43:40 +08:00
vis2k
a6f6f80f65
fix: NetworkIdentity.isLocalPlayer is only set, but never reset. fixes a bug where isLocalPlayer would be false in OnDestroy, so some components couldn't rely on it in OnDestroy. fixes #2615 (this is also faster than comparing ClientScene.localPlayer each time) ( #2616 )
...
* fix: NetworkIdentity.isLocalPlayer is only set, but never reset. fixes a bug where isLocalPlayer would be false in OnDestroy, so some components couldn't rely on it in OnDestroy. fixes #2615 (this is also faster than comparing ClientScene.localPlayer each time)
* fix: NetworkIdentity.OnStartClient now sets isLocalPlayer early so isLocalPlayer is true in OnStartClient callbacks already
2021-03-06 19:30:16 +08:00
vis2k
1fb8990f39
breaking: remove onLocalPlayerChanged over engineering. it was added in #1920 for #1923 which was never merged. keep it simple.
2021-03-06 18:57:58 +08:00
vis2k
2d421df9c7
comment formatting
2021-03-06 18:39:38 +08:00
vis2k
89ea278036
NetworkIdentity.isClient: add comment on how it's expected to behave
2021-03-06 18:30:16 +08:00
vis2k
ee1f941290
fix: NetworkIdentity.isServer is only set, but never reset. fixes a bug where isServer would be false in OnDestroy, so some components couldn't rely on it in OnDestroy. fixes #2533
2021-03-06 18:29:25 +08:00
vis2k
b0cae3c049
comment
2021-03-06 18:09:15 +08:00
vis2k
7e00056d97
comments
2021-03-06 18:07:40 +08:00
vis2k
e7f6a3ea81
comments
2021-03-06 18:06:50 +08:00
vis2k
e4f9b2f94d
NetworkIdentity.isServer: make comments readable
2021-03-06 18:04:38 +08:00
vis2k
0e0456809b
NetworkIdentity.isClient: make comments readable
2021-03-06 18:02:50 +08:00
vis2k
63f96a9c4d
add comment
2021-03-06 14:31:18 +08:00
vis2k
faa8f65e42
add TODO (remove SendToReady)
2021-03-06 14:31:16 +08:00
vis2k
064d30614d
[Obsolete] SendToClientOfPlayer so we can remove it later. unnecessary complexity.
...
(it was previously used in NetworkServer.Update, but now we refactored it)
2021-03-06 14:31:13 +08:00
vis2k
b0b89d489d
add TODO
2021-03-06 14:31:11 +08:00
vis2k
aa357dc58b
perf: NetworkServer.Update: separate connections update loop moved into the main loop. now there is only one connections loop anymore.
2021-03-06 14:31:07 +08:00
vis2k
5775a36e49
perf: NetworkServer.Update: inactive connection check moved into the main connections foreach loop. Avoids one extra foreach-connections loop.
2021-03-06 14:31:04 +08:00
vis2k
7f0984548c
syntax: NetworkServer.Update 'conn' renamed to 'connection
2021-03-06 14:31:01 +08:00
vis2k
6b83411593
syntax: CheckForInactiveConnections moved above NetworkServer.Update
2021-03-06 14:30:58 +08:00
vis2k
6cedb5b404
perf: push->pull broadcasting part 1: feature parity
2021-03-06 14:30:55 +08:00
vis2k
57d4db2e8d
Compression: largest three compression from DOTSNET with safe normalized quaternions in case clients send invalid data ( #2584 )
2021-03-06 14:30:51 +08:00
vis2k
9232dab3a0
add preprocessordefine
2021-03-06 14:23:00 +08:00
vis2k
25ece5a0d5
fix: NetworkManager.StopServer/StopClient: avoid NullReferenceException when called in OnApplicationQuit or from tests
2021-03-06 14:22:56 +08:00
vis2k
425e3131dc
fix: NetworkServer.SpawnObserversForConnection refactored to support all visibility cases (ForceShown/ForceHidden/Default) and all systems (legacy/new/default). fixes #2606
2021-03-06 14:22:52 +08:00
vis2k
a277f5c7b7
NetworkClientTests: UpdateTransport: restore original order before we changed it in 'MemoryTransport use new EarlyUpdate' commit
2021-03-04 19:09:34 +08:00
vis2k
7641aa73d4
Websockets: use new EarlyUpdate to remove warnings
2021-03-04 17:40:23 +08:00
vis2k
7e41302ca9
Telepathy: use new EarlyUpdate to remove warnings
2021-03-04 17:37:50 +08:00
vis2k
371ddc457a
MemoryTransport uses new EarlyUpdate functions to remove warning
2021-03-04 17:26:52 +08:00
Raguel
c94cbe2811
Hot fix for scene rename ( #2614 )
...
Co-authored-by: Alice Loverdrive <al.zhumagali@gmail.com>
2021-03-04 17:12:09 +08:00
Robin Rolf
978a3deb7f
Add scripting define for update loop changes ( #2613 )
2021-03-04 17:10:48 +08:00
vis2k
96750d80d5
use icons
2021-03-03 14:30:28 +08:00
vis2k
4f58366e0f
perf: kcp Tick split into TickIncoming/Outgoing to utilize the new NetworkEarly/LateUpdate functions. minimizes latency. ( #2608 )
2021-03-02 19:18:18 +08:00
vis2k
5ba677118e
kcp2k V1.9: Tick() split into TickIncoming()/TickOutgoing() to use in Mirror's new update
...
functions.
2021-03-02 18:43:11 +08:00
vis2k
b882653768
syntax
2021-03-02 15:57:30 +08:00
vis2k
b663636a5b
perf: Transport.Client/Server Early/LateUpdate to fix data races and allow transports to reduce latency by doing all receiving & sending in one frame. ( #2605 )
...
* fix: NetworkClient/Server: use the new custom NetworkLateUpdate instead of Unity's LateUpdate. fixes possible data races where other component's LateUpdate could be called before/after NetworkServer/Client LateUpdate causing non obvious data races.
* perf: Transport.Client/Server Early/LateUpdate to fix data races and allow transports to reduce latency by doing all receiving & sending in one frame.
2021-03-02 15:28:50 +08:00
vis2k
43e6fb4c53
fix: NetworkClient/Server: use the new custom NetworkLateUpdate instead of Unity's LateUpdate. fixes possible data races where other component's LateUpdate could be called before/after NetworkServer/Client LateUpdate causing non obvious data races. ( #2604 )
2021-03-02 15:28:30 +08:00
vis2k
edea4089e4
perf: avoid NetworkIdentity.visibility access allocations from obsolete messages when accessing .visibilityCache
2021-03-01 19:08:59 +08:00
vis2k
a2b828a511
syntax
2021-03-01 18:41:29 +08:00
vis2k
4fedf417b1
feature: add custom NetworkEarlyUpdate (before any Update/FixedUpdate), NetworkLateUpdate (after any Update/FixedUpdate/LateUpdate) loops ( #2603 )
...
* NetworkLooper helper class with explanation
* AddSystemToPlayerLoopList from ECS and tests
* rename to Append
* change function type to UpdateFunction, actually add it
* better
* use Array.Resize
* syntax
* better logging
* addmode
* better
* FindPlayerLoopEntryIndex helper to verify
* better
* disable logs
* syntax
* test for PreLateUpdate
* add at runtime
* better log
* NetworkServer/Client.Update renamed to LateUpdate to make it more obvious
* NetworkLoops call NetworkServer/Client funcs
* logs
* Unity 2019 ifdef
* disable logs
* add comment
* obsoletes
* syntax
* change
* internal
2021-03-01 17:51:42 +08:00
vis2k
5809c50c2c
NetworkPingDisplay simplified ( #2602 )
2021-03-01 14:28:46 +08:00
vis2k
a67fd9084b
RegisterPrefab with assetId: add comment
2021-02-25 15:10:27 +08:00
vis2k
8854844a7f
dontListen: add comment
2021-02-25 09:57:48 +08:00
vis2k
8d3f33081b
NetworkServer: obsolete redundant RegisterHandler version without connection parameter ( #2594 )
2021-02-25 09:56:02 +08:00
vis2k
1f0d9e73e1
NetworkManagerHUD.showGUI obsoleted ( #2596 )
2021-02-25 09:55:14 +08:00
vis2k
62b99ed9a7
breaking: ClientScene.spawnableObjects doesn't need to be public ( #2597 )
2021-02-25 09:54:49 +08:00
vis2k
2d188080ec
syntax
2021-02-24 18:08:35 +08:00
vis2k
ac5f978b22
syntax
2021-02-24 18:08:00 +08:00
vis2k
d202024d1f
syntax
2021-02-24 18:07:39 +08:00
vis2k
290811e043
syntax
2021-02-24 18:07:03 +08:00
vis2k
dd53593255
syntax
2021-02-24 17:55:33 +08:00
vis2k
49cf2569f0
Utils.IsPrefab and reuse it everywhere else
2021-02-24 17:51:25 +08:00
vis2k
2367959f54
syntax
2021-02-24 17:42:37 +08:00
vis2k
d8c1924cf8
NetworkIdentity: GetRandomUInt moved to Utils
2021-02-24 17:42:14 +08:00
vis2k
a030caad0d
UNetwork.cs renamed to Utils.cs
2021-02-24 17:37:40 +08:00
vis2k
eff035a604
syntax
2021-02-24 17:35:38 +08:00
vis2k
c417d50e1c
syntax
2021-02-24 17:35:17 +08:00
vis2k
598f9e78c1
syntax
2021-02-24 17:34:38 +08:00
vis2k
aaf4b19539
SyncSet: add comments
2021-02-24 17:33:49 +08:00
vis2k
e80ec86577
NetworkServer.DestroyObject(GameObject) helper function to reuse in UnSpawn and Destroy
2021-02-24 16:52:32 +08:00
vis2k
820070cf60
syntax: NetworkServer.CreateSpawnMessagePayload moved above CreateSpawnMessage so it's more obvious
2021-02-24 16:49:29 +08:00
vis2k
4f69dd6d7b
syntax
2021-02-24 16:48:46 +08:00
vis2k
a2f374f117
syntax: NetworkServer.Send functions 'msg' renamed to 'message'
2021-02-24 16:48:16 +08:00
vis2k
008df9cee4
syntax: NetworkManager.startPositions moved up
2021-02-24 16:46:06 +08:00
vis2k
72e8bf80c6
fix: InterestManagement added missing ready checks. x branch didn't have ready anymore, so they were missed when porting interest management to master. adding them guarantees exact same behaviour as before.
2021-02-24 12:50:36 +08:00
vis2k
2ef51d03f7
fix : #2595 InterestManagement AddAllAuthenticatedConnectionsToObservers fat fingered from x branch which didn't have 'ready' anymore. it should be AddAllReadyServerConnectionsToObservers like before, no change in the logic.
2021-02-24 12:44:21 +08:00
MrGadget1024
f3813c41cc
fix: Multiple Additive Scenes - wrong mesh and materials
2021-02-22 22:43:33 -05:00
MrGadget1024
f8cac55d79
fix: Multiple Additive Scenes - Missing mesh assignment
2021-02-22 22:26:41 -05:00
MrGadget1024
0ad623a869
Fixed typo
2021-02-22 14:08:43 -05:00
MrGadget1024
15e77507f6
NetworkRoomManager: Removed redundant code
2021-02-20 09:11:39 -05:00
MrGadget
827d31e1c8
feat: Move Network Manager out of DDOL in StopServer and StopClient ( #2582 )
...
* feat: Move Network Manager out of DDOL in StopServer and StopClient
- Moves Network Manager out of DDOL before going to offline scene to avoid collision and let a fresh Network Manager be created.
* removed spaced between braces
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-02-20 11:56:14 +08:00
MrGadget
89e5206e39
Disable Obsolete Warnings In Tests ( #2583 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-02-20 11:55:24 +08:00
vis2k
21196fc05b
fix: Telepathy V1.7 - receive timeout disabled by default; MirrorTransport now uses 30s instead of 5s timeout to avoid timing out during scene changes etc.
2021-02-20 11:53:19 +08:00
vis2k
659c035d42
disable log
2021-02-19 18:55:20 +08:00
vis2k
f3f56bd3cd
forgot to disable log
2021-02-19 16:01:55 +08:00
MrGadget
0fab6dbef3
Suppressed Flakey Tests ( #2589 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-02-18 10:15:15 -05:00
vis2k
42fe37eeeb
syntax
2021-02-18 17:21:19 +08:00
vis2k
a8db766837
NetworkServer.SendToAll/SendToObservers: remove LocalConnectionToClient check because they both use Send now
2021-02-18 17:19:48 +08:00
MrGadget1024
3896722a49
Removed old files
2021-02-18 03:25:32 -05:00
MrGadget1024
bb617d1959
Added comments to Chat Example methods
2021-02-18 03:09:38 -05:00
MrGadget1024
685366e7e1
fix: Chat Example Network Address OnValueChanged Wire-up
2021-02-18 03:03:26 -05:00
vis2k
b09d1681a0
LocalConnections.LocalConnectionBuffer replaced with System.Queue ( #2585 )
2021-02-18 14:56:46 +08:00
vis2k
73d95f9b5b
NetworkReader/WriterPool: .pool renamed to .Pool
2021-02-18 14:40:38 +08:00
vis2k
409eac092d
syntax
2021-02-18 14:39:59 +08:00
vis2k
efac1e2f5f
syntax
2021-02-18 14:39:27 +08:00
vis2k
af78b2c139
syntax
2021-02-18 14:38:42 +08:00
vis2k
6954ea478f
syntax
2021-02-18 14:37:42 +08:00
vis2k
4b4dd310b6
syntax
2021-02-18 14:34:45 +08:00
vis2k
af3c5b5e8b
ULocalConnection renamed to LocalConnection
2021-02-18 14:32:15 +08:00
vis2k
44bfe7ab11
syntax
2021-02-18 14:29:49 +08:00
vis2k
6374c4b88b
NetworkIdentity: NetworkBehaviours[] caching simplified
2021-02-18 14:28:28 +08:00
vis2k
b4fa4f2d1c
syntax
2021-02-18 14:26:22 +08:00
vis2k
dcd3005674
add comment
2021-02-18 14:26:09 +08:00
vis2k
239bc660fd
feat: NetworkIdentity.isServer/ClientOnly added. NetworkBehaviour.isServer/ClientOnly uses it.
2021-02-18 14:24:43 +08:00
vis2k
4bef7fc635
MessagePacker renamed to MessagePacking
2021-02-18 14:19:29 +08:00
vis2k
f00aa2f8d8
syntax
2021-02-18 14:17:29 +08:00
vis2k
d7adbf6f1e
syntax
2021-02-18 14:06:16 +08:00
vis2k
2ab0154333
syntax
2021-02-18 14:05:50 +08:00
vis2k
fd29828512
syntax
2021-02-18 14:05:19 +08:00
vis2k
cc68c854e7
TelepathyTransport moved into Telepathy folder for consistency with the other transports
2021-02-18 14:03:23 +08:00
vis2k
08a89e83bd
CecilX license updated: show 'x' source
2021-02-18 13:59:27 +08:00
vis2k
dade531dfe
ChatExample: remove unused code
2021-02-18 13:58:53 +08:00
vis2k
68d38832ed
NetworkScenePostProcess: use LogWarning instead of LogWarningFormat
2021-02-18 13:57:47 +08:00
vis2k
4624f34b0e
syntax
2021-02-18 13:56:33 +08:00
vis2k
d8187d4b7d
syntax
2021-02-18 13:56:33 +08:00
vis2k
d83ce37760
remove //namespace comments
2021-02-18 13:56:33 +08:00
vis2k
5fd79094fc
fix: changing any NetworkIdentity settings in the Inspector at runtime (like forceHidden) would call OnValidate, cleared the assetId because the prefab conection isn't known at runtime. As result, the NetworkIdentity couldn't be spawned on other clients anymore because assetId is empty.
2021-02-18 13:43:00 +08:00
vis2k
dd29d99be2
Revert "fix: SetupIDs() now detects if Editor is running. fixes a bug where changing any NetworkIdentity setting at runtime would clear the NetworkIdentity.assetId, causing respawn bugs where client would receive an empty assetId (forceHidden -> not forceHidden)."
...
=> this broke two of the runtime tests previously
2021-02-18 13:43:00 +08:00
MrGadget1024
ae5875203e
Removed Overrides of OnServerError / OnClientError in templates
2021-02-17 22:14:27 -05:00
vis2k
9927c827dc
disable log
2021-02-18 10:43:55 +08:00
vis2k
3db423455b
fix: GUIConsole now shows logs in editor too. instead of only showing the empty console.
2021-02-18 10:43:55 +08:00
vis2k
2631982cb3
feature: perf: Global Interest Management. NetworkVisibility components per-NetworkIdentity obsoleted and replaced by one global InterestManagement component on NetworkManager instead. Significantly easier to understand, allows for spatial hashing (~30x faster) and reduces amount of components in the worlds (for 1k objects, we avoid 1k NetworkVisibility components now). ( #2581 )
...
* feature: perf: Global Interest Management. NetworkVisibility components per-NetworkIdentity obsoleted and replaced by one global InterestManagement component on NetworkManager instead. Significantly easier to understand, allows for spatial hashing (~30x faster) and reduces amount of components in the worlds (for 1k objects, we avoid 1k NetworkVisibility components now).
* Benchmark scene uses new Spatial Hashing
* improve message
* Update Assets/Mirror/Components/InterestManagement/SpatialHashing/Grid2D.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* NetworkIdentity.forceHidden changed to enum to prepare for forceShown
* NetworkIdentity.Visibility: added ForceShown option
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2021-02-18 10:16:10 +08:00
vis2k
650231025f
Interest Management: NetworkConnection.visList renamed to observing
2021-02-16 20:38:52 +08:00
vis2k
bd4fa37cd5
use M icon in all runtime scripts
2021-02-16 20:33:17 +08:00
vis2k
798984e4de
breaking: [Command(ingoreAuthority=false)] double negative changed to [Command(requiresAuthority=true)]
2021-02-16 20:32:05 +08:00
vis2k
c4899a92ca
remove comments
2021-02-16 20:29:57 +08:00
vis2k
9cf5984ce9
breaking: [ClientRpc(excludeOwner=false)] double negative changed to [ClientRpc(includeOwner=true)]
2021-02-16 20:26:49 +08:00
vis2k
60b112079c
Welcome Message updated
2021-02-16 20:23:58 +08:00
vis2k
64eba8204f
CustomAttributes.cs renamed to Attributes.cs
2021-02-16 20:23:12 +08:00
vis2k
020f79a8d2
Weaver: worker.Append(worker.Create(Opcode)) replaced with worker.Emit(Opcode)
2021-02-16 20:17:44 +08:00
vis2k
7ba6a9ab0b
Weaver Log simplified
2021-02-16 20:16:42 +08:00
vis2k
34a1722c76
Weaver Extensions: remove comments
2021-02-16 20:16:37 +08:00
vis2k
1b5ff01c8c
Weaver Extensions: syntax
2021-02-16 20:16:34 +08:00
vis2k
2ac0b3692c
Weaver Extensions: remove comment
2021-02-16 20:16:31 +08:00
vis2k
a8eb104273
Weaver CompilationFinishedHook: syntax
2021-02-16 20:16:25 +08:00
vis2k
bb8de742ae
Weaver CompilationFinishedHook: syntax
2021-02-16 20:16:22 +08:00
vis2k
7abbd2411e
Weaver CompilationFinishedHook: remove unused fields
2021-02-16 20:16:06 +08:00
vis2k
cfc648d722
Weaver Extensions: use Linq
2021-02-16 20:11:18 +08:00
vis2k
9121a65cc8
Weaver Extensions ImplementsInterface: use Linq
2021-02-16 20:11:13 +08:00
vis2k
7bd86cef5f
syntax
2021-02-16 20:10:31 +08:00
vis2k
9438b90c0d
syntax
2021-02-16 20:09:36 +08:00
vis2k
078e3c228d
feat: GUIConsole from uMMORPG add component to scene, press F12 to see log console in builds
2021-02-16 20:07:40 +08:00
vis2k
0185539905
WeaverTypes: remove unused
2021-02-16 20:06:32 +08:00
vis2k
7e509eae4a
Weaver.ReadAllFields: remove unused field
2021-02-16 20:05:53 +08:00
vis2k
bd34f100fc
syntax: remove unnecessary 'private'
2021-02-16 20:04:19 +08:00
vis2k
d75eeb346c
NetworkMessage moved into NetworkMessage.cs
2021-02-16 20:01:22 +08:00
vis2k
deaf73cc2a
remove unused imports
2021-02-16 19:59:55 +08:00
vis2k
3296de741f
DotNetCompatibility extension moved into Extensions.cs
2021-02-16 17:48:28 +08:00
vis2k
080924193d
remove unused Weaver Helpers.DestinationFileFor
2021-02-16 17:46:59 +08:00
vis2k
daf324310d
remove unused ScriptableObjectUtility
2021-02-16 17:46:23 +08:00
vis2k
ffebaa9cc6
StringHash extensions renamed to Extensions
2021-02-16 17:40:26 +08:00
vis2k
092ce8b214
breaking: removed LogFactory
2021-02-16 17:34:57 +08:00
vis2k
4be31cac9d
fix: batching reimplemented to be testable. fixes > MTU sized messages previously flushing out empty batches because the if size check is always true for > MTU sized messages, causing it to flush previous batch even if empty, causing odd empty message behaviour on server and client.
...
(added tests too)
2021-02-14 19:29:13 +08:00
vis2k
66b64f010f
fix: kcp2k V1.8: fixes empty message sending/receiving undefined behaviour and fixes IPv6 errors on Nintendo Switch
2021-02-14 17:46:34 +08:00
Robin Rolf
4cc9f2ea6a
Add scripting define for telepathy api change ( #2573 )
2021-02-13 13:20:05 -05:00
MrGadget1024
d26b09d544
Fixed Typo
2021-02-13 13:12:01 -05:00
vis2k
631fdb80d1
breaking: remove unused ErrorMessage & handlers
2021-02-14 00:43:42 +08:00
vis2k
4c12c59f78
breaking: remove NetworkConnection.InvokeHandler now that it's not needed anymore
2021-02-14 00:43:39 +08:00
vis2k
be42976a26
fix: NetworkServer/Client don't use Connect/DisconnectMessage anymore. fixes a bug where external connects could try sending that message causing undefined behaviour ( #2577 )
2021-02-14 00:39:23 +08:00
vis2k
5aed823cc7
fix: SetupIDs() now detects if Editor is running. fixes a bug where changing any NetworkIdentity setting at runtime would clear the NetworkIdentity.assetId, causing respawn bugs where client would receive an empty assetId (forceHidden -> not forceHidden).
2021-02-12 01:04:06 +08:00
JesusLuvsYooh
60574dd1ab
Wrong /n should be \n ( #2572 )
2021-02-10 21:04:43 +08:00
vis2k
3394f755b9
fix: Telepathy V1.6. fixes data races & improves stability ( #2571 )
...
* fix: perf: Telepathy V2.0
+ fixed data races
+ no more allocations
+ improved server stability under heavy load(!)
+ added lots of tests & fixed flaky tests
* fix: perf: Telepathy V2.0 (Concurrent Pipe Version)
* fix: Telepathy V1.3 (FOR CCU TEST. DONT MERGE, NEEDS ENABLED SCENE CHANGE CHECK)
* fix: Telepathy V1.4 (FOR CCU TEST. DONT MERGE, NEEDS ENABLED SCENE CHANGE CHECK)
* fix: Telepathy V1.5. fixes data races.
* fix: Telepathy V1.6 (fixes data races and more)
2021-02-10 19:36:39 +08:00
vis2k
e98a12b499
NetworkManager.MaxConnections default increased from 4 to 100 ( #2569 )
2021-02-08 10:11:16 +08:00
MrGadget
0675518762
fixed a bunch of typos ( #2566 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-02-06 17:52:24 -05:00
MrGadget1024
7d6566c3aa
fixed typo in comment
2021-02-06 14:29:47 -05:00
James Frowen
638f761469
fix: making exception for OnDeserializeSafely more clear ( #2562 )
2021-02-07 00:48:13 +08:00
vis2k
638796a0ad
syntax
2021-02-06 14:11:29 +08:00
MrGadget
d743f79136
feat: Add ScriptTemplates to repo and package ( #2559 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-02-05 09:34:22 +08:00
vis2k
1ff4fe30b7
perf: Batching ( #2552 )
...
* perf: Batching. Batches message into Transport.GetMaxPacketSize sized chunks and sends them every batchInterval
* don't log time
* Transport.GetMaxBatchSize and kcp override it to always use MTU
* remove comment
* NetworkConnectionToClient tests
* Test: Send_BatchesUntilUpdate
* Test: Send_BatchesUntilInterval
* fix: initialize last send time with NetworkTime.time
* better comment
* fixing reset after sending batch
Need to reset both position and length
* revert the transportreceive change for localconnections.
before it didn't work because of the length bug that is fixed now.
* added test to avoid length bug in the future
* optional
* enable batching in benchmark demo for max scale
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
2021-02-03 22:47:06 +08:00
James Frowen
d870351afb
fix(SimpleWebTransport): removing unimportant error
...
ReadHelperException can be throw when connection disconnects, this is normal and should not be sent to mirror as an error.
2021-01-27 21:31:37 +00:00
vis2k
4d3eff0b7f
NetworkConnection.TransportReceive split into two functions
2021-01-26 12:15:44 +08:00
vis2k
24ec357a46
add comment
2021-01-26 11:46:43 +08:00
James Frowen
2396da8202
tests: updating HostSetup.cs
...
adding methods to spawn a pair of objects for server/client tests
2021-01-25 22:27:43 +00:00
James Frowen
3fcc7415b4
Update HostSetup.cs
...
adding virtual methods for test setup
2021-01-25 16:04:51 +00:00
vis2k
7bcf957c23
syntax
2021-01-25 23:21:41 +08:00
MrGadget1024
fdeb2b05bd
Added comments to NetworkManager::OnValidate
2021-01-23 14:34:01 -05:00
MrGadget1024
b7b1fa2146
style: Simplified NetworkManager::RegisterClientMessages
...
- Approved per Discord discussion
2021-01-22 10:18:46 -05:00
vis2k
12ee96f5d9
fix: NetworkServer.OnConnected allows for connectionIds < 0 now. some transports like kcp use hashing where connectionIds can easily be < 0, which previously was not allowed.
2021-01-21 11:07:44 +08:00
MrGadget
fb874169f7
feat: Added NetworkOwnerChecker Component ( #2388 )
...
* Added NetworkOwnerChecker component
* Simplified OnRebuildObservers
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2021-01-18 09:59:27 +08:00
MrGadget1024
872556543c
fix: NetworkManager: changed print
to logger.Log
2021-01-17 15:37:20 -05:00
MrGadget1024
b80436cc41
style: NetworkBehaviour: Moved OnStopClient below OnStartClient
2021-01-17 15:06:29 -05:00
MrGadget1024
e5eb29a6fc
fix: KcpTransport - commented out defines again
2021-01-17 13:17:02 -05:00
vis2k
92f8ad3c5c
kcp2k V1.7 version file added too
2021-01-17 20:32:04 +08:00
MrGadget1024
9bcd1a1be4
fix: Corrected NetworkRoomPlayer virtual method param name
2021-01-16 13:26:47 -05:00
Paul Pacheco
7e3b7b9e11
perf: synchronize network time over unreliable ( #2543 )
2021-01-14 23:37:25 +08:00
vis2k
1cdbcd64ba
kcp2k V1.7
...
- fix: unreliable messages reset timeout now too
- perf: KcpConnection OnCheckEnabled callback changed to a simple 'paused' boolean.
This is faster than invoking a Func<bool> every time and allows us to fix #8 more
easily later by calling .Pause/.Unpause from OnEnable/OnDisable in MirrorTransport.
- fix #8 : Unpause now resets timeout to fix a bug where Mirror would pause kcp,
change the scene which took >10s, then unpause and kcp would detect the lack of
any messages for >10s as timeout. Added test to make sure it never happens again.
- MirrorTransport: statistics logging for headless servers
- Mirror Transport: Send/Receive window size increased once more from 2048 to 4096.
2021-01-13 20:17:22 +08:00
James Frowen
365db8b55e
adding comment to CompressQuaternion
2021-01-12 18:18:31 +00:00
vis2k
ae48cf5c80
perf: kcp2k V1.6 - unreliable channel & improvements
2021-01-10 19:28:50 +08:00
MrGadget1024
8f4856c715
fix: fixed Chat example scene for 2018.4
2021-01-09 20:00:13 -05:00
MrGadget1024
e52dfeb07a
Applied Mirror Icon to MiddlewareTransport
2021-01-07 12:12:21 -05:00
vis2k
b85dea57df
fix: kcp2k updated to V1.5. bigger send/recv window size defaults because Mirror sends a lot of data. fixes a bug where some projects would encounter ever growing latencies because kcp didn't process/send data fast enough, causing slowly growing send/recv buffers. also shows MaxSend/RecvRate in debug gui now.
2021-01-08 00:00:10 +08:00
MrGadget1024
f10f6f913a
doc: Updated ReadMe
2021-01-07 09:34:33 -05:00
MrGadget1024
ca94fca82f
fixed NetworkIdentityTest
...
- removed unused var
2021-01-07 09:22:24 -05:00
MrGadget1024
b85557b8ea
Fixed NetworkWriterTest
...
- Removed unnecessary using
- Removed unused vars
- made netId a uint
2021-01-07 09:20:02 -05:00
Coburn
9393686f16
fix: NetworkWriterTest.cs failing due to Blittable removal ( #2530 )
...
This commit compliments dd4d344542
, and makes all tests in NetworkWriterTest.cs pass with flying colours. Gold star!
2021-01-05 00:44:38 +08:00
MrGadget1024
0a01edfbd5
fix: Fixed tests for OnStopClient
...
OnNetworkDestroy was renamed to OnStopClient in May 2020
2021-01-03 21:14:05 -05:00
MrGadget1024
ec972ca46a
Removed MonoBehaviour inheritance in Spawners
2021-01-03 13:02:09 -05:00
Coburn
dd4d344542
Revert "perf: NetworkWriter/Reader Write/ReadBlittable<T> for 4-6x performance improvement! ( #2441 )" ( #2526 )
...
This reverts commit 1947f061ad
and applies some patches to bring it back up to date without the DOTSNET feature.
2021-01-03 20:52:34 +08:00
James Frowen
eb6b7e73b9
fix: adding newline before StackTrace
...
this avoids the first line of the stacktrace being on the same line as the Exception. this is better because the Exception line could be line and it is easy to miss the first stack trace line.
2020-12-31 01:58:20 +00:00
James Frowen
d22db33086
Moving FindPath to editor scripts ( #2512 )
...
* moving FindPath to editor scripts
this allows this function to be used by other scripts
* Update Assets/Mirror/Editor/EditorHelper.cs
* removing extra using
2020-12-25 16:49:14 +08:00
James Frowen
1cf5930d51
feat: Adding default folder as argument for ScriptableObjectUtility ( #2513 )
...
This allows ScriptableObjectUtility to be used for other folders not just Asset/Mirror
2020-12-24 15:29:36 +08:00
MrGadget
41480ac42f
fix: DisallowMultipleComponent on all transports ( #2507 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-12-20 10:28:58 +08:00
MrGadget1024
8ad332a64d
fixed typo in comment
2020-12-19 14:58:08 -05:00
vis2k
c72fd39f19
NetworkReader.ReadNetworkBehaviour: don't log warning if netId is not in spawned. This is common if we have a [SyncVar] NetworkBeaviour that walks out of proximity range.
2020-12-19 21:39:24 +08:00
vis2k
c7b2d1d1d3
use more obvious syntax
2020-12-19 21:38:39 +08:00
vis2k
4e30409db5
NetworkReader.ReadNetworkIdentity: don't log warning if netId is not in spawned. This is common if we have a [SyncVar] NetworkIdentity that walks out of proximity range.
2020-12-19 21:37:43 +08:00
Paul Pacheco
45a494aded
fix: prevent allocation of massive array ( #2465 )
...
* fix: prevent allocation of massive array
A poison message could contain an invalid length causing us to allocate massive arrays
* throw exception instead
* Update Assets/Mirror/Runtime/NetworkReader.cs
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
* test for ReadArray
* swapping order of equation so that length doesnt overflow
* adding test case
* adding more tests for array length
* swapping order
* fixing expected message
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
2020-12-17 12:12:26 +08:00
MrGadget
f2e78da58c
fix: Changed all fields in examples from [SerializeField] internal
to public
per Vis request. ( #2502 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-12-17 12:06:04 +08:00
MrGadget1024
2aa4c84ae5
Added meta file
2020-12-16 23:00:09 -05:00
James Frowen
50a214613f
fix(weaver): Weaver finds correct log methods for unity 2020.2 ( #2497 )
...
Unity has added new private LogWarning methods in 2020.2 which causes weaver to find the wrong method. Checking the parameters as we as the name will find the correct method.
fixes: https://github.com/vis2k/Mirror/issues/2366
2020-12-17 11:43:37 +08:00
Antoine Place
613851ff3c
Added an example featuring multiple match on a single server using the Match Checker component. ( #2499 )
...
Co-authored-by: Antoine Place <antoine.place@youkado.com>
2020-12-17 11:42:06 +08:00
MrGadget1024
8fcb7719e2
fix: Updated Basic example to work in Unity 2018.4
2020-12-16 15:05:58 -05:00
MrGadget
58aeb622ba
Make IDisposable classes sealed ( #2495 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-12-14 11:12:03 +08:00
James Frowen
e7e36d0558
feat(SimpleWebTransport): adding option to allow for tls outside of the transport
2020-12-12 14:53:23 +00:00
MrGadget1024
2f24d9aa2b
fix: Added OnStopServer to NetworkMatchChecker
2020-12-10 14:50:49 -05:00
MrGadget1024
36814e6abb
fix: Removed debug logging from NeworkSceneChecker
...
They were added for testing OnStop Server and forgot to take them out.
2020-12-10 14:49:41 -05:00
MrGadget1024
484b80f0bb
fix: Added OnStopServer to NetworkSceneChecker
2020-12-10 14:44:25 -05:00
Tiago Martines
6f8a289384
Disable KCP console logging when debugLog flag is off ( #2488 )
...
* Disable KCP console logging when debugLog flag is off
* Update KcpTransport.cs
* Update KcpTransport.cs
Co-authored-by: Tiago Martines <tiago.martines@wildlifestudios.com>
Co-authored-by: vis2k <info@noobtuts.com>
2020-12-09 14:29:38 +08:00
James Frowen
c3e2a26378
feat: allow types that inherit from Networkbehaviour to be used in syncvar's ( #2471 )
...
* adding MakeGeneric method
* adding tests for NB syncvar+hook
* adding functions to NetworkBehaviour
* getting references to new functions
* fixing NB read so it always reads same number of bytes as write
* adding backing field and serialize for Nb Syncvar
* extra test
* adding ignore to transform test
* fixing test
2020-12-09 10:53:26 +08:00
James Frowen
99f7e9112d
perf(NetworkTransform): removing allocations from Command ( #2491 )
...
`byte[] payload` will cause a new array to be created when parameters are read, using `ArraySegment<byte>` avoids this.
2020-12-08 16:01:39 +08:00
MrGadget1024
53694e3be3
fix: NetworkRoomManager.ReadyStatusChanged made public
2020-12-06 18:36:00 -05:00
James Frowen
2b91a3049b
Sorting usings ( #2487 )
...
Seems like this has come up a few times so here is a commit to sort this out.
We shouldn't have to worry about the order of the using, we should just let plugins automatically sort them. They are sorted into alphabetical order expect for system becase we have `dotnet_sort_system_directives_first = true` enabled in `.editorconfig`
2020-12-05 10:51:02 +08:00
James Frowen
a51ee1fa3b
fix: stopping values being reset before OnDestory is called ( #2485 )
...
* fix: stopping values being reset before OnDestory is called
* matches server side logic
* if an object is being fully destroyed it doesn't need its values to be reset
2020-12-03 15:50:52 +00:00
James Frowen
4acf0d69e0
feat: Allow Networkbehaviours to be sent in rpc ( #2478 )
...
* adding read/write functions
* adding method to get WriteNetworkBehaviour
* adding methods to weavertypes
* adding method to get ReadNetworkBehaviour
* weaver test for NetworkBehaviour in RPC
* renaming var
* writing tests to make sure read/write works
* registering functions
* changing function and adding comment
* checking any writer is set
* adding Description to test
* collection test
* fixing call
* removing errors, networkbehaviour as read/write
* adding test to use the reader that weaver generates
* fixing import
* simplifying test
* removing null from spawned
* improving throw
* adding code coverage
* applying code suggestions
2020-12-02 09:40:38 +08:00
James Frowen
798a4cab33
breaking: Unity LLAPI transport meets the recycle bin. ( #2484 )
2020-12-02 01:35:53 +00:00
James Frowen
adabbdc552
using TypeReference with comparer instead of string ( #2481 )
...
* Using TypeReference with IEqualityComparer instead of string to keep reference to type
* using targetType to initialize write/read functions
* test to make sure write function is set
2020-12-01 00:32:10 +00:00
James Frowen
05f6690484
weaver: moving IsNetworkIdentityField to extensions ( #2476 )
...
* weaver: moving IsNetworkIdentityField to extensions
* making extension use TypeReference
2020-11-29 21:51:19 -06:00
James Frowen
3bc58a851a
weaver: making GenerateWriter return MethodReference ( #2479 )
2020-11-30 03:05:57 +00:00
James Frowen
f9baa3f9da
making IsDerivedFrom use TypeReference ( #2475 )
2020-11-29 20:02:46 -06:00
MrGadget1024
58d6db72ad
fix: NetworkRoomManager and NetworkRoomPlayer public fields
...
Made fields public again for inheritance.
2020-11-29 01:52:26 -05:00
MrGadget1024
b3e7aa9d95
fix: NetworkBehaviour throwing error in logger
...
```
UnityException: ToString is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call it in Awake or Start instead. Called from MonoBehaviour 'GamePlay' on game object 'GamePlay'.
See "Script Serialization" page in the Unity Manual for further details.
UnityEngine.Object.ToString () (at <a979f18d51af41179d12b797e8c5be14>:0)
UnityEngine.Logger.GetString (System.Object message) (at <a979f18d51af41179d12b797e8c5be14>:0)
UnityEngine.Logger.LogError (System.String tag, System.Object message) (at <a979f18d51af41179d12b797e8c5be14>:0)
Mirror.NetworkBehaviour.InitSyncObject (Mirror.SyncObject syncObject) (at Assets/System/3rdParty/Mirror/Runtime/NetworkBehaviour.cs:168)
myGame.GamePlay..ctor () (at Assets/System/GamePlay.cs:18)
```
2020-11-28 23:03:36 -05:00
MrGadget1024
bcd1c6fbab
renamed rb to non-abbreviated name
2020-11-28 22:53:57 -05:00
MrGadget1024
930d0cbbfd
Tanks Example Improvements
...
- made fields private with SerializeField
2020-11-28 19:55:11 -05:00
MrGadget1024
8efd45c0d2
Room Example Improvements
...
- made fields private / internal with SerializeField
- CapsuleCollider is always on
2020-11-28 19:51:01 -05:00
MrGadget1024
12231c3be7
Pong Example Improvements
...
- made fields private with SerializeField
2020-11-28 19:26:20 -05:00
MrGadget1024
6823fb9d2e
Multiple Additive Scenes Example Improvements
...
- made fields private / internal with SerializeField
- simplified Spawner to use prefab directly from MultiSceneNetManager
2020-11-28 19:12:57 -05:00
MrGadget1024
982b268b87
Additive Scenes Example Improvements
...
- Player Collider is always on
- made fields private with SerializeField
2020-11-28 18:53:14 -05:00
MrGadget1024
d6cfd2eadf
perf: Improvements to RigidbodyPhysics Example
...
- consolidate nested if
- set kinematic by default on scene objects
- set kinematic false on server in AddForce::Start
- added field for Rigidbody component reference via inspector
- eliminated calling GetComponent every frame
- set SyncInverval to zero on both NetworkTransforms and NetworkRigidbody
2020-11-28 18:14:13 -05:00
MrGadget1024
d0ee88150f
Removed AsmDef from RigidBodyPhysics example
2020-11-28 18:03:13 -05:00
MrGadget1024
c6f0554bd8
Removed Obsolete from TelepathyTransport
2020-11-28 17:30:33 -05:00
MrGadget1024
090b83e583
Chat Example: made field private with SerializeField
2020-11-28 17:29:38 -05:00
MrGadget1024
f735ad2f6b
Chat Example: made field private with SerializeField
2020-11-28 15:45:02 -05:00
MrGadget1024
1339ab7065
fix: Fixed broken reference in Chat example scene
2020-11-28 15:44:27 -05:00
MrGadget1024
6027b8056d
Basic Example: Made fields internal with SerializeField
2020-11-28 15:43:02 -05:00
MrGadget1024
0856bc008a
perf: Applied Channels.DefaultUnreliable to Experimental Network Transform
2020-11-28 10:20:24 -05:00
MrGadget1024
1616f57db0
perf: Added Compress / Decompress Quaternion to Experimental Network Transform
2020-11-28 10:16:01 -05:00
vis2k
fde07decfc
perf: NetworkTransform compresses rotation from 16 to 4 bytes. ( #2469 )
...
1024 entities => 4KB instead of 16KB
2020-11-28 12:12:17 +08:00
vis2k
3d5c942d85
fix: kcp2k V1.4. fixes a bug where KcpConnection message processing can now be stopped immediately when transport was disabled after scene change message; MirrorTransport uses turbo mode by default now
2020-11-27 18:28:10 +08:00
vis2k
cca5c12f4d
remove unused import
2020-11-27 17:34:09 +08:00
vis2k
5e4a86e3aa
perf: Kcp: use 'turbo mode' configuration in all examples( https://github.com/skywind3000/kcp/blob/master/README.en.md#protocol-configuration )
2020-11-27 17:09:59 +08:00
vis2k
cbcace8dfe
fix: NetworkScenePostProcess now stops editor for invalid sceneIds ( #2468 )
...
Better than launching with sceneId errors, which never works.
2020-11-27 15:55:49 +08:00
vis2k
b96d0d2284
fix: NetworkScenePostProcess gives proper error message if currently in prefab edit mode. ( #2467 )
...
Previously it would give 'a scene needs to be resaved', which is confusing.
2020-11-27 15:54:25 +08:00
vis2k
4ea25feee7
Syntax
2020-11-27 12:53:02 +08:00
MrGadget1024
01d5358145
Rephrased comment
2020-11-26 19:57:56 -05:00
MrGadget1024
ee24eae3f6
feat: NetworkServer.maxConnections is now public
...
Fixes #2448
2020-11-25 22:52:48 -05:00
MrGadget
fa9aa67cc6
feat: Updated Basic Example ( #2461 )
...
* Changed oldColor to underscore in hook in RandomColor
* WIP
* feat: Updated Basic Example
- PlayerUI is now separated from player object
- PlayerUI is event driven from the Player object
- PlayerUI is locally instantiated, instead of networked
- added border to players panel
* fixed code smells
* moved playersList to BasicNetManager
* fixed compile error and improved layout
* fixed tooltips
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-11-25 22:39:31 -05:00
James Frowen
b14fa87f1a
docs: adding explanation for Compression for ScaleToUInt parameters
2020-11-25 23:41:48 +00:00
vis2k
31c3c2f924
Telepathy: Common.ReadMessageBlocking: log warning instead of logging OverflowException if size header is negative
2020-11-25 21:51:43 +08:00
James Frowen
ff6ced11aa
docs: fixing cref ( #2463 )
2020-11-24 21:25:54 +00:00
MrGadget1024
fb8c3c4736
fix: broken links to documentation
2020-11-23 10:59:11 -05:00
MrGadget1024
e0fb14feea
Changed oldColor to underscore in hook in RandomColor
2020-11-22 21:49:01 -05:00
James Frowen
c84b317a7b
Calling Register from RegisterWriteFunc and adding comments ( #2451 )
...
Having near identical lines in these functions is confusing at first glace. Having RegisterWriteFunc call Register makes it more clear exactly what is going on
2020-11-23 10:35:16 +08:00
James Frowen
800a3d934b
docs(NetworkWriter): doc comments for WriteBlittable (with benchmark) ( #2459 )
...
* docs(NetworkWriter): doc comments for WriteBlittable
* Update Assets/Mirror/Runtime/NetworkWriter.cs
2020-11-23 10:32:19 +08:00
James Frowen
96a03a3d59
docs(NetworkReader): doc comments ( #2460 )
...
* formatting
* moving comment about buffer next to buffer
* moving comment to doc comment
* doc comment position
* doc comments for Length
* doc comments for ReadBlittable
* doc comments for ReadBytes
* doc comments for ReadBytesSegment
* doc comments for ToString
* doc comments for NetworkReaderExtensions
* comments for ReadString
* exception comments for read bytes/segement
* fixing comment
2020-11-23 10:31:50 +08:00
MrGadget
3a5da1d256
feat: Add OnStopServer / OnStopClient methods to Network Authenticator ( #2447 )
...
* feat: Add OnStopServer / OnStopClient methods to Network Authenticator
* Added calls to Network Manager
* Added OnStopServer / OnStopClient overrides to Authenticators
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-11-22 10:44:56 +08:00
James Frowen
301e791d9d
fix(weaver): Warning for multiple write/read functions for the same type ( #2453 )
...
* fix(weaver): Warning for multiple write/read functions for the same type
Adding warning message when trying to register a write or read function for a type that is already in dictionary. Previously weaver would be silent about this making it hard to know when an extension method overrides another one.
* test for warnings
2020-11-22 10:42:53 +08:00
James Frowen
fd9a7b0561
docs(NetworkWriter): doc comments ( #2455 )
...
* style for writer<T>
* adding doc comments to function that miss it
2020-11-22 10:40:06 +08:00
James Frowen
c8e4333d4e
docs(Transport): adding rules to remarks on transport ( #2450 )
...
* adding rules to remarks on transport
* adding default channel rule
2020-11-21 17:10:09 +00:00
James Frowen
2bd6675d19
Checking buffer length is atleast 2 ( #2433 )
...
* checking buffer length is atleast 2
disconnect if invalid message
* using const instead of magic number
Adding test to make sure that writing id is the same size as IdSize
* adding comment
* renaming to HeaderSize
2020-11-21 11:41:35 +08:00
vis2k
995fd06a77
ignore warning in tests
2020-11-20 23:50:36 +08:00
James Frowen
d3d3113f7b
perf(transport): BREAKING: callbacks instead of unityevent for transports ( #2417 )
...
* delegate and callbacks instead of unityevent
* using callbacks in Mirror
* Using new callbacks instead of events
* moving methods next to each other in NetworkClient
* moving add/remove to methods in NetworkServer
* replacing uses of events within transports and tests
* fixing tests
* fixing more tests
* replacing delegates with actions
* adding comments to show what action variable's are
* removing extra function created in rebase
* renaming callbacks
* adding reset methods so that actions arn't null
* fixing rename
* breaking defines
* Update Assets/Mirror/Runtime/Transport/KCP/MirrorTransport/KcpTransport.cs
* Update KcpTransport.cs
* Update Transport.cs
* removing ResetHandlers methods
transports can now call events after stop is called
Co-authored-by: vis2k <info@noobtuts.com>
2020-11-20 23:47:56 +08:00
MrGadget1024
347a376dad
fix: Fixed PlayerScore Display in MultipleAdditiveScenes Example
2020-11-19 23:58:14 -05:00
MrGadget1024
72ae5cb7a7
fix: Fixed issues in MultipleAdditiveScenes example
...
- Fixed NRE when no host player in PlayerScore
- Fixed player collisions by making the collider always on
2020-11-19 22:24:16 -05:00
MrGadget1024
43cea98ef9
Fixed typos
2020-11-18 11:28:01 -05:00
vis2k
1947f061ad
perf: NetworkWriter/Reader Write/ReadBlittable<T> for 4-6x performance improvement! ( #2441 )
...
* Mirror asmdef: allow unsafe
* perf: NetworkWriter.WriteBlittable<T> for 4-6x performance improvement
* perf: NetworkReader.ReadBlittable<T>
* Remove unused conversion structs
* Add sizeof(T) vs Marshal.SizeOf<T> comments
* Add 'BlittableOnThisPlatform' test to be sure
2020-11-18 10:46:45 +08:00
James Frowen
cebc578abb
moving transport handler code to functions ( #2444 )
...
this matches Networkclient
2020-11-17 14:46:37 +00:00
James Frowen
72fa903125
Refactor add transport handlers 2 ( #2443 )
...
* moving add/remove methods next to each other
* renaming methods for clarity
2020-11-17 08:37:55 -06:00
James Frowen
c95f7d4da9
moving add/remove methods next to each other ( #2442 )
2020-11-17 08:36:21 -06:00
James Frowen
793d3478fc
perf: Increase write performance ( https://github.com/MirrorNetworking/SimpleWebTransport/pull/25 )
...
* adding options to increase performance of send loop
adding config to Transport
* removing extra comments
* changing default value of sleep to false
2020-11-17 14:25:18 +00:00
vis2k
1ca61547ea
Performance Tests: create big enough writer to measure without runtime resizes
2020-11-17 20:59:40 +08:00
vis2k
968c2e86ec
Syntax
2020-11-17 20:48:05 +08:00
vis2k
54e680f61c
Performance Tests: simplify WriteInt so it truly only measures WriteInt
2020-11-17 20:47:49 +08:00
vis2k
eaf1df2dc1
better
2020-11-17 20:46:37 +08:00
vis2k
f577864877
Performance Tests: add WriteQuaternion to test a more complex type
2020-11-17 20:46:37 +08:00
James Frowen
7bb312bdb8
adding try/catch to handler so server doesn't crash from user exceptions ( #2435 )
...
* adding try/catch to hanlder
user code can throw errors.
* Update Assets/Mirror/Runtime/MessagePacker.cs
* Update Assets/Mirror/Runtime/MessagePacker.cs
* test for command that throws
* disconnecting client after Exception in message handler
Co-authored-by: vis2k <info@noobtuts.com>
2020-11-17 15:51:29 +08:00
vis2k
2a5af1af20
kcp2k V1.3
2020-11-17 15:41:37 +08:00
James Frowen
54869c9ba2
finding handler inside TransportReceive so we dont need to check true/false ( #2439 )
2020-11-16 16:09:32 +00:00
James Frowen
e12621cbd1
moving log inside handler so it has message name ( #2438 )
2020-11-16 12:40:50 +08:00
James Frowen
46e60c6564
renaming reader ( #2437 )
...
less verbose name
2020-11-16 12:40:17 +08:00
James Frowen
38907e63d9
fixing typo ( #2434 )
2020-11-15 20:40:45 +00:00
vis2k
fcd1394061
MessagePacker.UnpackMessage renamed to Unpack for consistency with Pack and because the class is already named MessagePacker anyway ( #2430 )
2020-11-16 02:42:01 +08:00
vis2k
14ae0d094d
MessageHandler.MessageHandler renamed to WrapHandler because that's what it does. ( #2431 )
2020-11-16 01:48:33 +08:00
vis2k
1e9a3b03de
add comment
2020-11-16 00:43:48 +08:00
vis2k
ca29bcebe5
MessagePacker.Unpack<T> moved to MessagePackerTests because it's only used for tests
2020-11-15 16:41:38 +08:00
vis2k
cf9025bff7
Synta
2020-11-15 16:41:38 +08:00
James Frowen
3727e36b74
weaver removing unneeded ImportReference ( #2429 )
2020-11-14 23:55:44 +00:00
MrGadget1024
b14daba289
Removed Telepathy from example that I added by accident
2020-11-14 15:43:14 -05:00
James Frowen
417818d4d6
weaver import typeRefernce when generating readers ( #2427 )
...
Importing typeRefernce once before we generate reader
2020-11-14 12:50:21 -06:00
MrGadget1024
2e2fecb20a
Minor code cleanup in PlayerControllers
2020-11-14 11:48:28 -05:00
James Frowen
f7b0b88247
removing invalid cref
2020-11-14 16:28:32 +00:00
Paul Pacheco
037ac55937
fix: using mathematics in commands and rpcs ( #2425 )
...
Generating readers and writers for structs in other assemblies
could sometimes cause a
```
System.ArgumentException: Member 'xxx' is declared in another module and needs to be imported
```
This in particular affected unity mathematics.
fixes #2406
2020-11-14 10:25:48 -06:00
Paul Pacheco
59ed64f9d0
feat: Provide user friendly error with undefined reader/writer ( #2423 )
...
Previously this just gave NRE, which does not help the user address the problem.
provides a better error for #2411
2020-11-14 08:46:53 -06:00
MrGadget1024
d5e162c0d0
Removed Server Only scene object from MultipleAdditiveScenes example
2020-11-14 02:26:19 -05:00
MrGadget1024
7ea55ce935
Added server checks to ZoneHandler
2020-11-14 01:00:06 -05:00
MrGadget1024
e9286b8259
Added server checks to Spawner
2020-11-14 00:58:42 -05:00
MrGadget1024
263b88d24d
Removed Server Only Scene Object from Room Example
...
Spawner now has static property and methods and doesn't need to be on any networked object.
2020-11-14 00:03:19 -05:00
MrGadget1024
474b2ddf06
Removed Server Only Scene Object from Additive Scenes Example
2020-11-13 23:01:30 -05:00
vis2k
218492a921
NetworkServerTests: UpdateDetectsNullEntryInSpawned
2020-11-13 20:13:35 +01:00
vis2k
b957ab7818
better name
2020-11-13 20:10:45 +01:00
vis2k
d21d501bd0
NetworkServerTests: UpdateWithNullEntryInSpawned
2020-11-13 20:05:41 +01:00
vis2k
0f96e8ce6b
Pool<T>; NetworkReader/WriterPools simplified by using Pool<T> ( #2414 )
...
* Pool & Tests
* NetworkWriterPool simplified: uses Pool<T>
* NetworkReaderPool simplified: uses Pool<T>
2020-11-13 19:22:03 +01:00
JesusLuvsYooh
3e21f76d4a
Round trip time bool and tooltip. ( #2419 )
...
* Round trip time bool and tooltip.
I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.
* Round trip time bool and tooltip.
I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.
* Round trip time bool and tooltip.
I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.
* Round trip time bool and tooltip.
I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.
2020-11-12 17:02:57 +01:00
MrGadget1024
35b61749d1
Updated PreprocessorDefine & ProjectSettings version to 28
...
This should have been done with PR #2413
2020-11-11 08:53:43 -05:00
vis2k
9c6c5d760c
breaking: Force networkmessage as struct everywhere. Redundant MessagePacker.GetId(type) not needed anymore ( #2413 )
...
* breaking: Force NetworkMessage as struct everywhere
* Redundant GetId(type) is not needed anymore
2020-11-11 09:48:03 +01:00
James Frowen
6d4aeaf3e3
fix(SimpleWebTransport): Error event should now correctly be called
2020-11-11 00:42:47 +00:00
MrGadget1024
581dacaaa5
Updated PreprocessorDefine & ProjectSettings version to 27
...
This should have been done in PR #2400
2020-11-10 18:26:26 -05:00
MrGadget1024
0fdf54dd34
Updated metas for Icosphere
2020-11-10 18:06:33 -05:00
MrGadget1024
2f9b423d41
Added tooltip
2020-11-10 17:48:16 -05:00
vis2k
1ecf57a2f0
Tests: remove unnecessary empty NetworkMessage serialization methods. Weaver takes care of it.
2020-11-10 10:27:35 +01:00
vis2k
2b02fa0130
kcp2k V1.2: smaller fixes, max message size increased from 1200 bytes to 145KB
2020-11-09 21:15:36 +01:00
Martin Bozek
4bb202fddc
feat: Change NetworkPingDisplay settings at runtime ( #2396 )
...
* making fields public
* adding format for text
* updating style each frame to update when it is changed
2020-11-09 18:11:13 +00:00
JesusLuvsYooh
a57c47d5f6
Adjusted KCP tooltip typo. ( #2409 )
...
Changed the default 100ms to 10ms
Double checked with Vis in Discord "tooltip is meant to say 10ms."
Already seen one screenshot of a Discord user that set this from 10 to 100, due to the typo, believing 100 was meant to be default and not 10.
2020-11-09 08:24:12 -05:00
MrGadget1024
fd8c227812
Renamed private method to correct spelling.
2020-11-08 21:36:22 -05:00
vis2k
7eaeb07642
fix: flaky Weaver tests. Read/WritePacked removed for good
2020-11-08 18:34:20 +01:00
vis2k
91d365fa13
Tests: NetworkMatchCheckerTest telepathy obsolete warning fixed. uses MemoryTransport now
2020-11-08 17:00:39 +01:00
vis2k
ab71bdbc62
breaking: Obsolete Read/WritePacked functions and use the regular ones everywhere. We are not bandwidth limited but CPU limited, so this is good. Those were overly complex and worst of all they cause non deterministic packet sizes. a player packet might spawn fine in editor, but 1 month into production it might very well hit the 1200 MTU limit if health is suddenly >241 or the Vector2Int position is somewhere else. This was insanity. ( #2400 )
...
* NetworkWriter consistency: Write(U)Ints moved to static extension methods for consistency with all the other writer functions like WriteUInt16.
This makes life easier because weaver looks for all Write(U)Int functions in the same place. Otherwise packed writes can't be removed in a later PR without breaking weaver (which is also evidence for being bad design before)
* NetworkReader consistency: removed redundant Read(U)Ints
* breaking: Obsolete Read/WritePacked functions and use the regular ones everywhere. We are not bandwidth limited but CPU limited, so this is good. Those were overly complex and worst of all they cause non deterministic packet sizes. a player packet might spawn fine in editor, but 1 month into production it might very well hit the 1200 MTU limit if health is suddenly >241 or the Vector2Int position is somewhere else. This was insanity.
2020-11-08 15:59:09 +01:00
vis2k
a857707321
Networkwriter consistency ( #2399 )
...
* NetworkWriter consistency: Write(U)Ints moved to static extension methods for consistency with all the other writer functions like WriteUInt16.
This makes life easier because weaver looks for all Write(U)Int functions in the same place. Otherwise packed writes can't be removed in a later PR without breaking weaver (which is also evidence for being bad design before)
* NetworkReader consistency: removed redundant Read(U)Ints
2020-11-07 17:49:12 +01:00
vis2k
06e2d7ceda
remove unused import
2020-11-07 14:49:04 +01:00
vis2k
1c471feffd
life is better with semicolons
2020-11-07 13:54:58 +01:00
Sulexa
4d8b02ce35
prevent multiple client or server to start ( #2398 )
...
* Return and log warning on start already started client or server
* Apply suggestions from code review, Always check for client and server active state
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
* Update Assets/Mirror/Runtime/NetworkManager.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
Co-authored-by: vis2k <info@noobtuts.com>
2020-11-07 10:13:47 +01:00
James Frowen
dbd1afe53b
fix(MiddlewareTransport): making sure MiddlewareTransport listens for inner events ( #2386 )
...
* making sure events are called
* full tests for middleware Transport
2020-11-07 02:10:44 +00:00
MrGadget1024
0bf6d91357
Reset scenes for 2018.4.28f and removed obsolete components on cameras
2020-11-04 08:59:41 -05:00
MrGadget
4e742d48a5
Adding Obsolete attribute to Telepathy Transport ( #2392 )
...
* Adding Obsolete attribute to Telepathy Transport
* doc: fixed bad link in Transports TOC
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-11-03 21:41:24 +01:00
MrGadget1024
2594aeb49f
Reset Basic Example Scene back to 2018.4 Compatibility
2020-11-02 10:44:14 -05:00
MrGadget
5b64ce425e
fix: Examples No Longer Rely On Sequential connectionId ( #2387 )
...
* NetworkRoomManager
* Basic Example
* Room Example
* MultipleAdditiveScenes Example
* Removed unused usings
* Removed redundant initializer
* Removed redundant initializer
* Renamed playerNo to playerNumber
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-11-02 15:46:01 +01:00
MrGadget1024
87412477dc
Spawn prizes as child of spawner directly in correct additive scene instance
2020-11-02 01:27:49 -05:00
MrGadget1024
3aad58a95f
Removed the +1 in MultiSceneNetManager
2020-11-01 19:12:25 -05:00
MrGadget1024
7560a4c274
Updated MultipleAdditveScenes Example
...
Added Comments
Organized methods
Renamed private Coroutines for cognitive
Improved the delayed AddPlayer
2020-11-01 15:55:40 -05:00
James Frowen
bc72810e55
fix: fixing first import of package ( #2384 )
...
* removing #if MIRROR
* removing #if MIRROR_26_0_OR_NEWER
* Update KcpTransport.cs
Co-authored-by: vis2k <info@noobtuts.com>
2020-11-01 18:50:06 +01:00
vis2k
27c034c33c
remove old meta file
2020-11-01 18:46:46 +01:00
James Frowen
6971125c7f
adding asmdef to kcp2k folder ( #2385 )
...
* adding kcp2k asmdef
marked with allowUnsafeCode
* adding reference to new kcp2k asmdef, and unmarking allowUnsafeCode
* adding public gettings for list/queue count
* Update Assets/Mirror/Runtime/Transport/KCP/MirrorTransport/KcpTransport.cs
Co-authored-by: vis2k <info@noobtuts.com>
2020-11-01 18:20:07 +01:00
James Frowen
42c8de9322
docs: fixing list header xml
2020-11-01 16:39:43 +00:00
MrGadget1024
1f3c2d26db
Added .ToString("X") to sceneId logging
2020-11-01 01:03:06 -05:00
MrGadget1024
19fcdd40d8
Added Mirror\Tests\Editor\Weaver\bin.meta
2020-11-01 00:41:39 -04:00
MrGadget1024
17413bd257
Added .ToString("X") to sceneId logging
2020-11-01 00:40:42 -04:00
MrGadget1024
0c37a4d794
Updated NetworkIdentity comments
2020-11-01 00:16:16 -04:00
MrGadget1024
f95b0c40af
Updated NetworkIdentity comments
2020-10-31 23:14:58 -04:00
James Frowen
bbb61848be
feat: Quaternion and float Compression ( #2368 )
...
Adding compression methods for Quaternion and floats. These methods can be used to decrease size of Quaternions before sending the value over the network.
ScaleToUInt method can be used to compress float from 32 bits to the range given to the method. This can be used to compress Vector3 if the bounds of the world are known and fixed before runtime.
2020-11-01 02:33:24 +00:00
James Frowen
9182b32946
feat(SimpleWebTransport): adding option to configure handshakeMaxSize
2020-11-01 02:12:16 +00:00
James Frowen
f35b7ed81e
fix: fixing sceneId when using BuildPipeline.BuildPlayer with incorrect case in path ( #2382 )
...
* fix: fixing sceneId when using BuildPipeline.BuildPlayer with incorrect case in path
BuildPipeline.BuildPlayer takes an array of strings for scene paths. Unity will find the scene with the path case insensitive but path case is case sensitive.
This change would make it so that these 2 paths have the same hash
```
Assets/Scenes/Forest.unity
Assets/Scenes/forest.unity
```
* Adding full comment for ToLower
* Update NetworkIdentity.cs
Co-authored-by: vis2k <info@noobtuts.com>
2020-10-30 18:41:32 +01:00
vis2k
0c2ad96061
feat: KCP Transport ( https://github.com/vis2k/kcp2k ) ( #2381 )
2020-10-30 13:53:13 +01:00
vis2k
88e160a5f7
Tests: NetworkManagerStopHostOnServerDisconnectTest uses MemoryTransport now
2020-10-30 13:51:25 +01:00
James Frowen
1d6b33c49b
fix(SimpleWebTransport): version 0.6.6
...
Fixes:
* fixing problem in 0.6.3
* updating transport for mirror v26
2020-10-29 22:08:18 +00:00
vis2k
f08aa636ad
add Mirror V26 preprocessor define
2020-10-29 20:18:23 +01:00
vis2k
bbec123eff
breaking: Transport.Send(connectionId) instead of List<connectionId>, and return type changed to void. The List was only there to avoid LLAPI & Telepathy allocations. It makes everything extremely complicated and it's not necessary for any of the newer transports anymore. ( #2380 )
2020-10-29 17:10:57 +01:00
James Frowen
151185e9c5
fix(NetworkAnimator): fixing trigger not applied on host
...
Triggers should now be applied on host when other clients have authority of the object
2020-10-29 15:45:00 +00:00
vis2k
78862ee989
Revert Tanks modifications. Keep it simple.
2020-10-29 13:16:41 +01:00
James Frowen
cd36ed5ae4
fixing compile error
...
2nd PR merged messed up, removing 2nd clientAuthorityBeforeTeleport
2020-10-28 13:52:49 +00:00
James Frowen
82faac5011
splitting up Update method ( #2375 )
...
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2020-10-27 22:54:56 -04:00
James Frowen
b1d99601eb
Moving variable to top of file. ( #2376 )
...
It is best practice to put variables above all methods in c#
2020-10-27 22:46:23 -04:00
James Frowen
c1e63d4078
fix(SimpleWebTransport): v0.6.3
...
* fixing error where standalone client would not correctly stop after failing to connect
* using ASCII encoding to follow RFC spec
2020-10-28 01:46:22 +00:00
MrGadget1024
cea165addb
Changed to use localSpace
2020-10-27 20:11:47 -04:00
MrGadget1024
a9efaf1ad2
Added ServerTeleport to Experimental NetworkTransform
2020-10-27 19:53:23 -04:00
MrGadget1024
c306a9d5ef
fixed typo
2020-10-27 19:52:34 -04:00
James Frowen
8e772a2077
fix(weaver): Fixing weaver not writing when assemble didn't have NetworkBehaviour ( #2373 )
...
* Making ReaderWriterProcessor return if it found custom functions (not counting ones in mirror.dll)
* Always writing generateContainerClass if modified
* processing PropertySiteProcessor if either ReaderWriterProcessor or WeaveModule are successful
* creating generateContainerClass in WeaverList constructor
* Moving new WeaverList to after WeaverTypes.SetupTargetTypes
2020-10-26 15:51:38 +01:00
James Frowen
4efd19c4ff
feat: Middleware transport ( #2362 )
...
* feat: adding MiddlewareTransport
* Allows Middleware to be created at the transport layer
* Middleware can choice which methods they want to override and which to let inner handle
* using expression bodies
2020-10-25 21:42:00 +01:00
MrGadget1024
4628685a62
fixed outdated comment
2020-10-25 15:25:34 -04:00
MrGadget1024
8c08ecf84d
Empty braces on same line
2020-10-25 13:44:07 -04:00
MrGadget
75ce277a68
Add Accept and Reject methods to Authenticator ( #2370 )
...
* Add Accept and Reject methods to Authenticator
* Tabs To Spaces
* Removed `base.`
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-10-25 12:55:29 -04:00
James Frowen
b19a8ccd12
fix(SimpleWebTransport): making sure that ReadHelper.Read reads exactly number of bytes
...
Docs say that stream.Read could return less than length. Keep reading stream untill length is reached.
2020-10-25 16:05:35 +00:00
James Frowen
414030d023
fix: making ClientAuthorityCallback an event ( #2363 )
...
* stops error prone behaviour of using = from multiple scripts
BREAKING CHANGE: `= callback` now needs to be `+= callback`
2020-10-25 17:01:53 +01:00
MrGadget
8f4ff423cb
Basic Authenticator code organization and comments ( #2369 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-10-25 09:52:16 -04:00
James Frowen
a833f5c29f
Running code clean up ( #2364 )
...
* removing un-needed using
* whitespace
* using explicit types
2020-10-24 20:24:54 +01:00
James Frowen
28fc75140c
fix: improving errors in SendTargetRPCInternal ( #2358 )
...
* fix: improving errors in SendTargetRPCInternal
* now give error when connection is null
* updating error message to accurately explain what went wrong
2020-10-24 20:18:59 +01:00
MrGadget
77c844184e
Remove Obsoletes ( #2361 )
...
BREAKING CHANGE: Removed Obsolete Methods and Tests
2020-10-24 11:36:44 -05:00
MrGadget1024
60bc1555a5
Added Deprecated date to SyncList
2020-10-24 11:37:54 -04:00
MrGadget
749c9ee970
Make SerializeSyncVars & DeserializeSyncVars protected virtual ( #2360 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-10-24 16:18:31 +02:00
MrGadget
cf3cf6a1ab
Remove EditorBrowsable Never Attributes ( #2359 )
...
Co-authored-by: MrGadget1024 <chris@clevertech.net>
2020-10-24 16:18:05 +02:00
James Frowen
0c6b63a2b1
simpleweb refactor changes
2020-10-22 19:13:58 +01:00
vis2k
d940db7e65
fix : #2357 (the second bug): NetworkServer.DisconnectAllConnections now iterates a copy of connections.Values to InvalidOperationException in cases where Transport.ServerDisconnect calls Mirror's OnServerDisconnect event immediately, which calls NetworkServer.OnDisconnected(connectionId), which would remove the connection while DisconnectAllConnections is iterating over them.
2020-10-22 11:36:18 +02:00
James Frowen
06ae90878d
Removing IDisposable from NetworkConnection ( #2345 )
...
* clientOwnedObjects is a hash set which doesn't need to be disposed
* DestroyOwnedObjects already clears list which is called by networkmanager when connection disconnects
Co-authored-by: vis2k <info@noobtuts.com>
2020-10-22 09:50:37 +02:00
James Frowen
46d8077780
Simplifing IsClientAlive check ( #2346 )
...
* moving check to base connection because it could be used for either
* renaming to IsAlive
* passing in timeout so it doesn't need to check NetworkServer
* updating doc comment
2020-10-22 09:48:35 +02:00
Chris Langsenkamp
2439af8c5e
Applied Mirror Icon
2020-10-21 17:56:14 -04:00
vis2k
d3f1ee9819
fix: NetworkClient.Disconnect avoids NullReferenceException if Transport ClientDisconnect calls OnDisconnected immediately. Related to: https://github.com/vis2k/Mirror/issues/2353
2020-10-21 20:41:40 +02:00
Paul Pacheco
71dc3a2481
fix: recursive types with collections
2020-10-20 09:47:43 -05:00
Paul Pacheco
3bf41c89ea
simplify serializing collections ( #416 ) ( #2348 )
...
The code to serialize lists, arrays, and array segments is now in the runtime instead of generated in the weaver.
removes about 300 LOC of weaver witchcraft
2020-10-20 09:47:00 +02:00
James Frowen
c789e2a510
using null propagation for RemoveOwnedObject ( #2347 )
2020-10-20 01:33:20 +01:00
James Frowen
25be44840e
checking if incoming message has length 0 before checking its id ( #2336 )
2020-10-18 23:07:10 +02:00
James Frowen
5eac88aa38
feat: adding NetworkRigidbody2D ( #2322 )( #2342 )
...
* using angularVelocitySensitivity
* removing un-needed using
* using vec2 instead of vec3
2020-10-17 20:46:58 +01:00
pitaya4
b0430efa40
Added support for 2D rigidbodies ( #2322 )
...
Added `Mirror.Experimental.NetworkRigidbody2D`, which supports 2D rigid bodies instead of regular ones.
2020-10-17 20:24:30 +01:00
Paul Pacheco
ea7594e558
perf: use built in == instead of unity one ( #2339 )
...
* perf: use built in == instead of unity one
should be the same performance as #2325 without the complexity
* more readable version
* more readable version
2020-10-17 13:50:38 -05:00
James Frowen
92c7196f69
feat: Adding SimpleWebTransport v0.6.1 to mirror repo ( #2323 )
...
* Intial commit
see https://github.com/MirrorNetworking/SimpleWebTransport for full git histroy
* Update main.yml
Adding SimpleWebTransport to coverage exclusions
* fully ignoring SimpleWebTransport from sonarcloud
SimpleWebTransport has sonarcloud running on its own repo
* using Buffer.BlockCopy
* SimpleWebTransport v0.4.1
* making error messages use LogError (MirrorNetworking/SimpleWebTransport@5f0096c )
* messages with length of 1 can be recieved by the client (MirrorNetworking/SimpleWebTransport@4237fc4 )
* stopping un-needed error logs after disconnect (MirrorNetworking/SimpleWebTransport@25ff190 )
* updating readme
* SimpleWebTransport v0.5.0
* adding missing warn level to Log.Levels (MirrorNetworking/SimpleWebTransport@0f68498 )
* Allowing multiple instances of javascript client (MirrorNetworking/SimpleWebTransport#14 ) (MirrorNetworking/SimpleWebTransport@cc6e513 )
* SimpleWebTransport v0.5.8
* Stopping send error when client disconnects
* Adding buffer pool
* Using ArrayBuffer for receive
* Removing info and verbose logging by default so performance isnt effected in editor or development builds.
* Making WebSocketClientStandAlone use timeouts from inspector
* Removing incorrect header from inspector
* Removing readonly from logger so that it can be set
* Fixing use of Interlocked in buffer pools
* using ManualResetEventSlim
* making Log.Exception always be logged
* SimpleWebTransport v0.6.0
* Trying to fix error when connection is closed
* Increase arraybuffer speed
* Removing shared buffers from server handshake
* Improving debug logging
* fixing code smells
* SimpleWebTransport v0.6.1
* making sure pending connection work when stop serve is called
* removing exception that isnt directly thrown by this method
this breaks docfx for some reason
2020-10-16 16:46:45 +01:00
James Frowen
f3f0403005
Removing websockets from mirror repo ( #2268 )
...
* Adding new websocket transport soon that doesn't depend on library
* Code for old transport can now be found here https://github.com/MirrorNetworking/NinjaWebSocketsTransport
* We shouldn't need to replace with empty files from store as having this in project should not break things
2020-10-16 16:46:04 +01:00
James Frowen
a2b64a4d1d
Update cloud readme
...
making examples a link
2020-10-15 17:57:48 +01:00
vis2k
31758e668f
perf: NetworkIdentity DirtyComponentsMask code removed entirely. OnSerialize now includes the component index as byte before serializing each component. Faster because we avoid GetDirtyComponentsMask() and GetSyncModeObserversMask() calculations. Increases allowed NetworkBehaviour components from 64 to 255. Code is significantly more simple. ( #2331 )
...
* perf: NetworkIdentity DirtyComponentsMask code removed entirely. OnSerialize now includes the component index as byte before serializing each component. Faster because we avoid GetDirtyComponentsMask() and GetSyncModeObserversMask() calculations. Increases allowed NetworkBehaviour components from 64 to 255. Bandwidth is now smaller if <8 components, and larger if >8 components. Code is significantly more simple.
* Update Assets/Mirror/Runtime/NetworkIdentity.cs
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
2020-10-13 16:21:06 +02:00
Paul Pacheco
3c82ff0cb2
breaking: Users must initialize synclists ( #391 ) ( #2330 )
...
* Users must initialize syncobjects (#391 )
Previously we initialized syncobjects, so this is valid:
```cs
public class Pepe : NetworkBehavior {
public SyncList<int> mylist;
}
```
With this change, users must initialize their own fields:
```cs
public class Pepe : NetworkBehavior {
public SyncList<int> mylist = new SyncList<int>();
}
```
BREAKING CHANGE: You must initialize all your SyncLists
* Add null check
* This is no longer a weaver error
* Update Assets/Mirror/Runtime/NetworkBehaviour.cs
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
* Remove unnecesary using
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
2020-10-12 09:37:26 +02:00
James Frowen
1da023dfd3
Update NetworkIdentity.cs
...
checking cache instead of property
2020-10-11 22:45:48 +01:00
James Frowen
9bf8817245
fix: fixing Initializer for generic synclists ( #2328 )
...
Weaver should initialize `public SyncList<int> myList;` in the same way it does for `SyncListInt`
2020-10-10 18:04:35 -05:00
James Frowen
ad48d511a1
Update NetworkConnection.cs
...
reverting comment
2020-10-10 15:34:46 +01:00
James Frowen
1c476f71b5
Update NetworkConnection.cs
2020-10-10 13:04:07 +01:00
vis2k
eb23bb76e0
Benchmark: custom NetworkManager with adjustable spawn amount for easier testing
2020-10-10 12:42:06 +02:00
vis2k
7529f5aedc
Benchmark: namespace changed from OneK to Benchmark
2020-10-10 12:39:50 +02:00
vis2k
575f1f6071
Benchmark: SpawnPosition renamed and centered at 0,0,0
2020-10-10 12:39:06 +02:00
uwee
6e44e6e526
fix: NRE in tanks example when running in headless server only ( #2326 )
2020-10-09 13:23:47 +01:00
vis2k
d9f58d3439
Benchmark monsters doubled to 4k, everyone broadcasting to everyone
2020-10-08 15:19:44 +02:00
James Frowen
5ad3fb5807
feat: NetworkTranform Teleport ( #2320 )
...
* Server Teleport Enchancement for NetworkTransform
Related to this issue: https://github.com/vis2k/Mirror/issues/2200
* Improvements on NetworkTransformBase
We disable clientAuthority until teleportation is finished and acknowledged. We set the goal and start data points to null before teleportation.
We set the clientAuthority back to it's initial value registered on server, both on the server and client side; it seems like we don't need to change it to anything on Client side because to my understanding clientAuthortiy is not affecting anything on client side. I may be wrong but still it is a great practice to set it back to it's initial value just in case...
* Added teleportation with rotation
I forgot to add a rotation functionality on my previous commit. It wouldn't be a teleportation without also changing the rotation. If provided a rotation input it will teleport with a rotation, if not it will simply protect the original rotation before the teleportation.
* Removed my debug statement
I forgot to remove the debug log statement lol silly me
* fixing up code
* resetting goal and last pos on server and client
* renaming variables
* making sure TeleportFinished can't request authority at any time
* moving teleport block
* removing duplicate lines
Co-authored-by: Emre Bugday <47198270+EmreB99@users.noreply.github.com>
2020-10-06 18:47:16 +01:00
James Frowen
1b5cbb51d7
fix: fixing PR number in Obsolete message
2020-10-06 18:08:35 +01:00
Paul Pacheco
31b07ae02f
breaking: no need to override Serialize/Deserialize in messages ( #2317 )
...
* breaking: no need to override Serialize/Deserialize in messages
Messages no longer serilize themselves. This has been decoupled. Serializing a message is now done
via readers and writers, which can be either generated or user provided.
This lifts some restrictions,
* you no longer need to have a default constructor in messages
* Messages types can be recursive
* struct Messages don't need to provide an empty Serialize and Deserialize method
Before:
```cs
public struct ReadyMessage : IMessageBase
{
public void Deserialize(NetworkReader reader) { }
public void Serialize(NetworkWriter writer) { }
}
```
After:
```cs
public struct ReadyMessage : IMessageBase
{
}
```
BREAKING CHANGE: Messages must be public
BREAKING CHANGE: Use custom reader and writer instead of Serialize/Deserialize methods
* Remove unused method
* remove unused methods
* remove unused methods
* make all messages struct
* Fix test code generator
* Get rid of MessageBase
* Rename IMessageBase -> NetworkMessage
* add MessageBase as obsolete
* Use a default request
* Empty file to make asset store happy
* Apply suggestions from code review
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
Co-authored-by: James Frowen <jamesfrowendev@gmail.com>
2020-10-06 09:31:02 +02:00
James Frowen
6813360f93
feat: NetworkAnimator now syncs animator.speed ( #2312 )
...
* feat: NetworkAnimator now syncs animator.speed
* Update NetworkAnimator.cs
- adding previous speed field
- avoiding floating number equals
* Update NetworkAnimator.cs
- adding previousSpeed field
2020-10-03 20:51:08 +02:00
Emre Bugday
032012f9e1
Fixed OnStopClient not being called on Client Side ( #2308 )
...
* Fixed OnStopClient not being called on Client Side
* Moved identity.OnStopClient() two scopes above
Co-authored-by: Emre Bugday <47198270+EmreB99@users.noreply.github.com>
2020-10-03 02:57:37 +01:00
James Frowen
42f5a117ec
Update Extensions.cs ( #2310 )
...
- only catching AssemblyResolutionException
- using null propagation instead of null ref
2020-10-03 01:45:53 +01:00
James Frowen
181bab6bd0
fixing test names ( #2309 )
...
* fixing test names
* renaming test files
2020-10-03 01:45:40 +01:00
vis2k
e730e4baca
fix tests after previous SyncLists commit
2020-10-02 10:03:07 +02:00
Paul Pacheco
fb49d19793
breaking: Use SyncLists directly (delete overrides) ( #2307 )
...
* feat: Use SyncLists directly
Previously, you had to write an intermediary class to use synclists, syncsets and syncdictionaries.
The weaver would populate that intermediary class with a serialization and deserialization method
This PR gets rid of 90% of the weaver code for synclists.
There is no need to generate these methods anymore.
Instead the lists use `writer.Write<T>` and `read.read<T>` to serialize their Data.
Since there is no code generate in synclists, you can now use the synclists directly instead
of subclassing them.
BEFORE:
```cs
public class MyComponent : NetworkBehaviour {
// nonsense class to make the weaver happy
class SyncListData : Synclist<Data> {}
SyncListData mySyncList;
}
```
AFTER:
```cs
public class MyComponent : NetworkBehaviour {
Synclist<Data> mySyncList;
}
```
* linting
* feat: Use SyncLists directly (no overrides)
Previously, you had to write an intermediary class to use synclists and syncdictionaries.
The weaver would populate that intermediary class with a serialization and deserialization method
This PR gets rid of 90% of the weaver code for synclists.
There is no need to generate these methods anymore.
Instead the lists use `writer.Write<T>` and `read.read<T>` to serialize their Data.
Since there is no code generate in synclists, you can now use the synclists directly instead
of subclassing them.
Same as #2305 ,but it removes the deprecated Serialize and Deserialize methods from syncobjects,
This way you get a nice compiler error for the code that no longer works, instead of a warning you might accidentally ignore.
BEFORE:
```cs
public class MyComponent : NetworkBehaviour {
// nonsense class to make the weaver happy
class SyncListData : Synclist<Data> {}
SyncListData mySyncList;
}
```
AFTER:
```cs
public class MyComponent : NetworkBehaviour {
Synclist<Data> mySyncList;
}
```
BREAKING CHANGE: Serialize and Deserialize methods in synclists don't do anything anymore
* Remove old comment
* Fix compilatio error
2020-10-02 09:12:25 +02:00
Paul Pacheco
85252c3d84
feat: new generic Read and Write methods for all types ( #2301 )
...
Currently in mirror, there is no way for Mirror itself to invoke
readers and writers for types it does not know about.
This causes us to have to generate code for lists, dictionaries and messages.
This PR makes it so that if there is a reader and writer anywhere in the
code for type X, then the writer can be invoked like this:
```cs
X x = ...;
writer.Write<X>(x);
```
and the reader can be invoked like this:
```cs
X x = reader.Read<X>();
```
2020-10-01 17:13:30 -05:00
vis2k
efb9b21aa4
Revert xml
2020-09-30 12:11:08 +02:00
vis2k
ae95b0625d
revert
2020-09-30 11:09:12 +02:00
vis2k
7fa8345b85
wtf
2020-09-30 11:02:27 +02:00
Paul Pacheco
16864f9ff0
It is fine to serialize empty struct
2020-09-29 21:26:53 -05:00
Paul Pacheco
0267dbe1f2
feat: support Jagged arrays
...
simplify the code for checking for multidimentional arrays
and lift the restriction on jagged arrays
2020-09-29 21:21:16 -05:00
Paul Pacheco
5e2d87685b
Generated class does not need constructor
2020-09-29 15:22:21 -05:00
Paul Pacheco
c720055bce
remove empty blocks
2020-09-29 12:26:24 -05:00
Paul Pacheco
7ca08924b5
Remove unused meta
2020-09-29 12:16:21 -05:00
Paul Pacheco
0132697513
Simplify obj initialization
2020-09-29 12:15:26 -05:00
Paul Pacheco
88ece20e68
Simplify IsDerivedFrom
2020-09-29 12:01:49 -05:00
Paul Pacheco
9889ed4f9c
Remove unnecesary lists from WeaverLists
2020-09-29 11:22:46 -05:00
Paul Pacheco
8dbf46720e
fix: generic arguments resolution ( #2300 )
...
* fix: generic arguments lookup
The weaver was not able to figure out the synclist type in code like this:
```cs
public class SomeList<G, T> : SyncList<T> { }
public class SomeListInt : SomeList<string, int> { }
```
This code fixes that problem, and greatly reduces the complexity
of argument lookup.
* linting
2020-09-29 09:39:17 -05:00
vis2k
720a06ea70
MessagePacker.Pack<T> to byte[] moved out of MessagePacker and into MessagePackerTest to simplify code. It's only used in tests anyway.
2020-09-29 11:54:07 +02:00
vis2k
c947bc03e6
MessagePacker.GetId<T> reuses GetId(Type)
2020-09-29 10:55:02 +02:00
Cooper Saye
aba69ca4d0
fix: typos ( #2297 )
2020-09-29 09:16:30 +02:00
Paul Pacheco
bdb6ca07d2
linting
2020-09-28 23:11:50 -05:00
Paul Pacheco
3103266b44
space linting
2020-09-28 22:49:36 -05:00
Paul Pacheco
3e2c3f8ccc
Refactor reading array segment ( #2296 )
...
* Refactor reading array segment
Just deserialize the array and transform to array segment
* Fix comment
* Fix invalid IL
2020-09-28 22:43:44 -05:00
Paul Pacheco
59bc83f997
Fix more comments
2020-09-28 22:42:34 -05:00
Paul Pacheco
fe1064ce0b
Remove redundant InitLocals
2020-09-28 22:37:25 -05:00
Paul Pacheco
53452cc003
Fix comments
2020-09-28 22:37:25 -05:00
Paul Pacheco
5c4d8a27cc
Refactor writer for loops ( #2294 )
...
* Refactor writer for loops
* Remove unused variable
2020-09-28 22:37:25 -05:00
Paul Pacheco
fe2adc8d59
Deduplicate null check ( #2295 )
2020-09-28 22:37:25 -05:00
Paul Pacheco
0aea48cf06
Linting
2020-09-28 22:14:54 -05:00
Paul Pacheco
b9550cf6d3
Linting
2020-09-28 22:14:09 -05:00
Paul Pacheco
4ec84df494
Reuse checking for null ( #2293 )
2020-09-28 21:32:43 -05:00
Paul Pacheco
66be588512
reuse ReadLength ( #2292 )
2020-09-28 21:32:16 -05:00
Paul Pacheco
7c2a6595eb
refactor reader for loops ( #2291 )
...
* Fix comments
* refactor for loops
* Cleanup a bit
2020-09-28 21:29:52 -05:00
Paul Pacheco
69161144a0
Fix comments
2020-09-28 21:02:53 -05:00
Paul Pacheco
4a710b2eea
Add some comments
2020-09-28 20:44:18 -05:00
Paul Pacheco
86df5954ac
Add some comments
2020-09-28 20:32:38 -05:00
Paul Pacheco
3ccb7d9da4
feat: Support recursive data types ( #2288 )
...
Remove all the recursionCount nonsense.
This was added to prevent infinite recursion with types that reference themselves.
No need to check anymore, the weaver can generate readers and writers for types that reference themselves such as:
```cs
class Tree {
Tree child1;
Tree child2;
}
```
This works by the weaver doing it the way the compiler does: Create a function first, memoize it, then write the body. If the body needs the function, it will get itself and issue a call to itself.
2020-09-28 20:18:56 -05:00
Paul Pacheco
513a0f9945
feat: support null when serializing classes ( #2290 )
2020-09-28 19:55:29 -05:00
Paul Pacheco
fe641adae8
Refactor writer function generation ( #2289 )
2020-09-28 17:07:16 -05:00
Paul Pacheco
6fc5a4effc
remove TODO comment
2020-09-28 16:43:48 -05:00
Paul Pacheco
7aa47f14be
Simplify reader registration
2020-09-28 15:52:36 -05:00
Paul Pacheco
2dc280d292
Refactor reader function generation
2020-09-28 15:50:40 -05:00
Paul Pacheco
fe061ac792
Simplify generated writer name
2020-09-28 15:32:06 -05:00
Paul Pacheco
5e78e27c8f
Simplify generated reader name
2020-09-28 15:09:19 -05:00
Paul Pacheco
664d5f7f99
Generate reader and writer functions for enums ( #2283 )
...
Currently, whenever we want to serialize an enum,
we simply serialize the underlying type (byte, short, int)
This works fine, but in order to get the reader and writer
at runtime I need a function for each type.
With this PR, we generate a reader and writer function for enums too,
the function body simply calls the underlying reader and writer.
2020-09-28 14:51:13 -05:00
James Frowen
fa059b59bf
Squashed ( #2187 )
...
* throwing Exception instead of returning null
* re-adding null check until later PR
* removing error from test
* removing extra error
* adding comment
* replacing error with throw for abstact
2020-09-28 21:29:10 +02:00
James Frowen
796aa3baf8
moving WeaverLists functions to WeaverLists ( #2285 )
...
The plan is to remove WeaverLists at some point so moving the functions
out of weaver to here for now and then move them closer to where they
are actaully used when we start to remove WeaverLists.
2020-09-28 21:21:30 +02:00
Paul Pacheco
694de7255b
Cannot use generics as declared reader and writers
2020-09-28 09:17:33 -05:00
Paul Pacheco
f9ecc64468
Simplify type check
2020-09-28 09:13:25 -05:00
Paul Pacheco
b0d1d9aac0
Rename method for clarity
2020-09-28 08:52:15 -05:00
Paul Pacheco
59566588b1
Simplify type check
2020-09-28 07:39:03 -05:00
Paul Pacheco
54f96309da
Simplify type check
2020-09-28 07:38:24 -05:00
vis2k
9077cc7fd7
Add comments
2020-09-27 18:51:23 +02:00
James Frowen
8b3e509c3b
Update Transport.cs
2020-09-23 16:52:11 +01:00
James Frowen
bdd81e33ba
fix: fixing new import
...
see https://github.com/vis2k/Mirror/pull/2259
2020-09-23 16:30:32 +01:00
Paul Pacheco
a0aecf11fb
Linting
2020-09-22 13:07:03 -05:00
Paul Pacheco
25b2fa9af8
KISS
2020-09-22 13:03:33 -05:00
Paul Pacheco
c868561822
Remove passthrough method
2020-09-22 12:49:38 -05:00