Jump to content
thy_

[Release] Controlled Spawn And Waypoints Randomizr

Recommended Posts

CSWR is an Arma 3 script that allows the Mission Editor to spawn AI units and vehicles (by ground or air paradrop) and makes those groups move randomly to waypoints forever in life, where spawn-points and waypoints are easily pre-defined by Mission Editor through Eden marker's positions. CSWR accepts faction loadout customization, including additional customizations for sniper teams and paratroopers. CSWR almost doesn't change any original Arma AI behavior, saving server performance and Arma 3 integrity. 

 

Creation concept: bring life to the mission through non-stop units' movements with some level of unpredictability without losing control of server performance and what AI units can do.

Special thanks: To the old (but gold) "T8 Units" script for the inspiration over the years.

 

How to install / Documentation: https://github.com/aldolammel/Arma-3-Controlled-Spawn-And-Waypoints-Randomizr-Script/blob/main/_CSWR_Script_Documentation.pdf

 

 

What to expect from the CSWR script: 

 

  • No dependencies from other mods or scripts;

  • Manually define which markers the faction can use as spawn-points;

  • Create unlimited different types of spawn-points:

    • Common spawn: for units and ground vehicles;

    • Vehicle spawn: exclusive for ground vehicles;

    • Heli spawn: exclusive for helicopters;

    • Paradrop spawn: for units and ground vehicles;

    • Sectorized spawn: all spawn types can be sectorized to be available only for specific groups/vehicles inside a faction;

  • Spawn-points can be triggered by:

    • Mission starts: right after the mission gets started;

    • Timer delay: a down count;

    • Trigger delay: when some editor's trigger is activated;

    • Target delay: when a specific unit or vehicle or building is killed/destroyed;

  • Once the spawn-points are created, the script will spawn the groups randomly through their faction spawns;

  • There is no re-spawn. Death is death for units and vehicles spawned by CSWR; 

  • Vehicles with turrets spawned by CSWR, when damaged, their gunners never leave the vehicle, doing the last standing in combat until death;

  • Manually define which markers will be used as one types of destinations (waypoints) for AI units and vehicles;

  • Create unlimited different types of destinations:

    • Move: groups will move randomly through your predefined move-markers;

    • IMPROVED! Watch: sniper groups will search for the best high position to cover one of your predefined watch-markers;

    • Hold: soldiers, civilians, or ground vehicles (mainly tracked ones) will set position facing a specific direction predefined by you with hold-markers; 

    • IMPROVED! Occupy: soldiers and civilians will search for a building around a predefined occupy-marker, and will go there, get in, and stay;

    • IMPROVED! Sectorized destination: all destination types can be sectorized to be available only for specific groups/vehicles inside a faction;

  • Once the destination markers are created, CSWR will take care of taking (or not) the groups there, randomly;

  • Manually set the number of soldiers, who they are, their loadouts, who belongs in each group type, and even ground vehicles and helicopters;

  • Add or remove Night-Vision-Goggles and Flashlights for one or more factions, easily through "True" or "False" management;

  • There are 7 infantry templates and 8 vehicle templates to customize (with modded or vanilla things) for each faction; 

  • Define easily how many AI groups are in-game, what squad types they belong to, and their behavior: safe, aware, stealth, combat, chaos. For more details, check the documentation;

  • IMPROVED! Available white and blacklist for buildings and ruins when groups are using Occupy movements;

  • All vehicles and units spawned by CSWR can be (ON/OFF) editable by Zeus;

  • Set if the CSWR should wait for another script load first on the server;

  • Debugging: friendly error handling;

  • Debugging: hint monitor to control some AI numbers;

  • IMPROVED! Debugging: full documentation available.

    .

 

Video demo:

 

Video tutorials:

 

xxNdgow.jpg

 

j3usqPA.jpg

 

0ltSltQ.jpg

 

qAXINes.jpg

Check the file above on GitHub.

 

ogxkwQP.jpg

Check the file above on GitHub.

 

bStohey.jpg

Link on this post header.

 

yIO37x4.jpg

(Above) Editor set if all one side can use night vision goggles (or just parachuters, or only sniper teams), or only flashlights, or both gears or none. If flashlights are available they need to be on all the mission long or just when each AI decides.

 

zIXDcsN.jpg
(Above) WATCH destination (specific for sniper groups) is working much better with high natural terrains, regardless of whether the map is an official one.

 

QEWsgC8.jpg
(Above) Group executing OCCUPY destinations can get in high towers with better distribution positions inside.

 

Ga6HQz7.jpg
(Above) Group executing OCCUPY, if they select an acceptable ruin/destroyed building, the group will always get in a crouch in this kind of position.

 

oYHXlMH.png
(Above) Even heavy ground vehicles can be paradropped.

 

pxvNKxb.png

(Above) All groups paradropped, when touched the ground, they will focus on regrouping with their squad leader before starting their missions.

 

iZUKBcg.png

(Above) Helicopters automatically identify where all safe and not busy helipads are to land if they need to rearm, repair, refuel, or heal their wounded crew.

 

 

Dependencies:

  • None 😉

 

Download:

- On GitHub: https://github.com/aldolammel/Arma-3-Controlled-Spawn-And-Waypoints-Randomizr-Script

- On Steam Workshop: https://steamcommunity.com/sharedfiles/filedetails/?id=2740912514
 

Missions using it:

 

- - - - - - - - - - - 

 

Changelog:

Apr, 14th 2024 | v6.5.2: news, fixes and notes. 


Known issues:

- Watch > Sniper groups still not considering buildings when no natural highlands to take a position for overwatching;

- Occupy > If you hide a building and the building can be occupied, the groups will consider that hidden building as a regular place to occupy;

  Paradrop > When parachuters are civilians, they're crouched right after landing and stay like this forever.

- Move Hold > Sometimes tracked vehicles are not facing exactly the marker direction configured by the editor;

 

  • Like 7
  • Thanks 3

Share this post


Link to post
Share on other sites

Script updated. First message has been updated as well. Cheers.

Share this post


Link to post
Share on other sites

Script updated. First message has been updated. Cheers.

Share this post


Link to post
Share on other sites

POST EDITED: I already fixed it.

Share this post


Link to post
Share on other sites

Script has been updated 😉

Jul, 8th 2022:

  • Fixed vehicles spawn problems when a lot of them;
  • Fixed infantry could not walk properly if in "safe" behavior;
  • A bunch of performance improvements;
  • Documentation has been included;
  • initServer.sqf has been removed.

The first post was updated as well!

 

 

  • Like 1

Share this post


Link to post
Share on other sites

Script has been updated 😄

 

Jul, 14th 2022 | v2.1

  • Added "Stealth" as an option for spawned units/vehicles;
  • Improved the vehicle creation, now each vehicle has its electronics/signals configured when available;
  • Improved the Editor option to turn On and Off a faction;
  • Documentation has been updated;

The first post was updated as well!

  • Like 1

Share this post


Link to post
Share on other sites

Script has been updated o/

 

Aug, 10th 2022 | v2.5

  • Now it's possible to customize the loadout for each spawned faction;
  • Documentation has been updated.

Screenshot-2.png

 

The first post was updated as well!

  • Like 1

Share this post


Link to post
Share on other sites

Script has been updated 😎

 

Oct, 18th 2022 | v2.7

  • Fixed > Crewmen were not getting customized loadout;

  • Improvement > fn_CSWR_debug.sqf file has been merged with fn_CSWR_spawnsAndWaypoints.sqf one;

  • Improvement > Now, mission editor has a specific file to customize their AI units: fn_CSWR_loadout.sqf;

  • Improvement > Loadout function is much more reliable to custom;

  • Documentation has been updated.

 

The first post was updated as well!

  • Like 2

Share this post


Link to post
Share on other sites

Hello will check this out. Question how can you turn off the a spawn point. Is there a set number of times you can set or can you trun it off like you can we JEBUS. Each group can be forced to not spawn v once a trigger is met. How does your script work with stoping the spawn points. Avibird 

Share this post


Link to post
Share on other sites
1 hour ago, avibird 1 said:

How can you turn off the a spawn point.

 

CSWR is a script to create spawn points for AI, be it from any Side. After the AI units spawn where you authorized the AI to be spawned, the CSWR will tell the AI to go to some points of interest (pre-defined waypoints) that you allow the AI to go. Having said all that, it's not possible to disable the spawn functionality because the script is made for exactly that. If you don't wanna units to spawn in a specific area, just don't set any spawn points in that region.

 

 

1 hour ago, avibird 1 said:

Is there a set number of times you can set or can you trun it off like you can we JEBUS. (...) How does your script work with stoping the spawn points.

 

CSWR is just to spawn the AI (once right before the mission starts), not to Re-spawn them (once more or multiple times).

The focus here is to populate a mission map as fast as possible, giving customization options like:

  • For which Side(s) you want to spawn dynamically and how big each side's unit group must be; 
  • Where the AI units will spawn randomly through the pre-defined spawn points (landmarks) dropped on the map; 
  • To where AI is able to go (forever) randomly through the pre-defined waypoints (landmarks) dropped on the map, also randomly taking a break or non-stop movements;
  • What is the behavior of each unit group, even when in vehicles;
  • What loadout the side's unit groups must have (On each side, you can for example remove all night visions goggles, or add a specific item, or even change their backpack without losing the items inside the original unit's backpack, preserving their ammo and stuff);

 

1 hour ago, avibird 1 said:

Each group can be forced to not spawn v once a trigger is met. 

 

No. All pre-defined side unit groups will spawn right before the mission starts. 

 

 

@avibird 1, feel free to ask anything about the script. And for detailed information, you got the documentation as well:
https://github.com/aldolammel/Arma-3-Controlled-Spawn-And-Waypoints-Randomizr-Script/blob/main/controlled-spawn-and-waypoints-randomizr.VR/CSWRandomizr/_CSWR_Script_Documentation.pdf

 

Cheers.

  • Like 1

Share this post


Link to post
Share on other sites

I think if you had away to stop the spawning of units in a set zone that would make the script more versatile mission designing. If you ever used JEBUS a trigger can be setup in each group to stop spawning fir example kill the office blow up that building ect. I really think if you can add that to this script it will make it more versatile to you in any mission. If you can't stop the spawning during a mission then you are limited on how you can use it with mission designing. Just my two cents. 

Share this post


Link to post
Share on other sites
1 hour ago, avibird 1 said:

I think if you had away to stop the spawning of units in a set zone that would make the script more versatile mission designing. If you ever used JEBUS a trigger can be setup in each group to stop spawning fir example kill the office blow up that building ect. I really think if you can add that to this script it will make it more versatile to you in any mission. If you can't stop the spawning during a mission then you are limited on how you can use it with mission designing. Just my two cents. 

 

I'm trying hard to understand why I should stop the spawning of my unit groups IF this script was built to spawn all units at once and in the mission starts... 🙄 Lets read the first topic again: "CSWR is a simple and limited spawn and waypoints solution (...)".

Share this post


Link to post
Share on other sites

What can't you understand. It's always nice to have more options when designing a mission with random patrols with spawning units but if you can't stop the units from spawning it very hard to design a mission with multiple objects in the mission if the units never stop spawning in. 

Share this post


Link to post
Share on other sites
11 hours ago, avibird 1 said:

(...) if you can't stop the units from spawning it very hard to design a mission with multiple objects in the mission if the units never stop spawning in

 

 

@avibird 1 ??

Let me help you:

 

Open your fn_CSWR_population.sqf, set the BLUFOR like down below and I promise that you'll see just 4 blufor soldiers spawning at once. So, why "units never stop spawning"? 

if (CSWR_spawnBlu) then {
		
		// DEFINING GROUPS: BLUFOR
		// Define the number of soldiers and who is who in each type of group.

			// Vehicles
			private _bluVehLight   = ["B_G_Offroad_01_armed_F"];
			
			// Soldiers
			private _bluSquadLight   = ["B_Soldier_TL_F", "B_Soldier_F"];

		// SPAWNING GROUPS: BLUFOR 
		// Define each group and their features and destination.
		
			// Vehicles Groups
			// [ faction, faction's spawnpoints, faction's vehicle size, initial crew behaviour ("SAFE", "AWARE", "COMBAT", "STEALTH", "CHAOS"), vehicle waypoints ]
			
			[BLUFOR, CSWR_bluSpawnPoints, _bluVehLight, "SAFE", THY_fnc_CSWR_wpGoToAnywhere] call THY_fnc_CSWR_vehicle;
			
			
			// Soldiers Groups
			// [ faction, faction's spawnpoints, faction's squad size, initial squad behaviour ("SAFE", "AWARE", "COMBAT", "STEALTH", "CHAOS"), squad waypoints ]
			
			[BLUFOR, CSWR_bluSpawnPoints, _bluSquadLight, "SAFE", THY_fnc_CSWR_wpGoToAnywhere] call THY_fnc_CSWR_people;
		
	}; // blufor ends.

 

I DO recommend you to run the example and, through Zeus ("Y" key), watch the sides playing. The CSWR will spawn exactly and just the number of unit groups you have set in fn_CSWR_population.sqf.

  • Like 1

Share this post


Link to post
Share on other sites

Yes I understand but if you can't stop the units from respawning. You can't have an object or mission ending based on no units in the area alive. That is what I am  saying. Hope you understand now what I am saying here the script limits you as a mission designer if you want to use your script. It's great for a ongoing persistent game game type 

Share this post


Link to post
Share on other sites
3 minutes ago, avibird 1 said:

you can't stop the units from respawning.(...)

 

Again: there is NO respawning in the CSWR script, @avibird 1.
If you populate just 4 OpFor soldiers with CSWR, and you got your mission configured to finish if all OpFor is dead, the mission will be finished as expected, @avibird 1.

 

Share this post


Link to post
Share on other sites

Let me test the script with respawn system to check if the script is running more times for some unknown reason... 

Share this post


Link to post
Share on other sites

Lol my bad only one time spawn at strat of mission  for a group with random waypoints generated by marker positions. I thought it was a spawning script with no limits on the spawn once it started. Lol 

  • Like 1

Share this post


Link to post
Share on other sites
5 hours ago, thy_ said:

Let me test the script with respawn system to check if the script is running more times for some unknown reason... 


The script works exactly as described. 

 

5 hours ago, avibird 1 said:

Lol my bad only one time spawn at strat of mission  for a group with random waypoints generated by marker positions. I thought it was a spawning script with no limits on the spawn once it started. Lol 


😅

  • Like 1

Share this post


Link to post
Share on other sites

I just made a video explaining how to use the script. The head's topic has been updated.

 

Share this post


Link to post
Share on other sites

Script has been updated 😎

 

Jan, 20th 2023 | v2.8:

  • Improvement > You can define through fn_CSWR_loadout.sqf file a custom helmet for infantry and other only for heavy armored crewmen;
  • Documentation has been updated.

 

Screenshot-4.jpg

Share this post


Link to post
Share on other sites

The script and all links and information in the main post have been updated! 😎

 

Feb, 11th 2023 | v3.2:

  • Added > Added an option that the mission editor sets a timer before the CSWR starts to run;
  • Added > Included more options to customization infantry composition (from 3 templates to 6);
  • Fixed > A huge server performance killer has been fixed (script was running on background without spawnpoints on map);
  • Fixed > Spawnpoint markers are not visible anymore when debug mode if off;
  • Improvement > Added a massive, friendly and automatic errors handling to CSWR, helping a lot the mission editor;
  • Improvement > If the mission editor sets spawnpoint markers or destination markers out of the map, they get a warning and the marker is ignored;

  • Improvement > Lot of code reviewing;
  • Documentation has been updated.

 

P3t4nc2.jpg

 

 

  • Like 1

Share this post


Link to post
Share on other sites

The script and its information in the main post have been updated! 😛

 

Mar, 9th 2023 | v4.0:

  • Improved > Not needed to syncronize manually spawns and destination marker between script file and Eden anymore;
  • Improved > Each group (troops and vehicles) restores the preset behavior configured by the Editor after each new destination is reached;
  • Improved > Uniform, vest and backpack has a new function called "REMOVED" that allows the editor, for any reason, to spawn all their units with no those things;
  • Improved > Groups (troops and vehicles) set as "be_STEALTH" now are operation on "White" combat mode (Hold Fire but Engage At Will) and not "Green" anymore (Hold Fire and disengage);
  • Improved > The file fn_CSWR_spawnsAndWaypoints.sqf has been renamed to fn_CSWR_management.sqf;
  • Added > Vehicles and soldiers can (or not) spawn separately with specific spawn points for faction vehicles;  
  • Added > Sniper teams have their own loadout customization (uniform, vest, rifle, ammo, optics and its attachments); 
  • Added > Watch moviment exclusively for sniper teams (_move_WATCH) makes the team associated look for high spots to stay overwatching the markers on the map until the mission ends, with no new moves;
  • Added > Occupy moviment for troops (_move_OCCUPY) makes the team associated occupy some building in a range, moving to the next one after a pre-defined time by the editor;
  • Added > Occupy moviment has a blacklist of building types and locations that troops must ignore;
  • Added > Hold movement allows troops and vehicles to hold their position for a long time. Tracked vehicles have priority, staying in the center of the marker, looking almost exactly to the marker direction configured by the editor;
  • Added > Each faction in the game can get its global formation easily customized. There are 2 presets for each faction;
  • Documentation has been updated (huge changes).

 

iLgkCvv.jpg

 

 

 

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

A hotfix has been dropped!

 

Jul, 22nd 2023 | v4.0.1:

  • Fixed > Old backpacks were been dropped on the ground if those were replaced with a new one by the editor (fn_CSWR_globalFunctions.sqf file updated).
  • Like 2

Share this post


Link to post
Share on other sites

I can see this being useful. Does it read mod factions and can it be placed in trigger for delayed deployment? Can you add a patrol, attack and defend option? All bis functions. 

  • Like 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×