CS2 decoy grenade tactical scan pulse plugin.
- After a player throws a decoy the plugin performs one or more “tactical awareness” style scan pulses (configurable first delay + interval) that briefly outline enemies (optionally teammates) inside a radius and (optionally) plays a sound. Scanning can be toggled live by commands.
- Multiple scan pulses per decoy (configurable count / first delay / interval)
- Brief glow window to create a rhythmic pulse effect
- Detects and honors
mp_teammates_are_enemies(FFA) – teammates auto treated as enemies when enabled - Optional manual inclusion of teammates when not in FFA
- Per‑pulse sound (leave empty to disable)
- Custom enemy & ally colors
- Localization (English + Simplified Chinese)
- Dual permission layers: one for commands, one for who can trigger scans by throwing decoys
- Listens for
weapon_decoyfire event. - Waits
FirstPulseDelaySecondsbefore first scan to avoid wasting a pulse while the grenade is still near the thrower. - Repeats scans every
PulseIntervalSecondsuntilPulseCountreached. - Each scan: find decoy position → enumerate players → apply glow (timed removal) → play optional sound.
- Download the latest release.
- Extract to
game/csgo/addons/counterstrikesharp/plugins/CS2-DecoyXrayScanner/. - Start the server once to generate
decoy_scanner_config.json(it is placed in the plugin root directory, not the global configs folder). - Adjust config and reload via command or restart.
{
"Enabled": true,
"AdminPermissions": [],
"UseGlowPermissions": [],
"PulseCount": 2,
"PulseRadius": 800.0,
"PulseIntervalSeconds": 3.0,
"GlowDurationSeconds": 1.0,
"FirstPulseDelaySeconds": 1.5,
"IncludeTeamMates": false,
"EnemyGlowColor": "#FF0000",
"AllyGlowColor": "#FF0000",
"PulseSound": "ui/beep07.wav"
}| Key | Description |
|---|---|
| Enabled | Master on/off. |
| AdminPermissions | Command permission: restricts use of admin commands (empty = unrestricted). |
| UseGlowPermissions | Trigger permission: only players matching this flag/group can activate scans (empty = all can trigger). |
| PulseCount | Pulses per decoy. |
| PulseRadius | Radius per scan (units). |
| PulseIntervalSeconds | Interval between pulses. |
| GlowDurationSeconds | Glow lifetime per pulse. |
| FirstPulseDelaySeconds | Delay from throw to first pulse. |
| IncludeTeamMates | Include same team (auto overridden by FFA cvar). |
| EnemyGlowColor / AllyGlowColor | Outline colors (hex). |
| PulseSound | Sound path (empty = none). |
Two independent layers:
- Command Permission (
AdminPermissions) - Trigger Permission (
UseGlowPermissions)
Permission evaluation uses OR logic – matching ANY entry grants access.
//Example
{
...
"AdminPermissions": ["@flag", "#group", "76561198000000000"],
"UseGlowPermissions": ["@flag", "#group", "76561198000000000"],
...
}If mp_teammates_are_enemies is active (“true” / non‑zero) teammates are treated as enemies regardless of IncludeTeamMates.
Language files shipped:
Lang/en.json
Lang/zh-Hans.json
Add more (e.g. Lang/de.json) following the same keys.
| Command | Description | Command Permission | Trigger Permission Affects? |
|---|---|---|---|
css_decoyxr_reload |
Reload configuration | Yes | No |
css_decoyxr_clear |
Clear all active glows | Yes | No |
css_decoyxr_info |
Show current status | Yes | No |
css_decoyxr_enable |
Enable pulses | Yes | No |
css_decoyxr_disable |
Disable pulses & clear glows | Yes | No |
Command Permission: AdminPermissions.
Trigger Permission: UseGlowPermissions controls who can make pulses happen when throwing a decoy.
| Style | Suggested Config |
|---|---|
| Single (near official feel) | PulseCount=1, GlowDurationSeconds=3.0 |
| Dual pulse (default) | PulseCount=2, GlowDurationSeconds=1.0, Interval=3.0 |
| Triangulation style | PulseCount=3, GlowDurationSeconds=0.8, Interval=2.0 |
- You can distribute your own VPK / workshop sound and set its path in
PulseSound. - Leave
PulseSoundempty to disable audio.
>中文论坛<
CS2 诱饵弹探测雷“扫描脉冲”插件
- 玩家丢出诱饵弹后按设定的延迟与间隔执行类似探测手雷的扫描效果,将范围内敌人(可选队友)短暂描边,并播放提示音,可通过指令热开关扫描功能
- 每枚诱饵多次扫描(可配置次数 / 首次延迟 / 间隔)
- 短暂描边显示形成“脉冲”效果
- 支持
mp_teammates_are_enemies检测 ,开启时自动把队友视作敌人扫描 - 可选手动包含队友
- 每脉冲可播放音效(不填写则不播放)
- 自定义敌我颜色
- 多语言支持
- 双层权限:指令权限 + 触发权限(控制谁能用诱饵激活扫描)
- 监听武器开火事件检测诱饵 (
weapon_decoy) - 等待
FirstPulseDelaySeconds后执行第一次扫描 - 后续按
PulseIntervalSeconds重复,直到达到PulseCount - 每次扫描计算位置 → 查找玩家 → 应用描边 → 计时取消 → 播放音效
- 下载最新 Release
- 解压到
game/csgo/addons/counterstrikesharp/plugins/CS2-DecoyXrayScanner/ - 启动服务器生成配置
decoy_scanner_config.json(位于插件根目录,非configs下!) - 修改配置并通过命令或重启生效
{
"Enabled": true,
"AdminPermissions": [],
"UseGlowPermissions": [],
"PulseCount": 2,
"PulseRadius": 800.0,
"PulseIntervalSeconds": 3.0,
"GlowDurationSeconds": 1.0,
"FirstPulseDelaySeconds": 1.5,
"IncludeTeamMates": false,
"EnemyGlowColor": "#FF0000",
"AllyGlowColor": "#FF0000",
"PulseSound": "ui/beep07.wav"
}| 键 | 含义 |
|---|---|
| Enabled | 总开关 |
| AdminPermissions | 指令权限控制(空=不限制) |
| UseGlowPermissions | 触发权限:只有满足该 flag/组 的玩家丢诱饵才会激活扫描(空=所有人可触发) |
| PulseCount | 每枚诱饵扫描次数 |
| PulseRadius | 单次扫描半径 |
| PulseIntervalSeconds | 扫描间隔 |
| GlowDurationSeconds | 单次描边持续时间 |
| FirstPulseDelaySeconds | 抛出到第一次扫描的延迟 |
| IncludeTeamMates | 是否包含队友(FFA 时自动包含) |
| EnemyGlowColor / AllyGlowColor | 敌/友描边颜色 |
| PulseSound | 脉冲音效路径(空=关闭) |
两层:
- 指令权限 (
AdminPermissions):控制谁能执行css_decoyxr_*指令 - 触发权限 (
UseGlowPermissions):控制谁丢诱饵弹可以触发扫描
权限检测逻辑为OR关系,满足任意一项即可
//示例
{
...
"AdminPermissions": ["@flag","#group","steam64id"],
"UseGlowPermissions": ["@flag","#group","steam64id"],
...
}服务器 mp_teammates_are_enemies 开启时即视队友为敌人,忽略 IncludeTeamMates 设置
| 指令 | 说明 | 指令权限 | 触发权限影响? |
|---|---|---|---|
css_decoyxr_reload |
重载配置 | 是 | 否 |
css_decoyxr_clear |
清空所有描边 | 是 | 否 |
css_decoyxr_info |
查看插件状态 | 是 | 否 |
css_decoyxr_enable |
启用脉冲 | 是 | 否 |
css_decoyxr_disable |
禁用脉冲 | 是 | 否 |
指令权限:AdminPermissions
触发权限:UseGlowPermissions 控制谁能通过诱饵触发扫描
| 风格 | 建议配置 |
|---|---|
| 接近官方一次探测 | PulseCount=1, GlowDurationSeconds=3.0 |
| 双脉冲(默认) | PulseCount=2, GlowDurationSeconds=1.0, Interval=3.0 |
| 三脉冲定位 | PulseCount=3, GlowDurationSeconds=0.8, Interval=2.0 |
- 你可以自己上传创意工坊文件然后将VPK路径填写进
PulseSound后,即可自定义扫描音效 - 留空
PulseSound表示不使用音效
