set time_of_day 15.00

set gfx_draw_distance 2000

// camera movement

bind +J player1_camera +DEC_ROLL
bind -J player1_camera -DEC_ROLL
bind +L player1_camera +INC_ROLL
bind -L player1_camera -INC_ROLL
bind +I player1_camera +DEC_PITCH
bind -I player1_camera -DEC_PITCH
bind +K player1_camera +INC_PITCH
bind -K player1_camera -INC_PITCH

bind +KP_LEFTARROW player1_camera +DEC_X
bind -KP_LEFTARROW player1_camera -DEC_X
bind +KP_RIGHTARROW player1_camera +INC_X
bind -KP_RIGHTARROW player1_camera -INC_X
bind +KP_UPARROW player1_camera +INC_Z
bind -KP_UPARROW player1_camera -INC_Z
bind +KP_DOWNARROW player1_camera +DEC_Z
bind -KP_DOWNARROW player1_camera -DEC_Z

bind +Z player1_camera +DEC_HEADING
bind -Z player1_camera -DEC_HEADING
bind +X player1_camera +INC_HEADING
bind -X player1_camera -INC_HEADING

bind +SPACE player1_camera +ZERO_SPEED
bind -SPACE player1_camera -ZERO_SPEED

bind +Q player1_camera +INC_SPEED
bind -Q player1_camera -INC_SPEED
bind +A player1_camera +DEC_SPEED
bind -A player1_camera -DEC_SPEED

bind +F1 player1_camera +NEXT_CAR
bind +F2 player1_camera +SHORT_MOVEMENT_MODE
bind +F3 player1_camera +FOCUS_MODE
bind +F4 player1_camera +FREE_ROAMING

bind +F5 player2_camera +MOVEMENT_MODE
bind +F6 player1_camera +RESET
bind -F6 player1_camera -RESET
bind +F7 player1_camera +SAVE
bind +F8 player1_camera +LOAD
bind +F11 player1_camera +FULL_MOVEMENT_MODE
bind +G player1_camera +DIRECTOR_MODE

bind +T player1_camera +TRIGGER_MODE
bind +W player1_camera +TRIGGER_WRITE

// player 1

// bind +UP player1_model +ACCELERATE
// bind -UP player1_model -ACCELERATE

// bind +DOWN player1_model +BRAKE
// bind -DOWN player1_model -BRAKE

// bind +C player1_model +HAND_BRAKE
// bind -C player1_model -HAND_BRAKE

// bind +E player1_model +GEARUP
// bind -E player1_model -GEARUP

// bind +D player1_model +GEARDOWN
// bind -D player1_model -GEARDOWN

// bind +LEFT player1_model +STEER_LEFT
// bind -LEFT player1_model -STEER_LEFT

// bind +RIGHT player1_model +STEER_RIGHT
// bind -RIGHT player1_model -STEER_RIGHT

//bind +PGDN player1_model +SAVE_MODEL_POSITION
//bind +PGUP player1_model +LOAD_MODEL_POSITION

//bind +R player1_model +RESET

// player 2
// make sure NUM_LOCK is ON !

//bind +KP_UPARROW player2_model +ACCELERATE
//bind -KP_UPARROW player2_model -ACCELERATE
//
//bind +KP_5 player2_model +BRAKE
//bind -KP_5 player2_model -BRAKE
//
//bind +KP_INS player2_model +HAND_BRAKE
//bind -KP_INS player2_model -HAND_BRAKE
//
//bind +KP_PGUP player2_model +GEARUP
//bind -KP_PGUP player2_model -GEARUP
//
//bind +KP_PGDN player2_model +GEARDOWN
//bind -KP_PGDN player2_model -GEARDOWN
//
//bind +KP_LEFTARROW player2_model +STEER_LEFT
//bind -KP_LEFTARROW player2_model -STEER_LEFT
//
//bind +KP_RIGHTARROW player2_model +STEER_RIGHT
//bind -KP_RIGHTARROW player2_model -STEER_RIGHT

//bind +KP_DEL player2_model +RESET

// time acceleration

bind +- time_acceleration +DEC_TIME_ACCELERATION
bind += time_acceleration +INC_TIME_ACCELERATION
bind +P time_acceleration +ZERO_TIME_ACCELERATION
bind +[ time_acceleration +FIXED_TIME_ACCELERATION
bind +] time_acceleration -FIXED_TIME_ACCELERATION

// physics

set physics_additional_low_speed_grip 0.5
set physics_do_surfaces 1
set physics_do_collisions 1
set physics_do_wall_collisions 1
set physics_do_terrain_smoothing 1
set model_simulate_tyre_temperature 0
set model_simulate_wear 1

// model controls
set model_analogue_steering 1
set model_analogue_accelerator 1

set model_digial_accelerator_input_full_value 0.5
set model_digial_brake_input_full_value 0.6
set model_auto_reverse_max_time 0.5

set model_digial_input_full_value 0.5

set model_steering_wheel_deadzone_percentage 0.01
set model_steering_deadzone_percentage 0.20
set model_accelerator_deadzone_percentage 0.20

set model_surface_drag_distribution_easy 0.97
set model_surface_drag_distribution_medium 0.85
set model_surface_drag_distribution_hard 0.7
set model_surface_drag_distribution_extreme 0.55
set model_catchup_max_range 1000.0
set model_catchup_max_power 0.1

// ai setup
exec ai.cfg

//Perishable components
//Tyres
//Brakes (pads)
//Engine (head / cylinders)
//Gearbox (grinding gears)
//Clutch
//Fuel (due to usage)
//
//Damageable components
	//Tyres (punctures)
	//Steering
	//Suspension
	//Transmission (loss of 4wd, 2wd)
	//Engine (radiator)
	//Aerodynamics (spoilers / bumpers)
	//Traction control systems
	//Windscreen ?
//
//Potential Random failures
	//Engine (blown up)
	//Tyres (punctures)
	//Fuel pump
	//Transmission

//Replay
//
//Standard system plays from start to end.
//Next step is to introduce segments. Each segment stores an initial state and then delta information. Strings of segments can be played to make up a whole race. Advantages are that you can play, FF, RW or save segments. 

//Training
	//Scripted missions
	//On-Track tuition
	//In-Car talk through around track (Derek Bell?)
	//Tracking debrief (player does a corner, AI comments)
//	
//Garage
	//Location ?
	//Exactly functionality
//
//Sound Effects / Speech
	//Generation (pure sample or 3rd party software)
	//Source of speech ?
//
//Weather / Time of Day
	//In what capacity ?
//


// game

set max_ai_cars 20
set rolling_start 1
set number_of_laps 3
set auto_save -1
set overwrite_replay_file 1

set camera_head_movement 1

set chase_camera_distance 6.0
set chase_camera_height 2.5

exec myconfig.cfg
