Investigate three/two wheel limp mode
Description of the task
Currently, when our motors fail, the robot will stop, attempt to reset, and if it fails to do that, drive as normal minus the failed motor. However, this will almost certainly mess with our pathing and dribbling (since the dribbler motor may fail as well).
We should update our AI to monitor which motors on each robot are functional, using the enabled_motors set in motor.cpp, and have it try to assign tactics that have less movement to robots with dysfunctional drive motors, and tactics that don't need dribbling for those robots with dysfunctional dribblers.
We may also want to consider some three wheel / two wheel drive modalities, so that if we cannot replace a bot, the full fleet can still be semi functional, and stay on course.
Acceptance criteria
- [ ] Affected robots are assigned stationary roles if a motor fault is detected.