This plugin recreates the 1 vs 5 wallhack and Invisible style gameplay for Counter-Strike 2, inspired by videos from dima_wallhacks.
This project was heavily inspired by the original FunnyPlugin, but it was significantly reworked and fixed so that wallhack and invisibility work as intended, RCON works properly, and the overall plugin is more stable, cleaner, and easier to use.
For a full CS2 server installation guide, please visit my other repository: CS2ConfigCopier
Compared to the original inspiration, this version includes major fixes and reworks such as:
- fixed and reworked Wallhack
- fixed and reworked Invisibility
- invisible players no longer cast their player-model shadows for other players
- invisible players no longer expose their world weapons, grenades, knives, or related world rendering to other players
- wallhack correctly reveals invisible enemies only for a limited time when they make a sound
- fixed RCON, which previously was not working correctly
- fixed multiple bugs that could lead to server crashes
- improved command handling with:
- command aliases
- partial name matching
- better permission handling
- improved overall structure, stability, and usability
- Install CounterStrikeSharp on your server.
- Download this plugin from the Releases page.
- Put the plugin files into:
server/game/csgo/addons/counterstrikesharp/plugins/WallhackPluginCS2
- If the
WallhackPluginCS2folder does not exist, create it manually. - Launch the server once so the plugin generates its config.
For a full server installation and setup guide, please visit: CS2ConfigCopier
To use the commands, add the player as an admin in:
server/game/csgo/addons/counterstrikesharp/configs/admins.json
Example:
{
"playername": {
"identity": "steamid",
"flags": [
"@css/generic",
"@css/rcon"
]
}
}By default:
-
@css/genericis required for:!wh!wallhack!invis!invisible!money
-
@css/rconis required for:!rcon
You can change these permission strings later in the plugin config without recompiling the code.
!wh <playername>!wallhack <playername>
You can also use a partial player name.
In many cases, the first letter is enough if it uniquely matches one player.
Example:
!wh a
If multiple players match the same partial name, type more letters until it becomes unique.
!invis <playername>!invisible <playername>
You can also use a partial player name the same way as wallhack.
Example:
!invis av
!money <amount> <playername>
Partial player names work here too.
Example:
!money 16000 ava
!rcon <command>
Example:
!rcon mp_warmup_end
After the first launch, the plugin creates its config here:
server/game/csgo/addons/counterstrikesharp/configs/plugins/WallhackPluginCS2/WallhackPluginCS2.json
Default example:
{
"ColorR": 255,
"ColorG": 0,
"ColorB": 128,
"CommandPermission": "@css/generic",
"RconPermission": "@css/rcon",
"WallhackEnabled": true,
"InvisibleEnabled": true,
"ConfigVersion": 1
}You can change the wallhack glow color by editing:
ColorRColorGColorB
You do not need to recompile the code to change these values.
- The plugin supports partial name matching for player-based commands.
- If a partial name matches more than one player, be more specific.
- The target-name HUD text (
Enemy: <name>) is controlled client-side. - To hide that text, the player needs to disable it manually in the client console with:
hud_showtargetid 0
If you wish to support me, you can donate here:
- Original inspiration: robieless/FunnyPlugin
- Server setup guide: opalgeorgii/CS2ConfigCopier
If you find bugs or want to suggest improvements, open an issue in the repository.