###arm_force -- equivialent of "max force at steering rack" in ams1 (custom_lock_stop 0.5) (min_force 0.01) (scrub_vibe 1.0) (engine_scale 1.0) (scrub_scale 0.8) (road_scale 0.4) (rack_lfb_ratio 0.5) ########################################################### # #Some constants # ##general multipliers (from ams1) (max_overall_force 11500.0) (recip_force ( / 1.0 max_overall_force)) #mfasr scaler (rack_scaled ( * arm_force ( / max_overall_force M_max_force_at_rack))) (rack_scaled ( * rack_scaled recip_force)) (rack rack_scaled) (rack_smooth (smooth rack M_force_smoothing)) (rack (if M_force_smoothing rack_smooth rack)) ########################################################### ##################################################### ##################################################### #PARKING LOT FORCE :) (parkingForce (* parkingForceMult rack)) (parkingForce (* parkingForce (crossover et 0.0 5.0))) (parkingForce (* parkingForce (- 1.0 (crossover vel_mag 0.0 7.0)))) (parkingForce (* parkingForce )) (rack (* rack (crossover vel_mag 0.0 5.0))) (rack (+ rack parkingForce)) ###################################################### ###################################################### #FX_AMS2- scrub effect (gives subtle vibrtions on braking / understeer) # and engine vibrations on wheel (so like ams1 "fx" -curbs) ############# # Jerk Based Road Feel ------------------------------- (FL_road (jerk FL_load)) (FR_road (jerk FR_load)) (road_scale (/ road_scale 80000.0)) (FL_road (* FL_road road_scale)) (FR_road (* FR_road (- 0.0 road_scale))) # Scrub ---------------------------------------------- (FL_scrub (soft_clip FL_scrub 2.0 0.0)) (FL_scrub (scoop FL_scrub 0.6 0.99)) (FL_scrub (* FL_scrub (oscillator 1.5))) (FR_scrub (soft_clip FR_scrub 2.0 0.0)) (FR_scrub (scoop FR_scrub 0.6 0.99)) (FR_scrub (* FR_scrub (oscillator 1.5))) (scrub_scale_factor (* 30.0 scrub_scale)) (FL_scrub (* scrub_scale_factor FL_scrub)) (FR_scrub (* scrub_scale_factor FR_scrub)) (scrub_k 20000.0) (scrub_d 1.0) (FL_scrub (split FL_scrub 0.0 1.0 1.0 2.0 0.01)) (FL_scrub (spring FL_scrub scrub_k scrub_d 1.0)) (FR_scrub (split FR_scrub 0.0 1.0 1.0 2.0 0.01)) (FR_scrub (spring FR_scrub scrub_k scrub_d 1.0)) (road_k 100000.0) (road_d 0.02) (FL_road (split FL_road 0.0 1.0 1.0 2.0 0.01)) (FL_road (spring FL_road road_k road_d 1.0)) (FR_road (split FR_road 0.0 1.0 1.0 2.0 0.01)) (FR_road (spring FR_road road_k road_d 1.0)) (FL_scrub ( lfb FL_scrub 0.15)) (FL_scrub ( lfb FL_scrub 0.15)) (FR_scrub ( lfb FR_scrub 0.15)) (FR_scrub ( lfb FR_scrub 0.15)) (FL_road ( lfb FL_road 0.15)) (FR_road ( lfb FR_road 0.15)) (FL_tex (+ FL_scrub FL_road)) (FR_tex (+ FR_scrub FR_road)) (tex (+ FL_tex FR_tex)) (tex (soft_clip tex 1.0 0.0)) # Engine --------------------------------------------- (max_rps 8000.0) (rps_scale ( / crankshaft max_rps)) (rps_scale ( power rps_scale 0.8)) (rps_scale (min rps_scale 0.02)) (rps_scale (max rps_scale 0.14)) (load_mult (+ 0.8 throttle)) (load_mult (max load_mult 1.0)) (engine_scale (/ engine_scale 15.0)) (engine_vibe (sin crankPos)) (engine_vibe ( * load_mult engine_vibe rps_scale engine_scale)) (engine_vibe ( lfb engine_vibe 0.15)) (feel ( + tex engine_vibe)) ############################################################################ ########################################################################### (rack ( + ( * rack ( - 1.0 rack_lfb_ratio))( * ( lfb rack 0.15) rack_lfb_ratio))) (rack ( + rack ( * feel fx 0.8))) (output rack) #(output ( * tex fx 0.8)) # Scaler as informational only, doesnt affect output - (scale_window_init 10.0) (scale_window_nominal 2.0) (scale_soft_clear_t 10.0) (scale_min 0.2) (scale_max 2.0) (scale_blend_t 2.0) (signal_scale output 1.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0) ###################################################### ###################################################### ##(LOW FORCE BOOST) ################ #NO THANKS, this is just plain bad. Will make the wheel "fight for center" #(output ( lfb output 0.15)) ###################################################### ###################################################### ##lock_stops (wheel_dir ( if output 1.0 -1.0)) (stops (bumpstop wheel_dir 0.1 2.0 0.1 0.1)) (output (+ output (* stops device_lock_stop))) #################################################### #allow 30% headroom (headroom ( - 0.7 gain)) (clipTo ( + 1.3 headroom)) (clipTo ( if headroom 1.3 clipTo)) (output (hard_clip output clipTo)) (output (* output gain)) (histogram output)