A solution might be to calculate multiple damage numbers on each individual shot, so one shot might do 3, 1, 6 damage. (With a 0 counting as a complete miss for a 'shot'.) I haven't looked into the back end because my coding abilities are lacking.
Who's in charge of doing the numerical balancing? I can't code, and I've tried doing maps to no avail, but I can do balancing. I'll be happy to help with that if I can. Because seriously. As of 2.4, snipers are all but useless until we get the bolter because they can't move and shoot with any reasonable accuracy.
I do think that we need to adjust the prices so we can make a profit from selling things, but that's not relevant to weapons.