- Dependencies
- Zone Manager (Optional), Zone Domes (Optional)
- Works With
Better No Escape creates a balanced gameplay environment by preventing players from exploiting teleportation commands, crafting items, or using other game mechanics to escape from combat situations or active raids. When a player engages in combat or damages a building, they become temporarily "blocked" from performing certain actions, ensuring fair and engaging PvP encounters.
The plugin features two independent blocking systems that work together:
- Combat Block triggers when players deal or receive damage from other players or NPCs. This prevents players from teleporting away mid-fight or using healing items to gain unfair advantages during combat.
- Raid Block activates when players damage buildings or deployables. It can create dynamic raid zones around targeted buildings that block all players within the zone from using escape mechanics, making offline raids and defensive play more meaningful.
Features
- Dual Blocking System - Separate combat and raid blocking with independent durations and rules
- Dynamic Raid Zones - Automatically creates zones around raided buildings using Zone Manager and Zone Domes
- Customizable Action Restrictions - Block teleportation, crafting, building, healing, vending, kits, trading, and 15+ other actions
- Damage Accumulation - Requires minimum damage threshold before triggering blocks to prevent spam
- Friendly Fire Detection - Integrates with Clans and Friends plugins to prevent blocking during friendly damage
- Permission Profiles - Create custom rule sets for different player groups (VIP, Streamer, etc.)
- Entity Filtering - Include/exclude specific entities using keyword matching on prefab or type names
- Distance Checks - Only trigger raid blocks if attacker is within configurable range
- Health Percentage Triggers - Only block raids when building health drops below specified threshold
- Command Blocking - Block specific commands during combat or raid situations
- Real-time HUD Display - Shows remaining block time with customizable UI
- Relationship-Based Blocking - Spread raid blocks to teammates, clanmates, friends, allies, or authorized players
- Unblock Conditions - Configure when blocks are removed (death, respawn, disconnect)
- Weapon Blacklist - Exclude specific weapons from triggering blocks
- Damage Type Filtering - Only trigger blocks from specific damage types (bullets, explosions, etc.)
- Third-Party Integration - Supports Clans, Backpacks, NTeleportation, Zone Manager, Kits, and more
Better No Escape vs No Escape
| Feature | No Escape | Better No Escape |
|---|---|---|
| Setup | Requires granting dozens of individual permissions for each block type (tpblock, craftblock, buildblock, etc.) | Configure your blocked actions in one place and it just works — no permission setup needed |
| Raid Zones | Fixed radius from where damage occurred — same size for every base | Calculates actual building footprint — small bases get small zones, large compounds get appropriate coverage |
| Visual Zone Boundaries | No visual indication of raid zone | Zone Domes integration shows players exactly where the boundaries are |
| Combat Block Detection | Single hit triggers block — stray bullets and accidents count | Damage adds up over a short window, so only real fights trigger blocks |
| Permission Profiles | One global config for all players | Create custom rule sets for VIPs, donors, streamers — each group gets their own blocked actions and commands |
| Blockable Actions | ~15 actions | 21 actions including healing, mounting, TC auth/deauth, stash hiding, item pickup, item deployment |
| Combat vs Raid Rules | Shared settings for both | Independent command lists and action restrictions — block /home during raids but allow it in combat |
Recommended Plugins
- Nerfed Raid Building -- Makes newly placed or upgraded walls spawn at reduced health during raids instead of full HP, preventing defenders from panic-spamming fresh structures. Replaces the Raidblock Building Health plugin for users migrating from the original No Escape.
Permissions
betternoescape.admin-- Allows use of admin commandsbetternoescape.bypass-- Bypasses all combat and raid blocking
Permission Profiles
Permission profiles allow you to create custom blocking rules for different player groups. Each profile requires a permission in the formatbetternoescape.<suffix>.Example permissions from default config:
betternoescape.vip-- Uses VIP profile with reduced restrictionsbetternoescape.streamer-- Uses Streamer profile with reduced restrictions
Commands
bne.reset <playerNameOrId>-- Removes all blocks from the specified playerbne.reset <playerNameOrId> combat-- Removes only combat block from the specified playerbne.reset <playerNameOrId> raid-- Removes only raid block from the specified player
Configuration
Combat Block Settings
JSON:
"Combat Block": {
"Enabled": true,
"Block Duration Seconds": 180.0,
"Block Attacker On Damage Dealt": true,
"Minimum Damage To Block Attacker": 0.0,
"Block Victim On Damage Taken": true,
"Minimum Damage To Block Victim": 0.0,
"Damage Accumulation Window Seconds": 5.0,
"Ignore Friendly Fire": true,
"Include Entity Keywords (prefab or type name substring)": [
"scientist",
"patrolhelicopter",
"bradleyapc"
],
"Exclude Entity Keywords (prefab or type name substring)": [
"corpse"
],
"Allowed Damage Types": [
"Bullet",
"Arrow",
"Blunt",
"Slash",
"Stab",
"ElectricShock"
],
"Ignored Weapon Prefabs": [],
"Blocked Commands": [
"tp"
],
"Disallowed Actions": [
"NoCraft",
"NoBuild",
"NoItemDrop",
"NoRepair",
"NoUpgrade",
"NoRecycle",
"NoAutoGrade",
"NoVending",
"NoKit",
"NoTeleport",
"NoTrade",
"NoBackpack",
"NoHeal",
"NoBank",
"NoStash",
"NoMount",
"NoItemDeploy",
"NoAuth",
"NoDeauth",
"NoItemPickup",
"NoArmory"
]
}
Enabled-- Master toggle for combat blocking system. Set tofalseto disable all combat blocking.Block Duration Seconds-- How long players remain combat blocked after damage occurs (default: 180 seconds / 3 minutes).Block Attacker On Damage Dealt-- Whether the attacking player gets combat blocked when dealing damage.Minimum Damage To Block Attacker-- Minimum damage the attacker must deal before getting blocked. Set to0.0to block on any damage. Higher values prevent spam from weak weapons (e.g., set to5.0to require at least 5 damage).Block Victim On Damage Taken-- Whether the victim gets combat blocked when taking damage.Minimum Damage To Block Victim-- Minimum damage the victim must take before getting blocked. Works the same as attacker minimum.Damage Accumulation Window Seconds-- Time window for accumulating damage to reach minimum threshold. If a player deals 3 damage, then 3 more damage within this window, it counts as 6 total damage. After this window expires, damage counter resets.Ignore Friendly Fire-- Whentrue, damage between teammates, clanmates, friends, or allies will not trigger combat blocks. Requires Clans and/or Friends plugins.Include Entity Keywords-- List of keywords to match against entity prefab names or type names. Only entities matching these keywords will trigger combat blocks. Use lowercase keywords.Exclude Entity Keywords-- Entities matching these keywords will never trigger combat blocks, even if they match include keywords. Useful for excluding specific entity types like corpses.Allowed Damage Types-- Only these damage types will trigger combat blocks. Remove types to prevent blocking from those sources. Available types:Bullet,Arrow,Blunt,Slash,Stab,Bite,Poison,Cold,Drowned,Heat,Hunger,Thirst,Radiation,RadiationExposure,Bleeding,Fall,Generic,Explosion,ElectricShock,AntiVehicle.Ignored Weapon Prefabs-- Specific weapon short prefab names that will never trigger combat blocks. Example:["snowball", "candycaneclub"]to exclude snowballs and candy cane clubs.Blocked Commands-- List of commands that cannot be used while combat blocked. Commands are checked case-insensitive without theprefix. Example: to block/tp`,/tpr, and/home, use["tp", "tpr", "home"].Disallowed Actions-- List of actions players cannot perform while combat blocked. See Profile Configuration for all available action types.
Raid Block Settings
JSON:
"Raid Block": {
"Enabled": true,
"Block Duration Seconds": 300.0,
"Only Block If Entity Health Below Percent (0-100)": 0,
"Only Block If Entity Has Owner": true,
"Ignore If Attacker Farther Than (metres)": 10.0,
"Include Entity Keywords (prefab or type name substring)": [
"building",
"door"
],
"Exclude Entity Keywords (prefab or type name substring)": [
"ladder"
],
"Allowed Damage Types": [
"Explosion",
"Blunt"
],
"Ignored Weapon Prefabs": [],
"Block Nearby Players Within Distance (only used if raid zone is disabled)": 30.0,
"Relations To Block Near Attacker (ignored if raid zone is enabled)": [
"Owner",
"Teammate",
"Auth"
],
"Raid Zone (blocks all players in zone, ignores relations)": {
"Create Zone": true,
"Zone Radius (metres added outside the building)": 30.0,
"Zone Flags": {
"nobuild": "true",
"nodeploy": "true",
"noplayerloot": "true"
},
"Dome Stack": 1,
"Dome Color (0-standard, 1-red, 2-blue, 3-green, 4-purple)": 0
},
"Blocked Commands": [
"tp"
],
"Disallowed Actions": [
"NoCraft",
"NoBuild",
"NoItemDrop",
"NoRepair",
"NoUpgrade",
"NoRecycle",
"NoAutoGrade",
"NoVending",
"NoKit",
"NoTeleport",
"NoTrade",
"NoBackpack",
"NoHeal",
"NoArmory",
"NoStash",
"NoMount",
"NoItemDeploy",
"NoAuth",
"NoDeauth",
"NoItemPickup",
"NoBank"
]
}
Enabled-- Master toggle for raid blocking system.Block Duration Seconds-- How long the raid block lasts (default: 300 seconds / 5 minutes). This timer refreshes each time the building takes damage.Only Block If Entity Health Below Percent-- Only trigger raid blocks when the damaged entity's health drops below this percentage. Set to0to always trigger regardless of health. Set to50to only trigger when entity is below 50% health.Only Block If Entity Has Owner-- Whentrue, only blocks raids on owned entities. Unowned entities (like monuments) won't trigger blocks.Ignore If Attacker Farther Than-- If the attacker is farther than this distance from the damaged entity, no raid block occurs. Set to0.0to disable distance checking. Default10.0prevents blocking from long-range explosive throws.Include Entity Keywords-- Entities must match at least one of these keywords to trigger raid blocks. Default includes"building"and"door". Use lowercase.Exclude Entity Keywords-- Entities matching these keywords never trigger raid blocks.Allowed Damage Types-- Only these damage types trigger raid blocks. Default includes"Explosion"and"Blunt"for typical raiding tools like rockets, C4, and melee weapons.Ignored Weapon Prefabs-- Weapon short prefab names that won't trigger raid blocks.Block Nearby Players Within Distance-- Only used when raid zones are disabled. Blocks all players within this distance of the damaged entity who match the relationship criteria below.Relations To Block Near Attacker-- Only used when raid zones are disabled. Defines which players get blocked based on their relationship to the attacker or building owner. Available relationships:"Everyone"-- Blocks all players in range (overrides all other settings if present)"Owner"-- Building owner"Teammate"-- Players on the same team (default Rust team system)"Friend"-- Friends of attacker or owner (requires Friends plugin)"Clanmate"-- Clan members of attacker or owner (requires Clans plugin)"ClanAlly"-- Allied clan members (requires Clans plugin)"Auth"-- Players authorized on tool cupboards in the building
Raid Zone Configuration
When"Create Zone": true, the plugin creates dynamic zones around raided buildings using Zone Manager and optionally Zone Domes.Create Zone-- Whentrue, creates a zone around the entire building that blocks all players inside, regardless of relationships. Whenfalse, uses the distance and relationship settings above instead.Zone Radius-- Additional radius added beyond the building's actual size. The plugin automatically calculates the building's size and adds this buffer.Zone Flags-- Zone Manager flags to apply to the raid zone. These control zone behavior:"nobuild": "true"-- Prevents building in the zone"nodeploy": "true"-- Prevents deploying items in the zone"noplayerloot": "true"-- Prevents looting players in the zone
Dome Stack-- Number of dome layers to stack on the zone for visibility. Set to0to disable domes. Each stack adds another dome layer. Default1creates a single visible dome. Requires Zone Domes plugin.Dome Color-- Color of the zone dome:0-- Standard (white/transparent)1-- Red2-- Blue3-- Green4-- Purple
Unblock Conditions
JSON:
"Unblock When": {
"Unblock When Player Dies": true,
"Unblock When Player Respawns": true,
"Unblock When Player Respawns At Bag": false,
"Unblock When Player Disconnects": true
}
Unblock When Player Dies-- Removes all blocks when player dies.Unblock When Player Respawns-- Removes all blocks when player respawns (not at a bag/bed).Unblock When Player Respawns At Bag-- Removes all blocks when player respawns at a sleeping bag or bed. Set tofalseto prevent respawning at a nearby bag to escape blocks.Unblock When Player Disconnects-- Removes all blocks when player disconnects. Set tofalse tokeep blocks active even when offline (they'll resume on reconnect).
Profile Configuration
JSON:
"Permission Profiles": [
{
"Permission Suffix": "vip",
"Disallowed Actions": [
"NoBuild",
"NoUpgrade"
],
"Blocked Commands": [
"tp"
]
},
{
"Permission Suffix": "streamer",
"Disallowed Actions": [
"NoBuild",
"NoUpgrade"
],
"Blocked Commands": [
"tp"
]
}
]
betternoescape.<suffix>;. Players with a profile permission use that profile's settings instead of the default combat/raid settings.Permission Suffix-- The suffix appended to betternoescape. to create the permission name. Must be lowercase.Disallowed Actions-- Custom action restrictions for this profile. Only these actions will be blocked, replacing the default lists entirely.Blocked Commands-- Custom command blocks for this profile, replacing default lists.
NoCraft- Prevents crafting itemsNoBuild- Prevents placing building blocksNoItemDrop- Prevents dropping itemsNoRepair- Prevents repairing structuresNoUpgrade- Prevents upgrading building blocksNoRecycle- Prevents using recyclersNoAutoGrade- Prevents BGrade plugin auto-upgradingNoVending- Prevents using vending machinesNoKit- Prevents redeeming kits (requires Kits plugin)NoTeleport- Prevents teleportation (requires NTeleportation plugin)NoTrade- Prevents trading (requires Trade plugin)NoBackpack- Prevents opening backpacks (requires Backpacks plugin)NoHeal- Prevents using medical itemsNoBank- Prevents using bank (requires Bank plugin)NoStash- Prevents hiding stashesNoMount- Prevents mounting vehicles/animalsNoItemDeploy- Prevents deploying items like sleeping bags, furnaces, etc.NoAuth- Prevents authorizing on tool cupboardsNoDeauth- Prevents deauthorizing on tool cupboardsNoItemPickup- Prevents picking up itemsNoArmory- Prevents using armory boxes (requires Armory plugin)
Troubleshooting
Blocks not triggering:- Check that
Enabledistruefor the relevant block type - Verify the damage type is in
Allowed Damage Types - Ensure minimum damage thresholds are met
- Check if the weapon is in
Ignored Weapon Prefabs - Verify entity matches
Include Entity Keywordsand doesn't matchExclude Entity Keywords - For raid blocks: verify attacker is within
Ignore If Attacker Farther Thandistance (set to 0 to disable distance check)
- Install Zone Manager plugin (required)
- Set
"Create Zone": truein configuration - Install Zone Domes plugin for visual domes (optional but recommended)
- Check console for zone creation errors
- Set
Ignore Friendly Firetotrue - Install Clans and/or Friends plugins
- Verify players are actually teammates/friends/clanmates in those plugins
- Check if they have
betternoescape.bypasspermission - Verify the specific action is in
Disallowed Actionsor command is inBlocked Commands - Check if they're using a permission profile with different settings
Developer API
API_IsCombatBlocked
C#:
bool API_IsCombatBlocked(BasePlayer player)
player(BasePlayer) -- The player to check- Returns
bool-- true if player has an active combat block,falseotherwise
API_IsRaidBlocked
C#:
bool API_IsRaidBlocked(BasePlayer player)
player(BasePlayer) -- The player to check- Returns
bool--trueif player has an active raid block,falseotherwise
API_GetCombatBlockTimeLeft
C#:
double API_GetCombatBlockTimeLeft(BasePlayer player)
player(BasePlayer) - The player to check- Returns
double- Remaining time in seconds until combat block expires, or0.0if not blocked
API_GetRaidBlockTimeLeft
C#:
double API_GetRaidBlockTimeLeft(BasePlayer player)
player(BasePlayer) - The player to check- Returns
double- Remaining time in seconds until raid block expires, or0.0if not blocked
Usage Example
C#:
// Example: Integrate with custom teleport plugin
private object CanTeleport(BasePlayer player)
{
if (BetterNoEscape == null)
return null;
// Check combat block
bool combatBlocked = (bool)BetterNoEscape.Call("API_IsCombatBlocked", player);
if (combatBlocked)
{
double timeLeft = (double)BetterNoEscape.Call("API_GetCombatBlockTimeLeft", player);
return $"Cannot teleport while combat blocked! ({timeLeft:F0}s remaining)";
}
// Check raid block
bool raidBlocked = (bool)BetterNoEscape.Call("API_IsRaidBlocked", player);
if (raidBlocked)
{
double timeLeft = (double)BetterNoEscape.Call("API_GetRaidBlockTimeLeft", player);
return $"Cannot teleport while raid blocked! ({timeLeft:F0}s remaining)";
}
return null; // Allow teleport
}