• “Just being a mediocre driver has never been my ambition. That's not my style” ― Michael Schumacher
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Have a chance to win a copy of F1 2017 The Game (PC) by following RaceDepartment on Twitter, Facebook, Instagram, Twitch, Steam and / or YouTube.

Dedicated Server - Conditions Carried Over

Discussion in 'rFactor 2' started by claytonbrown, Feb 6, 2017.

  1. claytonbrown

    claytonbrown

    Messages:
    7
    Ratings:
    +0
    Hi -

    * Wondering if we can have the condition of the car carry over from practice to qualy to race (damage, engine wear, and TIRE WEAR).
    * Is there a way to stop the user from getting fresh tires? What we'd like to do, is for example, your tires are Soft 1, Soft 2, Medium 1, and Medium 2. If you flat spot your first set of softs that flat spot carries over to the next session, you don't have unlimited tire sets.
    * We'd also like to export the condition of the car after the race to create an element of season strategy in terms of swapping out your engine. I don't know how this is recorded in rF2, but for example after race 1 the engine wear might be 8%, so you start practice for race 2 with 8% engine wear. Is this possible?
     
  2. Gijs van Elderen

    Gijs van Elderen
    Premium

    Messages:
    4,619
    Ratings:
    +2,400
    Most things No.

    Some yes, but to complicated to explain. :whistling:

    Some rules are in the player.json
    Some are with a plugin (knock-out and stockcar plugin)
    Some rules are in .rfm file
    Some rules are in the .gdb file

    Some contradict with eachother, So double and triple check everything. :)
     
  3. claytonbrown

    claytonbrown

    Messages:
    7
    Ratings:
    +0
    You seem pretty savvy with this stuff - do know of a website that would have all these kinds of details? I've searched for things like "rfactor 2 advanced dedicated server settings" and come up with junk. But, essentially I'd like to find a manual or tutorial of all the different options / settings I can use. Thanks!
     
  4. Gijs van Elderen

    Gijs van Elderen
    Premium

    Messages:
    4,619
    Ratings:
    +2,400
    This is the .rfm rule set.

    You can choose a customised rfm file when you create a server mod or RaceEvent.

    Code:
    Mod Name = Default
    Mod Version = 1.0
    Track Filter   = TMOD
    Vehicle Filter = OR: Driving_School
    SafetyCar = CorvettePC.veh
    Size =   0-MB
    Tracks = 0
    Layouts = 0
    Cars = 0
    Skins = 0
    Rating = 5.0
    Loading Bar Color = 16750848
    RaceCast Location = racecast.rfactor.net
    Max Opponents = 44
    Min Championship Opponents = 2
    RecommendedAIAggression = 0.3
    SafetyCarAvailable = 1
    
    DefaultScoring
    {
      RacePitKPH = 100
      NormalPitKPH = 100
      Practice1Day = Friday
      Practice1Start = 11:00
      Practice1Duration = 60
      Practice2Day = Friday
      Practice2Start = 13:00
      Practice2Duration = 60
      Practice3Day = Saturday
      Practice3Start = 9:00
      Practice3Duration = 45
      Practice4Day = Saturday
      Practice4Start = 10:15
      Practice4Duration = 45
      QualifyDay = Saturday
      QualifyStart = 13:00
      QualifyDuration = 60
      QualifyLaps = 12
      WarmupDay = Sunday
      WarmupStart = 9:30
      WarmupDuration = 30
      RaceDay = Sunday
      RaceStart = 14:00
      RaceLaps = 50
      RaceTime = 120
    
      RearFlapWetThreshold=0.5  // maximum track wetness allowed for rear flaps to be used (any session)
      RearFlapZoneSessions=16   // allowed sessions, added together (1=test, 2=practice, 4=qualifying, 8=warmup, 16=race)
    
      PitExitClosedRacePenalty = 1 // Whether to apply a penalty for exiting the pits when closed during the race session
      FormationAndStart=1       // 0=standing start, 1=formation lap & standing start, 2=lap behind safety car & rolling start, 3=use track default, 4=fast rolling start
      NumberOfFormationLaps = 1
      HeadlightsRequired = false  // whether headlights are required at night
    
      SafetyCarRoadMult=1.00 // Safety car threshold multipliers, in other words an adjustment for the sensitivity of the game to calling full-course cautions.
      SafetyCarOvalMult=0.60 // Lower numbers result in more full-course cautions; default=1.0, possible values are 0.01 (very sensitive) and up.
      SpinRoadSeverity=0.00  // Whether full-course cautions may be called for a spin more than 90 degrees where the driver keeps going.
      SpinOvalSeverity=0.10  // Higher values will result in more full-course cautions due to these temporary spins; default=0.0, possible values are 0.0-2.0.
    
      PitSpeedingAllowance = 0.2 // General tolerance for very momentary speeding (this value has no particular units); default=4.0
    
      LuckyDog = 3  // Whether leading car one lap down can re-gain his lap during a full-course caution.  Possible values are 0=off, 1=used at ovals only, 2=used at road courses only, 3=used everywhere.
      LuckyDogLapsLeft = 0  // How many laps must be left for lucky dog to take effect; default = 10, possible values are 0 (meaning it is always applicable) and up.
    
      MinimumYellowLaps = 2  // Minimum laps during a full-course yellow; default = 2, possible values are 1 (?) and up ... remember that it might be useful to override this one in some track GDBs.
      RandomYellowLaps = 1   // Additional random yellow laps; default = 1, possible values are 0 and up.
      ClosePits = 0       // Whether pits are closed during the first part of the full-course yellow; default=0, possible values 0 or 1.
      PitsClosedLaps = 1  // How many laps the pits remain closed during the first part of the full-course yellow; default=1, possible/ values are 1 and up (probably needs to be less than MinimumYellowLaps, though)
      LeadYellowLaps = 2  // This is the threshold for the number of yellow flag laps to determine whether the lead-lappers get to pit before everyone else.  Only valid if ClosePits is enabled; default=2, possible values are 0 (never let leaders pit first) and up.
      ClosedPitPenalty = 0  // Penalty given for getting served on a closed pitlane (meaning that the vehicle entered AFTER the pit was closed); default=2, possible values are 0=stop/go 1=drivethru 2=longest line.
    
      LocalYellowsRoad = 1  // Whether local yellows are available, which can be different for road vs. oval courses; default=1, possible values 0 or 1.
      LocalYellowsOval = 1
    
      BlueFlags = 1 // 0=no blue flags, 1=show but never penalize, 2=show and penalize if necessary for vehicles within 0.3 seconds, 3=0.5 seconds, 4=0.7 seconds, 5=0.9 seconds, 6=1.1 seconds
    
      PrivateQualifying = 0  // Private qualifying, which means that everyone is qualifying simultaneously but alone on track; default=0, possible values 0 or 1.
    
      AdditivePenalties = 0  // Whether penalties add to each other, essentially meaning they can all be served at once; default=0, possible values 0 or 1.
    
      LapsToServePenalty = 5  // Number of laps to serve the penalty before being disqualified; default=3, possible values 1 and up.
    
      PassingBeforeLineOval=0  // Whether passing is allowed on starts and restarts before the start/finish line; default=0, possible values are 1=passing on right is legal, 2=passing on left is legal, and 3=passing anywhere is legal.
      PassingBeforeLineRoad=0
    
      FreezeOrder = 1  // Whether order of vehicles is frozen when the full-course yellow is first shown.  If necessary, server will correct the order as people cross the start/finish line; default=0, possible values 0 or 1.
    
      // Behavior if full-course yellow is active at the end of a race; default=0, possible values are 0=race finishes normally, 1=finish will be delayed one time only and will allow one lap after the green flag,
      // 2=finish will be delayed one time only and will allow two laps after the green flag,  3=finish can be delayed multiple times, with only one lap allowed after the green flag (not sure this option  works as expected),
      // 4=finish can be delayed multiple times, with two laps needed after the green flag.  Note that a full-course yellow called on the very last lap will NOT currently delay the finish.  Also note that this feature does
      // not work for timed races.
      FinishUnderCaution = 0
    
      CountCautionLaps = 0  // Whether caution laps are counted towards the total number of laps; default=0, possible values 0 or 1.
    
      DoubleFileRestarts=0  // Whether restarts are double-file and how many laps left are required to do so; default=0, possible values are 0=off, 1+=laps left required to convert to double file.
    
      ParcFerme = 0  // Control over what changes can be made between qualifying and race; default=0, possible values are 0=no restrictions, 1=restrictions apply, 2=restrictions apply as long as it doesn't rain in qualifying or afterwards
      // Whether fuel level remains the same (only if parc ferme is applicable).  In general, this value specifies what fraction of the qualifying session is reached before fuel usage becomes "free"; default=0.0, possible
      // values are 0.0-1.0, where 0.0 indicates fuel level is always free, 0.5 would mean fuel level at the halfway point of qualifying will be used to start the race, and 1.0 means fuel level at the end of qualifying will
      // be used to start the race (and no refueling allowed during qualifying).
      ParcFermeFuel = 0.0
      ParcFermeTires = 10  // How many of the top qualifiers have to keep their used tires on for the race (only if parc ferme is applicable); default=0, possible values are 0 and up (300 recommended if everybody has to keep their used tires).
      ParcFermeSetup = 1   // Whether setup used during qualifying must be used during the race (only if parc ferme is applicable), except for the RFM/season/GDB or PLR file "FreeSettings"; default=1, possible values 0 or 1.
    
      // Settings that are free to be changed regardless of parc ferme.  You must add the values of each setting that drivers are free to change:
      //     1 = steering lock, 2 = brake pressure, 4 = starting fuel, 8 = fuel strategy, 16 = tire compound, 32 = brake bias, 64 = front wing, 128 = engine settings (rev limit, boost, and engine braking)
      // Possible values are -1 (use default value) up to 255 (which equals 1+2+4+8+16+32+64+128).
      FreeSettings = 244
    
      // Method to end timed races.  The default behavior is to wait until the leader crosses the start/finish line before waving the checkered flag.
      // However, in the case that the leader has crashed out but is multiple laps ahead of the second-place vehicle, there needs to be a fail-safe case.
      // This value defines how many laps non-leaders can complete after time runs out before being given the checkered flag; default=2 (which means that, in most normal circumstances, the checkered flag will be given
      // when the leader crosses the s/f line), possible values are 1 (which would be the original rFactor behavior) or any positive integer.
      TimedRaceNonLeaderLaps = 2
    }
    
    StartingMoney = 5000000
    StartingVehicle = tundra22
    DriveAnyUnlocked = 1
    BaseCreditMult = 1.0
    LapMoneyMult = 1.0
    LapExpMult = 1.0
    FineMoneyMult = 1.0
    FineExpMult = 0.0
    PoleSingleMoneyMult = 1.0
    PoleSingleExpMult = 1.0
    PoleCareerMoneyMult = 1.0
    PoleCareerExpMult = 1.0
    PoleMultiMoneyMult = 1.0
    PoleMultiExpMult = 1.0
    WinSingleMoneyMult = 1.0
    WinSingleExpMult = 1.0
    WinCareerMoneyMult = 1.0
    WinCareerExpMult = 1.0
    WinMultiMoneyMult = 1.0
    WinMultiExpMult = 1.0
    PointsSingleMoneyMult = 1.0
    PointsSingleExpMult = 1.0
    PointsCareerMoneyMult = 1.0
    PointsCareerExpMult = 1.0
    PointsMultiMoneyMult = 1.0
    PointsMultiExpMult = 1.0
    SeasonScoringInfo
    {
      FirstPlace = 8
      SecondPlace = 5
      ThirdPlace = 3
      FourthPlace = 2
      FifthPlace = 1
      SixthPlace = 0
      SeventhPlace = 0
      EighthPlace = 0
    }
    PitOrderByQualifying = false
    PitGroupOrder
    {
      // format is: PitGroup = <# of vehicles sharing pit>, <groupname>
      PitGroup = 2, Group1
      PitGroup = 2, Group2
      PitGroup = 2, Group3
      PitGroup = 2, Group4
      PitGroup = 2, Group5
      PitGroup = 2, Group6
      PitGroup = 2, Group7
      PitGroup = 2, Group8
      PitGroup = 2, Group9
      PitGroup = 2, Group10
      PitGroup = 2, Group11
      PitGroup = 2, Group12
      PitGroup = 2, Group13
      PitGroup = 2, Group14
      PitGroup = 2, Group15
      PitGroup = 2, Group16
      PitGroup = 2, Group17
    }
    
    In the Player.json
    MULTI = for server settings
    GPRIX = Single player mode
    CHAMP = championships (not in use)

    Code:
        "GPRIX AI Driver Strength":100,
        "GPRIX AI Driver Strength#":"100 should approximate real life",
        "GPRIX Allowed Vehicles":"RDLMS_Prototype",
        "GPRIX CrashRecovery":3,
        "GPRIX CrashRecovery#":"0=none, 1=artificially keep cars on track, 2=flip cars upright, 3=both",
        "GPRIX Damage Multiplier":100,
        "GPRIX Damage Multiplier#":"100 should approximate real life",
        "GPRIX FreeSettings":-1,
        "GPRIX FreeSettings#":"-1=use RFM\/season\/GDB default, or add to allow minor changes with fixed\/parc ferme setups: 1=steering lock, 2=brake pressure, 4=starting fuel, 8=fuel strategy 16=tire compound, 32=brake bias, 64=front wing, 128=engine settings",
        "GPRIX Fuel Consumption Multiplier":1,
        "GPRIX Opponents":0,
        "GPRIX Race Finish Criteria":1,
        "GPRIX Race Finish Criteria#":"-2=%laps, -1=%time, 0=%laps&time, 1=laps, 2=time, 3=laps&time",
        "GPRIX Race Laps":30,
        "GPRIX Race Length":0.5,
        "GPRIX Race Time":120,
        "GPRIX Race Time#":"minutes",
        "GPRIX Speed Compensation":0,
        "GPRIX Speed Compensation#":"0 (none) - 10 (max)",
        "GPRIX Tire Wear Multiplier":1,
        "GPRIX BlueFlags":7,
        "GPRIX BlueFlags#":"0=none, 1=show but never penalize, 2=show and penalize if following within 0.3 seconds, 3=0.5s, 4=0.7s, 5=0.9s, 6=1.1s, 7=use RFM value \"BlueFlags=<0-6>\" (default is 3)",
        "GPRIX Flag Rules":2,
        "GPRIX Flag Rules#":"Level of rule enforcement, 0=none, 1=penalties only, 2=penalties & full-course yellows, 3=everything except DQs",
        "GPRIX Formation Lap":0,
        "GPRIX Formation Lap#":"0=standing start, 1=formation lap & standing start, 2=lap behind safety car & rolling start, 3=use track default, 4=fast rolling start",
        "GPRIX Grid Walkthrough":1,
        "GPRIX Grid Walkthrough#":"Cinematic walkthrough of vehicles before race",
        "GPRIX Num Qual Sessions":1,
        "GPRIX Num Qual Sessions#":"range: 0-4",
        "GPRIX Num Race Sessions":1,
        "GPRIX Num Race Sessions#":"range: 1-4",
        "GPRIX ParcFerme":3,
        "GPRIX ParcFerme#":"0=off, 1=no setup changes allowed between qual and race except for 'Free Settings'), 2=same unless rain, 3=use RFM default 'ParcFerme=<0-2>'",
        "GPRIX PrivatePractice":1,
        "GPRIX PrivatePractice#":"(note: used to be Private Test Day) 0=all cars practice visibly on track together, 1=only one car is visible at a time",
        "GPRIX PrivateQualifying":2,
        "GPRIX PrivateQualifying#":"0=all cars qualify visibly on track together, 1=only one car is visible at a time, 2=use default from RFM, season, or track entry PrivateQualifying=<0 or 1>",
        "GPRIX RaceStartingTime":-1,
        "GPRIX RaceStartingTime#":"-3=random, -2=random daytime, -1=default RFM, 0-1439=minutes after midnight to start race",
        "GPRIX RaceTimeScale":10,
        "GPRIX RaceTimeScale#":"-1 = use race distance percentage, 0 - 60 = multiply time by given factor",
        "GPRIX Reconnaissance":0,
        "GPRIX Reconnaissance#":"Reconnaissance laps",
        "GPRIX Safety Car Collidable":false,
        "GPRIX Safety Car Collidable#":"Whether safety car is collidable",
        "GPRIX Safety Car Thresh":1,
        "GPRIX Safety Car Thresh#":"Threshold for bringing out safety car (lower numbers -> more full-course yellows), please note that there are now RFM multipliers for this value",
        "GPRIX TimeScaledWeather":true,
        "GPRIX TimeScaledWeather#":"Whether weather time is scaled with session length",
        "GPRIX Unsportsmanlike Sensitivity":1.5,
        "GPRIX Unsportsmanlike Sensitivity#":"0.1 - 10.0: Higher number = less sensitive checking for unsportsmanlike driving",
        "GPRIX Weather":4,
        "GPRIX Weather#":"0=sun, 1=clouds, 2=rain, 3=default, 4=random, 5=scripted",
        "Race Timer":3600,
        "Race Timer#":"Seconds between displaying time remaining in race other than 1\/5\/10\/30 minutes (zero disables)",
        "RealRoadTimeScalePractice":10,
        "RealRoadTimeScalePractice#":"Applies to testday\/practice\/warmup: -1=scaled with session length, 0=static, 0.1-0.9=slow, 1=normal, 2=2x, etc.",
        "RealRoadTimeScaleQualifying":5,
        "RealRoadTimeScaleQualifying#":"Applies to any qualifying session: -1=scaled with session length, 0=static, 0.1-0.9=slow, 1=normal, 2=2x, etc.",
        "RealRoadTimeScaleRace":13,
        "RealRoadTimeScaleRace#":"Applies to any race session: -1=scaled with session length, 0=static, 0.1-0.9=slow, 1=normal, 2=2x, etc.",
        "Recon Pit Closed":120,
        "Recon Pit Closed#":"Time that pits are closed before formation lap (real-life is 900 seconds)",
        "Recon Pit Open":180,
        "Recon Pit Open#":"Time that pits remain open for recon laps (real-life is 900 seconds)",
        "Recon Timer":true,
        "Recon Timer#":"Whether timer is displayed in message box",
        "Run Practice1":true,
        "Run Practice2":false,
        "Run Practice3":false,
        "Run Practice4":false,
        "Run Warmup":false,
        "WarmupStartingTime":-1,
        "WarmupStartingTime#":"-3=random, -2=random daytime, -1=default RFM, 0-1439=minutes after midnight"
    

    Most things are explained in the file itself.

    for example: Parc ferme (locked after Quali)
    "GPRIX FreeSettings":-1,
    "GPRIX FreeSettings#":"-1=use RFM\/season\/GDB default, or add to allow minor changes with fixed\/parc ferme setups: 1=steering lock, 2=brake pressure, 4=starting fuel, 8=fuel strategy 16=tire compound, 32=brake bias, 64=front wing, 128=engine settings",


    It's at -1 ==> it listens to the rfm file settings or if there are track GDB file overwrite settings it listens to those.

    Change this to 1=steering lock ==> Only steering lock is adjustable
    Change this to 3 = (1+2) ==> Only steering lock and brake pressure is adjustable
    Change this to 35 = (1+2+32) ==> Only steering lock, brake pressure is adjustable and brake bias is adjustable


    ..........................

    I hope you understand this is very advanced stuff with tons of possible combinations of rules. :cool:
    Keep in mind that not all options and combinations are full featured or fully tested.

    TIP1: 1 little typo and your file is broken (keep a backup ;))
    TIP2: Don't worry about all this stuff to much. Just go racing. :D
     
  5. claytonbrown

    claytonbrown

    Messages:
    7
    Ratings:
    +0
    Thanks dude this is perfect.

    Quite clever of them to use this "settings via addition" method (35 = options 1 + 2 + 32).

    I'll play around with it, and with the code I can get better google results because I'll be searching for specific things.

    Thanks again!