Commit Graph

1807 Commits

Author SHA1 Message Date
vis2k
12faf65d18 NetworkServerTest: AddConnectionTest 2020-02-23 11:25:20 +01:00
vis2k
a0d6a02a99 NetworkServer.Reset made obsolete 2020-02-23 11:20:42 +01:00
vis2k
5de22d2ff2 NetworkServerTests: ShutdownCleanupTest improved 2020-02-23 11:18:54 +01:00
vis2k
45ba9a9939 syntax 2020-02-23 11:17:40 +01:00
vis2k
7b6f1326eb NetworkServertest: LocalClientActiveTest 2020-02-23 11:17:17 +01:00
vis2k
1e198e4bcc remove unnecessary assert 2020-02-23 11:16:05 +01:00
vis2k
7333cc8f46 NetworkServerTest: SetLocalConnectionTest 2020-02-23 11:15:03 +01:00
vis2k
ec23c1fc58 NetworkServerTests: ShutdownCleanupTest 2020-02-23 11:13:11 +01:00
vis2k
ab98846566 NetworkServerTest: ConnectionsDictTest 2020-02-23 11:06:35 +01:00
vis2k
933ce4a3d5 NetworkServerTests: DisconnectMessageHandlerTest 2020-02-23 11:02:05 +01:00
vis2k
77929e9aa0 NetworkServerTests: ConnectMessageHandlerTest 2020-02-23 11:00:16 +01:00
vis2k
b1ff0757ee NetworkServerTest: MaxConnectionsTest 2020-02-23 10:58:07 +01:00
vis2k
f750d77a8c NetworkServerTests: IsActiveTest 2020-02-23 10:19:38 +01:00
Chris Langsenkamp
e1d1d41ed6 fix: Room example to use new override 2020-02-23 02:43:53 -05:00
Chris Langsenkamp
b5dfcf45bc feat: Added NetworkConnection to OnRoomServerSceneLoadedForPlayer 2020-02-22 18:46:47 -05:00
Chris Langsenkamp
b39b4ffc62 Removed extraneous blank line 2020-02-22 17:40:58 -05:00
MrGadget
f53b12b2f7
feat: Cosmetic Enhancement of Network Manager (#1512)
* Cosmetic enhancement to Network Manager

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

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

* Added braces

* Moved and added comments.

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

* Updated ChangeLog

* Added braces

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

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

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

* Much closer now

* Whoop! There it is!

* Added comment

* Restore Player

* Moved WeaveFailed back where it was

* Restore delegate wireup

* Moved the delegate wireup and added comments

* Formatted comment and error message

* Added comment

* Use a separate session bool

* Code formatting

* Delete Mirror.Editor.asmdef

* Add Debug

* No WeaveExistingAssemblies

* Revert "No WeaveExistingAssemblies"

This reverts commit 50d4790ee4.

* Revert "Add Debug"

This reverts commit 185b403361.

* Revert "Delete Mirror.Editor.asmdef"

This reverts commit f7647cce3f.

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

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

* reverted changes to Mirror.Editor.asmdef

* Re-applied change to Mirror.Editor.asmdef

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

* using NetworkWriter from pool

* Remove Recycles

* Add comments to Recycle

* Add comments to Recycle

* using NetworkReader from pool

* Unity doesn't like the simplified form

* combined usings

* Updated Reader / Writer Tests

* wip

* Disposable NetworkReaderPool:NetworkReader

* uncomment NetworkDiagnostics.OnReceive

* Removed unnecessary constructor

* Implemented NetworkWriterPool : NetworkWriter

* code cleanup

* Separated classes: PooledNetworkReader / PooledNetworkWriter

* Removed blank line

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

* Test restored

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

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

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

class Player : NetworkBehaviour
{

    [SyncVar]
    Weapon equipped;

    ...
}
```

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

* fix: remove scriptableobject error Tests

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

* add comment

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

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

* Proposed Rearrange

* Rearrange Code

* Unit test for PR

* unit test

* unit test

* Update TestingScriptableObjectArraySerialization.cs

Improving code

* Update TestingScriptableObjectArraySerialization.cs

* Remove blank lines

* remove blank space

* Remove leftover log

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

In the client this happens after.  

Example:

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

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

* Reset Position

* Debug logging removed

* SetBuffer methods internal

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

* commit staged

* Added SpawnMessageTest

* Delete MessageTests.cs

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Added RemovePlayerMessageTest

* Added ReadyMessageTest

* Added ObjectSpawnStartedMessageTest

* Added ObjectSpawnFinishedMessageTest

* Added ObjectHideMessageTest

* Added ObjectDestroyMessageTest

* Added NotReadyMessageTest

* Added DisconnectMessageTest

* Added ConnectMessageTest

* Added NetworkPingMessageTest

* Updated NetworkPingMessageTest

* Added NetworkPongMessageTest

* Updated ErrorMessageTest

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

* Second Draft

* Third Draft

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

* Updated Changelog

* first commit

* Add example for discovery

* NetworkDiscovery component should be added

* fixed UI

* Fix some warnings

* refactor: network discovery reimplemented

* Remove unused GUIstyle

* Fix namespaces

* Just send to the broadcast address

* Fix indentation

* Log errors in ClientListen

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

* Transport can now provide server uri

* work with any transport by passing uri

* Move discovery initialization to start

* feat: Discovery can now be easily customized per game

* Use generics to simplify api

* Renamed ServerInfo -> ServerResponse

* Rename method

* Moved up one folder

* Move ServerId to NetworkDiscovery

* tests now reference Mirror.Discovery

* Cleaned up blank space

* Disable GUID apparently fixes it

* Use UnityEvents for ease of use

* Remove noisy log

* remove blank spaces

* Process request receives the client endpoint

* use consistent name for parameters

* Remove white space

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

* Comment non obvious property

* Don't break transports

* Documentation and image

* Code formatting

* removed privates

* Added Range attribute

* Rename ActiveDiscoverySecondInterval

* Revised NetworkDiscovery doc

* Swapped field order (Cosmetics)

* Added ScriptTemplate

* Update ProjectSettings/ProjectVersion.txt

* Updated ScriptTemplate

* Updated xml comment and ScriptTemplate

* Updated ScriptTemplate

* Improve xmldocs

* Improve xmldocs

* Remove leftover comment

* Renamed event

* Moved discovery inside components

* Keep parameter names consistent

* Provide a guide for network discovery

* XML Comments and ScriptTemplate

* Moved Credits

* fixed template

* Removed comment

* removed comment

* xml comments and template

* fixed method name

* fixed method and template

* removed semicolon

* fixed template

* fixed method and template

* fixed template

* fixed template

* Fix copypasta error

* Show error if no url is available

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

* Grammar fix

* Extended Template

* fixed template

* Added guide link to template

* New image

* Update NetworkDiscovery.md

* Updated Guid Doc and Template

* fixed bullets

* Remove unnecessary using

* Make it like Mirror's

* Update ScriptTemplates Image & Zip

* Removed from Deprecations

* Updated ChangeLog

* Updated ChangeLog

* Update NetworkDiscovery.md

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

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

* Removed 8

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

* Updated Changelog

* first commit

* Add example for discovery

* NetworkDiscovery component should be added

* fixed UI

* Fix some warnings

* refactor: network discovery reimplemented

* Remove unused GUIstyle

* Fix namespaces

* Just send to the broadcast address

* Fix indentation

* Log errors in ClientListen

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

* Transport can now provide server uri

* work with any transport by passing uri

* Move discovery initialization to start

* feat: Discovery can now be easily customized per game

* Use generics to simplify api

* Renamed ServerInfo -> ServerResponse

* Rename method

* Moved up one folder

* Move ServerId to NetworkDiscovery

* tests now reference Mirror.Discovery

* Cleaned up blank space

* Disable GUID apparently fixes it

* Use UnityEvents for ease of use

* Remove noisy log

* remove blank spaces

* Process request receives the client endpoint

* use consistent name for parameters

* Remove white space

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

* Comment non obvious property

* Don't break transports

* Documentation and image

* Code formatting

* removed privates

* Added Range attribute

* Rename ActiveDiscoverySecondInterval

* Revised NetworkDiscovery doc

* Swapped field order (Cosmetics)

* Added ScriptTemplate

* Update ProjectSettings/ProjectVersion.txt

* Updated ScriptTemplate

* Updated xml comment and ScriptTemplate

* Updated ScriptTemplate

* Improve xmldocs

* Improve xmldocs

* Remove leftover comment

* Renamed event

* Moved discovery inside components

* Keep parameter names consistent

* Provide a guide for network discovery

* XML Comments and ScriptTemplate

* Moved Credits

* fixed template

* Removed comment

* removed comment

* xml comments and template

* fixed method name

* fixed method and template

* removed semicolon

* fixed template

* fixed method and template

* fixed template

* fixed template

* Fix copypasta error

* Show error if no url is available

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

* breaking: Make server uri mandatory

BREAKING CHANGE: Make the server uri method mandatory in transports

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

* Assigned Icons

* Assigned Icons

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

* Move objects to subscene in client

* Remove OnStartClient

* Rewritten with static dictionary

* Updated doc

* renamed image

* Replaced image

* fixed image name

* Changed to short-circuit return in Update

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

* Added null check

* Removed commented line

* Update Assets/Mirror/Components/NetworkSceneChecker.cs

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

* Moved initializer to declaration

* Removed [Scene, SerializeField]

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

* remove commented code

* copied comment from removed field

* made it full public

* Added FormerlySerializedAs

* Added HideInInspector

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

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

* Removed commented lines

* Made them floats

* Tooltips

* Added comments

* Update NetworkTransformBase.cs

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

* Added comments

* move comment

* add comment

* Changed to loadingSceneAsync check

* Update Assets/Mirror/Runtime/NetworkManager.cs

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

* Updated ChangeLog

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

* new docs

* adjust CheckForHookFunction to expect two hooks

* update example

* update example

* update example

* update test

* update example

* SyncVar.set: store value in oldValue variable

* SyncVar.set: pass old value to hook too

* TODO

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

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

* add test for GameObject type

* fix comment

* SyncVar deserialize: set value before calling hook

* add TODO

* SyncVar.set: set value before calling hook

* replace tests

* GO test

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

* syntax

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

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

* update comment

* update comment

* update comment

* shorter

* comment, TODO

* put oldValue code into separate cases again

* fix SyncVarEqual comparing the same two __goNetId values

* get rid of tmpValue

* fix weaver tests

* remove TODO

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

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

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

* add comment

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

* initialState test for an if

* !initialstate

* getting there

* closer

* works but incompatible stack heights message

* better comments

* better

* not needed

* syntax

* rename

* incompatible stack height fixed

* update comment

* remove first todo

* SAVE PROGRESS

* compare go/ni too

* whitespace

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

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

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

* applied suggested changes

* adjusted empty method check

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

formatting

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

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

fix #1346
Broken in PR #1206

alternative to #1351

* fix nre

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

* reimported nsubstitute dlls

* Only include as part of test assemblies
2019-12-23 14:51:20 -06:00
Paul Pacheco
9f2dca56f0 refactor: compatibility with 2019.3 2019-12-23 13:40:16 -06:00
Paul Pacheco
a800064d8a test: Test packing floats into ushort 2019-12-23 12:52:39 -06:00
Paul Pacheco
ad2bee222a test: removing pair test 2019-12-23 12:25:14 -06:00
Paul Pacheco
f12fa2f51a test: Simplify tests 2019-12-23 12:21:50 -06:00
Paul Pacheco
60cfea0d14 test: copyto tests 2019-12-23 11:37:53 -06:00
MrGadget
abd2af9001 Made loadingSceneAsync public (#1349) 2019-12-23 08:32:15 +01:00
MrGadget
58f573729f Allow Custom Scene Handling (#1329) 2019-12-22 19:59:35 +01:00
MichalPetryka
3d94f4b6c7 Remove trailing whitespace and fix encodings (#1342) 2019-12-22 11:58:52 +01:00
vis2k
307f129bd7 remove trailing whitespaces 2019-12-22 11:13:18 +01:00
vis2k
4c6805cf86 update comment 2019-12-22 11:12:45 +01:00
vis2k
45a8e6367b Telepathy updated to latest version 2019-12-22 09:33:26 +01:00
vis2k
93d3511266 add comment 2019-12-22 09:24:31 +01:00
vis2k
54498403a5
fix: potential exploits / out of sync issues where clients with different transports might see different game states because of different max message sizes when using FallbackTransport. (#1331) 2019-12-22 09:18:51 +01:00
Paul Pacheco
9926472d98
feat: Chat example (#1305)
* Add chat example

* Update Assets/Mirror/Examples/Chat/Scripts/ChatNetworkManager.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/Player.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/ChatWindow.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/Player.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/Player.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/Player.cs

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

* Change package to chat

* Update Assets/Mirror/Examples/Chat/Scripts/ChatNetworkManager.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/ChatNetworkManager.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/ChatNetworkManager.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/ChatNetworkManager.cs

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

* Update Assets/Mirror/Examples/Chat/Scripts/ChatWindow.cs

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

* UI FIxes

* Lighting

* Fixed ScrollView

* Fixed username assignment

* removed commented line

* Layout refinement

* remove empty lines

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

* fixed which element was enabled

* Strip unprintable characters

* reverted ASCI filter

Co-authored-by: MrGadget <chris@clevertech.net>
2019-12-21 13:22:02 -06:00
vis2k
b3127beb89 fix: MultiplexTransport GetMaxMessageSize NullReferenceException when called on server. And fixes potential exploits / out of sync issues where clients with different transports might see different game states because of different max message sizes. (#1332) 2019-12-21 08:09:33 -06:00
MrGadget
9a0127aadc Remove usings (#1327)
* Removed extraneous usings

* Removed extraneous usings

* Removed extraneous usings
2019-12-21 10:26:22 +01:00
MrGadget
ea4fc93159 Add return to ClientConnect(Uri) (#1326) 2019-12-20 21:46:52 +01:00
MrGadget
0e705d4aa0 Remove all extraneous blank lines (#1325) 2019-12-20 21:46:16 +01:00
MrGadget
b479b8ee51 Put the return back in ClientConnect (#1324) 2019-12-20 21:16:45 +01:00
MrGadget
1be4de3f63 Adjust cameras for server view (#1318) 2019-12-19 08:06:00 +01:00
Chris Langsenkamp
a5d369f96c fixed comment 2019-12-18 16:53:09 -05:00
MrGadget
abf5cdcf36 feat: Add roomPlayer parameter to OnRoomServerCreateGamePlayer (#1317)
* Adds roomPlayer parameter to OnRoomServerCreateGamePlayer

* fixed template
2019-12-17 10:16:14 +01:00
vis2k
6fb8a32f5b
remove NetworkIdentityEditor because it's not really needed after removing local player authority (which required special checks to only show one option at a time). Also fixes #1289 (#1309) 2019-12-16 08:50:47 +01:00
Paul Pacheco
a2e17108b6 display the whole connection 2019-12-13 08:03:15 -06:00
Paul Pacheco
dbe064393a
fix: error when there are no network behaviors (#1303)
Use the lazy network behaviors cache everywhere, so this can never be null
2019-12-12 20:28:31 -06:00
MrGadget
ca4ff9b6b2 Fix Delayed Disconnect (#1302) 2019-12-12 20:02:23 -06:00
MrGadget
3684033f6a Restore clientAuthorityCallback (#1298) 2019-12-12 19:31:11 -06:00
MrGadget
c6678eb3f1 No point in calling this here (#1300) 2019-12-12 19:30:40 -06:00
MrGadget
a18d6b5eaa Unused field (#1299) 2019-12-12 19:11:20 -06:00
Paul Pacheco
e4a701ed4e feat: fallback transport now supports uri (#1296) 2019-12-10 17:13:32 +01:00
Paul Pacheco
c206f9ad97 feat: Multiplex based on url (#1295)
If the multiplex transport receives an url for connection,
try all the underlying transports until it finds a suitable one

For example,  let's say you configure a multiplex transport with telepathy and websocket,  if you try:
```cs
NetworkManager.StartClient("tcp4://host:port");
```

then the multiplex transport will use telepathy.

if we pass:
```cs
NetworkManager.StartClient("ws://host:port");
```

then the multiplex transport will select websocket
2019-12-10 07:36:42 +01:00
Paul Pacheco
7865a840b6 feat: LLAPI transport can receive port from uri (#1294)
* feat: LLAPI transport can receive port from uri

* Refactor to use the original method
2019-12-09 21:52:50 +01:00
Paul Pacheco
c8ad118d50 feat: websocket can receive port in url (#1287)
* feat: websocket can now receive port and encryption setting from uri

* check for ws or wss scheme
2019-12-09 16:52:39 +01:00
Paul Pacheco
06946cf37f feat: telepathy can now receive port from uri (#1284)
* feat: telepathy can receive port from uri

* Use configured port if the url does not have one

* use tcp4 as scheme for telepathy

* don't change default port

* Update TelepathyTransport.cs

* Update TelepathyTransport.cs
2019-12-08 19:48:26 +01:00
vis2k
e766f7b511 Update list server header text 2019-12-08 09:08:35 +01:00
Tor Esa Vestergaard
a0425e4e84 fix: Draw SyncVar label for Unity objects inline (#1291)
* SyncVar label for Unity objects is now drawn inline instead of on the next line

* Made syncVarIndicatorContent static

Did it since there's no need to have that allocation per editor instance.
2019-12-07 14:29:14 +01:00
MrGadget
c8aabd246a Fix Inspector Refresh (#1290) 2019-12-07 09:20:31 +01:00
MrGadget
7843b12f7f Make startPositionIndex public (#1288)
* Make startPositionIndex public

startPositions is a public list, so the index should be too.

* Update NetworkManager.cs

* Update NetworkManager.cs
2019-12-06 06:55:38 +01:00
Paul Pacheco
f9d34d5863
feat: Mirror now supports message inheritance (#1286)
* test: child messages should serialize parent's data

* feat: Mirror now supports inheritance for messages
2019-12-05 11:21:42 -06:00
Paul Pacheco
7e4023246b fix: Don't set asset id for scene objects
Fixes this warning:
```
SetDynamicAssetId object already has an assetId <68fb15ce5f2e7eb44a8ac123d853b91a>
UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:LogError(Object)
Mirror.NetworkIdentity:set_assetId(Guid) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\NetworkIdentity.cs:165)
Mirror.ClientScene:ApplySpawnPayload(NetworkIdentity, SpawnMessage) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\ClientScene.cs:470)
Mirror.ClientScene:OnSpawn(SpawnMessage) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\ClientScene.cs:529)
Mirror.<>c__DisplayClass35_0`1:<RegisterHandler>b__0(NetworkConnection, SpawnMessage) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\NetworkClient.cs:400)
Mirror.<>c__DisplayClass7_0`1:<MessageHandler>b__0(NetworkMessage) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\MessagePacker.cs:163)
Mirror.NetworkConnection:InvokeHandler(Int32, NetworkReader, Int32) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\NetworkConnection.cs:271)
Mirror.NetworkConnection:TransportReceive(ArraySegment`1, Int32) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\NetworkConnection.cs:325)
Mirror.NetworkClient:OnDataReceived(ArraySegment`1, Int32) (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\NetworkClient.cs:149)
UnityEngine.Events.InvokableCall`2:Invoke(ArraySegment`1, Int32)
UnityEngine.Events.UnityEvent`2:Invoke(ArraySegment`1, Int32)
Mirror.TelepathyTransport:ProcessClientMessage() (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\Transport\TelepathyTransport.cs:79)
Mirror.TelepathyTransport:LateUpdate() (at D:\Unity\Projects\TestUmmorpg\Assets\uMMORPG\Plugins\Mirror\Runtime\Transport\TelepathyTransport.cs:106)
```
2019-12-05 05:15:43 -06:00
Paul Pacheco
00b51364ac improve warning message 2019-12-05 05:12:44 -06:00
Paul Pacheco
7c3622cfae feat: new way to connect using uri (#1279)
* feat: new way to connect using uri

* set the host name when starting by url
2019-12-05 11:57:24 +01:00
Paul Pacheco
0e1bc8110f
fix: ReplacePlayer now calls OnStartLocalPlayer (#1280)
* fix: ReplacePlayer now calls OnStartLocalPlayer

fixes #962

* fix: replace player cannot steal another player
2019-12-04 14:54:50 -06:00
MrGadget
b23cfc739d Fix ServerChangeScene (#1281) 2019-12-04 14:49:33 -06:00
MrGadget
555d0d9cc0 Add true for keepAuthority (#1277) 2019-12-03 08:49:11 +01:00
vis2k
13e2dcccd9
breaking: SyncList.Callback passes old and new entries instead of only passing one entry which is sometimes the old, sometimes the new entry. This is more consistent and it's very useful to know the previous value in a hook for OP_SET and OP_DIRTY. (#1273)
* feature: SyncList.Callback passes old and new entries instead of only passing one entry which is sometimes the old, sometimes the new entry. This is more consistent and it's very useful to know the previous value in a hook for OP_SET and OP_DIRTY.

* update tests

* update docs
2019-12-03 08:35:41 +01:00
vis2k
97e838b932 SyncDictionary: remove unused OP_DIRTY operations 2019-12-03 08:17:55 +01:00
vis2k
4b9dcbf9f4 SyncList: remove unused OP_DIRTY operations 2019-12-03 08:16:44 +01:00
vis2k
c5079ada6c
remove SyncDictionary.Dirty function because it's unused and we removed it for SyncList already too (#1272) 2019-12-03 08:12:12 +01:00
Paul Pacheco
ad724fe23c fix: replace player (remove authority by default) (#1261)
* fix: remove authority properly in replace player

This is an alternative to #1257

Now the user can pass a parameter to ReplacePlayer to indicate
that the old player should remain attached to the connection.

Note the user could simply pass true and then call RemoveAuthority themselves
which was the approach in #1257

Personally I would prefer #1257,  but this is at least better than
master because authority is removed the proper way.

* Update NetworkServer.cs
2019-12-03 08:11:39 +01:00
MrGadget
8012972b0e Removed non-implemented overload (#1276) 2019-12-03 08:01:52 +01:00
vis2k
1eae07fa2c remove unused SyncList.Dirty function 2019-12-02 11:50:18 +01:00
MrGadget
7898dc2347 Restore Room Player Authority (#1267) 2019-12-02 08:48:27 +01:00
MrGadget
1ed12dba79 Require Network Transform (#1269) 2019-12-02 06:41:07 +01:00
MrGadget
42a4a7cb00 Add Return button to Room Manager (#1268)
* Add Return button to Room Manager

* Simplified GUI

* Fixed height
2019-12-02 06:40:55 +01:00
MrGadget
cddef72b41 Move scoring to PlayerScore (#1266) 2019-12-02 06:40:11 +01:00
MrGadget
e6f8f3c46f Improve Turn and Jump (#1265) 2019-12-02 06:39:56 +01:00
Paul Pacheco
8899d20712
fix: Additive scene can respawn objects safely (#1270)
* fix: Additive scene can respawn objects safely

* Update Assets/Mirror/Runtime/NetworkIdentity.cs

Co-Authored-By: MrGadget <chris@clevertech.net>
2019-12-01 22:48:08 -06:00
Paul Pacheco
c753089478
fix: don't call OnStartLocalPlayer twice (#1263) 2019-12-01 09:55:57 -06:00
Paul Pacheco
4d373c5071
fix: call OnStartClient only once in room (#1264) 2019-12-01 09:55:38 -06:00
Paul Pacheco
2195fee81c fix: set authority when replacing the player 2019-11-30 07:09:06 -06:00
Paul Pacheco
c58ead16a6 Remove unused method 2019-11-29 23:10:25 -06:00