home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 2 (DVD) / XENIADVD2.iso / Fragzone / Files / mw4mercseditor.exe / content / ABLScripts / mwconst.abi < prev    next >
Encoding:
Text File  |  2002-10-11  |  28.1 KB  |  904 lines

  1. //************************
  2. //MW4 Mission Const Include File 4/8
  3. //------------------------
  4.  
  5. //----------------
  6. // Alignments
  7. //----------------
  8.     ENEMY_ALIGNMENT       =      2;
  9.     NEUTRAL_ALIGNMENT     =       0;
  10.     FRIENDLY_ALIGNMENT     =      1;
  11.  
  12.     TEAM1_ALIGNMENT            = 3;
  13.     TEAM2_ALIGNMENT            = 4;
  14.     TEAM3_ALIGNMENT            = 5;
  15.     TEAM4_ALIGNMENT            = 6;
  16.  
  17.     ENEMY       =      2;
  18.     NEUTRAL     =       0;
  19.     FRIENDLY     =       1;
  20.  
  21.     TEAM1        =        0;
  22.     TEAM2        =        1;
  23.     TEAM3        =        2;
  24.     TEAM4        =        3;
  25.     TEAM5        =        4;
  26.     TEAM6        =        5;
  27.     TEAM7        =        6;
  28.     TEAM8        =        7;
  29.  
  30.  
  31. //----------------
  32. // Units
  33. //----------------
  34.     ME                                = -1;
  35.     NO_UNIT                            = -2;
  36.  
  37. //----------------
  38. // Teams
  39. //----------------
  40.     NO_TEAM                            = 8;
  41.  
  42. //----------------
  43. // Timers
  44. //----------------
  45.         gti_TIMER_0                        = 0 ;
  46.         gti_TIMER_1                        = 1 ;
  47.         gti_TIMER_2                        = 2 ;
  48.         gti_TIMER_3                        = 3 ;
  49.         gti_TIMER_4                        = 4 ;
  50.         gti_TIMER_5                        = 5 ;
  51.         gti_TIMER_6                        = 6 ;
  52.         gti_TIMER_7                        = 7 ;
  53.         gti_TIMER_8                        = 8 ;
  54.         gti_TIMER_9                        = 9 ;
  55.         gti_TIMER_10                    = 10;
  56.         gti_TIMER_11                    = 11;
  57.         gti_TIMER_12                    = 12;
  58.         gti_TIMER_13                    = 13;
  59.         gti_TIMER_14                    = 14;
  60.         gti_TIMER_15                    = 15;
  61.         gti_TIMER_16                    = 16;
  62.         gti_TIMER_17                    = 17;
  63.         gti_TIMER_18                    = 18;
  64.         gti_TIMER_19                    = 19;
  65.         gti_TIMER_20                    = 20;
  66.         gti_TIMER_21                    = 21;
  67.         gti_TIMER_22                    = 22;
  68.         gti_TIMER_23                    = 23;
  69.         gti_TIMER_24                    = 24;
  70.         gti_TIMER_25                    = 25;
  71.         gti_TIMER_26                    = 26;
  72.         gti_TIMER_27                    = 27;
  73.         gti_TIMER_28                    = 28;
  74.         gti_TIMER_29                    = 29;
  75.         gti_TIMER_30                    = 30;
  76.         gti_TIMER_31                    = 31;
  77.  
  78.  
  79. //----------------
  80. // Moods
  81. // NOTE: The keywords and constants here must exactly match those in AI_Moods.hpp
  82. // NOTE: "_START" indicates the low range of a mood; "_END" indicates the high range of a mood
  83. //----------------
  84.  
  85.    DESPERATE_START    = 1;
  86.    DESPERATE_END      = 2;
  87.    DEFENSIVE_START    = 3;
  88.    DEFENSIVE_END      = 4;
  89.    NEUTRAL_START      = 5;
  90.    NEUTRAL_END        = 6;
  91.    AGRESSIVE_START    = 7;
  92.    AGRESSIVE_END      = 8;
  93.    BRUTAL_START       = 9;
  94.    BRUTAL_END         = 10;
  95.  
  96. //----------------
  97. // Paths
  98. //----------------
  99.  
  100.         MOVE_NOCYCLE                 = 1;
  101.         MOVE_CIRCLE                    = 2;
  102.         MOVE_SEESAW                    = 3;
  103.  
  104. //----------------
  105. // FA_*: FindObject() Alignment Criteria
  106. // NOTE: These can be combined arbitrarily by adding them together as desired.
  107. // NOTE: The keywords and constants here must exactly match those in AI_FindObject.hpp
  108. //----------------
  109.  
  110.     FA_FRIENDLY        = 1;    // include friendly units
  111.     FA_ENEMY        = 2;    // include enemy units
  112.     FA_NEUTRAL        = 4;    // include neutral units
  113.     FA_ANY            = 7;    // include any units: = FA_FRIENDLY + FA_ENEMY + FA_NEUTRAL
  114.  
  115. //----------------
  116. // FT_*: FindObject() Type Criteria
  117. // NOTE: These can be combined arbitrarily by adding them together as desired.
  118. // NOTE: The keywords and constants here must exactly match those in AI_FindObject.hpp
  119. //----------------
  120.  
  121.     FT_VEHICLE        = 1;    // if specified, include vehicles
  122.     FT_MECH            = 2;    // if specified, include 'Mechs
  123.     FT_AIRPLANE        = 4;    // if specified, include airplanes + helicopters
  124.     FT_BOAT            = 8;    // if specified, include boats
  125.     FT_MFB            = 16;    // if specified, include MFBs
  126.     FT_TURRET        = 32;    // if specified, include turrets
  127.  
  128.     // the default:
  129.     FT_DEFAULT        = 63;    // include any units: = FT_VEHICLE + FT_MECH + FT_AIRPLANE + FT_BOAT + FT_MFB + FT_HOVER + FT_HELI + FT_BUILDING
  130.  
  131.     // extras not included in the default
  132.     FT_BUILDING        = 64;    // if specified, take buildings into account (NOTE: ONLY BUILDINGS WITH "PLAYER" OR "ENEMY" ALIGNMENT WILL BE COUNTED HERE -- NEUTRAL BUILDINGS ARE ALWAYS IGNORED!!!)
  133.     FT_UNARMED        = 128;    // if specified, include unarmed units (such as APCs)
  134.  
  135. //----------------
  136. // FC_*: FindObject() Search Criteria
  137. // NOTE: You cannot add these constants; you can use only one.
  138. // NOTE: The keywords and constants here must exactly match those in AI_FindObject.hpp
  139. //----------------
  140.  
  141.     FC_BEST_TARGET        = 1001;        // find the "best target" based on multiple factors
  142.                                     // Currently, this is (0.45 * distance) + (0.35 * damage) +
  143.                                     // (0.2 * tonnage), but will become (0.4 * distance) +
  144.                                     // (0.3 * damage) + (0.2 * weapons) + (0.1 * tonnage)
  145.                                     // when we can query weapons' values for these attributes.
  146.                                     // The most desirable target is the one which is nearest, most
  147.                                     // badly damaged, largest, and has the most weapons.
  148.  
  149.     FC_GREATEST_THREAT    = 1002;        // find the greatest immediate threat
  150.                                     // currently, this is (0.6 * distance) + (0.4 * tonnage),
  151.                                     // but "tonnage" will be replaced with "weapons" eventually.
  152.  
  153.     FC_LEAST_THREAT        = 1003;        // find the least immediate threat
  154.                                     // Each vehicle evaluates to 1 - (its score for FQ_GREATEST_THREAT).
  155.  
  156.     FC_MOST_DAMAGED        = 1004;        // find the most damaged object
  157.                                     // This is (1.0 * damage).
  158.  
  159.     FC_NEAREST            = 1005;        // find the nearest object
  160.                                     // This is (1.0 * distance).
  161.  
  162. //----------------
  163. // FF_*: FindObject() Flags
  164. // NOTE: You can add these together to combine them, or specify 0 for none.
  165. // NOTE: The keywords and constants here must exactly match those in AI_FindObject.hpp
  166. //----------------
  167.  
  168.     FF_WHO_SHOT        = 1;    // if specified and someone shot me, return that object, overriding anything else
  169.     FF_SEEPLAYER    = 2;    // if specified, we can also see the player if within fog radius and if we're facing toward him
  170.     FF_LOOK_EVERYWHERE = 4;    // if specified, we look through every potential enemy in the whole mission
  171.                             // WARNING -- THIS CAN BE VERY EXPENSIVE!!!  Use only on small, limited maps!
  172.     FF_TARGETLOS    = 8;    // if specified, will NOT return a target that is out of LOS
  173.  
  174. //----------------
  175. // Tactics
  176. // NOTE: The keywords and constants here must exactly match those in AI_Tactics.hpp
  177. //----------------
  178.  
  179.     TACTIC_PICK_BEST        = 2000;
  180.     // Tells the Combat AI to pick the best tactic.  This is the same as a generic OrderAttack().
  181.  
  182.     TACTIC_STOP_AND_FIRE    = 2001;
  183.     // Approach the targeted enemy to close range.  Attempt to fire continuously at all times on approach and arrival.
  184.  
  185.     TACTIC_RAM                = 2002;
  186.     // Head toward the targeted enemy at all times while firing.
  187.  
  188.     TACTIC_JOUST            = 2003;
  189.     // Not yet implemented.
  190.  
  191.     TACTIC_RUSH                = 2004;
  192.     // Attempt to stay within close range of the enemy at all times and maneuver at a close range.  Always fire.
  193.  
  194.     TACTIC_HIT_AND_RUN        = 2005;
  195.     // Approach the enemy, run away to a distant range, and repeat.  Always fire.
  196.  
  197.     TACTIC_FRONT            = 2006;
  198.     // Attempt to stay in front of the enemy at all times.  Always fire.
  199.  
  200.     TACTIC_REAR                = 2007;
  201.     // Attempt to stay several meters behind the enemy's back at all times.  Always fire.
  202.  
  203.     TACTIC_CIRCLE_OF_DEATH    = 2008;
  204.     TACTIC_CIRCLE            = 2008; // alternate name
  205.     // Attempt to circle around the enemy.  Always fire.
  206.  
  207.     TACTIC_BACK_UP_AND_FIRE    = 2009;
  208.     // Flee the enemy while walking backwards to long weapons range.  Always fire.
  209.  
  210.     TACTIC_RETREAT            = 2010;
  211.     // Flee the enemy.  Do not fire.
  212.  
  213.     TACTIC_CIRCLE_HOVER        = 2011;
  214.     // Intended for helicopters.  Hover in a circle around the enemy.
  215.  
  216.     TACTIC_STRAFE            = 2012;
  217.     // Intended for Shilone bombers.  Strafe directly over the enemy.
  218.  
  219.     TACTIC_STAND_GROUND        = 2013;
  220.     // Hold still and fire at the target.
  221.  
  222.     TACTIC_JUMP_AND_SHOOT    = 2014;
  223.     // Stay in one place, and if the enemy is in range, jump over the nearby obstacles and shoot it.
  224.     // Similar to TACTIC_AMBUSH, this tactic is automatically quit if the target can see the AI unit
  225.     // (i.e. it has a clear line of sight to the unit) when the AI unit is standing on the ground.
  226.  
  227.     TACTIC_SNIPE            = 2015;
  228.     // Stay at maximum weapons range from the enemy.  Wander around a bit to make yourself harder to hit.
  229.     // Fire at the enemy.  Give up & switch to a new tactic if you can't fire after a certain amount of time.
  230.  
  231.     TACTIC_SHOOT_ONLY        = 2016;
  232.     // Only shoot; don't try to move under any circumstances.  This is the ONLY tactic turrets can use.
  233.  
  234.     TACTIC_DEFEND            = 2017;
  235.     // Defend the current target from any potential enemies.
  236.  
  237.     TACTIC_LOCAL_PATROL        = 2018;
  238.     // Similar to TACTIC_STAND_GROUND, but the mech patrols randomly in a small area
  239.  
  240.     TACTIC_SURRENDER        = 2019;
  241.     // Stop, pitch torso down, put both arms up, and hold fire.
  242.  
  243.     TACTIC_AMBUSH            = 2020;
  244.     // Rush forward from behind your hiding place, fire, and walk backwards to the same spot again.
  245.     // Like TACTIC_JUMP_AND_SHOOT, this tactic is automatically quit if the target can see the AI unit
  246.     // (i.e. it has a clear line of sight to the unit) when the AI unit is standing in its hiding place
  247.     // (i.e. the spot where it was first given the attack order with this tactic).
  248.  
  249.     TACTIC_DEATH_FROM_ABOVE = 2021;
  250.     TACTIC_DFA                = 2021;
  251.     // Shoot whenever possible, and try to use jump jets to kick the target in the face.
  252.     // This will only ever be assigned to mechs with jump jets
  253.     // (or assigned explicitly by a designer -- make sure it is a mech that has jump jets!).
  254.  
  255.     TACTIC_HELI_POPUP        = 2022;
  256.     // For helicopters only  ...  will pop up and down over hills.
  257.  
  258.     TACTIC_DIVE_BOMB        = 2023;
  259.     // will dive-bomb the target (Nightshades and Peregrines only)
  260.  
  261.     TACTIC_FAST_CIRCLE        = 2024;
  262.     // Like Circle of Death, but only moves forwards, and tries to avoid stopping
  263.  
  264.     TACTIC_STARE            = 2025;
  265.     // Stand and stare evilly
  266.  
  267. //----------------
  268. // Group AIs
  269. // NOTE: The keywords and constants here must exactly match those in AI_Squad.hpp
  270. //----------------
  271.  
  272.     GROUPAI_NONE            = 4000;
  273.     // No group AI.
  274.  
  275.     GROUPAI_LANCEMATE        = 4001;
  276.     // Uses lancemate AI -- all vehicles after the first are considered lancemates of the first.
  277.  
  278.     GROUPAI_RADIOSQUAD        = 4002;
  279.     // Serves no purpose other than to propagate IsShot() notifications through all members of the group
  280.  
  281.     GROUPAI_MOODSQUAD        = 4003;
  282.     // Same as a "radio squad," but members' moods are shared -- i.e. there is a single "group mood" that is
  283.     // affected proportionally by anything that happens to any individual unit, and each unit responds
  284.     // according to this group mood.
  285.  
  286.     GROUPAI_FOCUSFIRESQUAD    = 4004;
  287.     // Same as a "radio squad", but members use auto-targeting (see ABL SetAutoTargeting()) to
  288.     // pick on the same target most of the time.
  289.  
  290. //----------------
  291. // Lancemate Commands
  292. // NOTE: The keywords and constants here must exactly match those in AI_LancemateCommands.hpp
  293. //----------------
  294.  
  295.     LANCEMATE_DEFAULT                    = 5000;    // default = no order
  296.     LANCEMATE_ATTACKPLAYERSTARGET        = 5001;
  297.     LANCEMATE_DEFENDPLAYERSTARGET        = 5002;
  298.     LANCEMATE_FORMONME                    = 5003;
  299.     LANCEMATE_HOLDFIRE                    = 5004;
  300.     LANCEMATE_GOTOMYNAVPOINT            = 5005;
  301.     LANCEMATE_STOP                        = 5006;
  302.     LANCEMATE_SHUTDOWN                    = 5007;
  303.     LANCEMATE_ATTACKNEARESTTHREAT        = 5008;
  304.     LANCEMATE_REPAIRATNEARESTREPAIRBAY    = 5009;
  305.     LANCEMATE_CAPTUREPLAYERSFLAG        = 5010;
  306.  
  307. //----------------
  308. // Formation Types
  309. // NOTE: The keywords and constants here must exactly match those in move_formation.hpp
  310. //----------------
  311.  
  312.     FORMTYPE_SPARSE = 1;
  313.     FORMTYPE_NORMAL = 2;
  314.     FORMTYPE_DENSE = 3;
  315.  
  316. //----------------
  317. // Objective Status
  318. // NOTE: The keywords and constants here must exactly match those in objective.hpp
  319. //----------------
  320.  
  321.     OBJECTIVE_NEUTRAL = 2;
  322.     OBJECTIVE_SUCCEEDED = 1;
  323.     OBJECTIVE_FAILED = 0;
  324.  
  325. //----------------
  326. // Difficulty Levels
  327. // NOTE: The keywords and constants here must exactly match those in mwplayer.hpp
  328. //----------------
  329.  
  330.     EASY_DIFFICULTY = 0;
  331.     MEDIUM_DIFFICULTY = 1;
  332.     HARD_DIFFICULTY = 2;
  333.     IMPOSSIBLE_DIFFICULTY = 3;
  334.  
  335. //----------------
  336. // Different players
  337. //----------------
  338.  
  339.     epl_player0        = 0;
  340.     epl_player1        = 1;
  341.     epl_player2        = 2;
  342.     epl_player3        = 3;
  343.     epl_player4        = 4;
  344.     epl_player5        = 5;
  345.     epl_player6        = 6;
  346.     epl_player7        = 7;
  347.     epl_player8        = 8;
  348.     epl_player9        = 9;
  349.     epl_player10    = 10;
  350.     epl_player11    = 11;
  351.     epl_player12    = 12;
  352.     epl_player13    = 13;
  353.     epl_player14    = 14;
  354.     epl_player15    = 15;
  355.     epl_player16    = 16;
  356.     epl_player17    = 17;
  357.     epl_player18    = 18;
  358.     epl_player19    = 19;
  359.     epl_player20    = 20;
  360.     epl_player21    = 21;
  361.     epl_player22    = 22;
  362.     epl_player23    = 23;
  363.     epl_player24    = 24;
  364.     epl_player25    = 25;
  365.     epl_player26    = 26;
  366.     epl_player27    = 27;
  367.     epl_player28    = 28;
  368.     epl_player29    = 29;
  369.     epl_player30    = 30;
  370.     epl_player31    = 31;
  371.  
  372.     Bucket_KILL_LINK            = 0;
  373.     Bucket_DEATH_LINK            = 1;
  374.     Bucket_KILLS                = 2;        // How many kills I can take credit for
  375.     Bucket_FRIENDLY_KILLS        = 3;        // How many friendly-fire kills I've committed
  376.     Bucket_ENEMY_KILLS            = 4;        // How many enemies I've killed
  377.     Bucket_KILLS_BY_TONNAGE        = 5;        // Total tonnage of everyone I've killed
  378.     Bucket_FRIENDLY_KILLS_BY_TONNAGE = 6;    // Total tonnage of all friendlies I've killed
  379.     Bucket_ENEMY_KILLS_BY_TONNAGE = 7;        // Total tonnage of all enemies I've killed
  380.     Bucket_DEATHS                = 8;        // How many times I've died
  381.     Bucket_SUICIDES                = 9;        // How many times I killed myself
  382.     Bucket_DAMAGE_INFLICT        = 10;        // How much damage I've inflicted
  383.     Bucket_FRIENDLY_DAMAGE_INFLICT = 11;    // How much damage I've inflicted on friendlies
  384.     Bucket_ENEMY_DAMAGE_INFLICT    = 12;        // How much damage I've inflicted on enemies
  385.     Bucket_DAMAGE_RECEIVE        = 13;        // How much damage I've received
  386.     Bucket_FRIENDLY_DAMAGE_RECEIVE    = 14;    // How much damage I've received from friendlies
  387.     Bucket_ENEMY_DAMAGE_RECEIVE    = 15;        // How much damage I've received from enemies
  388.     Bucket_COMPONENT_KILLS            = 16;    // How many components I've killed
  389.     Bucket_COMPONENT_DEATHS        = 17;        // How many components I've lost
  390.     Bucket_FRIENDLY_COMPONENT_KILLS = 18;    // How many friendly units' components I've killed
  391.     Bucket_FRIENDLY_COMPONENT_DEATHS = 19;    // How many components I've lost to friendly fire
  392.     Bucket_ENEMY_COMPONENT_KILLS    = 20;    // How many enemy units' components I've killed
  393.     Bucket_ENEMY_COMPONENT_DEATHS    = 21;    // How many components I've lost to enemy units
  394.     Bucket_DFA                    = 22;        // How many times I've been able to pull off a Death From Above
  395.     Bucket_SHOTS_HIT            = 23;        // How many of my shots have hit
  396.     Bucket_SHOTS_FIRED            = 24;        // How many shots I've fired
  397.     Bucket_HEAD_SHOTS            = 25;        // How many of my shots have hit a 'Mech's head
  398.     Bucket_ARM_SHOTS            = 26;        // How many of my shots have hit a 'Mech's arm
  399.     Bucket_LEG_SHOTS            = 27;        // How many of my shots have hit a 'Mech's leg
  400.     Bucket_TORSO_SHOTS            = 28;        // How many of my shots have hit a 'Mech's torso
  401.     Bucket_KILLS_PC                = 29;
  402.     Bucket_KILLS_AI                = 30;
  403.     Bucket_BLANK                = 31;
  404.     Bucket_SHUTDOWN_TIMER        = 32;
  405.     Bucket_OBJECTIVE            = 33;        // How many seconds (total) I've remained within an objective area
  406.     Bucket_OBJECTIVE_CONTESTED    = 34;        // How many seconds (total) I've remained within an objective area with enemies in the same area
  407.     Bucket_OBJECTIVE_UNCONTESTED = 35;        // How many seconds (total) I've remained within an objective area with no enemies in the same area
  408.     Bucket_FLAGS_TAKEN            = 36;        // How many flags I've picked up
  409.     Bucket_FLAGS_DROPPED        = 37;        // How many flags I've dropped due to dying while carrying the flag
  410.     Bucket_FLAGS_CAPTURED        = 38;        // How many flags I've successfully returned to my capture zone
  411.     Bucket_FLAG_HOLD_TIME        = 39;        // Total amount of time I've held any flags
  412.     Bucket_TIME                    = 40;
  413.     Bucket_ALIVE_PLAYERS        = 41;
  414.     Bucket_DEAD_PLAYERS            = 42;
  415.     Bucket_CUSTOM                = 43;
  416.     Bucket_ENEMY_KILLS_BY_RATIO = 44;
  417.     Bucket_ENEMY_DAMAGE_INFLICT_BY_RATIO = 45;
  418.     Bucket_ENEMY_TURRET_KILLS    = 46;
  419.     Bucket_FRIENDLY_TURRET_KILLS = 47;
  420.     Bucket_ENEMY_BUILDING_KILLS  = 48;
  421.     Bucket_FRIENDLY_BUILDING_KILLS    = 49;
  422.     Bucket_ENEMY_KILLS_BATTLE_RATIO = 50;
  423.     Bucket_ENEMY_DAMAGE_BATTLE_RATIO = 51;
  424.     Bucket_TEAM_WINS            =52;
  425.     Bucket_FRIENDLY_DEATHS        =53;
  426.  
  427.     Bucket_Team1 = -1;
  428.     Bucket_Team2 = -2;
  429.     Bucket_Team3 = -3;
  430.     Bucket_Team4 = -4;
  431.     Bucket_Team5 = -5;
  432.     Bucket_Team6 = -6;
  433.     Bucket_Team7 = -7;
  434.     Bucket_Team8 = -8;
  435.  
  436.     Affects_Single = 0;
  437.     Affects_All = 1;
  438.  
  439. //----------------
  440. // Game Parameter Flags (for GetGameParam())
  441. // NOTE: these must EXACTLY match the constants in ABLXSTD.CPP!
  442. //----------------
  443.  
  444.     GameParam_heatOn                    = 0;
  445.     GameParam_killLimit                    = 1;
  446.     GameParam_killLimitNumber            = 2;
  447.     GameParam_respawnLimit                = 3;
  448.     GameParam_respawnLimitNumber        = 4;
  449.     GameParam_forceRespawn                = 5;
  450.     GameParam_splashOn                    = 6;
  451.     GameParam_splashPercentage            = 7;
  452.     GameParam_unlimitedAmmo                = 8;
  453.     GameParam_friendlyFirePercentage    = 9;
  454.     GameParam_allowZoom                    = 10;
  455.     GameParam_allow3rdPerson            = 11;
  456.     GameParam_allowAutoAim                = 12;
  457.     GameParam_allowDeadToChat            = 13;
  458.     GameParam_invulnerableDrop            = 14;
  459.     GameParam_isNight                    = 15;
  460.     GameParam_weather                    = 16;
  461.     GameParam_visibility                = 17;
  462.     GameParam_reportStats                = 18;
  463.     GameParam_serverConnection            = 19;
  464.     GameParam_serverBandwidth            = 20;
  465.     GameParam_onlyStockMech                = 21;
  466.     GameParam_minimumTonnage            = 22;
  467.     GameParam_maximumTonnage            = 23;
  468.     GameParam_gameLength                = 24;
  469.     GameParam_serverRecycle                = 25;
  470.     GameParam_recycleDelay                = 26;
  471.     GameParam_playMissionReview            = 27;
  472.     GameParam_ruleType                    = 28;
  473.     GameParam_deadMechCantSee            = 29;
  474.     GameParam_deadMechCantSeeOtherTeam    = 30;
  475.     GameParam_allowdecaltransfer        = 31;
  476.     GameParam_useMapCycle                = 32;
  477.     GameParam_pureMapCycle                = 33;
  478.     GameParam_teamAllowed                = 34;
  479.     GameParam_teamCount                    = 35;
  480.     GameParam_closedGame                = 36;
  481.     GameParam_playerLimit                = 37;
  482.  
  483. //----------------
  484. // Mech type constants (for GetMechType())
  485. // NOTE: these must EXACTLY match the constants in MechLabHeaders.h!
  486. //----------------
  487.  
  488.     FirstMechID     =    0;
  489.     M_ArcticWolf    =      0;
  490.     M_Argus        =          1;
  491.     M_Atlas        =          2;
  492.     M_Awesome    =          3;
  493.     M_BlackKnight    =      4;
  494.     M_Bushwacker    =      5;
  495.     M_Catapult    =      6;
  496.     M_CauldronBorn    =      7;
  497.     M_Chimera    =          8;
  498.     M_Cougar    =          9;
  499.     M_Daishi    =          10;
  500.     M_Dragon    =          11;
  501.     M_Fafnir        =    12;
  502.     M_Flea        =          13;
  503.     M_Gladiator     =      14;
  504.     M_Hauptmann     =      15;
  505.     M_Hellhound    =          16;
  506.     M_Hellspawn    =          17;
  507.     M_Highlander    =      18;
  508.     M_Hunchback    =          19;
  509.     M_Kodiak    =          20;
  510.     M_Loki        =          21;
  511.     M_Longbow       =      22;
  512.     M_Madcat    =          23;
  513.     M_Madcat_MKII    =      24;
  514.     M_Masakari    =          25;
  515.     M_Mauler    =          26;
  516.     M_Novacat    =          27;
  517.     M_Osiris    =          28;
  518.     M_Owens         =      29;
  519.     M_Puma          =      30;
  520.     M_Raven        =          31;
  521.     M_Ryoken    =          32;
  522.     M_Shadowcat    =          33;
  523.     M_Sunder    =          34;
  524.     M_Templar       =       35;
  525.     M_Thanatos    =          36;
  526.     M_Thor        =          37;
  527.     M_Uller        =          38;
  528.     M_Uziel        =          39;
  529.     M_Victor        =      40;
  530.     M_Vulture    =          41;
  531.     M_Wolfhound    =          42;
  532.     M_Zeus        =          43;
  533.     NoMechID        =     44;
  534.  
  535.  
  536. //----------------
  537. // SetFlagsEnabled() constants
  538. // NOTE: these must EXACTLY match the constants in MWMission.hpp!
  539. //----------------
  540.  
  541.     FLAGS_HIDE                = 0;
  542.     FLAGS_TEAM_ONLY            = 1;
  543.     FLAGS_UNIVERSAL_ONLY    = 2;
  544.     FLAGS_SHOW_ALL            = 3;
  545.  
  546. //----------------
  547. // GetViewMode()/SetViewMode() constants
  548. //----------------
  549.  
  550.     VIEW_OUTSIDE_CENTER        = 0;
  551.     VIEW_OUTSIDE_RIGHT        = 1;
  552.     VIEW_OUTSIDE_LEFT        = 2;
  553.     VIEW_IN_MECH            = 3;
  554.  
  555. //----------------
  556. // Sensor Mode constants
  557. // NOTE: these must match the constants in Sensor.hpp
  558. //----------------
  559.  
  560.     SENSOR_ACTIVE            = 0;
  561.     SENSOR_PASSIVE            = 1;
  562.     SENSOR_SHUTDOWN            = 2;
  563.  
  564. //----------------
  565. // Input Trainer constants
  566. // NOTE: these must EXACTLY match the constants in InputTrainer.hpp!
  567. //----------------
  568.  
  569.     INPUT_NONE                = 0;
  570.  
  571.     INPUT_THROTTLE            = 1;
  572.     INPUT_TURN                = 2;
  573.     INPUT_TORSO                = 4;
  574.     INPUT_FIRING            = 8;
  575.     INPUT_VIEW_MODES        = 16;
  576.     INPUT_TARGET_SELECTION    = 32;
  577.     INPUT_ZOOM                = 64;
  578.     INPUT_HEAT                = 128;
  579.     INPUT_NAV_SWITCHING        = 256;
  580.     INPUT_MISC                = 32768;
  581.  
  582.     INPUT_ALL                = 65535;
  583.  
  584. //----------------
  585. // HUD elements
  586. // NOTE: The keywords and constants here must exactly match those in MWGUIManager.hpp!
  587. //----------------
  588.  
  589.     HUD_NAV                = 0;
  590.     HUD_TARGETARROW        = 1;
  591.     HUD_TORSOBAR        = 2;
  592.     HUD_ZOOM            = 3;
  593.     HUD_HEAT            = 4;
  594.     HUD_COOLANT            = 5;
  595.     HUD_JUMP            = 6;
  596.     HUD_SPEED            = 7;
  597.     HUD_DAMAGE            = 8;
  598.     HUD_TARGETDAMAGE    = 9;
  599.     HUD_WEAPON            = 10;
  600.     HUD_RETICLE            = 11;
  601.     HUD_RADAR            = 12;
  602.     HUD_CHAT            = 13;
  603.     HUD_COMM            = 14;
  604.     HUD_HELP            = 15;
  605.     HUD_MAP                = 16;
  606.     HUD_OBJECTIVE        = 17;
  607.     HUD_SCORE            = 18;
  608.     HUD_TIMER            = 19;
  609.     HUD_HELPARROW        = 20;
  610.  
  611. //----------------
  612. // Sound triggers
  613. // NOTE: The keywords and constants here must exactly match those in VehicleInterface.hpp!
  614. //----------------
  615.  
  616.     SOUND_TRIGGER_CRITICAL_HIT_WEAPON    = 0;
  617.     SOUND_TRIGGER_CRITICAL_HIT_GIMP        = 1;
  618.     SOUND_TRIGGER_DAMAGE_CRITICAL        = 2;
  619.     SOUND_TRIGGER_NO_HEAT                = 3;
  620.     SOUND_TRIGGER_LOW_HEAT                = 4;
  621.     SOUND_TRIGGER_MED_HEAT                = 5;
  622.     SOUND_TRIGGER_HIGH_HEAT                = 6;
  623.     SOUND_TRIGGER_MELTDOWN                = 7;
  624.     SOUND_TRIGGER_AUTO_SHUTDOWN_OVERRIDE    = 8;
  625.     SOUND_TRIGGER_SHUTDOWN                = 9;
  626.     SOUND_TRIGGER_POWER_UP                = 10;
  627.     SOUND_TRIGGER_MISSILE_LOCKED        = 11;
  628.     SOUND_TRIGGER_MISSILE_LOCKLOST        = 12;
  629.     SOUND_TRIGGER_MISSILE_LOCKED_ON_ME    = 13;
  630.     SOUND_TRIGGER_RADAR_RANGE_CHANGE    = 14;
  631.     SOUND_TRIGGER_RADAR_ON                = 15;
  632.     SOUND_TRIGGER_RADAR_OFF                = 16;
  633.     SOUND_TRIGGER_ZOOM_RETICAL_ENGAGED    = 17;
  634.     SOUND_TRIGGER_AMS_ENGAGED            = 18;
  635.     SOUND_TRIGGER_LAMS_ENGAGED            = 19;
  636.     SOUND_TRIGGER_NARC_SIGNAL_START        = 20;
  637.     SOUND_TRIGGER_NARC_HIT                = 21;
  638.     SOUND_TRIGGER_NEW_VEHICLE_RADAR_POWER_UP    = 22;
  639.     SOUND_TRIGGER_TORSO_TWIST            = 23;
  640.     SOUND_TRIGGER_TORSO_TWIST_MAX_REACHED        = 24;
  641.     SOUND_TRIGGER_RADAR_JAMMED            = 25;
  642.     SOUND_TRIGGER_COOLANT_FLUSH_START    = 26;
  643.     SOUND_TRIGGER_COOLANT_FLUSH_STOP    = 27;
  644.     SOUND_TRIGGER_OUT_OF_AMMO            = 28;
  645.     SOUND_TRIGGER_OBJECT_SCANNED        = 29;
  646.     SOUND_TRIGGER_INTERNAL_PPC_WASH        = 30;
  647.     SOUND_TRIGGER_HILL_TOO_STEEP        = 31;
  648.     SOUND_TRIGGER_TARGET_DESTROYED        = 32;
  649.     SOUND_TRIGGER_TERRAIN_BAD            = 33;
  650.     SOUND_TRIGGER_NARC_SIGNAL_STOP        = 34;
  651.     SOUND_TRIGGER_RECHARGE_BEAM            = 35;
  652.     SOUND_TRIGGER_RECHARGE_MISSILE        = 36;
  653.     SOUND_TRIGGER_RECHARGE_PROJECTILE    = 37;
  654.     SOUND_TRIGGER_RECHARGE_PPC            = 38;
  655.     SOUND_TRIGGER_STEP_WATER_START        = 39;
  656.     SOUND_TRIGGER_STEP_WATER_STOP        = 40;
  657.     SOUND_TRIGGER_ENGINE_WALK            = 41;
  658.     SOUND_TRIGGER_ENGINE_RUN            = 42;
  659.     SOUND_TRIGGER_ENGINE_STOP            = 43;
  660.     SOUND_TRIGGER_ENGINE_REVERSE        = 44;
  661.     SOUND_TRIGGER_NAVPOINT_REACHED        = 45;
  662.     SOUND_TRIGGER_KILLAWARDED            = 46;
  663.     SOUND_TRIGGER_FRIENDLYFIREPENALTY    = 47;
  664.     SOUND_TRIGGER_YOUHAVEFLAG            = 48;
  665.     SOUND_TRIGGER_YOUINLEAD                = 49;
  666.     SOUND_TRIGGER_TEAMMATEDESTROYED        = 50;
  667.     SOUND_TRIGGER_FLAGTAKEN                = 51;
  668.     SOUND_TRIGGER_FLAGCAPTURED            = 52;
  669.     SOUND_TRIGGER_FLAGRETURNED            = 53;
  670.     SOUND_TRIGGER_HILLCONTESTED            = 54;
  671.     SOUND_TRIGGER_HILLCAPTURED            = 55;
  672.     SOUND_TRIGGER_DEFENDEDDESTROYED        = 56;
  673.     SOUND_TRIGGER_MECH_DESTROYED        = 57;
  674.     SOUND_TRIGGER_ENEMY_DEAD            = 58;
  675.     SOUND_TRIGGER_ALLY_DEAD                = 59;
  676.     SOUND_TRIGGER_LANCE_DEAD            = 60;
  677.     SOUND_TRIGGER_COMM_OFF                = 61;
  678.     SOUND_TRIGGER_INIT_REPAIR            = 62;
  679.     SOUND_TRIGGER_REPAIR_COMP            = 63;
  680.     SOUND_TRIGGER_ENEMY_CAPTURED        = 64;
  681.     SOUND_TRIGGER_NAV_ALPHA                = 65;
  682.     SOUND_TRIGGER_NAV_BETA                = 66;
  683.     SOUND_TRIGGER_NAV_GAMMA                = 67;
  684.     SOUND_TRIGGER_NAV_DELTA                = 68;
  685.     SOUND_TRIGGER_NAV_EPSL                = 69;
  686.     SOUND_TRIGGER_EXTRACT_POINT            = 70;
  687.     SOUND_TRIGGER_TEAM_DEAD                = 71;
  688.     SOUND_TRIGGER_YOU_WIN                = 72;
  689.     SOUND_TRIGGER_YOU_LOSE                = 73;
  690.     SOUND_TRIGGER_VICTORY_BABY            = 74;
  691.     SOUND_TRIGGER_ALL_HILLS                = 75;
  692.     SOUND_TRIGGER_BASE_CAPTURED            = 76;
  693.     COLISEUM_AHH_WAV                    = 79;
  694.     COLISEUM_AWW_WAV                    = 80;
  695.     COLISEUM_BOO1_WAV                   = 81;
  696.     COLISEUM_BOO2_WAV                   = 82;
  697.     COLISEUM_BOO3_WAV                   = 83;
  698.     COLISEUM_CHANT1_WAV                 = 84;
  699.     COLISEUM_CHANT3_WAV                 = 85;
  700.     COLISEUM_CHEER1_WAV                 = 86;
  701.     COLISEUM_CHEER2_WAV                 = 87;
  702.     COLISEUM_CHEER3_WAV                 = 88;
  703.     COLISEUM_CHEER4_WAV                 = 89;
  704.     COLISEUM_CHEER5_WAV                 = 90;
  705.     COLISEUM_CHEER8_WAV                 = 91;
  706.     COLISEUM_CHEER9_WAV                 = 92;
  707.     COLISEUM_CROWD1_WAV                 = 93;
  708.     COLISEUM_CROWD2_WAV                 = 94;
  709.     COLISEUM_ENERGYZAP_WAV              = 95;
  710.     COLISEUM_HORN_WAV                   = 96;
  711.     COLISEUM_JEERS_WAV                  = 97;
  712.     COLISEUM_ROAR_WAV                   = 98;
  713.     COLISEUM_STADAMB_WAV                = 99;
  714.     COLISEUM_FACTORYHORN                = 100;
  715.     FACTORY_BANG_WAV                    = 101;
  716.     FACTORY_BUZZ_WAV                    = 102;
  717.     FACTORY_CLANG_WAV                   = 103;
  718.     FACTORY_DRILL_WAV                   = 104;
  719.     FACTORY_STEAM_WAV                   = 105;
  720.     COLISEUMAMB_MUSIC                   = 106;
  721.     COLISEUM_JUNGLEBIRD1                = 107;
  722.     COLISEUM_JUNGLEBIRD2                = 108;
  723.     COLISEUM_JUNGLEBIRD3                = 109;
  724.     COLISEUM_JUNGLEBIRD4                = 110;
  725.     COLISEUM_JUNGLEMONKEY1              = 111;
  726.     COLISEUM_JUNGLEMONKEY2              = 112;
  727.     SOUND_TRIGGER_TARGETATTACKED        = 113;
  728.     SOUND_TRIGGER_TARGETDESTROYED       = 114;
  729.     SOUND_TRIGGER_ALARM1                = 115;
  730.     SOUND_TRIGGER_ALARM2                = 116;
  731.  
  732.  
  733.  
  734.  
  735. //----------------
  736. // Talker IDs
  737. // NOTE: The keywords and constants here must exactly match those in ablxstd.cpp
  738. //----------------
  739.  
  740.     TALKER_ERI                = 0;
  741.     TALKER_MAN                = 1;
  742.     TALKER_RAD                = 2;
  743.     TALKER_ISA                = 3;
  744.     TALKER_OLS                = 4;
  745.     TALKER_GRE                = 5;
  746.     TALKER_CAI                = 6;
  747.  
  748.     TALKER_SPE                = 7;
  749.     TALKER_CAS                = 8;
  750.     TALKER_AIS                = 9;
  751.     TALKER_RUF                = 10;
  752.     TALKER_ANG                = 11;
  753.     TALKER_SHR                = 12;
  754.     TALKER_RUB                = 13;
  755.     TALKER_MAG                = 14;
  756.     TALKER_HAN                = 15;
  757.     TALKER_BUL                = 16;
  758.     TALKER_MUS                = 17;
  759.     TALKER_CLA                = 18;
  760.     TALKER_SPI                = 19;
  761.     TALKER_GOO                = 20;
  762.     TALKER_BLS                = 21;
  763.     TALKER_GAT                = 22;
  764.     TALKER_BEO                = 23;
  765.     TALKER_GOA                = 24;
  766.     TALKER_GOB                = 25;
  767.     TALKER_BLK                = 26;
  768.     TALKER_SCO                = 27;
  769.     TALKER_SCR                = 28;
  770.     TALKER_BLA                = 29;
  771.     TALKER_BUZ                = 30;
  772.  
  773.     TALKER_RES                = 31;
  774.     TALKER_65C                = 32;
  775.     TALKER_EV1                = 33;
  776.     TALKER_EV2                = 34;
  777.     TALKER_SAL                = 35;
  778.     TALKER_REC                = 36;
  779.     TALKER_SUP                = 37;
  780.     TALKER_FO1                = 38;
  781.     TALKER_FO2                = 39;
  782.     TALKER_FO3                = 40;
  783.     TALKER_FO4                = 41;
  784.     TALKER_FO5                = 42;
  785.     TALKER_FO6                = 43;
  786.     TALKER_PI1                = 44;
  787.     TALKER_PI2                = 45;
  788.     TALKER_PI3                = 46;
  789.     TALKER_PI4                = 47;
  790.     TALKER_ART                = 48;
  791.     TALKER_SHE                = 49;
  792.     TALKER_BD1                = 50;
  793.     TALKER_BD2                = 51;
  794.     TALKER_FOX                = 52;
  795.     TALKER_KIL                = 53;
  796.     TALKER_SGT                = 54;
  797.     TALKER_ROM                = 55;
  798.     TALKER_XRY                = 56;
  799.     TALKER_CCG                = 57;
  800.     TALKER_ERL                = 58;
  801.     TALKER_PA1                = 59;
  802.     TALKER_PA2                = 60;
  803.     TALKER_PA3                = 61;
  804.     TALKER_PA4                = 62;
  805.     TALKER_BRV                = 63;
  806.  
  807.     TALKER_DEN                = 64;
  808.     TALKER_MIL                = 65;
  809.     TALKER_CON                = 66;
  810.     TALKER_STA                = 67;
  811.     TALKER_DOS                = 68;
  812.     TALKER_DUN                = 69;
  813.     TALKER_JUN                = 70;
  814.     TALKER_DRA                = 71;
  815.     TALKER_BOU                = 72;
  816.     TALKER_SIX                = 73;
  817.     TALKER_CLP                = 74;
  818.     TALKER_ROS                = 75;
  819.     TALKER_SKY                = 76;
  820.     TALKER_DOG                = 77;
  821.     TALKER_HAM                = 78;
  822.     TALKER_CHI                = 79;
  823.     TALKER_SCB                = 80;
  824.     TALKER_AND                = 81;
  825.     TALKER_CRO                = 82;
  826.     TALKER_CNV                = 83;
  827.     TALKER_WAR                = 84;
  828.     TALKER_CLO                = 85;
  829.     TALKER_BUR                = 86;
  830.     TALKER_CAN                = 87;
  831.     TALKER_PET                = 88;
  832.     TALKER_COL                = 89;
  833.     TALKER_D24                = 90;
  834.     TALKER_D23                = 91;
  835.     TALKER_D22                = 92;
  836.     TALKER_D21                = 93;
  837.     TALKER_NON                = 94;
  838.     TALKER_GUA                = 95;
  839.     TALKER_RFX                = 96; // Rabid Fox
  840.     TALKER_LEA                = 97;
  841.     TALKER_ONE                = 98;
  842.     TALKER_TWO                = 99;
  843.     TALKER_THR                = 100;
  844.     TALKER_FOU                = 101;
  845.     TALKER_FIV                = 102;
  846.     TALKER_KHA                = 103;
  847.     TALKER_FIS                = 104;
  848.     TALKER_SAN                = 105;
  849.     TALKER_KUO                = 106;
  850.     TALKER_CHO                = 107;
  851.     TALKER_RID                = 108;
  852.     TALKER_COC                = 109;
  853.     TALKER_TER                = 110;
  854.     TALKER_ACE                = 111;
  855.     TALKER_FAN                = 112;
  856.     TALKER_GRU                = 113;
  857.     TALKER_PRO                = 114;
  858.     TALKER_IAN                = 115; // left in for the training mission
  859.  
  860.     TALKER_BET                = 116;
  861.  
  862.  
  863.  
  864. //Regiments
  865.     REGIMENT_WODRG          = 5100;
  866.     REGIMENT_NOHI           = 5101;
  867.     REGIMENT_KLHND          = 5102;
  868.     REGIMENT_GDLEG          = 5103;
  869.  
  870. //Table Tags/IDs
  871.     NOTORIETY               = 1;
  872.     UNIT_STRENGTH           = 2;
  873.     STEINER                 = 3;
  874.     DAVION                  = 4;
  875.  
  876. //Status
  877.     STATUS_PROBATION        = 5104;
  878.     STATUS_REGULAR          = 5105;
  879.     STATUS_FULLMEMBER       = 5106;
  880.     STATUS_SUSPENDED        = 5107;
  881.     STATUS_DISAVOWED        = 5108;
  882.  
  883. //Mission Revelation
  884.     MISSION_HIDDEN          = 0;
  885.     MISSION_DISPLAYED       = 1;
  886.     MISSION_COMPLETED       = 2;
  887.  
  888. //Arena Indices
  889.     ARENA_COLISEUM          = 0;
  890.     ARENA_FACTORY           = 1;
  891.     ARENA_JUNGLE            = 2;
  892.  
  893. // Solaris Titles
  894.     SolTitleOne             = 5109;
  895.     SolTitleTwo             = 5110;
  896.     SolTitleThree             = 5111;
  897.     SolTitleFour             = 5112;
  898.     SolTitleFive             = 5113;
  899.     SolTitleSix             = 5114;
  900.     SolTitleSeven             = 5115;
  901.     SolTitleEight             = 5116;
  902.     SolTitleNine             = 5117;
  903.     SolTitleTen             = 5118;
  904.