How to create custom loadouts:
1. Duplicate "default_loadout.xml" and rename the new file
2. Go into "loadouts.xml" and add a new entry for the newly created file
3. Open the new loadout file and customize it to your liking

Resources for creating a custom loadout:

All available weapon Hashes (custom ones supported as well)
https://github.com/scripthookvdotnet/scripthookvdotnet/blob/c4285db9961389b83b5a44a2bf2684ed89121ef7/source/scripting_v3/GTA/Weapons/WeaponHash.cs

CombatAbility:
0 = Poor
1 = Average
2 = Professional

CustomFiringPattern:
Set "EnableCustomFiringPattern" to "true" in order for one of the "PossibleCustomFiringPatterns" 
to be selected randomly.

All available FiringPatterns: 
https://github.com/scripthookvdotnet/scripthookvdotnet/blob/c4285db9961389b83b5a44a2bf2684ed89121ef7/source/scripting_v3/GTA/Entities/Peds/FiringPattern.cs