From d03713f9e0bd637584f2f03e83f9558a3f0ae732 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Thu, 9 Mar 2023 23:46:53 +0000 Subject: [PATCH 01/16] put RTT in gui --- QSB/Utility/DebugGUI.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/QSB/Utility/DebugGUI.cs b/QSB/Utility/DebugGUI.cs index 4f6acf43..ba90b93f 100644 --- a/QSB/Utility/DebugGUI.cs +++ b/QSB/Utility/DebugGUI.cs @@ -1,4 +1,5 @@ -using QSB.ClientServerStateSync; +using Mirror; +using QSB.ClientServerStateSync; using QSB.EchoesOfTheEye.Ghosts.WorldObjects; using QSB.HUD; using QSB.Player; @@ -8,6 +9,7 @@ using QSB.ShipSync.TransformSync; using QSB.ShipSync.WorldObjects; using QSB.TimeSync; using QSB.WorldSync; +using System; using System.Linq; using UnityEngine; @@ -100,6 +102,7 @@ internal class DebugGUI : MonoBehaviour, IAddComponentOnStart #region Column1 - Server data WriteLine(1, $"FPS : {Mathf.Round(1f / Time.smoothDeltaTime)}"); + WriteLine(1, $"Ping : {Math.Round(NetworkTime.rtt * 1000.0)} ms"); if (!QSBCore.DebugSettings.DrawGui) { return; From 2da9b69b9e49143dee4b110edff9112edd082b20 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Fri, 10 Mar 2023 21:13:17 -0800 Subject: [PATCH 02/16] work if ur inside the ship lol --- QSB/ShipSync/TransformSync/ShipTransformSync.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QSB/ShipSync/TransformSync/ShipTransformSync.cs b/QSB/ShipSync/TransformSync/ShipTransformSync.cs index d125079f..c904a822 100644 --- a/QSB/ShipSync/TransformSync/ShipTransformSync.cs +++ b/QSB/ShipSync/TransformSync/ShipTransformSync.cs @@ -126,7 +126,7 @@ public class ShipTransformSync : SectoredRigidbodySync private bool ShouldMovePlayer => - PlayerState.InZeroG() + (PlayerState.IsInsideShip() || PlayerState.InZeroG()) && Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 100; protected override bool UseInterpolation => !ShouldMovePlayer; } From 245a91bae518d86c03a08a7f2af4ad9cbb8d39c7 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Fri, 10 Mar 2023 21:28:42 -0800 Subject: [PATCH 03/16] do proper ship shit --- .../TransformSync/ShipTransformSync.cs | 39 +++++++++++-------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/QSB/ShipSync/TransformSync/ShipTransformSync.cs b/QSB/ShipSync/TransformSync/ShipTransformSync.cs index c904a822..53dc543b 100644 --- a/QSB/ShipSync/TransformSync/ShipTransformSync.cs +++ b/QSB/ShipSync/TransformSync/ShipTransformSync.cs @@ -1,5 +1,3 @@ -using QSB.HUD; -using QSB.Player; using QSB.Syncs.Sectored.Rigidbodies; using QSB.Utility; using UnityEngine; @@ -67,19 +65,28 @@ public class ShipTransformSync : SectoredRigidbodySync { _lastSetPositionTime = Time.unscaledTime; - var playerBody = Locator.GetPlayerBody(); - var relPos = AttachedTransform.ToRelPos(playerBody.GetPosition()); - var relRot = AttachedTransform.ToRelRot(playerBody.GetRotation()); - - SetPosition(AttachedRigidbody, targetPos); - SetRotation(AttachedRigidbody, targetRot); - - playerBody.SetPosition(AttachedTransform.FromRelPos(relPos)); - playerBody.SetRotation(AttachedTransform.FromRelRot(relRot)); - - if (!Physics.autoSyncTransforms) + if (!PlayerState.IsAttached()) { - Physics.SyncTransforms(); + var playerBody = Locator.GetPlayerBody(); + var relPos = AttachedTransform.ToRelPos(playerBody.GetPosition()); + var relRot = AttachedTransform.ToRelRot(playerBody.GetRotation()); + + SetPosition(AttachedRigidbody, targetPos); + SetRotation(AttachedRigidbody, targetRot); + + playerBody.SetPosition(AttachedTransform.FromRelPos(relPos)); + playerBody.SetRotation(AttachedTransform.FromRelRot(relRot)); + + if (!Physics.autoSyncTransforms) + { + Physics.SyncTransforms(); + } + } + else + { + SetPosition(AttachedRigidbody, targetPos); + SetRotation(AttachedRigidbody, targetRot); + GlobalMessenger.FireEvent("PlayerRepositioned"); } } } @@ -126,7 +133,7 @@ public class ShipTransformSync : SectoredRigidbodySync private bool ShouldMovePlayer => - (PlayerState.IsInsideShip() || PlayerState.InZeroG()) - && Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 100; + PlayerState.IsInsideShip() || + (PlayerState.InZeroG() && Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 100); protected override bool UseInterpolation => !ShouldMovePlayer; } From 2c7c00e8767b3179a018cd805ee0670da25bcbb0 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Thu, 16 Mar 2023 10:57:17 +0000 Subject: [PATCH 04/16] dumb fix for dumb ghosts --- QSB/EchoesOfTheEye/Ghosts/GhostManager.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/QSB/EchoesOfTheEye/Ghosts/GhostManager.cs b/QSB/EchoesOfTheEye/Ghosts/GhostManager.cs index d1963a15..2fbec4a5 100644 --- a/QSB/EchoesOfTheEye/Ghosts/GhostManager.cs +++ b/QSB/EchoesOfTheEye/Ghosts/GhostManager.cs @@ -52,6 +52,10 @@ internal class GhostManager : WorldObjectManager _zone2Director._cityGhosts[i].OnIdentifyIntruder -= _zone2Director.OnCityGhostsIdentifiedIntruder; _zone2Director._cityGhosts[i].GetWorldObject().OnIdentifyIntruder += CustomOnCityGhostsIdentifiedIntruder; } + + var allCollisionGroups = Resources.FindObjectsOfTypeAll(); + var city = allCollisionGroups.First(x => x.name == "City"); + city.SetSector(_zone2Director._sector); } public static void CustomOnHotelDepthsGhostsIdentifiedIntruder(GhostBrain ghostBrain, QSBGhostData ghostData) From 758a256b1d77efbe7f7190af43cf4595f8bdaee9 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Mon, 17 Apr 2023 00:10:30 +0100 Subject: [PATCH 05/16] fix #613 --- QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs | 4 +++- QSB/QuantumSync/WorldObjects/IQSBQuantumObject.cs | 1 + QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs | 7 ++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs b/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs index 97e61205..dd21f1ae 100644 --- a/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs +++ b/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs @@ -50,7 +50,9 @@ public class QuantumObjectPatches : QSBPatch [HarmonyPatch(nameof(QuantumObject.IsLockedByProbeSnapshot))] public static bool IsLockedByProbeSnapshot(QuantumObject __instance, ref bool __result) { - __result = __instance._visibleInProbeSnapshot; + var worldObject = __instance.GetWorldObject(); + var visibleToProbePlayers = worldObject.GetVisibleToProbePlayers(); + __result = visibleToProbePlayers.Any(x => x.ProbeLauncherEquipped != default); return false; } } diff --git a/QSB/QuantumSync/WorldObjects/IQSBQuantumObject.cs b/QSB/QuantumSync/WorldObjects/IQSBQuantumObject.cs index 2533e998..0632f485 100644 --- a/QSB/QuantumSync/WorldObjects/IQSBQuantumObject.cs +++ b/QSB/QuantumSync/WorldObjects/IQSBQuantumObject.cs @@ -20,4 +20,5 @@ public interface IQSBQuantumObject : IWorldObject VisibilityObject GetVisibilityObject(); void OnTakeProbeSnapshot(PlayerInfo player, ProbeCamera.ID cameraId); void OnRemoveProbeSnapshot(PlayerInfo player); + List GetVisibleToProbePlayers(); } \ No newline at end of file diff --git a/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs b/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs index 3a200154..f6df50c6 100644 --- a/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs +++ b/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs @@ -206,7 +206,7 @@ internal abstract class QSBQuantumObject : WorldObject, IQSBQuantumObject _visibleToProbes.Add(player); } - AttachedObject._visibleInProbeSnapshot = _visibleToProbes.Any(x => x != null); + AttachedObject._visibleInProbeSnapshot = true; return; } } @@ -242,8 +242,7 @@ internal abstract class QSBQuantumObject : WorldObject, IQSBQuantumObject _visibleToProbes.Add(player); } - _visibleToProbes.Add(player); - AttachedObject._visibleInProbeSnapshot = _visibleToProbes.Any(x => x != null); + AttachedObject._visibleInProbeSnapshot = true; return; } } @@ -266,6 +265,8 @@ internal abstract class QSBQuantumObject : WorldObject, IQSBQuantumObject AttachedObject._visibleInProbeSnapshot = _visibleToProbes.Any(x => x != null); } + public List GetVisibleToProbePlayers() => _visibleToProbes; + public override void DisplayLines() { if (AttachedObject == null) From c2768330d365236af16c2b0ce2091f60b320effd Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Mon, 17 Apr 2023 00:11:06 +0100 Subject: [PATCH 06/16] bump version --- QSB/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QSB/manifest.json b/QSB/manifest.json index d95fa49b..5daedbd8 100644 --- a/QSB/manifest.json +++ b/QSB/manifest.json @@ -7,7 +7,7 @@ "body": "- Disable *all* other mods. (Can heavily affect performance)\n- Make sure you are not running any other network-intensive applications." }, "uniqueName": "Raicuparta.QuantumSpaceBuddies", - "version": "0.26.3", + "version": "0.27.0", "owmlVersion": "2.9.0", "dependencies": [ "_nebula.MenuFramework", "JohnCorby.VanillaFix" ], "pathsToPreserve": [ "debugsettings.json" ], From fed0c1bc60497954827e43dcfa63b75fd1e99a55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABtan=20Jestin?= <61322673+MerlinConnected@users.noreply.github.com> Date: Mon, 24 Apr 2023 17:02:31 +0200 Subject: [PATCH 07/16] Update fr.json Fixed spelling --- QSB/Translations/fr.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/QSB/Translations/fr.json b/QSB/Translations/fr.json index efa92c3a..7b94d52a 100644 --- a/QSB/Translations/fr.json +++ b/QSB/Translations/fr.json @@ -40,7 +40,7 @@ "TimeSyncWaitForAllToDie": "Attendez la fin de la boucle...", "GalaxyMapEveryoneNotPresent": "Ce n’est pas encore le moment. Tout le monde doit être ici pour continuer.", "YouAreDead": "Tu es mort.", - "WaitingForRespawn": "Attendez que quelqu'un vouz ressuscité...", + "WaitingForRespawn": "Attendez que quelqu'un vous ressuscite...", "WaitingForAllToDie": "Attendez que {0} joueur(s) meurt/meurent...", "AttachToShip": "S'attacher à la fusée", "DetachFromShip": "Se détacher de la fusée", @@ -123,4 +123,4 @@ "{0} a été écrabouillé par un ascenseur" ] } -} \ No newline at end of file +} From b0da02b52a1afb77ee59c1952c5be4285943b8d1 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Wed, 26 Apr 2023 21:56:42 +0100 Subject: [PATCH 08/16] fix #611 --- QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs | 5 +++++ QSB/QuantumSync/Patches/Server/ServerQuantumMoonPatches.cs | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs b/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs index dd21f1ae..716287a8 100644 --- a/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs +++ b/QSB/QuantumSync/Patches/Common/QuantumObjectPatches.cs @@ -50,6 +50,11 @@ public class QuantumObjectPatches : QSBPatch [HarmonyPatch(nameof(QuantumObject.IsLockedByProbeSnapshot))] public static bool IsLockedByProbeSnapshot(QuantumObject __instance, ref bool __result) { + if (!QSBWorldSync.AllObjectsReady) + { + return true; + } + var worldObject = __instance.GetWorldObject(); var visibleToProbePlayers = worldObject.GetVisibleToProbePlayers(); __result = visibleToProbePlayers.Any(x => x.ProbeLauncherEquipped != default); diff --git a/QSB/QuantumSync/Patches/Server/ServerQuantumMoonPatches.cs b/QSB/QuantumSync/Patches/Server/ServerQuantumMoonPatches.cs index 158263fe..ae14f348 100644 --- a/QSB/QuantumSync/Patches/Server/ServerQuantumMoonPatches.cs +++ b/QSB/QuantumSync/Patches/Server/ServerQuantumMoonPatches.cs @@ -61,7 +61,7 @@ public class ServerQuantumMoonPatches : QSBPatch return false; } - if (__instance._stateIndex == 5 && anyPlayerInQM && !__instance.IsPlayerEntangled()) + if (__instance._stateIndex == 5 && anyPlayerInQM && !playersInQuantumMoon.All(x => x.EntangledObject != null && x.EntangledObject.AttachedObject == __instance)) { __result = false; return false; From ec478d2aac7a2e1626a78c479d1000cb1ea28904 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Wed, 26 Apr 2023 22:10:11 +0100 Subject: [PATCH 09/16] fix #609 --- QSB/ClientServerStateSync/ServerStateManager.cs | 11 ++++++++--- QSB/TimeSync/WakeUpSync.cs | 15 ++++++++------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/QSB/ClientServerStateSync/ServerStateManager.cs b/QSB/ClientServerStateSync/ServerStateManager.cs index 4de2a60d..01bf1d47 100644 --- a/QSB/ClientServerStateSync/ServerStateManager.cs +++ b/QSB/ClientServerStateSync/ServerStateManager.cs @@ -3,6 +3,7 @@ using QSB.DeathSync.Messages; using QSB.Messaging; using QSB.Player; using QSB.Player.TransformSync; +using QSB.TimeSync; using QSB.Utility; using System.Linq; using UnityEngine; @@ -32,7 +33,7 @@ internal class ServerStateManager : MonoBehaviour QSBSceneManager.OnPostSceneLoad += OnPostSceneLoad; GlobalMessenger.AddListener("TriggerSupernova", OnTriggerSupernova); - Delay.RunWhen(() => PlayerTransformSync.LocalInstance != null, + Delay.RunWhen(() => PlayerTransformSync.LocalInstance != null && WakeUpSync.LocalInstance != null, () => new ServerStateMessage(ForceGetCurrentState()).Send()); } @@ -77,7 +78,7 @@ internal class ServerStateManager : MonoBehaviour } else { - new ServerStateMessage(ServerState.InSolarSystem).Send(); + new ServerStateMessage(ServerState.NotLoaded).Send(); } break; @@ -118,7 +119,11 @@ internal class ServerStateManager : MonoBehaviour switch (currentScene) { case OWScene.SolarSystem: - return ServerState.InSolarSystem; + if (WakeUpSync.LocalInstance.HasWokenUp) + { + return ServerState.InSolarSystem; + } + return ServerState.NotLoaded; case OWScene.EyeOfTheUniverse: return ServerState.InEye; default: diff --git a/QSB/TimeSync/WakeUpSync.cs b/QSB/TimeSync/WakeUpSync.cs index ae2c0a3b..9b1c4442 100644 --- a/QSB/TimeSync/WakeUpSync.cs +++ b/QSB/TimeSync/WakeUpSync.cs @@ -35,7 +35,7 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart private float _sendTimer; private float _serverTime; private int _serverLoopCount; - private bool _hasWokenUp; + public bool HasWokenUp; public void OnDisconnect() { @@ -75,10 +75,11 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart DebugLog.DebugWrite($"OnWakeUp", MessageType.Info); if (QSBCore.IsHost) { + new ServerStateMessage(ServerState.InSolarSystem).Send(); RespawnOnDeath.Instance.Init(); } - _hasWokenUp = true; + HasWokenUp = true; } public void OnDestroy() @@ -89,12 +90,12 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart private void OnSceneLoaded(OWScene oldScene, OWScene newScene, bool isInUniverse) { - _hasWokenUp = false; + HasWokenUp = false; if (isInUniverse) { if (newScene == OWScene.EyeOfTheUniverse) { - _hasWokenUp = true; + HasWokenUp = true; } LocalInstance = this; @@ -124,7 +125,7 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart else { // dont bother sleeping, just wake up - if (!_hasWokenUp) + if (!HasWokenUp) { Delay.RunWhen(() => QSBWorldSync.AllObjectsReady, WakeUp); } @@ -178,7 +179,7 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart else { // should only happen from Init so we gotta wait - if (!_hasWokenUp) + if (!HasWokenUp) { Delay.RunWhen(() => QSBWorldSync.AllObjectsReady, WakeUp); } @@ -248,7 +249,7 @@ public class WakeUpSync : MonoBehaviour, IAddComponentOnStart QSBInputManager.Instance.SetInputsEnabled(true); - if (!_hasWokenUp) + if (!HasWokenUp) { WakeUp(); } From cbc69b264e0fea443d64618839ce0b491fb785b1 Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Wed, 26 Apr 2023 22:25:32 +0100 Subject: [PATCH 10/16] update mirror dlls --- Mirror/Mirror.Components.dll | Bin 113152 -> 118784 bytes Mirror/Mirror.Transports.dll | Bin 0 -> 35840 bytes Mirror/Mirror.dll | Bin 167424 -> 160256 bytes Mirror/Telepathy.dll | Bin 18944 -> 19456 bytes Mirror/kcp2k.dll | Bin 34304 -> 34304 bytes Mirror/where-allocations.dll | Bin 5632 -> 0 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 Mirror/Mirror.Transports.dll delete mode 100644 Mirror/where-allocations.dll diff --git a/Mirror/Mirror.Components.dll b/Mirror/Mirror.Components.dll index 623a76cf0e94e9c8904585cc6f621c9f3e497057..18c9d31fe73f72654643be10dcef1678e64874ad 100644 GIT binary patch literal 118784 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

(6;)gt}7&DqE}T9Hq{;MuB1p3!r7S8iQXkrrhl) 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 literal 113152 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 diff --git a/Mirror/Mirror.Transports.dll b/Mirror/Mirror.Transports.dll new file mode 100644 index 0000000000000000000000000000000000000000..27c96be67e784213b38a98baba7dd9d1d141b9f7 GIT binary patch literal 35840 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 literal 0 HcmV?d00001 diff --git a/Mirror/Mirror.dll b/Mirror/Mirror.dll index 26ebbe200bb324e6597ccbec4828ce4425c1962b..40b8e4d6526eec454a17e03facecfd78a403623d 100644 GIT binary patch literal 160256 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

yw@uU9@?8(%hyjk6)WN@dIkDL0+k1 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 B#D|3vJ843srA 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 LRNNr_S%!ZBIiUty delta 2035 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 literal 34304 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 Q(e1u_b#UMAf4Ktx0ZxeHwEzGB From 81afbbc4e8922c18b1387d0b526a86cbe69f712e Mon Sep 17 00:00:00 2001 From: _nebula <41904486+misternebula@users.noreply.github.com> Date: Wed, 26 Apr 2023 22:28:52 +0100 Subject: [PATCH 11/16] fix compile errors in QSB/EOT --- EpicOnlineTransport/Server.cs | 2 +- QSB/Utility/QSBNetworkBehaviour.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/EpicOnlineTransport/Server.cs b/EpicOnlineTransport/Server.cs index aec8f85d..1e16c9b2 100644 --- a/EpicOnlineTransport/Server.cs +++ b/EpicOnlineTransport/Server.cs @@ -25,7 +25,7 @@ public class Server : Common s.OnConnected += (id) => transport.OnServerConnected.Invoke(id); s.OnDisconnected += (id) => transport.OnServerDisconnected.Invoke(id); s.OnReceivedData += (id, data, channel) => transport.OnServerDataReceived.Invoke(id, new ArraySegment(data), channel); - s.OnReceivedError += (id, exception) => transport.OnServerError.Invoke(id, exception); + s.OnReceivedError += (id, exception) => transport.OnServerError?.Invoke(id, Mirror.TransportError.Unexpected, exception.ToString()); if (!EOSSDKComponent.Initialized) { diff --git a/QSB/Utility/QSBNetworkBehaviour.cs b/QSB/Utility/QSBNetworkBehaviour.cs index 534fda1c..53de8c4d 100644 --- a/QSB/Utility/QSBNetworkBehaviour.cs +++ b/QSB/Utility/QSBNetworkBehaviour.cs @@ -59,7 +59,7 @@ public abstract class QSBNetworkBehaviour : NetworkBehaviour return; } - using var writer = NetworkWriterPool.GetWriter(); + using var writer = NetworkWriterPool.Get(); Serialize(writer); UpdatePrevData(); @@ -127,7 +127,7 @@ public abstract class QSBNetworkBehaviour : NetworkBehaviour Array.Copy(data.Array!, data.Offset, _lastKnownData, 0, data.Count); } - using var reader = NetworkReaderPool.GetReader(data); + using var reader = NetworkReaderPool.Get(data); Deserialize(reader); } } From 2ca7046480b35e1af5e8073fc8f0697b278c8be6 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 26 Apr 2023 15:00:18 -0700 Subject: [PATCH 12/16] update ALL the dlls (again) --- Mirror/Mirror.Components.dll | Bin 118784 -> 118784 bytes Mirror/Mirror.Transports.dll | Bin 35840 -> 35840 bytes Mirror/Mirror.dll | Bin 160256 -> 160256 bytes Mirror/Telepathy.dll | Bin 19456 -> 19456 bytes Mirror/kcp2k.dll | Bin 34304 -> 34304 bytes UniTask/UniTask.dll | Bin 493056 -> 486912 bytes 6 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Mirror/Mirror.Components.dll b/Mirror/Mirror.Components.dll index 18c9d31fe73f72654643be10dcef1678e64874ad..de1a9bbb694a6d92499d505127f16e8d34d5fd46 100644 GIT binary patch delta 160 zcmZozz}~QceL@G*%()Z0%J>+bF*0~FfB+N238smP!p(||+Z7oZAJ++7of5d@;5~k) z&5PZ)ELmm$eY;2lV}`r$%(6v00Ab36HF5og_{)_w<|I-KCTlGZGGb0)iA}c zbNZLeYUqibOV%DY;{_+}Or lejw#Q~$;pgyNiEJU$uEfU%`7U)FPiMo o{9HZQ!_mmpi~*|oPBc_A$W*aXew9f(9SpZRo5XI8Zdu9>06h^pTmS$7 delta 136 zcmZpe!PGE=X+j6n&8Zu^J|zlNo%Db5Y~3W+4gCodX0c68*xZv8p}_LepLf>e7fmKA zermRXAFu3j?_?MLAy=qg!^ptE;A$1)n^{zpU*w#hTacNPI@!1R`D6!1UiDxPM!T}2afvJ?D2Aw+xB#k?dIr~rR)Hhl{m`) diff --git a/Mirror/Mirror.dll b/Mirror/Mirror.dll index 40b8e4d6526eec454a17e03facecfd78a403623d..60cc974bff60ee843955775ab5f30f6ff8e55331 100644 GIT binary patch delta 154 zcmZp8!rAbIb3zBxjJb_ntzC>;yO`2c1Rfbz{NMgC+kg7`|EDIDocy^>mFb8J%XBxH zmD5jTGMN}=i!^W0-~7sD)-~xPOIj}8Wn^GraJGsGElw>ejw#Q~$;pgyNiEJU$uEfU y%`7U)FPg59#q?Y~*u&At)QkbD`$`m4H^^L*?8`j-e9;N1Q;xW8x6Wod$_4-r+CvZk delta 145 zcmZp8!rAbIb3zBx^{I_rtzC>;yO`2c1ZHpBqY%DD+F>Hg#pI4H*EF`NG97VY5lu3@ zH2p*-lZi_4gN-Fua`>IsT$o?#CSSFOk%581)hfm}v#2P)$T>f^ATuX*x^5QJ^T`g3 pyz0Rojz*?t3{Xv*bD)|)#=Tl5dhxUOG1&oasg=;d^H@CY~vI78|Q$HI3 delta 133 zcmZpe!Pqc^aY6^vwW%AsZrKVn&rs0i`q1dTboz~~c02AXn@jBGu(14|xZ=}f5oZ&X zrY9Gs`I%31+<)3{EmMKh6GjFG23M;X-^`+-{37T4+=9%U)XA03&nG)D@=i{0VOM}^ dI9LzW05VB4FXV*SBCbMD5jTg3v7x|cUpSJ%0%%RItwV}3Vqb4iH}2aEi7>-&?p)R-8q zXYsk!fBCWN8adavz#}=zj0_A6&Q>v@#i>QbG3A*#Ihiposm0kP`2{h)nMFnUMU#1I kpHHe|SAc3f`Ua{IWa9Qs)77^*Y|T~FideE)z3wJE0GLrcyZ`_I delta 132 zcmZqZVQT1Mn$W>?ed@-pTg3t=Hm>4%+%M+ar)h4xlk;Hy=8_T{4wgeVG|o=mQe&cW z{MYa5Y1ZP7YnM!W;biy!DkB2}gR51HZ)QF>SW2<=aU^6c_-DeD?rsJ czJ;m>8FbcgnaQ@eiH+?0ZuV_fue-?(0F0JBhyVZp diff --git a/UniTask/UniTask.dll b/UniTask/UniTask.dll index 8f49443a61e0da42e5b580ed3272978213e5468d..f5268d8d6dfee0421c40c0c24a201cf5e44d50c2 100644 GIT binary patch literal 486912 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

jg*R-KGP=!b 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

=gDpbbuq^SV)0WU=WOiNf3oHI1iS?WpFLr3irap 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

g7D4ov?&qD*3;tik68JBb1ZQsm From 613a2704b78863d4fe765755448ad8a6c40cd7b2 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 26 Apr 2023 15:06:17 -0700 Subject: [PATCH 13/16] update weaver --- MirrorWeaver/Weaver/Extensions.cs | 19 +++- .../Weaver/Processors/CommandProcessor.cs | 18 ++-- .../Processors/NetworkBehaviourProcessor.cs | 88 ++++++++++++------- .../Weaver/Processors/RpcProcessor.cs | 9 +- .../Weaver/Processors/SyncObjectProcessor.cs | 2 +- .../Processors/SyncVarAttributeProcessor.cs | 23 +++-- .../Weaver/Processors/TargetRpcProcessor.cs | 48 +++++++--- MirrorWeaver/Weaver/Readers.cs | 7 +- MirrorWeaver/Weaver/Weaver.cs | 7 ++ MirrorWeaver/Weaver/WeaverTypes.cs | 46 +++++----- MirrorWeaver/Weaver/Writers.cs | 6 +- 11 files changed, 182 insertions(+), 91 deletions(-) diff --git a/MirrorWeaver/Weaver/Extensions.cs b/MirrorWeaver/Weaver/Extensions.cs index a8067f56..db6610cb 100644 --- a/MirrorWeaver/Weaver/Extensions.cs +++ b/MirrorWeaver/Weaver/Extensions.cs @@ -12,8 +12,18 @@ namespace Mirror.Weaver ? td.GetElementType().FullName == type.FullName : td.FullName == type.FullName; + // check if 'td' is exactly of type T. + // it does not check if any base type is of , only the specific type. + // for example: + // NetworkConnection Is NetworkConnection: true + // NetworkConnectionToClient Is NetworkConnection: false public static bool Is(this TypeReference td) => Is(td, typeof(T)); + // check if 'tr' is derived from T. + // it does not check if 'tr' is exactly T. + // for example: + // NetworkConnection IsDerivedFrom: false + // NetworkConnectionToClient IsDerivedFrom: true public static bool IsDerivedFrom(this TypeReference tr) => IsDerivedFrom(tr, typeof(T)); public static bool IsDerivedFrom(this TypeReference tr, Type baseClass) @@ -79,7 +89,10 @@ namespace Mirror.Weaver public static bool IsNetworkIdentityField(this TypeReference tr) => tr.Is() || tr.Is() || - tr.IsDerivedFrom(); + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + tr.IsDerivedFrom() || + tr.Is(); public static bool CanBeResolved(this TypeReference parent) { @@ -266,7 +279,7 @@ namespace Mirror.Weaver // Takes generic arguments from child class and applies them to parent reference, if possible // eg makes `Base` in Child : Base have `int` instead of `T` - // Originally by James-Frowen under MIT + // Originally by James-Frowen under MIT // https://github.com/MirageNet/Mirage/commit/cf91e1d54796866d2cf87f8e919bb5c681977e45 public static TypeReference ApplyGenericParameters(this TypeReference parentReference, TypeReference childReference) @@ -306,7 +319,7 @@ namespace Mirror.Weaver } // Finds the type reference for a generic parameter with the provided name in the child reference - // Originally by James-Frowen under MIT + // Originally by James-Frowen under MIT // https://github.com/MirageNet/Mirage/commit/cf91e1d54796866d2cf87f8e919bb5c681977e45 static TypeReference FindMatchingGenericArgument(TypeReference childReference, string paramName) { diff --git a/MirrorWeaver/Weaver/Processors/CommandProcessor.cs b/MirrorWeaver/Weaver/Processors/CommandProcessor.cs index af776254..9255eb35 100644 --- a/MirrorWeaver/Weaver/Processors/CommandProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/CommandProcessor.cs @@ -10,10 +10,11 @@ namespace Mirror.Weaver // generates code like: public void CmdThrust(float thrusting, int spin) { - NetworkWriter networkWriter = new NetworkWriter(); - networkWriter.Write(thrusting); - networkWriter.WritePackedUInt32((uint)spin); - base.SendCommandInternal(cmdName, networkWriter, channel); + NetworkWriterPooled writer = NetworkWriterPool.Get(); + writer.Write(thrusting); + writer.WritePackedUInt32((uint)spin); + base.SendCommandInternal(cmdName, cmdHash, writer, channel); + NetworkWriterPool.Return(writer); } public void CallCmdThrust(float thrusting, int spin) @@ -38,7 +39,7 @@ namespace Mirror.Weaver NetworkBehaviourProcessor.WriteSetupLocals(worker, weaverTypes); // NetworkWriter writer = new NetworkWriter(); - NetworkBehaviourProcessor.WriteCreateWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteGetWriter(worker, weaverTypes); // write all the arguments that the user passed to the Cmd call if (!NetworkBehaviourProcessor.WriteArguments(worker, writers, Log, md, RemoteCallType.Command, ref WeavingFailed)) @@ -52,6 +53,11 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Ldarg_0); // pass full function name to avoid ClassA.Func <-> ClassB.Func collisions worker.Emit(OpCodes.Ldstr, md.FullName); + // pass the function hash so we don't have to compute it at runtime + // otherwise each GetStableHash call requires O(N) complexity. + // noticeable for long function names: + // https://github.com/MirrorNetworking/Mirror/issues/3375 + worker.Emit(OpCodes.Ldc_I4, md.FullName.GetStableHashCode()); // writer worker.Emit(OpCodes.Ldloc_0); worker.Emit(OpCodes.Ldc_I4, channel); @@ -59,7 +65,7 @@ namespace Mirror.Weaver worker.Emit(requiresAuthority ? OpCodes.Ldc_I4_1 : OpCodes.Ldc_I4_0); worker.Emit(OpCodes.Call, weaverTypes.sendCommandInternal); - NetworkBehaviourProcessor.WriteRecycleWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteReturnWriter(worker, weaverTypes); worker.Emit(OpCodes.Ret); return cmd; diff --git a/MirrorWeaver/Weaver/Processors/NetworkBehaviourProcessor.cs b/MirrorWeaver/Weaver/Processors/NetworkBehaviourProcessor.cs index b3838255..860be317 100644 --- a/MirrorWeaver/Weaver/Processors/NetworkBehaviourProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/NetworkBehaviourProcessor.cs @@ -137,21 +137,21 @@ namespace Mirror.Weaver public static void WriteSetupLocals(ILProcessor worker, WeaverTypes weaverTypes) { worker.Body.InitLocals = true; - worker.Body.Variables.Add(new VariableDefinition(weaverTypes.Import())); + worker.Body.Variables.Add(new VariableDefinition(weaverTypes.Import())); } - public static void WriteCreateWriter(ILProcessor worker, WeaverTypes weaverTypes) + public static void WriteGetWriter(ILProcessor worker, WeaverTypes weaverTypes) { // create writer - worker.Emit(OpCodes.Call, weaverTypes.GetPooledWriterReference); + worker.Emit(OpCodes.Call, weaverTypes.GetWriterReference); worker.Emit(OpCodes.Stloc_0); } - public static void WriteRecycleWriter(ILProcessor worker, WeaverTypes weaverTypes) + public static void WriteReturnWriter(ILProcessor worker, WeaverTypes weaverTypes) { // NetworkWriterPool.Recycle(writer); worker.Emit(OpCodes.Ldloc_0); - worker.Emit(OpCodes.Call, weaverTypes.RecycleWriterReference); + worker.Emit(OpCodes.Call, weaverTypes.ReturnWriterReference); } public static bool WriteArguments(ILProcessor worker, Writers writers, Logger Log, MethodDefinition method, RemoteCallType callType, ref bool WeavingFailed) @@ -397,7 +397,7 @@ namespace Mirror.Weaver MethodDefinition serialize = new MethodDefinition(SerializeMethodName, MethodAttributes.Public | MethodAttributes.Virtual | MethodAttributes.HideBySig, - weaverTypes.Import()); + weaverTypes.Import(typeof(void))); serialize.Parameters.Add(new ParameterDefinition("writer", ParameterAttributes.None, weaverTypes.Import())); serialize.Parameters.Add(new ParameterDefinition("forceAll", ParameterAttributes.None, weaverTypes.Import())); @@ -405,10 +405,7 @@ namespace Mirror.Weaver serialize.Body.InitLocals = true; - // loc_0, this local variable is to determine if any variable was dirty - VariableDefinition dirtyLocal = new VariableDefinition(weaverTypes.Import()); - serialize.Body.Variables.Add(dirtyLocal); - + // base.SerializeSyncVars(writer, forceAll); MethodReference baseSerialize = Resolvers.TryResolveMethodInParents(netBehaviourSubclass.BaseType, assembly, SerializeMethodName); if (baseSerialize != null) { @@ -419,16 +416,20 @@ namespace Mirror.Weaver // forceAll worker.Emit(OpCodes.Ldarg_2); worker.Emit(OpCodes.Call, baseSerialize); - // set dirtyLocal to result of base.OnSerialize() - worker.Emit(OpCodes.Stloc_0); } - // Generates: if (forceAll); + // Generates: + // if (forceAll) + // { + // writer.WriteInt(health); + // ... + // } Instruction initialStateLabel = worker.Create(OpCodes.Nop); // forceAll - worker.Emit(OpCodes.Ldarg_2); - worker.Emit(OpCodes.Brfalse, initialStateLabel); + worker.Emit(OpCodes.Ldarg_2); // load 'forceAll' flag + worker.Emit(OpCodes.Brfalse, initialStateLabel); // start the 'if forceAll' branch + // generates write.Write(syncVar) for each SyncVar in forceAll case foreach (FieldDefinition syncVarDef in syncVars) { FieldReference syncVar = syncVarDef; @@ -442,7 +443,21 @@ namespace Mirror.Weaver // this worker.Emit(OpCodes.Ldarg_0); worker.Emit(OpCodes.Ldfld, syncVar); - MethodReference writeFunc = writers.GetWriteFunc(syncVar.FieldType, ref WeavingFailed); + MethodReference writeFunc; + // For NBs we always need to use the default NetworkBehaviour write func + // since the reader counter part uses that exact layout which is not easy to change + // without introducing more edge cases + // effectively this disallows custom NB-type writers/readers on SyncVars + // see: https://github.com/MirrorNetworking/Mirror/issues/2680 + if (syncVar.FieldType.IsDerivedFrom()) + { + writeFunc = writers.GetWriteFunc(weaverTypes.Import(), ref WeavingFailed); + } + else + { + writeFunc = writers.GetWriteFunc(syncVar.FieldType, ref WeavingFailed); + } + if (writeFunc != null) { worker.Emit(OpCodes.Call, writeFunc); @@ -455,15 +470,14 @@ namespace Mirror.Weaver } } - // always return true if forceAll - - // Generates: return true - worker.Emit(OpCodes.Ldc_I4_1); + // if (forceAll) then always return at the end of the 'if' case worker.Emit(OpCodes.Ret); - // Generates: end if (forceAll); + // end the 'if' case for "if (forceAll)" worker.Append(initialStateLabel); + //////////////////////////////////////////////////////////////////// + // write dirty bits before the data fields // Generates: writer.WritePackedUInt64 (base.get_syncVarDirtyBits ()); // writer @@ -480,7 +494,6 @@ namespace Mirror.Weaver int dirtyBit = syncVarAccessLists.GetSyncVarStart(netBehaviourSubclass.BaseType.FullName); foreach (FieldDefinition syncVarDef in syncVars) { - FieldReference syncVar = syncVarDef; if (netBehaviourSubclass.HasGenericParameters) { @@ -504,7 +517,21 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Ldarg_0); worker.Emit(OpCodes.Ldfld, syncVar); - MethodReference writeFunc = writers.GetWriteFunc(syncVar.FieldType, ref WeavingFailed); + MethodReference writeFunc; + // For NBs we always need to use the default NetworkBehaviour write func + // since the reader counter part uses that exact layout which is not easy to change + // without introducing more edge cases + // effectively this disallows custom NB-type writers/readers on SyncVars + // see: https://github.com/MirrorNetworking/Mirror/issues/2680 + if (syncVar.FieldType.IsDerivedFrom()) + { + writeFunc = writers.GetWriteFunc(weaverTypes.Import(), ref WeavingFailed); + } + else + { + writeFunc = writers.GetWriteFunc(syncVar.FieldType, ref WeavingFailed); + } + if (writeFunc != null) { worker.Emit(OpCodes.Call, writeFunc); @@ -516,11 +543,6 @@ namespace Mirror.Weaver return; } - // something was dirty - worker.Emit(OpCodes.Ldc_I4_1); - // set dirtyLocal to true - worker.Emit(OpCodes.Stloc_0); - worker.Append(varLabel); dirtyBit += 1; } @@ -529,8 +551,7 @@ namespace Mirror.Weaver //worker.Emit(OpCodes.Ldstr, $"Injected Serialize {netBehaviourSubclass.Name}"); //worker.Emit(OpCodes.Call, WeaverTypes.logErrorReference); - // generate: return dirtyLocal - worker.Emit(OpCodes.Ldloc_0); + // generate: return worker.Emit(OpCodes.Ret); netBehaviourSubclass.Methods.Add(serialize); } @@ -589,10 +610,9 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Ldflda, netIdField); worker.Emit(OpCodes.Call, weaverTypes.generatedSyncVarDeserialize_NetworkIdentity); } - // TODO this only uses the persistent netId for types DERIVED FROM NB. - // not if the type is just 'NetworkBehaviour'. - // this is what original implementation did too. fix it after. - else if (syncVar.FieldType.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + else if (syncVar.FieldType.IsDerivedFrom() || syncVar.FieldType.Is()) { // reader worker.Emit(OpCodes.Ldarg_1); diff --git a/MirrorWeaver/Weaver/Processors/RpcProcessor.cs b/MirrorWeaver/Weaver/Processors/RpcProcessor.cs index e26ecbd8..a774c5c6 100644 --- a/MirrorWeaver/Weaver/Processors/RpcProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/RpcProcessor.cs @@ -68,7 +68,7 @@ namespace Mirror.Weaver //worker.Emit(OpCodes.Ldstr, $"Call ClientRpc function {md.Name}"); //worker.Emit(OpCodes.Call, WeaverTypes.logErrorReference); - NetworkBehaviourProcessor.WriteCreateWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteGetWriter(worker, weaverTypes); // write all the arguments that the user passed to the Rpc call if (!NetworkBehaviourProcessor.WriteArguments(worker, writers, Log, md, RemoteCallType.ClientRpc, ref WeavingFailed)) @@ -82,6 +82,11 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Ldarg_0); // pass full function name to avoid ClassA.Func <-> ClassB.Func collisions worker.Emit(OpCodes.Ldstr, md.FullName); + // pass the function hash so we don't have to compute it at runtime + // otherwise each GetStableHash call requires O(N) complexity. + // noticeable for long function names: + // https://github.com/MirrorNetworking/Mirror/issues/3375 + worker.Emit(OpCodes.Ldc_I4, md.FullName.GetStableHashCode()); // writer worker.Emit(OpCodes.Ldloc_0); worker.Emit(OpCodes.Ldc_I4, channel); @@ -89,7 +94,7 @@ namespace Mirror.Weaver worker.Emit(includeOwner ? OpCodes.Ldc_I4_1 : OpCodes.Ldc_I4_0); worker.Emit(OpCodes.Callvirt, weaverTypes.sendRpcInternal); - NetworkBehaviourProcessor.WriteRecycleWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteReturnWriter(worker, weaverTypes); worker.Emit(OpCodes.Ret); diff --git a/MirrorWeaver/Weaver/Processors/SyncObjectProcessor.cs b/MirrorWeaver/Weaver/Processors/SyncObjectProcessor.cs index e8d8c134..ffcb7945 100644 --- a/MirrorWeaver/Weaver/Processors/SyncObjectProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/SyncObjectProcessor.cs @@ -16,7 +16,7 @@ namespace Mirror.Weaver foreach (FieldDefinition fd in td.Fields) { - if (fd.FieldType.IsGenericParameter) + if (fd.FieldType.IsGenericParameter || fd.ContainsGenericParameter) { // can't call .Resolve on generic ones continue; diff --git a/MirrorWeaver/Weaver/Processors/SyncVarAttributeProcessor.cs b/MirrorWeaver/Weaver/Processors/SyncVarAttributeProcessor.cs index 2d0b25fa..9d723180 100644 --- a/MirrorWeaver/Weaver/Processors/SyncVarAttributeProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/SyncVarAttributeProcessor.cs @@ -203,7 +203,9 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Call, weaverTypes.getSyncVarNetworkIdentityReference); worker.Emit(OpCodes.Ret); } - else if (fd.FieldType.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + else if (fd.FieldType.IsDerivedFrom() || fd.FieldType.Is()) { // return this.GetSyncVarNetworkBehaviour(ref field, uint netId); // this. @@ -331,10 +333,9 @@ namespace Mirror.Weaver worker.Emit(OpCodes.Ldflda, netIdFieldReference); worker.Emit(OpCodes.Call, weaverTypes.generatedSyncVarSetter_NetworkIdentity); } - // TODO this only uses the persistent netId for types DERIVED FROM NB. - // not if the type is just 'NetworkBehaviour'. - // this is what original implementation did too. fix it after. - else if (fd.FieldType.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + else if (fd.FieldType.IsDerivedFrom() || fd.FieldType.Is()) { // NetworkIdentity setter needs one more parameter: netId field ref // (actually its a NetworkBehaviourSyncVar type) @@ -368,11 +369,13 @@ namespace Mirror.Weaver // GameObject/NetworkIdentity SyncVars have a new field for netId FieldDefinition netIdField = null; // NetworkBehaviour has different field type than other NetworkIdentityFields - if (fd.FieldType.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + if (fd.FieldType.IsDerivedFrom() || fd.FieldType.Is()) { netIdField = new FieldDefinition($"___{fd.Name}NetId", FieldAttributes.Family, // needs to be protected for generic classes, otherwise access isn't allowed - weaverTypes.Import()); + weaverTypes.Import()); netIdField.DeclaringType = td; syncVarNetIds[fd] = netIdField; @@ -475,7 +478,11 @@ namespace Mirror.Weaver { td.Fields.Add(fd); } - syncVarAccessLists.SetNumSyncVars(td.FullName, syncVars.Count); + + // include parent class syncvars + // fixes: https://github.com/MirrorNetworking/Mirror/issues/3457 + int parentSyncVarCount = syncVarAccessLists.GetSyncVarStart(td.BaseType.FullName); + syncVarAccessLists.SetNumSyncVars(td.FullName, parentSyncVarCount + syncVars.Count); return (syncVars, syncVarNetIds); } diff --git a/MirrorWeaver/Weaver/Processors/TargetRpcProcessor.cs b/MirrorWeaver/Weaver/Processors/TargetRpcProcessor.cs index c7bc78a8..0ee981db 100644 --- a/MirrorWeaver/Weaver/Processors/TargetRpcProcessor.cs +++ b/MirrorWeaver/Weaver/Processors/TargetRpcProcessor.cs @@ -9,8 +9,16 @@ namespace Mirror.Weaver // helper functions to check if the method has a NetworkConnection parameter public static bool HasNetworkConnectionParameter(MethodDefinition md) { - return md.Parameters.Count > 0 && - md.Parameters[0].ParameterType.Is(); + if (md.Parameters.Count > 0) + { + // we need to allow both NetworkConnection, and inheriting types. + // NetworkBehaviour.SendTargetRpc takes a NetworkConnection parameter. + // fixes https://github.com/vis2k/Mirror/issues/3290 + TypeReference type = md.Parameters[0].ParameterType; + return type.Is() || + type.IsDerivedFrom(); + } + return false; } public static MethodDefinition ProcessTargetRpcInvoke(WeaverTypes weaverTypes, Readers readers, Logger Log, TypeDefinition td, MethodDefinition md, MethodDefinition rpcCallFunc, ref bool WeavingFailed) @@ -34,16 +42,25 @@ namespace Mirror.Weaver // NetworkConnection parameter is optional if (HasNetworkConnectionParameter(md)) { - // on server, the NetworkConnection parameter is a connection to client. - // when the rpc is invoked on the client, it still has the same - // function signature. we pass in the connection to server, - // which is cleaner than just passing null) - //NetworkClient.readyconnection + // TargetRpcs are sent from server to client. + // on server, we currently support two types: + // TargetRpc(NetworkConnection) + // TargetRpc(NetworkConnectionToClient) + // however, it's always a connection to client. + // in the future, only NetworkConnectionToClient will be supported. + // explicit typing helps catch issues at compile time. // - // TODO - // a) .connectionToServer = best solution. no doubt. - // b) NetworkClient.connection for now. add TODO to not use static later. - worker.Emit(OpCodes.Call, weaverTypes.NetworkClientConnectionReference); + // on client, InvokeTargetRpc calls the original code. + // we need to fill in the NetworkConnection parameter. + // NetworkClient.connection is always a connection to server. + // + // we used to pass NetworkClient.connection as the TargetRpc parameter. + // which caused: https://github.com/MirrorNetworking/Mirror/issues/3455 + // when the parameter is defined as a NetworkConnectionToClient. + // + // a client's connection never fits into a NetworkConnectionToClient. + // we need to always pass null here. + worker.Emit(OpCodes.Ldnull); } // process reader parameters and skip first one if first one is NetworkConnection @@ -100,7 +117,7 @@ namespace Mirror.Weaver NetworkBehaviourProcessor.WriteSetupLocals(worker, weaverTypes); - NetworkBehaviourProcessor.WriteCreateWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteGetWriter(worker, weaverTypes); // write all the arguments that the user passed to the TargetRpc call // (skip first one if first one is NetworkConnection) @@ -122,12 +139,17 @@ namespace Mirror.Weaver } // pass full function name to avoid ClassA.Func <-> ClassB.Func collisions worker.Emit(OpCodes.Ldstr, md.FullName); + // pass the function hash so we don't have to compute it at runtime + // otherwise each GetStableHash call requires O(N) complexity. + // noticeable for long function names: + // https://github.com/MirrorNetworking/Mirror/issues/3375 + worker.Emit(OpCodes.Ldc_I4, md.FullName.GetStableHashCode()); // writer worker.Emit(OpCodes.Ldloc_0); worker.Emit(OpCodes.Ldc_I4, targetRpcAttr.GetField("channel", 0)); worker.Emit(OpCodes.Callvirt, weaverTypes.sendTargetRpcInternal); - NetworkBehaviourProcessor.WriteRecycleWriter(worker, weaverTypes); + NetworkBehaviourProcessor.WriteReturnWriter(worker, weaverTypes); worker.Emit(OpCodes.Ret); diff --git a/MirrorWeaver/Weaver/Readers.cs b/MirrorWeaver/Weaver/Readers.cs index 4a38ccd4..0e3800bd 100644 --- a/MirrorWeaver/Weaver/Readers.cs +++ b/MirrorWeaver/Weaver/Readers.cs @@ -19,6 +19,7 @@ namespace Mirror.Weaver AssemblyDefinition assembly; WeaverTypes weaverTypes; TypeDefinition GeneratedCodeClass; + // CHANGED internal Logger Log; Dictionary readFuncs = @@ -114,7 +115,9 @@ namespace Mirror.Weaver return GenerateReadCollection(variableReference, elementType, nameof(NetworkReaderExtensions.ReadList), ref WeavingFailed); } - else if (variableReference.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + else if (variableReference.IsDerivedFrom() || variableReference.Is()) { return GetNetworkBehaviourReader(variableReference); } @@ -138,6 +141,7 @@ namespace Mirror.Weaver WeavingFailed = true; return null; } + // CHANGED /* if (variableDefinition.HasGenericParameters) { @@ -270,6 +274,7 @@ namespace Mirror.Weaver GenerateNullCheck(worker, ref WeavingFailed); CreateNew(variable, worker, td, ref WeavingFailed); + // CHANGED this.ReadAllFieldsGeneric(variable, worker, ref WeavingFailed); worker.Emit(OpCodes.Ldloc_0); diff --git a/MirrorWeaver/Weaver/Weaver.cs b/MirrorWeaver/Weaver/Weaver.cs index c068a6d2..8eb5afbb 100644 --- a/MirrorWeaver/Weaver/Weaver.cs +++ b/MirrorWeaver/Weaver/Weaver.cs @@ -25,6 +25,12 @@ namespace Mirror.Weaver AssemblyDefinition CurrentAssembly; Writers writers; Readers readers; + + // in case of weaver errors, we don't stop immediately. + // we log all errors and then eventually return false if + // weaving has failed. + // this way the user can fix multiple errors at once, instead of having + // to fix -> recompile -> fix -> recompile for one error at a time. bool WeavingFailed; // logger functions can be set from the outside. @@ -200,6 +206,7 @@ namespace Mirror.Weaver ModuleDefinition moduleDefinition = CurrentAssembly.MainModule; Console.WriteLine($"Script Module: {moduleDefinition.Name}"); + // CHANGED QSBReaderWriterProcessor.Process(moduleDefinition, writers, readers, ref WeavingFailed); modified |= WeaveModule(moduleDefinition); diff --git a/MirrorWeaver/Weaver/WeaverTypes.cs b/MirrorWeaver/Weaver/WeaverTypes.cs index 64e55ac0..63c42181 100644 --- a/MirrorWeaver/Weaver/WeaverTypes.cs +++ b/MirrorWeaver/Weaver/WeaverTypes.cs @@ -11,8 +11,8 @@ namespace Mirror.Weaver public MethodReference ScriptableObjectCreateInstanceMethod; public MethodReference NetworkBehaviourDirtyBitsReference; - public MethodReference GetPooledWriterReference; - public MethodReference RecycleWriterReference; + public MethodReference GetWriterReference; + public MethodReference ReturnWriterReference; public MethodReference NetworkClientConnectionReference; @@ -77,28 +77,14 @@ namespace Mirror.Weaver TypeReference NetworkServerType = Import(typeof(NetworkServer)); NetworkServerGetActive = Resolvers.ResolveMethod(NetworkServerType, assembly, Log, "get_active", ref WeavingFailed); + TypeReference NetworkClientType = Import(typeof(NetworkClient)); NetworkClientGetActive = Resolvers.ResolveMethod(NetworkClientType, assembly, Log, "get_active", ref WeavingFailed); - - TypeReference RemoteCallDelegateType = Import(); - RemoteCallDelegateConstructor = Resolvers.ResolveMethod(RemoteCallDelegateType, assembly, Log, ".ctor", ref WeavingFailed); + NetworkClientConnectionReference = Resolvers.ResolveMethod(NetworkClientType, assembly, Log, "get_connection", ref WeavingFailed); TypeReference NetworkBehaviourType = Import(); - TypeReference RemoteProcedureCallsType = Import(typeof(RemoteCalls.RemoteProcedureCalls)); - - TypeReference ScriptableObjectType = Import(); - - ScriptableObjectCreateInstanceMethod = Resolvers.ResolveMethod( - ScriptableObjectType, assembly, Log, - md => md.Name == "CreateInstance" && md.HasGenericParameters, - ref WeavingFailed); NetworkBehaviourDirtyBitsReference = Resolvers.ResolveProperty(NetworkBehaviourType, assembly, "syncVarDirtyBits"); - TypeReference NetworkWriterPoolType = Import(typeof(NetworkWriterPool)); - GetPooledWriterReference = Resolvers.ResolveMethod(NetworkWriterPoolType, assembly, Log, "GetWriter", ref WeavingFailed); - RecycleWriterReference = Resolvers.ResolveMethod(NetworkWriterPoolType, assembly, Log, "Recycle", ref WeavingFailed); - - NetworkClientConnectionReference = Resolvers.ResolveMethod(NetworkClientType, assembly, Log, "get_connection", ref WeavingFailed); generatedSyncVarSetter = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "GeneratedSyncVarSetter", ref WeavingFailed); generatedSyncVarSetter_GameObject = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "GeneratedSyncVarSetter_GameObject", ref WeavingFailed); @@ -114,9 +100,25 @@ namespace Mirror.Weaver getSyncVarNetworkIdentityReference = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "GetSyncVarNetworkIdentity", ref WeavingFailed); getSyncVarNetworkBehaviourReference = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "GetSyncVarNetworkBehaviour", ref WeavingFailed); + sendCommandInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendCommandInternal", ref WeavingFailed); + sendRpcInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendRPCInternal", ref WeavingFailed); + sendTargetRpcInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendTargetRPCInternal", ref WeavingFailed); + + InitSyncObjectReference = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "InitSyncObject", ref WeavingFailed); + + TypeReference RemoteProcedureCallsType = Import(typeof(RemoteCalls.RemoteProcedureCalls)); registerCommandReference = Resolvers.ResolveMethod(RemoteProcedureCallsType, assembly, Log, "RegisterCommand", ref WeavingFailed); registerRpcReference = Resolvers.ResolveMethod(RemoteProcedureCallsType, assembly, Log, "RegisterRpc", ref WeavingFailed); + TypeReference RemoteCallDelegateType = Import(); + RemoteCallDelegateConstructor = Resolvers.ResolveMethod(RemoteCallDelegateType, assembly, Log, ".ctor", ref WeavingFailed); + + TypeReference ScriptableObjectType = Import(); + ScriptableObjectCreateInstanceMethod = Resolvers.ResolveMethod( + ScriptableObjectType, assembly, Log, + md => md.Name == "CreateInstance" && md.HasGenericParameters, + ref WeavingFailed); + TypeReference unityDebug = Import(typeof(UnityEngine.Debug)); // these have multiple methods with same name, so need to check parameters too logErrorReference = Resolvers.ResolveMethod(unityDebug, assembly, Log, md => @@ -133,11 +135,10 @@ namespace Mirror.Weaver TypeReference typeType = Import(typeof(Type)); getTypeFromHandleReference = Resolvers.ResolveMethod(typeType, assembly, Log, "GetTypeFromHandle", ref WeavingFailed); - sendCommandInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendCommandInternal", ref WeavingFailed); - sendRpcInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendRPCInternal", ref WeavingFailed); - sendTargetRpcInternal = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "SendTargetRPCInternal", ref WeavingFailed); - InitSyncObjectReference = Resolvers.ResolveMethod(NetworkBehaviourType, assembly, Log, "InitSyncObject", ref WeavingFailed); + TypeReference NetworkWriterPoolType = Import(typeof(NetworkWriterPool)); + GetWriterReference = Resolvers.ResolveMethod(NetworkWriterPoolType, assembly, Log, "Get", ref WeavingFailed); + ReturnWriterReference = Resolvers.ResolveMethod(NetworkWriterPoolType, assembly, Log, "Return", ref WeavingFailed); TypeReference readerExtensions = Import(typeof(NetworkReaderExtensions)); readNetworkBehaviourGeneric = Resolvers.ResolveMethod(readerExtensions, assembly, Log, (md => @@ -147,6 +148,7 @@ namespace Mirror.Weaver }), ref WeavingFailed); + // CHANGED /* // [InitializeOnLoadMethod] // 'UnityEditor' is not available in builds. diff --git a/MirrorWeaver/Weaver/Writers.cs b/MirrorWeaver/Weaver/Writers.cs index 0b6fe966..6b697786 100644 --- a/MirrorWeaver/Weaver/Writers.cs +++ b/MirrorWeaver/Weaver/Writers.cs @@ -116,7 +116,9 @@ namespace Mirror.Weaver return GenerateCollectionWriter(variableReference, elementType, nameof(NetworkWriterExtensions.WriteList), ref WeavingFailed); } - if (variableReference.IsDerivedFrom()) + // handle both NetworkBehaviour and inheritors. + // fixes: https://github.com/MirrorNetworking/Mirror/issues/2939 + if (variableReference.IsDerivedFrom() || variableReference.Is()) { return GetNetworkBehaviourWriter(variableReference); } @@ -139,6 +141,7 @@ namespace Mirror.Weaver { throw new GenerateWriterException($"Cannot generate writer for {variableReference.Name}. Use a supported type or provide a custom writer", variableReference); } + // CHANGED /* if (variableDefinition.HasGenericParameters) { @@ -219,6 +222,7 @@ namespace Mirror.Weaver if (!variable.Resolve().IsValueType) WriteNullCheck(worker, ref WeavingFailed); + // CHANGED if (!this.WriteAllFieldsGeneric(variable, worker, ref WeavingFailed)) return null; From cefabfd3dda20a75a5d8c4030b1d705a1272c024 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 26 Apr 2023 15:23:14 -0700 Subject: [PATCH 14/16] update epic --- .../BidirectionalDictionary.cs | 112 ++- EpicOnlineTransport/Client.cs | 290 ++++--- EpicOnlineTransport/Common.cs | 506 ++++++------ EpicOnlineTransport/EOSSDKComponent.cs | 647 ++++++++-------- EpicOnlineTransport/EosApiKey.cs | 20 +- EpicOnlineTransport/EosTransport.cs | 729 ++++++++---------- EpicOnlineTransport/Logger.cs | 48 +- EpicOnlineTransport/Packet.cs | 71 +- EpicOnlineTransport/RandomString.cs | 57 +- EpicOnlineTransport/Server.cs | 334 ++++---- 10 files changed, 1303 insertions(+), 1511 deletions(-) diff --git a/EpicOnlineTransport/BidirectionalDictionary.cs b/EpicOnlineTransport/BidirectionalDictionary.cs index aac5a497..cc68a019 100644 --- a/EpicOnlineTransport/BidirectionalDictionary.cs +++ b/EpicOnlineTransport/BidirectionalDictionary.cs @@ -50,81 +50,71 @@ using System.Collections.Generic; /// MIT License /// -namespace EpicTransport; +namespace EpicTransport { -public class BidirectionalDictionary : IEnumerable -{ - private Dictionary t1ToT2Dict = new(); - private Dictionary t2ToT1Dict = new(); + public class BidirectionalDictionary : IEnumerable { + private Dictionary t1ToT2Dict = new Dictionary(); + private Dictionary t2ToT1Dict = new Dictionary(); - public IEnumerable FirstTypes => t1ToT2Dict.Keys; - public IEnumerable SecondTypes => t2ToT1Dict.Keys; + public IEnumerable FirstTypes => t1ToT2Dict.Keys; + public IEnumerable SecondTypes => t2ToT1Dict.Keys; - public IEnumerator GetEnumerator() => t1ToT2Dict.GetEnumerator(); + public IEnumerator GetEnumerator() => t1ToT2Dict.GetEnumerator(); - public int Count => t1ToT2Dict.Count; + public int Count => t1ToT2Dict.Count; - public void Add(T1 key, T2 value) - { - t1ToT2Dict[key] = value; - t2ToT1Dict[value] = key; - } + public void Add(T1 key, T2 value) { + t1ToT2Dict[key] = value; + t2ToT1Dict[value] = key; + } - public void Add(T2 key, T1 value) - { - t2ToT1Dict[key] = value; - t1ToT2Dict[value] = key; - } + public void Add(T2 key, T1 value) { + t2ToT1Dict[key] = value; + t1ToT2Dict[value] = key; + } - public T2 Get(T1 key) => t1ToT2Dict[key]; + public T2 Get(T1 key) => t1ToT2Dict[key]; - public T1 Get(T2 key) => t2ToT1Dict[key]; + public T1 Get(T2 key) => t2ToT1Dict[key]; - public bool TryGetValue(T1 key, out T2 value) => t1ToT2Dict.TryGetValue(key, out value); + public bool TryGetValue(T1 key, out T2 value) => t1ToT2Dict.TryGetValue(key, out value); - public bool TryGetValue(T2 key, out T1 value) => t2ToT1Dict.TryGetValue(key, out value); + public bool TryGetValue(T2 key, out T1 value) => t2ToT1Dict.TryGetValue(key, out value); - public bool Contains(T1 key) => t1ToT2Dict.ContainsKey(key); + public bool Contains(T1 key) => t1ToT2Dict.ContainsKey(key); - public bool Contains(T2 key) => t2ToT1Dict.ContainsKey(key); + public bool Contains(T2 key) => t2ToT1Dict.ContainsKey(key); - public void Remove(T1 key) - { - if (Contains(key)) - { - var val = t1ToT2Dict[key]; - t1ToT2Dict.Remove(key); - t2ToT1Dict.Remove(val); - } - } + public void Remove(T1 key) { + if (Contains(key)) { + T2 val = t1ToT2Dict[key]; + t1ToT2Dict.Remove(key); + t2ToT1Dict.Remove(val); + } + } + public void Remove(T2 key) { + if (Contains(key)) { + T1 val = t2ToT1Dict[key]; + t1ToT2Dict.Remove(val); + t2ToT1Dict.Remove(key); + } + } - public void Remove(T2 key) - { - if (Contains(key)) - { - var val = t2ToT1Dict[key]; - t1ToT2Dict.Remove(val); - t2ToT1Dict.Remove(key); - } - } + public T1 this[T2 key] { + get => t2ToT1Dict[key]; + set { + t2ToT1Dict[key] = value; + t1ToT2Dict[value] = key; + } + } - public T1 this[T2 key] - { - get => t2ToT1Dict[key]; - set - { - t2ToT1Dict[key] = value; - t1ToT2Dict[value] = key; - } - } + public T2 this[T1 key] { + get => t1ToT2Dict[key]; + set { + t1ToT2Dict[key] = value; + t2ToT1Dict[value] = key; + } + } - public T2 this[T1 key] - { - get => t1ToT2Dict[key]; - set - { - t1ToT2Dict[key] = value; - t2ToT1Dict[value] = key; - } - } + } } \ No newline at end of file diff --git a/EpicOnlineTransport/Client.cs b/EpicOnlineTransport/Client.cs index 9d2075d4..4ee1616b 100644 --- a/EpicOnlineTransport/Client.cs +++ b/EpicOnlineTransport/Client.cs @@ -1,196 +1,178 @@ using Epic.OnlineServices; using Epic.OnlineServices.P2P; +using Mirror; using System; using System.Threading; using System.Threading.Tasks; using UnityEngine; -namespace EpicTransport; +namespace EpicTransport { + public class Client : Common { -public class Client : Common -{ - public SocketId socketId; - public ProductUserId serverId; + public SocketId socketId; + public ProductUserId serverId; - public bool Connected { get; private set; } - public bool Error { get; private set; } + public bool Connected { get; private set; } + public bool Error { get; private set; } - private event Action OnReceivedData; - private event Action OnConnected; - public event Action OnDisconnected; - private Action SetTransportError; + private event Action OnReceivedData; + private event Action OnConnected; + public event Action OnDisconnected; + // CHANGED + private Action SetTransportError; - private TimeSpan ConnectionTimeout; + private TimeSpan ConnectionTimeout; - public bool isConnecting = false; - public string hostAddress = ""; - private ProductUserId hostProductId = null; - private TaskCompletionSource connectedComplete; - private CancellationTokenSource cancelToken; + public bool isConnecting = false; + public string hostAddress = ""; + private ProductUserId hostProductId = null; + private TaskCompletionSource connectedComplete; + private CancellationTokenSource cancelToken; - private Client(EosTransport transport) : base(transport) => ConnectionTimeout = TimeSpan.FromSeconds(Math.Max(1, transport.timeout)); + private Client(EosTransport transport) : base(transport) { + ConnectionTimeout = TimeSpan.FromSeconds(Math.Max(1, transport.timeout)); + } - public static Client CreateClient(EosTransport transport, string host) - { - var c = new Client(transport); + public static Client CreateClient(EosTransport transport, string host) { + Client c = new Client(transport); - c.hostAddress = host; - c.socketId = new SocketId() { SocketName = RandomString.Generate(20) }; + c.hostAddress = host; + c.socketId = new SocketId() { SocketName = RandomString.Generate(20) }; - c.OnConnected += () => transport.OnClientConnected.Invoke(); - c.OnDisconnected += () => transport.OnClientDisconnected.Invoke(); - c.OnReceivedData += (data, channel) => transport.OnClientDataReceived.Invoke(new ArraySegment(data), channel); - c.SetTransportError = transport.SetTransportError; + c.OnConnected += () => transport.OnClientConnected.Invoke(); + c.OnDisconnected += () => transport.OnClientDisconnected.Invoke(); + c.OnReceivedData += (data, channel) => transport.OnClientDataReceived.Invoke(new ArraySegment(data), channel); + // CHANGED + c.SetTransportError = transport.SetTransportError; - return c; - } + return c; + } - public async void Connect(string host) - { - cancelToken = new CancellationTokenSource(); + public async void Connect(string host) { + cancelToken = new CancellationTokenSource(); - try - { - hostProductId = ProductUserId.FromString(host); - serverId = hostProductId; - connectedComplete = new TaskCompletionSource(); + try { + hostProductId = ProductUserId.FromString(host); + serverId = hostProductId; + connectedComplete = new TaskCompletionSource(); - OnConnected += SetConnectedComplete; + OnConnected += SetConnectedComplete; - SendInternal(hostProductId, socketId, InternalMessages.CONNECT); + SendInternal(hostProductId, socketId, InternalMessages.CONNECT); - Task connectedCompleteTask = connectedComplete.Task; + Task connectedCompleteTask = connectedComplete.Task; - if (await Task.WhenAny(connectedCompleteTask, Task.Delay(ConnectionTimeout /*, cancelToken.Token*/)) != connectedCompleteTask) - { - SetTransportError($"Connection to {host} timed out."); - Debug.LogError($"Connection to {host} timed out."); - OnConnected -= SetConnectedComplete; - OnConnectionFailed(hostProductId); - } + if (await Task.WhenAny(connectedCompleteTask, Task.Delay(ConnectionTimeout/*, cancelToken.Token*/)) != connectedCompleteTask) { + // CHANGED + SetTransportError($"Connection to {host} timed out."); + Debug.LogError($"Connection to {host} timed out."); + OnConnected -= SetConnectedComplete; + OnConnectionFailed(hostProductId); + } - OnConnected -= SetConnectedComplete; - } - catch (FormatException) - { - SetTransportError("Connection string was not in the right format. Did you enter a ProductId?"); - Debug.LogError($"Connection string was not in the right format. Did you enter a ProductId?"); - Error = true; - OnConnectionFailed(hostProductId); - } - catch (Exception ex) - { - SetTransportError(ex.Message); - Debug.LogError(ex.Message); - Error = true; - OnConnectionFailed(hostProductId); - } - finally - { - if (Error) - { - OnConnectionFailed(null); - } - } - } + OnConnected -= SetConnectedComplete; + } catch (FormatException) { + // CHANGED + SetTransportError("Connection string was not in the right format. Did you enter a ProductId?"); + Debug.LogError($"Connection string was not in the right format. Did you enter a ProductId?"); + Error = true; + OnConnectionFailed(hostProductId); + } catch (Exception ex) { + // CHANGED + SetTransportError(ex.Message); + Debug.LogError(ex.Message); + Error = true; + OnConnectionFailed(hostProductId); + } finally { + if (Error) { + OnConnectionFailed(null); + } + } - public void Disconnect() - { - if (serverId != null) - { - CloseP2PSessionWithUser(serverId, socketId); + } - serverId = null; - } - else - { - return; - } + public void Disconnect() { + if (serverId != null) { + CloseP2PSessionWithUser(serverId, socketId); - SendInternal(hostProductId, socketId, InternalMessages.DISCONNECT); + serverId = null; + } else { + return; + } - Dispose(); - cancelToken?.Cancel(); + SendInternal(hostProductId, socketId, InternalMessages.DISCONNECT); - WaitForClose(hostProductId, socketId); - } + Dispose(); + cancelToken?.Cancel(); - private void SetConnectedComplete() => connectedComplete.SetResult(connectedComplete.Task); + WaitForClose(hostProductId, socketId); + } - protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) - { - if (ignoreAllMessages) - { - return; - } + private void SetConnectedComplete() => connectedComplete.SetResult(connectedComplete.Task); - if (clientUserId != hostProductId) - { - Debug.LogError("Received a message from an unknown"); - return; - } + protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) { + if (ignoreAllMessages) { + return; + } - OnReceivedData.Invoke(data, channel); - } + if (clientUserId != hostProductId) { + Debug.LogError("Received a message from an unknown"); + return; + } - protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) - { - if (ignoreAllMessages) - { - return; - } + OnReceivedData.Invoke(data, channel); + } - if (deadSockets.Contains(result.SocketId.SocketName)) - { - Debug.LogError("Received incoming connection request from dead socket"); - return; - } + protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) { + if (ignoreAllMessages) { + return; + } - if (hostProductId == result.RemoteUserId) - { - EOSSDKComponent.GetP2PInterface().AcceptConnection( - new AcceptConnectionOptions() - { - LocalUserId = EOSSDKComponent.LocalUserProductId, - RemoteUserId = result.RemoteUserId, - SocketId = result.SocketId - }); - } - else - { - Debug.LogError("P2P Acceptance Request from unknown host ID."); - } - } + if (deadSockets.Contains(result.SocketId.SocketName)) { + Debug.LogError("Received incoming connection request from dead socket"); + return; + } - protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) - { - if (ignoreAllMessages) - { - return; - } + if (hostProductId == result.RemoteUserId) { + EOSSDKComponent.GetP2PInterface().AcceptConnection( + new AcceptConnectionOptions() { + LocalUserId = EOSSDKComponent.LocalUserProductId, + RemoteUserId = result.RemoteUserId, + SocketId = result.SocketId + }); + } else { + Debug.LogError("P2P Acceptance Request from unknown host ID."); + } + } - switch (type) - { - case InternalMessages.ACCEPT_CONNECT: - Connected = true; - OnConnected.Invoke(); - Debug.Log("Connection established."); - break; - case InternalMessages.DISCONNECT: - SetTransportError("host disconnected"); - Connected = false; - Debug.Log("Disconnected."); + protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) { + if (ignoreAllMessages) { + return; + } - OnDisconnected.Invoke(); - break; - default: - Debug.Log("Received unknown message type"); - break; - } - } + switch (type) { + case InternalMessages.ACCEPT_CONNECT: + Connected = true; + OnConnected.Invoke(); + Debug.Log("Connection established."); + break; + case InternalMessages.DISCONNECT: + // CHANGED + SetTransportError("host disconnected"); + Connected = false; + Debug.Log("Disconnected."); - public void Send(byte[] data, int channelId) => Send(hostProductId, socketId, data, (byte)channelId); + OnDisconnected.Invoke(); + break; + default: + Debug.Log("Received unknown message type"); + break; + } + } - protected override void OnConnectionFailed(ProductUserId remoteId) => OnDisconnected.Invoke(); - public void EosNotInitialized() => OnDisconnected.Invoke(); + public void Send(byte[] data, int channelId) => Send(hostProductId, socketId, data, (byte) channelId); + + protected override void OnConnectionFailed(ProductUserId remoteId) => OnDisconnected.Invoke(); + public void EosNotInitialized() => OnDisconnected.Invoke(); + } } \ No newline at end of file diff --git a/EpicOnlineTransport/Common.cs b/EpicOnlineTransport/Common.cs index 0f5164c7..57abf3da 100644 --- a/EpicOnlineTransport/Common.cs +++ b/EpicOnlineTransport/Common.cs @@ -1,334 +1,288 @@ -using Epic.OnlineServices; + +using Epic.OnlineServices; using Epic.OnlineServices.P2P; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; -namespace EpicTransport; +namespace EpicTransport { + public abstract class Common { -public abstract class Common -{ - private PacketReliability[] channels; - private int internal_ch => channels.Length; + private PacketReliability[] channels; + private int internal_ch => channels.Length; - protected enum InternalMessages : byte - { - CONNECT, - ACCEPT_CONNECT, - DISCONNECT - } + protected enum InternalMessages : byte { + CONNECT, + ACCEPT_CONNECT, + DISCONNECT + } - protected struct PacketKey - { - public ProductUserId productUserId; - public byte channel; - } + protected struct PacketKey { + public ProductUserId productUserId; + public byte channel; + } - private OnIncomingConnectionRequestCallback OnIncomingConnectionRequest; - private ulong incomingNotificationId = 0; - private OnRemoteConnectionClosedCallback OnRemoteConnectionClosed; - private ulong outgoingNotificationId = 0; + private OnIncomingConnectionRequestCallback OnIncomingConnectionRequest; + ulong incomingNotificationId = 0; + private OnRemoteConnectionClosedCallback OnRemoteConnectionClosed; + ulong outgoingNotificationId = 0; - protected readonly EosTransport transport; + protected readonly EosTransport transport; - protected List deadSockets; - public bool ignoreAllMessages = false; + protected List deadSockets; + public bool ignoreAllMessages = false; - // Mapping from PacketKey to a List of Packet Lists - protected Dictionary>> incomingPackets = new(); + // Mapping from PacketKey to a List of Packet Lists + protected Dictionary>> incomingPackets = new Dictionary>>(); - protected Common(EosTransport transport) - { - channels = transport.Channels; + protected Common(EosTransport transport) { + channels = transport.Channels; - deadSockets = new List(); + deadSockets = new List(); - var addNotifyPeerConnectionRequestOptions = new AddNotifyPeerConnectionRequestOptions(); - addNotifyPeerConnectionRequestOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; - addNotifyPeerConnectionRequestOptions.SocketId = null; + AddNotifyPeerConnectionRequestOptions addNotifyPeerConnectionRequestOptions = new AddNotifyPeerConnectionRequestOptions(); + addNotifyPeerConnectionRequestOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; + addNotifyPeerConnectionRequestOptions.SocketId = null; - OnIncomingConnectionRequest += OnNewConnection; - OnRemoteConnectionClosed += OnConnectFail; + OnIncomingConnectionRequest += OnNewConnection; + OnRemoteConnectionClosed += OnConnectFail; - incomingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionRequest(addNotifyPeerConnectionRequestOptions, - null, OnIncomingConnectionRequest); + incomingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionRequest(addNotifyPeerConnectionRequestOptions, + null, OnIncomingConnectionRequest); - var addNotifyPeerConnectionClosedOptions = new AddNotifyPeerConnectionClosedOptions(); - addNotifyPeerConnectionClosedOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; - addNotifyPeerConnectionClosedOptions.SocketId = null; + AddNotifyPeerConnectionClosedOptions addNotifyPeerConnectionClosedOptions = new AddNotifyPeerConnectionClosedOptions(); + addNotifyPeerConnectionClosedOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; + addNotifyPeerConnectionClosedOptions.SocketId = null; - outgoingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionClosed(addNotifyPeerConnectionClosedOptions, - null, OnRemoteConnectionClosed); + outgoingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionClosed(addNotifyPeerConnectionClosedOptions, + null, OnRemoteConnectionClosed); - if (outgoingNotificationId == 0 || incomingNotificationId == 0) - { - Debug.LogError("Couldn't bind notifications with P2P interface"); - } + if (outgoingNotificationId == 0 || incomingNotificationId == 0) { + Debug.LogError("Couldn't bind notifications with P2P interface"); + } - incomingPackets = new Dictionary>>(); + incomingPackets = new Dictionary>>(); - this.transport = transport; - } + this.transport = transport; - protected void Dispose() - { - EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionRequest(incomingNotificationId); - EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionClosed(outgoingNotificationId); + } - transport.ResetIgnoreMessagesAtStartUpTimer(); - } + protected void Dispose() { + EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionRequest(incomingNotificationId); + EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionClosed(outgoingNotificationId); - protected abstract void OnNewConnection(OnIncomingConnectionRequestInfo result); + transport.ResetIgnoreMessagesAtStartUpTimer(); + } - private void OnConnectFail(OnRemoteConnectionClosedInfo result) - { - if (ignoreAllMessages) - { - return; - } + protected abstract void OnNewConnection(OnIncomingConnectionRequestInfo result); - OnConnectionFailed(result.RemoteUserId); + private void OnConnectFail(OnRemoteConnectionClosedInfo result) { + if (ignoreAllMessages) { + return; + } - switch (result.Reason) - { - case ConnectionClosedReason.ClosedByLocalUser: - throw new Exception("Connection cLosed: The Connection was gracecfully closed by the local user."); - case ConnectionClosedReason.ClosedByPeer: - throw new Exception("Connection closed: The connection was gracefully closed by remote user."); - case ConnectionClosedReason.ConnectionClosed: - throw new Exception("Connection closed: The connection was unexpectedly closed."); - case ConnectionClosedReason.ConnectionFailed: - throw new Exception("Connection failed: Failled to establish connection."); - case ConnectionClosedReason.InvalidData: - throw new Exception("Connection failed: The remote user sent us invalid data.."); - case ConnectionClosedReason.InvalidMessage: - throw new Exception("Connection failed: The remote user sent us an invalid message."); - case ConnectionClosedReason.NegotiationFailed: - throw new Exception("Connection failed: Negotiation failed."); - case ConnectionClosedReason.TimedOut: - throw new Exception("Connection failed: Timeout."); - case ConnectionClosedReason.TooManyConnections: - throw new Exception("Connection failed: Too many connections."); - case ConnectionClosedReason.UnexpectedError: - throw new Exception("Unexpected Error, connection will be closed"); - case ConnectionClosedReason.Unknown: - default: - throw new Exception("Unknown Error, connection has been closed."); - } - } + OnConnectionFailed(result.RemoteUserId); - protected void SendInternal(ProductUserId target, SocketId socketId, InternalMessages type) - { - EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() - { - AllowDelayedDelivery = true, - Channel = (byte)internal_ch, - Data = new byte[] { (byte)type }, - LocalUserId = EOSSDKComponent.LocalUserProductId, - Reliability = PacketReliability.ReliableOrdered, - RemoteUserId = target, - SocketId = socketId - }); - } + switch (result.Reason) { + case ConnectionClosedReason.ClosedByLocalUser: + throw new Exception("Connection cLosed: The Connection was gracecfully closed by the local user."); + case ConnectionClosedReason.ClosedByPeer: + throw new Exception("Connection closed: The connection was gracefully closed by remote user."); + case ConnectionClosedReason.ConnectionClosed: + throw new Exception("Connection closed: The connection was unexpectedly closed."); + case ConnectionClosedReason.ConnectionFailed: + throw new Exception("Connection failed: Failled to establish connection."); + case ConnectionClosedReason.InvalidData: + throw new Exception("Connection failed: The remote user sent us invalid data.."); + case ConnectionClosedReason.InvalidMessage: + throw new Exception("Connection failed: The remote user sent us an invalid message."); + case ConnectionClosedReason.NegotiationFailed: + throw new Exception("Connection failed: Negotiation failed."); + case ConnectionClosedReason.TimedOut: + throw new Exception("Connection failed: Timeout."); + case ConnectionClosedReason.TooManyConnections: + throw new Exception("Connection failed: Too many connections."); + case ConnectionClosedReason.UnexpectedError: + throw new Exception("Unexpected Error, connection will be closed"); + case ConnectionClosedReason.Unknown: + default: + throw new Exception("Unknown Error, connection has been closed."); + } + } - protected void Send(ProductUserId host, SocketId socketId, byte[] msgBuffer, byte channel) - { - var result = EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() - { - AllowDelayedDelivery = true, - Channel = channel, - Data = msgBuffer, - LocalUserId = EOSSDKComponent.LocalUserProductId, - Reliability = channels[channel], - RemoteUserId = host, - SocketId = socketId - }); + protected void SendInternal(ProductUserId target, SocketId socketId, InternalMessages type) { + EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() { + AllowDelayedDelivery = true, + Channel = (byte) internal_ch, + Data = new byte[] { (byte) type }, + LocalUserId = EOSSDKComponent.LocalUserProductId, + Reliability = PacketReliability.ReliableOrdered, + RemoteUserId = target, + SocketId = socketId + }); + } - if (result != Result.Success) - { - Debug.LogError("Send failed " + result); - } - } - private bool Receive(out ProductUserId clientProductUserId, out SocketId socketId, out byte[] receiveBuffer, byte channel) - { - var result = EOSSDKComponent.GetP2PInterface().ReceivePacket(new ReceivePacketOptions() - { - LocalUserId = EOSSDKComponent.LocalUserProductId, - MaxDataSizeBytes = P2PInterface.MaxPacketSize, - RequestedChannel = channel - }, out clientProductUserId, out socketId, out channel, out receiveBuffer); + protected void Send(ProductUserId host, SocketId socketId, byte[] msgBuffer, byte channel) { + Result result = EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() { + AllowDelayedDelivery = true, + Channel = channel, + Data = msgBuffer, + LocalUserId = EOSSDKComponent.LocalUserProductId, + Reliability = channels[channel], + RemoteUserId = host, + SocketId = socketId + }); - if (result == Result.Success) - { - return true; - } + if(result != Result.Success) { + Debug.LogError("Send failed " + result); + } + } - receiveBuffer = null; - clientProductUserId = null; - return false; - } + private bool Receive(out ProductUserId clientProductUserId, out SocketId socketId, out byte[] receiveBuffer, byte channel) { + Result result = EOSSDKComponent.GetP2PInterface().ReceivePacket(new ReceivePacketOptions() { + LocalUserId = EOSSDKComponent.LocalUserProductId, + MaxDataSizeBytes = P2PInterface.MaxPacketSize, + RequestedChannel = channel + }, out clientProductUserId, out socketId, out channel, out receiveBuffer); - protected virtual void CloseP2PSessionWithUser(ProductUserId clientUserID, SocketId socketId) - { - if (socketId == null) - { - Debug.LogWarning("Socket ID == null | " + ignoreAllMessages); - return; - } + if (result == Result.Success) { + return true; + } - if (deadSockets == null) - { - Debug.LogWarning("DeadSockets == null"); - return; - } + receiveBuffer = null; + clientProductUserId = null; + return false; + } - if (deadSockets.Contains(socketId.SocketName)) - { - return; - } - else - { - deadSockets.Add(socketId.SocketName); - } - } + protected virtual void CloseP2PSessionWithUser(ProductUserId clientUserID, SocketId socketId) { + if (socketId == null) { + Debug.LogWarning("Socket ID == null | " + ignoreAllMessages); + return; + } - protected void WaitForClose(ProductUserId clientUserID, SocketId socketId) => transport.StartCoroutine(DelayedClose(clientUserID, socketId)); + if (deadSockets == null) { + Debug.LogWarning("DeadSockets == null"); + return; + } - private IEnumerator DelayedClose(ProductUserId clientUserID, SocketId socketId) - { - yield return null; - CloseP2PSessionWithUser(clientUserID, socketId); - } + if (deadSockets.Contains(socketId.SocketName)) { + return; + } else { + deadSockets.Add(socketId.SocketName); + } + } - public void ReceiveData() - { - try - { - // Internal Channel, no fragmentation here - var socketId = new SocketId(); - while (transport.enabled && Receive(out var clientUserID, out socketId, out var internalMessage, (byte)internal_ch)) - { - if (internalMessage.Length == 1) - { - OnReceiveInternalData((InternalMessages)internalMessage[0], clientUserID, socketId); - return; // Wait one frame - } - else - { - Debug.Log("Incorrect package length on internal channel."); - } - } - // Insert new packet at the correct location in the incoming queue - for (var chNum = 0; chNum < channels.Length; chNum++) - { - while (transport.enabled && Receive(out var clientUserID, out socketId, out var receiveBuffer, (byte)chNum)) - { - var incomingPacketKey = new PacketKey(); - incomingPacketKey.productUserId = clientUserID; - incomingPacketKey.channel = (byte)chNum; + protected void WaitForClose(ProductUserId clientUserID, SocketId socketId) => transport.StartCoroutine(DelayedClose(clientUserID, socketId)); + private IEnumerator DelayedClose(ProductUserId clientUserID, SocketId socketId) { + yield return null; + CloseP2PSessionWithUser(clientUserID, socketId); + } - var packet = new Packet(); - packet.FromBytes(receiveBuffer); + public void ReceiveData() { + try { + // Internal Channel, no fragmentation here + SocketId socketId = new SocketId(); + while (transport.enabled && Receive(out ProductUserId clientUserID, out socketId, out byte[] internalMessage, (byte) internal_ch)) { + if (internalMessage.Length == 1) { + OnReceiveInternalData((InternalMessages) internalMessage[0], clientUserID, socketId); + return; // Wait one frame + } else { + Debug.Log("Incorrect package length on internal channel."); + } + } - if (!incomingPackets.ContainsKey(incomingPacketKey)) - { - incomingPackets.Add(incomingPacketKey, new List>()); - } + // Insert new packet at the correct location in the incoming queue + for (int chNum = 0; chNum < channels.Length; chNum++) { + while (transport.enabled && Receive(out ProductUserId clientUserID, out socketId, out byte[] receiveBuffer, (byte) chNum)) { + PacketKey incomingPacketKey = new PacketKey(); + incomingPacketKey.productUserId = clientUserID; + incomingPacketKey.channel = (byte)chNum; - var packetListIndex = incomingPackets[incomingPacketKey].Count; - for (var i = 0; i < incomingPackets[incomingPacketKey].Count; i++) - { - if (incomingPackets[incomingPacketKey][i][0].id == packet.id) - { - packetListIndex = i; - break; - } - } + Packet packet = new Packet(); + packet.FromBytes(receiveBuffer); - if (packetListIndex == incomingPackets[incomingPacketKey].Count) - { - incomingPackets[incomingPacketKey].Add(new List()); - } + if (!incomingPackets.ContainsKey(incomingPacketKey)) { + incomingPackets.Add(incomingPacketKey, new List>()); + } - var insertionIndex = -1; + int packetListIndex = incomingPackets[incomingPacketKey].Count; + for(int i = 0; i < incomingPackets[incomingPacketKey].Count; i++) { + if(incomingPackets[incomingPacketKey][i][0].id == packet.id) { + packetListIndex = i; + break; + } + } + + if (packetListIndex == incomingPackets[incomingPacketKey].Count) { + incomingPackets[incomingPacketKey].Add(new List()); + } - for (var i = 0; i < incomingPackets[incomingPacketKey][packetListIndex].Count; i++) - { - if (incomingPackets[incomingPacketKey][packetListIndex][i].fragment > packet.fragment) - { - insertionIndex = i; - break; - } - } + int insertionIndex = -1; - if (insertionIndex >= 0) - { - incomingPackets[incomingPacketKey][packetListIndex].Insert(insertionIndex, packet); - } - else - { - incomingPackets[incomingPacketKey][packetListIndex].Add(packet); - } - } - } + for (int i = 0; i < incomingPackets[incomingPacketKey][packetListIndex].Count; i++) { + if (incomingPackets[incomingPacketKey][packetListIndex][i].fragment > packet.fragment) { + insertionIndex = i; + break; + } + } - // Find fully received packets - var emptyPacketLists = new List>(); - foreach (var keyValuePair in incomingPackets) - { - for (var packetList = 0; packetList < keyValuePair.Value.Count; packetList++) - { - var packetReady = true; - var packetLength = 0; - for (var packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) - { - var tempPacket = keyValuePair.Value[packetList][packet]; - if (tempPacket.fragment != packet || packet == keyValuePair.Value[packetList].Count - 1 && tempPacket.moreFragments) - { - packetReady = false; - } - else - { - packetLength += tempPacket.data.Length; - } - } + if (insertionIndex >= 0) { + incomingPackets[incomingPacketKey][packetListIndex].Insert(insertionIndex, packet); + } else { + incomingPackets[incomingPacketKey][packetListIndex].Add(packet); + } + } + } - if (packetReady) - { - var data = new byte[packetLength]; - var dataIndex = 0; + // Find fully received packets + List> emptyPacketLists = new List>(); + foreach(KeyValuePair>> keyValuePair in incomingPackets) { + for(int packetList = 0; packetList < keyValuePair.Value.Count; packetList++) { + bool packetReady = true; + int packetLength = 0; + for (int packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) { + Packet tempPacket = keyValuePair.Value[packetList][packet]; + if (tempPacket.fragment != packet || (packet == keyValuePair.Value[packetList].Count - 1 && tempPacket.moreFragments)) { + packetReady = false; + } else { + packetLength += tempPacket.data.Length; + } + } - for (var packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) - { - Array.Copy(keyValuePair.Value[packetList][packet].data, 0, data, dataIndex, keyValuePair.Value[packetList][packet].data.Length); - dataIndex += keyValuePair.Value[packetList][packet].data.Length; - } + if (packetReady) { + byte[] data = new byte[packetLength]; + int dataIndex = 0; - OnReceiveData(data, keyValuePair.Key.productUserId, keyValuePair.Key.channel); + for (int packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) { + Array.Copy(keyValuePair.Value[packetList][packet].data, 0, data, dataIndex, keyValuePair.Value[packetList][packet].data.Length); + dataIndex += keyValuePair.Value[packetList][packet].data.Length; + } - //keyValuePair.Value[packetList].Clear(); - emptyPacketLists.Add(keyValuePair.Value[packetList]); - } - } + OnReceiveData(data, keyValuePair.Key.productUserId, keyValuePair.Key.channel); - for (var i = 0; i < emptyPacketLists.Count; i++) - { - keyValuePair.Value.Remove(emptyPacketLists[i]); - } + if(transport.ServerActive() || transport.ClientActive()) + emptyPacketLists.Add(keyValuePair.Value[packetList]); + } + } - emptyPacketLists.Clear(); - } - } - catch (Exception e) - { - Debug.LogException(e); - } - } + for (int i = 0; i < emptyPacketLists.Count; i++) { + keyValuePair.Value.Remove(emptyPacketLists[i]); + } + emptyPacketLists.Clear(); + } - protected abstract void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserID, SocketId socketId); - protected abstract void OnReceiveData(byte[] data, ProductUserId clientUserID, int channel); - protected abstract void OnConnectionFailed(ProductUserId remoteId); + + + } catch (Exception e) { + Debug.LogException(e); + } + } + + protected abstract void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserID, SocketId socketId); + protected abstract void OnReceiveData(byte[] data, ProductUserId clientUserID, int channel); + protected abstract void OnConnectionFailed(ProductUserId remoteId); + } } \ No newline at end of file diff --git a/EpicOnlineTransport/EOSSDKComponent.cs b/EpicOnlineTransport/EOSSDKComponent.cs index 2fdd9d77..6a322b86 100644 --- a/EpicOnlineTransport/EOSSDKComponent.cs +++ b/EpicOnlineTransport/EOSSDKComponent.cs @@ -1,6 +1,10 @@ using Epic.OnlineServices; using Epic.OnlineServices.Logging; using Epic.OnlineServices.Platform; + +using System; +using System.Runtime.InteropServices; + using UnityEngine; /// @@ -10,120 +14,142 @@ using UnityEngine; /// after releasing the SDK the game has to be restarted in order to initialize the SDK again. /// In the unity editor the OnDestroy function will not run so that we dont have to restart the editor after play. /// -namespace EpicTransport; +namespace EpicTransport { + [DefaultExecutionOrder(-32000)] + public class EOSSDKComponent : MonoBehaviour { -[DefaultExecutionOrder(-32000)] -public class EOSSDKComponent : MonoBehaviour -{ - // Unity Inspector shown variables + // Unity Inspector shown variables + + [SerializeField] + // CHANGED + public EosApiKey apiKeys; - [SerializeField] - public EosApiKey apiKeys; + [Header("User Login")] + public bool authInterfaceLogin = false; + public Epic.OnlineServices.Auth.LoginCredentialType authInterfaceCredentialType = Epic.OnlineServices.Auth.LoginCredentialType.AccountPortal; + public uint devAuthToolPort = 7878; + public string devAuthToolCredentialName = ""; + public Epic.OnlineServices.ExternalCredentialType connectInterfaceCredentialType = Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken; + public string deviceModel = "PC Windows 64bit"; + [SerializeField] private string displayName = "User"; + public static string DisplayName { + get { + return Instance.displayName; + } + set { + Instance.displayName = value; + } + } - [Header("User Login")] - public bool authInterfaceLogin = false; + [Header("Misc")] + public LogLevel epicLoggerLevel = LogLevel.Error; - public Epic.OnlineServices.Auth.LoginCredentialType authInterfaceCredentialType = Epic.OnlineServices.Auth.LoginCredentialType.AccountPortal; - public uint devAuthToolPort = 7878; - public string devAuthToolCredentialName = ""; - public ExternalCredentialType connectInterfaceCredentialType = ExternalCredentialType.DeviceidAccessToken; - public string deviceModel = "PC Windows 64bit"; - [SerializeField] private string displayName = "User"; + [SerializeField] private bool collectPlayerMetrics = true; + public static bool CollectPlayerMetrics { + get { + return Instance.collectPlayerMetrics; + } + } - public static string DisplayName - { - get => Instance.displayName; - set => Instance.displayName = value; - } + public bool checkForEpicLauncherAndRestart = false; + public bool delayedInitialization = false; + public float platformTickIntervalInSeconds = 0.0f; + private float platformTickTimer = 0f; + public uint tickBudgetInMilliseconds = 0; - [Header("Misc")] - public LogLevel epicLoggerLevel = LogLevel.Error; + // End Unity Inspector shown variables - [SerializeField] - private bool collectPlayerMetrics = true; + private ulong authExpirationHandle; - public static bool CollectPlayerMetrics => Instance.collectPlayerMetrics; - public bool checkForEpicLauncherAndRestart = false; - public bool delayedInitialization = false; - public float platformTickIntervalInSeconds = 0.0f; - private float platformTickTimer = 0f; - public uint tickBudgetInMilliseconds = 0; + private string authInterfaceLoginCredentialId = null; + public static void SetAuthInterfaceLoginCredentialId(string credentialId) => Instance.authInterfaceLoginCredentialId = credentialId; + private string authInterfaceCredentialToken = null; + public static void SetAuthInterfaceCredentialToken(string credentialToken) => Instance.authInterfaceCredentialToken = credentialToken; + private string connectInterfaceCredentialToken = null; + public static void SetConnectInterfaceCredentialToken(string credentialToken) => Instance.connectInterfaceCredentialToken = credentialToken; - // End Unity Inspector shown variables + private PlatformInterface EOS; - private ulong authExpirationHandle; + // Interfaces + public static Epic.OnlineServices.Achievements.AchievementsInterface GetAchievementsInterface() => Instance.EOS.GetAchievementsInterface(); + public static Epic.OnlineServices.Auth.AuthInterface GetAuthInterface() => Instance.EOS.GetAuthInterface(); + public static Epic.OnlineServices.Connect.ConnectInterface GetConnectInterface() => Instance.EOS.GetConnectInterface(); + public static Epic.OnlineServices.Ecom.EcomInterface GetEcomInterface() => Instance.EOS.GetEcomInterface(); + public static Epic.OnlineServices.Friends.FriendsInterface GetFriendsInterface() => Instance.EOS.GetFriendsInterface(); + public static Epic.OnlineServices.Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() => Instance.EOS.GetLeaderboardsInterface(); + public static Epic.OnlineServices.Lobby.LobbyInterface GetLobbyInterface() => Instance.EOS.GetLobbyInterface(); + public static Epic.OnlineServices.Metrics.MetricsInterface GetMetricsInterface() => Instance.EOS.GetMetricsInterface(); // Handled by the transport automatically, only use this interface if Mirror is not used for singleplayer + public static Epic.OnlineServices.Mods.ModsInterface GetModsInterface() => Instance.EOS.GetModsInterface(); + public static Epic.OnlineServices.P2P.P2PInterface GetP2PInterface() => Instance.EOS.GetP2PInterface(); + public static Epic.OnlineServices.PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterface() => Instance.EOS.GetPlayerDataStorageInterface(); + public static Epic.OnlineServices.Presence.PresenceInterface GetPresenceInterface() => Instance.EOS.GetPresenceInterface(); + public static Epic.OnlineServices.Sessions.SessionsInterface GetSessionsInterface() => Instance.EOS.GetSessionsInterface(); + public static Epic.OnlineServices.TitleStorage.TitleStorageInterface GetTitleStorageInterface() => Instance.EOS.GetTitleStorageInterface(); + public static Epic.OnlineServices.UI.UIInterface GetUIInterface() => Instance.EOS.GetUIInterface(); + public static Epic.OnlineServices.UserInfo.UserInfoInterface GetUserInfoInterface() => Instance.EOS.GetUserInfoInterface(); - private string authInterfaceLoginCredentialId = null; - public static void SetAuthInterfaceLoginCredentialId(string credentialId) => Instance.authInterfaceLoginCredentialId = credentialId; - private string authInterfaceCredentialToken = null; - public static void SetAuthInterfaceCredentialToken(string credentialToken) => Instance.authInterfaceCredentialToken = credentialToken; - private string connectInterfaceCredentialToken = null; - public static void SetConnectInterfaceCredentialToken(string credentialToken) => Instance.connectInterfaceCredentialToken = credentialToken; - private PlatformInterface EOS; + protected EpicAccountId localUserAccountId; + public static EpicAccountId LocalUserAccountId { + get { + return Instance.localUserAccountId; + } + } - // Interfaces - public static Epic.OnlineServices.Achievements.AchievementsInterface GetAchievementsInterface() => Instance.EOS.GetAchievementsInterface(); - public static Epic.OnlineServices.Auth.AuthInterface GetAuthInterface() => Instance.EOS.GetAuthInterface(); - public static Epic.OnlineServices.Connect.ConnectInterface GetConnectInterface() => Instance.EOS.GetConnectInterface(); - public static Epic.OnlineServices.Ecom.EcomInterface GetEcomInterface() => Instance.EOS.GetEcomInterface(); - public static Epic.OnlineServices.Friends.FriendsInterface GetFriendsInterface() => Instance.EOS.GetFriendsInterface(); - public static Epic.OnlineServices.Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() => Instance.EOS.GetLeaderboardsInterface(); - public static Epic.OnlineServices.Lobby.LobbyInterface GetLobbyInterface() => Instance.EOS.GetLobbyInterface(); - public static Epic.OnlineServices.Metrics.MetricsInterface GetMetricsInterface() => Instance.EOS.GetMetricsInterface(); // Handled by the transport automatically, only use this interface if Mirror is not used for singleplayer - public static Epic.OnlineServices.Mods.ModsInterface GetModsInterface() => Instance.EOS.GetModsInterface(); - public static Epic.OnlineServices.P2P.P2PInterface GetP2PInterface() => Instance.EOS.GetP2PInterface(); - public static Epic.OnlineServices.PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterface() => Instance.EOS.GetPlayerDataStorageInterface(); - public static Epic.OnlineServices.Presence.PresenceInterface GetPresenceInterface() => Instance.EOS.GetPresenceInterface(); - public static Epic.OnlineServices.Sessions.SessionsInterface GetSessionsInterface() => Instance.EOS.GetSessionsInterface(); - public static Epic.OnlineServices.TitleStorage.TitleStorageInterface GetTitleStorageInterface() => Instance.EOS.GetTitleStorageInterface(); - public static Epic.OnlineServices.UI.UIInterface GetUIInterface() => Instance.EOS.GetUIInterface(); - public static Epic.OnlineServices.UserInfo.UserInfoInterface GetUserInfoInterface() => Instance.EOS.GetUserInfoInterface(); + protected string localUserAccountIdString; + public static string LocalUserAccountIdString { + get { + return Instance.localUserAccountIdString; + } + } - protected EpicAccountId localUserAccountId; - public static EpicAccountId LocalUserAccountId => Instance.localUserAccountId; + protected ProductUserId localUserProductId; + public static ProductUserId LocalUserProductId { + get { + return Instance.localUserProductId; + } + } - protected string localUserAccountIdString; - public static string LocalUserAccountIdString => Instance.localUserAccountIdString; + protected string localUserProductIdString; + public static string LocalUserProductIdString { + get { + return Instance.localUserProductIdString; + } + } - protected ProductUserId localUserProductId; - public static ProductUserId LocalUserProductId => Instance.localUserProductId; + protected bool initialized; + public static bool Initialized { + get { + return Instance.initialized; + } + } - protected string localUserProductIdString; - public static string LocalUserProductIdString => Instance.localUserProductIdString; + protected bool isConnecting; + public static bool IsConnecting { + get { + return Instance.isConnecting; + } + } - protected bool initialized; - public static bool Initialized => Instance.initialized; + protected static EOSSDKComponent instance; + protected static EOSSDKComponent Instance { + get { + if (instance == null) { + return new GameObject("EOSSDKComponent").AddComponent(); + } else { + return instance; + } + } + } - protected bool isConnecting; - public static bool IsConnecting => Instance.isConnecting; + public static void Tick() { + instance.platformTickTimer -= Time.deltaTime; + instance.EOS.Tick(); + } - protected static EOSSDKComponent instance; - - protected static EOSSDKComponent Instance - { - get - { - if (instance == null) - { - return new GameObject("EOSSDKComponent").AddComponent(); - } - else - { - return instance; - } - } - } - - public static void Tick() - { - instance.platformTickTimer -= Time.deltaTime; - instance.EOS.Tick(); - } - - // If we're in editor, we should dynamically load and unload the SDK between play sessions. - // This allows us to initialize the SDK each time the game is run in editor. + // If we're in editor, we should dynamically load and unload the SDK between play sessions. + // This allows us to initialize the SDK each time the game is run in editor. #if UNITY_EDITOR_WIN [DllImport("Kernel32.dll")] private static extern IntPtr LoadLibrary(string lpLibFileName); @@ -136,7 +162,7 @@ public class EOSSDKComponent : MonoBehaviour private IntPtr libraryPointer; #endif - + #if UNITY_EDITOR_LINUX [DllImport("libdl.so", EntryPoint = "dlopen")] private static extern IntPtr LoadLibrary(String lpFileName, int flags = 2); @@ -163,27 +189,24 @@ public class EOSSDKComponent : MonoBehaviour private IntPtr libraryPointer; #endif - private void Awake() - { - // Initialize Java version of the SDK with a reference to the VM with JNI - // See https://eoshelp.epicgames.com/s/question/0D54z00006ufJBNCA2/cant-get-createdeviceid-to-work-in-unity-android-c-sdk?language=en_US - if (Application.platform == RuntimePlatform.Android) - { - var unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); - var activity = unityPlayer.GetStatic("currentActivity"); - var context = activity.Call("getApplicationContext"); - var EOS_SDK_JAVA = new AndroidJavaClass("com.epicgames.mobile.eossdk.EOSSDK"); - EOS_SDK_JAVA.CallStatic("init", context); - } - - // Prevent multiple instances - if (instance != null) - { - Destroy(gameObject); - return; - } - - instance = this; + private void Awake() { + // Initialize Java version of the SDK with a reference to the VM with JNI + // See https://eoshelp.epicgames.com/s/question/0D54z00006ufJBNCA2/cant-get-createdeviceid-to-work-in-unity-android-c-sdk?language=en_US + if (Application.platform == RuntimePlatform.Android) + { + AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); + AndroidJavaObject activity = unityPlayer.GetStatic("currentActivity"); + AndroidJavaObject context = activity.Call("getApplicationContext"); + AndroidJavaClass EOS_SDK_JAVA = new AndroidJavaClass("com.epicgames.mobile.eossdk.EOSSDK"); + EOS_SDK_JAVA.CallStatic("init", context); + } + + // Prevent multiple instances + if (instance != null) { + Destroy(gameObject); + return; + } + instance = this; #if UNITY_EDITOR var libraryPath = "Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/" + Config.LibraryName; @@ -196,260 +219,207 @@ public class EOSSDKComponent : MonoBehaviour Bindings.Hook(libraryPointer, GetProcAddress); #endif - if (!delayedInitialization) - { - Initialize(); - } - } + if (!delayedInitialization) { + Initialize(); + } + } - protected void InitializeImplementation() - { - isConnecting = true; + protected void InitializeImplementation() { + isConnecting = true; - var initializeOptions = new InitializeOptions() - { - ProductName = apiKeys.epicProductName, - ProductVersion = apiKeys.epicProductVersion - }; + var initializeOptions = new InitializeOptions() { + ProductName = apiKeys.epicProductName, + ProductVersion = apiKeys.epicProductVersion + }; - var initializeResult = PlatformInterface.Initialize(initializeOptions); + var initializeResult = PlatformInterface.Initialize(initializeOptions); - // This code is called each time the game is run in the editor, so we catch the case where the SDK has already been initialized in the editor. - var isAlreadyConfiguredInEditor = Application.isEditor && initializeResult == Result.AlreadyConfigured; - if (initializeResult != Result.Success && !isAlreadyConfiguredInEditor) - { - throw new System.Exception("Failed to initialize platform: " + initializeResult); - } + // This code is called each time the game is run in the editor, so we catch the case where the SDK has already been initialized in the editor. + var isAlreadyConfiguredInEditor = Application.isEditor && initializeResult == Result.AlreadyConfigured; + if (initializeResult != Result.Success && !isAlreadyConfiguredInEditor) { + throw new System.Exception("Failed to initialize platform: " + initializeResult); + } - // The SDK outputs lots of information that is useful for debugging. - // Make sure to set up the logging interface as early as possible: after initializing. - LoggingInterface.SetLogLevel(LogCategory.AllCategories, epicLoggerLevel); - LoggingInterface.SetCallback(message => Logger.EpicDebugLog(message)); + // The SDK outputs lots of information that is useful for debugging. + // Make sure to set up the logging interface as early as possible: after initializing. + LoggingInterface.SetLogLevel(LogCategory.AllCategories, epicLoggerLevel); + LoggingInterface.SetCallback(message => Logger.EpicDebugLog(message)); - var options = new Options() - { - ProductId = apiKeys.epicProductId, - SandboxId = apiKeys.epicSandboxId, - DeploymentId = apiKeys.epicDeploymentId, - ClientCredentials = new ClientCredentials() - { - ClientId = apiKeys.epicClientId, - ClientSecret = apiKeys.epicClientSecret - }, - TickBudgetInMilliseconds = tickBudgetInMilliseconds - }; + var options = new Options() { + ProductId = apiKeys.epicProductId, + SandboxId = apiKeys.epicSandboxId, + DeploymentId = apiKeys.epicDeploymentId, + ClientCredentials = new ClientCredentials() { + ClientId = apiKeys.epicClientId, + ClientSecret = apiKeys.epicClientSecret + }, + TickBudgetInMilliseconds = tickBudgetInMilliseconds + }; - EOS = PlatformInterface.Create(options); - if (EOS == null) - { - throw new System.Exception("Failed to create platform"); - } + EOS = PlatformInterface.Create(options); + if (EOS == null) { + throw new System.Exception("Failed to create platform"); + } - if (checkForEpicLauncherAndRestart) - { - var result = EOS.CheckForLauncherAndRestart(); + if (checkForEpicLauncherAndRestart) { + Result result = EOS.CheckForLauncherAndRestart(); - // If not started through epic launcher the app will be restarted and we can quit - if (result != Result.NoChange) - { - // Log error if launcher check failed, but still quit to prevent hacking - if (result == Result.UnexpectedError) - { - Debug.LogError("Unexpected Error while checking if app was started through epic launcher"); - } + // If not started through epic launcher the app will be restarted and we can quit + if (result != Result.NoChange) { - Application.Quit(); - } - } + // Log error if launcher check failed, but still quit to prevent hacking + if (result == Result.UnexpectedError) { + Debug.LogError("Unexpected Error while checking if app was started through epic launcher"); + } - // If we use the Auth interface then only login into the Connect interface after finishing the auth interface login - // If we don't use the Auth interface we can directly login to the Connect interface - if (authInterfaceLogin) - { - if (authInterfaceCredentialType == Epic.OnlineServices.Auth.LoginCredentialType.Developer) - { - authInterfaceLoginCredentialId = "localhost:" + devAuthToolPort; - authInterfaceCredentialToken = devAuthToolCredentialName; - } + Application.Quit(); + } + } - // Login to Auth Interface - var loginOptions = new Epic.OnlineServices.Auth.LoginOptions() - { - Credentials = new Epic.OnlineServices.Auth.Credentials() - { - Type = authInterfaceCredentialType, - Id = authInterfaceLoginCredentialId, - Token = authInterfaceCredentialToken - }, - ScopeFlags = Epic.OnlineServices.Auth.AuthScopeFlags.BasicProfile | Epic.OnlineServices.Auth.AuthScopeFlags.FriendsList | Epic.OnlineServices.Auth.AuthScopeFlags.Presence - }; + // If we use the Auth interface then only login into the Connect interface after finishing the auth interface login + // If we don't use the Auth interface we can directly login to the Connect interface + if (authInterfaceLogin) { + if (authInterfaceCredentialType == Epic.OnlineServices.Auth.LoginCredentialType.Developer) { + authInterfaceLoginCredentialId = "localhost:" + devAuthToolPort; + authInterfaceCredentialToken = devAuthToolCredentialName; + } - EOS.GetAuthInterface().Login(loginOptions, null, OnAuthInterfaceLogin); - } - else - { - // Login to Connect Interface - if (connectInterfaceCredentialType == ExternalCredentialType.DeviceidAccessToken) - { - var createDeviceIdOptions = new Epic.OnlineServices.Connect.CreateDeviceIdOptions(); - createDeviceIdOptions.DeviceModel = deviceModel; - EOS.GetConnectInterface().CreateDeviceId(createDeviceIdOptions, null, OnCreateDeviceId); - } - else - { - ConnectInterfaceLogin(); - } - } - } + // Login to Auth Interface + Epic.OnlineServices.Auth.LoginOptions loginOptions = new Epic.OnlineServices.Auth.LoginOptions() { + Credentials = new Epic.OnlineServices.Auth.Credentials() { + Type = authInterfaceCredentialType, + Id = authInterfaceLoginCredentialId, + Token = authInterfaceCredentialToken + }, + ScopeFlags = Epic.OnlineServices.Auth.AuthScopeFlags.BasicProfile | Epic.OnlineServices.Auth.AuthScopeFlags.FriendsList | Epic.OnlineServices.Auth.AuthScopeFlags.Presence + }; - public static void Initialize() - { - if (Instance.initialized || Instance.isConnecting) - { - return; - } + EOS.GetAuthInterface().Login(loginOptions, null, OnAuthInterfaceLogin); + } else { + // Login to Connect Interface + if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { + Epic.OnlineServices.Connect.CreateDeviceIdOptions createDeviceIdOptions = new Epic.OnlineServices.Connect.CreateDeviceIdOptions(); + createDeviceIdOptions.DeviceModel = deviceModel; + EOS.GetConnectInterface().CreateDeviceId(createDeviceIdOptions, null, OnCreateDeviceId); + } else { + ConnectInterfaceLogin(); + } + } - Instance.InitializeImplementation(); - } + } + public static void Initialize() { + if (Instance.initialized || Instance.isConnecting) { + return; + } - private void OnAuthInterfaceLogin(Epic.OnlineServices.Auth.LoginCallbackInfo loginCallbackInfo) - { - if (loginCallbackInfo.ResultCode == Result.Success) - { - Debug.Log("Auth Interface Login succeeded"); + Instance.InitializeImplementation(); + } - string accountIdString; - var result = loginCallbackInfo.LocalUserId.ToString(out accountIdString); - if (Result.Success == result) - { - Debug.Log("EOS User ID:" + accountIdString); + private void OnAuthInterfaceLogin(Epic.OnlineServices.Auth.LoginCallbackInfo loginCallbackInfo) { + if (loginCallbackInfo.ResultCode == Result.Success) { + Debug.Log("Auth Interface Login succeeded"); - localUserAccountIdString = accountIdString; - localUserAccountId = loginCallbackInfo.LocalUserId; - } + string accountIdString; + Result result = loginCallbackInfo.LocalUserId.ToString(out accountIdString); + if (Result.Success == result) { + Debug.Log("EOS User ID:" + accountIdString); - ConnectInterfaceLogin(); - } - else if (Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)) - { - Debug.Log("Login returned " + loginCallbackInfo.ResultCode); - } - } + localUserAccountIdString = accountIdString; + localUserAccountId = loginCallbackInfo.LocalUserId; + } + + ConnectInterfaceLogin(); + } else if(Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)){ + Debug.Log("Login returned " + loginCallbackInfo.ResultCode); + } + } - private void OnCreateDeviceId(Epic.OnlineServices.Connect.CreateDeviceIdCallbackInfo createDeviceIdCallbackInfo) - { - if (createDeviceIdCallbackInfo.ResultCode == Result.Success || createDeviceIdCallbackInfo.ResultCode == Result.DuplicateNotAllowed) - { - ConnectInterfaceLogin(); - } - else if (Epic.OnlineServices.Common.IsOperationComplete(createDeviceIdCallbackInfo.ResultCode)) - { - Debug.Log("Device ID creation returned " + createDeviceIdCallbackInfo.ResultCode); - } - } + private void OnCreateDeviceId(Epic.OnlineServices.Connect.CreateDeviceIdCallbackInfo createDeviceIdCallbackInfo) { + if (createDeviceIdCallbackInfo.ResultCode == Result.Success || createDeviceIdCallbackInfo.ResultCode == Result.DuplicateNotAllowed) { + ConnectInterfaceLogin(); + } else if(Epic.OnlineServices.Common.IsOperationComplete(createDeviceIdCallbackInfo.ResultCode)) { + Debug.Log("Device ID creation returned " + createDeviceIdCallbackInfo.ResultCode); + } + } - private void ConnectInterfaceLogin() - { - var loginOptions = new Epic.OnlineServices.Connect.LoginOptions(); + private void ConnectInterfaceLogin() { + var loginOptions = new Epic.OnlineServices.Connect.LoginOptions(); - if (connectInterfaceCredentialType == ExternalCredentialType.Epic) - { - Epic.OnlineServices.Auth.Token token; - var result = EOS.GetAuthInterface().CopyUserAuthToken(new Epic.OnlineServices.Auth.CopyUserAuthTokenOptions(), localUserAccountId, out token); + if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.Epic) { + Epic.OnlineServices.Auth.Token token; + Result result = EOS.GetAuthInterface().CopyUserAuthToken(new Epic.OnlineServices.Auth.CopyUserAuthTokenOptions(), localUserAccountId, out token); - if (result == Result.Success) - { - connectInterfaceCredentialToken = token.AccessToken; - } - else - { - Debug.LogError("Failed to retrieve User Auth Token"); - } - } - else if (connectInterfaceCredentialType == ExternalCredentialType.DeviceidAccessToken) - { - loginOptions.UserLoginInfo = new Epic.OnlineServices.Connect.UserLoginInfo(); - loginOptions.UserLoginInfo.DisplayName = displayName; - } + if (result == Result.Success) { + connectInterfaceCredentialToken = token.AccessToken; + } else { + Debug.LogError("Failed to retrieve User Auth Token"); + } + } else if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { + loginOptions.UserLoginInfo = new Epic.OnlineServices.Connect.UserLoginInfo(); + loginOptions.UserLoginInfo.DisplayName = displayName; + } - loginOptions.Credentials = new Epic.OnlineServices.Connect.Credentials(); - loginOptions.Credentials.Type = connectInterfaceCredentialType; - loginOptions.Credentials.Token = connectInterfaceCredentialToken; + loginOptions.Credentials = new Epic.OnlineServices.Connect.Credentials(); + loginOptions.Credentials.Type = connectInterfaceCredentialType; + loginOptions.Credentials.Token = connectInterfaceCredentialToken; - EOS.GetConnectInterface().Login(loginOptions, null, OnConnectInterfaceLogin); - } + EOS.GetConnectInterface().Login(loginOptions, null, OnConnectInterfaceLogin); + } - private void OnConnectInterfaceLogin(Epic.OnlineServices.Connect.LoginCallbackInfo loginCallbackInfo) - { - if (loginCallbackInfo.ResultCode == Result.Success) - { - Debug.Log("Connect Interface Login succeeded"); + private void OnConnectInterfaceLogin(Epic.OnlineServices.Connect.LoginCallbackInfo loginCallbackInfo) { + if (loginCallbackInfo.ResultCode == Result.Success) { + Debug.Log("Connect Interface Login succeeded"); - string productIdString; - var result = loginCallbackInfo.LocalUserId.ToString(out productIdString); - if (Result.Success == result) - { - Debug.Log("EOS User Product ID:" + productIdString); + string productIdString; + Result result = loginCallbackInfo.LocalUserId.ToString(out productIdString); + if (Result.Success == result) { + Debug.Log("EOS User Product ID:" + productIdString); - localUserProductIdString = productIdString; - localUserProductId = loginCallbackInfo.LocalUserId; - } + localUserProductIdString = productIdString; + localUserProductId = loginCallbackInfo.LocalUserId; + } + + initialized = true; + isConnecting = false; - initialized = true; - isConnecting = false; + var authExpirationOptions = new Epic.OnlineServices.Connect.AddNotifyAuthExpirationOptions(); + authExpirationHandle = EOS.GetConnectInterface().AddNotifyAuthExpiration(authExpirationOptions, null, OnAuthExpiration); + } else if (Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)) { + Debug.Log("Login returned " + loginCallbackInfo.ResultCode + "\nRetrying..."); + EOS.GetConnectInterface().CreateUser(new Epic.OnlineServices.Connect.CreateUserOptions() { ContinuanceToken = loginCallbackInfo.ContinuanceToken }, null, (Epic.OnlineServices.Connect.CreateUserCallbackInfo cb) => { + if (cb.ResultCode != Result.Success) { Debug.Log(cb.ResultCode); return; } + localUserProductId = cb.LocalUserId; + ConnectInterfaceLogin(); + }); + } + } + + private void OnAuthExpiration(Epic.OnlineServices.Connect.AuthExpirationCallbackInfo authExpirationCallbackInfo) { + Debug.Log("AuthExpiration callback"); + EOS.GetConnectInterface().RemoveNotifyAuthExpiration(authExpirationHandle); + ConnectInterfaceLogin(); + } - var authExpirationOptions = new Epic.OnlineServices.Connect.AddNotifyAuthExpirationOptions(); - authExpirationHandle = EOS.GetConnectInterface().AddNotifyAuthExpiration(authExpirationOptions, null, OnAuthExpiration); - } - else if (Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)) - { - Debug.Log("Login returned " + loginCallbackInfo.ResultCode + "\nRetrying..."); - EOS.GetConnectInterface().CreateUser(new Epic.OnlineServices.Connect.CreateUserOptions() { ContinuanceToken = loginCallbackInfo.ContinuanceToken }, null, (Epic.OnlineServices.Connect.CreateUserCallbackInfo cb) => - { - if (cb.ResultCode != Result.Success) - { - Debug.Log(cb.ResultCode); - return; - } + // Calling tick on a regular interval is required for callbacks to work. + private void LateUpdate() { + if (EOS != null) { + platformTickTimer += Time.deltaTime; - localUserProductId = cb.LocalUserId; - ConnectInterfaceLogin(); - }); - } - } + if (platformTickTimer >= platformTickIntervalInSeconds) { + platformTickTimer = 0; + EOS.Tick(); + } + } + } - private void OnAuthExpiration(Epic.OnlineServices.Connect.AuthExpirationCallbackInfo authExpirationCallbackInfo) - { - Debug.Log("AuthExpiration callback"); - EOS.GetConnectInterface().RemoveNotifyAuthExpiration(authExpirationHandle); - ConnectInterfaceLogin(); - } + private void OnApplicationQuit() { + if (EOS != null) { + EOS.Release(); + EOS = null; + PlatformInterface.Shutdown(); + } - // Calling tick on a regular interval is required for callbacks to work. - private void LateUpdate() - { - if (EOS != null) - { - platformTickTimer += Time.deltaTime; - - if (platformTickTimer >= platformTickIntervalInSeconds) - { - platformTickTimer = 0; - EOS.Tick(); - } - } - } - - private void OnApplicationQuit() - { - if (EOS != null) - { - EOS.Release(); - EOS = null; - PlatformInterface.Shutdown(); - } - - // Unhook the library in the editor, this makes it possible to load the library again after stopping to play + // Unhook the library in the editor, this makes it possible to load the library again after stopping to play #if UNITY_EDITOR if (libraryPointer != IntPtr.Zero) { Bindings.Unhook(); @@ -460,5 +430,6 @@ public class EOSSDKComponent : MonoBehaviour libraryPointer = IntPtr.Zero; } #endif - } -} + } + } +} \ No newline at end of file diff --git a/EpicOnlineTransport/EosApiKey.cs b/EpicOnlineTransport/EosApiKey.cs index 34ee0c19..ddc037d1 100644 --- a/EpicOnlineTransport/EosApiKey.cs +++ b/EpicOnlineTransport/EosApiKey.cs @@ -1,3 +1,5 @@ +using System.Collections; +using System.Collections.Generic; using UnityEngine; /// @@ -8,14 +10,14 @@ using UnityEngine; /// Create -> EOS -> API Key /// in order to create an instance of this scriptable object /// + [CreateAssetMenu(fileName = "EosApiKey", menuName = "EOS/API Key", order = 1)] -public class EosApiKey : ScriptableObject -{ - public string epicProductName = "MyApplication"; - public string epicProductVersion = "1.0"; - public string epicProductId = ""; - public string epicSandboxId = ""; - public string epicDeploymentId = ""; - public string epicClientId = ""; - public string epicClientSecret = ""; +public class EosApiKey : ScriptableObject { + public string epicProductName = "MyApplication"; + public string epicProductVersion = "1.0"; + public string epicProductId = ""; + public string epicSandboxId = ""; + public string epicDeploymentId = ""; + public string epicClientId = ""; + public string epicClientSecret = ""; } diff --git a/EpicOnlineTransport/EosTransport.cs b/EpicOnlineTransport/EosTransport.cs index fc7f7fab..ca4c6015 100644 --- a/EpicOnlineTransport/EosTransport.cs +++ b/EpicOnlineTransport/EosTransport.cs @@ -1,399 +1,334 @@ -using Epic.OnlineServices; -using Epic.OnlineServices.Metrics; -using Epic.OnlineServices.P2P; -using Mirror; using System; -using System.Collections; +using System.Collections.Generic; +using System.IO; using UnityEngine; - -namespace EpicTransport; - -/// -/// EOS Transport following the Mirror transport standard -/// -public class EosTransport : Transport -{ - private const string EPIC_SCHEME = "epic"; - - private Client client; - private Server server; - - private Common activeNode; - - [SerializeField] - public PacketReliability[] Channels = new PacketReliability[2] { PacketReliability.ReliableOrdered, PacketReliability.UnreliableUnordered }; - - [Tooltip("Timeout for connecting in seconds.")] - public int timeout = 25; - - [Tooltip("The max fragments used in fragmentation before throwing an error.")] - public int maxFragments = 55; - - public float ignoreCachedMessagesAtStartUpInSeconds = 2.0f; - private float ignoreCachedMessagesTimer = 0.0f; - - public RelayControl relayControl = RelayControl.AllowRelays; - - [Header("Info")] - [Tooltip("This will display your Epic Account ID when you start or connect to a server.")] - public ProductUserId productUserId; - - private int packetId = 0; - - public Action SetTransportError; - - private void Awake() - { - Debug.Assert(Channels != null && Channels.Length > 0, "No channel configured for EOS Transport."); - Debug.Assert(Channels.Length < byte.MaxValue, "Too many channels configured for EOS Transport"); - - if (Channels[0] != PacketReliability.ReliableOrdered) - { - Debug.LogWarning("EOS Transport Channel[0] is not ReliableOrdered, Mirror expects Channel 0 to be ReliableOrdered, only change this if you know what you are doing."); - } - - if (Channels[1] != PacketReliability.UnreliableUnordered) - { - Debug.LogWarning("EOS Transport Channel[1] is not UnreliableUnordered, Mirror expects Channel 1 to be UnreliableUnordered, only change this if you know what you are doing."); - } - - StartCoroutine("FetchEpicAccountId"); - StartCoroutine("ChangeRelayStatus"); - } - - public override void ClientEarlyUpdate() - { - EOSSDKComponent.Tick(); - - if (activeNode != null) - { - ignoreCachedMessagesTimer += Time.deltaTime; - - if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) - { - activeNode.ignoreAllMessages = true; - } - else - { - activeNode.ignoreAllMessages = false; - - if (client != null && !client.isConnecting) - { - if (EOSSDKComponent.Initialized) - { - client.Connect(client.hostAddress); - } - else - { - Debug.LogError("EOS not initialized"); - client.EosNotInitialized(); - } - - client.isConnecting = true; - } - } - } - - if (enabled) - { - activeNode?.ReceiveData(); - } - } - - public override void ClientLateUpdate() { } - - public override void ServerEarlyUpdate() - { - EOSSDKComponent.Tick(); - - if (activeNode != null) - { - ignoreCachedMessagesTimer += Time.deltaTime; - - if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) - { - activeNode.ignoreAllMessages = true; - } - else - { - activeNode.ignoreAllMessages = false; - } - } - - if (enabled) - { - activeNode?.ReceiveData(); - } - } - - public override void ServerLateUpdate() { } - - public override bool ClientConnected() => ClientActive() && client.Connected; - - public override void ClientConnect(string address) - { - if (!EOSSDKComponent.Initialized) - { - Debug.LogError("EOS not initialized. Client could not be started."); - OnClientDisconnected.Invoke(); - return; - } - - StartCoroutine("FetchEpicAccountId"); - - if (ServerActive()) - { - Debug.LogError("Transport already running as server!"); - return; - } - - if (!ClientActive() || client.Error) - { - Debug.Log($"Starting client, target address {address}."); - - client = Client.CreateClient(this, address); - activeNode = client; - - if (EOSSDKComponent.CollectPlayerMetrics) - { - // Start Metrics colletion session - var sessionOptions = new BeginPlayerSessionOptions(); - sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - sessionOptions.ControllerType = UserControllerType.Unknown; - sessionOptions.DisplayName = EOSSDKComponent.DisplayName; - sessionOptions.GameSessionId = null; - sessionOptions.ServerIp = null; - var result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); - - if (result == Result.Success) - { - Debug.Log("Started Metric Session"); - } - } - } - else - { - Debug.LogError("Client already running!"); - } - } - - public override void ClientConnect(Uri uri) - { - if (uri.Scheme != EPIC_SCHEME) - { - throw new ArgumentException($"Invalid url {uri}, use {EPIC_SCHEME}://EpicAccountId instead", nameof(uri)); - } - - ClientConnect(uri.Host); - } - - public override void ClientSend(ArraySegment segment, int channelId) - { - Send(channelId, segment); - } - - public override void ClientDisconnect() - { - if (ClientActive()) - { - Shutdown(); - } - } - - public bool ClientActive() => client != null; - - public override bool ServerActive() => server != null; - - public override void ServerStart() - { - if (!EOSSDKComponent.Initialized) - { - Debug.LogError("EOS not initialized. Server could not be started."); - return; - } - - StartCoroutine("FetchEpicAccountId"); - - if (ClientActive()) - { - Debug.LogError("Transport already running as client!"); - return; - } - - if (!ServerActive()) - { - Debug.Log("Starting server."); - - server = Server.CreateServer(this, NetworkManager.singleton.maxConnections); - activeNode = server; - - if (EOSSDKComponent.CollectPlayerMetrics) - { - // Start Metrics colletion session - var sessionOptions = new BeginPlayerSessionOptions(); - sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - sessionOptions.ControllerType = UserControllerType.Unknown; - sessionOptions.DisplayName = EOSSDKComponent.DisplayName; - sessionOptions.GameSessionId = null; - sessionOptions.ServerIp = null; - var result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); - - if (result == Result.Success) - { - Debug.Log("Started Metric Session"); - } - } - } - else - { - Debug.LogError("Server already started!"); - } - } - - public override Uri ServerUri() - { - var epicBuilder = new UriBuilder - { - Scheme = EPIC_SCHEME, - Host = EOSSDKComponent.LocalUserProductIdString - }; - - return epicBuilder.Uri; - } - - public override void ServerSend(int connectionId, ArraySegment segment, int channelId) - { - if (ServerActive()) - { - Send(channelId, segment, connectionId); - } - } - - public override void ServerDisconnect(int connectionId) => server.Disconnect(connectionId); - public override string ServerGetClientAddress(int connectionId) => ServerActive() ? server.ServerGetClientAddress(connectionId) : string.Empty; - - public override void ServerStop() - { - if (ServerActive()) - { - Shutdown(); - } - } - - private void Send(int channelId, ArraySegment segment, int connectionId = int.MinValue) - { - var packets = GetPacketArray(channelId, segment); - - for (var i = 0; i < packets.Length; i++) - { - if (connectionId == int.MinValue) - { - client.Send(packets[i].ToBytes(), channelId); - } - else - { - server.SendAll(connectionId, packets[i].ToBytes(), channelId); - } - } - - packetId++; - } - - private Packet[] GetPacketArray(int channelId, ArraySegment segment) - { - var packetCount = Mathf.CeilToInt((float)segment.Count / (float)GetMaxSinglePacketSize(channelId)); - var packets = new Packet[packetCount]; - - for (var i = 0; i < segment.Count; i += GetMaxSinglePacketSize(channelId)) - { - var fragment = i / GetMaxSinglePacketSize(channelId); - - packets[fragment] = new Packet(); - packets[fragment].id = packetId; - packets[fragment].fragment = fragment; - packets[fragment].moreFragments = segment.Count - i > GetMaxSinglePacketSize(channelId); - packets[fragment].data = new byte[segment.Count - i > GetMaxSinglePacketSize(channelId) ? GetMaxSinglePacketSize(channelId) : segment.Count - i]; - Array.Copy(segment.Array, i, packets[fragment].data, 0, packets[fragment].data.Length); - } - - return packets; - } - - public override void Shutdown() - { - if (EOSSDKComponent.CollectPlayerMetrics) - { - // Stop Metrics collection session - var endSessionOptions = new EndPlayerSessionOptions(); - endSessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - var result = EOSSDKComponent.GetMetricsInterface().EndPlayerSession(endSessionOptions); - - if (result == Result.Success) - { - Debug.LogError("Stopped Metric Session"); - } - } - - server?.Shutdown(); - client?.Disconnect(); - - server = null; - client = null; - activeNode = null; - Debug.Log("Transport shut down."); - } - - public int GetMaxSinglePacketSize(int channelId) => P2PInterface.MaxPacketSize - 10; // 1159 bytes, we need to remove 10 bytes for the packet header (id (4 bytes) + fragment (4 bytes) + more fragments (1 byte)) - - public override int GetMaxPacketSize(int channelId) => P2PInterface.MaxPacketSize * maxFragments; - - public override int GetBatchThreshold(int channelId) => P2PInterface.MaxPacketSize; // Use P2PInterface.MaxPacketSize as everything above will get fragmentated and will be counter effective to batching - - public override bool Available() - { - try - { - return EOSSDKComponent.Initialized; - } - catch - { - return false; - } - } - - private IEnumerator FetchEpicAccountId() - { - while (!EOSSDKComponent.Initialized) - { - yield return null; - } - - productUserId = EOSSDKComponent.LocalUserProductId; - } - - private IEnumerator ChangeRelayStatus() - { - while (!EOSSDKComponent.Initialized) - { - yield return null; - } - - var setRelayControlOptions = new SetRelayControlOptions(); - setRelayControlOptions.RelayControl = relayControl; - - EOSSDKComponent.GetP2PInterface().SetRelayControl(setRelayControlOptions); - } - - public void ResetIgnoreMessagesAtStartUpTimer() - { - ignoreCachedMessagesTimer = 0; - } - - private void OnDestroy() - { - if (activeNode != null) - { - Shutdown(); - } - } -} \ No newline at end of file +using Epic.OnlineServices.P2P; +using Epic.OnlineServices; +using Mirror; +using Epic.OnlineServices.Metrics; +using System.Collections; + +namespace EpicTransport { + + /// + /// EOS Transport following the Mirror transport standard + /// + public class EosTransport : Transport { + private const string EPIC_SCHEME = "epic"; + + private Client client; + private Server server; + + private Common activeNode; + + [SerializeField] + public PacketReliability[] Channels = new PacketReliability[2] { PacketReliability.ReliableOrdered, PacketReliability.UnreliableUnordered }; + + [Tooltip("Timeout for connecting in seconds.")] + public int timeout = 25; + + [Tooltip("The max fragments used in fragmentation before throwing an error.")] + public int maxFragments = 55; + + public float ignoreCachedMessagesAtStartUpInSeconds = 2.0f; + private float ignoreCachedMessagesTimer = 0.0f; + + public RelayControl relayControl = RelayControl.AllowRelays; + + [Header("Info")] + [Tooltip("This will display your Epic Account ID when you start or connect to a server.")] + public ProductUserId productUserId; + + private int packetId = 0; + + // CHANGED + public Action SetTransportError; + + private void Awake() { + Debug.Assert(Channels != null && Channels.Length > 0, "No channel configured for EOS Transport."); + Debug.Assert(Channels.Length < byte.MaxValue, "Too many channels configured for EOS Transport"); + + if(Channels[0] != PacketReliability.ReliableOrdered) { + Debug.LogWarning("EOS Transport Channel[0] is not ReliableOrdered, Mirror expects Channel 0 to be ReliableOrdered, only change this if you know what you are doing."); + } + if (Channels[1] != PacketReliability.UnreliableUnordered) { + Debug.LogWarning("EOS Transport Channel[1] is not UnreliableUnordered, Mirror expects Channel 1 to be UnreliableUnordered, only change this if you know what you are doing."); + } + + StartCoroutine("FetchEpicAccountId"); + StartCoroutine("ChangeRelayStatus"); + } + + public override void ClientEarlyUpdate() { + EOSSDKComponent.Tick(); + + if (activeNode != null) { + ignoreCachedMessagesTimer += Time.deltaTime; + + if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) { + activeNode.ignoreAllMessages = true; + } else { + activeNode.ignoreAllMessages = false; + + if (client != null && !client.isConnecting) { + if (EOSSDKComponent.Initialized) { + client.Connect(client.hostAddress); + } else { + Debug.LogError("EOS not initialized"); + client.EosNotInitialized(); + } + client.isConnecting = true; + } + } + } + + if (enabled) { + activeNode?.ReceiveData(); + } + } + + public override void ClientLateUpdate() {} + + public override void ServerEarlyUpdate() { + EOSSDKComponent.Tick(); + + if (activeNode != null) { + ignoreCachedMessagesTimer += Time.deltaTime; + + if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) { + activeNode.ignoreAllMessages = true; + } else { + activeNode.ignoreAllMessages = false; + } + } + + if (enabled) { + activeNode?.ReceiveData(); + } + } + + public override void ServerLateUpdate() {} + + public override bool ClientConnected() => ClientActive() && client.Connected; + public override void ClientConnect(string address) { + if (!EOSSDKComponent.Initialized) { + Debug.LogError("EOS not initialized. Client could not be started."); + OnClientDisconnected.Invoke(); + return; + } + + StartCoroutine("FetchEpicAccountId"); + + if (ServerActive()) { + Debug.LogError("Transport already running as server!"); + return; + } + + if (!ClientActive() || client.Error) { + Debug.Log($"Starting client, target address {address}."); + + client = Client.CreateClient(this, address); + activeNode = client; + + if (EOSSDKComponent.CollectPlayerMetrics) { + // Start Metrics colletion session + BeginPlayerSessionOptions sessionOptions = new BeginPlayerSessionOptions(); + sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; + sessionOptions.ControllerType = UserControllerType.Unknown; + sessionOptions.DisplayName = EOSSDKComponent.DisplayName; + sessionOptions.GameSessionId = null; + sessionOptions.ServerIp = null; + Result result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); + + if(result == Result.Success) { + Debug.Log("Started Metric Session"); + } + } + } else { + Debug.LogError("Client already running!"); + } + } + + public override void ClientConnect(Uri uri) { + if (uri.Scheme != EPIC_SCHEME) + throw new ArgumentException($"Invalid url {uri}, use {EPIC_SCHEME}://EpicAccountId instead", nameof(uri)); + + ClientConnect(uri.Host); + } + + public override void ClientSend(ArraySegment segment, int channelId) { + Send(channelId, segment); + } + + public override void ClientDisconnect() { + if (ClientActive()) { + Shutdown(); + } + } + public bool ClientActive() => client != null; + + + public override bool ServerActive() => server != null; + public override void ServerStart() { + if (!EOSSDKComponent.Initialized) { + Debug.LogError("EOS not initialized. Server could not be started."); + return; + } + + StartCoroutine("FetchEpicAccountId"); + + if (ClientActive()) { + Debug.LogError("Transport already running as client!"); + return; + } + + if (!ServerActive()) { + Debug.Log("Starting server."); + + server = Server.CreateServer(this, NetworkManager.singleton.maxConnections); + activeNode = server; + + if (EOSSDKComponent.CollectPlayerMetrics) { + // Start Metrics colletion session + BeginPlayerSessionOptions sessionOptions = new BeginPlayerSessionOptions(); + sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; + sessionOptions.ControllerType = UserControllerType.Unknown; + sessionOptions.DisplayName = EOSSDKComponent.DisplayName; + sessionOptions.GameSessionId = null; + sessionOptions.ServerIp = null; + Result result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); + + if (result == Result.Success) { + Debug.Log("Started Metric Session"); + } + } + } else { + Debug.LogError("Server already started!"); + } + } + + public override Uri ServerUri() { + UriBuilder epicBuilder = new UriBuilder { + Scheme = EPIC_SCHEME, + Host = EOSSDKComponent.LocalUserProductIdString + }; + + return epicBuilder.Uri; + } + + public override void ServerSend(int connectionId, ArraySegment segment, int channelId) { + if (ServerActive()) { + Send( channelId, segment, connectionId); + } + } + public override void ServerDisconnect(int connectionId) => server.Disconnect(connectionId); + public override string ServerGetClientAddress(int connectionId) => ServerActive() ? server.ServerGetClientAddress(connectionId) : string.Empty; + public override void ServerStop() { + if (ServerActive()) { + Shutdown(); + } + } + + private void Send(int channelId, ArraySegment segment, int connectionId = int.MinValue) { + Packet[] packets = GetPacketArray(channelId, segment); + + for(int i = 0; i < packets.Length; i++) { + if (connectionId == int.MinValue) { + if (client == null) + { + OnClientDisconnected.Invoke(); + return; + } + + client.Send(packets[i].ToBytes(), channelId); + } else { + server.SendAll(connectionId, packets[i].ToBytes(), channelId); + } + } + + packetId++; + } + + private Packet[] GetPacketArray(int channelId, ArraySegment segment) { + int packetCount = Mathf.CeilToInt((float) segment.Count / (float)GetMaxSinglePacketSize(channelId)); + Packet[] packets = new Packet[packetCount]; + + for (int i = 0; i < segment.Count; i += GetMaxSinglePacketSize(channelId)) { + int fragment = i / GetMaxSinglePacketSize(channelId); + + packets[fragment] = new Packet(); + packets[fragment].id = packetId; + packets[fragment].fragment = fragment; + packets[fragment].moreFragments = (segment.Count - i) > GetMaxSinglePacketSize(channelId); + packets[fragment].data = new byte[segment.Count - i > GetMaxSinglePacketSize(channelId) ? GetMaxSinglePacketSize(channelId) : segment.Count - i]; + Array.Copy(segment.Array, i, packets[fragment].data, 0, packets[fragment].data.Length); + } + + return packets; + } + + public override void Shutdown() { + if (EOSSDKComponent.CollectPlayerMetrics) { + // Stop Metrics collection session + EndPlayerSessionOptions endSessionOptions = new EndPlayerSessionOptions(); + endSessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; + Result result = EOSSDKComponent.GetMetricsInterface().EndPlayerSession(endSessionOptions); + + if (result == Result.Success) { + Debug.LogError("Stopped Metric Session"); + } + } + + server?.Shutdown(); + client?.Disconnect(); + + server = null; + client = null; + activeNode = null; + Debug.Log("Transport shut down."); + } + + public int GetMaxSinglePacketSize(int channelId) => P2PInterface.MaxPacketSize - 10; // 1159 bytes, we need to remove 10 bytes for the packet header (id (4 bytes) + fragment (4 bytes) + more fragments (1 byte)) + + public override int GetMaxPacketSize(int channelId) => P2PInterface.MaxPacketSize * maxFragments; + + public override int GetBatchThreshold(int channelId) => P2PInterface.MaxPacketSize; // Use P2PInterface.MaxPacketSize as everything above will get fragmentated and will be counter effective to batching + + public override bool Available() { + try { + return EOSSDKComponent.Initialized; + } catch { + return false; + } + } + + private IEnumerator FetchEpicAccountId() { + while (!EOSSDKComponent.Initialized) { + yield return null; + } + + productUserId = EOSSDKComponent.LocalUserProductId; + } + + private IEnumerator ChangeRelayStatus() { + while (!EOSSDKComponent.Initialized) { + yield return null; + } + + SetRelayControlOptions setRelayControlOptions = new SetRelayControlOptions(); + setRelayControlOptions.RelayControl = relayControl; + + EOSSDKComponent.GetP2PInterface().SetRelayControl(setRelayControlOptions); + } + + public void ResetIgnoreMessagesAtStartUpTimer() { + ignoreCachedMessagesTimer = 0; + } + + private void OnDestroy() { + if (activeNode != null) { + Shutdown(); + } + } + } +} diff --git a/EpicOnlineTransport/Logger.cs b/EpicOnlineTransport/Logger.cs index c93377fb..197c6e0c 100644 --- a/EpicOnlineTransport/Logger.cs +++ b/EpicOnlineTransport/Logger.cs @@ -1,30 +1,30 @@ using Epic.OnlineServices.Logging; using System; +using System.Collections; +using System.Collections.Generic; using UnityEngine; -namespace EpicTransport; +namespace EpicTransport { + public static class Logger { -public static class Logger -{ - public static void EpicDebugLog(LogMessage message) - { - switch (message.Level) - { - case LogLevel.Info: - Debug.Log($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Error: - Debug.LogError($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Warning: - Debug.LogWarning($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Fatal: - Debug.LogException(new Exception($"Epic Manager: Category - {message.Category} Message - {message.Message}")); - break; - default: - Debug.Log($"Epic Manager: Unknown log processing. Category - {message.Category} Message - {message.Message}"); - break; - } - } + public static void EpicDebugLog(LogMessage message) { + switch (message.Level) { + case LogLevel.Info: + Debug.Log($"Epic Manager: Category - {message.Category} Message - {message.Message}"); + break; + case LogLevel.Error: + Debug.LogError($"Epic Manager: Category - {message.Category} Message - {message.Message}"); + break; + case LogLevel.Warning: + Debug.LogWarning($"Epic Manager: Category - {message.Category} Message - {message.Message}"); + break; + case LogLevel.Fatal: + Debug.LogException(new Exception($"Epic Manager: Category - {message.Category} Message - {message.Message}")); + break; + default: + Debug.Log($"Epic Manager: Unknown log processing. Category - {message.Category} Message - {message.Message}"); + break; + } + } + } } \ No newline at end of file diff --git a/EpicOnlineTransport/Packet.cs b/EpicOnlineTransport/Packet.cs index 90c74006..cb43d755 100644 --- a/EpicOnlineTransport/Packet.cs +++ b/EpicOnlineTransport/Packet.cs @@ -1,50 +1,47 @@ using System; -namespace EpicTransport; +namespace EpicTransport { + public struct Packet { + public const int headerSize = sizeof(uint) + sizeof(uint) + 1; + public int size => headerSize + data.Length; -public struct Packet -{ - public const int headerSize = sizeof(uint) + sizeof(uint) + 1; - public int size => headerSize + data.Length; + // header + public int id; + public int fragment; + public bool moreFragments; - // header - public int id; - public int fragment; - public bool moreFragments; + // body + public byte[] data; - // body - public byte[] data; + public byte[] ToBytes() { + byte[] array = new byte[size]; - public byte[] ToBytes() - { - var array = new byte[size]; + // Copy id + array[0] = (byte) id; + array[1] = (byte) (id >> 8); + array[2] = (byte) (id >> 0x10); + array[3] = (byte) (id >> 0x18); - // Copy id - array[0] = (byte)id; - array[1] = (byte)(id >> 8); - array[2] = (byte)(id >> 0x10); - array[3] = (byte)(id >> 0x18); + // Copy fragment + array[4] = (byte) fragment; + array[5] = (byte) (fragment >> 8); + array[6] = (byte) (fragment >> 0x10); + array[7] = (byte) (fragment >> 0x18); - // Copy fragment - array[4] = (byte)fragment; - array[5] = (byte)(fragment >> 8); - array[6] = (byte)(fragment >> 0x10); - array[7] = (byte)(fragment >> 0x18); + array[8] = moreFragments ? (byte)1 : (byte)0; - array[8] = moreFragments ? (byte)1 : (byte)0; + Array.Copy(data, 0, array, 9, data.Length); - Array.Copy(data, 0, array, 9, data.Length); + return array; + } - return array; - } + public void FromBytes(byte[] array) { + id = BitConverter.ToInt32(array, 0); + fragment = BitConverter.ToInt32(array, 4); + moreFragments = array[8] == 1; - public void FromBytes(byte[] array) - { - id = BitConverter.ToInt32(array, 0); - fragment = BitConverter.ToInt32(array, 4); - moreFragments = array[8] == 1; - - data = new byte[array.Length - 9]; - Array.Copy(array, 9, data, 0, data.Length); - } + data = new byte[array.Length - 9]; + Array.Copy(array, 9, data, 0, data.Length); + } + } } \ No newline at end of file diff --git a/EpicOnlineTransport/RandomString.cs b/EpicOnlineTransport/RandomString.cs index fc7ee602..46b7dc1d 100644 --- a/EpicOnlineTransport/RandomString.cs +++ b/EpicOnlineTransport/RandomString.cs @@ -1,41 +1,36 @@ using System; using System.Text; -public class RandomString -{ - // Generates a random string with a given size. - public static string Generate(int size) - { - var builder = new StringBuilder(size); +public class RandomString { - var random = new Random(); + // Generates a random string with a given size. + public static string Generate(int size) { + var builder = new StringBuilder(size); - // Unicode/ASCII Letters are divided into two blocks - // (Letters 65–90 / 97–122): - // The first group containing the uppercase letters and - // the second group containing the lowercase. + Random random = new Random(); - // char is a single Unicode character - var offsetLowerCase = 'a'; - var offsetUpperCase = 'A'; - const int lettersOffset = 26; // A...Z or a..z: length=26 + // Unicode/ASCII Letters are divided into two blocks + // (Letters 65–90 / 97–122): + // The first group containing the uppercase letters and + // the second group containing the lowercase. - for (var i = 0; i < size; i++) - { - char offset; - if (random.Next(0, 2) == 0) - { - offset = offsetLowerCase; - } - else - { - offset = offsetUpperCase; - } + // char is a single Unicode character + char offsetLowerCase = 'a'; + char offsetUpperCase = 'A'; + const int lettersOffset = 26; // A...Z or a..z: length=26 + + for (var i = 0; i < size; i++) { + char offset; + if(random.Next(0,2) == 0) { + offset = offsetLowerCase; + } else { + offset = offsetUpperCase; + } - var @char = (char)random.Next(offset, offset + lettersOffset); - builder.Append(@char); - } + var @char = (char) random.Next(offset, offset + lettersOffset); + builder.Append(@char); + } - return builder.ToString(); - } + return builder.ToString(); + } } diff --git a/EpicOnlineTransport/Server.cs b/EpicOnlineTransport/Server.cs index 1e16c9b2..6cd8e7de 100644 --- a/EpicOnlineTransport/Server.cs +++ b/EpicOnlineTransport/Server.cs @@ -4,217 +4,183 @@ using System; using System.Collections.Generic; using UnityEngine; -namespace EpicTransport; +namespace EpicTransport { + public class Server : Common { + private event Action OnConnected; + private event Action OnReceivedData; + private event Action OnDisconnected; + private event Action OnReceivedError; -public class Server : Common -{ - private event Action OnConnected; - private event Action OnReceivedData; - private event Action OnDisconnected; - private event Action OnReceivedError; + private BidirectionalDictionary epicToMirrorIds; + private Dictionary epicToSocketIds; + private int maxConnections; + private int nextConnectionID; - private BidirectionalDictionary epicToMirrorIds; - private Dictionary epicToSocketIds; - private int maxConnections; - private int nextConnectionID; + public static Server CreateServer(EosTransport transport, int maxConnections) { + Server s = new Server(transport, maxConnections); - public static Server CreateServer(EosTransport transport, int maxConnections) - { - var s = new Server(transport, maxConnections); + s.OnConnected += (id) => transport.OnServerConnected.Invoke(id); + s.OnDisconnected += (id) => transport.OnServerDisconnected.Invoke(id); + s.OnReceivedData += (id, data, channel) => transport.OnServerDataReceived.Invoke(id, new ArraySegment(data), channel); + // CHANGED + s.OnReceivedError += (id, exception) => transport.OnServerError?.Invoke(id, Mirror.TransportError.Unexpected, exception.ToString()); - s.OnConnected += (id) => transport.OnServerConnected.Invoke(id); - s.OnDisconnected += (id) => transport.OnServerDisconnected.Invoke(id); - s.OnReceivedData += (id, data, channel) => transport.OnServerDataReceived.Invoke(id, new ArraySegment(data), channel); - s.OnReceivedError += (id, exception) => transport.OnServerError?.Invoke(id, Mirror.TransportError.Unexpected, exception.ToString()); + if (!EOSSDKComponent.Initialized) { + Debug.LogError("EOS not initialized."); + } - if (!EOSSDKComponent.Initialized) - { - Debug.LogError("EOS not initialized."); - } + return s; + } - return s; - } + private Server(EosTransport transport, int maxConnections) : base(transport) { + this.maxConnections = maxConnections; + epicToMirrorIds = new BidirectionalDictionary(); + epicToSocketIds = new Dictionary(); + nextConnectionID = 1; + } - private Server(EosTransport transport, int maxConnections) : base(transport) - { - this.maxConnections = maxConnections; - epicToMirrorIds = new BidirectionalDictionary(); - epicToSocketIds = new Dictionary(); - nextConnectionID = 1; - } + protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) { + if (ignoreAllMessages) { + return; + } - protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) - { - if (ignoreAllMessages) - { - return; - } + if (deadSockets.Contains(result.SocketId.SocketName)) { + Debug.LogError("Received incoming connection request from dead socket"); + return; + } - if (deadSockets.Contains(result.SocketId.SocketName)) - { - Debug.LogError("Received incoming connection request from dead socket"); - return; - } + EOSSDKComponent.GetP2PInterface().AcceptConnection( + new AcceptConnectionOptions() { + LocalUserId = EOSSDKComponent.LocalUserProductId, + RemoteUserId = result.RemoteUserId, + SocketId = result.SocketId + }); + } - EOSSDKComponent.GetP2PInterface().AcceptConnection( - new AcceptConnectionOptions() - { - LocalUserId = EOSSDKComponent.LocalUserProductId, - RemoteUserId = result.RemoteUserId, - SocketId = result.SocketId - }); - } + protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) { + if (ignoreAllMessages) { + return; + } - protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) - { - if (ignoreAllMessages) - { - return; - } + switch (type) { + case InternalMessages.CONNECT: + if (epicToMirrorIds.Count >= maxConnections) { + Debug.LogError("Reached max connections"); + //CloseP2PSessionWithUser(clientUserId, socketId); + SendInternal(clientUserId, socketId, InternalMessages.DISCONNECT); + return; + } - switch (type) - { - case InternalMessages.CONNECT: - if (epicToMirrorIds.Count >= maxConnections) - { - Debug.LogError("Reached max connections"); - //CloseP2PSessionWithUser(clientUserId, socketId); - SendInternal(clientUserId, socketId, InternalMessages.DISCONNECT); - return; - } + SendInternal(clientUserId, socketId, InternalMessages.ACCEPT_CONNECT); - SendInternal(clientUserId, socketId, InternalMessages.ACCEPT_CONNECT); + int connectionId = nextConnectionID++; + epicToMirrorIds.Add(clientUserId, connectionId); + epicToSocketIds.Add(clientUserId, socketId); + OnConnected.Invoke(connectionId); - var connectionId = nextConnectionID++; - epicToMirrorIds.Add(clientUserId, connectionId); - epicToSocketIds.Add(clientUserId, socketId); - OnConnected.Invoke(connectionId); + string clientUserIdString; + clientUserId.ToString(out clientUserIdString); + Debug.Log($"Client with Product User ID {clientUserIdString} connected. Assigning connection id {connectionId}"); + break; + case InternalMessages.DISCONNECT: + if (epicToMirrorIds.TryGetValue(clientUserId, out int connId)) { + OnDisconnected.Invoke(connId); + //CloseP2PSessionWithUser(clientUserId, socketId); + epicToMirrorIds.Remove(clientUserId); + epicToSocketIds.Remove(clientUserId); + Debug.Log($"Client with Product User ID {clientUserId} disconnected."); + } else { + OnReceivedError.Invoke(-1, new Exception("ERROR Unknown Product User ID")); + } - string clientUserIdString; - clientUserId.ToString(out clientUserIdString); - Debug.Log($"Client with Product User ID {clientUserIdString} connected. Assigning connection id {connectionId}"); - break; - case InternalMessages.DISCONNECT: - if (epicToMirrorIds.TryGetValue(clientUserId, out var connId)) - { - OnDisconnected.Invoke(connId); - //CloseP2PSessionWithUser(clientUserId, socketId); - epicToMirrorIds.Remove(clientUserId); - epicToSocketIds.Remove(clientUserId); - Debug.Log($"Client with Product User ID {clientUserId} disconnected."); - } - else - { - OnReceivedError.Invoke(-1, new Exception("ERROR Unknown Product User ID")); - } + break; + default: + Debug.Log("Received unknown message type"); + break; + } + } - break; - default: - Debug.Log("Received unknown message type"); - break; - } - } + protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) { + if (ignoreAllMessages) { + return; + } - protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) - { - if (ignoreAllMessages) - { - return; - } + if (epicToMirrorIds.TryGetValue(clientUserId, out int connectionId)) { + OnReceivedData.Invoke(connectionId, data, channel); + } else { + SocketId socketId; + epicToSocketIds.TryGetValue(clientUserId, out socketId); + CloseP2PSessionWithUser(clientUserId, socketId); - if (epicToMirrorIds.TryGetValue(clientUserId, out var connectionId)) - { - OnReceivedData.Invoke(connectionId, data, channel); - } - else - { - SocketId socketId; - epicToSocketIds.TryGetValue(clientUserId, out socketId); - CloseP2PSessionWithUser(clientUserId, socketId); + string productId; + clientUserId.ToString(out productId); - string productId; - clientUserId.ToString(out productId); + Debug.LogError("Data received from epic client thats not known " + productId); + OnReceivedError.Invoke(-1, new Exception("ERROR Unknown product ID")); + } + } - Debug.LogError("Data received from epic client thats not known " + productId); - OnReceivedError.Invoke(-1, new Exception("ERROR Unknown product ID")); - } - } + public void Disconnect(int connectionId) { + if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { + SocketId socketId; + epicToSocketIds.TryGetValue(userId, out socketId); + SendInternal(userId, socketId, InternalMessages.DISCONNECT); + epicToMirrorIds.Remove(userId); + epicToSocketIds.Remove(userId); + } else { + Debug.LogWarning("Trying to disconnect unknown connection id: " + connectionId); + } + } - public void Disconnect(int connectionId) - { - if (epicToMirrorIds.TryGetValue(connectionId, out var userId)) - { - SocketId socketId; - epicToSocketIds.TryGetValue(userId, out socketId); - SendInternal(userId, socketId, InternalMessages.DISCONNECT); - epicToMirrorIds.Remove(userId); - epicToSocketIds.Remove(userId); - } - else - { - Debug.LogWarning("Trying to disconnect unknown connection id: " + connectionId); - } - } + public void Shutdown() { + foreach (KeyValuePair client in epicToMirrorIds) { + Disconnect(client.Value); + SocketId socketId; + epicToSocketIds.TryGetValue(client.Key, out socketId); + WaitForClose(client.Key, socketId); + } - public void Shutdown() - { - foreach (KeyValuePair client in epicToMirrorIds) - { - Disconnect(client.Value); - SocketId socketId; - epicToSocketIds.TryGetValue(client.Key, out socketId); - WaitForClose(client.Key, socketId); - } + ignoreAllMessages = true; + ReceiveData(); - ignoreAllMessages = true; - ReceiveData(); + Dispose(); + } - Dispose(); - } + public void SendAll(int connectionId, byte[] data, int channelId) { + if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { + SocketId socketId; + epicToSocketIds.TryGetValue(userId, out socketId); + Send(userId, socketId, data, (byte)channelId); + } else { + Debug.LogError("Trying to send on unknown connection: " + connectionId); + OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); + } - public void SendAll(int connectionId, byte[] data, int channelId) - { - if (epicToMirrorIds.TryGetValue(connectionId, out var userId)) - { - SocketId socketId; - epicToSocketIds.TryGetValue(userId, out socketId); - Send(userId, socketId, data, (byte)channelId); - } - else - { - Debug.LogError("Trying to send on unknown connection: " + connectionId); - OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); - } - } + } - public string ServerGetClientAddress(int connectionId) - { - if (epicToMirrorIds.TryGetValue(connectionId, out var userId)) - { - string userIdString; - userId.ToString(out userIdString); - return userIdString; - } - else - { - Debug.LogError("Trying to get info on unknown connection: " + connectionId); - OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); - return string.Empty; - } - } + public string ServerGetClientAddress(int connectionId) { + if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { + string userIdString; + userId.ToString(out userIdString); + return userIdString; + } else { + Debug.LogError("Trying to get info on unknown connection: " + connectionId); + OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); + return string.Empty; + } + } - protected override void OnConnectionFailed(ProductUserId remoteId) - { - if (ignoreAllMessages) - { - return; - } + protected override void OnConnectionFailed(ProductUserId remoteId) { + if (ignoreAllMessages) { + return; + } - var connectionId = epicToMirrorIds.TryGetValue(remoteId, out var connId) ? connId : nextConnectionID++; - OnDisconnected.Invoke(connectionId); + int connectionId = epicToMirrorIds.TryGetValue(remoteId, out int connId) ? connId : nextConnectionID++; + OnDisconnected.Invoke(connectionId); - Debug.LogError("Connection Failed, removing user"); - epicToMirrorIds.Remove(remoteId); - epicToSocketIds.Remove(remoteId); - } + Debug.LogError("Connection Failed, removing user"); + epicToMirrorIds.Remove(remoteId); + epicToSocketIds.Remove(remoteId); + } + } } \ No newline at end of file From 4dccc55b56e2cdd7999fcf7be4005cc1000d709a Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 26 Apr 2023 15:38:37 -0700 Subject: [PATCH 15/16] _assetId and kcp message --- QSB/QSBNetworkManager.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/QSB/QSBNetworkManager.cs b/QSB/QSBNetworkManager.cs index 9d920dbf..477cee38 100644 --- a/QSB/QSBNetworkManager.cs +++ b/QSB/QSBNetworkManager.cs @@ -67,7 +67,7 @@ public class QSBNetworkManager : NetworkManager, IAddComponentOnStart private string _lastTransportError; private static readonly string[] _kcpErrorLogs = { - "KCP: received disconnect message", + "KcpPeer: received disconnect message", "Failed to resolve host: .*" }; @@ -110,7 +110,7 @@ public class QSBNetworkManager : NetworkManager, IAddComponentOnStart QSBCore.ProfileManager.OnProfileSignInComplete += _ => InitPlayerName(); playerPrefab = QSBCore.NetworkAssetBundle.LoadAsset("Assets/Prefabs/NETWORK_Player_Body.prefab"); - playerPrefab.GetRequiredComponent().SetValue("m_AssetId", 1.ToGuid().ToString("N")); + playerPrefab.GetRequiredComponent().SetValue("_assetId", (uint)1); ShipPrefab = MakeNewNetworkObject(2, "NetworkShip", typeof(ShipTransformSync)); var shipVector3Sync = ShipPrefab.AddComponent(); @@ -202,7 +202,7 @@ public class QSBNetworkManager : NetworkManager, IAddComponentOnStart /// this works by calling Unload(false) and then reloading the AssetBundle, /// which makes LoadAsset give you a new resource. /// see https://docs.unity3d.com/Manual/AssetBundles-Native.html. - private static GameObject MakeNewNetworkObject(int assetId, string name, Type networkBehaviourType) + private static GameObject MakeNewNetworkObject(uint assetId, string name, Type networkBehaviourType) { var bundle = QSBCore.Helper.Assets.LoadBundle("AssetBundles/qsb_empty"); @@ -216,7 +216,7 @@ public class QSBNetworkManager : NetworkManager, IAddComponentOnStart bundle.Unload(false); template.name = name; - template.AddComponent().SetValue("m_AssetId", assetId.ToGuid().ToString("N")); + template.AddComponent().SetValue("_assetId", assetId); template.AddComponent(networkBehaviourType); return template; } From 4c866345e5db2416e9c6f5064a51a4a763e29b8d Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 26 Apr 2023 16:08:16 -0700 Subject: [PATCH 16/16] copy paste #590 fix for model ship --- QSB/ModelShip/ModelShipThrusterVariableSyncer.cs | 11 +++++++++++ QSB/ShipSync/ShipThrusterVariableSyncer.cs | 1 + 2 files changed, 12 insertions(+) diff --git a/QSB/ModelShip/ModelShipThrusterVariableSyncer.cs b/QSB/ModelShip/ModelShipThrusterVariableSyncer.cs index 3e896587..f1ed0c8e 100644 --- a/QSB/ModelShip/ModelShipThrusterVariableSyncer.cs +++ b/QSB/ModelShip/ModelShipThrusterVariableSyncer.cs @@ -23,6 +23,17 @@ public class ModelShipThrusterVariableSyncer : MonoBehaviour public void Update() { + // fixes #590 + if (ModelShipManager.Instance.CurrentFlyer == uint.MaxValue) + { + if (ThrusterModel) + { + AccelerationSyncer.Value = Vector3.zero; + } + + return; + } + if (PlayerTransformSync.LocalInstance && QSBPlayerManager.LocalPlayer.FlyingModelShip) { GetFromShip(); diff --git a/QSB/ShipSync/ShipThrusterVariableSyncer.cs b/QSB/ShipSync/ShipThrusterVariableSyncer.cs index 40ede599..85983763 100644 --- a/QSB/ShipSync/ShipThrusterVariableSyncer.cs +++ b/QSB/ShipSync/ShipThrusterVariableSyncer.cs @@ -22,6 +22,7 @@ public class ShipThrusterVariableSyncer : NetworkBehaviour public void Update() { // bug : this doesn't account for autopilot + // fixes #590 if (ShipManager.Instance.CurrentFlyer == uint.MaxValue) { if (_thrusterModel)