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

📄 serversettings.cpp

📁 University of Amsterdam的2003年robocup源程序代码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
                            // and send intervals  dVisibleDistance   = 3.0; // visible_distance: distance within which objects                            // are always 'visible' even when not in view cone)  dExtraStamina      = 0.0; // extra_stamina: extra stamina for heterogeneous                            // player  // penalty parameters  dPenDistX          = 11.0;         // pen_dist_x: distance ball from goal  dPenMaxGoalieDistX = 4.0;          // pen_goalie_max_dist_x: maximum distance                                     // for goalie during penalties  bPenAllowMultKicks = false;        // pen_allow_mult_kicks: can penalty                                      // kicker kick multiple times  // tackle parameters  dTackleDist        = 2.0;          // tackle_dist: allowed distance in front   dTackleBackDist    = 0.5;          // tackle_back_dist: allowed distance back  dTackleWidth       = 1.0;          // tackle_width: allowed distance side  dTackleExponent    = 6;            // tackle_exponent: exponent need   iTackleCycles      = 10;           // tackle_cycles: cycles immobile   dTacklePowerRate   = 0.027;        // tackle_power_rate: power rate tackle  // parameters which depend on other values  dMaximalKickDist = dKickableMargin +   // the maximum distance from a player                     dPlayerSize +       // for which the ball is kickable                     dBallSize;  // add all the settings, i.e. each parameter  // becomes a new generic value for the class  // goal-related parameters  addSetting( "goal_width"        , &dGoalWidth       , GENERIC_VALUE_DOUBLE );  // player-related parameters  addSetting( "player_size"       , &dPlayerSize      , GENERIC_VALUE_DOUBLE );  addSetting( "player_decay"      , &dPlayerDecay     , GENERIC_VALUE_DOUBLE );  addSetting( "player_rand"       , &dPlayerRand      , GENERIC_VALUE_DOUBLE );  addSetting( "player_weight"     , &dPlayerWeight    , GENERIC_VALUE_DOUBLE );  addSetting( "player_speed_max"  , &dPlayerSpeedMax  , GENERIC_VALUE_DOUBLE );  addSetting( "player_accel_max"  , &dPlayerAccelMax  , GENERIC_VALUE_DOUBLE );  // stamina-related parameters  addSetting( "stamina_max"       , &dStaminaMax      , GENERIC_VALUE_DOUBLE );  addSetting( "stamina_inc_max"   , &dStaminaIncMax   , GENERIC_VALUE_DOUBLE );  addSetting( "recover_dec_thr"   , &dRecoverDecThr   , GENERIC_VALUE_DOUBLE );  addSetting( "recover_dec"       , &dRecoverDec      , GENERIC_VALUE_DOUBLE );  addSetting( "recover_min"       , &dRecoverMin      , GENERIC_VALUE_DOUBLE );  addSetting( "effort_dec_thr"    , &dEffortDecThr    , GENERIC_VALUE_DOUBLE );  addSetting( "effort_dec"        , &dEffortDec       , GENERIC_VALUE_DOUBLE );  addSetting( "effort_inc_thr"    , &dEffortIncThr    , GENERIC_VALUE_DOUBLE );  addSetting( "effort_inc"        , &dEffortInc       , GENERIC_VALUE_DOUBLE );  addSetting( "effort_min"        , &dEffortMin       , GENERIC_VALUE_DOUBLE );  // parameters related to auditory perception  addSetting( "hear_max"          , &iHearMax         , GENERIC_VALUE_INTEGER);  addSetting( "hear_inc"          , &iHearInc         , GENERIC_VALUE_INTEGER);  addSetting( "hear_decay"        , &iHearDecay       , GENERIC_VALUE_INTEGER);  // parameters related to player turn actions  addSetting( "inertia_moment"    , &dInertiaMoment   , GENERIC_VALUE_DOUBLE );  // parameters related to sense_body information  addSetting( "sense_body_step"   , &iSenseBodyStep   , GENERIC_VALUE_INTEGER);  // goalkeeper-related parameters  addSetting( "catchable_area_l"  , &dCatchableAreaL  , GENERIC_VALUE_DOUBLE );  addSetting( "catchable_area_w"  , &dCatchableAreaW  , GENERIC_VALUE_DOUBLE );  addSetting( "catch_probability" , &dCatchProbability, GENERIC_VALUE_DOUBLE );  addSetting( "catch_ban_cycle"   , &iCatchBanCycle   , GENERIC_VALUE_INTEGER);  addSetting( "goalie_max_moves"  , &iGoalieMaxMoves  , GENERIC_VALUE_INTEGER);  // ball-related parameters  addSetting( "ball_size"         , &dBallSize        , GENERIC_VALUE_DOUBLE );  addSetting( "ball_decay"        , &dBallDecay       , GENERIC_VALUE_DOUBLE );  addSetting( "ball_rand"         , &dBallRand        , GENERIC_VALUE_DOUBLE );  addSetting( "ball_weight"       , &dBallWeight      , GENERIC_VALUE_DOUBLE );  addSetting( "ball_speed_max"    , &dBallSpeedMax    , GENERIC_VALUE_DOUBLE );  addSetting( "ball_accel_max"    , &dBallAccelMax    , GENERIC_VALUE_DOUBLE );  // wind-related parameters  addSetting( "wind_force"        , &dWindForce       , GENERIC_VALUE_DOUBLE );  addSetting( "wind_dir"          , &dWindDir         , GENERIC_VALUE_DOUBLE );  addSetting( "wind_rand"         , &dWindRand        , GENERIC_VALUE_DOUBLE );  addSetting( "wind_random"       , &bWindRandom      , GENERIC_VALUE_BOOLEAN);  // parameters related to 'dash' and 'kick' commands  addSetting( "kickable_margin"   , &dKickableMargin  , GENERIC_VALUE_DOUBLE );  addSetting( "ckick_margin"      , &dCkickMargin     , GENERIC_VALUE_DOUBLE );  addSetting( "dash_power_rate"   , &dDashPowerRate   , GENERIC_VALUE_DOUBLE );  addSetting( "kick_power_rate"   , &dKickPowerRate   , GENERIC_VALUE_DOUBLE );  addSetting( "kick_rand"         , &dKickRand        , GENERIC_VALUE_DOUBLE );  // parameters related to visual and auditory perception range  addSetting( "visible_angle"     , &dVisibleAngle    , GENERIC_VALUE_DOUBLE );  addSetting( "audio_cut_dist"    , &dAudioCutDist    , GENERIC_VALUE_DOUBLE );  // quantization parameters  addSetting( "quantize_step"     , &dQuantizeStep    , GENERIC_VALUE_DOUBLE );  addSetting( "quantize_step_l"   , &dQuantizeStepL   , GENERIC_VALUE_DOUBLE );  // range parameters for basic actuator commands  addSetting( "maxpower"          , &iMaxPower        , GENERIC_VALUE_INTEGER);  addSetting( "minpower"          , &iMinPower        , GENERIC_VALUE_INTEGER);  addSetting( "maxmoment"         , &iMaxMoment       , GENERIC_VALUE_INTEGER);  addSetting( "minmoment"         , &iMinMoment       , GENERIC_VALUE_INTEGER);  addSetting( "maxneckmoment"     , &iMaxNeckMoment   , GENERIC_VALUE_INTEGER);  addSetting( "minneckmoment"     , &iMinNeckMoment   , GENERIC_VALUE_INTEGER);  addSetting( "maxneckang"        , &iMaxNeckAng      , GENERIC_VALUE_INTEGER);  addSetting( "minneckang"        , &iMinNeckAng      , GENERIC_VALUE_INTEGER);  // port-related parameters  addSetting( "port"              , &iPort            , GENERIC_VALUE_INTEGER);  addSetting( "coach_port"        , &iCoachPort       , GENERIC_VALUE_INTEGER);  addSetting( "ol_coach_port"     , &iOlCoachPort     , GENERIC_VALUE_INTEGER);  // coach-related parameters  addSetting( "say_coach_cnt_max" , &iSayCoachCntMax  , GENERIC_VALUE_INTEGER);  addSetting( "say_coach_msg_size", &iSayCoachMsgSize , GENERIC_VALUE_INTEGER);  addSetting( "clang_win_size"    , &iClangWinSize    , GENERIC_VALUE_INTEGER);  addSetting( "clang_define_win"  , &iClangDefineWin  , GENERIC_VALUE_INTEGER);  addSetting( "clang_meta_win"    , &iClangMetaWin    , GENERIC_VALUE_INTEGER);  addSetting( "clang_advice_win"  , &iClangAdviceWin  , GENERIC_VALUE_INTEGER);  addSetting( "clang_info_win"    , &iClangInfoWin    , GENERIC_VALUE_INTEGER);  addSetting( "clang_mess_delay"  , &iClangMessDelay  , GENERIC_VALUE_INTEGER);  addSetting("clang_mess_per_cycle",&iClangMessPerCycle,GENERIC_VALUE_INTEGER);  addSetting( "send_vi_step"      , &iSendViStep      , GENERIC_VALUE_INTEGER);  // time-related parameters  addSetting( "simulator_step"    , &iSimulatorStep   , GENERIC_VALUE_INTEGER);  addSetting( "send_step"         , &iSendStep        , GENERIC_VALUE_INTEGER);  addSetting( "recv_step"         , &iRecvStep        , GENERIC_VALUE_INTEGER);  addSetting( "half_time"         , &iHalfTime        , GENERIC_VALUE_INTEGER);  addSetting( "drop_ball_time"    , &iDropBallTime    , GENERIC_VALUE_INTEGER);  // speech-related parameters  addSetting( "say_msg_size"      , &iSayMsgSize      , GENERIC_VALUE_INTEGER);  // offside-related parameters  addSetting( "use_offside"       , &bUseOffside      , GENERIC_VALUE_BOOLEAN);  addSetting( "offside_active_area_size", &dOffsideActiveAreaSize,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "forbid_kick_off_offside" , &bForbidKickOffOffside ,                                                        GENERIC_VALUE_BOOLEAN);  addSetting( "offside_kick_margin",&dOffsideKickMargin,GENERIC_VALUE_DOUBLE );  // log-related parameters  addSetting( "verbose"           , &bVerbose         , GENERIC_VALUE_BOOLEAN);  addSetting( "record_version"    , &iRecordVersion   , GENERIC_VALUE_INTEGER);  addSetting( "record_log"        , &bRecordLog       , GENERIC_VALUE_BOOLEAN);  addSetting( "send_log"          , &bSendLog         , GENERIC_VALUE_BOOLEAN);  addSetting( "log_times"         , &bLogTimes        , GENERIC_VALUE_BOOLEAN);  addSetting( "log_file"          , &strLogFile       , GENERIC_VALUE_STRING );  addSetting( "synch_mode"        , &bSynchMode       , GENERIC_VALUE_BOOLEAN);  addSetting( "fullstate_l"       , &bFullStateL      , GENERIC_VALUE_BOOLEAN);  addSetting( "fullstate_r"       , &bFullStateR      , GENERIC_VALUE_BOOLEAN);   // heterogeneous player parameters from player.conf  addSetting( "player_types"      , &iPlayerTypes     , GENERIC_VALUE_INTEGER);  addSetting( "subs_max"          , &iSubsMax         , GENERIC_VALUE_INTEGER);  addSetting( "player_speed_max_delta_min"  , &dPlayerSpeedMaxDeltaMin  ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "player_speed_max_delta_max"  , &dPlayerSpeedMaxDeltaMax  ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "stamina_inc_max_delta_factor", &dStaminaIncMaxDeltaFactor,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "player_decay_delta_min"      , &dPlayerDecayDeltaMin     ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "player_decay_delta_max"      , &dPlayerDecayDeltaMax     ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "inertia_moment_delta_factor" , &dInertiaMomentDeltaFactor,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "dash_power_rate_delta_min"   , &dDashPowerRateDeltaMin   ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "dash_power_rate_delta_max"   , &dDashPowerRateDeltaMax   ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "player_size_delta_factor"    , &dPlayerSizeDeltaFactor   ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "kickable_margin_delta_min"   , &dKickableMarginDeltaMin  ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "kickable_margin_delta_max"   , &dKickableMarginDeltaMax  ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "kick_rand_delta_factor"      , &dKickRandDeltaFactor     ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "extra_stamina_delta_min"     , &dExtraStaminaDeltaMin    ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "extra_stamina_delta_max"     , &dExtraStaminaDeltaMax    ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "effort_max_delta_factor"     , &dEffortMaxDeltaFactor    ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "effort_min_delta_factor"     , &dEffortMinDeltaFactor    ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "new_dash_power_rate_delta_min", &dNewDashPowerRateDeltaMin   ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "new_dash_power_rate_delta_max", &dNewDashPowerRateDeltaMax   ,                                                        GENERIC_VALUE_DOUBLE );  addSetting( "new_stamina_inc_max_delta_factor", &dNewStaminaIncMaxDeltaFactor                                                      ,GENERIC_VALUE_DOUBLE  );    // penalty parameters  addSetting( "pen_dist_x"        , &dPenDistX        , GENERIC_VALUE_DOUBLE );  addSetting("pen_goalie_max_dist_x",&dPenMaxGoalieDistX,GENERIC_VALUE_DOUBLE);  addSetting("pen_allow_mult_kicks",&bPenAllowMultKicks,GENERIC_VALUE_BOOLEAN);  // tackle parameters  addSetting( "tackle_dist"       , &dTackleDist      , GENERIC_VALUE_DOUBLE );  addSetting( "tackle_back_dist"  , &dTackleBackDist  , GENERIC_VALUE_DOUBLE );  addSetting( "tackle_width"      , &dTackleWidth     , GENERIC_VALUE_DOUBLE );  addSetting( "tackle_exponent"   , &dTackleExponent  , GENERIC_VALUE_DOUBLE );  addSetting( "tackle_cycles"     , &iTackleCycles    , GENERIC_VALUE_INTEGER);  addSetting( "tackle_power_rate" , &dTacklePowerRate , GENERIC_VALUE_DOUBLE );   // important server parameters not in server.conf or player.conf - are now  addSetting( "effort_max"        , &dEffortMax       , GENERIC_VALUE_DOUBLE );  addSetting( "slow_down_factor"  , &iSlowDownFactor  , GENERIC_VALUE_INTEGER);  addSetting( "visible_distance"  , &dVisibleDistance , GENERIC_VALUE_DOUBLE );  addSetting( "extra_stamina"     , &dExtraStamina    , GENERIC_VALUE_DOUBLE );  // parameters which depend on other values  addSetting( "dMaximalKickDist"  , &dMaximalKickDist , GENERIC_VALUE_DOUBLE );}/*! This method is originally defined in the superclass GenericValues and is    overridden in this subclass. It sets the variable denoted by the first    argument to the value denoted by the second argument.    \param strName a string representing the name of a variable for which the    value must be (re)set    \param strValue a string representing a value which must be assigned to the    variable denoted by the first argument    \return a boolean indicating whether the update was successful */bool ServerSettings::setValue( const char *strName, const char *strValue ){  // call to the superclass method  bool bReturn = GenericValues::setValue( strName, strValue );  // compute values for parameters which depend on others (reason for override)  dMaximalKickDist = ( dKickableMargin + dPlayerSize + dBallSize );  return ( bReturn );}/*! This method is originally defined in the superclass GenericValues and is    overridden in this subclass. It reads the values from a server     configuration file and assigns them to the proper variables in this class.    \param strFileName a string representing the name of a configuration file    \param strSeparator a string representing the separator between the name of    a variable and its value    \return a boolean indicating whether the values were read correctly */bool ServerSettings::readValues( const char *strFileName,                                  const char *strSeparator ){  // call to the superclass method  bool bReturn = GenericValues::readValues( strFileName, strSeparator );  // compute values for parameters which depend on others (reason for override)  dMaximalKickDist = ( dKickableMargin + dPlayerSize + dBallSize );  return ( bReturn );}/*! Set method for the 'dGoalWidth' member variable.    \param d a double value representing a new width of the goal    \return a boolean indicating whether the update was successful */bool ServerSettings::setGoalWidth( double d ){  dGoalWidth = d;  return ( true );}/*! Get method for the 'dGoalWidth' member variable.    \return the width of the goal */double ServerSettings::getGoalWidth( ) const{  return ( dGoalWidth );}/*! Set method for the 'dPlayerSize' member variable.    \param d a double value representing a new player size    \return a boolean indicating whether the update was successful */bool ServerSettings::setPlayerSize( double d ){  dPlayerSize = d;  // NOTE: also update parameters for which the value depends on this variable  dMaximalKickDist = ( dKickableMargin + dPlayerSize + dBallSize );  return ( true );}/*! Get method for the 'dPlayerSize' member variable.    \return the size (=radius) of a player */double ServerSettings::getPlayerSize( ) const{  return ( dPlayerSize );}/*! Set method for the 'dPlayerDecay' member variable.    \param d a double value representing a new player speed decay per cycle    \return a boolean indicating whether the update was successful */bool ServerSettings::setPlayerDecay( double d ){  dPlayerDecay = d;  return ( true );}/*! Get method for the 'dPlayerDecay' member variable.    \return the player speed decay per cycle */double ServerSettings::getPlayerDecay( ) const{  return ( dPlayerDecay );}/*! Set method for the 'dPlayerRand' member variable.    \param d a double value representing a new random error in player movement    \return a boolean indicating whether the update was successful */bool ServerSettings::setPlayerRand( double d ){  dPlayerRand = d;  return ( true );}/*! Get method for the 'dPlayerRand' member variable.    \return the random error in player movement */double ServerSettings::getPlayerRand( ) const

⌨️ 快捷键说明

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