If you are shooting at someone and they aren't taking the "hits"(especially 35/40+ metres) it's likely they are dispersing around them, you are out of range or you are a bad shot.
Even if you know someone is not taking their hits because you can see them bouncing off the player resist the urge to shout "take your hits!" - This is something that wasn't covered until I think the 3rd game I played to be fair. Now if it's at close range(i.e. indoor voice range) I'll politely say to the player that I have seen my shots hit them, or I will mention it to a marshal.
I learnt fairly quickly that calmly explaining to a marshal that you suspect a player wasn't taking their hits holds more weigh than essentially moaning about someone being a cheat. Likewise I have had people shout at me for not taking hits when the sound is BBs hitting a material neither my gear nor my body is made out of

, when I did actually get shot out
I will mention to a marshal on the way to back to regen that I've been called for "not taking hits".
Bring as many spares as you can. Whether that's clothing, BBs, batteries or guns, if something you need fails you could be going home before lunch.