flak really just uses particles with no other graphics. there is no way to have flak weapons use a model or a laser effect. particle spews are optional, i think. likewise there is no real way to make a weapon that doesn't have effects (aside from all black bitmaps or invisible models), which runs a lot of code which need not be run. i think these are problems which should be addressed.
ive been saying for years that weapon behavior should be separated from weapon effects. all flak should do is detonate the shot when the range is reached and not have any effect on what gets rendered. then another tag or flag should be added that allows you to make a weapon that doesnt have a model or laser parameters.
same goes for some features of beams. such as charging and discharging, should be moved out of the beam section and into the general weapon flags. then used for any weapon. ammo and energy usage should be based on what the energy and ammo settings on the weapon say, not whether the weapon is primary or secondary or if it uses a ballistics flag. i dont see why we need ballistics flag at all, just make the code say if we have x ammor and y energy and we have enough of each, fire. we use some swarm hacks to make secondary weapons ripple fire like primaries and a cycle flag to get primaries to fire like secndaries.
i see lots of redundancy which could be removed. of course that causes other problems, like hoards of modders getting pissed cause they have to edit their tables, or reverse compatibility thumpers going nuts. so make a retail patch for the root folder to fix incompatibilities and deprecated syntax.
also did we ever get a prox flag? which instead of using the targets range from the gun, uses the shots distance to the target as the trigger. i think that would be cool.