Advertisement
Guest User

simple support module

a guest
Jul 12th, 2010
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.49 KB | None | 0 0
  1. 1.
  2. Overwiew
  3. 2.
  4.  
  5. 3.
  6. The approach for Simple Support Module is to have an easy-to-use module, which provides various support types in game, from the abstract HQ/Papa Bear source. Module is Single player and Multiplayer compatible. As bug-free as possible.
  7. 4.
  8.  
  9. 5.
  10. * Air Support
  11. 6.
  12. o Drop Ammunition Box
  13. 7.
  14. o Drop Units
  15. 8.
  16.  
  17. 9.
  18. * Airstrike
  19. 10.
  20. o by coordinates
  21. 11.
  22. o with Laser Designator
  23. 12.
  24.  
  25. 13.
  26. * Artillery Support
  27. 14.
  28. o Mortar
  29. 15.
  30. o Artillery
  31. 16.
  32.  
  33. 17.
  34. [edit] Quick Start
  35. 18.
  36.  
  37. 19.
  38. Once the Logic is placed in the editor, every player get the Support Module Communication Interface in the radio.
  39. 20.
  40. The player can request by pressing space, communication, and then selecting the type of Support he wants to have.
  41. 21.
  42. The player is pointing with the cursor to the position of the request, in 3D as well as on map.
  43. 22.
  44. [edit] Details
  45. 23.
  46.  
  47. 24.
  48. All functionality of the module can be highly customized thru the global variables, conditions, expressions, and the variables stored in the objects.
  49. 25.
  50. Air support planes/choppers spawn at a random position outside of every player's View (and hear) distance, and once their mission completed, disappear outside of View Distance.
  51. 26.
  52. The module has only optional arguments. (And synchronization to artillery or mortar battery's would be also optional, but it is not implemented yet.)
  53. 27.
  54. Every Feature of the Modul can optionally disabled, but by default all features are enabled.
  55. 28.
  56. The module behaves like a singleton, only one instance is created.
  57. 29.
  58. The module is independent from all other modules.
  59. 30.
  60. [edit] Mission designers reference
  61. 31.
  62. [edit] Variables
  63. 32.
  64.  
  65. 33.
  66. // ALL variables stored in missionnamespace
  67. 34.
  68.  
  69. 35.
  70. // number, default 10
  71. 36.
  72. BIS_SSM_MAXGROUPSIZE
  73. 37.
  74.  
  75. 38.
  76. // number in meters, default 2000
  77. 39.
  78. BIS_SSM_VIEWDISTANCE
  79. 40.
  80.  
  81. 41.
  82. // number in meters, default 3000
  83. 42.
  84. BIS_SSM_SPAWNDISTANCE
  85. 43.
  86.  
  87. 44.
  88. // number in meters, default 100 or 150
  89. 45.
  90. BIS_SSM_FLYINHEIGHT
  91. 46.
  92.  
  93. 47.
  94. // number in seconds, default 20
  95. 48.
  96. BIS_SSM_Mortar_DELAY
  97. 49.
  98.  
  99. 50.
  100. // number in seconds, default 30
  101. 51.
  102. BIS_SSM_Artillery_DELAY
  103. 52.
  104.  
  105. 53.
  106. // Bool value, indicateing the use of detailed group call signs in the radio chatter.
  107. 54.
  108. // By default group call signs are disabled. (false)
  109. 55.
  110. BIS_SSM_CallSignsEnabled
  111. 56.
  112.  
  113. 57.
  114. // Fallback definition for undefined callsign, when BIS_SSM_CallSignsEnabled is true. Default is ["bravo","charlie","one"]
  115. 58.
  116. // Use with caution, this array needs to have exactly 3 string elements, each from a valid speech class.
  117. 59.
  118. // If the Group ID cannot be evaluated at least partially to some acceptable value, this will be used.
  119. 60.
  120. // For example: group player setGroupID [""]; .. will force the use of this fallback callsign.
  121. 61.
  122. BIS_SSM_undefinedCallSign
  123. 62.
  124.  
  125. 63.
  126. // bool values, default true
  127. 64.
  128. // if changed with publicVariable, will update all clients Menu's
  129. 65.
  130. // if changed on client call BIS_SSM_fnc_updateMenu
  131. 66.
  132. BIS_SSM_AmmoDrop_ENABLED_WEST
  133. 67.
  134. BIS_SSM_UnitsDrop_ENABLED_WEST
  135. 68.
  136. BIS_SSM_Airstrike_ENABLED_WEST
  137. 69.
  138. BIS_SSM_Mortar_ENABLED_WEST
  139. 70.
  140. BIS_SSM_Artillery_ENABLED_WEST
  141. 71.
  142. BIS_SSM_CeaseFire_ENABLED_WEST
  143. 72.
  144.  
  145. 73.
  146. BIS_SSM_AmmoDrop_ENABLED_EAST
  147. 74.
  148. BIS_SSM_UnitsDrop_ENABLED_EAST
  149. 75.
  150. BIS_SSM_Airstrike_ENABLED_EAST
  151. 76.
  152. BIS_SSM_Mortar_ENABLED_EAST
  153. 77.
  154. BIS_SSM_Artillery_ENABLED_EAST
  155. 78.
  156. BIS_SSM_CeaseFire_ENABLED_EAST
  157. 79.
  158.  
  159. 80.
  160. BIS_SSM_AmmoDrop_ENABLED_GUER
  161. 81.
  162. BIS_SSM_UnitsDrop_ENABLED_GUER
  163. 82.
  164. BIS_SSM_Airstrike_ENABLED_GUER
  165. 83.
  166. BIS_SSM_Mortar_ENABLED_GUER
  167. 84.
  168. BIS_SSM_Artillery_ENABLED_GUER
  169. 85.
  170. BIS_SSM_CeaseFire_ENABLED_GUER
  171. 86.
  172.  
  173. 87.
  174. BIS_SSM_AmmoDrop_AVAILABLE_WEST
  175. 88.
  176. BIS_SSM_UnitsDrop_AVAILABLE_WEST
  177. 89.
  178. BIS_SSM_Airstrike_AVAILABLE_WEST
  179. 90.
  180. BIS_SSM_Mortar_AVAILABLE_WEST
  181. 91.
  182. BIS_SSM_Artillery_AVAILABLE_WEST
  183. 92.
  184. BIS_SSM_CeaseFire_AVAILABLE_WEST
  185. 93.
  186.  
  187. 94.
  188. BIS_SSM_AmmoDrop_AVAILABLE_EAST
  189. 95.
  190. BIS_SSM_UnitsDrop_AVAILABLE_EAST
  191. 96.
  192. BIS_SSM_Airstrike_AVAILABLE_EAST
  193. 97.
  194. BIS_SSM_Mortar_AVAILABLE_EAST
  195. 98.
  196. BIS_SSM_Artillery_AVAILABLE_EAST
  197. 99.
  198. BIS_SSM_CeaseFire_AVAILABLE_EAST
  199. 100.
  200.  
  201. 101.
  202. BIS_SSM_AmmoDrop_AVAILABLE_GUER
  203. 102.
  204. BIS_SSM_UnitsDrop_AVAILABLE_GUER
  205. 103.
  206. BIS_SSM_Airstrike_AVAILABLE_GUER
  207. 104.
  208. BIS_SSM_Mortar_AVAILABLE_GUER
  209. 105.
  210. BIS_SSM_Artillery_AVAILABLE_GUER
  211. 106.
  212. BIS_SSM_CeaseFire_AVAILABLE_GUER
  213. 107.
  214.  
  215. 108.
  216.  
  217. 109.
  218. //string of class, Arma 2 defaults are "MV22", "Mi17_medevac_RU", "Mi17_medevac_Ins"
  219. 110.
  220. BIS_SSM_AmmoDrop_VEHICLE_WEST
  221. 111.
  222. BIS_SSM_AmmoDrop_VEHICLE_EAST
  223. 112.
  224. BIS_SSM_AmmoDrop_VEHICLE_GUER
  225. 113.
  226. BIS_SSM_UnitsDrop_VEHICLE_WEST
  227. 114.
  228. BIS_SSM_UnitsDrop_VEHICLE_EAST
  229. 115.
  230. BIS_SSM_UnitsDrop_VEHICLE_GUER
  231. 116.
  232.  
  233. 117.
  234. // string of class, Arma 2 defaults are "AV8B", "Su34", "Su25_Ins"
  235. 118.
  236. BIS_SSM_Airstrike_VEHICLE_WEST
  237. 119.
  238. BIS_SSM_Airstrike_VEHICLE_EAST
  239. 120.
  240. BIS_SSM_Airstrike_VEHICLE_GUER
  241. 121.
  242.  
  243. 122.
  244. // string of class, Arma 2 defaults are "USMC_Soldier_Pilot", "RU_Soldier_Pilot", "GUE_Soldier_Pilot"
  245. 123.
  246. BIS_SSM_PILOT_WEST
  247. 124.
  248. BIS_SSM_PILOT_EAST
  249. 125.
  250. BIS_SSM_PILOT_GUER
  251. 126.
  252.  
  253. 127.
  254. //Array of class strings, ...
  255. 128.
  256. BIS_SSM_AmmoDrop_BOX_WEST
  257. 129.
  258. BIS_SSM_AmmoDrop_BOX_EAST
  259. 130.
  260. BIS_SSM_AmmoDrop_BOX_GUER
  261. 131.
  262.  
  263. 132.
  264. // string of class, default is "ARTY_Sh_81_HE"
  265. 133.
  266. BIS_SSM_Mortar_SHELL_WEST
  267. 134.
  268. BIS_SSM_Mortar_SHELL_EAST
  269. 135.
  270. BIS_SSM_Mortar_SHELL_GUER
  271. 136.
  272.  
  273. 137.
  274. // string of class, default is "ARTY_Sh_122_HE"
  275. 138.
  276. BIS_SSM_Artillery_SHELL_WEST
  277. 139.
  278. BIS_SSM_Artillery_SHELL_EAST
  279. 140.
  280. BIS_SSM_Artillery_SHELL_GUER
  281. 141.
  282.  
  283. 142.
  284. // number, radius in meters default 10
  285. 143.
  286. BIS_SSM_Mortar_DISPERSION_WEST
  287. 144.
  288. BIS_SSM_Mortar_DISPERSION_EAST
  289. 145.
  290. BIS_SSM_Mortar_DISPERSION_GUER
  291. 146.
  292.  
  293. 147.
  294. // number, radius in meters default 20
  295. 148.
  296. BIS_SSM_Artillery_DISPERSION_WEST
  297. 149.
  298. BIS_SSM_Artillery_DISPERSION_EAST
  299. 150.
  300. BIS_SSM_Artillery_DISPERSION_GUER
  301. 151.
  302.  
  303. 152.
  304. // number, default 10
  305. 153.
  306. BIS_SSM_Airstrike_DISPERSION_WEST
  307. 154.
  308. BIS_SSM_Airstrike_DISPERSION_EAST
  309. 155.
  310. BIS_SSM_Airstrike_DISPERSION_GUER
  311. 156.
  312.  
  313. 157.
  314. // number, default 80
  315. 158.
  316. BIS_SSM_Mortar_ROUNDS_WEST
  317. 159.
  318. BIS_SSM_Mortar_ROUNDS_EAST
  319. 160.
  320. BIS_SSM_Mortar_ROUNDS_GUER
  321. 161.
  322.  
  323. 162.
  324. // number, default 50
  325. 163.
  326. BIS_SSM_Artillery_ROUNDS_WEST
  327. 164.
  328. BIS_SSM_Artillery_ROUNDS_EAST
  329. 165.
  330. BIS_SSM_Artillery_ROUNDS_GUER
  331. 166.
  332.  
  333. 167.
  334. // Optional Variables in mission namespace
  335. 168.
  336.  
  337. 169.
  338. // Array to override default randomization, eg. [1000,1000]
  339. 170.
  340. BIS_SSM_AmmoDrop_FLYOUTPOSITION
  341. 171.
  342. BIS_SSM_UnitsDrop_FLYOUTPOSITION
  343. 172.
  344. BIS_SSM_Airstrike_FLYOUTPOSITION
  345. 173.
  346.  
  347. 174.
  348. // Array, eg. [1000,1000]
  349. 175.
  350. BIS_SSM_AmmoDrop_FLYINPOSITION
  351. 176.
  352. BIS_SSM_UnitsDrop_FLYINPOSITION
  353. 177.
  354. BIS_SSM_Airstrike_FLYINPOSITION
  355. 178.
  356.  
  357. 179.
  358.  
  359. 180.
  360. [edit] Conditions
  361. 181.
  362.  
  363. 182.
  364. // Conditions are strings that will be evaluated to bool value. (Client side)
  365. 183.
  366. BIS_SSM_CeaseFire_CONDITION = " <your condition> ";
  367. 184.
  368. BIS_SSM_AmmoDrop_CONDITION = " <your condition> ";
  369. 185.
  370. BIS_SSM_UnitsDrop_CONDITION = " <your condition> ";
  371. 186.
  372. BIS_SSM_Airstrike_CONDITION = " <your condition> ";
  373. 187.
  374. BIS_SSM_Mortar_CONDITION = " <your condition> ";
  375. 188.
  376. BIS_SSM_Artillery_CONDITION = " <your condition> ";
  377. 189.
  378.  
  379. 190.
  380. [edit] Expressions
  381. 191.
  382.  
  383. 192.
  384. // Expressions are called (Client Side), if the player is calling support and the condition has been evaluated to true.
  385. 193.
  386. // _this select 0 is the position that the player called the support for.
  387. 194.
  388. BIS_SSM_CeaseFire_EXPRESSION = { <your code> };
  389. 195.
  390. BIS_SSM_AmmoDrop_EXPRESSION = { <your code> };
  391. 196.
  392. BIS_SSM_UnitsDrop_EXPRESSION = { <your code> };
  393. 197.
  394. BIS_SSM_Airstrike_EXPRESSION = { <your code> };
  395. 198.
  396. BIS_SSM_Mortar_EXPRESSION = { <your code> };
  397. 199.
  398. BIS_SSM_Artillery_EXPRESSION = { <your code> };
  399. 200.
  400.  
  401. 201.
  402.  
  403. 202.
  404. // These are called after the vehicle has been initialized. (Server Side)
  405. 203.
  406. // Available variables from the underlying scope are:
  407. 204.
  408. // _vehicle, _pilot, _spawnPos, _requestPos, _caller, _act
  409. 205.
  410. BIS_SSM_AmmoDrop_VEHICLEINIT = { <your code> };
  411. 206.
  412. BIS_SSM_UnitsDrop_VEHICLEINIT = { <your code> };
  413. 207.
  414. BIS_SSM_Airstrike_VEHICLEINIT = { <your code> };
  415. 208.
  416.  
  417. 209.
  418.  
  419. 210.
  420. [edit] UnitsDrop Custom Groups
  421. 211.
  422.  
  423. 212.
  424. // When calling support for Units to be parachuted, the module will drop a predefined random group, similar to the player
  425. 213.
  426. // The mission designer can create custom Groups, which is an Array of Arrays with the syntax ["name-string",possibility-number,[unit class-string array]]
  427. 214.
  428. // Example, add this to the init of your player. That will override the default spawning groups.
  429. 215.
  430.  
  431. 216.
  432. this setvariable ["BIS_SSM_UnitRequestConfigArray",[["Custom Squad",0.5,["USMC_Soldier_SL","USMC_Soldier_TL","USMC_Soldier_AR","USMC_Soldier_LAT"]]]];
  433. 217.
  434.  
  435. 218.
  436.  
  437. 219.
  438. [edit] Missions with that module
  439. 220.
  440.  
  441. 221.
  442. * Sector Control
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement