Skip to content

Setting up a BTR War

cjcarw edited this page Jul 17, 2026 · 4 revisions

⚔️ Setting up a BTR War (step by step)

From zero to two armored factions hunting each other across your map — with players caught in the middle. This is the full walkthrough; the underlying rules live in Faction System.

flowchart LR
    E["🚛 East patrol<br/>red markers"] <-. "⚔️ WAR" .-> W["🚛 West patrol<br/>blue markers"]
    E -- hunts --> P["🧍 Players"]
    W -- hunts --> P
    style E fill:#7a2020,color:#fff
    style W fill:#20477a,color:#fff
    style P fill:#555,color:#fff
Loading

1️⃣ Create the two faction presets

In <profile>/BS_BTR_Patrol/presets/, copy your existing preset (or the Example Preset) twice:

presets/
├── war_east.json
└── war_west.json

In war_east.json, set:

"Faction": {
    "Name": "East",
    "AttackPlayers": 1,
    "AttackOtherBTRs": 1,
    "Enemies": ["ALL"],
    "Allies": []
}

In war_west.json, the same but:

"Faction": {
    "Name": "West",
    "AttackPlayers": 1,
    "AttackOtherBTRs": 1,
    "Enemies": ["ALL"],
    "Allies": []
}

Important

The Name values must differ — that's the entire trigger for the war. Two presets with the same name are the same faction and will ignore each other.

Make the sides recognizable (recommended)

Give each faction its own skin, marker name and marker color so everyone can follow the war on the map:

// war_east.json
"Event": {
    "BTRClassName": "BS_BTR_Patrol"
},
"Markers": {
    "Name": "☭ East BTR",
    "ShowHealthOnMarker": 1,
    "MarkerColor": "#DC2828"
}
// war_west.json
"Event": {
    "BTRClassName": "BS_BTR_Patrol_Urban"
},
"Markers": {
    "Name": "★ West BTR",
    "ShowHealthOnMarker": 1,
    "MarkerColor": "#285ADC"
}

With ShowHealthOnMarker on, the map shows each tank's health live (☭ East BTR [43%]) — players can literally watch the war swing. All 12 skins: BTR Skins.


2️⃣ Balance them for real duels

BTRs only damage each other with the cannon's explosion (they're immune to bullets — see Health and Damage), so in both presets make sure:

"Health": {
    "MaxHealth": 3000.0,
    "ArmorMultiplier": 1.0
},
"Turret": {
    "ExplosiveCannon": 1,
    "CoaxOnly": 0
}
Knob Effect on the war
MaxHealth ↓ Shorter, deadlier duels (3000 ≈ a solid brawl; 8000+ = endless siege)
Turret.Accuracy ↑ More shells land → faster kills
Combat.ChasePlayers: 1 They actively push each other instead of trading from range
Uneven values Asymmetric war — a boss-grade West vs. two cheap East patrols is great content

The loser's death still triggers everything normal: 💥 explosion → 🔥 burning wreck → 📦 loot crates → 🛡️ defenders. Players who follow the war get to loot the battlefield — that's the fun.


3️⃣ Make their routes cross

Each preset carries its own PatrolRoutes. The war only happens where the routes bring them within detection range of each other, so lay both factions' waypoints over the same area (e.g. both circling NWAF from opposite ends):

// war_east.json — enters the airfield from the north
"PatrolRoutes": [
    {
        "RouteName": "NWAF North",
        "Waypoints": [
            [4926.7, 339.0, 9673.3],
            [4706.2, 339.0, 9558.4],
            [4411.3, 339.0, 10057.7]
        ]
    }
]
// war_west.json — sweeps it from the south
"PatrolRoutes": [
    {
        "RouteName": "NWAF South",
        "Waypoints": [
            [4001.6, 339.0, 10777.9],
            [4260.5, 339.0, 10919.6],
            [4586.2, 339.0, 10374.7]
        ]
    }
]

Routes overlap → patrols meet → war. Waypoint how-to: Patrol Routes.


4️⃣ Register both presets and run TWO events

In BTR82_Global.json:

{
    "MinEvents": 2,
    "MaxEvents": 2,
    "Presets": [
        {
            "Preset": "war_east",
            "Chance": 50.0
        },
        {
            "Preset": "war_west",
            "Chance": 50.0
        }
    ]
}

MinEvents/MaxEvents at 2 keeps two patrols alive at once — one slot per side (details: Global Config).

Note

Preset picks are weighted random per event, so occasionally both slots roll the same faction — that round they'll coexist peacefully and hunt players together until one dies and the respawn re-rolls. If you want more chaos instead, raise MaxEvents and add more factions to the pool.


5️⃣ Restart and watch

Opening fire

Restart the server. On the map you'll see both markers (red vs. blue) tracing their routes — and when they meet:

  1. They spot each other (any distance within scan range with line of sight — enemy BTRs are always scanned, even with AggroWhilePatrolling: 0).
  2. MG tracers ping off armor, then cannon duel — explosions, falling trees, health ticking down on both markers.
  3. Around 65% health the loser starts popping Smoke Screen and hunkering down.
  4. One dies: explosion, burning wreck, loot crates, defenders — and its slot respawns later for the next round.
  5. Players nearby? Both sides shoot at them too (AttackPlayers: 1). Three-way fight.

🧩 If they don't fight

Check Where
Faction.Name differs between the two presets both preset files
AttackOtherBTRs is 1 (can self-heal to 0 — see How the Config Works) both preset files
Neither lists the other in Allies both preset files
MaxEvents ≥ 2 and both presets registered BTR82_Global.json
Routes actually overlap / meet both presets' PatrolRoutes
Both rolled different factions this round (random can mirror-match) map markers

Damage looks like nothing? That's the MG (normal — bullets can't hurt BTRs). Confirm ExplosiveCannon: 1 and watch the cannon hits instead. More: FAQ and Troubleshooting.


Related: Faction System · Combat and AI · Health and Damage · Global Config · Patrol Routes

Clone this wiki locally