This is a collection of functional (rather than hud) Tribes 2 scripts.
For those of you who don't like script packs, each of the files in here
can be used independently.  Unzip into your Tribes2 directory to install.
Contents are as follows:

kConfig.cs: edit this file to configure the scripts.  It has comments on
  its use in the file.

kGrenade.cs: unless disabled in kConfig.cs, this will change your normal
  grenade throw key to always throw a grenade at max range.

kJump.cs: jumping/skiing scripts
  automatic jumpjet: unless disabled in kConfig.cs, this will automatically
    jump immediately before you jet.  In vehicles, it just acts as normal
    jet.
  kJumpSkiToggle: bind a key to this to toggle between skiing and walking.
    This displays a bottomprint bar when active.

kReticle.cs: generates full-height mortar and grenade-launcher range
  reticles on the fly, based on your current resolution and FOV.  Works for
  any resolution and for both infantry and tank mortars.  It will update
  when you zoom in or out, and it will also update when you change zoom
  levels with kZoom or the default controls.  (see comments at bottom for
  enabling this with other zoom scripts).  It all works automagically as
  long as this script gets run on startup.  Requires all those little
  kRET_mortarXXX.png files to be in your Tribes2/GameData/base/textures/gui
  directory (if you just unzipped the pack to your Tribes2 directory,
  they're already there).

kVehicleJoy.cs: enables (space) flight-sim style joystick control for
  vehicles.  Once it's executed on startup, everything is automatic.
  Settings are adjusted for each vehicle type as you enter it.  Joystick
  x and y axes are bound to yaw and pitch respectively, and compensation
  is built in for banking in aircraft.  Mouse is rebound to freelook, which
  will only work when the joystick inputs remain steady for a period
  (otherwise yaw and pitch have to be used for vehicle control).

  WARNING:  disable this in kConfig.cs if you don't have a joystick,
    because it disables mouse for purposes of vehicle control.

kWeapon.cs: weapon management binds  
  kWeaponMortarPrep: switches to targeting laser, displays the range to
    target (using targeting laser) for half a second or so, then zooms out
    and selects mortar, grenade launcher, or the weapon you were using
    previously, based on what's available and has ammo.
  kWeaponLastWeapon: selects the weapon you were using previously

kZoom.cs: zoom scripts
  kZoomAxis: bind your mousewheel to this to scroll through zoom
    levels.
  kZoomBind: use this if you want to make a bind that does one thing
    when you're zoomed and another when you're unzoomed.  Format is:
    kZoomBind(keyboard0, "x", zoomedCommand, unzoomedCommand);
    these binds have to be executed AFTER kZoom.cs has been loaded.
    see kConfig.cs for details on how to do this.
  defaultFOV on spawn: if you use the standard fov 90, you wouldn't
    notice this, but your default fov ($pref::player::defaultFOV)
    normally doesn't get applied when you spawn, but only if you zoom
    and then unzoom.  having kZoom.cs installed fixes this, and your fov
    is set whenever you spawn.
  $kZoom::zoomToggle: set this in kConfig.cs to determine whether
    your zoom key unzooms when you release it, or if you have to press
    the key again to unzoom
  $kZoom::zoomFactor: set this in kConfig.cs to decide how much your
    zoom changes per increment with kZoomAxis
  $kZoom::resetFOV: set this to a particular FOV in kConfig.cs if you
    want your zoom level reset to that FOV whenever you zoom in.

Enjoy.

-Kerb
gausebec@paypal.com



Note about compatibility of kReticles.cs and other zoom scripts:  the only
  thing that needs to be changed is for the zoom script to call
  kReticleOnChangeFOV() whenever it changes the fov (the reticle script
  already traps toggleZoom).  WegZoom has been mentioned specifically, so
  here's a code snippet that will make the reticles resize when you change
  zoom levels with WegZoom (thanks to UberGuy(FT)):

package kWegGlue {
function WegCalcZoomFOV(%val)
{
	parent::WegCalcZoomFOV(%val);
	kReticleOnChangeFOV();
}
};
activatePackage(kWegGlue);
