MouseLook for "Live for Speed"
by AndroidXP - 07.10.2006
------------------------------

>>> Requirements:
Microsoft .NET Framework 2.0
(http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5)


>>> How to install?
Extract the contents of the zip anywhere you like.


>>> How to use & set up?
.) Start up MouseLook.exe.
.) Assign the wheel buttons for "look left" and "look right". To do this, first 
   click on the button "Set" located besides the function, then press the 
   desired button on your wheel. You can also hit ESC to cancel the assignment,
   or DEL to clear it.
.) Leave the "view settings" at default for now, and start up LFS.
.) In LFS, go to "Options > View", for "Look function" select "ms X", then for
   "Look sensitivity" take "1.00" and finally set "Look centre reduction" to
   "0.00".
.) Then go to "Controls > wheel/js > Buttons 1", and make sure that "Left View"
   and "Right View" are UNassigned.
.) Start your racing session, and use the previsouly assigned wheel buttons for
   looking around
   
Note: Of course, these set-up steps only need to be done once, not everytime 
you want to use MouseLook ;-)


>>> How does it work?
MouseLook is a relatively simple program that does nothing else but move around
your mouse cursor. While not terribly useful outside of LFS, ingame it will 
behave very much like the default look left/right function. The point of this 
application is to enhance the possiblities of the look feature, because Scawen 
still didn't have the time to improve the latter yet. :-)


>>> View settings explained
Range:
   Defines the primary angle limit for looking (single wheel button press)
   For example: 100% means 180 looking angle ingame, 50% means 90, etc.
   This angle is always smaller than the secondary one (see below).

DoubleClick Rng:
   Defines the secondary angle limit (double-"click" the wheel button to use)
   This angle is always bigger than the primary one.

Look Speed:
   Sets the maximum "look" speed (applied while pressing any of the buttons)
   At 25% it will need one second to go completely from the left side of your
   screen to the right side. Ingame this means, it would need one second from
   looking over your left shoulder to looking over your right.

Return Speed:
   Sets the maximum "return" speed (applied when no buttons are pressed)
   Works the same way like "Look Speed".

Inertia:
   Defines how fast the "cursor" or "view point" starts and stops moving.
   A low inertia means that looking around will be very erratic with fast
   direction changes. A high inertia will smooth out that movement, but turning
   the virtual head will take longer. Watch out, if you set the inertia too 
   high, you might not even be able to reach the set maximum "Look Speed" ;-)

Steer Look:
   Defines the maximum angle achievable by steer look
   For example: 100% means 90, 50% -> 45 and 0% disables it. This function
   mimics the steer look (or look-to-apex) functionality of LFS, where you 
   look into the turn depending on how much you steer. Unfortunately this also
   shows a shortcoming of MouseLook, as the movement isn't as smooth as in LFS
   itself. Though, you can somewhat fix this by playing with the LFS options 
   "Look sensitivity" and "Look centre reduction", but be aware; modifying 
   these will change the behaviour of all MouseLook functionalities!

Instant look:
   If enabled, any movement and smoothing settings are ignored, and the view 
   will instantly snap to the desired viewing target.

Pressing Left+Right locks view:
   If enabled, pressing both left and right look button will stop the current
   view movement, instead of going into look-over-shoulder mode. Movement will
   continue as soon as the buttons are released.

Asymmetric range settings:
   If enabled, the Range and DoubleClick Range settings can be applied 
   seperately for looking left and right.

Center on ESC:
   If enabled, pressing ESC at any time while ingame will center the view.
   However, if you are in a menu and press ESC, the mouse cursor will be
   moved to the center, too.
	
Center on Steer:
   If enabled, the view will automatically return to center if you steer.
   This is useful if the view is off-center after returning to the cockpit
   from a menu, and should also prevent dangerous situations while racing 
   (for example if you unintentionally bump the mouse). However, the cursor
   will be moved to the center if you move the wheel while inside a menu.

>>> General notes & tips
For MouseLook to work correctly, LFS must run in full screen mode. Though, you 
can somewhat use it in windowed mode if you center the LFS window and set up
the range limitations accordingly. Otherwise the mouse cursor might wander
outside of the LFS window.

It's best to use the primary angle for slightly looking to the side, or maybe
even just enough to see the side mirror (very useful in the BF1, for example). 
The secondary angle is best used for *really* looking to the side or even a bit
to the back, so you can spot your opponents.

Press and hold both buttons at the same time to look over your shoulder, 
regardless of range settings. If you release one button, the view will snap 
back to what you have set up as secondary angle limit.

Instead of doubleclicking a button to use the secondary angle, you can archieve
the same by pressing and holding the desired button and then briefly pressing 
the other one too, so both buttons are shortly pressed at the same time.


>>> Change history:

~ Version 1.0.1.1
Added collapse button 
Added "Misc settings" area
Added option to close MouseLook after LFS closes
Added option to minimize MouseLook when LFS starts, and maximize it back when 
  it closes. This was default behaviour in previous versions but can now be
  overridden
Added Click-to-Double-Click feature. If enabled, pressing a look button and
  holding it for the specified amount of time will switch the look from the
  normal to the double click range. The click timer is started after the single
  click range has been reached.

~ Version 1.0.1.0
Added option to return view to center on pressing Escape
Added option of automatic view centering when steering activity is detected

~ Version 1.0.0.9
Improved steer look, now it doesn't influence the other look functions anymore
Added a few missing tooltips

~ Version 1.0.0.8
Added preset system
Added steer look (look-to-apex)
Changed the rather confusing "L" and "R" descriptors to "" and ""

~ Version 1.0.0.7
Improved check to prevent multiple MouseLook instances/processes

~ Version 1.0.0.6
Added check for other running MouseLook processes to prevent two instances 
  running at the same time
Fix: Small bug at loading asymmetric settings (double-click ranges weren't 
  loaded properly)
Reversed "Left" scrollbars direction when using asymmetric ranges. Seems more
  logical that way - you now have to drag the left scrollbars to the left 
  instead of right to get higher range %. To restore the old behaviour, add the
  line "ReverseAsymmetricScrollbar=false" to MouseLook.ini (or replace it, if
  it is already existing in there)
  
~ Version 1.0.0.5
Added support for multiple wheels (should now really work)
Added support for joystick (buttons + POV hat)

~ Version 1.0.0.4
Added asymmetric range settings
Added support for multiple wheels (still experimental)
Improved processing of D-Pad input

~ Version 1.0.0.3
Added support for the D-Pad on the DFP (and other wheels)

~ Version 1.0.0.2
Added possibility to launch LFS directly from MouseLook. To use, either place
  MouseLook.exe in the LFS install directory, or set the LFS.exe path manually
Fix: Forgot saving & loading the state of "Pressing L+R locks view" checkbox

~ Version 1.0.0.1
Added tooltips
Added "Pressing Left+Right locks view" checkbox

~ Version 1.0.0.0
Initial release