Skip to content

Differences between old and new GameController #187

@ahasselbring

Description

@ahasselbring

Disclaimer: I am not participating in the Humanoid League myself, but I am the original author and maintainer of the SPL GameController 2023 and previously co-maintainer of the Java GameController in the SPL. So I don't know which of these changes (if any) are intended because the Humanoid League rules changed, or if they were overlooked during the port. But I have a certain interest that the GameController delivers the quality that one may expect from such an important piece of software.

  • Dropped Ball
    • The old HL GameController had a button for a dropped ball, which is missing in the new one. Incidentally, the SPL introduced a dropped ball this year (can only be invoked indirectly via referee timeout or global game stuck, but that would be trivial to add), so I could backport that feature if needed.
  • Goalkeeper
    • The new GameController does not display which player is goalkeeper, and I'm not sure if it can be substituted. In the SPL GameController, the goalkeeper wears a special jersey color and is thus distinguishable. When substituting the goalkeeper with another player, the "flag" is transmitted automatically in the GameController. Does the HL want this, too? (not the jersey color of course, but the substitution principle)
  • Selecting kick-off
    • In the old GameController, you could select which team has kick-off in the main UI. In the new GameController this can be done in the launch window only. Is this sufficient?
  • Timers
    • The main clock should only pause during the initial ready / set state of a half-time, and there is no distinction between preliminary / play-off games anymore, right?
    • However, the main clock always pauses during free kicks / goal kicks / corner kicks / throw-ins / penalty kicks?
    • All penalty timers only started after a second click (to start the serving period). This is now only the case for pick-up penalty. Is this correct? I don't think so, because automatically unpenalizing a player 10 seconds after it was penalized could actually be dangerous. Also, it isn't possible to reset the penalty timer, but it should ("If any part of the robot touches the field of play [...], the time is reset"). Should the penalty timer run during all states?
  • Penalties
    • Previously, the Pickup button was called Pickup / Incapable.
  • Extended Time / Extra Time / Overtime
    • iirc somebody told me that the HL doesn't have this anymore (or never had) but the old GameController semi-supported that. The new one doesn't. Should it?
  • Global Game Stuck
    • This rule doesn't exist in the Humanoid League, right? (So it should be removed from the UI)
  • The teams "Attackers" and "Defenders" were only needed for a Technical Challenge in the SPL once. If the Humanoid League doesn't need them, they should be removed.
  • With the new GameController, players cannot autonomously become goalkeeper or announce readiness for free kick execution via RoboCupGameControlReturnData.
  • ...

Then there are all the things that could have been removed from the old GameController ages ago, such as the SPLCoachMessage. Is it too late to do this one month before the competition? Otherwise I would be very glad to do this!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions