tools-only/x-skills/003-name-skill-0792d730
Claude Code and agent skill by tools-only/x-skills
- community
Checking that the SKILL.md file is still in the repository.
Find and identify the CNetworkGameServer_GetFreeClient function in CS2 binary using IDA Pro MCP. Use this skill when reverse engineering CS2 engine2.dll or libengine2.so to locate the GetFreeClient function by searching for the "NETWORK_DISCONNECT_REJECT_SERVERFULL to %s: Cannot get free client" debug string reference and analyzing cross-references.
Install
npx vskill@latest install tools-only/x-skills/003-name-skill-0792d730SKILL.md
Find CNetworkGameServer_GetFreeClient
Locate CNetworkGameServer_GetFreeClient in CS2 engine2.dll or libengine2.so using IDA Pro MCP tools.
Method
- Search for the debug string:
`` mcp__ida-pro-mcp__find_regex pattern="NETWORK_DISCONNECT_REJECT_SERVERFULL.*Cannot get free client" ``
- Get cross-references to the string:
`` mcp__ida-pro-mcp__xrefs_to addrs="<string_addr>" ``
- Decompile the referencing function:
`` mcp__ida-pro-mcp__decompile addr="<function_addr>" ``
- Identify the CNetworkGameServer_GetFreeClient function:
- In the decompiled code, look for the call that appears just before the "Cannot get free client" error path:
``c v88 = sub_XXXXXX(a1, (_OWORD *)a3, 0LL, v111, 0, v108); if ( !v88 ) { // ... disconnect with NETWORK_DISCONNECT_REJECT_SERVERFULL // ... "NETWORK_DISCONNECT_REJECT_SERVERFULL to %s: Cannot get free client\n" } ``
- The
sub_XXXXXXcalled right before the null check and "Cannot get free client" log isCNetworkGameServer_GetFreeClient
- Rename the function:
`` mcp__ida-pro-mcp__rename batch={"func": [{"addr": "<function_addr>", "name": "CNetworkGameServer_GetFreeClient"}]} ``
- Generate and validate unique signature:
ALWAYS Use SKILL /generate-signature-for-function to generate a robust and unique signature for the function.
- Write IDA analysis output as YAML beside the binary:
ALWAYS Use SKILL /write-func-as-yaml to write the analysis results.
Required parameters:
func_name:CNetworkGameServer_GetFreeClientfunc_addr: The function address from step 4func_sig: The validated signature from step 6
Signature Pattern
The parent function (CNetworkGameServerBase::ConnectClient) references these debug strings:
The target function is called within ConnectClient, just before the "Cannot get free client" error handling block.
Function Characteristics
- Parameters:
(this, addr, unk, steamid, unk2, out_buf)wherethisis CNetworkGameServer pointer - Return: Pointer to a free client slot, or NULL if server is full
- Purpose: Allocates and returns a free client slot from the server's client list
- Module: engine2.dll / libengine2.so
Output YAML Format
The output YAML filename depends on the platform:
engine2.dll→CNetworkGameServer_GetFreeClient.windows.yamllibengine2.so→CNetworkGameServer_GetFreeClient.linux.yaml
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingdevelopment/003-name-skill_0792d730/skill.md
Popularity
- Repository stars
- 9
- Repository forks
- 1
- 7-day trend score
- 17
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/tools-only/x-skills/003-name-skill-0792d730)