It does not detect cheats, issue bans or replace a complete anti-cheat system.
This AC feature is taken from CS2 AntiCheat Defense
![]() Showcase on Mirage |
![]() Showcase on Dust2 |
AntiWallHack aims to reduce the enemy information available to wallhacks. When an enemy is completely hidden behind solid cover, the plugin can stop sending that enemy and their equipment to a player's game client. Once a visibility check finds a clear path, normal transmission is allowed again.
Note
Teammates, dead or spectator viewers, warmup, freeze time and ended rounds are not filtered. Bots can be enemy targets, but the plugin does not filter what bot viewers receive. Enemies outside the selected nearest group are left untouched.
- Checks solid cover using the game's line-tracing API.
- Anticipates movement to help reduce sudden appearances around corners.
- Keeps recently visible enemies available briefly to reduce flickering.
- Check for a clear path. Rays run from the viewer's eyes to several points around each selected enemy.
- Check ahead when moving. Additional rays use estimated future positions based on current movement speed and direction.
- Keep visible enemies available. One clear or uncertain result is enough to allow normal transmission.
- Hide fully blocked enemies. If every tested path is blocked and the grace period has expired, the plugin withholds that enemy and their collected equipment from that viewer.
VisBaker is published separately at VisBaker. You do not need to download the AntiWallHack source project to build this tool.
- Get the packaged
AntiWallHack.zip. - Extract to your server's swiftlys2/plugins/ directory.
- Restart the server.
The server files should look like this:
game/csgo/addons/swiftlys2/
├── plugins/
│ └── AntiWallHack/
│ └── AntiWallHack.dll
└── config/
└── plugins/
└── AntiWallHack/
└── config.jsonc
addons/swiftlys2/config/plugins/AntiWallHack/config.jsonc
The included config.jsonc contains:
Larger BoundsPadding and CornerPrediction values can make enemies available earlier. A longer VisibleGraceTicks period delays hiding them again. These settings trade stricter hiding for smoother appearances and prediction is an estimate not a guarantee.
Open paths can finish after one ray, fully blocked enemies can need all 12 sample rays, plus another 12 for predicted positions when players move.
The plugin reuses visibility decisions within the same tick. If the shared trace budget runs out, it leaves affected enemies available instead of hiding them without a completed check. A smaller budget can reduce trace work but also reduce filtering coverage.
No. It limits transmission of hidden enemies and their equipment. It does not filter sound, radar messages or all other information a cheat might use.
Yes. Smoke is part of the plugin's visibility checks.





{ "Enabled": true, "Debug": false, "SmokeOcclusion": true, "VisibleGraceTicks": 20, "BoundsPadding": 28, "CornerPrediction": true, "CornerPredictionSeconds": 0.1, "CornerMaxDistance": 32 }