-
Notifications
You must be signed in to change notification settings - Fork 0
Description
At the moment, a client determines their health, ammo, and weapon wheel (which includes ammo technically). The client shouldn't be able to determine this information, and the host should instead control it.
This is probably a duplicate of other issues, which would ultimately be sub-tasks to this, but ultimately the host needs to determine and update everyone with what it sees in terms of how much ammo they have, what weapons they're holding in inventory and what their health is as well as any other properties such as powerups.
It's cheaper to not care about any of this, but it will ultimately result in either desync or cheating.
The total of properties that should be synced/broken down into sub-tasks are as follows:
- Weapon Wheel (This includes: weapon states, ammo, weapons, alternative ammo, currently held by a player).
- Health and or Damage
- A player's death.
- A player's death animation.
- A player's animation in general.
- A player's score display.
- Crouching or Jumping
- Powerups held
Any others like position, view angles, firing, etc. They are excluded as they're synced already and should not be host-controlled, as while it can enable 'cheating', it will ultimately ruin the experience to force them to wait for the host to determine if it's acknowledged they want to commit a specific action and relay it back to them.