Commit Graph

1216 Commits

Author SHA1 Message Date
MrGadget
1fc1ed2708 fix: Don't give host player authority by default (#1158)
* Don't give host player authority by default

* Same when removing authority
2019-10-20 18:01:00 +02:00
Paul Pacheco
eb51da0b72 simplify tests 2019-10-19 11:29:52 -05:00
Lymdun
8be06fc453 Fix comments (#1167) 2019-10-19 10:06:30 -05:00
Paul Pacheco
2db9520b54 Cleaned up some tests 2019-10-19 10:05:30 -05:00
MichalPetryka
0fde090bf2 SyncList custom Equality Comparer support (#1146) 2019-10-19 16:02:08 +02:00
Paul Pacheco
9cb309e5bc feat: Users may provide custom serializers for any type (#1153)
* feat: Users may provide custom serializers for any type

* Relax rules for rpc parameters to support user provided serializers

* Improve error messages

* Fixed component types

* Adjusted tests
2019-10-19 16:00:27 +02:00
MrGadget
ae5c92b40c Rename includeSelf to includeOwner (#1163)
* Rename includeSelf to includeOwner

* Renamed isSelf too
2019-10-19 09:47:17 +02:00
MrGadget
11b3cce123 Refresh Data For Preview Window (#1161) 2019-10-19 09:41:06 +02:00
MrGadget
0295522d5a Prevent NRE (#1162) 2019-10-19 09:39:46 +02:00
MrGadget
039abfcc81 Remove unnecessary virtuals (#1156) 2019-10-18 08:09:27 -05:00
MrGadget
c3fcf9117c
Update NetworkClient.cs
updated comment
2019-10-18 00:27:34 -04:00
Paul Pacheco
d8ce80fe0e fix: don't call hook in host if no change, fixes #1142 (#1143)
* fix: don't call hook in host if no change,  fixes #1142

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

Co-Authored-By: MrGadget <chris@clevertech.net>

* avoid hook calls for GO and NI in host

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

* Remove check from SetSyncVarGameObject
2019-10-17 09:31:31 +02:00
Paul Pacheco
34c419ee07 Update NI and GO fields for ease of use (#1154) 2019-10-17 09:30:29 +02:00
MrGadget
61428382f4 Make playerData public to get rid of Unity's warning (#1152) 2019-10-16 21:16:46 +02:00
MichalPetryka
0f951858c5 feat: SyncSet custom Equality Comparer support (#1147) 2019-10-15 09:07:15 -05:00
MichalPetryka
84555bc9d0 Fix invalid exception usage (#1148) 2019-10-14 19:39:00 +02:00
MrGadget
fd43c67d68 fix: Prevent Compiler Paradox (#1145)
* Prevent Compiler Paradox

* Change platform to Editor Only

* added new line at EOF
2019-10-14 07:32:24 -05:00
Paul Pacheco
ae2f5cb7d8 Make field readonly 2019-10-14 07:23:40 -05:00
Paul Pacheco
85faddfdd0 Remove unused, obsolete private method 2019-10-14 07:20:47 -05:00
Paul Pacheco
ec5434b087 Method should be static 2019-10-13 16:20:56 -05:00
Paul Pacheco
95138427f3
perf: avoid boxing for getting message id (#1144)
* perf: avoid boxing for getting message id

* Update Assets/Mirror/Runtime/MessagePacker.cs

Co-Authored-By: MichalPetryka <35800402+MichalPetryka@users.noreply.github.com>

* Update Assets/Mirror/Runtime/NetworkConnection.cs

Co-Authored-By: MichalPetryka <35800402+MichalPetryka@users.noreply.github.com>
2019-10-13 15:57:39 -05:00
Chris Langsenkamp
d5e3e56c78 Fixed HelpURL 2019-10-09 01:41:54 -04:00
MrGadget
bcc6af8527 Simplify Jump and reset player prefabs (#1140) 2019-10-08 09:35:08 +02:00
Chris Langsenkamp
98b6328f76 Merge branch 'master' of https://github.com/vis2k/Mirror 2019-10-07 06:41:35 -04:00
Chris Langsenkamp
86b5f565d0 updated comments 2019-10-07 06:41:12 -04:00
vis2k
231a384881 Telepathy updated to latest version 2019-10-07 10:43:47 +02:00
Chris Langsenkamp
1f2ff6b2c9 Code formatting 2019-10-05 10:13:13 -04:00
Chris Langsenkamp
d177df8f35 Changed to OnStartServer 2019-10-04 04:42:48 -04:00
Chris Langsenkamp
24052428e0 Removed unused Players object from scene 2019-10-04 04:25:18 -04:00
Paul Pacheco
c85d0df533
fix: webgl build fix #1136 (#1137) 2019-10-03 01:05:28 -05:00
MrGadget
5dfc85931f Obsoletes OnServerAddPlayer (#1134)
* Obsoletes OnServerAddPlayer(NetworkConnection conn, AddPlayerMessage extraMessage)

* Fixed NetworkManager

* Fixed Pong

* Fixed Room

* Wrapped call in warning suppressors

* Improved comments
2019-10-02 10:26:19 +02:00
MrGadget
e73185932a Updated Basic Example (#1135)
* Updated Basic Example

* Added more comments

* addes more comments
2019-10-01 21:52:36 -05:00
Paul Pacheco
77ec19c0dd docs: update links to new add player documentation 2019-10-01 11:56:43 -05:00
Paul Pacheco
c0417e3788 docs: explain what TargetRpcProcessor does 2019-10-01 06:58:13 -05:00
Paul Pacheco
af6be4fe41 docs: explain what RpcProcessor does 2019-10-01 06:58:13 -05:00
Paul Pacheco
b0a67041d8 docs: explain what CommandProcessor does 2019-10-01 06:58:13 -05:00
vis2k
ed572da6a0 fix: NetworkBehaviourInspector wouldn't show SyncMode if syncvars / syncobjects were only private 2019-10-01 11:47:12 +02:00
Paul Pacheco
c24a73f6c9
fix: syncvars in commands work again (#1131)
* fix: syncvars in commands work again
2019-09-30 22:13:34 -05:00
Paul Pacheco
fb15c56d39 refactor: we no longer replace methods 2019-09-30 21:23:44 -05:00
Paul Pacheco
5ecd646134
fix: TargetRpc now works accross assemblies (#1130)
similar to #1128 but for TargetRpc
2019-09-30 21:19:32 -05:00
Paul Pacheco
13dbcb9f35
fix: ClientRpc methods now work accross assemblies (#1129)
Similar to #1128 but for client rpc
2019-09-30 21:17:30 -05:00
Paul Pacheco
d8a98d8d99
fix: Cmds can be called from child classes in other assemblies
fix #1108
2019-09-30 20:51:34 -05:00
vis2k
3831cbddbe fix: Telepathy fix a bug where calling Disconnect while connecting to a dead end would freeze Unity because .Join would wait forever. Interrupt fixes it. 2019-09-30 19:30:13 +02:00
Chris Langsenkamp
82ebf44ae6 updated xml comments 2019-09-29 20:19:20 -04:00
Chris Langsenkamp
5f034bf3da Added XML comments 2019-09-29 20:14:32 -04:00
Chris Langsenkamp
8e3f3c75de Fixed XML comments 2019-09-29 18:08:24 -04:00
Paul Pacheco
32c75fe14c Describe cleaner way to add customizable character (#1090)
* Describe cleaner way to add custom characters

* Update doc/articles/Guides/CustomPlayer.md

* Update doc/articles/Guides/CustomPlayer.md

* make example code clearer

* Update doc/articles/Guides/CustomPlayer.md

Co-Authored-By: MrGadget <chris@clevertech.net>

* Update doc/articles/Guides/CustomPlayer.md

Co-Authored-By: MrGadget <chris@clevertech.net>

* Update doc/articles/Guides/CustomPlayer.md

Co-Authored-By: MrGadget <chris@clevertech.net>

* Update doc/articles/Guides/CustomPlayer.md

* Update doc/articles/Guides/CustomPlayer.md

* Apply suggestions from code review
2019-09-29 14:28:18 +02:00
vis2k
4ef6077d65
breaking: allocation free sends (#1103)
* so far

* websocket alloc free send

* keep old Pack name

* syntax

* LLAPI allocation free sends

* use ServerSend(list) for all

* multiplex send(list) based on https://github.com/vis2k/Mirror/pull/1118/files

* new mirror define
2019-09-29 13:34:15 +02:00
Paul Pacheco
c9f317ddee
feat: Websockets now give client address, fix #1121 (#1125) 2019-09-28 18:27:46 -05:00
Paul Pacheco
2cd36c8b58 Fix async warnings 2019-09-28 18:03:21 -05:00
Paul Pacheco
6402ecdf90 Fix xml docs 2019-09-28 17:52:46 -05:00
Paul Pacheco
dbafb2c56a Get rid of warning 2019-09-28 17:49:27 -05:00
Paul Pacheco
5649cc6977 feat: profiler info is available in production builds 2019-09-28 16:54:22 -05:00
Paul Pacheco
65d81d6fb4
Transports now give the channel when receiving message (#1124)
* Transports now give the channel when receiving message

* Profile inbound messages channel id
2019-09-28 14:01:45 -05:00
vis2k
680d14338b xmldocs too 2019-09-28 19:29:17 +02:00
vis2k
bc7e116a6e
feat: Transport can send to multiple connections at once (#1120)
* so far

* consider local conn

* internal Send(list) to avoid obsolete later

* typo

* empty line
2019-09-28 19:08:58 +02:00
vis2k
3c9459b60c NetworkConnection.ValidatePacketSize 2019-09-28 17:02:06 +02:00
vis2k
e6a20a5ef0 just Send 2019-09-28 16:13:07 +02:00
vis2k
55698162c9 merge it (#1119) 2019-09-28 09:02:19 -05:00
Paul Pacheco
2696ee20f4 Use local connection send method 2019-09-26 19:09:22 -05:00
Paul Pacheco
15098d59ea Add todo comment 2019-09-26 19:06:18 -05:00
Paul Pacheco
55c9bb625a fix: pack works if message is boxed 2019-09-26 18:54:11 -05:00
MrGadget
9bce5a84e8 Remove Host Migration cruft (#1114)
* Remove Host Migration cruft

* Deprecated instead of removed.
2019-09-25 18:49:25 -05:00
MrGadget
85e607088a Make RemoveClientAuthority easier to use (#1113)
* Make RemoveClientAuthority easier to use

* Added back the returns...oops
2019-09-25 13:45:18 -05:00
Paul Pacheco
db2e1488c1 fix #1096 move xmldocs to docs 2019-09-24 22:42:02 -05:00
MrGadget
7dfaf05cee Unity 2018.4.9 changes (#1111) 2019-09-24 15:48:41 -05:00
Paul Pacheco
db8310f838
fix: Sync full netAnimator for new clients, fix #980 (#1110) 2019-09-24 09:35:24 -05:00
Paul Pacheco
d91b387bb2 fix(weaver): fix #796, reload assemblies after initial import (#1106)
* fix: fix #796, reload assemblies after initial import

* Do not weave assemblies that aren't compiled yet

* Update CompilationFinishedHook.cs

* Update CompilationFinishedHook.cs

* Use SessionState instead of env variable
2019-09-24 08:43:55 +02:00
Chris Langsenkamp
043cf29d0a Fixed list items in comments 2019-09-23 03:26:41 -04:00
Chris Langsenkamp
97848e56fc Updated links 2019-09-21 23:43:06 -04:00
vis2k
958fc256be remove unused import 2019-09-21 22:44:55 +02:00
vis2k
633f7825ed NetworkAuthenticator: OnStartServer/OnStartClient made virtual because not all authenticators need them. 2019-09-21 22:42:14 +02:00
vis2k
c3917cdf0b NetworkAuthenticator: OnStartClient moved into client region 2019-09-21 22:41:07 +02:00
vis2k
a498bff511 syntax 2019-09-21 21:29:26 +02:00
vis2k
3a803c1c39 fix typo 2019-09-21 21:26:56 +02:00
MrGadget
99652b24f0 Reorder NetworkManager (#1105) 2019-09-21 11:50:55 -05:00
MrGadget
3e92f53a36 Update NetworkRoomPlayer.cs (#1094)
CmdChangeReadyState needs to be public
2019-09-21 09:25:01 -05:00
Paul Pacheco
a351879f91 perf: avoid boxing if there is no profiler 2019-09-21 08:19:07 -05:00
vis2k
4a13773dbc remove old comment 2019-09-21 10:47:34 +02:00
Chris Langsenkamp
760b5284b9 Fixed obsoletes and comments 2019-09-20 20:31:41 -04:00
Paul Pacheco
5985e6d641 GetRpcMethod does not need an instance 2019-09-19 23:31:43 -05:00
Paul Pacheco
bc87649be6 Don't report out messages if there are no recipients 2019-09-19 23:27:34 -05:00
Paul Pacheco
e742ffad4b Messages must be public for profiler 2019-09-19 23:26:50 -05:00
Paul Pacheco
838d4f019f
fix: Fix error scene error message in host mode
When using online scene and starting host mode,  users were getting:

```
Closing connection: 0. Received message Mirror.SceneMessage that required authentication
```
2019-09-18 18:13:26 -05:00
MrGadget
e88316f336 Rename NetworkConnection.playerController to identity (#1092)
* change playerController to identity

* improved obsolete

* Obsolete comment
2019-09-18 10:32:26 +02:00
Chris Langsenkamp
9f09c21680 Revert "Remove add component from deprecated components (#1087)"
This reverts commit 8a99ab16e8.
2019-09-17 23:23:13 -04:00
Chris Langsenkamp
6e4409b786 Fixed double-spaced bullets in docs 2019-09-17 20:34:26 -04:00
MrGadget
958e2ad612 Redefine SceneMessage (#1093)
* Redefine SceneMessage

* Add obsolete method

* Removed SceneLoader
2019-09-17 22:59:16 +02:00
Paul Pacheco
7ac43cd56a feat: Secure messages that require authentication, fixes #720 (#1089)
* feat: Secure messages that require authentication, fixes #720

* Rename the parameter for clarity

* Update Assets/Mirror/Runtime/MessagePacker.cs

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

* Update Assets/Mirror/Runtime/MessagePacker.cs

Co-Authored-By: MrGadget <chris@clevertech.net>
2019-09-17 22:16:37 +02:00
MrGadget
56bcb02c15 feat: Authentication Framework (#1057)
* Component-based Authentication

* Capitalized IsAuthenticated

* Added isAuthenticated to NetworkConnection

* Removed activeAuthenticator as unnecessary

* Removed unnecessary using

* Added more comments

* Documentation

* Added cs to code blocks in doc

* fixed typo in doc

* Doc improvements

* Fixed another typo in doc

* Removed HideInInspector

* Updated doc and image

* Fixed comment

* Added inspector header and tooltips

* Fixed typo

* Add AuthenticationData object

* Add a bullet point in the doc about AuthenticationData

* Updated screenshot image

* Added HelpURL attribute

* Added Initializers for both Server and Client

* Fixed doc grammar and phrasing

* Forgot to add the ClientInitialize in StartHost

* Updated doc with info about the initializers

* Changed initializers from bool to void.

* Eliminated the abstract model and renamed to NetworkAuthenticator and made all methods virtual

* Fixed comment

* Fixed typo

* Doc cleanup

* Doc Cleanup

* authenticator RemoveAllListeners in StopServer and StopClient

* Update Assets/Mirror/Runtime/NetworkManager.cs

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

* Changes requested by Vis

* reverted conflicting change

* Revert "reverted conflicting change"

This reverts commit f65870e073.

* UnityEditor.Undo.RecordObject

* made the name camelCase

* Added internal methods and On prefix to methods

* Reverted this change so it can be done in a separate PR

* Moved authenticator calls to after runInBackground

* Add built-in timeout feature

* Changed UnityEditor.Undo.RecordObject to use gameobject

* Convert to Abstract, add Basic Authenticator, update docs.

* Removed timeout, against my better judgement.

* Removed the rest of timeout, still against my better judgement

* Fixed event listener mappings

* Renamed and consolidated methods

* updated doc and image

* made OnClientAuthenticate and OnServerAuthenticate abstract

* Updated Debug log msgs

* changed to authenticator != null

* Renamed to NetworkAuthenticator
2019-09-17 10:41:04 +02:00
Paul Pacheco
e67035e971 Add profiler hooks (#1086)
* Add profiler hooks

* Polish API a bit

Now if we want to add more fields,  we can do so without
breaking profilers

* Provide documentation for the profiler data

* Use -1 channel until we implement this feature

* Use C# events instead of UnityEvent

* Simplify message info structure

* Renamed class

* Send -> OnSend
Receive -> OnReceive

* Update Assets/Mirror/Runtime/NetworkConnection.cs

* Update Assets/Mirror/Runtime/NetworkDiagnostics.cs

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

* Update NetworkDiagnostics.cs
2019-09-17 08:45:51 +02:00
MrGadget
8a99ab16e8 Remove add component from deprecated components (#1087) 2019-09-16 22:14:02 -05:00
vis2k
229e5e8d6e remove trailing whitespace 2019-09-15 19:04:33 +02:00
vis2k
524abfc5e8 fix: NetworkManager OnValidate wouldn't properly save the automatically added Transport before because Undo.RecordObject is needed for that now. 2019-09-15 19:04:33 +02:00
Paul Pacheco
5a9e14c79e
Expose methods for profiler (#1083) 2019-09-15 09:43:36 -05:00
vis2k
06c3385e7d fix comment 2019-09-14 13:19:17 +02:00
vis2k
dcafadfdba fix #1073 sync components with different intervals and add test (#1077) 2019-09-12 07:56:59 -05:00
vis2k
245dcfd1d9 forgot internal 2019-09-12 14:23:11 +02:00
MrGadget
d5e6bbc552 Clear Handlers on NetworkClient.Shutdown (#1069)
* Clear handlers on Shutdown

* Update NetworkClient.cs

* Update NetworkClient.cs
2019-09-12 13:35:08 +02:00
vis2k
414fa9cfb9 forgot to make internal for test 2019-09-12 11:52:24 +02:00