mischa
d64c5fb61b
fix PrepareToSpawnSceneObjects tests after recent fix
2023-07-06 16:45:03 +08:00
mischa
a463d48681
NetworkTime: more readable ping interval check
2023-07-06 16:33:08 +08:00
James Frowen
08fa0269de
fix : #3538 calling unspawn on scene objects in DestroyOwnedObjects ( #3542 )
...
* fix: calling unspawn on scene objects in DestroyOwnedObjects
fixes: https://github.com/MirrorNetworking/Mirror/issues/3538
* Update NetworkConnectionToClient.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-07-06 09:59:28 +02:00
James Frowen
51c7162af7
fix: PrepareToSpawnSceneObjects checks netId instead of activeSelf [ fixes : #3541 ] ( #3543 )
...
* fix: fixing PrepareToSpawnSceneObjects not added enabled objects
fixes: https://github.com/MirrorNetworking/Mirror/issues/3541
Should be safe to remove this extra check complete, it is safe to add spawned object to `spawnableObjects`. For now this just changes it to NetId to ensure that the object really is unspawned and not just enabled
* Update NetworkClient.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-07-06 09:56:23 +02:00
mischa
110625b102
feature: Lag Compensation V1 ( #3534 )
...
* Lag Compensation Example based on Snapshot Interpolation example
* rename scene
* increase latency
* update scripts
* instructions
* better
* rename to rollback
* rename scene
* rebase
* rename to LagComp
* collider, onclick
* CmdClick
* flash color
* cleanup
* LagCompensationSettings
* caputre in interval
* comment
* syntax
* catpure, comp
* ns
* stuff
* source
* syntax
* naming
* history and draw history
* adjust
* cleanups
* tests
* sample and tests
* simplify tests
* out interpolation factor t
* tostring
* show result duration
* sample and interpolate
* fix
* logs
* better gizmos
* store size
* EstimateTime
* demo: estimate time
* estimation tests
* perf: Queue instead of List
* comment
* syntax
* cleaner
* cleanup
* syntax
* comment
* DrawGizmo(s)
* syntax
* extrapolation tests
* fix insert and test
* extrapolation
* fix extrapolation out values
* comments
* TODO
* TODO
2023-07-05 12:08:20 +02:00
mischa
4972b8004a
Tests: fix failing NetworkManagerTests because DeeplyTested test didn't register the GameObject for cleanup
2023-06-29 19:56:17 +08:00
mischa
13e07f5603
NetworkTime: rttVar renamed to rttVariance for consistency with old Mirror versions. makes it easier to upgrade.
2023-06-27 21:40:45 +08:00
mischa
37bbd7eb3d
fix: SnapshotInterpolation.Insert() now has a bufferLimit to avoid ever growing snapshot buffers on extremely low-fps clients
2023-06-27 19:20:03 +08:00
mischa
60936f0646
perf: NetworkTransformBase SortedLists now allocate with a default capacity to avoid early resizing & allocations
2023-06-27 18:57:05 +08:00
mischa
97313bd295
feature: ConnectionQuality Heuristic + Callback + GUI ( #3526 )
...
* ConnectionQuality.cs
* NetworkClient.ConnectionQuality with virtual NetworkManager calculation
* NetworkPingDisplay displays ConnectionQuality
* Tanks: adjust NetworkPingDisplay size
* NetworkManager: provide simple version too
* color coding
* extension
* virtual claculate
* on changed hook
* better heuristic
* syntax
* remove comment
* naming
* update in interval
* tweaking
* enable log
* naming
* color
* log message
* comment
* syntax
* explanations
2023-06-26 05:50:03 +02:00
mischa
deaf53a9bb
NetworkTime: reintroduce Round Trip Time Variance to prepare for ConnectionQuality
2023-06-25 10:33:23 +08:00
mischa
db83a4cca2
NetworkClient: initialBufferTime for debugging, comparisons, and to prepare for ConnectionQuality
2023-06-25 10:27:14 +08:00
mischa
00f20bca2e
Tanks demo: always show time interpolation GUI for easier debugging
2023-06-25 10:20:59 +08:00
mischa
c599fb616e
fix: NetworkClient TimeInterpolation: add 'current' bufferTimeMultiplier field to not overwrite the initial SnapshotSettings.bufferTimeMultiplier. Allows us to reset bufferTimeMultiplier in InitTimeInterpolation and prepares for ConnectionQuality.
2023-06-25 10:03:08 +08:00
mischa
16efc7eedf
Disable the failing tests for now, so at least the project compiles without Weaver errors
2023-06-24 20:35:26 +08:00
mischa
2b6212b088
fix: Weaver SyncVarAttributeAccessReplacer now detects modifying [SyncVar] in another assembly and logs an error, instead of silently failing at runtime ( #3525 )
2023-06-24 12:34:59 +08:00
mischa
6465ac5394
Weaver: SyncVarAccessReplacer: pass Logging
2023-06-24 12:34:59 +08:00
mischa
19065acb19
Weaver: SyncVarAccessReplacer: syntax & comments to make it more obvious
2023-06-24 12:34:59 +08:00
mischa
6fb0b33188
fix: Weaver now weaves NetworkBehavious in nested type definitions ( #3524 )
...
* test for deeply nested weaving
* fix
2023-06-23 14:11:34 +02:00
mischa
d5664ab202
feature: Weaver adds 'bool Weaved()' to each NetworkBehaviour, which can be checked at runtime #3523
2023-06-23 20:07:28 +08:00
mischa
1d7af1b750
Tests: remove unused 'using'
2023-06-23 10:01:41 +08:00
mischa
d1719c1e7b
fix: tests work on Unity 2022.2+ [imer]
2023-06-22 23:48:26 +08:00
mischa
73c9990f03
comments
2023-06-20 19:58:46 +08:00
mischa
4d127ad370
naming
2023-06-20 19:58:46 +08:00
mischa
c687bdd24a
Weaver ILPostProcessorAssemblyResolver: use GetFileNameWithoutExtension
2023-06-20 19:58:46 +08:00
mischa
8cb58d73e8
syntax
2023-06-20 19:58:46 +08:00
mischa
74bbd295d5
readonly
2023-06-20 19:58:46 +08:00
mischa
69d4d251e2
comments
2023-06-20 19:58:46 +08:00
mischa
eb33dfd40e
perf: Weaver ILPostProcessorAssemblyResolver FindFile searches dllname / exename in one iteration & without Linq
2023-06-20 19:58:46 +08:00
mischa
1cc888f287
Weaver: ILPostProcessorAssemblyResolver FindFile comments
2023-06-20 19:58:46 +08:00
mischa
5b7d9560c0
Weaver: ILPostProcessorAssemblyResolver caches FindFile for a 50x improvement in TypeReference.Resolve(), and a 22x improvement in total Weaver time for large projects
2023-06-20 19:58:46 +08:00
mischa
c960377911
Weaver: ILPostProcessorAssemblyResolver comment
2023-06-20 19:58:46 +08:00
mischa
443d1541d1
perf: Weaver ILPostProcessorAssemblyResolver FindFile caches exeName, dllName for ~0.1ms speedup per call
2023-06-20 19:58:46 +08:00
mischa
97f3d2dff4
Weaver ILPostProcessorAssemblyResolver: FindFile uses string name parameter directly
2023-06-20 19:58:46 +08:00
mischa
c6be031783
perf: Weaver ILPostProcessorAssemblyResolver uses ConcurrentDictionary to avoid multithreading locks
2023-06-20 19:58:46 +08:00
mischa
c5ad884145
RigidbodyPhysics demo: disable 'onlySyncOnChange' until #3519 is fixed
2023-06-20 19:53:40 +08:00
mischa
8be961bfb5
Examples/VR link
2023-06-20 16:17:53 +08:00
mischa
d0edb2d7a4
Unbatcher: Unity 2019 fix
2023-06-16 17:25:50 +08:00
mischa
fc561918a8
remove leftover comment
2023-06-16 17:19:03 +08:00
mischa
13fd7211e0
fix: Batching VarInt size header added to fix custom serializated NetworkMessages with size mismatch corrupting the next message in a batch ( #3516 )
...
* repro test
* Batcher, Unbatcher VarInt size prefix
* NetworkServer/Client adjusted
* add check
* fix tests
* Batcher: rename headersize
* NetworkMessages: MaxContentSize adjusted
* max size calculations adjusted
* fix tests
* Batcher.MaxMessageOverhead
* naming
2023-06-16 10:58:54 +02:00
mischa
6ac67b9b5f
feature: NetworkRigidbody Benchmark demo
2023-06-16 12:26:59 +08:00
mischa
b49f5b39de
fix: NetworkRigidbody/2D now uses .target's Rigidbody and supports child Rigidbodies
2023-06-16 10:42:39 +08:00
mischa
bbf1140fc9
NetworkRigidbody: MovePosition overwrite comments
2023-06-16 10:31:49 +08:00
mischa
84b408e377
feature: NetworkMessageId <> Type lookup and log function for debugging ( #3515 )
...
* feature: NetworkMessageId <> Type lookup and log function for debugging
* better to do in NC/NS
2023-06-16 03:48:08 +02:00
mischa
581d16eb75
Unbatcher: simplify GetNextMessage
2023-06-15 19:37:53 +08:00
mischa
54f6abb6ce
feature: VarInt size prediction
2023-06-15 16:35:18 +08:00
mischa
cdf5edae0d
syntax
2023-06-15 15:45:00 +08:00
mischa
321b68b2bc
NetworkMessages: keep GetId<T> for convenience
2023-06-15 15:44:06 +08:00
mischa
4cb2e75d4f
syntax
2023-06-15 15:36:19 +08:00
mischa
86064080f9
breaking: NetworkTransform renamed to NetworkTransformUnreliable for consistency
2023-06-15 15:27:33 +08:00
mischa
2c075c94ad
wat
2023-06-15 15:10:38 +08:00
mischa
128da59c76
remove duplicate NetworkRigidbody scripts
2023-06-15 15:09:03 +08:00
mischa
627db15d4a
NetworkTransform: moved all related scripts into one NetworkTransform folder
2023-06-14 17:57:28 +08:00
mischa
7e0e02f5d8
perf: NetworkRigidbody Reliable/Unreliable via NetworkTransform for smooth interpolation ( #3510 )
...
* RB
* fix clientauthority warning
* reset iskinematic and add a player to try local sync
* delete red ball, fix
* spawns multiplayer
* sc
* textmesh
* better
* better
* reset latency sim
* NetworkRigidbody folder
* syntax
* fix rese tflags
* 2D
2023-06-14 11:24:18 +02:00
mischa
8cd13328ca
fix: NetworkBehaviourInspector 'had no target' warning
2023-06-14 17:21:45 +08:00
mischa
e5be10ff71
NetworkTransform: show Gizmos as WriteCube instead of solid Cube for easier visual debugging
2023-06-13 12:55:07 +08:00
mischa
f72d35987a
Rigidbody Example: gray background so we can see overlays easier
2023-06-13 11:20:30 +08:00
mischa
62503601af
Rigidbody Example: show time interpolation GUI
2023-06-13 11:20:30 +08:00
mischa
f89b9cbfae
RigidbodyPhysics Example: fix missing component warnings
2023-06-13 11:20:30 +08:00
mischa
dbe8a37bcd
fix: Weaver runtime fuse to ensure weaving succeeded before starting Server/Client ( #3509 )
...
* fix: Weaver runtime fuse to ensure weaving succeeded before starting Server/Client (#3506 )
* WeaverFuse Core/ and Tests/
* runtime safety checks
* weaver
* cleanups
* remove log
* comments updated
* WeaverTypes variant
* update comment
* comment updated
* more accurate errors
* host check
* better
* better logs
* redundabt
* fix 2019 support
2023-06-12 17:57:58 +02:00
mischa
f5fa952937
Snapshot Interpolation Example: README
2023-06-12 23:43:19 +08:00
mischa
278f44673d
CompilationFinishedHook: add explanation
2023-06-11 16:52:34 +09:00
mischa
30437a934f
fix NetworkClientTests for Unity 2019
2023-06-11 16:42:31 +08:00
mischa
afd275ad87
NetworkMessages.WrapHandler: improve log message to make it easier to search for 'Disconnect' in logs
2023-06-11 16:10:00 +09:00
mischa
e58e47fc47
fix: NetworkClient unbatcher is now reset in host mode connect as well [credit: BigBoxVR]
2023-06-11 08:27:16 +02:00
mischa
1e199caab0
Unbatcher: readonly fields
2023-06-11 09:06:07 +09:00
mischa
6be1a25338
fix: KcpServer.Stop now clears connections so they aren't carried over to the next session
2023-06-10 21:33:55 +09:00
James Frowen
bd66be3d1c
fix: fixing use of new c# in 2020 ( #3507 )
...
* fix: fixing use of new c# in 2020
* fixing doc comment
2023-06-09 14:09:16 -04:00
James Frowen
176a2d3b66
feat: adding option to get Ip behind reverse proxy ( #3505 )
...
* feat: adding option to get Ip behind reverse proxy
When running behind a reverse proxy the IP endpoints will be that of the reverse proxy, not the client.
Reverse proxies like Nginx set the ip if the host in a http header, the server can read this header during the handshake and store it so it knows the IP address of the client
* feat: adding method to get request
allows users to get other headers if they need to
* caching remote address
* fix and simplify
* inlining extra var
* string interpolation
* changing request log message to info
* adding GET back in inside ReadToEndForHandshake
* updating log message
* max split 2
* returning ipv4 address
* checking if address is ipv4
* adding using
* fixing maping
2023-06-09 09:50:41 -04:00
mischa
220937cc4a
MIRROR_79_OR_NEWER
2023-06-08 10:38:16 +09:00
mischa
aaaa62e9c9
kcp2k V1.36 [2023-06-08]
...
- fix : #49 KcpPeer.RawInput message size check now considers cookie as well
- kcp.cs cleanups
2023-06-08 10:31:26 +09:00
Robin Rolf
37d762c2c3
fix: Test prefab loading might not cause log ( #3502 )
2023-06-07 19:04:09 +08:00
Robin Rolf
f11a7b44fe
fix: failing NetworkClientTests ( #3500 )
2023-06-07 17:21:51 +08:00
JesusLuvsYooh
f0005f0021
Changed default NT BRM to 3 ( #3496 )
...
5 (the previous default) covers really bad pings in return for noticeable delay. However, not every game should have this as their default. 1 being almost instant movement for minimal smoothing (could be best for VR and other uses), from testing 3 is a nice balanced result.
2023-06-05 06:18:54 +02:00
JesusLuvsYooh
1b6bb1e28a
NT-UR Example presets ( #3494 )
...
Tested on tanks example, parent and child turret.
Scenarios were regular localhost, then latency sim defaults (200ping, 2% loss etc) and bad connection (500 ping, 5% loss etc), along with personal experience of the settings on NT thee 3 presets should cover most peoples scenarios.
2023-06-01 12:37:13 +02:00
mischa
f84a385212
fix: Disallow Child-NetworkIdentities in Scene objects ( #3492 )
...
* fix: Disallow Child-NetworkIdentities in Scene objects
* better
2023-05-29 12:05:19 +08:00
mischa
d74e61298e
fix : #3485 Weaver now skips protected fields (Credit: James) ( #3493 )
...
* fix : #3485 Weaver now skips protected fields
* simplify
2023-05-27 06:36:05 +02:00
mischa
22134470ed
fix Unit tests
2023-05-27 11:47:22 +08:00
mischa
3619be494a
feature: allow NetworkBehaviour components in children. solves #2276 ( #3486 )
...
* feature: allow child NetworkBehaviour components in children
* Tanks demo: move Turret NetworkTransform to child
* NT TODO
* RequireInParents NI
* NetworkAnimatore allow in children
* call base onvalidate
* Add OnValidate to Script Template
* fix for pre-2020.3 Unity
* MirrorTest: CreateNetworked with NetworkBehaviour in children
* Tests: child networkbehaviours
---------
Co-authored-by: MrGadget1024 <9826063+MrGadget1024@users.noreply.github.com>
2023-05-27 08:25:53 +08:00
mischa
26e83ce645
fix: NetworkBehaviour SendRPCInternal error message fixed. This can happen if an RPC is called after shutting down the server - which doesn't mean that it was called on a client.
2023-05-25 11:16:06 +08:00
JesusLuvsYooh
e0ae55a971
Update NetworkRoomPlayer.cs ( #3490 )
2023-05-19 19:51:50 +08:00
JesusLuvsYooh
4c6e4e2bd0
NetworkTransform tooltips need use-case explanations. ( #3481 )
...
* Removed obsolete comment.
* Tooltip explanations 1
2023-05-19 19:51:27 +08:00
mischa
bf5cd97e69
fix : #3482 Weaver Generic 'out' parameter IL2CPP build failures [credit: JamesDev]
2023-05-14 11:47:05 +08:00
MrGadget1024
22675f40cf
NetworkTransform - syntax
2023-05-09 03:01:14 -04:00
MrGadget1024
b7bf117378
NetworkTransform - syntax
2023-05-09 02:59:35 -04:00
ninjakickja
337a0affee
fix #3478 - Changed sendIntervalCounter increment logic ( #3480 )
...
Changed sendIntervalCounter logic to fix the issue where if sendIntervalMultiplier = 1, NT will send every frame instead of every send interval.
This is due to sendIntervalCounter being initialised to 1 instead of 0, after NT has triggered it's send.
2023-05-09 06:57:09 +02:00
Louis Bailleau
8a0accc60b
breaking: NetworkDiscovery ServerFoundUnityEvent now supports custom ServerResponse types
2023-05-08 03:59:15 +02:00
MrGadget1024
09496652b7
fix(SimpleWebTransport): fixed ClientUseDefaultPort default
2023-05-04 17:07:55 -04:00
James Frowen
f200b907ac
feat(SimpleWebTransport): adding option to set server and client port different ( #3477 )
...
* feat(SimpleWebTransport): adding option to set server and client port different
When running websocket server behind reverse proxy client should connect via port 80 or 443. the reverse proxy should then forward requests to the ServerPort running on localhost.
* Update Assets/Mirror/Transports/SimpleWeb/SimpleWebTransport.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-05-04 04:59:47 +02:00
mischa
0f41aa7a3e
NetworkBehaviour SendCommandInternal: shorter logs
2023-04-29 10:52:07 +09:00
mischa
4193b5401e
fix : #3409 - NetworkTime now always uses unscaled time as double. Forgot to push the commit for the previous commit's PR
2023-04-24 20:09:53 +08:00
mischa
754a98fd71
fix : #3409 NetworkTime now always uses ( #3475 )
2023-04-22 05:12:31 +02:00
mischa
58e7915952
Tests: NetworkBehaviourMock component with call counters for reuse. Tests don't need to manually define call counters anymore.
2023-04-21 14:34:22 +08:00
mischa
b43d920572
Tests: NetworkIdentity tests split into multiple files
2023-04-21 14:14:30 +08:00
mischa
005d8384f4
Tests: NetworkClient namespace changed
2023-04-21 14:03:07 +08:00
mischa
20cf67342d
Tests: NetworkTransform namespace for grouping in test runner
2023-04-21 14:01:33 +08:00
mischa
b33d3bb924
Tests: NetworkReaderWriter namespace for grouping in test runner
2023-04-21 14:00:57 +08:00
mischa
ce0b8eabd9
Tests: NetworkMessages namespace for grouping in test runner
2023-04-21 13:58:51 +08:00
mischa
38dd2ae960
Tests: NetworkManager namespace for grouping in test runner
2023-04-21 13:55:30 +08:00
mischa
1012ca0dd6
Tests: NetworkServer namespace for grouping in test runner
2023-04-21 13:54:43 +08:00