Reb’s Sector Warfare System (Alpha)
Example mission with a drop-in sector control system that spawns and despawns units around the player, allowing you to populate the entire map with sectors.
Also included is a sector ownership persistency system, disabled by default. It works in singleplayer and MP, should work on a hosted server like GTX gaming’s too. It uses the serverprofile to save, but sorts by map and mission name, so it shouldn’t interfere with other missions you build.
WHY DID I MAKE THIS?
The problem with ArmAIII’s sector control AI modules is that they are restricted to groups and can’t be simulated. Performance limits you to a small area of the map unless you enjoy taking 12 hours to find something to shoot at. Additionally, their behavior is simplistic, and they only waypoint to the center of sectors.
I also have found dynamic simulation not to be much of a solution either, a couple hundred dynamically simulated AI still burn frames and can’t move. Placing them also spoils the challenge for the mission maker.
The ALiVE mod is marketed essentially as a solution but it is an overbuilt system that chews performance just by running, and has almost no consideration for performance with the way it concentrates its AI forces.
WHAT DOES RSWS DO?
Close-proximity sectors are linked by a background warfare system, which very simply imitates a virtual war on the map. Without the player being present, frontline sectors will change sides on their own.
When the player is in a sector that is contestable, AI will spawn within proximity to it to defend and attack it.
Sectors have several conditions to be able to attack and reinforce, primarily related to them being linked back to the sector owner’s base. A cutoff sector can spawn defenders but cannot attack, be reinforced, or reinforce other sectors.
Sector AI have different behaviors. There are four types of sector AI:
– Attack. These AI spawn outside of a contestable sector to attack it.
– Defense. AI that spawn in response to enemy in vicinity of their sector. Defense AI can also spawn static weapon teams on pre-placed helper objects if you use them.
– QRF (Quick React Force). Counterattack AI that will spawn in reaction to a player contesting their sector.
– CQB. AI that will spawn inside of buildings inside of their owned sector when a player is in it. Their pathing is locked until a player comes within close proximity, which makes for some very interesting CQB situations.
AI spawns can spawn vehicles, helis, and CAS assets. Spawned AI have different behaviors, such as doing flanking maneuvers on sectors, occupying and holding high elevation area, or random patrols. Air assets can be toggled or disabled by side, and the proportions of vehicle spawns to infantry can also be changed.
AI spawns pull from unit pools, so no faction groups are necessary. No giant tank platoons that don’t know how to path anywhere! Multiple unit pools can be made for each side, so you can define what kinds of squads you want to spawn. Squads are randomly sized as well.
Spawned AI skills are also configurable by side. AI spawns are also soft-capped by a global AI limit.
There is an artillery system as well. Artillery is called to suppress sectors, counterbattery players, and do destruction fires on other point targets. Artillery can switch between multiple munition types, be it mortars, howitzers, Grad-style rockets, and heavy MLRS. Individual barrage munitions can also be tweaked, so you can have them fire mixed munitions. This system can be disabled by removing or commenting it out from the initServer.sqf.
HOW TO USE:
Like any other example mission, copy the contents of initServer.sqf, initPlayerLocal.sqf, and RSWS over to your mission folder. Set up a sector control mission any way you like, just add base markers (like the example’s).
COMPATIBILITY:
So far I have tested with LAMBS and DCO AI. They work fine, if anything augment the gameplay. I have toggles for disabling LAMBS group AI for spawned units.
TO-DO – Features I’d like to incorporate:
– Optional hunter AI that track/snipe players.
– CAP spawns in reaction to player using air.
– Radar anti-air battery spawns, probably incorporated similarly to the existing static weapons.
– Transport vehicles that spawn with and unload infantry squads.
– An event system that incentivizes players from all side to concentrate at the same place on the map to incentivize PVP, as well as incorporate some cool stuff like paradrops and airborne assaults.
– Better script unitization and a proper config.
DISCLAIMER
A big caveat is that this script is extremely alpha. Some functionalities like counterbattery and server persistence I still need to test with other people playing. It may be subject to massive revision. So far this script appears to be extremely lightweight but we will see when more players get added to the equation. The warfare system, AI spawns and despawns all appear to be working well.
Another disclaimer is that I mostly built this script with AI. I apologize if some of it looks like spaghetti code for you seasoned sqf scripters. If you have any improvements you’d like to add or see incorporated I am at all ears. I just want to have fun in ArmA.
Discord: https://discord.gg/4M9XMnswGw