⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 news

📁 2009 ROBOCUP 仿真2DSERVER 源码
💻
📖 第 1 页 / 共 5 页
字号:
  (init myteam mycoach (version 6))  are all valid online coach init string.  At the end of the game, the logfiles are renamed and if the online  coach specifies a coachname when it connects, then _COACHNAME is  added after the team name.  e.g.  200305081101-test_coach_1-vs-test2_coach2_2.rcl  is an example of a log file for 'team' vs 'team2', where 'team' had  an online coach called 'coach' and 'team2' had an online coach  called 'coach2'.  * Fixed a defect where pointing players were sent twice in a see  message.[9.3.7]  * Fixed defect in the sending of team graphics to monitors where the  first line of the data was repeated and there was no space between  team_graphic_{l|r} and(.  Thanks got to Matus Horvath for reporting  the problem and providing the patch.  * Fixed gcc3.3 compilation problem.[9.3.6]  * Fixed defect that caused a segmentation fault when a player  reconnected.[9.3.5]  * Fixed bug in the handling of ear on/off commands sent by players,  where partial and complete where inverted.  * To help with future user problems, the server now also outputs at  startup the version of rcssbase being used.  * Fixed catch_fault_r string which was perviously cacth_fault_r.  * Fixed online coach releated seg fault.  This may have been caused  if a coach tryed to connect after a coach had already connected and  disconnected for the same team.  * A bug was fixed that was causing nested conditions in CLang to be  restructured in logically incorrect way.[9.3.4]  * The default values for tackle_dist and tackle_width have been  changed to 2.0 and 1.0 respectively.  You will either need to change  these manually in your ~/.rcssserver-server.conf remove your  ~/.rcssserver-server.conf to have the defaults regenerated.  * Added constraint such that substitutions are not allowed after  the normal and extra halfs have passed. It is thus not possible  anymore to make substitutions during or just before the penalty  shootouts.[9.3.3]  * The rcsoccersim script will now report errors if the server or a  monitor cannot be found.  The script has also been modifed to use  the monitor specified by the RCSSMONITOR enviroment variable as the  default monitor (this can be handy of you use your own monitor or  wish to change the default to the classic monitor).  If RCSSMONITOR  is not set, the script will try to use either rcssmonitor or failing  that, rcssmonitor_classic.  At anytime you can override the default  by using the -frameview and -classic options.  * Fixed bug where recover_init was sent to v8 players when it  shouldn't have been.  * Some build problems on OS X have now been fixed.  The server seams  to work on OS X, if built statically.  For dynamic libs to work you  will at the very least need to rebuild the libtool and auto*  components by running  aclocal  glibtoolize --force --copy  aclocal  autoheader  automake --add-missing --copy  autoconf  from the rcssserver directory.  There may be other problems that I  am unaware of.[9.3.2]  * RCSSClient can now be compiled without ncurses on systems that do  have ncurses, by using the '--without-ncurses' parameter to configure.  * The SED environment variable is now set automatically in the  libtool script, during configure.  * Fixed crash during initialization of default server paramters on  Solaris platforms  * RCSServer now will compile with either sstream or strstream,    depending on which is available.[9.3.0]  * Fixed bug in synch mode that would cause the server to send  "think" commands to disconnected clients and wait for a response  from them.  * Fixed bug in flex usage that would require manual editing of the  generated source files on some systems.  This bugs would only affect  people who are checking out the code from CVS, those editing the .ll  files or those rebuilding the generated code for other reasons.  * Fixed bug in synch mode that would result in a server crash when  clients disconnect.  * Fixed bug that allowed kicks and tackles after the end of the match.  * Fixed bug where the effort_init server parameter was not set, not used,  but sent to players as part of the server param message.  * Fixed bug where the recover_init server parameter was not set, not used,  but sent to players as part of the server param message.  * Added automatic penalty mode.  First of all two different server parameters have been added that specify  how many halfs are played:  nr_normal_halfs (default=2) - number of halfs that are always fully played  nr_max_extra_halfs          - number of extra halfs when score is a draw                                golden goal rule applies in these halfs  If no goals are scored and the server parameter penalty_shootouts is true,  the automatic penalty mode is started.  New play modes, messages and server parameters have been introduced:  New PlayModes:  PM_PenaltySetup_Left/Right (message: penalty_setup_l/r)  PM_PenaltyReady_Left/Right (message: penalty_ready_l/r)  PM_PenaltyTaken_Left/Right (message: penalty_taken_l/r)  PM_PenaltyMiss_Left/Right  (message: penalty_miss_l/r)  PM_PenaltyScore_Left/Right (message: penalty_score_l/r)  Messages:  penalty_onfield_l/r  penalty_foul_l/r  penalty_winner_l/r  penalty_draw  Server parameters  pen_before_setup_wait  pen_setup_wait  pen_ready_wait  pen_taken_wait  pen_nr_kicks  pen_max_extra_kicks  pen_dist_x  pen_max_goalie_dist_x  pen_allow_mult_kicks  pen_random_winner  The procedure is as follows  1. The referee announces on which side the penalties will be taken using     the message (penalty_onfield_l/r).  2. The ref moves the ball to the penalty mark, which is on a distance of     pen_dist_x from the goal.  3. The ref chooses a team to start at random and announces it    (penalty_setup_l/r).  4. The referee then waits pen_setup_wait cycles and then checks whether the     players are moved according to the following rules:     - the defending goalie must move to within goalie_pen_line_dist meter of       the goal line and between the posts     - the other goalie must move behind the goal line and outside the penalty       area line (the only exception is when the goalie takes the penalty)     - the defending players and the teammates of the player must move       within the center circle.     - one of the players of the team that takes the penalty has to move within       2 meters of the position of the ball. One player is not allowed to be       the penalty taker again before all eleven players (including the goalie!)       have taken a penalty.     If after pen_setup_wait cycles one or both teams do not obey the above     rules the penalty is over. In case the attacking team makes a mistake, it     is counted as a miss, otherwise as a score.     If both teams obey the rules, the mode changes to     PM_PenaltyReady_Left/Right  5. The attacker then has pen_ready_wait cycles to take the first kick.     If one of the rules of 4 is not obeyed during these cycles or the time has     elapsed, the penalty is over and is counted as a foul for that team.     After this first kick, the play mode changes to     PM_PenaltyTaken_Left/Right..  6. Depending on the server paramater pen_allow_mult_kicks the attacker is     now allowed to kick the ball again or not. When the ball is catched or     passed the goalline within pen_taken_wait cycles, it is either called a     miss or a score (depending where the ball crossed the goalline)     immediately.     When pen_taken_wait cycles have elapsed without a catch or the ball passing     the goalline, it is also called a miss. In case of a miss the play mode     changes to  PM_PenaltyMiss_Left/Right, otherwise to     PM_PenaltyScore_Left/Right.  7. Now it is checked whether one of the teams has won.     One of the two teams has won when.     - pen_nr_kicks penalties have been played and one team has scored more       goals than the other     - less than pen_nr_kicks have been played but one of the teams can never       get to the score of the other team within pen_nr_kicks     - it was a draw after pen_nr_kicks but after an even number of extra       penalties sessions (less than pen_max_extra_kicks) one team has scored       more goals     In the case of a win the message pen_winner_l/r is communicated and the     playmode changes to PM_TimeOver.     Otherwise when pen_nr_kicks + pen_max_extra_kicks have been played, the     game is a draw. Depending on the parameter pen_random_winner the server     picks a random winner or not. In the latter case the message pen_draw is     communicated.     In all other situations, and no team has won yet, the referee goes back to     2 after pen_before_setup_wait cycles.  *  Changed file format of log files and game logs because of possible     automated penalties after a match. The new format is as follows:     {date}-{team_l_info}-vs-{team_r_info}.rc[gl]     where {team_[lr]_info} looks as follows:      {team}_{score}[_{pen_score}[w]]     with      team:      name of the team      score:     goals scored by this team (excluding penalty goals)      pen_score: scored penalty of this team (optional)      w:         optional winner indication when penalties were also a draw                 and this team was the random winner (pen_random_winner: on)     Possible examples are     - normal game without penalties         200303180158-MRB2003_1-vs-UvA_Trilearn_2.rg     - with penalties         200303180158-MRB2003_1_4-vs-UvA_Trilearn_1_5.rg     - with penalties, pen_nr_kicks + pen_max_extra_kicks didn't bring a       winner and no winner was picked randomly (pen_random_winnner: off)         200303180158-MRB2003_1_7-vs-UvA_Trilearn_1_7.rg     - penalties was also a draw and winner (Trilearn) was picked randomly         200303180158-MRB2003_1_4-vs-UvA_Trilearn_1_4w.rg[9.2.4]  * Fixed defect that would incorrectly award an indirect free kick to  the right team after a catch fault by the right team.  An indirect  free kick to the left team is now awarded.  * Fixed defect that would cause compilation to fail with gcc3.2[9.2.3]  * Fixed defect where the server would not send version 9 parameters  to version 9 coaches.[9.2.2]  * Fixed defect where the server would send "(ok move)" to the offline  coach after it issued a move command, even if there was no such  object that could be moved.  Now the server sends  "(error illegal_object_form)".  * Clients can now connect specifying version 9 as the protocol  version.  This simply adds support for the new server parameters  that have been introduced.[9.2.1]  * Offsides are now no longer possible from a kick-in, goal-kick or  corner-kick.  This is in compliance with FIFA regualtions.  * A new limitation has been added to the random player types (hetero  players) which prevents players from having a maximum speed above  the default player and consume less stamina at maximum speed than  the default player.[9.2.0]  * Configuration now fails if the SED environment variable is not  set.  Libtool needs this to be set to function correctly  * Goal posts have now been added.  They are circular with a radius  of 6cm and they are located at:  x = +- (FIELD_LENGTH*0.5 - 6cm)  y = +- (GOAL_WIDTH*0.5 + 6cm)  The goal posts have different collision dynamics than other  objects. An object collides with a post if it's path gets within  object.size + 6cm of the center of the post.  An object that  collides with the post bounces off elastically.  * The dynamics of the goalie catch have now changed.  If the goalie  successfully catches a ball it is moved adjacent to and facing the  ball and both the goalie and ball have their velocities set to  zero.  When the goalie moves, dashes or turns while the ball is  caught, the ball remains adjacent to and directly in front of the  goalie.  * The goalie can now issue catch commands at any location.  If the  catch is successful, and the ball is outside of the penalty area or  if the goalie moves the ball outside of the penalty area and it's  still in the field, an indirect free kick is awarded to the opposing  team at the ball's current location. If a caught ball is moved over  the goal line but not inside the goal, a corner kick is awarded.  If  a caught ball is moved into the goal, a goal is awarded.  * Checking for goals, out of bounds and within penalty area no  complies with FIFA regulations.  For a goal to be scored the ball  must be totally within the goal - i.e.  |ball.x| > FIELD_LENGTH*0.5 + ball_radius  Similarly the ball must be completely out of the pitch before it is  considered out - i.e  |ball.x| > FIELD_LENGTH*0.5 + ball_radius ||  |ball.y| > FIELD_WIDTH*0.5 + ball_radius  Lastly the ball is within the penalty area (and thus catchable) if  the ball is at least partially within the penalty area - i.e.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -