People complain about overpowered weapons and non-realism because they don't understand.
In real life, war is not fun. In real life, if you get shot at, you do not heal back. In real life, if you die, you're dead. In real life, rocket launchers and grenades actually have a larger radius than most video game versions. In real life, you do not have special abilities.
No one would play fps games if they were realistic and modern, you would die too fast and rounds would be too quick because the only game modes would involve having 1 life. The only way you could pull off a realistic FPS game would be to go to the middle ages.
So you can see why game developers get creative.
People need to stop complaining about not being realistic.