Spread is determined by the spread variable on each gun, and also the standard "auto-aim" that your player immediately has configured will always cause an up sweep on the round. So the first best thing to do is to disable that auto-aim so bullets will go straight not up. Then after that you have to some how affect the weapons spread factor but only for the player. Not sure how to do that.
Auto aim isn't a problem. I have that sorted.
The spread is controled both on the weapon and in a number of values (mainly the FGunSpread... ones) in the Game settings. I have already tweaked those to give much closer to real-world accuracy.
The problem is the settings affect all player weapons. Adjusting the values to make sniper rifles anywhere close to realistically stable, would make all weapons extremely accurate, even for low level characters with very low SG skill.
What I am trying to do is make a perk to boost skill with sniper (and other 2-hand rifles) without affecting overall SG skill.
I can set the conditions in the perk settings so it will only apply to these types of weapons, but I'm not sure how best to implement reduction in spread in the form of a Perk.
The "Calculate Gun Spread" function in the Perk settings would seem to be designed to do this. However, as I said earlier, it doesn't seem to have any effect.
I was hoping someone could let me know why this doesn't work, and/or give me some pointers on how to manage this.