From ef5b771986e375fbf520c64f76d67dd104f3f5d7 Mon Sep 17 00:00:00 2001 From: Linrador Date: Tue, 19 Aug 2025 22:41:31 +0200 Subject: [PATCH] updated player angle --- .../CS2WebSocketTelemetryPlugin.cs | 1210 +++++------------ .../net8.0/CS2WebSocketTelemetryPlugin.dll | Bin 92160 -> 61440 bytes .../net8.0/CS2WebSocketTelemetryPlugin.pdb | Bin 26660 -> 23308 bytes ...etTelemetryPlugin.csproj.nuget.dgspec.json | 23 +- ...SocketTelemetryPlugin.csproj.nuget.g.props | 8 +- ...S2WebSocketTelemetryPlugin.AssemblyInfo.cs | 2 +- ...etTelemetryPlugin.AssemblyInfoInputs.cache | 2 +- ....GeneratedMSBuildEditorConfig.editorconfig | 4 +- .../CS2WebSocketTelemetryPlugin.assets.cache | Bin 30707 -> 30562 bytes ...metryPlugin.csproj.AssemblyReference.cache | Bin 19915 -> 19875 bytes ...metryPlugin.csproj.CoreCompileInputs.cache | 2 +- .../net8.0/CS2WebSocketTelemetryPlugin.dll | Bin 92160 -> 61440 bytes .../net8.0/CS2WebSocketTelemetryPlugin.pdb | Bin 26660 -> 23308 bytes .../ref/CS2WebSocketTelemetryPlugin.dll | Bin 16896 -> 13312 bytes .../refint/CS2WebSocketTelemetryPlugin.dll | Bin 16896 -> 13312 bytes .../obj/project.assets.json | 21 +- .../obj/project.nuget.cache | 100 +- 17 files changed, 394 insertions(+), 978 deletions(-) diff --git a/CS2WebSocketTelemetryPlugin/CS2WebSocketTelemetryPlugin.cs b/CS2WebSocketTelemetryPlugin/CS2WebSocketTelemetryPlugin.cs index b5dd042..dc961cc 100644 --- a/CS2WebSocketTelemetryPlugin/CS2WebSocketTelemetryPlugin.cs +++ b/CS2WebSocketTelemetryPlugin/CS2WebSocketTelemetryPlugin.cs @@ -1,14 +1,12 @@ // CS2WebSocketTelemetryPlugin.cs using System; -using System.Collections; using System.Collections.Concurrent; using System.Collections.Generic; using System.IO; -using System.Linq; using System.Net; -using System.Net.Sockets; using System.Net.Security; +using System.Net.Sockets; using System.Reflection; using System.Security.Authentication; using System.Security.Cryptography; @@ -22,7 +20,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Core.Attributes; using CounterStrikeSharp.API.Core.Attributes.Registration; using CounterStrikeSharp.API.Modules.Commands; -using CounterStrikeSharp.API.Modules.Events; using Microsoft.Extensions.Logging; namespace WsTelemetry; @@ -31,9 +28,9 @@ namespace WsTelemetry; public class WebSocketTelemetryPlugin : BasePlugin { public override string ModuleName => "WS Telemetry"; - public override string ModuleVersion => "1.5.2"; + public override string ModuleVersion => "1.6.0"; public override string ModuleAuthor => "you + ChatGPT"; - public override string ModuleDescription => "WS(S)-Server: Spielerpos/aim + Granaten (Tick-Trace/Bounce/Detonate/Path) + Map + Smoke/Fire-Status"; + public override string ModuleDescription => "WS(S)-Server: Spielerpositionen + Blickrichtung + Map"; // --- Konfiguration --- private volatile bool _enabled = false; @@ -68,7 +65,6 @@ public class WebSocketTelemetryPlugin : BasePlugin public int? SendHz { get; set; } } - private void LoadAndApplyConfig(bool generateIfMissing = true) { try @@ -135,10 +131,6 @@ public class WebSocketTelemetryPlugin : BasePlugin // Sendefrequenz if (cfg.SendHz is int hz && hz >= 1 && hz <= 128) _sendHz = hz; - // Durations bleiben hart verdrahtet - _smokeDurationSec = SMOKE_DURATION_SEC; - _fireDurationSec = FIRE_DURATION_SEC; - Logger.LogInformation($"[WS] Konfiguration geladen ({_bindHost}:{_bindPort}{_bindPath}, tls={_useTls}, hz={_sendHz})"); } catch (Exception ex) @@ -153,10 +145,8 @@ public class WebSocketTelemetryPlugin : BasePlugin { var path = Path.Combine(ModuleDirectory, ConfigFileName); - // URL aus aktuellen Feldern zusammensetzen var url = $"{(_useTls ? "wss" : "ws")}://{_bindHost}:{_bindPort}{_bindPath}"; - // CertPath möglichst relativ speichern var cp = _certPath; try { @@ -206,102 +196,6 @@ public class WebSocketTelemetryPlugin : BasePlugin private const double MaxFrameDt = 0.25; private DateTime _lastTick = DateTime.UtcNow; - // --- Nade Runtime-Status --- - private int _seq = 0; // globale Sequenz (für Nade/Trace IDs) - - // Fest verdrahtete Zeiten (nicht änderbar) - private const double SMOKE_DURATION_SEC = 20.0; - private const double FIRE_DURATION_SEC = 7.0; - - // interner Zugriff bleibt über Felder, die auf die Konstanten gesetzt werden - private double _smokeDurationSec = SMOKE_DURATION_SEC; - private double _fireDurationSec = FIRE_DURATION_SEC; - - private class AoeState - { - public required DateTimeOffset EndAt; - public required float X; - public required float Y; - public required float Z; - } - - private readonly ConcurrentDictionary _activeSmokes = new(); - private readonly ConcurrentDictionary _activeFires = new(); - - // --- Trajektorien-Tracking --- - private class NadeTrack - { - public int Id; - public ulong SteamId; - public string Nade = ""; - public DateTimeOffset Start; - public DateTimeOffset Last; - public bool Finalized; - - public object? BoundEntity; - public string? BoundName; - public float LastX, LastY, LastZ; - - public int Sent = 0; // bereits gesendete Punkte - public int CurrentSeg = 0; // aktuelle Segment-ID (0-basiert) - - public readonly List Points = new(); - public class Point { public float X; public float Y; public float Z; public long T; public int S; } - } - - // Alle Tracks by id - private readonly ConcurrentDictionary _tracks = new(); - // Letzter aktiver Track je Spieler (für grenade_bounce ohne Typ) - private readonly ConcurrentDictionary _lastTrackByPlayer = new(); - // Aktiver Track je Spieler+Nade (für eindeutiges Finalisieren) - private readonly ConcurrentDictionary _activeTrackByPlayerNade = new(); - - private static string PNKey(ulong steamId, string nade) => $"{steamId}:{nade}"; - - // --- Entity-Suche via Reflection --- - private static MethodInfo? _miFindByDesigner; - private static MethodInfo? _miFindByClass; - - private static IEnumerable FindEntitiesByName(string name) - { - _miFindByDesigner ??= typeof(Utilities).GetMethod("FindAllEntitiesByDesignerName", BindingFlags.Public | BindingFlags.Static); - _miFindByClass ??= typeof(Utilities).GetMethod("FindAllEntitiesByClassname", BindingFlags.Public | BindingFlags.Static); - - IEnumerable? ie = null; - try - { - if (_miFindByDesigner != null) - ie = _miFindByDesigner.Invoke(null, new object[] { name }) as IEnumerable; - if (ie == null && _miFindByClass != null) - ie = _miFindByClass.Invoke(null, new object[] { name }) as IEnumerable; - } - catch { } - - if (ie == null) yield break; - foreach (var e in ie) if (e != null) yield return e; - } - - private static bool TryGetPos(object ent, out float x, out float y, out float z) - { - try - { - dynamic d = ent; - var pos = d.AbsOrigin; - x = (float)pos.X; y = (float)pos.Y; z = (float)pos.Z; - return true; - } - catch - { - x = y = z = 0; - return false; - } - } - private static bool IsEntValid(object ent) - { - try { dynamic d = ent; return d != null && d.IsValid; } - catch { return ent != null; } - } - // --- Stabiler Aim --- private readonly ConcurrentDictionary _lastAimByPlayer = new(); @@ -321,64 +215,120 @@ public class WebSocketTelemetryPlugin : BasePlugin return pitch; } - // -- Camera-gesteuerte Blickrichtung -- + // ========================= + // Blickrichtung (Client-Kamera) – EyeAngles bevorzugt + // ========================= + + private static bool IsAlive(dynamic pawn) + { + try { int ls = (int)pawn.LifeState; return ls == 0; } catch { } + try { return (bool)pawn.IsAlive; } catch { } + try { int hp = (int)pawn.Health; return hp > 0; } catch { } + return true; + } + private static bool TryReadAngles(dynamic src, out float pitch, out float yaw, out float roll) { - // Fallback-Init, damit out immer gesetzt ist pitch = 0f; yaw = 0f; roll = 0f; - try { var a = src.EyeAngles; pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } + // Kamera-/Aim-Winkel + try { var a = src.EyeAngles; pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } + // Modell-/Knotenorientierung try { var a = src.AbsRotation; pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } try { var a = src.ViewAngles; pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } try { pitch = (float)src.Pitch; yaw = (float)src.Yaw; roll = 0f; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } - // bleibt false; out sind bereits gesetzt return false; } - private static bool TryGetCameraAnglesFromRoot(dynamic root, out float pitch, out float yaw, out float roll) + /// Winkel vorzugsweise vom SceneNode; Fallback: NodeToWorld.Angles, root.AbsRotation. + private static bool TryGetAnglesFromSceneNode(dynamic root, out float pitch, out float yaw, out float roll) { - // out-Parameter VOR jeglicher Logik initialisieren (fix für CS0177) pitch = 0f; yaw = 0f; roll = 0f; - // 1) Aktive Kamera-Entity über CameraServices try { - dynamic cs = root.CameraServices; - dynamic h = (cs != null) ? cs.m_hActiveCamera : null; - dynamic cam = (h != null ? h.Value : null) ?? cs?.ActiveCamera ?? root.Camera; - if (cam != null && TryReadAngles(cam, out pitch, out yaw, out roll)) - return true; + dynamic node = root?.GameSceneNode; + if (node != null) + { + try { var r = node.AbsRotation; pitch = (float)r.X; yaw = (float)r.Y; roll = (float)r.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } + try { var tf = node.NodeToWorld; var a = tf.Angles; pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } + } + try { var r = root.AbsRotation; pitch = (float)r.X; yaw = (float)r.Y; roll = (float)r.Z; if (IsFinite(pitch) && IsFinite(yaw)) return true; } catch { } } catch { } - // 2) Winkel direkt aus CameraServices - try - { - dynamic cs = root.CameraServices; - if (cs != null && TryReadAngles(cs, out pitch, out yaw, out roll)) - return true; - } - catch { } - - // 3) Letzter Versuch: direkt am Root - return TryReadAngles(root, out pitch, out yaw, out roll); - } - - private static bool TryGetCameraAngles(CCSPlayerController p, dynamic pawn, out float pitch, out float yaw, out float roll) - { - // out-Defaults - pitch = 0f; yaw = 0f; roll = 0f; - - if (pawn != null && TryGetCameraAnglesFromRoot(pawn, out pitch, out yaw, out roll)) - return true; - - if (TryGetCameraAnglesFromRoot(p, out pitch, out yaw, out roll)) - return true; - return false; } + /// Observer-Target via Pawn (nicht Controller!), robust über verschiedene Felder. + private static dynamic? TryGetObserverTargetFromPawn(dynamic pawn) + { + // typische Felder am Observer-Pawn / Observer-Komponente + try { var os = pawn.ObserverServices; var h = os?.m_hObserverTarget; var v = (h != null ? (h.Value ?? h) : null); if (v != null) return v; } catch { } + try { var h = pawn.m_hObserverTarget; var v = (h != null ? (h.Value ?? h) : null); if (v != null) return v; } catch { } + try { var h = pawn.m_hLastObserverTarget; var v = (h != null ? (h.Value ?? h) : null); if (v != null) return v; } catch { } + try { var v = pawn.ObserverTarget; if (v != null) return (v.Value ?? v); } catch { } + return null; + } + + /// Irgendeine Entität in einen Pawn auflösen (Controller→Pawn, Entity→Pawn, bereits Pawn). + private static dynamic? AsPawn(dynamic entity) + { + if (entity == null) return null; + try { var p = entity.PlayerPawn; if (p != null && p.IsValid) return p.Value ?? p; } catch { } + try { var p = entity.Pawn; if (p != null && p.IsValid) return p.Value ?? p; } catch { } + try { var _ = entity.EyeAngles; return entity; } catch { } + try { var _ = entity.AbsOrigin; return entity; } catch { } + return null; + } + + /// Pawn, dessen Kamera wir darstellen: lebend → eigener Pawn; sonst → Observer-Target (vom Pawn aus). + private static bool TryGetClientCameraPawn(CCSPlayerController ctrl, dynamic pawn, out dynamic camPawn) + { + camPawn = null; + try { if (pawn != null && IsAlive(pawn)) { camPawn = pawn; return true; } } catch { } + var tgtEnt = TryGetObserverTargetFromPawn(pawn); + var tgtPawn = AsPawn(tgtEnt); + if (tgtPawn != null) { camPawn = tgtPawn; return true; } + return false; + } + + /// Endgültige View-Winkel (EyeAngles bevorzugt, sonst SceneNode/AbsRotation, dann Fallbacks). + private static bool TryGetViewAngles(CCSPlayerController ctrl, dynamic pawn, out float pitch, out float yaw, out float roll) + { + pitch = 0f; yaw = 0f; roll = 0f; + + dynamic camPawn; + if (TryGetClientCameraPawn(ctrl, pawn, out camPawn)) + { + // 1) Echte Kamera-/Aim-Winkel + try + { + var a = camPawn.EyeAngles; + pitch = (float)a.X; yaw = (float)a.Y; roll = (float)a.Z; + if (IsFinite(pitch) && IsFinite(yaw)) return true; + } + catch { } + + // 2) Modellorientierung als Fallback + if (TryGetAnglesFromSceneNode(camPawn, out pitch, out yaw, out roll)) + return true; + + try + { + var r = camPawn.AbsRotation; + pitch = (float)r.X; yaw = (float)r.Y; roll = (float)r.Z; + if (IsFinite(pitch) && IsFinite(yaw)) return true; + } + catch { } + } + + // 3) letzte Fallbacks + if (TryReadAngles(pawn, out pitch, out yaw, out roll)) return true; + return TryReadAngles(ctrl, out pitch, out yaw, out roll); + } + private (float pitch, float yaw) StoreAim(CCSPlayerController p, float pitch, float yaw) { var sid = p.AuthorizedSteamID?.SteamId64 ?? 0UL; @@ -386,38 +336,66 @@ public class WebSocketTelemetryPlugin : BasePlugin return (pitch, yaw); } + private static bool IsTiny(float v) => MathF.Abs(v) <= 1e-5f; + private static bool IsTinyPair(float a, float b) => IsTiny(a) && IsTiny(b); + private (float pitch, float yaw) GetStableAim(CCSPlayerController p, dynamic pawn) { - // 0) Kamera-Winkel bevorzugen - float cp, cy, cr; - if (TryGetCameraAngles(p, pawn, out cp, out cy, out cr)) - return StoreAim(p, ClampPitch(cp), NormalizeYaw(cy)); + float vp=0, vy=0, vr=0; - // 1) Fallback: Pawn EyeAngles + // 1) Bevorzugt: echte Kamera-/View-Winkel + if (TryGetViewAngles(p, pawn, out vp, out vy, out vr)) + { + vp = ClampPitch(vp); vy = NormalizeYaw(vy); + if (!IsTinyPair(vp, vy)) // 0/0 ist verdächtig → nicht akzeptieren + return StoreAim(p, vp, vy); + } + + // 2) Fallback: Pawn EyeAngles (falls vorhanden) try { dynamic a = pawn?.EyeAngles; float px = (float)a.X, py = (float)a.Y; if (IsFinite(px) && IsFinite(py)) - return StoreAim(p, ClampPitch(px), NormalizeYaw(py)); - } - catch { } - - // 2) Fallback: AbsRotation (Yaw), Pitch aus letztem Wert - try - { - dynamic r = pawn?.AbsRotation; - float yaw = (float)r.Y; - if (IsFinite(yaw)) { - var sid = p.AuthorizedSteamID?.SteamId64 ?? 0UL; - float pitch = _lastAimByPlayer.TryGetValue(sid, out var last) ? last.pitch : 0f; - return StoreAim(p, pitch, NormalizeYaw(yaw)); + px = ClampPitch(px); py = NormalizeYaw(py); + if (!IsTinyPair(px, py)) + return StoreAim(p, px, py); } } catch { } - // 3) Letzter gültiger Aim oder neutral + // 3) Fallback: Modell-/Feet-Yaw aus AbsRotation + try + { + dynamic r = pawn?.AbsRotation; + float ryaw = (float)r.Y; + if (IsFinite(ryaw) && !IsTiny(ryaw)) + { + var sid = p.AuthorizedSteamID?.SteamId64 ?? 0UL; + float pitch = _lastAimByPlayer.TryGetValue(sid, out var last) ? last.pitch : 0f; + return StoreAim(p, pitch, NormalizeYaw(ryaw)); + } + } + catch { } + + // 4) Fallback: Bewegungsrichtung (nur wenn sich der Spieler bewegt) + try + { + var vel = pawn?.AbsVelocity; + float vx = (float)vel.X, vy2 = (float)vel.Y; + float sp = MathF.Sqrt(vx * vx + vy2 * vy2); + if (sp > 1f) + { + float vyaw = NormalizeYaw(MathF.Atan2(vy2, vx) * 180f / MathF.PI); + var sid = p.AuthorizedSteamID?.SteamId64 ?? 0UL; + float pitch = _lastAimByPlayer.TryGetValue(sid, out var last) ? last.pitch : 0f; + return StoreAim(p, pitch, vyaw); + } + } + catch { } + + // 5) Letzter gültiger Aim oder neutral { var sid = p.AuthorizedSteamID?.SteamId64 ?? 0UL; if (_lastAimByPlayer.TryGetValue(sid, out var last)) return last; @@ -425,19 +403,35 @@ public class WebSocketTelemetryPlugin : BasePlugin } } + private static (float pitch, float yaw, float roll) ReadEyeAngles(dynamic pawn) + { + try + { + var ea = pawn?.EyeAngles; + float pitch = (float)ea.X; + float yaw = (float)ea.Y; + float roll = (float)ea.Z; + + // wie üblich begrenzen/normalisieren + if (IsFinite(pitch) && IsFinite(yaw)) + return (ClampPitch(pitch), NormalizeYaw(yaw), roll); + } + catch { } + return (0f, 0f, 0f); + } + + public override void Load(bool hotReload) { - Logger.LogInformation("[WS] Plugin geladen. Kommandos: css_ws_enable, css_ws_reloadcfg, css_ws_url, css_ws_rate, css_ws_cert, css_ws_certpwd, css_ws_sendmap"); + Logger.LogInformation("[WS] Plugin geladen. Kommandos: css_ws_enable, css_ws_restart, css_ws_reloadcfg, css_ws_url, css_ws_rate, css_ws_cert, css_ws_certpwd, css_ws_sendmap"); RegisterListener(OnTick); _mapName = Server.MapName ?? ""; RegisterListener(OnMapStart); - // Konfiguration einlesen (ohne enabled) … LoadAndApplyConfig(); - // … und automatisch starten (abschaltbar per css_ws_enable 0) _enabled = true; StartWebSocket(); } @@ -503,6 +497,36 @@ public class WebSocketTelemetryPlugin : BasePlugin } } + [ConsoleCommand("css_ws_restart", "Lädt config.json neu und startet den WS(S)-Server neu.")] + [CommandHelper(minArgs: 0, usage: "")] + public void CmdRestart(CCSPlayerController? caller, CommandInfo cmd) + { + try + { + // Config immer neu laden (ohne Beispieldatei zu erzeugen) + LoadAndApplyConfig(generateIfMissing: false); + + // internen Zustand zurücksetzen + _lastTick = DateTime.UtcNow; + _accumulator = 0; + while (_outbox.TryDequeue(out _)) { } + + // Server neu starten (nur wenn derzeit/enabled) + var wasEnabled = _enabled; + StopWebSocket(); + if (wasEnabled) + StartWebSocket(); + + cmd.ReplyToCommand("[WS] Config neu geladen und neu gestartet."); + if (!wasEnabled) + cmd.ReplyToCommand("[WS] Hinweis: Server ist deaktiviert (css_ws_enable 1), Neustart war nur intern."); + } + catch (Exception ex) + { + cmd.ReplyToCommand($"[WS] Restart-Fehler: {ex.Message}"); + } + } + [ConsoleCommand("css_ws_sendmap", "Sendet die aktuelle Karte an alle verbundenen Clients")] public void CmdSendMap(CCSPlayerController? caller, CommandInfo cmd) { @@ -595,18 +619,8 @@ public class WebSocketTelemetryPlugin : BasePlugin if (_accumulator < targetDt) return; _accumulator = 0; - // verwaiste Tracks aufräumen (Failsafe, 15s) - foreach (var kv in _tracks) - { - var tr = kv.Value; - if (!tr.Finalized && (DateTimeOffset.UtcNow - tr.Last).TotalSeconds > 15) - { - TryFinalizeTrackById(tr.Id, sendEvenIfEmpty: true, nadeOverride: tr.Nade); - } - } - - // --- Spieler sammeln --- var playersList = new List(); + foreach (var p in Utilities.GetPlayers()) { try @@ -619,704 +633,71 @@ public class WebSocketTelemetryPlugin : BasePlugin var pawn = pawnHandle.Value; if (pawn == null) continue; - var pos = pawn.AbsOrigin; - - // stabile Blickrichtung - var (aimPitch, aimYaw) = GetStableAim(p, pawn); - - // Bewegungsrichtung aus Velocity (2D) - float dirYaw = 0f, speed2D = 0f; - float vx = 0f, vy = 0f, vz = 0f; + // --- Position (SceneNode.AbsOrigin bevorzugt) + float posX, posY, posZ; try { - var vel = pawn.AbsVelocity; - vx = vel.X; vy = vel.Y; vz = vel.Z; - speed2D = MathF.Sqrt(vx * vx + vy * vy); - if (speed2D > 1f) - dirYaw = NormalizeYaw((float)(Math.Atan2(vy, vx) * 180.0 / Math.PI)); + var node = pawn?.CBodyComponent?.SceneNode; + var org = node != null ? node.AbsOrigin : pawn.AbsOrigin; + posX = (float)org.X; + posY = (float)org.Y; + posZ = (float)org.Z; + } + catch + { + var org = pawn.AbsOrigin; + posX = (float)org.X; + posY = (float)org.Y; + posZ = (float)org.Z; + } + + // --- Blickrichtung (Yaw aus EyeAngles, bereits normalisiert/geclamped) + var (_, eyeYaw, _) = ReadEyeAngles(pawn); + float yawDeg = eyeYaw; + + // --- viewAngle wie im Beispiel: AbsRotation (Pitch/Yaw/Roll) + float angX = 0f, angY = 0f, angZ = 0f; + try + { + var ang = pawn.AbsRotation; + angX = (float)ang.X; // pitch + angY = (float)ang.Y; // yaw + angZ = (float)ang.Z; // roll } catch { } - // rohe Pawn-Angles (Debug/Kompat) - float rawPitch = 0f, rawYaw = 0f, rawRoll = 0f; - try - { - var ar = pawn.EyeAngles; - rawPitch = ar.X; rawYaw = ar.Y; rawRoll = ar.Z; - } - catch { } + // --- Alive-Status + bool isAlive = true; + try { int ls = (int)pawn.LifeState; isAlive = (ls == 0); } catch { } + if (!isAlive) { try { isAlive = ((int)pawn.Health) > 0; } catch { } } + // --- Minimales Player-Objekt + viewAngle playersList.Add(new { - steamId = p.AuthorizedSteamID?.SteamId64 ?? 0UL, - name = p.PlayerName, - team = p.TeamNum, - pos = new { x = pos.X, y = pos.Y, z = pos.Z }, - - // stabilisierte Blickrichtung (nutzen!) - view = new { pitch = aimPitch, yaw = aimYaw, roll = 0f }, - aim = new { pitch = aimPitch, yaw = aimYaw }, - - // optional: rohe Werte - viewRaw = new { pitch = rawPitch, yaw = rawYaw, roll = rawRoll }, - - move = new - { - dirYaw = speed2D > 1f ? dirYaw : (float?)null, - speed = speed2D, - vel = new { x = vx, y = vy, z = vz } - } + steamId = p.AuthorizedSteamID?.SteamId64 ?? 0UL, + name = p.PlayerName, + team = p.TeamNum, + pos = new { x = posX, y = posY, z = posZ }, + viewAngle = new { pitch = angX, yaw = angY, roll = angZ }, + alive = isAlive }); } - catch { } + catch { /* Spieler überspringen bei Fehlern */ } } - // --- Nade-Trace pro Tick sammeln --- - var traceList = new List(); - - // Sammeln/Updaten der aktiven Projektile (füllt nur Track-Punkte) - SampleActiveNadeTracks(); - - // --- Nade-Path Realtime-Streaming pro Tick --- - foreach (var tr in _tracks.Values) - { - if (tr.Finalized) continue; - - int from, to; - List delta = null!; - lock (tr.Points) - { - from = tr.Sent; - to = tr.Points.Count; - if (to > from) - { - delta = new List(to - from); - for (int i = from; i < to; i++) - { - var p = tr.Points[i]; - delta.Add(new { x = p.X, y = p.Y, z = p.Z, t = p.T, s = p.S }); - } - tr.Sent = to; - } - } - - if (delta != null && delta.Count > 0) - { - Enqueue(new - { - type = "nade", - sub = "path", - id = tr.Id, - nade = tr.Nade, - steamId = tr.SteamId, - t = NowMs(), - points = delta, - final = false - }); - } - } - - // aktive Nades (letzte bekannte Position) - var activeList = new List(); - foreach (var tr in _tracks.Values) - { - if (tr.Finalized) continue; - activeList.Add(new - { - id = tr.Id, - nade = tr.Nade, - steamId = tr.SteamId, - pos = new { x = tr.LastX, y = tr.LastY, z = tr.LastZ } - }); - } - - if (playersList.Count == 0 && traceList.Count == 0 && activeList.Count == 0) return; + if (playersList.Count == 0) return; var payload = new { type = "tick", t = NowMs(), - players = playersList, - nades = (activeList.Count > 0 || traceList.Count > 0) - ? new { trace = traceList, active = activeList } - : null + players = playersList }; Broadcast(JsonSerializer.Serialize(payload)); } - // ========================= - // Sampling der aktiven Projektile - // ========================= - private static readonly Dictionary _kindToNames = new() - { - ["he"] = new[] { "hegrenade_projectile" }, - ["flash"] = new[] { "flashbang_projectile" }, - ["smoke"] = new[] { "smokegrenade_projectile" }, - ["decoy"] = new[] { "decoy_projectile" }, - ["molotov"] = new[] { "molotov_projectile", "incgrenade_projectile" }, - ["other"] = new[] { "grenade_projectile" } // Fallback - }; - - private IEnumerable<(object ent, string name, float x, float y, float z)> EnumerateProjectilesFor(string kind) - { - if (!_kindToNames.TryGetValue(kind, out var names)) names = _kindToNames["other"]; - - foreach (var nm in names) - { - foreach (var e in FindEntitiesByName(nm)) - { - if (e == null || !IsEntValid(e)) continue; - if (TryGetPos(e, out var x, out var y, out var z)) - yield return (e, nm, x, y, z); - } - } - } - - private void SampleActiveNadeTracks() - { - var neededKinds = _tracks.Values.Where(t => !t.Finalized).Select(t => t.Nade).Distinct().ToList(); - var poolByKind = new Dictionary>(); - foreach (var k in neededKinds) - poolByKind[k] = EnumerateProjectilesFor(k).ToList(); - - var usedEnts = new HashSet(ReferenceEqualityComparer.Instance); - - foreach (var kv in _tracks) - { - var tr = kv.Value; - if (tr.Finalized) continue; - - if (tr.BoundEntity == null) - { - if (!poolByKind.TryGetValue(tr.Nade, out var list) || list.Count == 0) continue; - - var best = list - .Where(tpl => !usedEnts.Contains(tpl.ent)) - .Select(tpl => new { tpl.ent, tpl.name, tpl.x, tpl.y, tpl.z, dist2 = Dist2(tr.LastX, tr.LastY, tr.LastZ, tpl.x, tpl.y, tpl.z) }) - .OrderBy(a => a.dist2) - .FirstOrDefault(); - - // NEU: altersabhängiger Fangradius + sanfter Fallback - var ageSec = (float)(DateTimeOffset.UtcNow - tr.Start).TotalSeconds; - - // wächst schnell an, deckelt bei 4500u (ca. halbe Mapbreite) - var maxDist = MathF.Min(4500f, 300f + ageSec * 2500f); - var maxDist2 = maxDist * maxDist; - - if (best != null && best.dist2 <= maxDist2) - { - tr.BoundEntity = best.ent; - tr.BoundName = best.name; - tr.LastX = best.x; tr.LastY = best.y; tr.LastZ = best.z; - tr.Last = DateTimeOffset.UtcNow; - - var tms = NowMs(); - lock (tr.Points) - tr.Points.Add(new NadeTrack.Point { X = best.x, Y = best.y, Z = best.z, T = tms, S = tr.CurrentSeg }); - - usedEnts.Add(best.ent); - } - else if (best != null && tr.Points.Count <= 1) - { - // Fallback: ganz am Anfang binden wir notfalls trotzdem den nächsten Kandidaten, - // damit sofort Bewegungsdaten fließen (vermeidet "nur Wurf+Detonate"). - tr.BoundEntity = best.ent; - tr.BoundName = best.name; - tr.LastX = best.x; tr.LastY = best.y; tr.LastZ = best.z; - tr.Last = DateTimeOffset.UtcNow; - - var tms = NowMs(); - lock (tr.Points) - tr.Points.Add(new NadeTrack.Point { X = best.x, Y = best.y, Z = best.z, T = tms, S = tr.CurrentSeg }); - - usedEnts.Add(best.ent); - } - } - else - { - var ent = tr.BoundEntity; - if (ent == null || !IsEntValid(ent)) continue; - - if (TryGetPos(ent, out var ex, out var ey, out var ez)) - { - if (Dist2(tr.LastX, tr.LastY, tr.LastZ, ex, ey, ez) > 0.1f * 0.1f) - { - var tms = NowMs(); - lock (tr.Points) - tr.Points.Add(new NadeTrack.Point { X = ex, Y = ey, Z = ez, T = tms, S = tr.CurrentSeg }); - - tr.LastX = ex; tr.LastY = ey; tr.LastZ = ez; - tr.Last = DateTimeOffset.UtcNow; - } - } - } - } - } - - private static float Dist2(float ax, float ay, float az, float bx, float by, float bz) - { - float dx = ax - bx, dy = ay - by, dz = az - bz; - return dx * dx + dy * dy + dz * dz; - } - - private static bool LooksAirburst(NadeTrack tr) - { - if (tr.Points.Count < 2) return false; - var a = tr.Points[^1]; - var b = tr.Points[^2]; - var dtMs = Math.Max(1, a.T - b.T); - var dist = MathF.Sqrt(Dist2(a.X, a.Y, a.Z, b.X, b.Y, b.Z)); - var speed3D = 1000f * dist / dtMs; // units/s - var vz = 1000f * Math.Abs(a.Z - b.Z) / dtMs; // vertikale speed - return speed3D > 250f || vz > 120f; - } - - // ========================= - // Game-Events: Granaten - // ========================= - - private static string WeaponToKind(string weapon) - { - var w = (weapon ?? "").ToLowerInvariant(); - return w switch - { - "hegrenade" or "weapon_hegrenade" => "he", - "flashbang" or "weapon_flashbang" => "flash", - "smokegrenade" or "weapon_smokegrenade" => "smoke", - "decoy" or "weapon_decoy" => "decoy", - "molotov" or "weapon_molotov" or "incgrenade" or "weapon_incgrenade" => "molotov", - _ => "other" - }; - } - - private int StartTrack(ulong steamId, string nade, float x, float y, float z) - { - var id = Interlocked.Increment(ref _seq); - var tr = new NadeTrack - { - Id = id, - SteamId = steamId, - Nade = nade, - Start = DateTimeOffset.UtcNow, - Last = DateTimeOffset.UtcNow, - LastX = x, LastY = y, LastZ = z, - Sent = 0, - CurrentSeg = 0 - }; - tr.Points.Add(new NadeTrack.Point { X = x, Y = y, Z = z, T = NowMs(), S = tr.CurrentSeg }); - _tracks[id] = tr; - _lastTrackByPlayer[steamId] = id; - _activeTrackByPlayerNade[PNKey(steamId, nade)] = id; - return id; - } - - private void AppendPointByPlayer(ulong steamId, float x, float y, float z) - { - if (_lastTrackByPlayer.TryGetValue(steamId, out var id) && - _tracks.TryGetValue(id, out var tr) && !tr.Finalized) - { - lock (tr.Points) - { - var tms = NowMs(); - tr.Points.Add(new NadeTrack.Point { X = x, Y = y, Z = z, T = tms, S = tr.CurrentSeg }); - tr.LastX = x; tr.LastY = y; tr.LastZ = z; - tr.Last = DateTimeOffset.UtcNow; - } - } - } - - private void AppendPointByPlayerBounce(ulong steamId, float x, float y, float z) - { - if (_lastTrackByPlayer.TryGetValue(steamId, out var id) && - _tracks.TryGetValue(id, out var tr) && !tr.Finalized) - { - lock (tr.Points) - { - tr.CurrentSeg++; // neues Liniensegment beginnen - var tms = NowMs(); - tr.Points.Add(new NadeTrack.Point { X = x, Y = y, Z = z, T = tms, S = tr.CurrentSeg }); - tr.LastX = x; tr.LastY = y; tr.LastZ = z; - tr.Last = DateTimeOffset.UtcNow; - } - } - } - - private void TryFinalizeTrack(ulong steamId, string nade, float? x, float? y, float? z) - { - var key = PNKey(steamId, nade); - if (!_activeTrackByPlayerNade.TryRemove(key, out var id)) return; - TryFinalizeTrackById(id, true, nade, x, y, z); - _lastTrackByPlayer.TryGetValue(steamId, out var lastId); - if (lastId == id) _lastTrackByPlayer.TryRemove(steamId, out _); - } - - private void TryFinalizeTrackById(int id, bool sendEvenIfEmpty, string? nadeOverride = null, float? x = null, float? y = null, float? z = null) - { - if (!_tracks.TryGetValue(id, out var tr) || tr.Finalized) return; - - if (x.HasValue && y.HasValue && z.HasValue) - { - lock (tr.Points) - { - tr.Points.Add(new NadeTrack.Point { X = x.Value, Y = y.Value, Z = z.Value, T = NowMs(), S = tr.CurrentSeg }); - } - } - - // Rest-Delta senden (falls noch nicht raus) - List? delta = null; - lock (tr.Points) - { - if (tr.Points.Count > tr.Sent) - { - delta = new List(tr.Points.Count - tr.Sent); - for (int i = tr.Sent; i < tr.Points.Count; i++) - { - var p = tr.Points[i]; - delta.Add(new { x = p.X, y = p.Y, z = p.Z, t = p.T, s = p.S }); - } - tr.Sent = tr.Points.Count; - } - } - - tr.Finalized = true; - - // Finale Nachricht - Enqueue(new - { - type = "nade", - sub = "path", - id = tr.Id, - nade = nadeOverride ?? tr.Nade, - steamId = tr.SteamId, - t = NowMs(), - points = (delta != null && delta.Count > 0) ? delta : null, - final = true - }); - - _tracks.TryRemove(id, out _); - } - - [GameEventHandler] - public HookResult OnGrenadeThrown(EventGrenadeThrown ev, GameEventInfo info) - { - try - { - var p = ev.Userid; - var pawn = p?.PlayerPawn?.Value; - var pos = pawn?.AbsOrigin; - var (gaPitch, gaYaw) = GetStableAim(p, pawn); - - string weapon = ev.Weapon ?? ""; - string kind = WeaponToKind(weapon); - - float tx = pos?.X ?? 0f, ty = pos?.Y ?? 0f, tz = pos?.Z ?? 0f; - var id = StartTrack(p?.AuthorizedSteamID?.SteamId64 ?? 0UL, kind, tx, ty, tz); - - try { SampleActiveNadeTracks(); } catch { } - - Enqueue(new - { - type = "nade", - sub = "thrown", - id, - nade = kind, - t = NowMs(), - steamId = p?.AuthorizedSteamID?.SteamId64 ?? 0UL, - name = p?.PlayerName ?? "", - weapon = weapon, - throwPos = new { x = tx, y = ty, z = tz }, - throwAim = new { pitch = gaPitch, yaw = NormalizeYaw(gaYaw) } - }); - } - catch { } - return HookResult.Continue; - } - - // Bounces -> Trajektorie weiter aufzeichnen (Punkt erscheint im nächsten Tick) - [GameEventHandler] - public HookResult OnGrenadeBounce(EventGrenadeBounce ev, GameEventInfo info) - { - try - { - dynamic d = ev; - var p = d.Userid as CCSPlayerController; - AppendPointByPlayerBounce(p?.AuthorizedSteamID?.SteamId64 ?? 0UL, (float)d.X, (float)d.Y, (float)d.Z); - } - catch { } - return HookResult.Continue; - } - - - [GameEventHandler] public HookResult OnHeDetonate (EventHegrenadeDetonate ev, GameEventInfo info) - { TryFinalizeDet(ev, "he"); return EnqueueNadeDet(ev, "he"); } - - [GameEventHandler] public HookResult OnFlashDetonate (EventFlashbangDetonate ev, GameEventInfo info) - { TryFinalizeDet(ev, "flash"); return EnqueueNadeDet(ev, "flash"); } - - [GameEventHandler] public HookResult OnDecoyDetonate (EventDecoyDetonate ev, GameEventInfo info) - { TryFinalizeDet(ev, "decoy"); return EnqueueNadeDet(ev, "decoy"); } - - private void TryFinalizeDet(GameEvent ev, string kind) - { - try - { - dynamic d = ev; - var p = d.Userid as CCSPlayerController; - TryFinalizeTrack(p?.AuthorizedSteamID?.SteamId64 ?? 0UL, kind, (float)d.X, (float)d.Y, (float)d.Z); - } - catch { } - } - - // Smoke: Detonate + start/end mit ETA (+ Pfadabschluss) - [GameEventHandler] - public HookResult OnSmokeDetonate(EventSmokegrenadeDetonate ev, GameEventInfo info) - { - try - { - dynamic d = ev; - var p = d.Userid as CCSPlayerController; - - TryFinalizeTrack(p?.AuthorizedSteamID?.SteamId64 ?? 0UL, "smoke", (float)d.X, (float)d.Y, (float)d.Z); - - Enqueue(new - { - type = "nade", - sub = "detonate", - nade = "smoke", - t = NowMs(), - steamId = p?.AuthorizedSteamID?.SteamId64 ?? 0UL, - name = p?.PlayerName ?? "", - pos = new { x = (float)d.X, y = (float)d.Y, z = (float)d.Z } - }); - - var id = Interlocked.Increment(ref _seq); - var endAt = DateTimeOffset.UtcNow.AddSeconds(_smokeDurationSec); - var state = new AoeState { EndAt = endAt, X = (float)d.X, Y = (float)d.Y, Z = (float)d.Z }; - _activeSmokes[id] = state; - - Enqueue(new - { - type = "smoke", - state = "start", - id, - t = NowMs(), - endAt = endAt.ToUnixTimeMilliseconds(), - pos = new { x = state.X, y = state.Y, z = state.Z } - }); - - var token = _serverCts?.Token ?? CancellationToken.None; - _ = Task.Run(async () => - { - try - { - await Task.Delay(TimeSpan.FromSeconds(_smokeDurationSec), token); - if (_activeSmokes.TryRemove(id, out _)) - { - Enqueue(new { type = "smoke", state = "end", id, t = NowMs() }); - } - } - catch { } - }, token); - } - catch { } - return HookResult.Continue; - } - - // Molotov: Detonate + start/end mit ETA (+ Pfadabschluss) – nur start, wenn kein Airburst - [GameEventHandler] - public HookResult OnMolotovDetonate(EventMolotovDetonate ev, GameEventInfo info) - { - try - { - dynamic d = ev; - var p = d.Userid as CCSPlayerController; - var sid = p?.AuthorizedSteamID?.SteamId64 ?? 0UL; - - bool airburst = false; - if (_activeTrackByPlayerNade.TryGetValue(PNKey(sid, "molotov"), out var tid) && - _tracks.TryGetValue(tid, out var trProbe)) - { - airburst = LooksAirburst(trProbe); - } - - TryFinalizeTrack(sid, "molotov", (float)d.X, (float)d.Y, (float)d.Z); - - Enqueue(new - { - type = "nade", - sub = "detonate", - nade = "molotov", - t = NowMs(), - steamId = sid, - name = p?.PlayerName ?? "", - pos = new { x = (float)d.X, y = (float)d.Y, z = (float)d.Z } - }); - - if (!airburst) - { - var id = Interlocked.Increment(ref _seq); - var endAt = DateTimeOffset.UtcNow.AddSeconds(_fireDurationSec); - var state = new AoeState { EndAt = endAt, X = (float)d.X, Y = (float)d.Y, Z = (float)d.Z }; - _activeFires[id] = state; - - Enqueue(new - { - type = "fire", - state = "start", - id, - t = NowMs(), - endAt = endAt.ToUnixTimeMilliseconds(), - pos = new { x = state.X, y = state.Y, z = state.Z } - }); - - var token = _serverCts?.Token ?? CancellationToken.None; - _ = Task.Run(async () => - { - try - { - await Task.Delay(TimeSpan.FromSeconds(_fireDurationSec), token); - if (_activeFires.TryRemove(id, out _)) - { - Enqueue(new { type = "fire", state = "end", id, t = NowMs() }); - } - } - catch { } - }, token); - } - } - catch { } - return HookResult.Continue; - } - - // Generischer Detonate-Helper für HE/Flash/Decoy (Einzel-Event bleibt) - private HookResult EnqueueNadeDet(GameEvent ev, string kind) - { - try - { - dynamic d = ev; - var p = d.Userid as CCSPlayerController; - - Enqueue(new - { - type = "nade", - sub = "detonate", - nade = kind, - t = NowMs(), - steamId = p?.AuthorizedSteamID?.SteamId64 ?? 0UL, - name = p?.PlayerName ?? "", - pos = new { x = (float)d.X, y = (float)d.Y, z = (float)d.Z } - }); - } - catch { } - return HookResult.Continue; - } - - private HookResult Enqueue(object obj) - { - if (!_enabled || !_serverRunning) return HookResult.Continue; - _outbox.Enqueue(JsonSerializer.Serialize(obj)); - _sendSignal.Set(); - return HookResult.Continue; - } - - private static bool LooksWrongPfxPassword(Exception ex) - { - try - { - var s = (ex?.Message ?? "").ToLowerInvariant(); - return s.Contains("password") || s.Contains("kennwort"); - } - catch { return false; } - } - - private bool TryLoadCertificate(out string usedPath) - { - usedPath = _certPath; - - try - { - string pluginDir = ModuleDirectory; - - // Pfad ermitteln - if (string.IsNullOrWhiteSpace(usedPath)) - { - var def = Path.Combine(pluginDir, "cert.pfx"); - if (File.Exists(def)) - { - usedPath = def; - } - else - { - var files = Directory.GetFiles(pluginDir, "*.pfx", SearchOption.TopDirectoryOnly); - if (files.Length > 0) usedPath = files[0]; - } - } - else if (!Path.IsPathRooted(usedPath)) - { - usedPath = Path.Combine(pluginDir, usedPath); - } - - if (string.IsNullOrWhiteSpace(usedPath) || !File.Exists(usedPath)) - { - Logger.LogWarning($"[WS] Kein PFX gefunden im Plugin-Ordner ({pluginDir}). Lege z.B. 'cert.pfx' dort ab oder setze mit css_ws_cert ."); - return false; - } - - try - { - _serverCert = new X509Certificate2( - usedPath, - string.IsNullOrEmpty(_certPassword) ? null : _certPassword, - X509KeyStorageFlags.EphemeralKeySet | X509KeyStorageFlags.Exportable - ); - } - catch (CryptographicException cex) when (LooksWrongPfxPassword(cex)) - { - var pwdState = string.IsNullOrEmpty(_certPassword) ? "leer" : "gesetzt"; - Logger.LogError($"[WS] TLS-PFX konnte nicht geöffnet werden: vermutlich falsches Passwort. " + - $"Pfad: {usedPath}. CertPassword (aus config.json) ist {pwdState}. " + - $"Setze es mit 'css_ws_certpwd ' oder trage es in {ConfigFileName} unter 'CertPassword' ein."); - _serverCert = null; - return false; - } - catch (CryptographicException cex) - { - Logger.LogError($"[WS] TLS-PFX Fehler ({usedPath}): {cex.Message}"); - _serverCert = null; - return false; - } - - if (_serverCert == null) - return false; - - if (!_serverCert.HasPrivateKey) - { - Logger.LogError($"[WS] Zertifikat geladen, aber ohne Private Key: {Path.GetFileName(usedPath)}. " + - $"Bitte PFX mit privatem Schlüssel verwenden."); - _serverCert = null; - return false; - } - - try - { - Logger.LogInformation($"[WS] TLS-Zertifikat geladen: {Path.GetFileName(usedPath)} | Subject: {_serverCert.Subject} | Gültig bis: {_serverCert.NotAfter:u}"); - } - catch - { - Logger.LogInformation($"[WS] TLS-Zertifikat geladen: {Path.GetFileName(usedPath)}"); - } - - return true; - } - catch (Exception ex) - { - Logger.LogError($"[WS] Zertifikat konnte nicht geladen werden: {ex.Message}"); - _serverCert = null; - return false; - } - } // ========================= // WS(S)-Server / Broadcast @@ -1480,40 +861,6 @@ public class WebSocketTelemetryPlugin : BasePlugin { var nowMs = NowMs(); SendTextFrame(state, JsonSerializer.Serialize(new { type = "map", name = _mapName, t = nowMs })); - - foreach (var kv in _activeSmokes) - { - var aoe = kv.Value; - if (aoe.EndAt > DateTimeOffset.UtcNow) - { - SendTextFrame(state, JsonSerializer.Serialize(new - { - type = "smoke", - state = "start", - id = kv.Key, - t = nowMs, - endAt = aoe.EndAt.ToUnixTimeMilliseconds(), - pos = new { x = aoe.X, y = aoe.Y, z = aoe.Z } - })); - } - } - - foreach (var kv in _activeFires) - { - var aoe = kv.Value; - if (aoe.EndAt > DateTimeOffset.UtcNow) - { - SendTextFrame(state, JsonSerializer.Serialize(new - { - type = "fire", - state = "start", - id = kv.Key, - t = nowMs, - endAt = aoe.EndAt.ToUnixTimeMilliseconds(), - pos = new { x = aoe.X, y = aoe.Y, z = aoe.Z } - })); - } - } } catch { } @@ -1569,7 +916,7 @@ public class WebSocketTelemetryPlugin : BasePlugin return false; var firstLineEnd = header.IndexOf("\r\n", StringComparison.Ordinal); - var firstLine = firstLineEnd > 0 ? header[..firstLineEnd] : header; + var firstLine = firstLineEnd > 0 ? header[..firstLineEnd] : header; var parts = firstLine.Split(' '); if (parts.Length < 2) return false; @@ -1772,11 +1119,88 @@ public class WebSocketTelemetryPlugin : BasePlugin return Task.CompletedTask; } - // --- Hilfsklasse für Referenz-HashSet --- - private sealed class ReferenceEqualityComparer : IEqualityComparer + // --- TLS --- + private bool TryLoadCertificate(out string usedPath) { - public static readonly ReferenceEqualityComparer Instance = new(); - public new bool Equals(object x, object y) => ReferenceEquals(x, y); - public int GetHashCode(object obj) => System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(obj); + usedPath = _certPath; + + try + { + string pluginDir = ModuleDirectory; + + if (string.IsNullOrWhiteSpace(usedPath)) + { + var def = Path.Combine(pluginDir, "cert.pfx"); + if (File.Exists(def)) + { + usedPath = def; + } + else + { + var files = Directory.GetFiles(pluginDir, "*.pfx", SearchOption.TopDirectoryOnly); + if (files.Length > 0) usedPath = files[0]; + } + } + else if (!Path.IsPathRooted(usedPath)) + { + usedPath = Path.Combine(pluginDir, usedPath); + } + + if (string.IsNullOrWhiteSpace(usedPath) || !File.Exists(usedPath)) + { + Logger.LogWarning($"[WS] Kein PFX gefunden im Plugin-Ordner ({pluginDir}). Lege z.B. 'cert.pfx' dort ab oder setze mit css_ws_cert ."); + return false; + } + + try + { + _serverCert = new X509Certificate2( + usedPath, + string.IsNullOrEmpty(_certPassword) ? null : _certPassword, + X509KeyStorageFlags.EphemeralKeySet | X509KeyStorageFlags.Exportable + ); + } + catch (CryptographicException cex) when ((cex.Message ?? "").IndexOf("password", StringComparison.OrdinalIgnoreCase) >= 0 || + (cex.Message ?? "").IndexOf("kennwort", StringComparison.OrdinalIgnoreCase) >= 0) + { + var pwdState = string.IsNullOrEmpty(_certPassword) ? "leer" : "gesetzt"; + Logger.LogError($"[WS] TLS-PFX konnte nicht geöffnet werden: vermutlich falsches Passwort. Pfad: {usedPath}. CertPassword ist {pwdState}."); + _serverCert = null; + return false; + } + catch (CryptographicException cex) + { + Logger.LogError($"[WS] TLS-PFX Fehler ({usedPath}): {cex.Message}"); + _serverCert = null; + return false; + } + + if (_serverCert == null) + return false; + + if (!_serverCert.HasPrivateKey) + { + Logger.LogError($"[WS] Zertifikat geladen, aber ohne Private Key: {Path.GetFileName(usedPath)}. Bitte PFX mit privatem Schlüssel verwenden."); + _serverCert = null; + return false; + } + + try + { + Logger.LogInformation($"[WS] TLS-Zertifikat geladen: {Path.GetFileName(usedPath)} | Subject: {_serverCert.Subject} | Gültig bis: {_serverCert.NotAfter:u}"); + } + catch + { + Logger.LogInformation($"[WS] TLS-Zertifikat geladen: {Path.GetFileName(usedPath)}"); + } + + return true; + } + catch (Exception ex) + { + Logger.LogError($"[WS] Zertifikat konnte nicht geladen werden: {ex.Message}"); + _serverCert = null; + return false; + } } } diff --git a/CS2WebSocketTelemetryPlugin/bin/Release/net8.0/CS2WebSocketTelemetryPlugin.dll b/CS2WebSocketTelemetryPlugin/bin/Release/net8.0/CS2WebSocketTelemetryPlugin.dll index d25d40ae62548343593baa4b78b0d462ef92e2ca..69a1e2e8e7061fde999922f474b1cab9cd71ef20 100644 GIT binary patch literal 61440 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%0As-dxgQD? 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 N1SjYbnYd}t{{ucw{F(p& literal 26660 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 GZ2up7rLv*` diff --git a/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.dgspec.json b/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.dgspec.json index 8cf85b6..7cd2a72 100644 --- a/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.dgspec.json +++ b/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.dgspec.json @@ -1,31 +1,29 @@ { "format": 1, "restore": { - "C:\\Users\\Rother\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj": {} + "C:\\Users\\Chris\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj": {} }, "projects": { - "C:\\Users\\Rother\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj": { + "C:\\Users\\Chris\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj": { "version": "1.0.0", "restore": { - "projectUniqueName": "C:\\Users\\Rother\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj", + "projectUniqueName": "C:\\Users\\Chris\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj", "projectName": "CS2WebSocketTelemetryPlugin", - "projectPath": "C:\\Users\\Rother\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj", - "packagesPath": "C:\\Users\\Rother\\.nuget\\packages\\", - "outputPath": "C:\\Users\\Rother\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\obj\\", + "projectPath": "C:\\Users\\Chris\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\CS2WebSocketTelemetryPlugin.csproj", + "packagesPath": "C:\\Users\\Chris\\.nuget\\packages\\", + "outputPath": "C:\\Users\\Chris\\fork\\ironie-cs2-websocket-plugin\\CS2WebSocketTelemetryPlugin\\obj\\", "projectStyle": "PackageReference", "fallbackFolders": [ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" ], "configFilePaths": [ - "C:\\Users\\Rother\\AppData\\Roaming\\NuGet\\NuGet.Config", - "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", - "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + "C:\\Users\\Chris\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config" ], "originalTargetFrameworks": [ "net8.0" ], "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, "https://api.nuget.org/v3/index.json": {} }, "frameworks": { @@ -43,8 +41,7 @@ "enableAudit": "true", "auditLevel": "low", "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" + } }, "frameworks": { "net8.0": { @@ -71,7 +68,7 @@ "privateAssets": "all" } }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.408/PortableRuntimeIdentifierGraph.json" } } } diff --git a/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.g.props b/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.g.props index 2b4790d..6fb2b23 100644 --- a/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.g.props +++ b/CS2WebSocketTelemetryPlugin/obj/CS2WebSocketTelemetryPlugin.csproj.nuget.g.props @@ -5,18 +5,18 @@ NuGet $(MSBuildThisFileDirectory)project.assets.json $(UserProfile)\.nuget\packages\ - C:\Users\Rother\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + C:\Users\Chris\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages PackageReference - 6.14.0 + 6.11.1 - + - C:\Users\Rother\.nuget\packages\microsoft.dotnet.apicompat.task\8.0.203 + C:\Users\Chris\.nuget\packages\microsoft.dotnet.apicompat.task\8.0.203 \ No newline at end of file diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfo.cs b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfo.cs index 0f606c7..1d2c16f 100644 --- a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfo.cs +++ b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfo.cs @@ -13,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("CS2WebSocketTelemetryPlugin")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+612f8d5be47e3677a339fa180b79358a0e275fa9")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+43a13a88f47d899ca8efcc8a2093f5bd4191cd48")] [assembly: System.Reflection.AssemblyProductAttribute("CS2WebSocketTelemetryPlugin")] [assembly: System.Reflection.AssemblyTitleAttribute("CS2WebSocketTelemetryPlugin")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfoInputs.cache b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfoInputs.cache index d932ffe..f1b150e 100644 --- a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfoInputs.cache +++ b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.AssemblyInfoInputs.cache @@ -1 +1 @@ -4806324ce3160c37004a41ae85c8c6e06de1aaed85bc7956669d94d6c6918040 +0c1151723728a5334c4514e839cde655d6f00feaafd51bea16e71c52c6659b99 diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.GeneratedMSBuildEditorConfig.editorconfig b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.GeneratedMSBuildEditorConfig.editorconfig index e69493c..93b1b8b 100644 --- a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.GeneratedMSBuildEditorConfig.editorconfig +++ b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.GeneratedMSBuildEditorConfig.editorconfig @@ -8,8 +8,6 @@ build_property.PlatformNeutralAssembly = build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = CS2WebSocketTelemetryPlugin -build_property.ProjectDir = C:\Users\Rother\fork\ironie-cs2-websocket-plugin\CS2WebSocketTelemetryPlugin\ +build_property.ProjectDir = C:\Users\Chris\fork\ironie-cs2-websocket-plugin\CS2WebSocketTelemetryPlugin\ build_property.EnableComHosting = build_property.EnableGeneratedComInterfaceComImportInterop = -build_property.EffectiveAnalysisLevelStyle = 8.0 -build_property.EnableCodeStyleSeverity = diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.assets.cache b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.assets.cache index 0899760565070bf5563362015fe992b1478973cc..0f560c29eed55a5c1da15020a3cb966af9a957f1 100644 GIT binary patch delta 3831 zcmaKue{54#6vtQggKaI|$A0jNeY2awhHhQy_E`73?FQY(+O->WtZNxlL_ju?4Hy$E zxMd+z1m-t}sR1NL`A`3te_&7p{)M2<#XpP*VMt>5PY9Zr5F_5#2NLeRZ+|pR&bjw{ z?mg$+&pUtKHr@Qg-3QSeX$VSb5U(eD%8x zpPH_o=u1gSqwCI^nrq{c;cY|1@#Y;vJBO!y=cH-IhN5seZY<5kHB%*4=VxM{>1k<- zSv2J<#*d~wWb|=8cw+?^SoAX4%Gh@|Mo^ckkO9X2dT|WjrrM<=oW2c9(q3crr+k%| zEm?z~a?Hq1&y&DyQ_;Vw16P)q@fG#6viL3iJ;7a6T*%lZeJl_QKi7xv7Tcwh0-qyu zk2Ef@pD%4hQI?&HgU+lo(gd>srff)Ocw-H&XYUoQUX9lBwfMzsC;OOOnzBpau*9X~ zyqf07#;eX?GBcN*78I_}I>j7L z^S!ZgCyp&s$nfLwG}nz~G1C0F8J>a)BxE~hzf@C!>(suJS-*7oa?E!(VTV;ATR5K` z=WCs~X|F|jiu$5w6=z^e<9Vp#yM zA&xLpJ`G$ke74Gr!zC8BxpaU9xTiPe)4;WjlcT`ekHE7s2NP|>g^U3HqCPRW_8CB{ z3-MB!d&QdG`O*j%heGQxPM67i*PF8UqShfB!7GA0)G5H72C$d`yc!@o<%IzDB9}P| ztuZazN-6!mEuz0v`ZEBSA6YK`>J(s;9BOoU`T2s(k^RZy&Q@6XWa$9wp;tHC);u^* z75!(?sDn(Pu0yOf8DUzrh+uXAjy19Y%<6EF`q+=MCVDxy7NIKH0BTZc)D&WE7_LG7qv7^+yCC>qeqMHU!!C4V40rg#`?n6!0g8tsXbmqdJ57FyE4i zGH)5%5C0EQUN`rebPjdkT8kN<_{unG%A--lnpCd!bsmNAOtWghqdwegb{jA$f~#v) z112?MY@M5nN4YePpkEacW&~L+su7oZXj+83^ucPn)os8gFZ^xlLTm~qv!)MMgTZCqJ9UmGi+&+k#wSc?({WDm;ZXI|CNqjdf|Bb@ zYELRtCgDz~P{gIr4Vcu3P^ZfF;DaHn0sm5;c+hIb7hQrvJz|m%gB!R6Jsh^Ajcx-r zoe~dP9-N4%LKbCoyE(fyY#pL@@vybufJ08qY;p@&)Q)vMs==^TfNy$sEWoLR0i#BF zK6!1!_@`GDFzOvcJ{?u;SP@qRjB?@qc%3MS75Aey%x_i^*c>JYm;p;0A$9*j-WPMt VeAs7|NCUHJccXLW?klFO{{TbfJ6`|* delta 4034 zcmaKuUrbY19LFg#Xl;>uYuRmSD{NE1QB>$1l`2pa5donsmVafSV>m^y6Bzy*(~0u#`a2?nJp+Rs;n>ijo&ii5Wz6NLW2-?N8;^)r8H2cW6aMwC#UBPQ zt{*mH(D1xC&R9(ubMe@hhLOxP#j;yCrOy+J<|{eYVJx{)cvUaPlaC4g`kx0@of6+A z5;>8Ya*9nbW%R-q*ouV|mpDPV$!LG3pA0Btrg9g8sV;I~ikf;vyh%pvN*fVBB9$ED zF>#bo#yB~KO-ICc82f|?;&tY4ym}1tf)Ryg8{rc&Lm1ZAGGWTYEz4@Gw}izjOh8Q? zCd-x!p(q7w)~v>B>HXp*##cRf%_2r_I2Tvy8j+mg5{~K@rMmu^k%q?lVqD5_k!Pb? z#E6>3t@-$TZ&axR5jbuwgkZPghqZ2$+07UbZA5Uju^o+di=~vTHt{`XZ*gl8`m6_q zxAZHITQ9N=sK)zjZJT(Oi6h$HCk{%qdGTeq3L7$sEiB!q2Jspba8YeKjNWHm!jOJ( zsyMf=0t<>*r5DrP#b}YTSs~!JV^S&=di5RwzXOk@PGP@Zm~Rf@j@>1+>xFx;O z;e=jDI2>@cx-jkt3U9LF1)-1qxgNK&BH}rw1PO;7b=zBU&Y3M7(z}JCZrpXY3eBvr z8>d|^VW(c0E-S))R~}oJboUA7e-F5L}4z9sa%O@&?%#e zx+u!?B(~dB+T58QT90owN?hc1V&FxIi@h+i z3nY>R1Nd4|sHa25u&Ewh9*MXm3DXc36otj$bA_K0_962SYBxzMA<&E8H%VL!wy1@3 zZ&V)3WaV3>eAH|56nZKawNe*uv8;&4Ab#9J7e@<}{e`bKC{&TMU>E`2eoN+nj%D4B&%6p=&93S{{umX-m350@kOPw^mt z*o#ZsBpwt?VA(El!5HH~u@u>55(UO8Tu=l8j6n)!5pTos9VE|A1zD4_NUE0FoOhWGx*T2~H!JXJpc+G)@y>AJRf|}_ zh=QPp0$2?9f->8v8o)PltNoSoNY1>ZKarPleuVXMXcS& z!`pVOiOLk-PE%+rf~8{{nMfTwGZ1`P#&;b-;iP`VOE{hyoMuIB`n26PciIJ^T<;oB L-hBJOQG@A!k+-b< diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.AssemblyReference.cache b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.AssemblyReference.cache index e0463c3333c8ec5367709e6ebd59203632313c48..08abe09a5d42145a3e74f6beda11a3eaa1dad87c 100644 GIT binary patch delta 1021 zcmX>-n{n}MMlm)RE1=<-= z)l3ewk=|^?{F;%!5<^05@_k<3%?Ygg83iU|Y6HpgZBAkTgw;@p>}<|ki~D|Ts zj!|GS7TL}Bc@>xhrel!-+vy_ki&3B%mu$1pB|LV{5&_!Tibe0{{bElT1?FRsnY>?2 zc=KBcRwk_afU;bhjioO!@|R);;AU&tBa8z5*bKFn<(^!mXfk=fg2d)t`Gq)wc#bmP z=3+%)5O-rSWAhy457+}@^I_EojQqJ+9CTBC3-kG5EfIVhG8dI(A zV0dA3pbao}&c$@1?&eH8UMBuxOnWx3aX7#@`GXHEOVv2FA#;UX+8FsWQMGMe;R;L} p@o0iw?)w<|BT)q>ce%@NF87?w$e)cWv02Ld8Y90Gs^BEw(*P=!YykiO delta 1055 zcmZ2HoALB)MsYSqbp{3o#uR6(n9$g3w2Dt(DjpbRsd)HdtL9$^%mfX&RwI(}&5q<9r6wN|YJNdn{#O67!yBGx$u*uZA oFJlyl!Xh)d)}4KGpyy;pfgCj1&7ZxlF;0Hq49o44Z}^-B0Kg}CSpWb4 diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.CoreCompileInputs.cache b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.CoreCompileInputs.cache index b6e5578..c35142f 100644 --- a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.CoreCompileInputs.cache +++ b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -db8c6dfe795ff7d85d430dc00d7bc0af9be5c091309a903f5252e5c7475b2471 +29a097f847e9cc9046a216cfa5e6dfc719414ee5e42dc15f3ee740e9754a5ad0 diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.dll b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/CS2WebSocketTelemetryPlugin.dll index d25d40ae62548343593baa4b78b0d462ef92e2ca..69a1e2e8e7061fde999922f474b1cab9cd71ef20 100644 GIT binary patch literal 61440 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%0As-dxgQD? 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 N1SjYbnYd}t{{ucw{F(p& literal 26660 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 GZ2up7rLv*` diff --git a/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/ref/CS2WebSocketTelemetryPlugin.dll b/CS2WebSocketTelemetryPlugin/obj/Release/net8.0/ref/CS2WebSocketTelemetryPlugin.dll index 6c5d888ded4ae9102c34439da7f3344958bd5d76..748acabb0e6d7730f40472ee06c657b0ee06dd97 100644 GIT binary patch literal 13312 zcmeHNeQ;dWbw78%CEG%hWw1enXKacoc&(LWEE^%TmTcr$wuM)=!PH$n?LJA1_sj3S zwJk$}Hq_8eh^GuKohC!#9lj=En4}4zkO>VNHz`SnX6UrTG|hCph0tbNCd~x?DAUIM zo%7z?T^ZvBI{k<8r1!h$oO|xM=brny@4a0I|A72N6u^D%9MSVg`5G3yI4mH$?W%9L z(X%bDtbSgNzp{FAE@Np$voLGwIW48<^95U*HZ-%8*D`r+bWcLd71Bm@*|OHPuIY(w zMB^$ziG7ED?A3ObuGW^Q9-`lZq}7pjrjZWg)^HQGOX_p{W&!&z*GoW`@zc~vR^|Uj z>ar}t^-_vx4-*SSYwJc>;9jSRmV$g7dflGvH%W(yB29V`@MBGUG`PJ z*V~J`=^948P3*_yM>qn1{7CCpcdzN$@s(?S=at8%zVY@)xTzmE?E(>an->jSyf*nL zNRz`v6KjYR3qQow+I51qCO)}UxfXbxIocoXiT3sM#Wu6SAZ3C7*-5nK(?oO2u?Dw* zPS|E9KWnkZx+|TfaLv91-2j@`$Thd_+cAoC5PTQbwl!O`g=tpCg(XZKxa_pQh1aro zRUcjI_}>q<3-@cduf>g`6vn*@cL)t+bzY;{$2Q#D<{)mkhU+J+f-6L?1iu#vQ6j|n zc;JD^CG<}y7NV;}@~gn3p%85e{e3t@vq8qSf^osO1b-A@`M1PQNJ>2)_+F%y9uEH! zcrd&)&`J*mo(Q+nqy8^I@}(f-&Irp@+rF2#JVfb?${NWP+D9B?$p%>@E543C(+OOK_ z_tA@oMD9mk5B6T>RuSh#{6uB+#pS}S5v~pU?|sPobJ#pY%jpxsb)c3*DCKZFh3j>> z9}2hA<*r0`9-?WN`#s@om-|cMKIL*hkQyFxIUX&CuvLCSe3?gHnVxdFcTlcOUn5QO z63{Hux9Mu(Hi_mLS}WXY$@>wu?+~qwi~=`=$H2WB8V7D^*#pU7AOYMI+0QyHcOn}9 zMoC~?jRG@j9QdqC0E?6chE(n%rHYipMCd0In4$ZC=Y*bAe+c?X#qu{5%RL>IoTDdz zlal+SV){*?SNfPf=wqEP3%({2B{px8QZER-OiI~O>brt(iDZM6IwGZ>6S_r8jYz4g z&?`j$9?|!_dJZ+7Blg+z%JH22St)i7ip>jo#hMrLip#zwb#0KcN5swt@ydx6`?ffq zELrJeZ@pNtudbINIVbvFtJ(6KisdVPj0b&O@0Z2% ze)=is#U8TF_a9f>FR%H21ys^5&qFS?cwD`=2f5U9ZoRGQgVoFS7msI_ydY!J>m#nw z8!C4%lZdoO6Ln%eC63_Y`wF&xv zqQ*e~R1JdWInH+CsKr}7c7Wc~!ZqF)f))Db-TvTEnN*k~+68a7rz!b4O9`k~((+HFS8~$};xThxC{Ek&kKB$(tf+Gte>*j}r&=DtsP;6!(ekARC$(SZeJYdy}X+G znLpaZao$R|oRin!IB(UWyava4moLg|aGZC=qPzyjdEJZh8XV_cxhRj%Yl=p&`+GQw zbC-`MMe=_^AHkVK(R=Y7squfpAf3eAIEmBDN$SAeiF-NjF5E3tjwncZoU8)2(se?| zfbFzdFfO=5@HW9a1a-j-5WWFd(7a$-Bo6^ErwUM`DlmlAg7KHYb@U&=c50DP&?3Fh zWj9hxvCeAxBE6xmA&c%+*HVgFLQz^m-&9ff{T<*H^bf!_(23IZ^mAYzUF(a|O*94^ zp?$!eG!0CM{7zt8Y>v=jdOJ8GmPhDrdN;UD=oIAsP)g`D&>u2{zRyMW=cLe&(Zir0 z7o8_Waz-TI7y2wtG>`bs(&y;keKnE1F1c@r{?9~0INkXDe#Le)(0BMX^*MUNzgls7 z*NA*AXn$xJx!?51MLr_(DM-TsR&&aJS&o#&??AwRtv@jb-}V=MX)MZ6I3D5 z7mN$)f@Q&qU{$atsKTNz7#Gw9%Yqfbs$fk}MMPgPE~pEZ1uKG8!J43I5q-h9pe|Sz ztO!;GYl5m(^abOBx?owbB3Koy392QcFBlip1a zU`4Pds8&fWf@Q&~U`o(voK4pQKMA^v#zA+{ZqR`R z-shVy15Y{lS&(<#L}#$)J6aQU)qlos`t$XM@bv0@+0_@2JuEVgNB}p-B!ruz62Z-J zX~oSkS&EzE(T1C2(T=+VcPH-UxVv!6H8@mECSyG$X)mXRWU}8)HzM6@q>Ri_W4ur( z4yBXHO|Gh&#A0qqPPrt~y@sCNc3e-{ace%Gl0vQ)CnZ!zyGz-uKAknDVl<*>vx$t& zr07rT*5O@-Jy%F?EoHK4!$ih@JzFw3BYsSWDvKPyd)?YO<=T;E(nA}QNf6Ve8JDu$ zG-bQQY{8?r^;{TUal*0ab8T|UHj%VryWmdL^!AzhjCy*OZ$P+vu7=nnREbi2xYO z%Ca%eM#J1Bb|Vdr>G^cl7|CXge4~?YL`K%ga|uvff|Koc_uz`*{?wE!j%{-Kcntk) zm{z@)Z-kudXA2aJ0Z)SabSeqhSH^qCTH3=+XpmY=jdr(!W{U zaK(5OERpMT(|)AW16(-^P!7qiLb{YShG?Wv%46K{1LDI*Voo=U(fGs;O3Yifk&Euw zLxY0}TQ}_k#&n{PI&9cO(`bHQvS%p$epxYOjl)rzE7*JSLJZWtyd3`__+Q^-#i4jcJIp=72Ec%923M*A#%7ECU^EzfgC zY xt>+A{5qr_X4A>nKO|-@~cIm0POdcABy@c@p@%J&*FVPaZfd9HVg7fraw?}{54sL3!5 zj83m;Bg>O;hwAzHMus~OMQ&%NGue#YlzWtyaw^Qs5EfM))Xv-)nVIzl^5h&=*EC+_ zcmmg8)Qu|VG^Uq5*EF@jB#eA|98;J^620}=JZWT&oMD^u6WP*iCLc{_vtnYOnU&I< z!WB+-8#a#$XNjkTm31j}O~IUZ8B5k?*T45pU&1mb(TRMV(orOZrGr0x*o;maZ5@a@uzG?^+A zcDDD~k}>t|WOCZspDBeM+%RcmBr%cI=M9rbky#Mg`5SkW6Y&!Ec$1<%6h-m$XWO-tV*&rT3%6aknphM1t?*dM>8qIB4<`((4ZvP-z=7BV1F`c<5LvR z{&*&TB)aW*(KIYx0AR?j=V8o5oo&Oya59e~1UBuNz6*ipKssxtGuE+Onl_WX_S3Gy zQDZlMoN>Ua4^gi|F>0hrCZ>;sjk{*-gp600bWU*ep7-woO{s`qBNYVE(ZOsRLolfM zR9jnE^Q%Z($1dS~A!KweoMhE2gORV_lDxO$?^?I`L!CL?M|`1fBqd)c5(srHd=|72 zpO1uAbSyliI&&=kqxR5>&V@%6pyKabc%r-ed_m-Vf$x05(vG@~uLQ(K_wvP(&V^^X zyDzQF{xk$F$U66RH;ca&cEsIFmoDwTtgih+gvAjkvpme+zo>kYRuLRD;`;#@{2{|D zuGq9HI%*5AbA`(N* zv@*JT+a&MM@nZ1?cfGjz=s>gwR@%Dio7`x|Dq?Q(c_G3jG-zmwuDHk|iFewH!dRUR zEMyK7!#jBV5%npG3UhsbpC0Se2L@*PH>C$QZ%*k0#!M-o$ilqj-}H5 z14MTyT9&e`(=vpHq0&B zA`@Ed9(dEqF~e*3L2yIPoY;qV#jd6)XS3AI>@DMG9#7j^I%8-l*@mNcS%tioH%eM5 zpVnk%8puDdN^N#_CdyibR~gh+w<`LZ9Gf4=9!y0EucF-9E6I+AWed|hrx!Q!9A|gn zE`n3S`OwgIV(|c**LcO%5RYkij)PQQbJiGq`Y@`f)%CGtX8UpUJ7H^EGx_xTF)XYb zCJG4m#EhPX2}?U>-Dw@#vSGs zEIuWouUp;K0Qp#SfLI>BCgTY#)(Nmnnn#&S%lCp!@_$J+7+)InaD#8AyzhJ*85(Vl zX0yBWOrCO93QLe7=PJ%UcMWWuUrn>AkLizW1o$f*d}}IS!!|e4nLt>s7n-HsGqf=X zZ%59{^2E&1c-hZiU+t#^zF^r;+h{MS9r)6AH~1aE?ao)X^kU!_zjo|+YpRpp;+Vm+ zGUq!jmz87`s9;sc_Y2$ceL>tkaP5ysa`#m_PsCqm1!@h|c8gYqH z6z%hF_6NsMiL5QUd9)Efvg$4UaDGJb?NSzh_|6aOoWfICJQWek9MK}8!Y!VqIkcJJ z0lpCwKlZqCjurdi#fdp5^8Z_ZoPM1^Jq7q!LhS9P)_(YY{S2NsC-yeHlauXIobq$&Ijfa^uCZHD#?ZN!L6LpugOhFqp`e8V*$ seIG}ETPT}@UKWwoFpCzCf`%VF4nDp<@)4MFzJKlF<@)36|6K(B8$Osk0{{R3 literal 16896 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 literal 16896 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 xLC$?2LVugkjv_@IEv;b|O&