Skip to content

Use robot capabilities #3433

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

wmostrenko
Copy link
Contributor

Please fill out the following before requesting review on this PR

Description

Added the ability to state whether or not certain robots have broken dribblers, kickers, or chippers using checkboxes for each robot id under the Parameters widget in Thunderscope. For instance, if you check the checkbox for Robot 2's dribbler, Robot 2 shouldn't be assigned any tactics that involve dribbling. Also added tests for this functionality, and updated many tactics' required RobotCapabilities.

Testing Done

Added tests in sensor_fusion to check that when the protos used to describe which robots have broken dribblers/kickers/chippers are changed, the specific robot's unavailable capabilities are also changed accordingly. Also observed the correct robot behaviour in Thunderscope.

Resolved Issues

resolved #3371

Length Justification and Key Files to Review

Review Checklist

It is the reviewers responsibility to also make sure every item here has been covered

  • [X ] Function & Class comments: All function definitions (usually in the .h file) should have a javadoc style comment at the start of them. For examples, see the functions defined in thunderbots/software/geom. Similarly, all classes should have an associated Javadoc comment explaining the purpose of the class.
  • [ X] Remove all commented out code
  • [X ] Remove extra print statements: for example, those just used for testing
  • [X ] Resolve all TODO's: All TODO (or similar) statements should either be completed or associated with a github issue

Copy link
Contributor

@GrayHoang GrayHoang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. Maybe we could do some field testing?

Comment on lines +423 to +428
required bool robot_0 = 1;
required bool robot_1 = 2;
required bool robot_2 = 3;
required bool robot_3 = 4;
required bool robot_4 = 5;
required bool robot_5 = 6;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The number of robots will change when we move from div B to div A, so it would be better to consider a more flexible approach. Could we instead use a repeated uint32 field that stores the IDs of the robots that are broken?

Copy link
Contributor

@itsarune itsarune left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, pending william's feedback

Copy link
Contributor

This PR is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions github-actions bot added the Stale Inactive pull requests label Apr 22, 2025
Copy link
Contributor

This PR was closed because it has been stalled for 5 days with no activity.

@github-actions github-actions bot closed this Apr 27, 2025
@itsarune itsarune removed the Stale Inactive pull requests label Apr 29, 2025
@itsarune itsarune reopened this Apr 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Use RobotCapabilities
4 participants