			///////////////////////////////////////////////////////////
			//*******************************************************//
			//*			S.W.A.T				*//
			//*							*//
			//*		Special Weapons And Tactics.		*//
			//*******************************************************//
			//*		An Unreal Tournament Modification	*//
			//*		http://www.planetunreal.com/swat	*//
			//*		- S.W.A.T Mapping			*//
			//*******************************************************//
			///////////////////////////////////////////////////////////


[1] - Basics -
^^^^^^^^^^^^^^

  We currently only accept 20th century urban maps, with excellent textures and lighting.
  
  Maps have to be realistic and well detailed. (No teleports, bumpers, etc..)
  Textures must really be good. We'll try to build a custom S.W.A.T texture library.
  Base your map around a counter terrorism scenario, the objectives can be multiple for both teams.

  The map must contain two separate areas where the two teams will start.
  Be sure to set enough startpoints, and the right classes to define the team bases.

  Work the lightning, textures and sounds. The ambiance is very important.

  If you need special classes or scripts for your S.W.A.T map, drop us a line.

  map name must start with 'SW-'

  Special classes are required, read below.
  Ask for our test maps, if you need more info.

  Do not use mirrors, they not only cause slow downs but also ugly bugs on player models.
  Or make them very small. ;)

  Be sure to add NavPoints to the maps, so Hostages and Bots can move a bit ;)
  Check out: http://unreal.epicgames.com/UT_AI.htm

  Units
  ~~~~~
  Make the map realistic by respecting the scales.
  48 units ~= 1 meter
  Vents are currently 64*64 units and must start from the ground (you cannot jump while
  crouched yet). [That will be recoded soon]


[2] - Classes Reference -
^^^^^^^^^^^^^^^^^^^^^^^^^

x s_SWATLevelInfo (extends info)
  ~~~~~~~~~~~~~~~
  This class is required by any SWAT map. it defines the scenario. You need only one per map.

  Here's what you can set:
  * SWAT_Scenario:
    [ScenarioName] - (String) - Name of your scenario.
    [ScenarioComment] - (String x2) - Description of the situation
    [CT_Mission] - (String x 4) - Mission for Counter Terrorists
    [Terr_Mission] - (String x 4) - Mission for Terrorists

  * SWAT_Rules:
    [MaxEvidence] - Maximum number of Evidence to spawn in the Level (do not exceed 8).

  * SWAT_Objectives
    Here you can set a maximum of 10 objectives for each Team.
    Please note that the objective order is important.

    - [ObjectiveMeaning]
      This sets what happens when an objective is accomplished
      . OM_Nothing - Nothing
      . OM_TeamNotification - Sends a message to whole team
      . OM_GameNotification - Sends a message to ALL players
      . OM_RoundWin - Round is won for that team

    - [ObjectivePriority]
      This affects how the Objective is assigned to bots
      . OP_None - Never done
      . OP_Always - accomplished several times, no order, doesn't interfere with round wining.
      . OP_AlwaysPrioritary - accomplished several times, no order and is vital to win the round.	
      . OP_AlwaysOrder - accomplished several times in Order, doesn't interfere with round wining.
      . OP_AlwaysOrderPrioritary - accomplished several times in Order and is vital to win the round.	
      . OP_Once - accomplished once, no order, doesn't interfere with round wining.
      . OP_OncePrioritary - accomplished once and is vital to win the round.
      . OP_OnceOrder - accomplished once in Order, doesn't interfere with round wining.
      . OP_OnceOrderPrioritary - accomplished once in Order and is vital to win the round.

      * An Objective can only be assigned to a bot if it hasn't been accomplished already.

      * Order * means the objective is assigned to a bot only if all previous Order Objectives have
      been accomplished

      * Once * Means the objective will be assigned to a single Bot (Leader).
      While a leader is assigned to a once objective, it can't be assigned anymore.

      * Always * means the objective 'may' be assigned to any bot asking for an objective.

      * Prioritary * - if all Prioritary Objectives are accomplished then the round is won.

    - [ObjectiveType]
      . O_DoNothing - Wait 
           Not considered as a valid objective.
      . O_GoHome - Go to random home base [s_ZoneControlPoint] (bHomeBase)
           optional SWATPathnode as [Target] supported.
      . O_AssaultEnemy - Go to random Enemy home base s_ZoneControlPoint (bHomeBase)
          (optional SWATPathnode as Target supported)
      . O_FindClosestBuyPoint - Go to nearest Buy s_ZoneControlPoint (bBuyPoint)
      . O_SeekForHostages - Enables Rescue hostage scenario.
          Go to random bHostageHidingPoint s_ZoneControlPoint then brings back hostages 
          to home base (for SWAT) or bHostageHidingPoint (for Terr).
          If ObjectiveMeaning is set to OM_RoundWin then 75% of hostages rescued (25% loss tolerated) will result in a win.
      . O_GotoLocation - Go to nearest [Target]
          [Target] can be a SWATPathNode or any other Actor.
      . O_TriggerTarget - Go to Target and trigger it 
          use preferably s_Trigger
          s_Trigger can support an optionnal SWATPathNode
      . O_CollectSpecialItem - Go to SpecialItem and pick it (Cocaine, ..) (s_SpecialItemStartPoint)
          This Objective can't be accomplished yet, so it can't be set as Order nor Prioritary.
          AlwaysObjective seems a good choice.
      . O_Escape -  Go to nearest s_ZoneControlPoint (bEscapeZone)
          If 75% of the team escapes, they win the round.
      . O_CollectEvidence - Go to Evidence and collect it.
          This Objective can't be accomplished yet, so it can't be set as Order nor Prioritary.
          AlwaysObjective seems a good choice.

    - [Target]
      Optional Objective target. It can be almost any actor. SWATPathNodes or s_Triggers are good examples.
      It's not supported by all objective types.

    - [bObjectiveAccomplishedToggle] means the objective can be toggled accomplished or not.
      A door for example. You open it, objective is accomplished, someone closes it, then 
      it's not accomplished anymore.
      !!! Currently removed, would need to remove every SWATLevelInfo, and re-add them :( !!!

x StartPoints:
  ~~~~~~~~~~~~
  Be sure to set the startpoints as follows:
  Team 0 - Terrorists
  Team 1 - S.W.A.T
  Team 2 - Hostages (Obsolete - Use s_NPCStartPoint instead)

  Not setting enough startpoints will cause bugs !! It is recommended to have at least 10 to 15 startpoints for each team.
  Be sure to add the right s_ZoneControlPoint to cover all startpoints with home base and buy points.
  (plus rescue points for SWAT)

x s_ZoneControlPoint (extends NavigationPoint)
  ~~~~~~~~~~~~~~~~~~
  This navigation point defines special zones in the game.
  Use [radius] to define to effective range of that zone.
  [OwnedTeam] sets the Team that owns that zone.
  You can set:
  . bHomeBase - For both SWAT and Terr home base (Owned team required)
  . bBuyPoint - For both SWAT and Terr home base and buy points. (Owned team required)
  . bRescuePoint - Only for SWAT home base and rescue points
  . bEscapeZone - When player reaches that point he escapes. (Owned team required)
  . bHostageHidingPlace - For Terrorists, where they hide Hostages
  . bC4Location - Zone to drop C4 (not available yet)

x s_EvidenceStartPoint (extends KeyPoint)
  ~~~~~~~~~~~~~~~~~~~~
  Add some of those startpoints in the map. Around 20 is a nice value for a medium sized map.
  Not more than 8 Evidence will be randomly spawned there.

x Ladders: (extends KeyPoint)
  ~~~~~~~~
  Centered at the bottom of your ladder add a s_Ladder Keypoint set the [radius] (32 by default)
  Then add a s_LadderTop 32 units above the top of your ladder (X and Y musn't differ from the bottom
  keypoint more than 10 units). And that's all. It actually creates a Cylinder. And within it you will be
  in 'Climbing' state.

x s_Trigger (extends Triggers)
  ~~~~~~~~~
  Works just like the usual trigger, but also supports the 'Use' key.
  [bUseRadius] - Currently required. Set it to true.
  [Radius] - Radius in units. Within this [Radius], and if the player presses the 'Use' key, then the trigger
    is activated.
  [OptionalSWATPathNode] if you want the bots to use a SWATPathNode that leads to your trigger.
    (only works when set as objective).

x s_SWATPathNode (extends NavigationPoint)
  ~~~~~~~~~~~~~~
  Path to drive the bots to some special location.
  You can set 8 optionnal [NextNP] s_SWATPathNode to build your path.
  Bots will randomly pick one.
  Use [PauseTime] if you want the bot to pause a bit, and not run as hell. Do not abuse too much on it.
  Set [bLastOne] to true if it's the last s_SWATPathNode of your path. (and tells the bots the completed the path)

x s_RainGenerator (extends Actor)
  ~~~~~~~~~~~~~~~
  Place the RainGenerator where you want the rain to start falling.
  You can set the following:
  [interval] = Seconds between drips
  [variance] = % size delta of drips
  [dropradius] = Radius around generator to drip in
  [DropSpeed] = speed %.
  [NumberOfDrips] = Number of Drips to be spawned at each interval
  [bMeshRainDrop] = if set to true, uses 3D models instead of sprites (which is slower if you want a lot of drips :)

x s_NPCStartPoint
  ~~~~~~~~~~~~~~~
  Startpoints for hostages.

* s_AttackPatrolPoint (NavigationPoint) - Remove them from your map
  Obsolete

* s_HostageControlPoint (NavigationPoint) - Remove them from your map
  Obsolete

* s_HomeControlPoint (NavigationPoint) - Remove them from your map
  Obsolete
