As of the Beta, there are now sniper rifles and sub-machine guns in addition to the original arsenal of LMG's, DMR's, assault rifles and sidearms. No shotguns up to yet sadly. The silver lining is that every weapon has four attachment slots:
Sight/Optics (Top)
Laser Sight/IR Pointer (Side)
Silencer (Muzzle)
Magazine (Mag well)
These slots allow you to customise your weapon to suit your play style or scenario. The assault rifles also have a variant that uses a grenade launcher, again with many varying ammo types. So how can these weapons be used? It is in fact extremely similar to customising the players outfit and gear.
All lines of code will be entered here, in the unit's INIT line:
unit addWeapon "Classname";
In this case we will be using this to replace the unit portion, that will result in the currently selected soldier to be affected. addWeapon is the portion of the code that is the actual command and tells the engine to apply the following item to the desired unit. "Classname" is the actual item to be added, as with all previous items, the names aren't as simple as "MXM" or "M4";
Here is an actual line of code that will add the MXM rifle to the current unit:
this addWeapon "arifle_MXM_F";
Now that the rifle is assigned, it will need to be configured for the battlefield. For this instance the soldier will be a silent marksman tasked with ranged target acquisition and supporting fire. So here is a breakdown of what he will need for his task;
Long Range Optic
Silencer
IR Pointer
Now to add them. The command to add attachments to the soldier's primary or secondary weapon are as follows:
unit addPrimaryWeaponItem "Classname";
unit addSecondaryWeaponItem "Classname";
Depending on the command the attachment will be added to either the primary weapon or the secondary respectively. Now to add the items, here is what the gun looks like before the attachments are added:
But that is pretty plain and boring, so here is what it looks like after the attachments have been added through the code below:
this addPrimaryWeaponItem "optic_SOS";
this addPrimaryWeaponItem "acc_pointer_IR";
this addPrimaryWeaponItem "muzzle_snds_B";
Much better, now the soldier is ready for some stealthy long range action. Whilst the options for side rails are limited, it is good to know that there are many different types of scopes in Arma 3 beta, some even have different holo light variants allowing the little bit extra customisation.
It is worth noting, however, that silencers or suppressors are very picky. Each caliber of weapon has it's own suppressor type. For instance, this rifle, the MXM, uses 7.62mm rounds and therefore requires the "muzzle_snds_B" type. Below is a full list of the suppressors and their related caliber types:
muzzle_snds_B used on 7.62mm weapons
muzzle_snds_H used on 6.5mm NATO weapons
muzzle_snds_H_MG used on 6.5mm NATO LMG's
muzzle_snds_L used on 9mm weapons
So now the weapon is fully kitted out for the soldier's mission. Except for one thing. Ammo. The ammo classnames are extremely annoying and complicated. There are also many, many different types of ammunition types for all the different calibers as well special ammo types such as flare rounds for the grenade launcher. The type of ammo that is needed for this rifle is 7.62mm rounds. Here is the code for adding ammuntion.
unit addMagazine "Classname";
So here is the specific code needed to add ammo for the MXM rifle that is currently being used:
this addMagazine "20Rnd_762x45_Mag";
This will add a single 20 round magazine for the MXM rifle (or any other weapon that uses 7.62mm rounds). In order to add more magazines, simply copy and paste the line of code for as many magazines is required.
Here is an overview of all the code used
_______________________________________________________________________________
The add weapon format:
unit addWeapon "Classname";
Code to add the MXM rifle:
this addWeapon "arifle_MXM_F";
Primary and Secondary weapon attachment format:
unit addPrimaryWeaponItem "Classname";unit addSecondaryWeaponItem "Classname";
Code to add different attachments:
this addPrimaryWeaponItem "optic_SOS";
this addPrimaryWeaponItem "acc_pointer_IR";
this addPrimaryWeaponItem "muzzle_snds_B";
The add magazine format:
unit addMagazine "Classname";
Code to add a single 20 Round 762mm magazine:
this addMagazine "20Rnd_762x45_Mag";
So now the soldier's are kitted out with all the weapons and attachments they need along with enough ammunition to fight a small war. Next topic is how to create customised gear boxes for use in missions.