############################################################################################
#
# visual settings bound to the included resources
# to be overwritten by texture packs
#
############################################################################################

#HEADLIGHT 1             # turn on headlight effect (requires shaders)

FLOOR_RED .2             # floor color (without moviepack)
FLOOR_GREEN .2           # floor color (without moviepack)
FLOOR_BLUE .2            # floor color (without moviepack)

RIM_WALL_STRETCH_X 100   # extension of the rim wall texture in the horizontal direction
RIM_WALL_STRETCH_Y 50    # extension of the rim wall texture in the vertical direction
RIM_WALL_WRAP_Y 0        # set to 1 if the rim wall texture should repeat in the vertical direction

FLOOR_MIRROR_INT .1      # floor mirror (if enabled)
GRID_SIZE 1.0            # grid size

# ideal for fonkay's rim texture
#RIM_WALL_STRETCH_X 200   # extension of the rim wall texture in the horizontal direction
#RIM_WALL_STRETCH_Y 40    # extension of the rim wall texture in the vertical direction
#RIM_WALL_WRAP_Y 0        # set to 1 if the rim wall texture should repeat in the vertical direction
#FLOOR_RED .1             # floor color (without moviepack)
#FLOOR_GREEN .2          # floor color (without moviepack)
#FLOOR_BLUE .3            # floor color (without moviepack)

FADEOUT_NAME_DELAY 5.0   # Time the player names are shown. Set to 0 if you don't want to show them at all or -1 if you want to show them always.
SHOW_OWN_NAME   0    # Should your own name be shown above your cycle, too? 

# custom screen mode or window size (in case your OS does not report back your favorite
# screen mode by itself)

CUSTOM_SCREEN_WIDTH  320  # width of the resolution 
CUSTOM_SCREEN_HEIGHT 200  # height of the resolution
CUSTOM_SCREEN_ASPECT 1    # aspect ratio of the pixels (only affects game
                          # rendering, not the menu)

PLAYER_RANDOM_COLOR 0     # if set to 1, a random generator will try to pick a color for you that
                          # differs from the other players on the server.

CYCLE_BLINK_FREQUENCY  10          # Frequency in Hz an invulnerable cycle blinks with.

HUD_CACHE_THRESHOLD    0.0001      # Update threshold for HUD gauges, only in effect when display lists are activated: if the relative change times the amount of time since the last update is bigger than this, the gauge gets updated.

############################################################################################
#
# camera settings
#
############################################################################################

CAMERA_FOLLOW_START_X -30 # fixed external camera start position
CAMERA_FOLLOW_START_Y -30 # ( relative to cycle )
CAMERA_FOLLOW_START_Z  80

CAMERA_SMART_START_X   10 # smart camera start position
CAMERA_SMART_START_Y   30 # ( relative to cycle )
CAMERA_SMART_START_Z   2

CAMERA_FREE_START_X    10 # free camera start position
CAMERA_FREE_START_Y   -70 # ( relative to cycle )
CAMERA_FREE_START_Z    100


                                # custom camera position
CAMERA_CUSTOM_BACK    6         # how much the custom camera is moved back
CAMERA_CUSTOM_RISE    4         # the height of the custom camera above the cycle
CAMERA_CUSTOM_BACK_FROMSPEED .5 # how much the camera is moved back for every m/s speed
CAMERA_CUSTOM_RISE_FROMSPEED .4 # the height of the camera above the cycle for every m/s speed
CAMERA_CUSTOM_PITCH   -.58      # inclination of the camera
CAMERA_CUSTOM_ZOOM    0         # how much the camera zooms in your cycle at the beginning of the round (to show the team's formation)
CAMERA_CUSTOM_TURN_SPEED     4  # speed the custom camera turns with
CAMERA_CUSTOM_TURN_SPEED_180 4  # factor to the turn speed after a quick reversal

                                # glance camera position
CAMERA_GLANCE_BACK    6         # how much the glance camera is moved back
CAMERA_GLANCE_RISE    4         # the height of the glance camera above the cycle
CAMERA_GLANCE_BACK_FROMSPEED .5 # how much the camera is moved back for every m/s speed
CAMERA_GLANCE_RISE_FROMSPEED .4 # the height of the camera above the cycle for every m/s speed
CAMERA_GLANCE_PITCH   -.58      # inclination of the camera

# the old custom camera settings for those who miss them

#CAMERA_CUSTOM_BACK           15 # how much the camera is moved back
#CAMERA_CUSTOM_RISE           10 # the height of the camera above the cycle
#CAMERA_CUSTOM_BACK_FROMSPEED  0 # how much the camera is moved back for every m/s speed
#CAMERA_CUSTOM_RISE_FROMSPEED  0 # the height of the camera above the cycle for every m/s speed
#CAMERA_CUSTOM_PITCH         -.7 # inclination of the camera
#CAMERA_CUSTOM_ZOOM           .5 # how much the camera zooms in your cycle at the beginning of the round (to show the team's formation)
#CAMERA_CUSTOM_TURN_SPEED     40 # speed the custom camera turns with
#CAMERA_CUSTOM_TURN_SPEED_180  2 # factor to the turn speed after a quick reversal
#CAMERA_GLANCE_BACK           15 # how much the glance camera is moved back
#CAMERA_GLANCE_RISE           10 # the height of the glance camera above the cycle
#CAMERA_GLANCE_BACK_FROMSPEED  0 # how much the camera is moved back for every m/s speed
#CAMERA_GLANCE_RISE_FROMSPEED  0 # the height of the camera above the cycle for every m/s speed
#CAMERA_GLANCE_PITCH         -.7 # inclination of the camera

CAMERA_IN_TURN_SPEED         40        # speed the internal camera turns with

# camera clipping VS wall lowering settings

CAMERA_VISIBILITY_LOWER_WALL       1   # if set, walls are lowered when they block the view and the camera is not moved
CAMERA_VISIBILITY_LOWER_WALL_SMART 0   # like CAMERA_VISIBILITY_LOWER_WALL, but special setting for the smart camera

BUG_TRANSPARENCY 0                     # unsupported: make all rim walls semi-transparent by rendering them without occlusion tests
BUG_TRANSPARENCY_DEMAND 0              # unsupported: use transparency instead of lowering walls

############################################################################################
#                       EXPERT SECTION
# The settings in this section sometimes have obscure effects and you
# sometimes need to know how the settings are used in the code to predict
# the effects of changes.
# They're unsupported, undocumented (apart from what you see in this file)
# and may change meaning from release to release.
############################################################################################

# A white background is rendered behind text displays if the text color is darker
# than the color given here. Either every color component needs to be lower
# than the one given, or the sum needs to be lower than the given sum.
FONT_MIN_R .5
FONT_MIN_G .5
FONT_MIN_B .5
FONT_MIN_TOTAL .7
#FONT_MIN_TOTAL 1.0 # that was the hardcoded value in 0.2.7.1 and earlier.

# font selection settings. If a character is smaller in pixels than the given
# dimensions, the lowres font will be used.
FONT_BIG_THRESHOLD_WIDTH  12
FONT_BIG_THRESHOLD_HEIGHT 24

# visibility culling settings: AA forces the cycle to be visible from the
# camera position, and additionally tracks the visibility of three extra
# points (visibility targets), one in front of the cycle, two by its sides.
# these settings control how they are handled: the front and side distance
# of the targets is determined by _EXTENSION, and the side targets will be
# put forward relative to the cycle by _SIDESKEW. Rays will be cast from the
# cycle to the so determined positions and the real targets will be placed
# at _WALL_DISTANCE times the maximal unblocked distance. Additionally, if the
# targets have been blocked by walls the last frame, they won't snap to the
# full allowed distance right away, but only slowly move there, determined by
# _RECOVERY_SPEED. Lastly, _CLIP_SPEED determines the speed the camera will
# be moved with to keep the extra targets in view.

CAMERA_VISIBILITY_RECOVERY_SPEED 1  # the speed the external visibility targets recovers from wall hits
CAMERA_VISIBILITY_WALL_DISTANCE  .5 # the distance the visibility targets keep from walls
CAMERA_VISIBILITY_CLIP_SPEED     40 # speed with which the visibility targets is brought into view
CAMERA_VISIBILITY_EXTENSION      1  # distance (measured in seconds, gets multiplied by speed) of the visibility targets from the watched object
CAMERA_VISIBILITY_SIDESKEW      .5  # extra forward component of the sideways visibility targets

ARENA_WALL_SHADOW_SIZE 0.1      # maximal size of the arena wall shadow compared to the camera/wall height
ARENA_WALL_SHADOW_SIDEDIST 10.0 # shadows are drawn when the cycle gets closer to the line the wall follows than this
ARENA_WALL_SHADOW_DIST 30.0     # shadows are drawn when the cycle's path gets closer to the wall than this
ARENA_WALL_SHADOW_NEAR 1.0      # getting closer to the wall than this distance does not increase the shadow much

# smart camera settings. Don't ask for support, they are very obscure and not even
# z-man knows what everything does. Units are often arbitrary.
# The code that uses them is really messy.
# The more obscure settings are lower in the section.

CAMERA_SMART_DISTANCE 4.0               # typical distance the camera keeps from the cycle
CAMERA_SMART_HEIGHT 2.0                 # typical height in speed units
CAMERA_SMART_TURN_GRINDING 5.0          # Amount of turning from grinding walls

CAMERA_SMART_MIN_DISTANCE 10.0          # minimal distance of the camera to the cycle in .3 meters
CAMERA_SMART_HEIGHT_EXTRA .5            # extra factor for height. Either this or the previous setting is redundant :)
CAMERA_SMART_HEIGHT_TURNING .5          # influence of turning on camera height
CAMERA_SMART_HEIGHT_GRINDING 0.0        # influence of grinding on camera height. In 0.2.7.1, this was set to 2, causing the camera to tilt down too far.
CAMERA_SMART_HEIGHT_OBSTACLE 1.0        # influence of obstacles in front of the cycle

# these settings determine the focal point calculation
CAMERA_SMART_CENTER_POS_SMOOTH 6.0      # speed of cycle position smoothing
CAMERA_SMART_CENTER_DIR_SMOOTH 3.0      # speed of cycle direction smoothing
CAMERA_SMART_CENTER_LOOKAHEAD .5        # amount of lookahead on top of smoothing, relative to speed
CAMERA_SMART_CENTER_MAX_LOOKAHEAD 5     # maximal amount of lookahead on top of smoothing

# now come the really obscure settings
CAMERA_SMART_AVOID_FRONT 10.0           # factor moving the camera to the side if it is in front of the cycle
CAMERA_SMART_AVOID_FRONT2 0.1           # another factor moving the camera to the side if it is in front of the cycle

CAMERA_SMART_CYCLESPEED 20.0            # typical cycle speed

CAMERA_SMART_DISTANCESCALE .2           # distance scale measured relative to cycle speed
CAMERA_SMART_MIN_DISTANCESCALE 5.0      # minimal distance scale in meters

