Jebus - Just Editor Based Unit Spawning
Version: 1.454
Release Date: 2020/9/19
Author: DreadPirate
Short Description:
This script takes editor-based groups and respawns them when the group is eliminated
Description:
The group's waypoints are saved
The group's loadouts are saved
Multiple respawn positions are available
Spawning can be synchronized with a trigger to create groups when needed
The number of respawns can be set, or it can respawn infinitely
The respawn delay can be a fixed number or a range
A pause radius is available so groups don't spawn on top of their enemies
An exit trigger can be used to exit the script early
Integrated GAIA support (https://forums.bistudio.com/topic/172933-mission-template-stand-alone-gaia-make-missions-fast-by-using-mcc-gaia-engine/)
A custom init string can be used to run your favourite patrol script, attack script, gear script, etc.
Units are added to Zeus automatically
Use it for ambient combat, waves of attackers, random patrols or whatever else you think of.....
Installation / Usage:
Copy the jebus folder into your mission folder
Copy description.ext into your mission folder (or merge description.ext with yours)
Place a group in the editor
Call the script in the initialization box of the leader or group (examples given below)
Option: Synchronize a trigger with the group leader. The group will not spawn until the trigger is activated
Installing to a sub-folder:
Copy the jebus folder into your mission sub-folder (eg scripts)
Copy description.ext into your mission folder (or merge description.ext with yours)
Edit description.ext to point to sub-folder (eg #include "scripts\jebus\cfgFunctions.hpp")
Proceed as normal
Parameters:
this = Leader of a group
"LIVES=" - Number of times group should respawn. Integer or array [minLives, maxLives]. Default is infinite lives
"DELAY=" - Delay in seconds before respawning. Number or array [minTime, maxTime]. Default is 30 seconds
"CACHE=" - Group will cache until players are within "CACHE=" metres. Default is no caching
"REDUCE=" - Group will cache until players are within "REDUCE=" metres. Default is no reducing
"START=" - Initial spawning delay. Use if you spawn multiple groups by one trigger to avoid spawn lag. Default is 0.
"GAIA_MOVE=" - Group added to GAIA with "MOVE" parameter
"GAIA_NOFOLLOW=" - Group added to GAIA with "NOFOLLOW" parameter
"GAIA_FORTIFY=" - Group added to GAIA with "FORTIFY" parameter
"FLYING" - Air vehicles will spawn already flying
"RESPAWNMARKERS=" - Array of alternate respawn positions
"PAUSE=" - Radius in which enemies will pause the spawner. Default is 200.
"EXIT=" - Name of exit trigger. Group will not respawn again once trigger is activated
"INIT=" - Init string to run upon spawning. (Use "_proxyThis" where you would usually use "this" in a script or function call). Default is empty string.
"DEBUG" - Will provide debugging information
Examples:
0 = [this] spawn jebus_fnc_main;
Respawns group with default parameters. Uses editor waypoints.
0 = [this, "LIVES=", [4,8]] spawn jebus_fnc_main;
Respawns group 4 - 8 times. Uses editor waypoints.
0 = [this, "DELAY=", [30,60]] spawn jebus_fnc_main;
Respawns group after 30 - 60 seconds delay. Uses editor waypoints.
0 = [this, "CACHE=", 500, "GAIA_NOFOLLOW=", "3"] spawn jebus_fnc_main;
Group uncaches when players are within 500m of spawn position. Assigns group to GAIA zone 3.
0 = [this, "PAUSE=", 100, "INIT=", "[_proxyThis, 'agia'] execVM 'UPS.sqf'"] spawn jebus_fnc_main;
Group initializes Kronzky's UPS script to patrol a marker named 'agia'. Respawning will pause if enemies are within 100m of spawn position.
0 = [this, "GAIA_MOVE=", "9", "RESPAWNMARKERS=", ["m1", "m2"]]spawn jebus_fnc_main;
Group will respawn randomly at its editor position or "m1" or "m2". Assigned to GAIA zone 9.
0 = [this, "GAIA_NOFOLLOW=", "10", "EXIT=", myExitTrigger] spawn jebus_fnc_main;
Group will respawn until myExitTrigger is activated. Assigned to GAIA zone 10.
Changelog:
v1.0 (2014/10/28) - First release
v1.1 (2014/11/09) - Added support for Motorized, Mechanized & Armored groups. Added trigger activated spawning.
v1.2 (2015/02/21) - Added debugging information. Added variable respawn delay. Improved readability of installation and code. Various tweaks.
v1.3 (2015/03/17) - ArmA 2 first release. Made parameters more user friendly. Added variable number of respawns. Added simple patrol script. Added simple attack script. Added pilot kill script.
v1.31 (2015/03/30) - Added reset when no enemies are within certain radius. Added Arma 2 demo mission.
v1.32 (2015/05/08) - Switched to using nearEntities instead of nearestObjects. Changed activation and reset to detect players.
v1.33 (2016/3/27) - Eden update. GAIA support.
v1.34 (2016/4/3) - Waypoint support. Variable respawn position support. Exit trigger support.
v1.35 (2016/4/29) - Fixed caching. Save and restore editor loadouts
v1.36 (2016/10/2) - Script can be called from group init. Vehicle locked status and cargo saved.
v1.37 (2017/1/1) - Fixed trigger activation, planes, inventory
v1.38 (2017/2/26) - Vehicles respawn in editor positions. "REDUCE=" added
v1.39 (2017/3/10) - Skill levels are saved. Various tweaks and fixes.
v1.40 (2017/10/2) - Dynamic Loadout support. "START=" added. Multi vehicle groups support RESPAWNMARKERS.
v1.41 (2017/12/29) - Stopped units moving to default spawn position when using RESPAWNMARKERS
v1.42 (2018/5/6) - The behemeth update. More vehicle attributes saved
v1.43 (2018/7/1) - Variable names are saved for all group members and vehicles. Various tweaks and fixes
v1.431 (2018/7/6) - Fixed a bug with trigger activation
v1.432 (2019/6/1) - Variable names are now *actually* saved for all group members and vehicles. Pause radius default is now 0
v1.433 (2019/12/29) - Vehicles spawn 2m off ground (Global Mobilization fix)
v1.45 (2020/4/17) - Major code rewrite. Changed the Global Mobilization fix to use config entries. Added a recruit function
v1.451 (2020/8/13) - Fixed crew member roles not being assigned correctly
v1,452 (2020/8/19) - Fixed empty groups not being deleted. Changed how units are added to Zeus. Support for static weapons
v1.453 (2020/9/15) - Fixed Drone support
v1.454 (2020/9/19) - Group ID is saved. Unit elevation is saved. Dynamic Loadout support withdrawn for now
Version 1.454
Group ID is saved
Unit elevation is saved. Groups can be spawned in buildings, on ships, etc.
Dynamic Loadout support withdrawn for now (It wasn't working properly anyway)
Download
https://drive.google.com/file/d/1TJkR0Io5nNCH49xlFTyeWGLcowpQQB3G/view?usp=sharing
GitHub
https://github.com/DreadPirateAU/JEBUS
Jebus - Just Editor Based Unit Spawning v1.452