From 0af3e76b9572d537ddc7933c0e40625738e65d38 Mon Sep 17 00:00:00 2001 From: Michal <88426022+SlynxCZ@users.noreply.github.com> Date: Sun, 25 May 2025 11:23:00 +0200 Subject: [PATCH 01/26] Create core.json --- configs/addons/counterstrikesharp/configs/core.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 configs/addons/counterstrikesharp/configs/core.json diff --git a/configs/addons/counterstrikesharp/configs/core.json b/configs/addons/counterstrikesharp/configs/core.json new file mode 100644 index 000000000..8b1f3ca5f --- /dev/null +++ b/configs/addons/counterstrikesharp/configs/core.json @@ -0,0 +1,10 @@ +{ + "SilentChatTrigger": [ + "/", + "!" + ], + "FollowCS2ServerGuidelines": false, + "PluginHotReloadEnabled": true, + "PluginAutoLoadEnabled": true, + "ServerLanguage": "en" +} From 0db0e2ec9315e3594e34abaf1f8d012d68cd2bd0 Mon Sep 17 00:00:00 2001 From: Michal <88426022+SlynxCZ@users.noreply.github.com> Date: Sun, 25 May 2025 11:23:55 +0200 Subject: [PATCH 02/26] Update gamedata.json --- .../counterstrikesharp/gamedata/gamedata.json | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/configs/addons/counterstrikesharp/gamedata/gamedata.json b/configs/addons/counterstrikesharp/gamedata/gamedata.json index 90bae392b..f186d19dd 100644 --- a/configs/addons/counterstrikesharp/gamedata/gamedata.json +++ b/configs/addons/counterstrikesharp/gamedata/gamedata.json @@ -1,4 +1,31 @@ { + "GetHammerUniqueId": { + "offsets": { + "windows": 109, + "linux": 108 + } + }, + "ChangeSubclass": { + "signatures": { + "library": "server", + "windows": "48 89 6C 24 ? 56 48 83 EC ? 48 8B EA 48 8B F1 E8 ? ? ? ? 84 C0 0F 84", + "linux": "55 48 89 E5 41 57 41 56 41 55 49 89 F5 41 54 49 89 FC 53 48 81 EC A8 00 00 00" + } + }, + "CAttributeList_SetOrAddAttributeValueByName": { + "signatures": { + "library": "server", + "windows": "40 53 41 56 41 57 48 81 EC 90 00 00 00 0F 29 74 24 70", + "linux": "55 48 89 E5 41 57 41 56 49 89 FE 41 55 41 54 49 89 F4 53 48 83 EC 78" + } + }, + "CBaseModelEntity_SetBodygroup": { + "signatures": { + "library": "server", + "windows": "48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 20 41 8B F8 48 8B F2 48 8B D9 E8 ? ? ? ?", + "linux": "55 48 89 E5 41 56 49 89 F6 41 55 41 89 D5 41 54 49 89 FC 48 83 EC 08" + } + }, "UTIL_ClientPrintAll": { "signatures": { "library": "server", @@ -273,4 +300,4 @@ "linux": 584 } } -} \ No newline at end of file +} From b46f1d181041a18405c42ac73720c1a784b7cfc1 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 14:46:43 +0200 Subject: [PATCH 03/26] enable building --- .devcontainer/linux/devcontainer.json | 3 +- .../counterstrikesharp/configs/core.json | 10 + .../counterstrikesharp/gamedata/gamedata.json | 27 + .../CompatibilitySuppressions.xml | 2222 +++++++++-------- .../Core/Schema/Enums/CSWeaponType.g.cs | 11 +- .../Schema/server.json | 30 +- src/mm_plugin.cpp | 10 +- 7 files changed, 1295 insertions(+), 1018 deletions(-) create mode 100644 configs/addons/counterstrikesharp/configs/core.json diff --git a/.devcontainer/linux/devcontainer.json b/.devcontainer/linux/devcontainer.json index f5db6abcb..3d3e01462 100644 --- a/.devcontainer/linux/devcontainer.json +++ b/.devcontainer/linux/devcontainer.json @@ -2,6 +2,7 @@ "name": "SteamRT Sniper SDK", "image": "registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest", "updateContentCommand": "git submodule update --init --recursive", + "postCreateCommand": "cmake -S . -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo && cmake --build build -j$(nproc)", "customizations": { "vscode": { "extensions": [ @@ -16,4 +17,4 @@ "features": { "ghcr.io/devcontainers/features/dotnet": "8.0" } -} \ No newline at end of file +} diff --git a/configs/addons/counterstrikesharp/configs/core.json b/configs/addons/counterstrikesharp/configs/core.json new file mode 100644 index 000000000..c02f9e056 --- /dev/null +++ b/configs/addons/counterstrikesharp/configs/core.json @@ -0,0 +1,10 @@ +{ + "SilentChatTrigger": [ + "/", + "!" + ], + "FollowCS2ServerGuidelines": false, + "PluginHotReloadEnabled": true, + "PluginAutoLoadEnabled": true, + "ServerLanguage": "en" +} \ No newline at end of file diff --git a/configs/addons/counterstrikesharp/gamedata/gamedata.json b/configs/addons/counterstrikesharp/gamedata/gamedata.json index 90bae392b..48952d26e 100644 --- a/configs/addons/counterstrikesharp/gamedata/gamedata.json +++ b/configs/addons/counterstrikesharp/gamedata/gamedata.json @@ -1,4 +1,31 @@ { + "GetHammerUniqueId": { + "offsets": { + "windows": 109, + "linux": 108 + } + }, + "ChangeSubclass": { + "signatures": { + "library": "server", + "windows": "48 89 6C 24 ? 56 48 83 EC ? 48 8B EA 48 8B F1 E8 ? ? ? ? 84 C0 0F 84", + "linux": "55 48 89 E5 41 57 41 56 41 55 49 89 F5 41 54 49 89 FC 53 48 81 EC A8 00 00 00" + } + }, + "CAttributeList_SetOrAddAttributeValueByName": { + "signatures": { + "library": "server", + "windows": "40 53 41 56 41 57 48 81 EC 90 00 00 00 0F 29 74 24 70", + "linux": "55 48 89 E5 41 57 41 56 49 89 FE 41 55 41 54 49 89 F4 53 48 83 EC 78" + } + }, + "CBaseModelEntity_SetBodygroup": { + "signatures": { + "library": "server", + "windows": "48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 20 41 8B F8 48 8B F2 48 8B D9 E8 ? ? ? ?", + "linux": "55 48 89 E5 41 56 49 89 F6 41 55 41 89 D5 41 54 49 89 FC 48 83 EC 08" + } + }, "UTIL_ClientPrintAll": { "signatures": { "library": "server", diff --git a/managed/CounterStrikeSharp.API/CompatibilitySuppressions.xml b/managed/CounterStrikeSharp.API/CompatibilitySuppressions.xml index 39b08abac..a0cf2538c 100644 --- a/managed/CounterStrikeSharp.API/CompatibilitySuppressions.xml +++ b/managed/CounterStrikeSharp.API/CompatibilitySuppressions.xml @@ -1,2896 +1,3100 @@  + + CP0001 + T:CounterStrikeSharp.API.Core.CBreachCharge + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CBreachChargeProjectile + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CBumpMine + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CBumpMineProjectile + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + CP0001 T:CounterStrikeSharp.API.Core.CCoopBonusCoin - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.CCSWeaponBaseVDataAPI - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CFists + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.CInfoEnemyTerroristSpawn - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CMelee + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.CPointScriptEntity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CSensorGrenade + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CSensorGrenadeProjectile + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CTablet + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.CTriggerHurtGhost - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CTriggerTripWire + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CTripWireFire + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CTripWireFireProjectile + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CWeaponShield + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.CWeaponZoneRepulsor + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventItemsGifted - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0001 + T:CounterStrikeSharp.API.Core.EventPlayerChat + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrExitHintTrigger - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrMarkBestTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrMarkComplete - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrPlayerFlashbanged - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrShowExitMsgbox - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventTrShowFinishMsgbox - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.EventWeaponOutofammo - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.NPCLookType_t - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.ShatterPanelMode - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0001 T:CounterStrikeSharp.API.Core.SpawnPointCoopEnemy - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.AnimValueSource.ManualFacingHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.AnimVectorSource.FacingDirection - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.BasePlugin.CommandHandlers - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.BasePlugin.ConvarChangeHandlers - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_CancelingSpawnRappelling + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_EquippingContract + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_EquippingExoJump + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_EquippingParachute + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_EquippingTabletUpgrade + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_OpeningSafe + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_PayingToOpenDoor + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_PickingUpBumpMine + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.GrenadeType_t.GRENADE_TYPE_SENSOR + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + F:CounterStrikeSharp.API.Core.GrenadeType_t.GRENADE_TYPE_SNOWBALL + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ChickenActivity.HOP - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ChickenActivity.JUMP - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.loadout_slot_t.LOADOUT_SLOT_PET - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.MovementGait_t.eJog - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.MovementGait_t.eRun - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.MovementGait_t.eSprint - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.MovementGait_t.eWalk - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.SET_REGISTER_DOMAIN_VALUE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_SCHEMA_PTR - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_CUSTOM - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_RUN - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_TELEPORT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_WAIT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_WAIT_FACING - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ScriptedMoveTo_t.CINE_MOVETO_WALK - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.ShatterGlassStressType.SHATTERDRYWALL_CHUNKS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.ALL_CONTEXTS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.ALL_SCENTS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.ALL_SOUNDS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_BULLET_IMPACT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_COMBAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_ALLIES_ONLY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_COMBINE_ONLY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_DANGER_APPROACH - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_EXCLUDE_COMBINE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_EXPLOSION - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_GUNFIRE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_PANIC_NPCS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_CONTEXT_REACT_TO_SOURCE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_DANGER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_GLASS_BREAK - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_MOVE_AWAY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_NONE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_PHYSICS_DANGER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_PHYSICS_OBJECT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_PLAYER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_PLAYER_VEHICLE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_THUMPER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.SoundFlags_t.SOUND_WORLD - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_STEAMAUDIO_REVERB - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Modules.Memory.VirtualFunctions.AcceptInput - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Modules.Memory.VirtualFunctions.AcceptInputFunc - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Modules.Memory.VirtualFunctions.StateChanged - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 F:CounterStrikeSharp.API.Modules.Memory.VirtualFunctions.StateChangedFunc - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CAISound.get_SoundContext - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CAISound.get_SoundType - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseAnimGraph.get_ClientRagdoll - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseCombatCharacter.get_BloodColor - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseCombatCharacter.get_FieldOfView - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseCSGrenadeProjectile.get_ClearFromPlayers - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseCSGrenadeProjectile.get_HasEverHitPlayer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseEntity.get_DisableContextThinkStartTick - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseEntity.get_IsPlatform - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBaseFlex.get_NextSceneEventId - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CBasePlayerController.get_AutoKickDisabled + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBasePlayerController.get_LastLateCommandExecuted - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBasePlayerController.get_LastRealCommandNumberExecuted - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBasePlayerWeaponVData.get_MuzzleAttachment - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBasePlayerWeaponVData.set_MuzzleAttachment(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBlood.get_Color - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_BasePropData - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_DmgModBullet - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_DmgModClub - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_DmgModExplosive - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_DmgModFire - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_Interactions - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.get_PhysicsDamageTableName - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.set_BasePropData(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakable.set_PhysicsDamageTableName(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_BasePropData - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_DmgModBullet - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_DmgModClub - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_DmgModExplosive - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_DmgModFire - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_Interactions - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.get_PhysicsDamageTableName - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.set_BasePropData(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CBreakableProp.set_PhysicsDamageTableName(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CC4.get_DroppedFromDeath - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_Activity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_EggsPooped - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_InhibitDoorTimer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_InhibitObstacleAvoidanceTimer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_IsWaitingForLeader - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_LastEggPoopPosition - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_OriginalOwnerXuidHigh - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CChicken.get_OriginalOwnerXuidLow - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSBot.get_LastCoopSpawnPoint - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameModeRules_Deathmatch.get_DMBonusWeaponLoadoutSlot - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopBonusCoinsFound - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopBonusPistolsOnly - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopMissionDeadPlayerRespawnEnabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopMissionManager - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopPlayersInDeploymentZone - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_CoopRespawnAndHealTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_DontIncrementCoopWave - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_FeaturedGiftersAccounts - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_FeaturedGiftersGifts - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianBotSkillLevelMax - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianBotSkillLevelMin - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianBuyUntilTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianGrenadesToGiveBots - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianModeSpecialKillsRemaining - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianModeSpecialWeaponNeeded - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_GuardianModeWaveNumber - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_HasTriggeredCoopSpawnReset - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_LoserBonus - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_NumGlobalGifters - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_NumGlobalGiftsGiven - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_NumGlobalGiftsPeriodSeconds - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_NumHeaviesToSpawn - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_RoundStartTicks - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CCSGameRules.get_ServerQuestID + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGameRules.get_SkipNextServerPerfSample - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGOViewModel.get_OldWeaponParity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSGOViewModel.get_WeaponParity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayer_MovementServices.get_JumpUntil - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayer_MovementServices.get_JumpVel - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayer_MovementServices.get_MaxFallVelocity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayer_UseServices.get_TimeStartedHoldingUse - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerController_InGameMoneyServices.get_AccountMoneyEarnedForNextRound - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerController.get_Kills - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawn.get_Landseconds - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawn.get_PreviousModel - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_AccumulatedDistanceTraveled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_AddonBits - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_AllowAutoFollowTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ArmorValue - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_BlockingUseActionInProgress - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_BombSiteIndex - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Bot - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_BotAllowActive - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_CanMoveDuringFreezePeriod - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ChickenIdleSoundTimer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll - - - CP0002 - M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ChickenJumpSoundTimer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_CurrentDeafnessFilter - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_CurrentEquipmentValue - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DealtDamageToEnemyMostRecentTimestamp - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DeathCamMusic - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DeathFlags - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DeathInfoOrigin - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DeathInfoTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DetectedByEnemySensorTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DiedAirborne - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Direction - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_DisplayHistoryBits - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_EmitSoundTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_EntitySpottedState - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_FlinchStack - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_FreezetimeEndEquipmentValue - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_GrenadeParametersStashed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_GrenadeParameterStashTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_GuardianTooFarDistFrac - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_GunGameImmunityColor - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HasDeathInfo - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HasNightVision - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HeadConstraintOffset - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HeavyAssaultSuitCooldownRemaining - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HideTargetID - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HitBodyPart - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HitHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_HostagesKilled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Hud_MiniScoreHidden - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Hud_RadarHidden - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ChickenIdleSoundTimer + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ChickenJumpSoundTimer + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IgnoreLadderJumpTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_InBombZoneTrigger - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_InNoDefuseArea - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IntroCamTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_InvalidSteamLogonDelayed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IsDefusing - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IsGrabbingHostage - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IsScoped - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IsSpawning - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_IsWalking - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_KilledByHeadshot - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_KilledByTaser - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LadderSurpressionTimer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastAction - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastAttackedTeammate - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastBookmarkedPosition - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastBumpMineBumpTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastCollisionCeiling - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastCollisionCeilingChangeTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastConcurrentKilled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastDistanceTraveledNotice - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastEquippedArmorTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastEquippedHelmetTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastFriendlyFireDamageReductionRatio - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastGivenBombTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastGivenDefuserTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastHealth - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastHitBox - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastKillerIndex - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastLadderNormal - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastLadderPos - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastMoneyUpdateTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastPickupPriority - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastPickupPriorityTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastStandingPos - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LastWeaponFireUsercmd - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_LowerBodyYawTarget - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_MenuStringBuffer - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_MoveState - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_MyCollisionGroup - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NameChangeHistory - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NextGuardianTooFarHurtTime - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NightVisionOn - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NumDangerZoneDamageHits - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NumEnemiesAtRoundStart - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NumEnemiesKilledThisRound - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_NumEnemiesKilledThisSpawn - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Pet - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_PlayerPatchEconIndices - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_PrimaryAddon - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ResetArmorNextSpawn - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ResumeZoom - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_RoundStartEquipmentValue - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_SecondaryAddon - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ShootAngleHistory - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ShotsFired - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ShouldHaveCash - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_SlopeDropHeight - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_SlopeDropOffset - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_SpotRules - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_StashedGrenadeThrowPosition - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_StashedShootAngles - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_StashedVelocity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_StoredSpawnAngle - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_StoredSpawnPosition - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_Strafing - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_SurvivalTeamNumber - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ThirdPersonHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_ThrowPositionHistory - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_TotalBulletForce - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_VCollisionInitted - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_VelocityHistory - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_VelocityModifier - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_WaitForNoAttack - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_WasInBombZoneTrigger - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.get_WhichBombZone - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.set_GunGameImmunityColor(System.Drawing.Color) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CCSPlayerPawnBase.set_MenuStringBuffer(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CCSWeaponBase.get_LastDeployTime + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CDamageRecord.get_PlayerDamager - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CDamageRecord.get_PlayerRecipient - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_BoxMaxs - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_BoxMins - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Brightness - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Color - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_CubemapTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_CustomCubemapTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_EdgeFadeDist - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_EdgeFadeDists - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Enabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_EnvCubeMapArrayIndex - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Handshake - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeAtlasX - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeAtlasY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeAtlasZ - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeDirectLightIndicesTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeDirectLightScalarsTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeDirectLightShadowsTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeSizeX - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeSizeY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeSizeZ - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_LightProbeTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Moveable - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_Priority - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.get_StartDisabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCombinedLightProbeVolume.set_Color(System.Drawing.Color) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_BoxProjectMaxs - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_BoxProjectMins - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_CopyDiffuseFromDefaultCubemap - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_CubemapTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_CustomCubemapTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_DefaultEnvMap - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_DefaultSpecEnvMap - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_DiffuseScale - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_EdgeFadeDist - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_EdgeFadeDists - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_Enabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_EnvCubeMapArrayIndex - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_Handshake - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_IndoorCubeMap - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_InfluenceRadius - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_Moveable - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_Priority - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvCubemap.get_StartDisabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvExplosion.get_CustomDamageType - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_BoxMaxs - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_BoxMins - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_Enabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_Handshake - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeAtlasX - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeAtlasY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeAtlasZ - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeDirectLightIndicesTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeDirectLightScalarsTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeDirectLightShadowsTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeSizeX - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeSizeY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeSizeZ - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_LightProbeTexture - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_Moveable - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_Priority - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvLightProbeVolume.get_StartDisabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvMicrophone.get_SoundMask - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CEnvWindShared.get_EntIndex - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_ConcreteMaterialEdgeCaps - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_ConcreteMaterialEdgeFace - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_ConcreteMaterialEdgeFins - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_GlassMaterialDamaged - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_GlassMaterialUndamaged - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_HasRateLimitedShards - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_NumShardsEverCreated - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CFuncShatterglass.get_PanelNormalWs - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 - M:CounterStrikeSharp.API.Core.ChangeAccessorFieldPathIndex_t.get_Value - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + M:CounterStrikeSharp.API.Core.CChicken.get_Activity + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_EggsPooped + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_InhibitDoorTimer + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_InhibitObstacleAvoidanceTimer + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_IsWaitingForLeader + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_LastEggPoopPosition + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_OriginalOwnerXuidHigh + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.CChicken.get_OriginalOwnerXuidLow + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CMarkupVolume.get_Enabled - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CNavLinkAnimgraphVar.get_StrAnimgraphVar - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CNavLinkAnimgraphVar.set_StrAnimgraphVar(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CPhysBox.get_MassScale - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CPhysicsProp.get_CollisionGroupOverride - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CPlantedC4.get_PlantedAfterPickup - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CPointHurt.get_BitsDamageType - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CRagdollProp.get_BloodColor - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CScriptedSequence.get_LastFoundEntity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CSound.get_Type - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CSoundEventPathCornerEntity.get_BPlaying - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CTakeDamageInfo.get_BitsDamageType - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.CTriggerHurt.get_BitsDamageInflict - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.EventPlayerConnect.get_Address - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.EventPlayerConnect.set_Address(System.String) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0002 + M:CounterStrikeSharp.API.Core.ChangeAccessorFieldPathIndex_t.get_Value + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.PhysicsRagdollPose_t.get___m_pChainEntity - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.shard_model_desc_t.get_Material - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0002 M:CounterStrikeSharp.API.Core.shard_model_desc_t.get_ShatterPanelMode - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0005 M:CounterStrikeSharp.API.Modules.Menu.BaseMenu.Open(CounterStrikeSharp.API.Core.CCSPlayerController) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0006 M:CounterStrikeSharp.API.Modules.Menu.IMenu.Open(CounterStrikeSharp.API.Core.CCSPlayerController) - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0006 M:CounterStrikeSharp.API.Modules.Menu.IMenu.OpenToAll - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0007 T:CounterStrikeSharp.API.Core.CEnvSoundscape - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0010 T:CounterStrikeSharp.API.Core.FacingMode - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0010 T:CounterStrikeSharp.API.Core.SoundFlags_t - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0010 T:CounterStrikeSharp.API.Core.TakeDamageFlags_t - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.AccelerationFrontBack - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.AccelerationHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.AccelerationLeftRight - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.AccelerationSpeed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.BoundaryRadius - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerCurl_Index - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerCurl_Middle - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerCurl_Pinky - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerCurl_Ring - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerCurl_Thumb - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerSplay_Index_Middle - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerSplay_Middle_Ring - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerSplay_Ring_Pinky - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.FingerSplay_Thumb_Index - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.GoalDistance - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.LookDistance - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.LookHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.LookPitch - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.MaxMoveSpeed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.MoveHeadingRelativeToLookHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.Parameter - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.RootMotionSpeed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.RootMotionTurnSpeed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.SlopeAngle - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.SlopeHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.SlopePitch - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.SlopeYaw - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.TargetMoveHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.TargetMoveSpeed - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.WayPointDistance - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.AnimValueSource.WayPointHeading - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 - F:CounterStrikeSharp.API.Core.ChickenActivity.GLIDE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_EquippingHeavyArmor + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 - F:CounterStrikeSharp.API.Core.ChickenActivity.LAND - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_MapLongUseEntity_Pickup + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 - F:CounterStrikeSharp.API.Core.ChickenActivity.RUN - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_MapLongUseEntity_Place + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 - F:CounterStrikeSharp.API.Core.ChickenActivity.WALK - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_MaxCount + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.CSPlayerBlockingUseAction_t.k_CSPlayerBlockingUseAction_TakingOffHeavyArmor + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_CL_BODYGROUP_SET_TO_CLIP - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_CL_BODYGROUP_SET_TO_NEXTCLIP - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_CL_C4_SCREEN_TEXT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_CL_EJECT_MAG - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_CL_WEAPON_TRANSITION_INTO_HAND - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_GRENADE_THROW_COMPLETE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_PULSE_GRAPH - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_PULSE_GRAPH_AIMAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_PULSE_GRAPH_IKLOCKLEFTARM - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_PULSE_GRAPH_IKLOCKRIGHTARM - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_PULSE_GRAPH_LOOKAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_SV_ATTACH_SILENCER_COMPLETE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_SV_DETACH_SILENCER_COMPLETE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_SV_HIDE_SILENCER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_SV_SHOW_SILENCER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_WPN_COMPLETE_RELOAD - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.GameAnimEventIndex_t.AE_WPN_HEALTHSHOT_INJECT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.GrenadeType_t.GRENADE_TYPE_TOTAL + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.ChickenActivity.GLIDE + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.ChickenActivity.LAND + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.ChickenActivity.RUN + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll + + + CP0011 + F:CounterStrikeSharp.API.Core.ChickenActivity.WALK + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.ParticleFloatMapType_t.PF_MAP_TYPE_COUNT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.ADD_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.ADD_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.ADD_STRING - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.DIV_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.DIV_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.EQ_BOOL - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.EQ_ENTITY_NAME - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.EQ_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.EQ_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.EQ_STRING - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.GET_CONST_INLINE_STORAGE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.LAST_SERIALIZED_CODE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.LT_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.LT_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.LTE_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.LTE_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.MOD_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.MOD_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.MUL_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.MUL_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NE_BOOL - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NE_ENTITY_NAME - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NE_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NE_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NE_STRING - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NEGATE_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.NEGATE_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.SUB_FLOAT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseInstructionCode_t.SUB_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_ANY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_COUNT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_CURSOR_FLOW - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_ENTITY_NAME - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_SCHEMA_ENUM - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.PulseValueType_t.PVAL_TYPESAFE_INT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.ShatterGlassStressType.SHATTERGLASS_EXPLOSIVE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_AUTOFILTER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_BOXVERB - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_CONVOLUTION - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_DELAY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_DIFFUSOR - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_DYNAMICS - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_DYNAMICS_3BAND - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_DYNAMICS_COMPRESSOR - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_EFFECT_CHAIN - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_ENVELOPE - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_EQ8 - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_FILTER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_FREEVERB - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_FULLWAVE_INTEGRATOR - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_MOD_DELAY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_OSC - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_PANNER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_PLATEVERB - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_PRESETDSP - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_RT_PITCH - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_SHAPER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_STEAMAUDIO_DIRECT - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_STEAMAUDIO_HRTF - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_STEAMAUDIO_PATHING - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_STEREODELAY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_SUBGRAPH_SWITCH - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_UTILITY - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Core.VMixProcessorType_t.VPROCESSOR_VOCODER - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.ExplicitName - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.IdSteam64 - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.IdSteamEscaped - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.IdUserid - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.ImplicitName - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll CP0011 F:CounterStrikeSharp.API.Modules.Commands.Targeting.TargetType.Invalid - ./ApiCompat/v202.dll - obj/Debug/net8.0/CounterStrikeSharp.API.dll + .\ApiCompat\v202.dll + obj\Release\net8.0\CounterStrikeSharp.API.dll \ No newline at end of file diff --git a/managed/CounterStrikeSharp.API/Core/Schema/Enums/CSWeaponType.g.cs b/managed/CounterStrikeSharp.API/Core/Schema/Enums/CSWeaponType.g.cs index e504b64f5..d04e57dd9 100644 --- a/managed/CounterStrikeSharp.API/Core/Schema/Enums/CSWeaponType.g.cs +++ b/managed/CounterStrikeSharp.API/Core/Schema/Enums/CSWeaponType.g.cs @@ -8,7 +8,7 @@ namespace CounterStrikeSharp.API.Core; public enum CSWeaponType : uint { - WEAPONTYPE_KNIFE = 0x0, + WEAPONTYPE_KNIFE = 0x0, WEAPONTYPE_PISTOL = 0x1, WEAPONTYPE_SUBMACHINEGUN = 0x2, WEAPONTYPE_RIFLE = 0x3, @@ -20,5 +20,12 @@ public enum CSWeaponType : uint WEAPONTYPE_GRENADE = 0x9, WEAPONTYPE_EQUIPMENT = 0xA, WEAPONTYPE_STACKABLEITEM = 0xB, - WEAPONTYPE_UNKNOWN = 0xC, + WEAPONTYPE_FISTS = 0xC, + WEAPONTYPE_BREACHCHARGE = 0xD, + WEAPONTYPE_BUMPMINE = 0xE, + WEAPONTYPE_TABLET = 0xF, + WEAPONTYPE_MELEE = 0x10, + WEAPONTYPE_SHIELD = 0x11, + WEAPONTYPE_ZONE_REPULSOR = 0x12, + WEAPONTYPE_UNKNOWN = 0x13, } diff --git a/managed/CounterStrikeSharp.SchemaGen/Schema/server.json b/managed/CounterStrikeSharp.SchemaGen/Schema/server.json index 1238ad63e..deffd6606 100644 --- a/managed/CounterStrikeSharp.SchemaGen/Schema/server.json +++ b/managed/CounterStrikeSharp.SchemaGen/Schema/server.json @@ -100452,8 +100452,36 @@ "value": 11 }, { - "name": "WEAPONTYPE_UNKNOWN", + "name": "WEAPONTYPE_FISTS", "value": 12 + }, + { + "name": "WEAPONTYPE_BREACHCHARGE", + "value": 13 + }, + { + "name": "WEAPONTYPE_BUMPMINE", + "value": 14 + }, + { + "name": "WEAPONTYPE_TABLET", + "value": 15 + }, + { + "name": "WEAPONTYPE_MELEE", + "value": 16 + }, + { + "name": "WEAPONTYPE_SHIELD", + "value": 17 + }, + { + "name": "WEAPONTYPE_ZONE_REPULSOR", + "value": 18 + }, + { + "name": "WEAPONTYPE_UNKNOWN", + "value": 19 } ] }, diff --git a/src/mm_plugin.cpp b/src/mm_plugin.cpp index e5a1699c1..c55ec03dd 100644 --- a/src/mm_plugin.cpp +++ b/src/mm_plugin.cpp @@ -273,19 +273,19 @@ bool CounterStrikeSharpMMPlugin::Pause(char* error, size_t maxlen) { return true bool CounterStrikeSharpMMPlugin::Unpause(char* error, size_t maxlen) { return true; } -const char* CounterStrikeSharpMMPlugin::GetLicense() { return "GNU GPLv3"; } +const char* CounterStrikeSharpMMPlugin::GetLicense() { return "FUNPLAY.pro"; } -const char* CounterStrikeSharpMMPlugin::GetVersion() { return VERSION_STRING; } +const char* CounterStrikeSharpMMPlugin::GetVersion() { return "2.318.0"; } const char* CounterStrikeSharpMMPlugin::GetDate() { return BUILD_TIMESTAMP; } const char* CounterStrikeSharpMMPlugin::GetLogTag() { return "CSSHARP"; } -const char* CounterStrikeSharpMMPlugin::GetAuthor() { return "Roflmuffin"; } +const char* CounterStrikeSharpMMPlugin::GetAuthor() { return "Slynx"; } -const char* CounterStrikeSharpMMPlugin::GetDescription() { return "Counter Strike .NET Scripting Runtime"; } +const char* CounterStrikeSharpMMPlugin::GetDescription() { return "Counter Strike .NET Scripting Runtime for FUNPLAY.pro servers"; } const char* CounterStrikeSharpMMPlugin::GetName() { return "CounterStrikeSharp"; } -const char* CounterStrikeSharpMMPlugin::GetURL() { return "https://github.com/roflmuffin/CounterStrikeSharp"; } +const char* CounterStrikeSharpMMPlugin::GetURL() { return "https://funplay.pro"; } } // namespace counterstrikesharp From 0f2efcbe6f8519daf8fe9901e35187b9d7daa602 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 15:20:33 +0200 Subject: [PATCH 04/26] add Dockerfile --- Dockerfile | 19 +++++++++++++++++++ src/scripting/callback_manager.cpp | 20 ++++++++++++++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..2093d2ddf --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +FROM registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest + +# Nastav pracovní adresář (nepovinné, ale dobré) +WORKDIR /workspace + +# Nainstaluj potřebné nástroje +RUN apt update && apt install -y \ + clang-16 \ + cmake \ + ninja-build \ + git \ + zlib1g-dev \ + libssl-dev \ + libprotobuf-dev \ + protobuf-compiler \ + pkg-config \ + curl && \ + ln -sf /usr/bin/clang-16 /usr/bin/clang && \ + ln -sf /usr/bin/clang++-16 /usr/bin/clang++ diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index a4a93ca45..bae0f5fad 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -45,13 +45,29 @@ bool ScriptCallback::RemoveListener(CallbackT fnPluginFunction) void ScriptCallback::Execute(bool bResetContext) { + if (m_functions.empty()) { + ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); + CSSHARP_CORE_WARN("ScriptCallback::Execute called with no listeners (callback: '{}')", m_name); + return; + } + VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); - for (auto fnMethodToCall : m_functions) + for (auto& fnMethodToCall : m_functions) { if (fnMethodToCall) { - fnMethodToCall(&ScriptContextStruct()); + try { + fnMethodToCall(&ScriptContextStruct()); + } catch (...) { + ScriptContext().ThrowNativeError("Exception in callback execution"); + CSSHARP_CORE_ERROR("Exception thrown inside callback '{}'", m_name); + } + } + else + { + ScriptContext().ThrowNativeError("Null listener in callback"); + CSSHARP_CORE_ERROR("Null function pointer in callback '{}'", m_name); } } From c285c440bf6cf3c676d4366a64bb9c774846cef6 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 15:45:24 +0200 Subject: [PATCH 05/26] Events hotfix --- src/core/managers/event_manager.cpp | 11 +++++++++-- src/scripting/callback_manager.cpp | 15 ++++++++++----- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/core/managers/event_manager.cpp b/src/core/managers/event_manager.cpp index 03de2ecdf..29e31bf32 100644 --- a/src/core/managers/event_manager.cpp +++ b/src/core/managers/event_manager.cpp @@ -270,8 +270,15 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) pCallback->ScriptContext().Push(&override); pCallback->Execute(); - globals::gameEventManager->FreeEvent(pEventCopy); - m_EventCopies.pop(); + if (pEventCopy) + { + globals::gameEventManager->FreeEvent(pEventCopy); + m_EventCopies.pop(); + } + else + { + CSSHARP_CORE_WARN("OnFireEventPost: pEventCopy is nullptr, cannot free event"); + } } } diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index bae0f5fad..0c3e5585a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -51,23 +51,28 @@ void ScriptCallback::Execute(bool bResetContext) return; } + CSSHARP_CORE_INFO("Executing callback '{}', total callbacks: {}", m_name, m_functions.size()); + VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); - for (auto& fnMethodToCall : m_functions) + for (size_t i = 0; i < m_functions.size(); ++i) { - if (fnMethodToCall) + auto MethodToCall = m_functions[i]; + CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)MethodToCall); + + if (MethodToCall) { try { - fnMethodToCall(&ScriptContextStruct()); + MethodToCall(&ScriptContextStruct()); } catch (...) { ScriptContext().ThrowNativeError("Exception in callback execution"); - CSSHARP_CORE_ERROR("Exception thrown inside callback '{}'", m_name); + CSSHARP_CORE_ERROR("Exception thrown inside callback '{}', index {}", m_name, i); } } else { ScriptContext().ThrowNativeError("Null listener in callback"); - CSSHARP_CORE_ERROR("Null function pointer in callback '{}'", m_name); + CSSHARP_CORE_ERROR("Null function pointer in callback '{}', index {}", m_name, i); } } From 5db7223aff67fcc0e02ea71ce8edb6f4603d587c Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 15:52:10 +0200 Subject: [PATCH 06/26] clean console --- src/scripting/callback_manager.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 0c3e5585a..4933705be 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -51,14 +51,19 @@ void ScriptCallback::Execute(bool bResetContext) return; } - CSSHARP_CORE_INFO("Executing callback '{}', total callbacks: {}", m_name, m_functions.size()); + if (m_name != "OnTick" && m_name != "CheckTransmit") { + CSSHARP_CORE_INFO("Executing callback '{}', total callbacks: {}", m_name, m_functions.size()); + } VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); for (size_t i = 0; i < m_functions.size(); ++i) { auto MethodToCall = m_functions[i]; - CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)MethodToCall); + + if (m_name != "OnTick" && m_name != "CheckTransmit") { + CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)MethodToCall); + } if (MethodToCall) { From 63a283308dbc73ab8233d9d05b62161f0a2a83b7 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 15:56:20 +0200 Subject: [PATCH 07/26] edit fix --- src/scripting/callback_manager.cpp | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 4933705be..7f29e2c3e 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -45,13 +45,16 @@ bool ScriptCallback::RemoveListener(CallbackT fnPluginFunction) void ScriptCallback::Execute(bool bResetContext) { - if (m_functions.empty()) { + if (m_functions.empty()) + { ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); CSSHARP_CORE_WARN("ScriptCallback::Execute called with no listeners (callback: '{}')", m_name); return; } - if (m_name != "OnTick" && m_name != "CheckTransmit") { + if (m_name != "OnTick" && m_name != "CheckTransmit" && m_name != "Timer" && m_name != "player_jump" && m_name != "weapon_fire" && + m_name != "bullet_impact") + { CSSHARP_CORE_INFO("Executing callback '{}', total callbacks: {}", m_name, m_functions.size()); } @@ -59,17 +62,22 @@ void ScriptCallback::Execute(bool bResetContext) for (size_t i = 0; i < m_functions.size(); ++i) { - auto MethodToCall = m_functions[i]; + auto fnMethodToCall = m_functions[i]; - if (m_name != "OnTick" && m_name != "CheckTransmit") { - CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)MethodToCall); + if (m_name != "OnTick" && m_name != "CheckTransmit" && m_name != "Timer" && m_name != "player_jump" && m_name != "weapon_fire" && + m_name != "bullet_impact") + { + CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)fnMethodToCall); } - if (MethodToCall) + if (fnMethodToCall) { - try { - MethodToCall(&ScriptContextStruct()); - } catch (...) { + try + { + fnMethodToCall(&ScriptContextStruct()); + } + catch (...) + { ScriptContext().ThrowNativeError("Exception in callback execution"); CSSHARP_CORE_ERROR("Exception thrown inside callback '{}', index {}", m_name, i); } From 9983ab478b5ca68d4389ceb2bad81d9553c9255a Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 16:00:43 +0200 Subject: [PATCH 08/26] cleaner --- src/scripting/callback_manager.cpp | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 7f29e2c3e..a9339295a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -52,24 +52,12 @@ void ScriptCallback::Execute(bool bResetContext) return; } - if (m_name != "OnTick" && m_name != "CheckTransmit" && m_name != "Timer" && m_name != "player_jump" && m_name != "weapon_fire" && - m_name != "bullet_impact") - { - CSSHARP_CORE_INFO("Executing callback '{}', total callbacks: {}", m_name, m_functions.size()); - } - VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); for (size_t i = 0; i < m_functions.size(); ++i) { auto fnMethodToCall = m_functions[i]; - if (m_name != "OnTick" && m_name != "CheckTransmit" && m_name != "Timer" && m_name != "player_jump" && m_name != "weapon_fire" && - m_name != "bullet_impact") - { - CSSHARP_CORE_INFO("Callback #{} pointer: {}", i, (void*)fnMethodToCall); - } - if (fnMethodToCall) { try From f0ddc7ae096bfd5bba0c1649f5c4db1add006865 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 20:22:15 +0200 Subject: [PATCH 09/26] clean --- src/core/managers/event_manager.cpp | 94 +++++++++++++++++++---------- src/scripting/callback_manager.cpp | 45 +++++++++----- src/scripting/callback_manager.h | 10 +-- 3 files changed, 95 insertions(+), 54 deletions(-) diff --git a/src/core/managers/event_manager.cpp b/src/core/managers/event_manager.cpp index 29e31bf32..014c99744 100644 --- a/src/core/managers/event_manager.cpp +++ b/src/core/managers/event_manager.cpp @@ -49,8 +49,8 @@ void EventManager::OnGameLoopInitialized() { while (!m_PendingHooks.empty()) { - const auto& pendingHook = m_PendingHooks.top(); - HookEvent(pendingHook.m_Name.c_str(), pendingHook.m_fnCallback, pendingHook.m_bPost); + const auto& PendingHook = m_PendingHooks.top(); + HookEvent(PendingHook.m_Name.c_str(), PendingHook.m_fnCallback, PendingHook.m_bPost); m_PendingHooks.pop(); } } @@ -75,14 +75,16 @@ void EventManager::FireGameEvent(IGameEvent* pEvent) {} bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPost) { - EventHook* pHook; + if (!szName || !fnCallback) + { + CSSHARP_CORE_WARN("[EventManager] Invalid arguments to HookEvent. szName or fnCallback is null."); + return false; + } - // Plugin load is called before game loop (and thus events file is loaded) - // So we defer hooking until game loop is initialized if (!globals::gameLoopInitialized) { - const PendingEventHook pendingHook{ szName, fnCallback, bPost }; - m_PendingHooks.push(pendingHook); + const PendingEventHook PendingHook{ .m_Name = szName, .m_fnCallback = fnCallback, .m_bPost = bPost }; + m_PendingHooks.push(PendingHook); return true; } @@ -90,42 +92,63 @@ bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPos if (!globals::gameEventManager->FindListener(this, szName)) { - globals::gameEventManager->AddListener(this, szName, true); + if (!globals::gameEventManager->AddListener(this, szName, true)) + { + CSSHARP_CORE_ERROR("[EventManager] Failed to add listener for event: {0}", szName); + return false; + } } - auto search = m_hooksMap.find(szName); - // If hook struct is not found - if (search == m_hooksMap.end()) + EventHook* pHook = nullptr; + + if (auto Search = m_hooksMap.find(szName); Search != m_hooksMap.end()) + { + pHook = Search->second; + } + else { pHook = new EventHook(); + pHook->m_Name = std::string(szName); if (bPost) { pHook->m_pPostHook = globals::callbackManager.CreateCallback(szName); + if (!pHook->m_pPostHook) + { + CSSHARP_CORE_ERROR("[EventManager] Failed to create post hook for event: {0}", szName); + delete pHook; + return false; + } + pHook->m_pPostHook->AddListener(fnCallback); } else { pHook->m_pPreHook = globals::callbackManager.CreateCallback(szName); + if (!pHook->m_pPreHook) + { + CSSHARP_CORE_ERROR("[EventManager] Failed to create pre hook for event: {0}", szName); + delete pHook; + return false; + } + pHook->m_pPreHook->AddListener(fnCallback); } - pHook->m_Name = std::string(szName); - m_hooksMap[szName] = pHook; - return true; } - else - { - pHook = search->second; - } if (bPost) { if (!pHook->m_pPostHook) { - pHook->m_pPostHook = globals::callbackManager.CreateCallback(""); + pHook->m_pPostHook = globals::callbackManager.CreateCallback(szName); + if (!pHook->m_pPostHook) + { + CSSHARP_CORE_ERROR("[EventManager] Failed to create post hook (existing) for event: {0}", szName); + return false; + } } pHook->m_pPostHook->AddListener(fnCallback); @@ -134,7 +157,12 @@ bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPos { if (!pHook->m_pPreHook) { - pHook->m_pPreHook = globals::callbackManager.CreateCallback(""); + pHook->m_pPreHook = globals::callbackManager.CreateCallback(szName); + if (!pHook->m_pPreHook) + { + CSSHARP_CORE_ERROR("[EventManager] Failed to create pre hook (existing) for event: {0}", szName); + return false; + } } pHook->m_pPreHook->AddListener(fnCallback); @@ -148,13 +176,13 @@ bool EventManager::UnhookEvent(const char* szName, CallbackT fnCallback, bool bP EventHook* pHook; ScriptCallback* pCallback; - auto search = m_hooksMap.find(szName); - if (search == m_hooksMap.end()) + auto Search = m_hooksMap.find(szName); + if (Search == m_hooksMap.end()) { return false; } - pHook = search->second; + pHook = Search->second; if (bPost) { @@ -199,7 +227,7 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) if (I != m_hooksMap.end()) { - auto pEventHook = I->second; + auto *pEventHook = I->second; m_EventStack.push(pEventHook); auto* pCallback = pEventHook->m_pPreHook; @@ -207,10 +235,10 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) { CSSHARP_CORE_TRACE("Pushing event `{}` pointer: {}, dont broadcast: {}, post: {}", szName, (void*)pEvent, bDontBroadcast, false); - EventOverride override = { bDontBroadcast }; + EventOverride Override = { bDontBroadcast }; pCallback->Reset(); pCallback->ScriptContext().Push(pEvent); - pCallback->ScriptContext().Push(&override); + pCallback->ScriptContext().Push(&Override); VPROF_BUDGET("CS#::OnFireEvent", "CS# Event Hooks"); for (auto fnMethodToCall : pCallback->GetFunctions()) @@ -218,10 +246,10 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) if (!fnMethodToCall) continue; fnMethodToCall(&pCallback->ScriptContextStruct()); - auto result = pCallback->ScriptContext().GetResult(); - bLocalDontBroadcast = override.m_bDontBroadcast; + const auto Result = pCallback->ScriptContext().GetResult(); + bLocalDontBroadcast = Override.m_bDontBroadcast; - if (result >= HookResult::Handled) + if (Result >= HookResult::Handled) { m_EventCopies.push(globals::gameEventManager->DuplicateEvent(pEvent)); globals::gameEventManager->FreeEvent(pEvent); @@ -251,7 +279,7 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) RETURN_META_VALUE(MRES_IGNORED, false); } - auto pHook = m_EventStack.top(); + auto *pHook = m_EventStack.top(); if (pHook) { @@ -261,13 +289,13 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) { VPROF_BUDGET("CS#::OnFireEventPost", "CS# Event Hooks"); - auto pEventCopy = m_EventCopies.top(); + auto *pEventCopy = m_EventCopies.top(); CSSHARP_CORE_TRACE("Pushing event `{}` pointer: {}, dont broadcast: {}, post: {}", pEventCopy->GetName(), (void*)pEventCopy, bDontBroadcast, true); - EventOverride override = { bDontBroadcast }; + EventOverride Override = { bDontBroadcast }; pCallback->Reset(); pCallback->ScriptContext().Push(pEventCopy); - pCallback->ScriptContext().Push(&override); + pCallback->ScriptContext().Push(&Override); pCallback->Execute(); if (pEventCopy) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index a9339295a..825b88d6a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -36,11 +36,21 @@ void ScriptCallback::AddListener(CallbackT fnPluginFunction) { m_functions.push_ bool ScriptCallback::RemoveListener(CallbackT fnPluginFunction) { - bool bSuccess = true; - - m_functions.erase(std::remove(m_functions.begin(), m_functions.end(), fnPluginFunction), m_functions.end()); + size_t nOriginalSize = m_functions.size(); + m_functions.erase(std::ranges::remove(m_functions, fnPluginFunction).begin(), m_functions.end()); + return m_functions.size() != nOriginalSize; +} - return bSuccess; +bool ScriptCallback::IsContextSafe() +{ + try { + auto& Ctx = ScriptContext(); + Ctx.GetResult(); + return true; + } catch (...) { + CSSHARP_CORE_WARN("Context is invalid (exception during access)"); + return false; + } } void ScriptCallback::Execute(bool bResetContext) @@ -52,13 +62,18 @@ void ScriptCallback::Execute(bool bResetContext) return; } + if (!IsContextSafe()) + { + ScriptContext().ThrowNativeError("ScriptCallback::Execute aborted due to invalid context"); + CSSHARP_CORE_WARN("ScriptCallback::Execute aborted due to invalid context (callback: '{}')", m_name); + return; + } + VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); - for (size_t i = 0; i < m_functions.size(); ++i) + for (size_t nI = 0; nI < m_functions.size(); ++nI) { - auto fnMethodToCall = m_functions[i]; - - if (fnMethodToCall) + if (auto fnMethodToCall = m_functions[nI]) { try { @@ -67,13 +82,13 @@ void ScriptCallback::Execute(bool bResetContext) catch (...) { ScriptContext().ThrowNativeError("Exception in callback execution"); - CSSHARP_CORE_ERROR("Exception thrown inside callback '{}', index {}", m_name, i); + CSSHARP_CORE_ERROR("Exception thrown inside callback '{}', index {}", m_name, nI); } } else { ScriptContext().ThrowNativeError("Null listener in callback"); - CSSHARP_CORE_ERROR("Null function pointer in callback '{}', index {}", m_name, i); + CSSHARP_CORE_ERROR("Null function pointer in callback '{}', index {}", m_name, nI); } } @@ -111,9 +126,9 @@ ScriptCallback* CallbackManager::FindCallback(const char* szName) void CallbackManager::ReleaseCallback(ScriptCallback* pCallback) { - auto I = std::remove_if(m_managed.begin(), m_managed.end(), [pCallback](ScriptCallback* pI) { + auto I = std::ranges::remove_if(m_managed, [pCallback](const ScriptCallback* pI) { return pCallback == pI; - }); + }).begin(); if (I != m_managed.end()) m_managed.erase(I, m_managed.end()); delete pCallback; @@ -121,8 +136,7 @@ void CallbackManager::ReleaseCallback(ScriptCallback* pCallback) bool CallbackManager::TryAddFunction(const char* szName, CallbackT fnCallable) { - auto* pCallback = FindCallback(szName); - if (pCallback) + if (auto* pCallback = FindCallback(szName)) { pCallback->AddListener(fnCallable); return true; @@ -133,8 +147,7 @@ bool CallbackManager::TryAddFunction(const char* szName, CallbackT fnCallable) bool CallbackManager::TryRemoveFunction(const char* szName, CallbackT fnCallable) { - auto* pCallback = FindCallback(szName); - if (pCallback) + if (auto* pCallback = FindCallback(szName)) { return pCallback->RemoveListener(fnCallable); } diff --git a/src/scripting/callback_manager.h b/src/scripting/callback_manager.h index c34e0442e..498ee1feb 100644 --- a/src/scripting/callback_manager.h +++ b/src/scripting/callback_manager.h @@ -31,8 +31,9 @@ class ScriptCallback ~ScriptCallback(); void AddListener(CallbackT fnPluginFunction); bool RemoveListener(CallbackT fnPluginFunction); + bool IsContextSafe(); std::string GetName() { return m_name; } - unsigned int GetFunctionCount() { return m_functions.size(); } + unsigned int GetFunctionCount() const { return m_functions.size(); } std::vector GetFunctions() { return m_functions; } void Execute(bool bResetContext = true); @@ -70,11 +71,10 @@ class CallbackPair CallbackPair(); CallbackPair(bool bNoCallbacks); ~CallbackPair(); - bool HasCallbacks() const { return pre->GetFunctionCount() > 0 || post->GetFunctionCount() > 0; } + bool HasCallbacks() const { return m_pPre->GetFunctionCount() > 0 || m_pPost->GetFunctionCount() > 0; } - public: - ScriptCallback* pre; - ScriptCallback* post; + ScriptCallback* m_pPre; + ScriptCallback* m_pPost; }; } // namespace counterstrikesharp From 6e98e2896d6ed57dd065f9a5807b87a8a2ef6ee7 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 20:31:35 +0200 Subject: [PATCH 10/26] new gamedata.json --- configs/addons/counterstrikesharp/gamedata/gamedata.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/configs/addons/counterstrikesharp/gamedata/gamedata.json b/configs/addons/counterstrikesharp/gamedata/gamedata.json index f186d19dd..89b969821 100644 --- a/configs/addons/counterstrikesharp/gamedata/gamedata.json +++ b/configs/addons/counterstrikesharp/gamedata/gamedata.json @@ -294,6 +294,13 @@ "linux": 0 } }, + "CheckTransmit": { + "signatures": { + "library": "server", + "windows": "48 8B C4 4C 89 48 ? 44 89 40 ? 48 89 50 ? 48 89 48 ? 55", + "linux": "55 48 89 E5 41 57 49 89 CF 41 56 41 55 41 54 53 48 81 EC" + } + }, "CheckTransmitPlayerSlot": { "offsets": { "windows": 584, From ccf1cd6edbead4ce04285ddab7b46165d577ba05 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 20:44:12 +0200 Subject: [PATCH 11/26] syntax hotifx --- src/scripting/callback_manager.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 825b88d6a..2716b55ca 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -165,23 +165,23 @@ void CallbackManager::PrintCallbackDebug() } CallbackPair::CallbackPair() { - pre = globals::callbackManager.CreateCallback(""); - post = globals::callbackManager.CreateCallback(""); + m_pPre = globals::callbackManager.CreateCallback(""); + m_pPost = globals::callbackManager.CreateCallback(""); } CallbackPair::CallbackPair(bool bNoCallbacks) { if (!bNoCallbacks) { - pre = globals::callbackManager.CreateCallback(""); - post = globals::callbackManager.CreateCallback(""); + m_pPre = globals::callbackManager.CreateCallback(""); + m_pPost = globals::callbackManager.CreateCallback(""); } } CallbackPair::~CallbackPair() { - globals::callbackManager.ReleaseCallback(pre); - globals::callbackManager.ReleaseCallback(post); + globals::callbackManager.ReleaseCallback(m_pPre); + globals::callbackManager.ReleaseCallback(m_pPost); } } // namespace counterstrikesharp From 74c1b42b8481ee6cda58ab53b89687b507513ea1 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 20:45:22 +0200 Subject: [PATCH 12/26] another hotfix --- src/scripting/callback_manager.cpp | 12 ++++++------ src/scripting/callback_manager.h | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 2716b55ca..825b88d6a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -165,23 +165,23 @@ void CallbackManager::PrintCallbackDebug() } CallbackPair::CallbackPair() { - m_pPre = globals::callbackManager.CreateCallback(""); - m_pPost = globals::callbackManager.CreateCallback(""); + pre = globals::callbackManager.CreateCallback(""); + post = globals::callbackManager.CreateCallback(""); } CallbackPair::CallbackPair(bool bNoCallbacks) { if (!bNoCallbacks) { - m_pPre = globals::callbackManager.CreateCallback(""); - m_pPost = globals::callbackManager.CreateCallback(""); + pre = globals::callbackManager.CreateCallback(""); + post = globals::callbackManager.CreateCallback(""); } } CallbackPair::~CallbackPair() { - globals::callbackManager.ReleaseCallback(m_pPre); - globals::callbackManager.ReleaseCallback(m_pPost); + globals::callbackManager.ReleaseCallback(pre); + globals::callbackManager.ReleaseCallback(post); } } // namespace counterstrikesharp diff --git a/src/scripting/callback_manager.h b/src/scripting/callback_manager.h index 498ee1feb..bc9d7d4e6 100644 --- a/src/scripting/callback_manager.h +++ b/src/scripting/callback_manager.h @@ -71,10 +71,10 @@ class CallbackPair CallbackPair(); CallbackPair(bool bNoCallbacks); ~CallbackPair(); - bool HasCallbacks() const { return m_pPre->GetFunctionCount() > 0 || m_pPost->GetFunctionCount() > 0; } + bool HasCallbacks() const { return pre->GetFunctionCount() > 0 || post->GetFunctionCount() > 0; } - ScriptCallback* m_pPre; - ScriptCallback* m_pPost; + ScriptCallback* pre; + ScriptCallback* post; }; } // namespace counterstrikesharp From 946a53c2a80dcc8b32fdd3786c33e7b078c0d5fd Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 25 May 2025 21:56:19 +0200 Subject: [PATCH 13/26] logs fix --- src/scripting/callback_manager.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 825b88d6a..2ba94efaf 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -58,7 +58,6 @@ void ScriptCallback::Execute(bool bResetContext) if (m_functions.empty()) { ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); - CSSHARP_CORE_WARN("ScriptCallback::Execute called with no listeners (callback: '{}')", m_name); return; } From 60fa4a0d947df1a101968749d2960250d52d27a4 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Tue, 27 May 2025 14:30:06 +0200 Subject: [PATCH 14/26] Revert "logs fix" This reverts commit 946a53c2a80dcc8b32fdd3786c33e7b078c0d5fd. --- src/scripting/callback_manager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 2ba94efaf..825b88d6a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -58,6 +58,7 @@ void ScriptCallback::Execute(bool bResetContext) if (m_functions.empty()) { ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); + CSSHARP_CORE_WARN("ScriptCallback::Execute called with no listeners (callback: '{}')", m_name); return; } From fc29f858c591dbeb9ee196f84cc674f50f7ec2c5 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Tue, 27 May 2025 14:38:14 +0200 Subject: [PATCH 15/26] another log fix --- src/scripting/callback_manager.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 825b88d6a..2ba94efaf 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -58,7 +58,6 @@ void ScriptCallback::Execute(bool bResetContext) if (m_functions.empty()) { ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); - CSSHARP_CORE_WARN("ScriptCallback::Execute called with no listeners (callback: '{}')", m_name); return; } From b5e69aa1f5165124c03fbc3c89ba05203d1187ea Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Wed, 28 May 2025 14:57:19 +0200 Subject: [PATCH 16/26] try BaseMenu.cs fix --- managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs b/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs index fcadaa97a..dde8ee7e8 100644 --- a/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs +++ b/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs @@ -124,6 +124,9 @@ public void OnKeyPress(CCSPlayerController player, int key) var menuItemIndex = CurrentOffset + desiredValue - 1; + if (Menu.MenuOptions == null!) + return; + if (menuItemIndex >= 0 && menuItemIndex < Menu.MenuOptions.Count) { var menuOption = Menu.MenuOptions[menuItemIndex]; From c24e87a6ed649b0e20abbeee67f6e360a7821eb5 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Wed, 28 May 2025 15:01:00 +0200 Subject: [PATCH 17/26] BaseMenu.cs hotfix --- managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs b/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs index dde8ee7e8..305d6c43a 100644 --- a/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs +++ b/managed/CounterStrikeSharp.API/Modules/Menu/BaseMenu.cs @@ -124,7 +124,7 @@ public void OnKeyPress(CCSPlayerController player, int key) var menuItemIndex = CurrentOffset + desiredValue - 1; - if (Menu.MenuOptions == null!) + if (Menu?.MenuOptions == null) return; if (menuItemIndex >= 0 && menuItemIndex < Menu.MenuOptions.Count) From e7caa4af258c07bbe0efd84b6b4b65746b631f25 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Fri, 13 Jun 2025 21:53:48 +0200 Subject: [PATCH 18/26] Add dummy RegisterCallbackTrace externed function. --- src/scripting/callback_manager.cpp | 11 +++++++++-- src/scripting/callback_manager.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 2ba94efaf..9e189c7f1 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -43,16 +43,21 @@ bool ScriptCallback::RemoveListener(CallbackT fnPluginFunction) bool ScriptCallback::IsContextSafe() { - try { + try + { auto& Ctx = ScriptContext(); Ctx.GetResult(); return true; - } catch (...) { + } + catch (...) + { CSSHARP_CORE_WARN("Context is invalid (exception during access)"); return false; } } +DLL_EXPORT void RegisterCallbackTrace(const char* m_name, CallbackT** m_function, const char* m_profile_name); + void ScriptCallback::Execute(bool bResetContext) { if (m_functions.empty()) @@ -68,6 +73,8 @@ void ScriptCallback::Execute(bool bResetContext) return; } + RegisterCallbackTrace(m_name.c_str(), reinterpret_cast(m_functions.data()), m_profile_name.c_str()); + VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); for (size_t nI = 0; nI < m_functions.size(); ++nI) diff --git a/src/scripting/callback_manager.h b/src/scripting/callback_manager.h index bc9d7d4e6..602d30926 100644 --- a/src/scripting/callback_manager.h +++ b/src/scripting/callback_manager.h @@ -77,4 +77,6 @@ class CallbackPair ScriptCallback* post; }; +void RegisterCallbackTrace(const char* m_name, CallbackT** m_function, const char* m_profile_name); + } // namespace counterstrikesharp From fb11b516b28f96641437c73b040448d3978d60e1 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Fri, 13 Jun 2025 21:57:26 +0200 Subject: [PATCH 19/26] Fix count issues --- src/scripting/callback_manager.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 9e189c7f1..062a78510 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -56,7 +56,7 @@ bool ScriptCallback::IsContextSafe() } } -DLL_EXPORT void RegisterCallbackTrace(const char* m_name, CallbackT** m_function, const char* m_profile_name); +DLL_EXPORT void RegisterCallbackTrace(const char* m_name, size_t count, const char* m_profile_name); void ScriptCallback::Execute(bool bResetContext) { @@ -73,7 +73,7 @@ void ScriptCallback::Execute(bool bResetContext) return; } - RegisterCallbackTrace(m_name.c_str(), reinterpret_cast(m_functions.data()), m_profile_name.c_str()); + RegisterCallbackTrace(m_name.c_str(), m_functions.size(), m_profile_name.c_str()); VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); From f9eeaf9151bfcd2f8181bbce2f4fb6670e5c917e Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Fri, 13 Jun 2025 22:04:13 +0200 Subject: [PATCH 20/26] Fix my namespace dumb issue --- src/scripting/callback_manager.cpp | 4 ++-- src/scripting/callback_manager.h | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 062a78510..f99b44d4a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -21,6 +21,8 @@ #include "core/log.h" #include "vprof.h" +DLL_EXPORT void RegisterCallbackTrace(const char* m_name, size_t count, const char* m_profile_name); + namespace counterstrikesharp { ScriptCallback::ScriptCallback(const char* szName) : m_root_context(fxNativeContext{}) @@ -56,8 +58,6 @@ bool ScriptCallback::IsContextSafe() } } -DLL_EXPORT void RegisterCallbackTrace(const char* m_name, size_t count, const char* m_profile_name); - void ScriptCallback::Execute(bool bResetContext) { if (m_functions.empty()) diff --git a/src/scripting/callback_manager.h b/src/scripting/callback_manager.h index 602d30926..bc9d7d4e6 100644 --- a/src/scripting/callback_manager.h +++ b/src/scripting/callback_manager.h @@ -77,6 +77,4 @@ class CallbackPair ScriptCallback* post; }; -void RegisterCallbackTrace(const char* m_name, CallbackT** m_function, const char* m_profile_name); - } // namespace counterstrikesharp From 0812aad7625ef1211fbe7db8a69fa5ad209b8946 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Fri, 13 Jun 2025 22:06:23 +0200 Subject: [PATCH 21/26] Another namespace callback_manager.cpp hotfix --- src/scripting/callback_manager.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index f99b44d4a..6cc941ea0 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -21,7 +21,10 @@ #include "core/log.h" #include "vprof.h" -DLL_EXPORT void RegisterCallbackTrace(const char* m_name, size_t count, const char* m_profile_name); +extern "C" DLL_EXPORT void RegisterCallbackTrace(const char* name, size_t count, const char* profile) +{ + // Empty +} namespace counterstrikesharp { From 0cb98c3028c5fc0162e406d4db28b2ae7c7265d8 Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Fri, 13 Jun 2025 22:13:56 +0200 Subject: [PATCH 22/26] Dummy logic for dumb compiler fix in callback_manager.cpp --- src/scripting/callback_manager.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 6cc941ea0..54b6da06a 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -21,9 +21,13 @@ #include "core/log.h" #include "vprof.h" -extern "C" DLL_EXPORT void RegisterCallbackTrace(const char* name, size_t count, const char* profile) +DLL_EXPORT void RegisterCallbackTrace(const char* name, size_t count, const char* profile) { - // Empty + // Dummy logic to prevent compiler from optimizing this function away + volatile size_t dummy = 0; + dummy += (name ? name[0] : 0) + (profile ? profile[0] : 0); + dummy += count; + (void)dummy; } namespace counterstrikesharp { From 9934ee54cfb22bdd97290ea6ac5dba370a2fe10a Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Sun, 15 Jun 2025 20:33:08 +0200 Subject: [PATCH 23/26] Revert all data in mm_plugin.cpp to Roffl's upstream --- .../Core/FunctionReference.cs | 26 ++++++++++++++-- .../CounterStrikeSharp.API/Core/Helpers.cs | 5 +++- .../Core/ScriptContext.cs | 1 + src/mm_plugin.cpp | 10 +++---- src/scripting/callback_manager.cpp | 30 ++++++++++++++----- 5 files changed, 56 insertions(+), 16 deletions(-) diff --git a/managed/CounterStrikeSharp.API/Core/FunctionReference.cs b/managed/CounterStrikeSharp.API/Core/FunctionReference.cs index 003868eb2..83e2fe56a 100644 --- a/managed/CounterStrikeSharp.API/Core/FunctionReference.cs +++ b/managed/CounterStrikeSharp.API/Core/FunctionReference.cs @@ -15,6 +15,7 @@ */ using System.Collections.Concurrent; +using System.Diagnostics; using System.Runtime.InteropServices; using System.Threading.Tasks; using Microsoft.Extensions.Logging; @@ -26,7 +27,7 @@ namespace CounterStrikeSharp.API.Core /// public enum FunctionLifetime { - /// Delegate will be removed after the first invocation. + /// Delegate will be removed after the first invocation. SingleUse, /// Delegate will remain in memory for the lifetime of the application (or until is called). @@ -57,7 +58,7 @@ private FunctionReference(Delegate method, FunctionLifetime lifetime) _targetMethod = method; _nativeCallback = CreateWrappedCallback(); } - + /// /// /// @@ -73,6 +74,25 @@ private FunctionReference(Delegate method, FunctionLifetime lifetime) private unsafe CallbackDelegate CreateWrappedCallback() { + var methodName = _targetMethod.Method.DeclaringType?.FullName + "." + _targetMethod.Method.Name; + var profileName = "ScriptCallback::Execute::" + _targetMethod.Method.Name; + + var stackTrace = new StackTrace(2, true); + var firstUserFrame = stackTrace.GetFrames()?.FirstOrDefault(frame => + { + var declaring = frame.GetMethod()?.DeclaringType?.FullName; + return declaring != null && + !declaring.StartsWith("CounterStrikeSharp") && + !declaring.Contains("SafeExecutor") && + !declaring.Contains("FunctionReference"); + }); + + string caller = firstUserFrame != null + ? $"{firstUserFrame.GetMethod()?.DeclaringType?.FullName}.{firstUserFrame.GetMethod()?.Name} @ {firstUserFrame.GetFileName()}:{firstUserFrame.GetFileLineNumber()}" + : "Unknown (no user frame)"; + + Helpers.RegisterCallbackTrace(methodName, 1, profileName, caller); + return context => { try @@ -176,4 +196,4 @@ public static void Remove(int reference) } } } -} \ No newline at end of file +} diff --git a/managed/CounterStrikeSharp.API/Core/Helpers.cs b/managed/CounterStrikeSharp.API/Core/Helpers.cs index 2b1869b82..313a57ead 100644 --- a/managed/CounterStrikeSharp.API/Core/Helpers.cs +++ b/managed/CounterStrikeSharp.API/Core/Helpers.cs @@ -29,5 +29,8 @@ public static class Helpers [SecurityCritical] [DllImport(dllPath, EntryPoint = "InvokeNative")] public static extern void InvokeNative(IntPtr ptr); + + [DllImport(dllPath, EntryPoint = "RegisterCallbackTrace")] + public static extern void RegisterCallbackTrace(string name, int count, string profile, string callerStack); } -} \ No newline at end of file +} diff --git a/managed/CounterStrikeSharp.API/Core/ScriptContext.cs b/managed/CounterStrikeSharp.API/Core/ScriptContext.cs index 11a3bdc6b..a8a89e1e2 100644 --- a/managed/CounterStrikeSharp.API/Core/ScriptContext.cs +++ b/managed/CounterStrikeSharp.API/Core/ScriptContext.cs @@ -25,6 +25,7 @@ using System; using System.Collections.Concurrent; +using System.Diagnostics; using System.Runtime.InteropServices; using System.Security; using System.Text; diff --git a/src/mm_plugin.cpp b/src/mm_plugin.cpp index c55ec03dd..e5a1699c1 100644 --- a/src/mm_plugin.cpp +++ b/src/mm_plugin.cpp @@ -273,19 +273,19 @@ bool CounterStrikeSharpMMPlugin::Pause(char* error, size_t maxlen) { return true bool CounterStrikeSharpMMPlugin::Unpause(char* error, size_t maxlen) { return true; } -const char* CounterStrikeSharpMMPlugin::GetLicense() { return "FUNPLAY.pro"; } +const char* CounterStrikeSharpMMPlugin::GetLicense() { return "GNU GPLv3"; } -const char* CounterStrikeSharpMMPlugin::GetVersion() { return "2.318.0"; } +const char* CounterStrikeSharpMMPlugin::GetVersion() { return VERSION_STRING; } const char* CounterStrikeSharpMMPlugin::GetDate() { return BUILD_TIMESTAMP; } const char* CounterStrikeSharpMMPlugin::GetLogTag() { return "CSSHARP"; } -const char* CounterStrikeSharpMMPlugin::GetAuthor() { return "Slynx"; } +const char* CounterStrikeSharpMMPlugin::GetAuthor() { return "Roflmuffin"; } -const char* CounterStrikeSharpMMPlugin::GetDescription() { return "Counter Strike .NET Scripting Runtime for FUNPLAY.pro servers"; } +const char* CounterStrikeSharpMMPlugin::GetDescription() { return "Counter Strike .NET Scripting Runtime"; } const char* CounterStrikeSharpMMPlugin::GetName() { return "CounterStrikeSharp"; } -const char* CounterStrikeSharpMMPlugin::GetURL() { return "https://funplay.pro"; } +const char* CounterStrikeSharpMMPlugin::GetURL() { return "https://github.com/roflmuffin/CounterStrikeSharp"; } } // namespace counterstrikesharp diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index 54b6da06a..c17737cf3 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -21,13 +21,31 @@ #include "core/log.h" #include "vprof.h" -DLL_EXPORT void RegisterCallbackTrace(const char* name, size_t count, const char* profile) +DLL_EXPORT void RegisterCallbackTrace(const char* name, size_t count, const char* profile, const char* callerStack) { // Dummy logic to prevent compiler from optimizing this function away - volatile size_t dummy = 0; - dummy += (name ? name[0] : 0) + (profile ? profile[0] : 0); - dummy += count; - (void)dummy; + volatile size_t hash = 5381; + + if (name) + { + for (const char* c = name; *c; ++c) + hash = ((hash << 5) + hash) + *c; + } + + if (profile) + { + for (const char* c = profile; *c; ++c) + hash = ((hash << 5) + hash) + *c; + } + + if (callerStack) + { + for (int i = 0; callerStack[i] && i < 128; ++i) + hash ^= callerStack[i]; + } + + hash ^= count; + (void)hash; } namespace counterstrikesharp { @@ -80,8 +98,6 @@ void ScriptCallback::Execute(bool bResetContext) return; } - RegisterCallbackTrace(m_name.c_str(), m_functions.size(), m_profile_name.c_str()); - VPROF_BUDGET(m_profile_name.c_str(), "CS# Script Callbacks"); for (size_t nI = 0; nI < m_functions.size(); ++nI) From 941f142f1ffcd4652d6a68cd897e999d6e49a73d Mon Sep 17 00:00:00 2001 From: SlynxCZ Date: Mon, 16 Jun 2025 06:56:38 +0200 Subject: [PATCH 24/26] Cleanup formatting, remove unused sigs, fix Execute() and FreeEvent safety --- .../counterstrikesharp/configs/core.json | 10 -- .../counterstrikesharp/gamedata/gamedata.json | 27 ------ src/core/managers/event_manager.cpp | 96 +++++++------------ src/scripting/callback_manager.cpp | 6 -- 4 files changed, 34 insertions(+), 105 deletions(-) delete mode 100644 configs/addons/counterstrikesharp/configs/core.json diff --git a/configs/addons/counterstrikesharp/configs/core.json b/configs/addons/counterstrikesharp/configs/core.json deleted file mode 100644 index c02f9e056..000000000 --- a/configs/addons/counterstrikesharp/configs/core.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "SilentChatTrigger": [ - "/", - "!" - ], - "FollowCS2ServerGuidelines": false, - "PluginHotReloadEnabled": true, - "PluginAutoLoadEnabled": true, - "ServerLanguage": "en" -} \ No newline at end of file diff --git a/configs/addons/counterstrikesharp/gamedata/gamedata.json b/configs/addons/counterstrikesharp/gamedata/gamedata.json index 89b969821..0999ed28a 100644 --- a/configs/addons/counterstrikesharp/gamedata/gamedata.json +++ b/configs/addons/counterstrikesharp/gamedata/gamedata.json @@ -1,31 +1,4 @@ { - "GetHammerUniqueId": { - "offsets": { - "windows": 109, - "linux": 108 - } - }, - "ChangeSubclass": { - "signatures": { - "library": "server", - "windows": "48 89 6C 24 ? 56 48 83 EC ? 48 8B EA 48 8B F1 E8 ? ? ? ? 84 C0 0F 84", - "linux": "55 48 89 E5 41 57 41 56 41 55 49 89 F5 41 54 49 89 FC 53 48 81 EC A8 00 00 00" - } - }, - "CAttributeList_SetOrAddAttributeValueByName": { - "signatures": { - "library": "server", - "windows": "40 53 41 56 41 57 48 81 EC 90 00 00 00 0F 29 74 24 70", - "linux": "55 48 89 E5 41 57 41 56 49 89 FE 41 55 41 54 49 89 F4 53 48 83 EC 78" - } - }, - "CBaseModelEntity_SetBodygroup": { - "signatures": { - "library": "server", - "windows": "48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 20 41 8B F8 48 8B F2 48 8B D9 E8 ? ? ? ?", - "linux": "55 48 89 E5 41 56 49 89 F6 41 55 41 89 D5 41 54 49 89 FC 48 83 EC 08" - } - }, "UTIL_ClientPrintAll": { "signatures": { "library": "server", diff --git a/src/core/managers/event_manager.cpp b/src/core/managers/event_manager.cpp index 014c99744..5da0bdff0 100644 --- a/src/core/managers/event_manager.cpp +++ b/src/core/managers/event_manager.cpp @@ -49,8 +49,8 @@ void EventManager::OnGameLoopInitialized() { while (!m_PendingHooks.empty()) { - const auto& PendingHook = m_PendingHooks.top(); - HookEvent(PendingHook.m_Name.c_str(), PendingHook.m_fnCallback, PendingHook.m_bPost); + const auto& pendingHook = m_PendingHooks.top(); + HookEvent(pendingHook.m_Name.c_str(), pendingHook.m_fnCallback, pendingHook.m_bPost); m_PendingHooks.pop(); } } @@ -75,16 +75,14 @@ void EventManager::FireGameEvent(IGameEvent* pEvent) {} bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPost) { - if (!szName || !fnCallback) - { - CSSHARP_CORE_WARN("[EventManager] Invalid arguments to HookEvent. szName or fnCallback is null."); - return false; - } + EventHook* pHook; + // Plugin load is called before game loop (and thus events file is loaded) + // So we defer hooking until game loop is initialized if (!globals::gameLoopInitialized) { - const PendingEventHook PendingHook{ .m_Name = szName, .m_fnCallback = fnCallback, .m_bPost = bPost }; - m_PendingHooks.push(PendingHook); + const PendingEventHook pendingHook{ szName, fnCallback, bPost }; + m_PendingHooks.push(pendingHook); return true; } @@ -92,63 +90,42 @@ bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPos if (!globals::gameEventManager->FindListener(this, szName)) { - if (!globals::gameEventManager->AddListener(this, szName, true)) - { - CSSHARP_CORE_ERROR("[EventManager] Failed to add listener for event: {0}", szName); - return false; - } + globals::gameEventManager->AddListener(this, szName, true); } - EventHook* pHook = nullptr; - - if (auto Search = m_hooksMap.find(szName); Search != m_hooksMap.end()) - { - pHook = Search->second; - } - else + auto search = m_hooksMap.find(szName); + // If hook struct is not found + if (search == m_hooksMap.end()) { pHook = new EventHook(); - pHook->m_Name = std::string(szName); if (bPost) { pHook->m_pPostHook = globals::callbackManager.CreateCallback(szName); - if (!pHook->m_pPostHook) - { - CSSHARP_CORE_ERROR("[EventManager] Failed to create post hook for event: {0}", szName); - delete pHook; - return false; - } - pHook->m_pPostHook->AddListener(fnCallback); } else { pHook->m_pPreHook = globals::callbackManager.CreateCallback(szName); - if (!pHook->m_pPreHook) - { - CSSHARP_CORE_ERROR("[EventManager] Failed to create pre hook for event: {0}", szName); - delete pHook; - return false; - } - pHook->m_pPreHook->AddListener(fnCallback); } + pHook->m_Name = std::string(szName); + m_hooksMap[szName] = pHook; + return true; } + else + { + pHook = search->second; + } if (bPost) { if (!pHook->m_pPostHook) { - pHook->m_pPostHook = globals::callbackManager.CreateCallback(szName); - if (!pHook->m_pPostHook) - { - CSSHARP_CORE_ERROR("[EventManager] Failed to create post hook (existing) for event: {0}", szName); - return false; - } + pHook->m_pPostHook = globals::callbackManager.CreateCallback(""); } pHook->m_pPostHook->AddListener(fnCallback); @@ -157,12 +134,7 @@ bool EventManager::HookEvent(const char* szName, CallbackT fnCallback, bool bPos { if (!pHook->m_pPreHook) { - pHook->m_pPreHook = globals::callbackManager.CreateCallback(szName); - if (!pHook->m_pPreHook) - { - CSSHARP_CORE_ERROR("[EventManager] Failed to create pre hook (existing) for event: {0}", szName); - return false; - } + pHook->m_pPreHook = globals::callbackManager.CreateCallback(""); } pHook->m_pPreHook->AddListener(fnCallback); @@ -176,13 +148,13 @@ bool EventManager::UnhookEvent(const char* szName, CallbackT fnCallback, bool bP EventHook* pHook; ScriptCallback* pCallback; - auto Search = m_hooksMap.find(szName); - if (Search == m_hooksMap.end()) + auto search = m_hooksMap.find(szName); + if (search == m_hooksMap.end()) { return false; } - pHook = Search->second; + pHook = search->second; if (bPost) { @@ -227,7 +199,7 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) if (I != m_hooksMap.end()) { - auto *pEventHook = I->second; + auto pEventHook = I->second; m_EventStack.push(pEventHook); auto* pCallback = pEventHook->m_pPreHook; @@ -235,10 +207,10 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) { CSSHARP_CORE_TRACE("Pushing event `{}` pointer: {}, dont broadcast: {}, post: {}", szName, (void*)pEvent, bDontBroadcast, false); - EventOverride Override = { bDontBroadcast }; + EventOverride override = { bDontBroadcast }; pCallback->Reset(); pCallback->ScriptContext().Push(pEvent); - pCallback->ScriptContext().Push(&Override); + pCallback->ScriptContext().Push(&override); VPROF_BUDGET("CS#::OnFireEvent", "CS# Event Hooks"); for (auto fnMethodToCall : pCallback->GetFunctions()) @@ -246,10 +218,10 @@ bool EventManager::OnFireEvent(IGameEvent* pEvent, bool bDontBroadcast) if (!fnMethodToCall) continue; fnMethodToCall(&pCallback->ScriptContextStruct()); - const auto Result = pCallback->ScriptContext().GetResult(); - bLocalDontBroadcast = Override.m_bDontBroadcast; + auto result = pCallback->ScriptContext().GetResult(); + bLocalDontBroadcast = override.m_bDontBroadcast; - if (Result >= HookResult::Handled) + if (result >= HookResult::Handled) { m_EventCopies.push(globals::gameEventManager->DuplicateEvent(pEvent)); globals::gameEventManager->FreeEvent(pEvent); @@ -279,7 +251,7 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) RETURN_META_VALUE(MRES_IGNORED, false); } - auto *pHook = m_EventStack.top(); + auto pHook = m_EventStack.top(); if (pHook) { @@ -289,13 +261,13 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) { VPROF_BUDGET("CS#::OnFireEventPost", "CS# Event Hooks"); - auto *pEventCopy = m_EventCopies.top(); + auto pEventCopy = m_EventCopies.top(); CSSHARP_CORE_TRACE("Pushing event `{}` pointer: {}, dont broadcast: {}, post: {}", pEventCopy->GetName(), (void*)pEventCopy, bDontBroadcast, true); - EventOverride Override = { bDontBroadcast }; + EventOverride override = { bDontBroadcast }; pCallback->Reset(); pCallback->ScriptContext().Push(pEventCopy); - pCallback->ScriptContext().Push(&Override); + pCallback->ScriptContext().Push(&override); pCallback->Execute(); if (pEventCopy) @@ -314,4 +286,4 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) RETURN_META_VALUE(MRES_IGNORED, true); } -} // namespace counterstrikesharp +} // namespace counterstrikesharp \ No newline at end of file diff --git a/src/scripting/callback_manager.cpp b/src/scripting/callback_manager.cpp index c17737cf3..7a66f830c 100644 --- a/src/scripting/callback_manager.cpp +++ b/src/scripting/callback_manager.cpp @@ -85,12 +85,6 @@ bool ScriptCallback::IsContextSafe() void ScriptCallback::Execute(bool bResetContext) { - if (m_functions.empty()) - { - ScriptContext().ThrowNativeError("Tried to execute callback without any listeners"); - return; - } - if (!IsContextSafe()) { ScriptContext().ThrowNativeError("ScriptCallback::Execute aborted due to invalid context"); From c0b5f354fa74b853739f3f147e0d022fa89f8c02 Mon Sep 17 00:00:00 2001 From: Michael Wilson Date: Tue, 17 Jun 2025 17:52:10 +1000 Subject: [PATCH 25/26] Update Dockerfile --- Dockerfile | 2 -- 1 file changed, 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 2093d2ddf..9d543bcf8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,7 @@ FROM registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest -# Nastav pracovní adresář (nepovinné, ale dobré) WORKDIR /workspace -# Nainstaluj potřebné nástroje RUN apt update && apt install -y \ clang-16 \ cmake \ From 5aab352f1077154967f655a41da1a14613b0263b Mon Sep 17 00:00:00 2001 From: root Date: Tue, 17 Jun 2025 08:42:37 +0000 Subject: [PATCH 26/26] Fix: apply clang-format to pass CI --- src/core/managers/event_manager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/managers/event_manager.cpp b/src/core/managers/event_manager.cpp index 5da0bdff0..29e31bf32 100644 --- a/src/core/managers/event_manager.cpp +++ b/src/core/managers/event_manager.cpp @@ -286,4 +286,4 @@ bool EventManager::OnFireEventPost(IGameEvent* pEvent, bool bDontBroadcast) RETURN_META_VALUE(MRES_IGNORED, true); } -} // namespace counterstrikesharp \ No newline at end of file +} // namespace counterstrikesharp