Skip to content

Fewer different penalty types #124

@ahasselbring

Description

@ahasselbring

At RoboCup, I had a short discussion with Rico (and perhaps others) that the number of penalty buttons in the GameController is too large (12 at the moment). While the buttons themselves are not specified in the rule book, they should generally match the referee calls, so changing the buttons in the GameController would require

As a first step, I suggest going from 12 to 8:

  • Pushing
  • Foul
    • This cannot be merged with another button because it starts a pushing free kick.
  • Penalty Kick
    • This cannot be merged with another button because it starts a penalty kick.
  • Illegal Position + Leaving the Field
    • Those two are conceptually similar anyway - a robot is somewhere where it isn't supposed to be.
    • Both of them are incremental, except for Illegal Position in Set, but in Set a robot cannot leave the field either. Maybe the special handling of Illegal Position in Set is another thing to reconsider.
  • Fallen/Inactive Robot + Local Game Stuck
    • Neither of them is incremental. In fact, they were already on the same button in the past, but at some point, Fallen/Inactive was an incremental penalty while Local Game Stuck stopped being a standard removal penalty, so that was not possible anymore. (RoboCup-SPL/GameController@3872fbb)
  • Ball Holding + Playing with Arms/Hands + Player Stance
  • Motion in Set
    • This cannot be merged with another button because it has a special duration and is automatically removed. It also helps robots to be able to distinguish this penalty from other penalties because the re-entry positions are different.
  • Request for Pick-up
    • This cannot be merged with another button because it is the only penalty that can override previous penalties and the button behaves differently once the timer is over.

Maybe one also wants to rethink the relation of the pushing/foul/penalty kick buttons.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions