Zac North
5aa7148c60
Use message queue instead of SemaphoreSlim - SemaphoreSlim was severely bottlenecking performance ( #839 )
2019-04-23 10:23:47 +02:00
Coburn
2695da4e2a
LLAPI Transport not available on WSA/UWP (v2) ( #838 )
...
* LLAPITransport will not be available for WSA/UWP applications with this patch. (LLAPI never was to begin with).
* v2 of the not allowing LLAPI Transport to be available on UWP/WSA games
2019-04-22 11:15:17 +02:00
Coburn
7058de2364
LLAPITransport will not be available for WSA/UWP applications with this patch. (LLAPI never was to begin with). ( #837 )
2019-04-22 09:34:36 +02:00
vis2k
92a9903b0d
Disable sceneid assignment message
2019-04-22 09:23:36 +02:00
Zac North
2d682b5fad
fix(websocket): #829 fix InvalidOperationException with wss:// ( #830 )
...
* fix(wss): Use a queue on the server to avoid "InvalidOperationException: Invalid nested call."
* Remove unnecessary "private"
Co-Authored-By: Katori <znorth@gmail.com>
* Remove unnecessary "private"
Co-Authored-By: Katori <znorth@gmail.com>
* Update Server.cs
* comment: explain what is going on here
* comments: better comment
* Move queue into WebSocketImplementation instead of Server-specific
* Remove unused variables in Server
* Use a SemaphoreSlim instead of queue system
2019-04-21 10:33:07 +02:00
vis2k
52625923b2
fix: Mono.CecilX namespace to work around Unity 2019 Cecil namespace collision ( #832 )
...
* fix: Mono.CecilX namespace to work around Unity 2019 Cecil namespace collision
* rename dlls
* change asmdef guid for conflict with hlapi
* rename assemblynames too
* fix: invalid scene id in 2019.1 by ignoring prefabs in NetworkScenePostProcess
* rename projects too
2019-04-20 21:01:10 +02:00
vis2k
203a823b19
fix: invalid scene id in 2019.1 by ignoring prefabs in NetworkScenePostProcess
2019-04-20 20:39:44 +02:00
vis2k
b20c0d91f7
syntax
2019-04-19 09:28:39 +02:00
MrGadget
bcd3424c0e
refactor: Simplify GetStartPosition ( #828 )
...
* Simplify GetStartPosition
- Early out if startPositions.Count = 0
- Reduces the normal returns to single LOC each
- Only resets startPositionIndex if it reaches int.MaxValue
- Uses modulo and increment-after against count to pick round robin index
- Eliminates unnecessary last return that could never be reached
* Per Paul's request
2019-04-18 15:20:08 -05:00
MrGadget
8ebda0fa21
fix: Respect Player Prefab Position & Rotation ( #825 )
...
Respect Player Prefab Position & Rotation
2019-04-18 07:13:38 -05:00
vis2k
e8d9d852e3
NetworkIdentity.observers dictionary is always created, but always empty on clients. Gets rid of all null checks.
2019-04-17 23:04:52 +02:00
vis2k
aa4a91bcce
remove whitespace
2019-04-17 22:42:56 +02:00
Paul Pacheco
b4c9c6fdc8
refactor: consolidate prefab and spawn handlers ( #817 )
2019-04-17 16:00:03 +02:00
vis2k
b5ff43ada3
feat: SyncList.FindIndex added ( #823 )
2019-04-17 06:18:23 -05:00
MichalPetryka
2327498b31
Remove vars ( #819 )
2019-04-16 12:38:48 +02:00
MichalPetryka
6eaea267d5
Remove useless out ( #820 )
2019-04-16 12:38:22 +02:00
MichalPetryka
3b5fa051c1
Inline out ( #818 )
2019-04-16 12:38:01 +02:00
vis2k
3452915a4e
NetworkConnection.TransportReceive: don't try to invoke if unpacking failed.
2019-04-15 15:08:55 +02:00
Paul Pacheco
1352334747
fix: non ready connections should not observe objects
2019-04-15 07:32:41 -05:00
Paul Pacheco
e69c0976a2
refactor: Simplify nested if
2019-04-15 06:30:41 -05:00
Paul Pacheco
97f8bf6b26
refactor: use null propagation operator
2019-04-14 11:04:23 -05:00
Paul Pacheco
af0f79be14
refactor: removed unreachable if
2019-04-14 10:17:29 -05:00
Paul Pacheco
7417b68671
fix: check event prefix
2019-04-14 10:06:36 -05:00
Paul Pacheco
2598389036
refactor: use null propagation operator
2019-04-14 07:58:53 -05:00
MichalPetryka
fea09a6b74
Improve SceneID generation via RNGCryptoServiceProvider ( #812 )
...
* Improve SceneID generation
* Update NetworkIdentity.cs
2019-04-14 14:17:25 +02:00
vis2k
b9247a78b6
out syntax
2019-04-14 12:43:05 +02:00
vis2k
f3f0ef299e
clear sceneid if it was a duplicate
2019-04-14 12:40:16 +02:00
vis2k
3ebd4981a4
only use generated sceneId if not duplicate
2019-04-14 12:39:48 +02:00
MrGadget
705194023c
Remove all "private" ( #807 )
2019-04-14 09:43:03 +02:00
MrGadget
08cc3236a1
Fix Additive Example Scene Lighting ( #808 )
2019-04-13 21:41:46 +02:00
c6burns
3a50ca6352
fix: added new read/write symbol params ( #806 )
...
fix: added new read/write symbol params
2019-04-12 16:00:46 -05:00
vis2k
27b7e250a0
perf: OnDeserializeSafely without GC ( #804 )
2019-04-12 08:38:23 -05:00
vis2k
19a9995501
remove whitespace
2019-04-12 15:31:05 +02:00
vis2k
a82367b2c6
remove caching to keep it simple for now
2019-04-12 11:57:47 +02:00
vis2k
80d72c804d
remove empty whitespace
2019-04-12 11:55:22 +02:00
vis2k
7e79dfad38
disable 'Weaving succeeded' message now that everything works
2019-04-12 11:55:09 +02:00
c6burns
3ba546e133
fix : #791 corrected assembly paths passed to weaver ( #803 )
...
* fixed incorrect assembly paths
* Update CompilationFinishedHook.cs
2019-04-12 11:52:35 +02:00
vis2k
2eb247a6d2
Cecil StackOverflow fix without breaking API ( https://github.com/vis2k/cecil/commits/TypeReference_Resolve_StackOverFlow_Fix )
2019-04-12 11:23:44 +02:00
vis2k
0f1522229e
remove empty whitespace
2019-04-11 22:09:25 +02:00
vis2k
eb4b2f40c5
Weaver.ImportCorLibType: avoid MixIn exception when calling ImportReference with a null type. Log the type that we failed to resolve instead.
2019-04-11 22:09:14 +02:00
vis2k
286983a8f8
Fix StackOverflowException for NetStandard in Mono.Cecil by using https://github.com/vis2k/cecil/tree/TypeReference_Resolve_StackOverFlow_Fix
2019-04-11 21:57:14 +02:00
vis2k
9f67b4761f
Rebuild Cecil 0.10.3 DLLs from scratch via net4_0_Release mode
2019-04-11 20:10:43 +02:00
c6burns
9d4b96975e
minimum changeset for cecil 0.10.3 ( #795 )
...
* added fixes for cecil 0.10.3
* added missing meta
* fix typo'd asmresolver
* accept paul's suggestion, on behalf of c6
Co-Authored-By: rodolphito <rodol@rivalrebels.com>
2019-04-11 19:59:37 +02:00
vis2k
ec5ceb1149
update CompilationFinishedHook comment about cecil bug
2019-04-11 18:52:41 +02:00
Chris Langsenkamp
d46334d2eb
Add meta files for dummies
2019-04-11 11:22:40 -05:00
MrGadget
534a5a5834
Dummy NetworkAnimatorEditor
2019-04-11 07:22:01 -05:00
MrGadget
1dfd2dad6e
Dummy SyncListInitializer.cs
2019-04-11 07:21:44 -05:00
MrGadget
75e4f159e5
fix: Dummy file for SyncListStructProcessor.cs ( #798 )
...
Dummy file for SyncListStructProcessor.cs to avoid breaking compilation
2019-04-11 06:55:35 -05:00
MrGadget
b7e94d9e5a
Fixed typo
2019-04-11 07:44:41 -04:00
vis2k
bdbbed8b9d
Remove OwnerMessage to fix a bug where isLocalPlayer isn't reliable when checking it in Start() because OwnerMessage was received after SpawnFinished message ( #793 )
2019-04-11 00:01:31 +02:00
Paul Pacheco
97e9ac2483
perf: Reduce enum bandwidth ( #794 )
...
enums are serialized according to their size.
if enum extend byte, they use 1 byte
if enum extend short, they use 2 bytes
if enum extend int, they are varinted
if enum extend long, they are varinted
So on average, most enums will take 1 byte. Previously they always required 4 bytes
2019-04-11 00:01:09 +02:00
Paul Pacheco
f00c8e5e62
refactor: simplify enum logic a bit
2019-04-10 16:21:21 -05:00
Paul Pacheco
7b57830e6c
fix : #791 stack overflow in the weaver ( #792 )
...
remove unnecessary manual dispose calls in weaver
2019-04-10 16:58:49 +02:00
vis2k
5c850aa9ca
fix: workaround for #791
2019-04-10 16:03:37 +02:00
MrGadget
531e202bbe
fix: Round Robin Spawning by Hierarchy Order ( #790 )
...
Fixes #724
2019-04-10 12:34:14 +02:00
rodolphito
f46f32df55
Hide this obsoleted thing ( #786 )
2019-04-09 23:38:16 +02:00
MrGadget
69cb0389b0
Fixed ListServer example ( #785 )
...
Added EditorBrowsable(EditorBrowsableState.Never)
2019-04-09 22:02:15 +02:00
MrGadget
fd292e21bc
Obsoleted IsHeadless
...
IsHeadless() was just added in Feb. 2019, so I wouldn't expect wide usage so quickly, but since there have been 3 asset store publishes since then, it should be obsoleted for a bit.
Also made it `isHeadless` camelCase now that it's a property, which made obsoleting it possible.
2019-04-09 10:41:59 -05:00
MrGadget
e33581fa90
Simplify IsHeadless ( #782 )
2019-04-09 14:56:21 +02:00
Paul Pacheco
4644bc4b77
fix: Don't set framerate in host mode
2019-04-09 05:50:02 -05:00
vis2k
a2cc14bd20
fix: update NetworkIdentityEditor FindProperty to renamed variables
2019-04-09 11:40:59 +02:00
rodolphito
9d064c8013
These methods arent used, they should be commented along with the other error generator parts. ( #764 )
...
* These methods arent used, they should be commented along with the other error generator parts.
* Delete the comment
2019-04-09 10:01:57 +02:00
rodolphito
959be9338a
These should have been obsoleted with Paul's Message<T> PR ( #754 )
...
* These should have been obsoleted with Paul's Message<T> PR
* Do what vis says
2019-04-09 10:01:05 +02:00
rodolphito
cc3b4aaa6d
Simplify NetworkIdentity ( #752 )
...
* Simplify NetworkIdentity
* style: variable in separate line
Most of the code keeps the variables and attributes in separate lines.
2019-04-09 10:00:39 +02:00
rodolphito
7762158585
This should be readonly ( #778 )
2019-04-09 09:59:57 +02:00
rodolphito
07e355a3a3
Renamed networkBehaviours to networkBehavioursCache to reduce confusion ( #780 )
2019-04-09 09:56:28 +02:00
rodolphito
68433660ca
Make Weaver variable naming consistent ( #781 )
...
* Rename netViewTmp
* Rename UBehaviourIsServer
* Better name for IsServer
2019-04-09 09:55:56 +02:00
Rodol Phito
98d6e667b0
Added string binary compat test
2019-04-08 17:04:12 -05:00
Rodol Phito
dc0e07a851
Added string truncation test.
2019-04-08 17:04:12 -05:00
rodolphito
ca96e2a03f
Fix issue 763 by only catching while message decoding, and not during handling. ( #767 )
2019-04-08 15:53:45 +02:00
Paul Pacheco
fff765c96b
perf: use bitshift operations instead of division in varint
2019-04-08 06:18:56 -05:00
rodolphito
f0a8b5dea8
feat(telepathy): Split MaxMessageSize to allow setting a different value for client and server ( #749 )
...
* Split MaxMessageSize to allow setting a different value for client and server
* Rename fields to follow naming conventions, use using System;.
2019-04-08 09:53:46 +02:00
rodolphito
e8cae28258
This method isnt actually used anywhere. ( #674 )
2019-04-08 09:52:29 +02:00
vis2k
09a965e5bc
NetworkServer.SpawnObserversForConnection: remove redundant code with local client check. Local client ignores the spawn messages anyway. ( #735 )
2019-04-08 09:50:59 +02:00
rodolphito
7775801625
Follow naming conventions in NetworkBehaviour m_NetIdentity ( #760 )
...
* Follow naming conventions in NetworkBehaviour m_NetIdentity
* Use underscore prefix as per vis' suggestion
* renamed to netIdentityCache
2019-04-08 09:42:47 +02:00
rodolphito
1d3b3fcca9
Remove old comment ( #771 )
2019-04-08 09:18:14 +02:00
rodolphito
59a041810f
Add float binary compatibility tests to NetworkWriter, add tolerance threshold to Ray normal test. ( #772 )
2019-04-08 09:15:29 +02:00
Rodol Phito
4f21275a51
Added one more test to ensure theres no initial garbage when setting length
2019-04-07 20:44:58 -05:00
Rodol Phito
09089f166d
Added another clearer SetLength test, just in case.
2019-04-07 20:44:58 -05:00
Rodol Phito
63a14afdec
Test that SetLength and Position work as expected
2019-04-07 20:44:58 -05:00
rodolphito
72e4e55778
fix: Added WriteBytesAndSize tests, and fixed the function to be pedantic. ( #773 )
2019-04-07 20:11:41 -05:00
rodolphito
99c8f5c356
fix(serialization): Added NetworkWriter tests, found and fixed a bug in Write(Ray). ( #769 )
2019-04-07 16:10:17 -05:00
Paul Pacheco
03c767db6a
fix: Mark weaver as failed if serializing invalid type
2019-04-07 15:45:09 -05:00
rodolphito
f310c61405
tests: Add Endianness testing to NetworkWriter. ( #768 )
2019-04-07 15:17:35 -05:00
rodolphito
269c05bbf6
Updated debug messages in NetworkClient ( #761 )
2019-04-07 21:50:07 +02:00
MrGadget
3846e2f904
Fixed Lobby ( #765 )
2019-04-07 21:48:17 +02:00
vis2k
95d74bae60
remove outdated comment
2019-04-07 19:03:49 +02:00
rodolphito
b7ae7f006c
Simplify network connection clientOwnedObjects ( #758 )
...
* Simplify network connection clientOwnedObjects
* Whoops, missed this null check in NetworkServer. Thanks vis
2019-04-07 18:57:38 +02:00
Paul Pacheco
146988a6bb
style: remove blank lines
2019-04-07 11:49:25 -05:00
Paul Pacheco
6525dba77f
Remove resolved TODO
2019-04-07 11:47:52 -05:00
Paul Pacheco
077be58584
refactor: move SetupWriteFuctions to Writers
2019-04-07 11:44:43 -05:00
rodolphito
765c87e80c
Promote the Warning to an Error, because thats how it was before. Move it above the disconnect, in case Disconnect throws. ( #756 )
2019-04-07 18:41:01 +02:00
rodolphito
ecccb88be5
Follow naming conventions in NetworkBehaviour ( #759 )
2019-04-07 18:39:54 +02:00
rodolphito
f07ad218e0
This should have been readonly from day 1 too ( #757 )
2019-04-07 18:37:41 +02:00
Paul Pacheco
e01b5e4c7d
refactor: Move SetupReaders in Readers class
2019-04-07 11:35:38 -05:00
Paul Pacheco
53b3f435a3
refactor: Move readerFunc to readers class
2019-04-07 11:24:13 -05:00
Paul Pacheco
bf6278a28b
refactor: Move writerFuncs inside Writers.cs
2019-04-07 11:18:32 -05:00
Paul Pacheco
b3ee67ee28
refactor: remove unnecesary function
2019-04-07 11:10:28 -05:00
Paul Pacheco
b3b2673e09
refactor: remove unnecesary caches
2019-04-07 11:05:57 -05:00
MrGadget
48b155f785
Update LocalClient.cs
...
Corrected version
2019-04-07 04:44:10 -04:00
rodolphito
d3e3cb6a54
This should have been readonly from day 1 ( #751 )
2019-04-07 01:20:55 +02:00
rodolphito
f99466fa88
Remove a bunch of internals, it can be private. ( #748 )
2019-04-07 00:28:07 +02:00
c6burns
53be9b6d99
fix(weaver): fix #706 find system dlls ( #729 )
...
* added asmresolver back in
* disambiguate Assembly symbol
* add cache for pipeline asms
* add back precomp refs from pipeline
2019-04-06 22:02:14 +02:00
Paul Pacheco
d3baeeeec3
refactor: simplify writer/reader function lookup
2019-04-06 13:10:01 -05:00
Paul Pacheco
209a59fe73
refactor: make method private
2019-04-06 13:06:02 -05:00
Paul Pacheco
420fef509f
refactor: Move reader and writer generation to separate classes ( #746 )
...
* refactor: Move writer generation to a separate class
* refactor: Move reader generation out of weaver.cs
* refactor: Rename struct code generation functions
2019-04-06 12:53:39 -05:00
Paul Pacheco
b024362c29
refactor: simplify syncobject initialization
2019-04-06 09:12:17 -05:00
Paul Pacheco
06bbf6c3ab
style: use explicit variable types
2019-04-06 08:59:35 -05:00
Paul Pacheco
4aa6b34d90
style: indent for readability
2019-04-06 08:55:34 -05:00
Paul Pacheco
cf9f12d012
refactor: follow naming conventions
2019-04-06 08:46:31 -05:00
Paul Pacheco
5dee4e0c92
refactor: Reduce ProcessMethods cognitive complexity
2019-04-06 08:37:56 -05:00
Paul Pacheco
5a8e42028c
refactor: follow naming convention
2019-04-06 08:22:56 -05:00
Paul Pacheco
683ada6bd1
refactor: remove unused parameter
2019-04-06 08:21:38 -05:00
Paul Pacheco
81c9644a07
style: use explicit type
2019-04-06 08:19:34 -05:00
Paul Pacheco
34f308430b
style: Make class static
2019-04-06 08:19:13 -05:00
Paul Pacheco
c77bd5c59d
style: Make class static
2019-04-06 08:18:35 -05:00
Paul Pacheco
b705b67b39
style: use explicit type
2019-04-06 08:18:04 -05:00
Paul Pacheco
7e50ceaa73
style: use explicit type
2019-04-06 08:17:19 -05:00
Paul Pacheco
0b64616aa7
style: use explicit type
2019-04-06 08:14:56 -05:00
Paul Pacheco
12aa61a00d
style: use explicit type
2019-04-06 08:14:21 -05:00
Paul Pacheco
02bf5a5cf6
style: use explicit type
2019-04-06 08:13:55 -05:00
Paul Pacheco
017b5203c0
refactor: Remove unused nop
2019-04-06 08:13:37 -05:00
Paul Pacheco
0fb0c3671b
style: use explicit type
2019-04-06 08:12:33 -05:00
Paul Pacheco
9e6523e3fb
inline variable declaration
2019-04-06 08:12:11 -05:00
Paul Pacheco
da4e9df534
style: use compound assignment
2019-04-06 08:11:33 -05:00
Paul Pacheco
744910598d
style: use explicit type
2019-04-06 08:11:01 -05:00
Paul Pacheco
a95c796407
style: use explicit type
2019-04-06 08:10:19 -05:00
Paul Pacheco
15bef0bf47
refactor: remove unused nop
2019-04-06 08:09:41 -05:00
Paul Pacheco
f3a0c5763e
refactor: Remove unused parameters
2019-04-06 08:08:18 -05:00
Paul Pacheco
b7b827cebe
refactor: Remove unused parameters
2019-04-06 08:02:50 -05:00
Paul Pacheco
d563ec7a5c
refactor: Remove unused parameter
2019-04-06 07:59:27 -05:00
Paul Pacheco
c466be0f85
style: naming conventions
2019-04-06 07:53:14 -05:00
Paul Pacheco
cadb0cc51c
style: naming conventions
2019-04-06 07:50:58 -05:00
Paul Pacheco
aa75387d60
refactor: made fields readonly
2019-04-06 07:45:02 -05:00
Paul Pacheco
a302c180d3
refactor: naming convention
2019-04-06 07:43:55 -05:00
Paul Pacheco
adb16921c8
style: naming convention
2019-04-06 07:41:57 -05:00
Paul Pacheco
76392a3a4e
refactor: keep consistent namespace
2019-04-06 07:33:47 -05:00
Paul Pacheco
3a7646bab7
refactor: simplify switch
2019-04-06 07:16:36 -05:00
Paul Pacheco
0e285a5645
style: use simplest function available
2019-04-06 07:05:31 -05:00
Paul Pacheco
87e962b52b
style: 2 lines if
2019-04-06 07:01:48 -05:00
Paul Pacheco
eb1654f26e
style: naming convention
2019-04-06 06:56:16 -05:00
Paul Pacheco
314dde7d40
style: naming convention
2019-04-06 06:53:57 -05:00
Paul Pacheco
e8679a0562
refactor: remove pointless if
2019-04-06 06:51:37 -05:00
vis2k
b202473bcf
syntax
2019-04-06 13:33:38 +02:00
vis2k
9d2682eb2a
NetworkServer.SetupLocalPlayerForConnection: removed unused variable
2019-04-06 13:33:18 +02:00
vis2k
512c7ff521
NetworkManager.OnServerConnectInternal: simplify code
2019-04-06 13:18:21 +02:00
vis2k
c5236f5504
ClientScene.DestroyAllClientObjects is now called from ClientScene.Shutdown so that the NetworkManager doesn't have to worry about it
2019-04-06 13:13:32 +02:00
vis2k
a9a2afd06e
Remove NetworkManager.address because it seems pointless ( #744 )
2019-04-06 13:03:25 +02:00
vis2k
dfd729850e
NetworkIdentity.ClearObservers: simplify code
2019-04-06 12:43:22 +02:00
vis2k
dac128f036
NetworkIdentity.SetLocalPlayer: use foreach
2019-04-06 12:42:30 +02:00