[ track ]
track_name = MICHIGAN INTERNATIONAL SPEEDWAY®
track_name_short = Michigan 2012 FSE
track_city= Brooklyn
track_state = MI
track_length_n_type = 2-mile D-shaped Oval
track_misc_info_1 = Turns banked 18°
track_misc_info_2 = Frontstretch 2,229 feet banked 12°
track_misc_info_3 = Backstretch 2,242 feet banked 5°
track_misc_info_4 = A.I. Enhanced by J.R. Franklin
track_num_turns = 4
track_length = 2.000m
track_altitude = 0.0
track_type = 3                                  ; long oval
chassis_type = 2                                ; speedway
default_event_laps = 200
default_qual_laps = 2
track_base_month = 6                            ; the race month used for single, multi, and testing
max_starters = 43
track_chassis_grip = 1.02
track_tire_heat = 0.75                          ; > modifies amount of heat going into the tire at a given track
track_tire_wear = 0.88                          ; > 1.0 means more wear, i.e. 2.0 is twice normal wear, 0.5 is half normal wear
track_tire_wear_loss = 0.24                     ; percentage of grip lost at full tire wear
track_tire_wear_exp = 1.15                      ; > 1.0 gives a bigger fall off later in run < 1.0 gives a bigger fall off early in run
track_paint_grip = 1.04			;LOW Groove in corners and paint line grip.
track_asphalt_grip = 1.01		;MIDDLE Groove in corners and all straightaways.
track_concrete_grip = 1.08		;OUTSIDE Groove in Corners and pit stalls.
track_north_angle = 350                         ; angle of true north in degrees

; Starter decisions:
;       First value is earliest possible green flag dlong, should be after to pace car pit entrace point
;       Second value is latest possible green flag dlong. Must be before start line and after first value
starter_decision = 2920.00 3050.00


[ track_gns ]
track_tire_heat = 0.75                          ; > modifies amount of heat going into the tire at a given track
track_tire_wear = 0.88                          ; > 1.0 means more wear, i.e. 2.0 is twice normal wear, 0.5 is half normal wear
track_tire_wear_loss = 0.21                     ; percentage of grip lost at full tire wear
track_tire_wear_exp = 1.15                      ; > 1.0 gives a bigger fall off later in run < 1.0 gives a bigger fall off early in run
track_paint_grip = 1.04			;LOW Groove in corners and paint line grip.
track_asphalt_grip = 1.00		;MIDDLE Groove in corners and all straightaways.
track_concrete_grip = 1.07		;OUTSIDE Groove in Corners and pit stalls.

[ track_cts ]
track_tire_heat = 0.75                          ; > modifies amount of heat going into the tire at a given track
track_tire_wear = 0.88                          ; > 1.0 means more wear, i.e. 2.0 is twice normal wear, 0.5 is half normal wear
track_tire_wear_loss = 0.21                     ; percentage of grip lost at full tire wear
track_tire_wear_exp = 1.15                      ; > 1.0 gives a bigger fall off later in run < 1.0 gives a bigger fall off early in run
track_paint_grip = 1.02			;LOW Groove in corners and paint line grip.
track_asphalt_grip = 0.99		;MIDDLE Groove in corners and all straightaways.
track_concrete_grip = 1.06		;OUTSIDE Groove in Corners and pit stalls.



[AppRuleCutCourse]
qual_only=1                                     ; only enforce checkpoints during qualifying session

[ configuration_0 ]
  ; Format: dlong, start dlat, end dlat, time penalty (sec), 0 (required)
  ; 2 checkpoint minimum
checkpoint_0 = 2890.00 -4.00 21.50 0 0          ; prevents cutting grass (qual only)
checkpoint_1 = 3170.00 -4.00 21.50 0 0

[ cup ]
record_lap_time = 36.053
record_holder = Mark Martin (2012)

[ cts ]
record_lap_time = 39.109
record_holder = Joey Coulter (2012)

[ gns ]
record_lap_time = 37.820
record_holder = Austin Dillon (2012)

[ weather ]
track_base_temp = 76.0                          ; track average temperature on June 17 in deg F
track_temp_range = 4.5                          ; one standard deviation from average in deg F
track_temp_swing = 5.0                         ; 
track_wind_speed = 8.1                          ; average wind speed at the track in MPH
track_wind_speed_range = 5.0                    ; one standard deviation from average in MPH
track_wind_direction = 270                      ; compass heading in degrees from which wind is most likely (in this case from Northwest)
track_cloud_prob = 0.91                         ; probability of cloud cover, 0.0 to 1.0

[CrowdSound]
num_sources = 4
pos_0 = -233 333 4
pos_1 = -216 333 5
pos_2 = 155 -394 2
pos_3 = -41 -396 1

[ ai_track ]
pace_merge_from_pit_line_dlong = 400.00
pace_merge_to_pit_line_dlong = 2725.00
pace_speed_limit_mph = 55
ai_accel_modifier = 0.65                        ; acceleration grip efficiency
ai_decel_modifier = 1.00                        ; braking grip efficiency
ai_fuel_use = 0.97                              ; > 1.0 = more fuel consumed
ai_grip_modifier = 1.1205                         ; > 1.0 = more grip
ai_drag_modifier = 0.95                         ; > 1.0 = more drag, which is slower
ai_line_modifier = 1.035			; dangerous hack, don't use unless you are a trained professional
ai_qual_modifier = 1.06				; > 1.0 = faster during qualifying
ai_wall_offset = 100                            ; 100 = full-time AI collision detection
ai_tire_wear_left = 0.39                        ; left tire wear adjuster for ai
ai_tire_wear_right = 0.48                       ; right tire wear adjuster for ai
ai_arcade_tire_wear = 0.01                      ; lower = less wear (used in addition to the above left/right modifiers)
ai_arcade_fuel_use = 0.97                       ; > 1.0 = more fuel consumed (used in addition to fuel_use above)
ai_arcade_drag_modifier = 1.189                 ; > 1.0 = more drag, which is slower
strategy_lap_time_wear_loss = 2.118             ; lap time loss from totally worn tires
strategy_lap_time_fuel_use_gain = 0.270         ; lap time gain from low fuel
strategy_base_pitting_cost = 29.228             ; time lost to a stop & go pitstop
ai_pacing_distance = 1.9                        ; car lengths behind while pacing
ai_bunching_distance = 1.75                     ; car lengths behind while bunching for start
ai_drafting_distance = 1.1                      ; car lengths behind while racing
ai_panic_decel = 6.0                            ; G's of extra deceleration inducing panic
ai_dlongpad_scale = 5.0                         ; scales padding in braking zones (smaller = more scaling)
ai_dlat_pad = 0.35
ai_squeeze_pcnt = 1.85
ai_inverse_slipcurve_k = 0.40                   ; how much slip angle AI need to corner. smaller = more, more = increased drag

[ ai_track_gns ]
ai_accel_modifier = 0.65                        ; acceleration grip efficiency
ai_decel_modifier = 1.00                        ; braking grip efficiency
ai_fuel_use = 0.96                              ; > 1.0 = more fuel consumed
ai_grip_modifier = 1.121                         ; > 1.0 = more grip
ai_drag_modifier = 0.91                         ; > 1.0 = more drag, which is slower
ai_line_modifier = 1.035                         ; dangerous hack, don't use unless you are a trained professional
ai_qual_modifier = 1.014				; > 1.0 = faster during qualifying
ai_tire_wear_left = 0.38                        ; left tire wear adjuster for ai
ai_tire_wear_right = 0.47                       ; right tire wear adjuster for ai
ai_pacing_distance = 1.9                        ; car lengths behind while pacing
ai_bunching_distance = 1.75                     ; car lengths behind while bunching for start
ai_drafting_distance = 1.1                      ; car lengths behind while racing
ai_panic_decel = 6.0                            ; G's of extra deceleration inducing panic
ai_dlongpad_scale = 5.0                         ; scales padding in braking zones (smaller = more scaling)
ai_dlat_pad = 0.20
ai_squeeze_pcnt = 2.06
ai_inverse_slipcurve_k = 0.40                   ; how much slip angle AI need to corner. smaller = more, more = increased drag

[ ai_track_cts ]
ai_accel_modifier = 0.67                        ; acceleration grip efficiency
ai_decel_modifier = 0.99                        ; braking grip efficiency
ai_fuel_use = 0.96                              ; > 1.0 = more fuel consumed
ai_grip_modifier = 1.1205                         ; > 1.0 = more grip
ai_drag_modifier = 0.91                         ; > 1.0 = more drag, which is slower
ai_line_modifier = 1.035                         ; dangerous hack, don't use unless you are a trained professional
ai_qual_modifier = 1.01				; > 1.0 = faster during qualifying
ai_tire_wear_left = 0.38                        ; left tire wear adjuster for ai
ai_tire_wear_right = 0.47                       ; right tire wear adjuster for ai
ai_pacing_distance = 1.9                        ; car lengths behind while pacing
ai_bunching_distance = 1.75                     ; car lengths behind while bunching for start
ai_drafting_distance = 1.1                      ; car lengths behind while racing
ai_panic_decel = 6.0                            ; G's of extra deceleration inducing panic
ai_dlongpad_scale = 5.0                         ; scales padding in braking zones (smaller = more scaling)
ai_dlat_pad = 0.35
ai_squeeze_pcnt = 2.15
ai_inverse_slipcurve_k = 0.40                   ; how much slip angle AI need to corner. smaller = more, more = increased drag


[ AppRuleEnterPits ]
pit0_entrance_point0_dlat = 53.37
pit0_entrance_point0_dlong = 2872.53
pit0_entrance_point1_dlat = 38.81
pit0_entrance_point1_dlong = 2877.46
pit1_entrance_point0_dlat = 53.37
pit1_entrance_point0_dlong = 2872.53
pit1_entrance_point1_dlat = 38.81
pit1_entrance_point1_dlong = 2877.46

[ pit_lane_0 ]
; AI stuff
merge_from_pit_line_dlong = 1268.0              ; dlong at which cars leaving pits will merge to race line
merge_to_pit_line_dlong = 2000.0                ; dlong at which cars entering pits will merge to pit line
merge_to_pit_line_length = 460.0                ; length of merge window
pit_lane_end_dlong = 315.5                      ; dlong where pit lane proper ends
pit_lane_start_dlong = 2856.60                   ; dlong where pit lane proper begins
slow_pit_line_dlat_offset = 5.0                 ; track-specific dlat_offset of 2nd slower pit line (0 if N/A)
stall_exit_goal_dlat_offset = -5.0              ; goal dlat offset (+ left) for the pit stall exit cubic line
stall_exit_goal_dlong_offset = 7.0              ; goal dlong offset (ahead) for the pit stall exit cubic line
begin_stall_entry_offset = 21.0                 ; offset at which to begin entering the pit stall
begin_stall_approach_offset = 100.0             ; offset at which to begin approaching the pit stall
lane_merge_dlong = 1238.00                      ; Dlong which you must remain on the apron when exiting the pits

; race control stuff
lane_on_right = 0                               ; 0 if on left, 1 if on right
lane_has_wall = 1                               ; 0 no wall, 1 has wall
speed_limit_MPH = 45.0

; pace car
begin_pacestall_entry_offset = 20.0             ; offset at which to begin entering the pit stall
begin_pacestall_approach_offset = 45.0          ; offset at which to begin approaching the pit stall
pacestall_exit_goal_dlong_offset = 8.0          ; goal dlong offset (ahead) for the pit stall exit 
pacestall_exit_goal_dlat_offset = -3.0          ; goal dlat offset for the pit stall exit
stall_pace = 307.00 63.00 -0.25

; special stalls
stall_practice_exit = 252.54 66.61 -0.25
stall_qual_exit = 274.50 61.37 -0.25  ;252.54 66.61 -0.25

; regular stalls
stall_0 = 279.89 69.51 -0.26
stall_1 = 268.08 72.17 -0.25
stall_2 = 256.36 75.02 -0.24
stall_3 = 244.03 77.73 -0.23
stall_4 = 232.24 80.34 -0.22
stall_5 = 219.71 82.84 -0.20
stall_6 = 207.99 85.11 -0.18
stall_7 = 195.76 87.11 -0.17
stall_8 = 183.47 89.14 -0.16
stall_9 = 171.36 91.10 -0.15
stall_10 = 152.20 93.79 -0.14
stall_11 = 139.99 95.39 -0.13
stall_12 = 127.49 96.81 -0.12
stall_13 = 115.12 98.17 -0.11
stall_14 = 102.12 99.36 -0.10
stall_15 = 89.90 100.42 -0.08
stall_16 = 77.27 101.21 -0.07
stall_17 = 64.84 102.10 -0.06
stall_18 = 45.21 102.99 -0.05
stall_19 = 32.56 103.40 -0.03
stall_20 = 19.58 103.68 -0.02
stall_21 = 7.80 103.83 -0.01
stall_22 = 3210.51 103.84 0.00
stall_23 = 3197.83 103.77 0.02
stall_24 = 3185.41 103.41 0.03
stall_25 = 3172.93 103.01 0.04
stall_26 = 3153.19 101.98 0.05
stall_27 = 3140.65 101.07 0.06
stall_28 = 3127.94 100.26 0.07
stall_29 = 3115.66 99.27 0.09
stall_30 = 3102.84 98.14 0.11
stall_31 = 3090.49 96.83 0.12
stall_32 = 3078.06 95.24 0.13
stall_33 = 3065.71 93.59 0.14
stall_34 = 3046.60 90.89 0.15
stall_35 = 3034.12 88.97 0.16
stall_36 = 3021.74 86.92 0.18
stall_37 = 3009.56 84.59 0.19
stall_38 = 2997.23 82.31 0.20
stall_39 = 2985.48 79.91 0.22
stall_40 = 2973.33 77.29 0.23
stall_41 = 2961.50 74.55 0.24
stall_42 = 2943.54 70.19 0.25
stall_43 = 2933.00 68.00 0.27
stall_44 = 2920.00 65.00 0.28
stall_45 = 2907.00 61.50 0.29
stall_46 = 2894.00 58.00 0.29
stall_47 = 2881.50 55.57 0.30

[ pit_lane_1 ]
; AI stuff
merge_from_pit_line_dlong = 1350.0              ; dlong at which cars leaving pits will merge to race line
merge_to_pit_line_dlong = 2000.0                ; dlong at which cars entering pits will merge to pit line
merge_to_pit_line_length = 460.0                ; length of merge window
pit_lane_end_dlong = 315.5                      ; dlong where pit lane proper ends
pit_lane_start_dlong = 2857.00                   ; dlong where pit lane proper begins
slow_pit_line_dlat_offset = 5.0                 ; track-specific dlat_offset of 2nd slower pit line (0 if N/A)
stall_exit_goal_dlat_offset = -5.0              ; goal dlat offset (+ left) for the pit stall exit cubic line
stall_exit_goal_dlong_offset = 7.0              ; goal dlong offset (ahead) for the pit stall exit cubic line
begin_stall_entry_offset = 21.0                 ; offset at which to begin entering the pit stall
begin_stall_approach_offset = 100.0             ; offset at which to begin approaching the pit stall
lane_merge_dlong = 1268.00                      ; Dlong which you must remain on the apron when exiting the pits

; race control stuff
lane_on_right = 0                               ; 0 if on left, 1 if on right
lane_has_wall = 1                               ; 0 no wall, 1 has wall
speed_limit_MPH = 45.0

; regular stalls
stall_0 = 304.00 62.00 -0.29
stall_1 = 301.00 64.30 -0.28
stall_2 = 289.86 67.80 -0.27
stall_3 = 277.02 71.00 -0.26
stall_4 = 265.00 73.02 -0.25
stall_5 = 2943.54 70.19 0.25
stall_6 = 2933.00 68.00 0.27
stall_7 = 2920.00 65.00 0.28
stall_8 = 2907.00 61.50 0.29
stall_9 = 2894.00 58.00 0.29
stall_10 = 2881.00 54.00 0.30

[ starting_grid_0 ]
  ; 2x2 unstaggered grid
  ; polesitter on left
stall_pace = 273.48 64.45 -0.25
stall_0 = 265.00 68.91 -0.25
stall_1 = 265.00 63.91 -0.25
stall_2 = 256.79 70.86 -0.25
stall_3 = 256.79 65.86 -0.25
stall_4 = 248.55 72.76 -0.24
stall_5 = 248.55 67.76 -0.24
stall_6 = 240.28 74.62 -0.23
stall_7 = 240.28 69.62 -0.23
stall_8 = 231.98 76.42 -0.22
stall_9 = 231.98 71.42 -0.22
stall_10 = 223.64 78.15 -0.21
stall_11 = 223.64 73.15 -0.21
stall_12 = 215.27 79.78 -0.20
stall_13 = 215.27 74.78 -0.20
stall_14 = 206.87 81.31 -0.19
stall_15 = 206.87 76.31 -0.19
stall_16 = 198.43 82.76 -0.18
stall_17 = 198.43 77.76 -0.18
stall_18 = 189.97 84.14 -0.17
stall_19 = 189.97 79.14 -0.17
stall_20 = 181.50 85.50 -0.17
stall_21 = 181.50 80.50 -0.17
stall_22 = 173.00 86.84 -0.17
stall_23 = 173.00 81.84 -0.17
stall_24 = 164.49 88.12 -0.16
stall_25 = 164.49 83.12 -0.16
stall_26 = 155.95 89.32 -0.15
stall_27 = 155.95 84.32 -0.15
stall_28 = 147.39 90.44 -0.14
stall_29 = 147.39 85.44 -0.14
stall_30 = 138.81 91.49 -0.13
stall_31 = 138.81 86.49 -0.13
stall_32 = 130.21 92.53 -0.13
stall_33 = 130.21 87.53 -0.13
stall_34 = 121.61 93.52 -0.12
stall_35 = 121.61 88.52 -0.12
stall_36 = 112.98 94.44 -0.11
stall_37 = 112.98 89.44 -0.11
stall_38 = 104.33 95.27 -0.10
stall_39 = 104.33 90.27 -0.10
stall_40 = 95.67 96.03 -0.09
stall_41 = 95.67 91.03 -0.09
stall_42 = 87.00 96.74 -0.09
stall_43 = 87.00 91.74 -0.09
stall_44 = 75.33 101.40 -0.09
stall_45 = 75.33 96.40 -0.09


[ starting_grid_1 ]
stall_pace = 1758.48 1.96 0.00
stall_0 = 1750.00 3.96 -0.00
stall_1 = 1750.00 -0.04 -0.00
stall_2 = 1741.52 4.01 -0.01
stall_3 = 1741.52 0.01 -0.01
stall_4 = 1733.05 4.09 -0.01
stall_5 = 1733.05 0.09 -0.01
stall_6 = 1724.57 4.19 -0.01
stall_7 = 1724.57 0.19 -0.01
stall_8 = 1716.10 4.25 -0.00
stall_9 = 1716.10 0.25 -0.00
stall_10 = 1707.62 4.27 0.00
stall_11 = 1707.62 0.27 0.00
stall_12 = 1699.14 4.26 -0.00
stall_13 = 1699.14 0.26 -0.00
stall_14 = 1690.67 4.28 -0.00
stall_15 = 1690.67 0.28 -0.00
stall_16 = 1682.19 4.31 -0.00
stall_17 = 1682.19 0.31 -0.00
stall_18 = 1673.71 4.31 0.00
stall_19 = 1673.71 0.31 0.00
stall_20 = 1665.24 4.30 0.00
stall_21 = 1665.24 0.30 0.00
stall_22 = 1656.76 4.29 0.00
stall_23 = 1656.76 0.29 0.00
stall_24 = 1648.29 4.26 0.01
stall_25 = 1648.29 0.26 0.01
stall_26 = 1639.81 4.22 0.00
stall_27 = 1639.81 0.22 0.00
stall_28 = 1631.33 4.21 -0.00
stall_29 = 1631.33 0.21 -0.00
stall_30 = 1622.86 4.25 -0.00
stall_31 = 1622.86 0.25 -0.00
stall_32 = 1614.38 4.26 0.00
stall_33 = 1614.38 0.26 0.00
stall_34 = 1605.90 4.22 0.01
stall_35 = 1605.90 0.22 0.01
stall_36 = 1597.43 4.13 0.01
stall_37 = 1597.43 0.13 0.01
stall_38 = 1588.95 4.05 0.01
stall_39 = 1588.95 0.05 0.01
stall_40 = 1580.48 4.03 -0.00
stall_41 = 1580.48 0.03 -0.00
stall_42 = 1572.00 4.04 -0.00
stall_43 = 1572.00 0.03 -0.00
stall_44 = 1564.00 4.04 -0.00
stall_45 = 1564.00 0.03 -0.00

[ SPCC ]
num_named_sections = 6

name_0 = 456.00 842.00 T1
name_1 = 842.00 1260.00 T2
name_2 = 1260.00 1967.00 BSTR
name_3 = 1967.00 2367.00 T3
name_4 = 2367.00 2747.00 T4
name_5 = 2747.00 456.00 FSTC
