I'm not sure. The idea was to prevent players from cheesing the skelebots by hiding outside their reach, simply sticking a lower damage reduction on there makes them take more time to cheese but still cheesable.
Good point. I kinda lost sight of the main goal, which was to make melee enemies a threat in a game where you can jump around and shoot from far away.
I think the main approach to this should be to look at it from the perspective of the skelebot handling incoming threats. I suggest this behavior:
- If the skelebot recognizes a threat it can reach, it goes into offensive mode and runs to its target.
- If the skelebot sees no threat (ie. nothing it can reach), it wanders around and repairs any damage to itself.
- Any incoming projectile has a chance of being reflected at all times, since it's an incoming threat.
- A skelebot can reach any body found on its plane, or something that jumped off of its plane a few seconds ago. It times out so that if you're jumping far away, it eventually gives up on you.
This gives you an incentive not to cheese(ie attack from somewhere where the skelebot can't get you): the skelebot both heals itself and deflects shots that may hit you. If you're on the skelebot's plane and jumping around (while staying on that plane), the skelebot identifies you as a threat and never heals itself. As an added incentive, the skelebot could deflect with a much lower percentage while you're on its plane, since it's focused on you.
Several players could use one player as bait, which I think makes sense -- it's a legitimate multiplayer tactic.