Artillery (Support System Package) 1.04 [Script Version]
Multiplayer Coop Compatible
By SoccerBoy_TW


this is similar to what CoC had with their CoC Unified Artillery 1.0. i would have imitated their 1.1 interface but i'm not talented enough for that at this time.
this was thought as an CO-OP module for people who travel in either small or big groups to be able to call artillery support from various weaponry.
this is not likely suitable for playing with people you don't know because they can hog the artillery indefinetly but if you're admin you can identify them by trying to access the battery.


Features:
An action interface to fully customize an artillery fire mission.
you can choose which battery you wish to shoot.
you can define [Mission type - Round Type - Rate of Fire - Number of Rounds].
you can also define the dispersion field of the artillery.
Ammo Limitation of each ammo type. (once an ammo type has been depleted you can use the others until the battery is resupplied. the user can adjust the time for resupply in the ASSP_Options.sqf)
M270 MLRS shoot'n Scoot Abillity which means that the markers will follow it around. (you can enable this in ASSP_Options.sqf)


installation:
place the demo mission into your "my documents\arma 2\missions" folder and load it up in the editor under the "chernarus" map and play it.
the demo mission is ment for the single player demonstration of how the system works, the script package is completely multiplayer compatible though.



1) if you wish to use this in your mission copy the "Artillery_ssp" folder, the description.ext and the ASSP_Options.sqf file to your mission folder "my documents\arma 2\missions\YOUR_MISSION_NAME".
   in your init.sqf add the following lines:
					     arty_init = true

  -if you do not have an init.sqf then create one.



2) now you can go ingame into the editor and place the following objects:
									  Trigger - for initialization
									  Artillery Unit(s) - any unit artillery unit 
								          Artillery Module - real module not the virtual one
									  Game Logic - for battery detection and radio limitation


  -now that you have all the things needed lets start with them



3) Trigger - set the following settings to the trigger
		condition : arty_init
		onactivation : arty_init = true; arty_in = [] execvm "artillery_ssp\arty_init.sqf"



4) Artillery unit - add any unit you wish but don't mix units with others in a single grouping.




5) artillery module - "Synchornize" (F5) it to your artillery's group leader. 
                      this is what controls your artillery. 



6) Game Logic #1 - "Synchronize" (F5) this Module with your Artillery Modules (Maximum of 3 modules) and name it "Arty_detect" *without quotes*



7) Radio Access - add this line to each soldiers Init line that you want to have access to the batteries ->>   arty_radio = [this] execvm "artillery_ssp\arty_radio.sqf"



 - now you should be ready to test it.

 - once ingame the system will take 10-15 seconds to start. i've given it a 10-15 seconds timer to ensure that everything is created before you start using anything in the menu
 - once it initialized you should be able to access your battery options in your ACTION MENU.
 - I hope you all enjoy my work and find this useful until somebody else does something better.


bugs:
Minor - in my demo mission inside this package don't set target and map travel at the same time or you'll lose control of your battery
Minor->Severe - first time map loading is still bugged and i don't know why it is. once you've loaded a map you'll have to restart the mission to fix it. you should only need to restart once after server boot up.


FAQ:
Q: Is this Multiplayer Coop Compatible?
A: Yes

Q: Can i use this in PvP?
A: Not at the moment, no.

Q: My Artillery is out of ammo what do i do now?
A: you can still fire the other ammo types untill you're battery gets resupplied unless you have disabled it. you can set up the resupply rate on when your batteries get resupplied
   in the ASSP_Options.sqf. once that time runs out it will be rearmed with the exact ammo pool it started out with and will be then ready to accept new fire missions
   for that ammo type.



Credits:
Created by SoccerBoy_TW
BIS for their awesome artillery module, without their work with the ballistic calculations this wouldn't work at all.
CoC for the inspiration of their Unified Artillery 1.0 Action Menu Interface from OFP.
OFPEC which was a big big help with all the knowladge on there.
Junker for the idea to make the hints silent.
various information from many many places sorry if i didn't name them all.


if you wish to edit and release this please notify me.
you're free to distribute this to where ever you wish to.


Changelog:

V1.04 Hotfix 1
Fixed: Dispersion values are now properly used.
Changed: Dispersion values for M119 to 100m\200m\300m, M252 to 50m\100m\150m, M270 to 50m\100m\150m\200m\250m\300m.

V1.04
Changed: Changed the format from SQS to SQF.
Changed: Opened up the Artillery and Air Support to everybody with a first come first serve deployment
Added: Option to turn off the Artillery for mission makers in the ASSP_Options.sqf
Added: You can now either disable or enable respawn mode in the ASSP_Options.sqf for performace reasons. respawn mode is when the player respawns that he gets his menus back.
Added: Option to limit the radio menu through execution of a script.
Added: Auto Battery detection and classification through synchronization.
Changed: Rate of Fire Menu chagned to Immediate\Fast\Semi-Fast\Slow which represent 0\1\2.5\5 Seconds.
Changed: Mission Wording of Timed to Suppression.
Changed: Duration Menu is dynamic now depending on which mission mode you're in. in Suppression the options are Short\Medium\Long\Very long which represent 10\15\25\35 Seconds. in Immediate its the traditional Add\Subtract.
Changed: The duration menu for the M270 is dynamic depending on how many vehicles there are. max 15 duration.
Changed: The batteries won't be resupplied until they run out of one ammo type.
Changed: Now all 3 batteries can be what ever weapon you wish to choose (M119\M252\M270). example you can now have M119\M119\M252 or M270\M252\M252. etc.
Changed: Dispersion Add and Subtract Menu have been replaced with set ranges of: for MLRS its 50\100\150\200\250\300 Meters. for all the others its 100\200\300\400\500 Meters.
Added: Added an Option to cancel a fire mission in progress but only after the first shot.
Added: A few voice Radio Dialogs for the FDC.

V1.03 Hotfix 1
Fixed: Improved overall game performance caused by some scripts related to player disconnection or player respawn and now these scripts should only run in multiplayer.

V1.03
Added: Ammo limitation and Ammo Resupply Interval. Resupply Interval is adjustable by the user in the ASSP_Options.sqf. the user can also disable resupply all together.
Added: Ammo Readout to the Action Menu to view your current ammo pool for your current battery.
Added: Dispersion Ability for 50m to 200m and have added the Dispersion to the Dialog on mission submission.
Added: Ability to move the M270 MLRS and have the Unit Marker and Range Markers Follow it around.
Added: Added Version Number to the Initialization Message so users know which version they are currently running.
Fixed: Corrected some typos in the dialog.
Fixed: Fix a problem with not being shown who is in charge of the battery you're trying to acquire.
Changed: the Ability to set the rate of fire to 0 seconds so that all guns can fire almost all at once.
Changed: increased preparation time between mission submission and shots by 2x.
Removed: Reload text between fire missions.
Removed: Unneeded code in some scripts.

V1.02
Fixed: Fixed a Limited Detection issue with the M252 Mortars and M270 MLRS.

V1.01
Changed: Removed the pings from the hints.