Commit Graph

5250 Commits

Author SHA1 Message Date
vis2k
4fb628702e DotNetCompatibility: removed unused functions 2018-11-03 10:22:24 +01:00
vis2k
0758364b45 Removed unused ClientScene.GetStringForAssetId function 2018-11-03 10:09:49 +01:00
vis2k
a2a0fd3bf4 ClientScene.PrepareToSpawnSceneObjects simplified 2018-11-03 10:06:33 +01:00
Paul Pacheco
a5adb450ad
Users no longer need to remove channels
Command, RPC and events methods now have channel attributes.  Users no longer need to remove the channel when migrating to mirror.
2018-11-01 15:09:18 -05:00
Paul Pacheco
724ebc00d8 Allow for sending message on unreliable channels (#98)
* Allow for sending message on unreliable channels

* Add channels to commands and rpcs

* Revert file formatting

* make channel id default parameter
2018-11-01 19:07:57 +01:00
Paul Pacheco
0a16b189c6 Use standard C# events instead of one callback (#100)
* Use standard C# events instead of one callback

* Fix tests

* Trigger new build

* Trigger new build

* Remove blank line
2018-11-01 10:12:26 +01:00
Paul Pacheco
9068803ec9 Fix #91 editor crash (#96)
When we try to generate a reader for a class that references itself,  we have infinite recursion and editor crash

This PR stops the infinite recursion and displays an error instead just like with writers
2018-10-26 09:47:17 +02:00
Paul Pacheco
eb40109a53 Modularize network time (#84)
* Modularize network time

* Renamed function for clarity

* Remove redundant class name

* Renamed method for clarity
2018-10-23 18:34:20 +02:00
Paul Pacheco
64cea34338 Fix typo 2018-10-23 11:20:34 -05:00
Paul Pacheco
39ad76cad1 Fix #75, determine the RPC target (#93)
* Fix issue #75, determining the command target

If you add the same networkbehavior twice to a gameobject,  only the commands in the first one work.

This can also happen if you have a base class,  you inherit it,  and you add more than one of the inherited classes to the same gameobject.

* Improve error message

* Fix issue #75 for all RPC methods

* Fix formatting consistency

* Fix build,  replace logDebug with Debug

* Use new NetworkBehaviours cache

* Use FindIndex instead than for loop

* No need for local variable

* use int instead of byte for simplicity

* component index are int now
2018-10-23 18:17:42 +02:00
Paul Pacheco
1795cf8c2c Use foreach instead of old style for (#95) 2018-10-23 16:44:32 +02:00
Paul Pacheco
a785f0d391 Ensure network behavior cache consistency (#94)
It was assumed that CacheBehaviours was called to set m_NetworkBehaviours

With this change, the dependency is no longer there,  the behaviours are simply cached the first time they are used
2018-10-23 16:21:54 +02:00
Paul Pacheco
f13dc5bf60 Fix build, there were still some logDebug around 2018-10-23 07:06:09 -05:00
vis2k
59f6b1c3f1
LogFilter simplified: Warning/Error are shown all the time, Debug messages depend on LogFilter.logDebug (#73)
* LogFilter.logError removed. Errors are now always logged.

* LogFilter.logWarning removed. Warnings are now always logged.

* LogFilter levels replaced with a simple 'logDebug' boolean. NetworkManager uses 'ShowDebugMessages' instead of LogLevel now.

* LogFilter.logDebug renamed to .Debug
2018-10-23 10:14:20 +02:00
Paul Pacheco
d5713ec218 Fix warning
Fix "SetDynamicAssetId object already has an assetId <xxxx>" that gets spammed in editor
2018-10-21 18:33:56 -05:00
Paul Pacheco
3816a69578 default channel should be reliable fragmented sequenced (#65) 2018-10-21 11:38:55 +02:00
vis2k
acc34e5fb3 Reverted InvalidDataException because it breaks Unity projects that use .net subset. 2018-10-20 15:44:28 +02:00
Paul Pacheco
8dd20b103c Keep consistent switch formatting 2018-10-18 08:54:27 -05:00
Paul Pacheco
a8891520c9 Simplify a few switches 2018-10-18 08:49:44 -05:00
Paul Pacheco
11a6d84ffa Use if for readability instead of switch with 2 cases 2018-10-18 08:43:31 -05:00
Paul Pacheco
c68be045fe Add commit message to description 2018-10-17 19:36:09 -05:00
Paul Pacheco
86b9eba27a Don't make a new build for .gitignore files 2018-10-17 19:28:36 -05:00
Paul Pacheco
bd45350892 Don't make a new release when we change docs 2018-10-17 19:27:43 -05:00
Paul Pacheco
35b27dbd03 Remove generated file 2018-10-17 19:25:26 -05:00
Paul Pacheco
9f1823e059 Change builds description 2018-10-17 19:18:50 -05:00
vis2k
103a3e254a Added comment 2018-10-17 22:09:50 +02:00
Paul Pacheco
f10e1c3c7c Simplify internal message processing (#83)
* Simplify internal message processing

* improve explanation
2018-10-17 22:08:18 +02:00
vis2k
4860e365fb
NetworkHash128 replaced with Guid, with the NetworkIdentity serializa… (#81)
* NetworkHash128 replaced with Guid, with the NetworkIdentity serialization trick (by storing it as string, but still sending it as Guid over the network, hence 16 instead of 64 bytes bandwidth)

* Remove test message again

* Avoid 'new Guid("")'
2018-10-17 09:46:24 +02:00
Paul Pacheco
470afff4e3 Throw an appropriate exception (#82) 2018-10-17 09:28:11 +02:00
Paul Pacheco
a49000a39f Simplify conditional 2018-10-16 23:00:22 -05:00
Paul Pacheco
9f51c51330 Ignore reports from MFractor 2018-10-16 22:34:34 -05:00
Paul Pacheco
118e961847 Alpha should not change 2018-10-16 22:25:14 -05:00
Paul Pacheco
27e8d381ab Connections cannot be null, remove redundant check 2018-10-16 11:36:30 -05:00
Paul Pacheco
37445979da Replace NetworkInstanceId with uint (#70)
* Replace NetworkInstanceId with uint

* Rename variable for clarity

* rename variable for clarity

* Assign 0 instead of new uint()

* Align variables

* Rename variable for clarity

* Renamed variable for clarity

* Fix opcode issue with uint netIdField
2018-10-16 15:30:46 +02:00
vis2k
f2d4fac170 NetworkIdentity.observers returns m_Observers directly without creating a new ReadOnlyCollection every time. This was a performance nightmare because we looped through observers all the time in NetworkServer.SendToObservers/SendToReady via observers[i], observers.Count, etc. Furthermore we don't even worry about ReadOnlyCollections in any other place. The user could clear and break all other collections all the time too. 2018-10-16 14:08:14 +02:00
vis2k
a754eaac4f NetworkIdentity: replaced m_Observers and m_ObserverConnections lists with m_Observers Dictionary. 2018-10-16 13:15:08 +02:00
vis2k
998029fa6e
Update README.md 2018-10-16 10:48:06 +02:00
vis2k
f4f6bc1b16 Removed unused NetworkScene.DumpAllClientObjects function 2018-10-15 20:43:49 +02:00
vis2k
84ce1c5c82 Removed unused NetworkIdentity.AddNetworkId function 2018-10-15 20:39:25 +02:00
vis2k
b2cc89e3eb Removed unused NetworkMessage.MaxMessageSize 2018-10-15 20:31:24 +02:00
vis2k
137b2a153d Removed unused message types 2018-10-15 20:29:49 +02:00
Paul Pacheco
855e724304 Remove redundant null checks. (#74)
* Remove redundant null checks.

Enforce that connections are added in AddConnection and removed with RemoveConnection.
Since connection cannot be null anymore,  remove redundant null checks.

* Add connection after we added connection id
2018-10-15 18:21:30 +02:00
vis2k
e572417fbb NetworkServer.connections list replaced with a Dictionary to remove all this 'fill list with null values until connectionId' magic 2018-10-15 15:53:27 +02:00
vis2k
4c86d8b457 NetworkManagerHUDEditor removed because there is no value in it. NetworkManagerHUD is used for the first 5 minutes in development until people create their own NetworkManager / UI. It doesn't need an Editor script that does all kinds of magic. 2018-10-15 14:22:47 +02:00
vis2k
0123f1dd6f ForceSceneId uses uint instead of int to avoid unnecessary casting 2018-10-14 16:34:03 +02:00
vis2k
7569357f8e Fixed grammar 2018-10-14 16:33:24 +02:00
Paul Pacheco
2d208bcae0 use uint, no need for a special NetworkSceneId (#62) 2018-10-14 16:31:50 +02:00
vis2k
5449c94f21 NetworkScenePostProcess: removed unnecessary 'UnityEditor.' syntax 2018-10-14 16:28:32 +02:00
vis2k
c16564c8fe NetworkHash128: added comment that replacing it would break everything 2018-10-14 16:28:32 +02:00
Paul Pacheco
fc4803df3e Merge branch 'mirror' of github.com:vis2k/Mirror into mirror 2018-10-14 08:28:51 -05:00