After searching for hours to find a document where all possible Parameters in an rF2 GDB file are contained and briefly explained I did start this thread. Thanks to Tosch there was a good starting point. Further Information was allready JKA.
I will further update this thread based on the information which will be available. At some point of time there will be hopefully some documentation from ISI available and this thread is no longer needed
If a parameter is not fully understood I'll add a remark and put the text in between question marks. Please be aware that this document is WiP - if you see any failures or wrong statements please feel free to comment as needed.
Basefile was the GDB file from Nordschleife as provided by Tosch. I did not change all the names to standard names - just consider "Nordschleife" as a placeholder for your track name ;-)
--------------------------------------------------------------------------------
Nordschleife_Tourist_Summer //Base File
{
Filter Properties = GTWEC rFRS F2_2012 RCC ISIFM IndyCar TMOD
Attrition = 30
TrackName = Nordschleife Tourist // Name of Track
EventName = Tourist drives summer
GrandPrixName = Tourist drives summer //this must be the same as event name in order to sort circuit info correctly.
VenueName = Nordschleife_Tourist
VenueIcon = Nordschleife_Tourist\Nordschleife_TouristIcon.dds
Location = Nuerburg, Germany
Length = 20.832 KM / 12.944 Miles
TrackType = Permanent Road Course
Track Record = Stefan Bellof, 371.130
FormationAndStart=2 // formation lap with rolling start (safety car leads the field and peels off into the pits)
//RollingStartLoc=1 // Start from alternate grid
TerrainDataFile=..\Nordschleife_Tourist.tdf // terrain file override
HeadlightsRequired = true // whether headlights are required at night
Max Vehicles = 39
NumStartingLights=5
///////////////////////////Pit Groups///////////////////////////////////////////////
// format is: PitGroup = <# of vehicles sharing pit>, <groupname>
PitGroupOrder
{
PitGroup = 2, Group14
PitGroup = 2, Group13
PitGroup = 2, Group12
PitGroup = 2, Group11
PitGroup = 2, Group10
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
}
PitOrderByQualifying = TRUE //?Does this change the Pit-Order depending on Qualifying result?
SafetyCarAvailable = 0 // 0=no Safety Car ; 1=Safety Car depending on threshold multiplier (see SafetyCarRoadMult)
MinimumYellowLaps = 1
LeadYellowLaps = 2
RacePitKPH = 60
NormalPitKPH = 60
PitlaneBoundary = 1 // 0 = no clear boundary between track and pits, so this requires a request in order to take a pitstop
GarageDepth = 2.0 // distance, which AI car must drive straight before turning into pitlane (how deep car is placed in garage). If AI has problems to exiting garage safely, adjusting this might help
TestDaystart = 7:00
Practice1Start = 8:00
Practice2Start = 9:00
Practice3Start = 10:00
QualifyStart = 10:00
RaceStart = 14:00
RaceLaps = 6
// Safety car threshold multipliers, in other words an adjustment for the sensitivity of the game to calling
// full-course cautions. These can be different for road vs. oval courses. Lower numbers result in more
// full-course cautions; default=1.0, possible values are 0.01 (very sensitive) and up. Values more than
// 5.0 will probably result in no full-course cautions being called by the game (note that there are now
// multiplayer admin commands to call cautions).
SafetyCarRoadMult=5.00
// Whether full-course cautions may be called for a spin more than 90 degrees where the driver keeps going.
// These can be different for road vs. oval courses. Higher values will result in more full-course cautions
// due to these temporary spins; default=0.0, possible values are 0.0-2.0.
SpinRoadSeverity=0.1
///////////////////////////Time-of-day lighting//////////////////////////////////////
ShadowMinSunAngle=15.0
ShadowMinDiffusion=-0.6 // min diffusion when sun is 100% occluded by clouds (range -1.0 to 1.0)
ShadowMaxDiffusion=0.2 // max diffusion when sun is 0% occluded by clouds (range -1.0 to 1.0)
ShadowSplitRatio=1.0
NightLightThreshold=0.5
SunApeture=0.06 // fov in radians of sun camera for computing cloud cover
LocalCloudIntensity = 0.25 // intensity adjustment for cloud lighting 0.0: amb = diff; 1.0: amb/diff same as scene
Latitude = 50.3 // degs from Equator (range: -90 to 90, positive is Northern Hemisphere)
Longitude = 6.95 // degs from GMT (-180 to 180, positive is East)
Altitude = 600.0 // meters above sea level
RaceDate = July 14, 2014 // default date for the race
TimezoneRelativeGMT = 1.0 // hours compared to Greenwich Mean Time (should be negative to the West)
DSTRange=(88.0, 298.0, 2013, 2014) // (start day 1.0-367.0, end day 1.0-367.0, start year, end year); multiple lines allowed
// U.S. example, where DST changed in 2007 (previous and future changes not simulated here):
// DSTRange=(94.8, 301.3, 1987, 2006) // approximation of 1st Sunday in April to last Sunday in October
// DSTRange=(70.8, 308.3, 2007, 9999) // approximation of 2nd Sunday in March to first Sunday in November
////////////////////////////////////////////////////////////////////////////////////
// Variables to control behavior when Cutting the track and/or going wrong direction
////////////////////////////////////////////////////////////////////////////////////
CutLeavingThresh = 2.5 // Threshold for leaving track
CutJoiningThresh = 1.0 // Threshold for re-joining track
CutPassPenalty = 0.40 // Penalty for each driver we pass (this is an inaccurate indicator)
CutTimeRatioMax = 0.95 // Start penalizing even if we lose 5% of time
CutTimeRatioPenalty = 0.35 // Penalty for fraction of time savings
CutSecondsSaved = 0.75 // Penalty for each second saved
CutWorstYawPenalty = 1.5 // Penalty for staying under control
CutDirectionalPenalty = 1.0 // Penalty (actually reward) for being in wrong direction
CutWarningThresh = 1.6 // Threshold for warning (or disallowance of lap)
CutStopGoThresh = 3.0 // Threshold for immediate stop/go penalty
///////////////////////////Setup Information//////////////////////////////////////////
SettingsFolder = Name_of_Track // Sub-folder to store Setups; typical value "TrackName"
SettingsCopy = Name_of_Track.svm // ?Standard Setup?
SettingsAI = Name_Of_Track.svm // Setup to be used by AI
////////////////////////////////////////////////////////////////////////////////////
RearFlapZone // DRS for race sessions, actual data is wrapped inside brackets { and }
{
MinimumCrossings=3 // how many times you must cross the detection before it is allowed
TimeThreshold=1.0 // how many seconds behind another car for it to be allowed
DetectionLapDist=111.1 // distance around track from s/f line where time threshold is detected
ActivationLapDist=222.2 // beginning of DRS zone
DeactivationLapDist=333.3 // end of DRS zone (DRS zones can be wrapped around s/f line and you can have multiple DRS zones)
}
// Remark: Clarification how multiple DRS Zones (RearFlapZones) can be configured needed
///////////////////////////SCORETOWER DATA////////////////////////////////////////////
ScoreboardFont=Malaysia_SCOREFONT.tga // default is scoreboardfont.bmp
ScoreboardBackground=SCORETOWERBKG.tga // default is scoreboardbkg.bmp
ScoreboardMaxEntries=10 // how many car numbers can be displayed on tower (default is 32)
ScoreboardStartX=0.0 // x-position in texture to write first car number (default is 0)
ScoreboardStartY=0.0 // y-position in texture to write first car number (default is 10)
ScoreboardIncX=0.0 // increment in x-position for each new car number (default is 0)
ScoreboardIncY=51.2 // increment in y-position for each new car number (default is 16)
ScoreboardScaleX=4.140 // scale multiplier for x (default is 1.0)
ScoreboardScaleY=1.040 // scale multiplier for y (default is 1.0)
///////////////////////////LOOSE OBJECT DATA///////////////////////////
//<mass>, <inertia x>, <inertia y>, <inertia z>, <spring>, <damper>, <friction>
sign_HayBayle=(70, 25.0, 25.0, 20.0, 7000.0, 420.0, 0.8 )
sign_KmMarkerA=(20, 7.0, 7.0, 6.5, 2000.0, 120.0, 0.4 )
sign_TurnMarkerA=(24, 8.5, 8.5, 8.0, 2400.0, 144.0, 0.4 )
post_reflectorA=(12, 4.0, 4.0, 3.5, 1200.0, 72.0, 0.5 )
post_FPostB=(10, 3.3, 3.3, 3.0, 1000.0, 60.0, 0.7 )
sign_FenceB=(20, 7.0, 7.0, 6.5, 2000.0, 120.0, 0.8 )
}