There are indeed two fire commands. For the avoidance of confusion, here they are:-
unit fire weaponName
Operand types:
unit: Object
weaponName: String
Type of returned value:
Nothing
Description:
Unit will fire from given weapon.
Example:
soldierOne fire "HandGrenade"
comment »
--------------------------------------------------------------------------------
unit fire array
Operand types:
unit: Object
array: Array
Type of returned value:
Nothing
Description:
Unit will fire from given weapon. Argument has format [muzzle, mode, magazine] or [muzzle, mode].
Example:
soldierOne fire ["throw","SmokeShell","SmokeShell"]