BS Patrol Tank
BS Patrol Tank — BTR-82A An AI-controlled BTR-82A that patrols your map, hunts players who get too close, and goes down fighting — leaving a burning wreck guarded by AI with loot. No drivers, no scripts to babysit. Drop it in, set a route, and a hostile armored patrol comes alive on your server. ⚙️ What it does A BTR-82A drives configurable patrol routes with terrain following. Fights back with a cannon + coaxial… (more)
BS Patrol Tank — BTR-82A An AI-controlled BTR-82A that patrols your map, hunts players who get too close, and goes down fighting — leaving a burning wreck guarded by AI with loot. No drivers, no scripts to babysit. Drop it in, set a route, and a hostile armored patrol comes alive on your server. ⚙️ What it does A BTR-82A drives configurable patrol routes with terrain following. Fights back with a cannon + coaxial machine gun, tracers, custom fire & smoke FX. On destruction it spawns a burning wreck + AI defenders + loot crates. 📚 Full docs & guides: BS Patrol Tank Wiki 🧠 Smart combat AI Threat-based targeting — prioritizes whoever hurts it most / uses AT weapons. Bone-accurate line of sight — peeking from a tiny window won't save you; it tracks your head/arms. Movement prediction — leads moving targets, including players inside vehicles. Suppression fire when it loses sight, and it gives up if you stay hidden. Roadkill — crushes players, infected and animals it drives over at speed. Fells vegetation it plows through and with the cannon blast. Ignores admins in godmode (admin invisibility). ⚡ Lightweight by design Built to be extremely performance-friendly — just like the Patrol Helicopter. You can run 8-9 tanks at the same time and still not see any noticeable hit to your server. Drop it in without worrying about FPS. 🎨 Tons of variety 12 BTR skins — Default, Arctic, Autumn, Black, Blue Tiger, Chocolate, Desert, Green, Olive, Tan, Red Tiger and Urban. Multiple loot crate models (Military Cases & Weapon Cases in several colors). Pick the skin and crates per preset, so each patrol can look and loot differently. 🛡️ Fully configurable Preset system — a global file controls how many patrols run and which presets they roll (by % chance). Run an easy patrol, a normal one, and an airfield boss in the same rotation. Armor options — full damage, reduced bullet damage, or explosives-only. Difficulty templates (easy / normal / hard / boss) as a base — your JSON values always override. Progressive damage smoke (grey → black) as its health drops. Map / notification icons, killfeed, and spawn / despawn / destroyed / killed notifications. Self-healing config — new options are added to your JSON automatically on update. Works on any map (ships with a Chernarus example route). Dedicated log file. 🚧 This is just the beginning This first release ships with the BTR-82A (wheeled). A tracked tank model is already on the way — more armor, more chaos, same lightweight footprint. Stay tuned. 📋 Requirements Required: Community Framework (CF) Optional (auto-detected, nothing breaks if missing): DayZ-Expansion-AI — use Expansion AI bots as wreck defenders DayZ-Expansion-Navigation — 3D/2D map marker LBmaster — alternative map marker & loot presets 🚀 Install Add @BS Patrol Tank after CF in your start line: -mod=@CF;@BS Patrol Tank Start the server once to generate the config under your profiles folder. Set your patrol route (ships with a Chernarus example — edit for other maps), then restart. 🐞 Bug reports & suggestions Found a bug or have an idea? Let us know on our Discord — every report helps make the mod better. BS Patrol Tank Copyright 2026 BS Patrol Tank. You are NOT allowed to repack or reupload this mod or its contents. This item is not authorized for posting on Steam, except under the Steam account https://steamcommunity.com/id/cjcarww. REPACKING IS PROHIBITED. If you would like authorization, you can request it on our Discord.
No file I/O on hot paths, no timers created per event, no per-player-per-frame hooks.
Every server-visible override preserves its chain.
0.0752% of each server frame at 100 players (0.752 ms/s). Counts hook dispatch and timers only, not what the hooks do inside. Methodology.
Structural load of the 328 scripted mods analyzed, lightest on the left. This mod's bar is lit; 27 others share it. Ranked list.
Repeating timers carry 99.9% of this mod's structural load. 0.752 ms/s in all.
2 hooks · 0.0004 ms/s
2 hooks · 0.000004 ms/s
5 timers · 0.75 ms/s
| Event hooksrun when something happens: an inventory move, a hit, an action | 2 hooks | 0.0004 ms/s | <0.1% | PlayerBase.EEHitBy, ZombieBase.EEHitBy |
| Lifecycle hooksrun when an entity is created, loaded or deleted | 2 hooks | 0.000004 ms/s | <0.1% | MissionServer.OnInit, PlayerBase.EEKilled |
| Repeating timersstay in the timer queue, which is walked every frame | 5 timers | 0.75 ms/s | 99.9% | 2 × every 25 ms, 2 × every frame, every 500 ms |
Counts how often each hook is dispatched and how many timers stay alive, not what the code inside does. Some rates are order-of-magnitude estimates; the methodology lists which.
Where this mod runs often
Hooks on per-frame and high-rate surfaces, with what their bodies call. Body work, not the hook itself, is what costs frame time.
Which vanilla methods the mod hooks, which of them drop the chain, how often each hook fires, and which risky calls sit inside hot hooks.
How long hook bodies take, network cost, or engine-side load. Measured across live fleets, most server lag comes from the engine and world state, not mod script chains — a light footprint does not clear a mod of lag, and a heavy one does not convict it. Methodology.
Everything else
All 7 overrides
Surface is the dispatch tier the rubric can price (— = unpriced); server is whether the override exists on a dedicated server; super() shows whether the vanilla chain is preserved on a server.
| method | surface | server | super() | where |
|---|---|---|---|---|
ActionConstructor.RegisterActions |
— | yes | ✓ | BTR_82A.pbo::scripts\4_World\BS_BTR_ActionConstructor.c:3 |
ExpansionIcons.Generate |
— | yes | ✓ | BTR_82A.pbo::scripts\3_Game\Icon.c:3 |
MissionGameplay.OnInit |
T3 | yes | ✓ | BTR_82A.pbo::scripts\5_Mission\MissionGameplay.c:4 |
MissionServer.OnInit |
T3 | yes | ✓ | BTR_82A.pbo::scripts\5_Mission\base.c:19 |
PlayerBase.EEHitBy |
T2 | yes | ✓ | BTR_82A.pbo::scripts\4_World\BS_BTR_PlayerBase.c:4 |
PlayerBase.EEKilled |
T3 | yes | ✓ | BTR_82A.pbo::scripts\4_World\BS_BTR_PlayerBase.c:15 |
ZombieBase.EEHitBy |
T2 | yes | ✓ | BTR_82A.pbo::scripts\4_World\BS_BTR_DefenderDamage.c:76 |
Dispatch surfaces and timers the grade prices
| surface | tier | rate (Hz) | rate source | ms/s |
|---|---|---|---|---|
ZombieBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.EEHitBy | T2 | 8.0 | placeholder | 0.0002 |
PlayerBase.EEKilled | T3 | 0.1 | placeholder | 0.0000 |
MissionServer.OnInit | T3 | 0.1 | placeholder | 0.0000 |
Repeating timers
| period (ms) | residency ms/s | firing ms/s | where |
|---|---|---|---|
| 0 | 0.1400 | 0.024800 | BTR_82A.pbo::scripts\4_World\BS_BTR_TurretDebris.c:67 |
| 0 | 0.1400 | 0.024800 | BTR_82A.pbo::scripts\4_World\Bsbtrpatrol.c:269 |
| 25 | 0.1400 | 0.000992 | BTR_82A.pbo::scripts\4_World\Bsbtrdrivecontroller.c:129 |
| 25 | 0.1400 | 0.000992 | BTR_82A.pbo::scripts\4_World\Bsbtrpatrol.c:188 |
| 500 | 0.1400 | 0.000050 | BTR_82A.pbo::scripts\4_World\BS_BTR_TurretDebris.c:41 |
Includes 0.000 ms/s from placeholder-rated surfaces.
Load-order constraints (CfgPatches)
What each PBO declares: its addon identity and the addons it requires to be loaded first (requiredAddons). A partial load-order signal from the mod's own metadata.
BTR_82A.pbo
BTR_82ArequiredVersion 0.1 — requiresDZ_Data,JM_CF_ScriptsBS_Tank_PatrolrequiredVersion 0.1 — requiresDZ_Data,DZ_Gear_Consumables,DZ_Gear_Camping,JM_CF_ScriptsBS_Tank_BoxsrequiredVersion 0.1 — requiresDZ_Data,DZ_Scripts,DZ_Gear_ContainersBS_BTR_Patrol_ConfigrequiredVersion 0.1 — requiresDZ_Data
census 1.1 · findings 1.1 · hash d11baff37bfd2cea