Commit Graph

6366 Commits

Author SHA1 Message Date
MrGadget
3c4f465a70 Examples - Lighting 2024-07-29 18:09:04 -04:00
MrGadget
302e2ae82b
fix(Example Prefabs): Reset for 2019 (#3880) 2024-07-29 08:59:54 -04:00
MrGadget
f3924c44f9
fix(PlayerTest Example): Compatible with 2019 (#3879)
* Terrain 2019

* Lighting

* Baked Lighting

* Lighting color

* Terrain Data
2024-07-29 01:12:28 -04:00
MrGadget
1d851719c2
fix(Examples): Restored example scenes to 2019 compatibility (#3878) 2024-07-28 20:55:20 -04:00
MrGadget
483fd28517 fix(Example Prefabs): Reset sendIntervalMultiplier to 1 2024-07-28 08:12:34 -04:00
mischa
9913194d06 Benchmarks: reset send interval multipliers back to 1, otherwise it'll give misleading results 2024-07-28 11:16:58 +02:00
mischa
6e82a47479 NetworkTransformReliable: remove unused 'lastClientCount' 2024-07-27 14:04:04 +02:00
mischa
da12015aca NetworkServer/Client Broadcast: consistent syntax 2024-07-27 10:10:38 +02:00
mischa
0c213fbce4 NetworkClient/Server Broadcast: make this easier to read 2024-07-27 10:03:20 +02:00
MrGadget
bb552f8a54 fix(NetworkManager): offlineSceneLoadDelaySeconds -> offlineSceneLoadDelay and Range 0-60 2024-07-26 16:21:41 -04:00
mischa
bc9329a825
feature: NetworkManager gentle offline scene transition after disconnect. allows studios to show a 'Connection Lost!' message for a few seconds before entering a potentially minute long black screen scene load (#3875)
Co-authored-by: mischa <info@noobtuts.com>
2024-07-26 15:19:02 -04:00
mischa
d4ee07694b Revert "Edgegap Plugin: switch to Package Manager dependency (#3845)"
This reverts commit 890f4e6c0b.
2024-07-25 21:12:36 +02:00
mischa
890f4e6c0b
Edgegap Plugin: switch to Package Manager dependency (#3845)
* remove Hosting/Edgegap

* pull in the plugin via package manager

* 1.0.7

---------

Co-authored-by: mischa <info@noobtuts.com>
2024-07-25 10:52:53 +02:00
mischa
e9c3548124 Revert "Benchmark: visRange 999 + NT Reliable"
This reverts commit 3f82e7cd11.
2024-07-24 18:25:51 +02:00
MrGadget
e65c54ef91 fix: Tank Prefabs and Controllers restore compressRotation 2024-07-24 08:22:43 -04:00
MrGadget
7587423401 fix(TankTheftAuto): Removed old Canvas UI 2024-07-23 12:51:19 -04:00
mischa
3f82e7cd11 Benchmark: visRange 999 + NT Reliable 2024-07-23 17:18:12 +02:00
mischa
ff66acf6e4
NetworkReader/Writer: all types of collections are now encoded via count-offsetting (null=0, []=1) for consistency and to prepare for VarUInt compression (this way we won't need zig zag VarInt) (#3869)
* better comments about count offsetting

* NetworkReader/Writer: all types of collections are now encoded via count-offsetting (null=0, []=1) for consistency and to prepare for VarUInt compression (this way we won't need zig zag VarInt)

---------

Co-authored-by: mischa <info@noobtuts.com>
2024-07-23 17:15:26 +02:00
MrGadget
9d9d294f5c fixed broken tests 2024-07-21 19:52:09 -04:00
MrGadget
93b4820c03 fix(Tanks): NT bufferResetMultiplier 5 -> 3 2024-07-21 15:05:00 -04:00
JesusLuvsYooh
d1a4b33370
chore(CI): Old code removed from NetworkTransformUnreliable (#3867)
* NetworkTransformUnreliable, removed old code.

* NetworkTransformUnreliable, removed old code.

Missed some, sneaky bugger.

* NetworkTransformUnreliable, tests updated (badly).

Needs looking over.
2024-07-21 18:51:27 +02:00
MrGadget
2bb1dc5792 fix(Tanks): Updated Tanks Example
- Send Rate 30
- NT Multiplier 3
2024-07-21 11:30:44 -04:00
Richard Possnett
8e6a157560
feat(SimpleWebTransport): Allow https URI scheme (#3850) 2024-07-21 10:36:34 -04:00
mischa
3073b87e63 Examples/Benchmark: always show NetworkStatistics 2024-07-21 10:13:19 +02:00
mischa
796a5dce6d Revert "Examples/Benchmark: always show bandwidth"
This reverts commit 8144275ec6.
2024-07-21 10:13:07 +02:00
mischa
8144275ec6 Examples/Benchmark: always show bandwidth 2024-07-21 10:11:17 +02:00
MrGadget
56d1575354 fix(MultiplexTransportTest): Can't use lambda discard parameters 2024-07-20 17:45:24 -04:00
MrGadget
bcd47d546e fix(FadeInOut): Now based on duration and framerate independent 2024-07-20 17:27:24 -04:00
MrGadget
bd75cf0345 TurretUIPrefab -> turretUIPrefab 2024-07-20 14:23:24 -04:00
MrGadget
8b6bc74629 fix(MultiplexTransportTest): Update tests to use OnServerConnectedWithAddress 2024-07-20 13:07:35 -04:00
MrGadget
1968ef9f9b fix(Transports): Suppress obsolete warnings 2024-07-20 13:05:53 -04:00
MrGadget
86d8bc912c fix(NetworkServer): Suppress obsolete warnings 2024-07-20 12:45:21 -04:00
MrGadget
350d9cd5b2 feat(Transport): Obsoloete OnServerConnected
Use OnServerConnectedWithAddress and pass the remote client address instead
- This allows Mirror to cache the remote client address to save round-trip calls to the transport
2024-07-20 11:17:02 -04:00
MrGadget
9dcc6a0953 fix(Telepathy): Implement OnServerConnectedWithAddress 2024-07-20 11:05:21 -04:00
MrGadget
237942274d fix(SimpleWebTransport): Implement OnServerConnectedWithAddress 2024-07-20 10:53:06 -04:00
MrGadget
c82ae00ef7 fix(AutoLANClientController): Use FindAnyObjectByType 2024-07-20 10:30:20 -04:00
JesusLuvsYooh
02e9b4fc0b
New Example, auto LAN connect + client acting as controller for server. (#3863) 2024-07-17 09:58:44 +02:00
mischa
19f23cb8f6 NetworkIdentitySerializationTests: fix SerializeClient_NotInitial_NotDirty test setup so it actually would serialize if dirty 2024-07-15 14:06:34 +02:00
mischa
394ba40310 NetworkIdentitySerialization: Reset() function for convenience 2024-07-15 12:57:51 +02:00
mischa
04e875ab6c NetworkIdentity.DirtyMasks: syntax simplified further 2024-07-14 10:18:36 +02:00
mischa
f730b61cb9 NetworkIdentity.DirtyMasks: syntax simplified 2024-07-14 10:14:09 +02:00
mischa
54b78251ad Tanks demo fixes 2024-07-13 19:01:15 +02:00
mischa
794c9a2350 fix comment 2024-07-12 21:10:16 +02:00
MrGadget
9a37b26f27 fix: fixed tests 2024-07-11 15:10:44 -04:00
MrGadget
4c22f878c7 fix(LatencySimulation): Implement OnServerConnectedWithAddress 2024-07-11 11:33:50 -04:00
MrGadget
938cdc6c2a fix(EncryptionTransport): Implement OnServerConnectedWithAddress 2024-07-11 11:32:50 -04:00
MrGadget
aad625decc fix(MiddlewareTransport): Implement OnServerConnectedWithAddress 2024-07-11 11:27:16 -04:00
MrGadget
8f6b01b0f4 fix(MemoryTransport): Implemented OnServerConnectedWithAddress 2024-07-11 11:26:00 -04:00
MrGadget
ac3007fd1b fix(MultiplexTransport) Implement OnServerConnectedWithAddress 2024-07-11 09:53:55 -04:00
MrGadget
76d83aa998 fix(NetworkServer): RemoveTransportHandlers OnTransportConnectedWithAddress 2024-07-11 09:53:54 -04:00
MrGadget
105607014f
feat(Examples): Overhauled Examples (#3858)
* Added Player, Flyer, Tank Controllers

* and the meta

* Removed NT from Tank prefab

* Additive Scenes Player with new controller

* Updated Examples

* fixed healthbar

* Updated TankController

* Fixed MouseSteer

* Updated PlayerController

* Updated PlayerController

* Tank and Controller Updates

* Updated Tanks Navmesh

* Updated Tanks example

* Fixed Tank Model

* Tanks fixed

* Removed commented code

* Controller updates

* Projectile and Controller updates

* Tanks Navmesh

* Fixed navmesh

* Updated Projectile destroyAfter

* Update NavMesh

* Fixed spawn point

* TTA Scene Update

* TTA NavMesh

* TTA Tank Prefab

* Added Tank SeatedPlayer and turretAcceleration

* TTA Scene update

* TTA Scene higher walls

* Improved Projectile and PlayerTest

* Default Mouse Lock on

* IgnoreCollision

* Updated prefabs

* Latest

* Cleanup

* Disable sync position, Compress Rotation, and animation
- Animation is interfering with the controls and the child NT sync.

* Cleanup Reset on Disconnect

* Removed dead scripts
2024-07-11 14:32:59 +02:00
James Frowen
4a4ef9707c
fix(SimpleWebTransport): increasing default handshake max size (#3857)
Some browsers will send handshake larger than 3k, setting default limit to 16k so user dont have to worry about changing it
2024-07-08 16:38:54 -04:00
MrGadget
2d2e270868
feat(Transport): Added OnServerConnectedWithAddress (#3855)
* feat(Transport): Added OnServerConnectedWithAddress
Transports can now pass the remote client address directly to NetworkServer Action
- Facliltates ThreadedTransport passing the client Address
- KCP Transport Updated accordingly
- Original OnServerConnected passes ServerGetClientAddress result to NetworkConnectionToClient consrtuctor
- Saves round trips back to the transport for client address whenever it's needed

* formatting

* Simplified

* Cleanup
2024-07-05 11:58:43 +02:00
MrGadget
561e33ffea fix(NetworkConnectionToClient): DestroyOwnedObjects use RemovePlayerForConnection for scene objects instead of UnSpawn
- Scene objects need to stay alive for everyone else by default
- Users can choose to Unspawn for themselves.
2024-07-04 10:31:45 -04:00
MrGadget
49ad787d7c
fix(NetworkBehaviour): Skip OnValidate in Editor Play Mode (#3852)
OnValidate only runs in Editor, but can get invoked in PlayMode if user fiddles with the inspector or by other Unity activities.
2024-06-29 21:09:50 +02:00
JesusLuvsYooh
873a9d0067
fix(TopDownShooter): Adjusted slanted climbable wall colliders (#3849)
* fix(TopDownShooter): Adjusted slanted climbable wall colliders

* Removed previous colliders.
2024-06-27 09:40:22 +02:00
MrGadget
dc19e2889d Revert "fix(AdditiveLevels): Text instead of TMP"
This reverts commit 648fb0a489.
2024-06-26 21:29:27 -04:00
MrGadget
648fb0a489 fix(AdditiveLevels): Text instead of TMP 2024-06-26 21:19:34 -04:00
MrGadget
f5089f14bc fix(TopDownShooter): Use FindAnyObjectByType for Unity 2022.2+ 2024-06-26 20:44:29 -04:00
MrGadget
d147e8da0e fix(SimpleWebTransport): Default setup for reverse proxy 2024-06-26 19:33:20 -04:00
MrGadget
7dd1deb6d7 fix(NetworkBehaviour): Check for non-zero netId before sending Cmd 2024-06-26 18:03:35 -04:00
mischa
4ec2f098d3
fix: #3832 NetworkServer.Destroy now doesn't call ResetState for prefabs, fixes isServer flag always being false in OnDestroy (#3848)
* repro

* NetworkServer.Destroy(): refactor to split scene vs. prefab cases more obviously

* fix: #3832 NetworkServer.Destroy now doesn't call ResetState for prefabs, fixes isServer flag always being false in OnDestroy

* fix the runtime test

* Revert "repro"

This reverts commit 3a5a33e8e4.

---------

Co-authored-by: mischa <info@noobtuts.com>
2024-06-26 19:53:55 +02:00
JesusLuvsYooh
ebf3041c96
feat: MOVING Platforms to Couch Coop Example (#3847)
* Added MOVING Platforms to Couch Coop Example

No constant network sync, they just resync at start and end destination.

* Optional Platform features.
2024-06-26 10:32:13 +02:00
Robin Rolf
7f33e1bfe0
feat: NetworkRuntimeProfiler (#3846)
* feat: NetworkRuntimeProfiler

Adds a simple text-based network profiler

* Remove unused avg
2024-06-26 10:30:22 +02:00
JesusLuvsYooh
c1fdf50400
feat: Example, TopDown Shooter. (#3836)
* Shooter topdown checkpoint 1

* Topdown shooter, checkpoint 2

* Topdown checkpoint 3

* Topdown Checkpoint 4

* Topdown shooter checkpoint 5

* Port added to UI Canvas Prefab. (#3835)

* Topdown Shooter, checkpoint 6, Alpha.

Almost finished, as of now, whats left is:
Tidy up
Comment code
Add server defines
Test server-only

* Topdown shooter, server defines and server only tested. Checkpoint 7.

Remaining: Tidy up and Comment code

* TopDown Shooter finished?

* Topdown shooter, fixed PNG size.

* Topdown Shooter tidyup.

Removed unused materials, that remained from 3D version of game.
3D sound ranges and volumes adjusted.

* Topdown Shooter, audio conversion and compression.

* TopDownShooter, note about OnStartServer player list.

Added line space to separate some code for easier reading.
2024-06-20 10:47:55 +02:00
Robin Rolf
6d7c808d6a
fix: new GUID for bouncycastle dll meta file (#3844) 2024-06-19 10:35:40 -04:00
Robin Rolf
736762f20f
fix: Namespace BouncyCastle lib to avoid conflicts (#3843)
This uses our fork https://github.com/MirrorNetworking/bc-csharp with the Mirror. prefix
dll is generated by CI: https://github.com/MirrorNetworking/bc-csharp/actions/runs/9582807523 so updating in the future should be as "easy" as rebasing on bouncycastle release branches, fixing any naming via search&replace and making a release to trigger CI
2024-06-19 09:53:02 -04:00
JesusLuvsYooh
bcda1dcb27
Velocity Iterations made public in NM, Drag on Cube prefabs. (#3842) 2024-06-19 12:03:28 +02:00
MrGadget
71e21089ae
fix(Hosting): Remove Mirror.Hosting AsmDef as not needed (#3841) 2024-06-19 09:48:43 +02:00
MrGadget
1e7c6f0a94 style(Welcome): No stacktrace for Mirror welcome message 2024-06-18 15:01:54 -04:00
mischa
f712fabd04
Edgegap Pplugin updated to 1.0.1 (#3834) 2024-06-17 21:48:42 +02:00
JesusLuvsYooh
80f58e71ef
Port added to UI Canvas Prefab. (#3835) 2024-06-13 11:58:22 +02:00
MrGadget
fe93f4e870 fix(Extensions): GetPositionAndRotation now excluded for 2022.0 or newer
- Some patch versions of 2021.3 don't have it, some do...this is safer.
- Works as expected in 2021.3.39 and 2022.3.32
2024-06-12 14:00:58 -04:00
mischa
440b61429b fix(LatencySimulation): SimulateSend now supports all channels. Fixes a bug where projects with multiple channels could not simulate latency on non-default channels 2024-06-11 16:43:48 +02:00
mischa
ceab39284c syntax 2024-06-11 16:41:01 +02:00
mischa
993983036a LatencySimulation: one Queue for all channels to simplify code and support more channels later 2024-06-11 16:32:29 +02:00
mischa
9d0a72da9c LatencySimulation: QueuedMessage strongly typed constructor 2024-06-11 16:19:42 +02:00
MrGadget
7c9e8e917c
feat(NetworkServer): Improves RemovePlayerForConnectsion (#3833)
* feat(NetworkServer): Improves RemovePlayerForConnectsion
- Replaces `destroyServerObject` with `RemovePlayerOptions`
- Option to keep the player object on server and clients
- Obsoletes old method by calling new method with correct option
- Examples and Tests updated

* Fixed mistake

* Default to DoNothing

* Fixed comments

* Requested Changes

* Fixed gammar
2024-06-10 15:24:31 +02:00
MrGadget
3650a033e3 Added Empty AddComponent attribute to Example scripts 2024-06-06 19:50:24 -04:00
MrGadget
c54db0b7a1 Assigned Mirror icon to Common scripts 2024-06-06 19:49:00 -04:00
MrGadget
2999e1276a Deleted other PlayerCamera scripts in favor of Common 2024-06-06 19:47:41 -04:00
MrGadget
da3cb68459 Updated Example Player Prefabs to use Common PlayerCamera 2024-06-06 19:46:52 -04:00
MrGadget
5c84ab4830 Moved PlayerCamera to Common 2024-06-06 19:45:20 -04:00
miwarnec
76ff1cf008 PredictionUtils: Destroy Source is now optional 2024-05-30 15:04:33 +02:00
MrGadget
7f073c6b61 Renamed WeaverSyncVarTests.SyncVarsCanBeArray 2024-05-25 09:03:09 -04:00
mischa
9d7fccaac4
fix(LatencySimulation): implement PortTransport since almost all underlying Transports are PortTransports (#3830)
* fix(LatencySimulation): implement PortTransport since almost all underlying Transports are PortTransports

* Update Assets/Mirror/Transports/Latency/LatencySimulation.cs

Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>

* Update Assets/Mirror/Transports/Latency/LatencySimulation.cs

Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>

---------

Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2024-05-24 16:57:34 +02:00
MrGadget
09efc1cbe8 fix(NetworkManager): OnGUI DEBUG only 2024-05-20 13:46:54 -04:00
MrGadget
f39521d109
fix(WeaverAssembler): Silence Obsolete Warning (#3826)
We have #3630 for this...silence warning until Unity tells us what to use instead.
2024-05-20 12:29:52 +02:00
MrGadget
c573936486 fix(NetworkRoomManager): Hashset instead of List 2024-05-19 07:53:33 -04:00
mischa
1721b5601b KcpTransport: reuse IPEndPoint.PrettyAddress extension 2024-05-19 11:12:03 +02:00
mischa
4482c7910b Extensions: IPEndPoint.PrettyAddress 2024-05-19 11:12:03 +02:00
mischa
6b2d0731a4 Telepathy: moved GetClientAddress exception handling from Transport into Telepathy itself 2024-05-19 11:12:03 +02:00
mischa
a9db03c46f KcpTransport: simplify double ternary for readability 2024-05-19 11:12:03 +02:00
JesusLuvsYooh
c62d7e5c07
Fancy camera for couch coop example, and player list. (#3821) 2024-05-14 18:10:28 +07:00
mischa
e35be5fbd1
fix(NetworkConnection): batches are now properly returned to NetworkWriterPool before destroying the connection (#3815) 2024-05-04 20:55:30 +08:00
mischa
0d36c30206 fix(NetworkTransform): Awake now also configures syncInterval and syncScale, in case OnValidate wasn't called 2024-04-29 12:22:37 +08:00
mischa
63e91919a4 fix(Kcp): V1.41 [2024-04-28]
- fix: KcpHeader is now parsed safely, handling attackers potentially sending values out of enum range
- fix: KcpClient RawSend may throw ConnectionRefused SocketException when OnDisconnected calls SendDisconnect(), which is fine
- fix: less scary cookie message and better explanation
2024-04-28 12:09:32 +08:00
MrGadget
e757dfaac7
fix(NetworkServer): Spawn for owner client even when Force Hidden (#3809)
Interest Management does this in Rebuild, but without IM involved, we need to handle this case in RebuildObserversDefault
2024-04-24 11:57:44 +08:00
MrGadget
2769c50895
fix(SyncObjectCollectionField): Pretty SyncCollection Name (#3808)
* fix(SyncObjectCollectionField): Pretty SyncCollection Name

* char typo

* backward compatibility

* Use RegEx.Replace
2024-04-24 11:57:16 +08:00
mischa
b07d583aff syntax 2024-04-24 11:53:25 +08:00