Giter Club home page Giter Club logo

ssl-rules's People

Contributors

chrismit3s avatar g3force avatar kkimurak avatar leonardoscosta avatar lhcavalcanti avatar pardinensis avatar rhololkeolke avatar rolfvdhulst avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ssl-rules's Issues

Possible Stuck Game due to blocked Robot Substitution

Take a look at the following Situation:

screenshot_2024-02-03_07-55-07

There is a direct Free Kick happening and the Ball is already placed correctly, but Yellow just gathered it's second yellow card with the foul, and therefore wants to remove it's robot automatically.

Sadly our AI confirms perfectly to the rules:

Robots can always be taken in and out during game play without notifying the referee if all the following conditions are met:

  1. The robot is at least partially inside the field margin.

  2. The robot is at a distance from the halfway line that must not exceed 1 meter.

  3. The ball must be at least 2 meters away from the halfway line.

It is therefore not allowed to remove the robot, as the ball is too close to the middle line. I want to point out, this problem will most likely never arise in a real world game, as there is a human ref overlooking the game, but still I feel like it's a bug in the rules that can be fixed rather easily.

I can think of 3 different solutions:

  1. Remove the constrictions for removing a robot, (maybe only while Stop)
  2. Allow to continue playing with too many robots on the field
  3. Automatically trigger a robot substitution if one team has too many robots and it's a STOP.

I personally think, triggering a robot substitution is the best solution, as this will also help with other situations that can cause confusion in tournaments: The game is stopped, one team has too many robots, and no one realizes why the game is not continuing. Especially with inexperienced GCOs, Refs and Teams this can happen rather often.

Consistent use of line thickness

It was brought up on Discord, that there is some confusion in regards of the line thickness:

  • How are distances between lines measured?
  • How is the line thickness taken into account when checking if object are inside an area?
  • When did the ball cross a line?

Current state:

  • ssl-rules
    • 2.1.3: > Lines belong to the areas of which they are boundaries.
  • ssl-vision
    • Distances between lines are measured from the line center
    • Line thickness is configurable and sent out in the Geometry message
    • Line thickness is only taken into account during calibration
  • ssl-game-controller
    • line thickness is not used and not needed
  • TIGERs autoRef
    • The line thickness is not used
  • ER-Force autoRef
    • The line thickness is most likely not used

Some relevant quotes from the rules:

  • "The ball is inside the field."
  • "allowed to be inside the whole center circle"
  • "the ball is inside a team’s defense area"
  • "while being partially or fully inside the opponent defense area"
  • "The robot is at least partially inside the field margin."

The line is usually 1cm thick. The precision of ssl-vision is also about 1cm. So in practice, it should not make a significant difference to take the thickness into account or not.

Add a cost to timeouts (DivA only)

From the rule proposal:

Timeouts waste time. Teams should be encouraged to reduce them to a minimum, while still being able to use them for serious issues.
We do not encourage teams to use timeouts for tuning their parameters.

The number and time of timeouts will not change, but after each timeout, the game will restart from a point in front of the team’s defense area (at least 700mm) and with a direct freekick for the opponent team.

Duplicated game event table

In the work of #35, some duplicates in the game event table were overlooked and merged into the master.
e.g.

  • There are two "Events for scoring goals" table
    Difference : for "Possible Goal" event, action for one is "Stop → Kick-Off" and the other is "Halt"

  • There are two "Unsporting Behavior" event, in "Events for Offenses" table and in "Other events" table

  • There are two "Double touch" event, in "Events for Offenses" table and in "Other events" table

and so on. Most of duplication is caused by "Other events" table, so I think we need to check them again.

Robot substitution - Punishment

Targets

  • Reduce the used match time needed to substitute robots
  • Teams should be encouraged to substitute quick and only do substitution
  • Teams should be encouraged to make their robots more reliable and use automatic substitution, if possible.

Constraints

  • Teams always need to be able to substitute robots. There can not be a hard limit
  • It must be safe for robot handlers - teams should not be encouraged to move as fast as possible
  • Automatic substitution during a match is always preferred

Proposed Change

  • Give teams 5 free substitutions per halftime
  • Each substitution gives the team a time budget of 10s to substitute as many robots as they like. If they do not stop the substitution in time, a new substitution is started.
  • Introduce a new foul game event that is raised, when a team starts a substitution and the free budget is used up.
    • The foul increases the foul counter
    • The foul results in a free kick for the opponent team
    • If both teams perform robot substitution in the same stoppage, the original command is issued instead of the freekick
  • We will evaluate the numbers in upcoming regional competitions and may adapt them for RoboCup

Clarification of the distance from a robot

The current rules caused some confusion for me on how to measure the distance from a line to a robot.

In a Discord discussion, it was mentioned that TIGERs AutoRef measures from the robot's edge. For exampling the distance to the defense area needs to be 0.09+0.2m according to this.

I'd suggest a clarification along (just like how it's done for distance from lines):

Distances from a robot are measured from its nearest side to the respective measurement point, with an assumed radius of 0.09m.

Clarification of the penalty marks

The current wording of the penalty marks has caused confusion within our team, and problems during the match in the RoboCup 2022. The penalty marks are defined as follows :

For each field half the penalty mark is on the mid-line (not halfway line), 8 meters (division A) or 6 meters (division B) away from the opponent goal center.

It is clear where the two penalty marks are on each half (8 meters from each goal center), but to whom each penalty mark belongs is ambiguous. Intuition tells me that penalties are taken from the penalty mark closest to the opponent's goal, mainly because this is the case in human soccer. This is however not the case.

I'd like to suggest a clarification of the penalty mark from which to take a penalty :

For each field half, the penalty mark is on the mid-line (not halfway line), 8 meters (division A) or 6 meters (division B) away from the opponent's goal center. 
The team taking the penalty has to start at the penalty mark that is on the midline and 8 meters (division A) or 6 meters (division B) away from the opponent's goal.

(Un)wanted influence of the Rule "Early Termination" on the Rule "Shoot-Out"?

Because I am currently looking deeper into the Shoot-Out I stumbled over the influence of the Rule 4.4.3. Early Termination At A Score Of 10 onto the Rule 10. Shoot-Out.
The rule Early Termination states that if one team manages to score is tenth goal, the game will be automatically terminated and the team with more goals will be declared the winner, regardless of the current game stage.
This could lead to the problem, that according to the rules, the Shoot-Out would be terminated as soon, as one of both teams manages to score its tenth goal and automatically wins, regardless of the number of tries each team still has left.
Yes this case is rather uncommon but theoretically it could happen, that both teams manage to score a goal at every try, which would lead to the point, that the team that started first, gets its tenth goal and the Shoot-Out would be automatically stopped with the final result of 10-9.
As the Shoot-Out only takes place in elimination matches this would result in a rather unsatisfying situation for the losing team.

Due to the fact that I am currently not sure, whether this is a wanted or unwanted approach, I decided to bring this issue up, so that if it in fact is an unwanted behavior, it can get resolved now and the rules could still be adjusted to make the situation clearer.

Robot Too Close To Opponent Defense Area repeated every 2 seconds

Current rules

During stop and free kicks, before the ball has entered play, all robots have to keep at least 0.2 meters distance to the opponent defense area.

There is a grace period of 2 seconds for the robots to move away from the opponent defense area.

Issues

If a robot keeps standing too close to a penArea, the foul is counted repeatedly every 2 seconds. As this also applies to STOP, this can quickly become annoying.

Possible Solutions

  • Only raise foul, if bot was near defense area within last 2 seconds before game continued

Is kickoff count as a freekick?

Rules say that:

8.1.2. Lack Of Progress
There is a lack of progress if only one team is allowed to manipulate the ball (kick-off, direct free kick, indirect free kick, penalty kick) and does not bring the ball into play in time. The time limit is 5 seconds for free kicks in division A and 10 seconds in all other cases.

Is it means that the time limit for kickoff is 10 sec?

Automatic Robot substitution

Current procedure

  • (1) The robot is at least partially inside the field margin.
  • (2) The robot is at a distance from the halfway line that must not exceed 1 meter.
  • (3) The ball must be at least 2 meters away from the halfway line.

Issue

Point (3) can result in a deadlock:

  • If the ball is within 2 meters to halfway line, robots may not be taken out
  • If a team has too many robots on the field due to a yellow card, without any intermediate STOP, there is no chance to interchange robots automatically

Proposed changes

  • (3) The ball must be at least 0.5 meters away from the robot.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.