mirror of
https://github.com/unknownworlds/NS.git
synced 2024-11-22 20:51:36 +00:00
d995257c31
git-svn-id: https://unknownworlds.svn.cloudforge.com/ns1@282 67975925-1194-0748-b3d5-c16f83f1a3a1
1011 lines
34 KiB
C
1011 lines
34 KiB
C
//======== (C) Copyright 2001 Charles G. Cleveland All rights reserved. =========
|
|
//
|
|
// The copyright to the contents herein is the property of Charles G. Cleveland.
|
|
// The contents may be used and/or copied only with the written permission of
|
|
// Charles G. Cleveland, or in accordance with the terms and conditions stipulated in
|
|
// the agreement/contract under which the contents have been supplied.
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $Workfile: AvHConstants.h$
|
|
// $Date: 2002/11/12 02:23:01 $
|
|
//
|
|
//-------------------------------------------------------------------------------
|
|
// $Log: AvHConstants.h,v $
|
|
// Revision 1.61 2002/11/12 02:23:01 Flayra
|
|
// - Renamed avhplayer for 3rd party compatibility (adminmod, etc.)
|
|
//
|
|
// Revision 1.60 2002/11/06 01:39:48 Flayra
|
|
// - Regeneration now heals a percentage
|
|
//
|
|
// Revision 1.59 2002/11/05 06:17:25 Flayra
|
|
// - Balance changes
|
|
//
|
|
// Revision 1.58 2002/11/03 04:50:19 Flayra
|
|
// - Hard-coded gameplay constants instead of putting in skill.cfg
|
|
//
|
|
// Revision 1.57 2002/10/24 21:23:01 Flayra
|
|
// - Reworked jetpacks
|
|
// - Added alien easter eggs
|
|
//
|
|
// Revision 1.56 2002/10/18 22:18:44 Flayra
|
|
// - Added alien easter egg sayings
|
|
// - Added sensory chamber sayings
|
|
// - Limit number of buildings in radius
|
|
// - Fixed motd.txt length crash
|
|
//
|
|
// Revision 1.55 2002/10/16 20:51:44 Flayra
|
|
// - Hive health while gestating
|
|
//
|
|
// Revision 1.54 2002/10/16 00:52:45 Flayra
|
|
// - Added "need order" alert
|
|
// - Added authentication mask
|
|
// - Updated alien building sounds
|
|
// - Removed a couple unneeded sounds
|
|
//
|
|
// Revision 1.53 2002/10/03 18:41:58 Flayra
|
|
// - Added alien HUD sounds
|
|
// - Added more order sounds
|
|
//
|
|
// Revision 1.52 2002/09/25 20:43:40 Flayra
|
|
// - Removed use order, sound update
|
|
//
|
|
// Revision 1.51 2002/09/23 22:12:07 Flayra
|
|
// - New CC sounds
|
|
// - Regular update
|
|
//
|
|
// Revision 1.50 2002/09/09 19:49:25 Flayra
|
|
// - Added deathmessage cheat
|
|
//
|
|
// Revision 1.49 2002/08/31 18:01:01 Flayra
|
|
// - Work at VALVe
|
|
//
|
|
// Revision 1.48 2002/08/16 02:33:57 Flayra
|
|
// - Regular update
|
|
//
|
|
// Revision 1.47 2002/08/09 00:56:18 Flayra
|
|
// - Added "adjustscore" cheat for testing new scoreboard
|
|
//
|
|
// Revision 1.46 2002/08/02 22:01:04 Flayra
|
|
// - Regular update
|
|
//
|
|
// Revision 1.45 2002/07/28 19:38:59 Flayra
|
|
// - Linux path fixes
|
|
//
|
|
// Revision 1.44 2002/07/26 23:04:08 Flayra
|
|
// - Generate numerical feedback for damage events
|
|
//
|
|
// Revision 1.43 2002/07/23 17:01:02 Flayra
|
|
// - Regular update
|
|
//
|
|
// Revision 1.42 2002/07/08 16:50:20 Flayra
|
|
// - Reworked team colors, #define a few more sounds, weapon spread
|
|
//
|
|
// Revision 1.41 2002/07/01 22:41:40 Flayra
|
|
// - Removed outdated overwatch target and tension events
|
|
//
|
|
// Revision 1.40 2002/07/01 21:25:26 Flayra
|
|
// - Added new alien weapons, added build ranges
|
|
//
|
|
// Revision 1.39 2002/06/25 17:53:19 Flayra
|
|
// - Regular update (cleanup, new entities, new classnames)
|
|
//
|
|
// Revision 1.38 2002/06/10 19:51:29 Flayra
|
|
// - Regular update
|
|
//
|
|
// Revision 1.37 2002/06/03 16:41:50 Flayra
|
|
// - Removed duplicate hive class name, added more player class types for scoreboard info
|
|
//
|
|
// Revision 1.36 2002/05/28 17:37:48 Flayra
|
|
// - Reinforcment refactoring, renamed role sounds to be less confusing
|
|
//
|
|
// Revision 1.35 2002/05/23 02:34:00 Flayra
|
|
// - Post-crash checkin. Restored @Backup from around 4/16. Contains changes for last four weeks of development.
|
|
//
|
|
//===============================================================================
|
|
#ifndef AVHCONSTANTS_H
|
|
#define AVHCONSTANTS_H
|
|
|
|
#include "types.h"
|
|
#include "game_shared/teamconst.h"
|
|
|
|
// Basic constants
|
|
const int kMaxPlayers = 32;
|
|
const int kMaxEntities = 1500;
|
|
const int kSelectionStartRange = 50;
|
|
const int kSelectionEndRange = 8012;
|
|
const int kSelectionExtreme = 8012;
|
|
const float kSelectionNetworkConstant = 1000.0f;
|
|
const float kBuildInvalidRangeMultiplier = 2.0f;
|
|
const float kWorldPosNetworkConstant = 6.0f;
|
|
const float kNumericNetworkConstant = 100.0f;
|
|
const int kWorldMinimumZ = -4096;
|
|
const int kMaxGroundPlayerSpeed = 1200;
|
|
const int kNumHotkeyGroups = 5;
|
|
const int kSelectAllHotGroup = kNumHotkeyGroups + 1;
|
|
|
|
const int kNumRequestTypes = 3;
|
|
const int kPendingIdleSoldiers = (kNumHotkeyGroups + 1);
|
|
const int kPendingAmmoRequests = (kNumHotkeyGroups + 2);
|
|
const int kPendingHealthRequests = (kNumHotkeyGroups + 3);
|
|
|
|
const int kMaxHives = 3;
|
|
const int kMaxUpgradeCategories = 3;
|
|
const int kMaxUpgradeLevel = 3;
|
|
|
|
const int kFuncResourceMaxResources = 300;
|
|
//const float kPlayerResourceScalar = 2.0f; // 1.5 might be better
|
|
const int kVictoryIntermission = 12;
|
|
const int kResetPlayersPerSecond = 8;
|
|
const float kBuildingUseWarmupTime = 2.0f;
|
|
const float kRedeemInvulnerableTime = 1.0f;
|
|
|
|
const float kMaxBuildingDropSlope = 1.0f;
|
|
const float kMaxEquipmentDropSlope = 1.0f;
|
|
|
|
// Used to be cl_forwardspeed, cl_backspeed, cl_sidespeed.
|
|
const float kForwardSpeed = 1000.0f;
|
|
const float kBackSpeed = 1000.0f;
|
|
const float kSideSpeed = 1000.0f;
|
|
|
|
// Name this guy for custom propagation, maybe
|
|
typedef int EntityInfo;
|
|
typedef vector<EntityInfo> EntityListType;
|
|
typedef pair<EntityInfo, float> EntityFloatPairType;
|
|
typedef vector<EntityFloatPairType> EntityFloatPairListType;
|
|
typedef map<int, EntityInfo> EntityMap;
|
|
typedef vector<int> IntList;
|
|
|
|
#define kAvHGameName ((const char*)("Natural Selection"))
|
|
#define kAvHGameAcronymn ((const char*)("NS"))
|
|
#define kInvalidTeamName "Invalid team name"
|
|
#define kAvHPlayerClassName "player"
|
|
#define kwsWeldableClassName "avhweldable"
|
|
#define kwsMapInfoClassName "avhmapinfo"
|
|
#define kwsGameplayClassName "avhgameplay"
|
|
#define kwsGammaClassName "avhgamma"
|
|
|
|
#define kNumAlienLifeforms 5
|
|
#define kNumAlienUpgrades 12
|
|
#define kNumAlienUpgradeCategories 3
|
|
#define kNumUpgradesInCategory 3
|
|
#define kNumUpgradeLevelsInCategory 3
|
|
|
|
#define kMaxAlienHives 3
|
|
#define kMaxAlienEnergy 100
|
|
#define kMaxAlienResources 100
|
|
|
|
typedef enum
|
|
{
|
|
AVH_CLASS_TYPE_UNDEFINED = 0,
|
|
AVH_CLASS_TYPE_MARINE = 1,
|
|
AVH_CLASS_TYPE_ALIEN = 2,
|
|
AVH_CLASS_TYPE_AUTOASSIGN = 3
|
|
} AvHClassType;
|
|
|
|
typedef enum
|
|
{
|
|
MAP_MODE_UNDEFINED = 0,
|
|
MAP_MODE_NS = 1,
|
|
MAP_MODE_CS = 2,
|
|
MAP_MODE_DM = 3,
|
|
MAP_MODE_CO = 4,
|
|
MAP_MODE_NSC = 5
|
|
}
|
|
AvHMapMode;
|
|
|
|
#define kUndefinedTeam "undefinedteam"
|
|
#define kMarine1Team "marine1team"
|
|
#define kAlien1Team "alien1team"
|
|
#define kMarine2Team "marine2team"
|
|
#define kAlien2Team "alien2team"
|
|
#define kSpectatorTeam "spectatorteam"
|
|
#define kTeamString "undefinedteam;marine1team;alien1team;marine2team;alien2team;spectatorteam"
|
|
|
|
#define kMarinePrettyName "Frontiersmen"
|
|
#define kAlienPrettyName "Kharaa"
|
|
#define kUndefPrettyName "Undefined"
|
|
|
|
typedef enum
|
|
{
|
|
AUTH_ACTION_JOIN_TEAM = 0,
|
|
AUTH_ACTION_ADJUST_BALANCE = 1
|
|
} AvHAuthAction;
|
|
|
|
typedef enum
|
|
{
|
|
PLAYMODE_UNDEFINED = 0,
|
|
PLAYMODE_READYROOM = 1,
|
|
PLAYMODE_PLAYING = 2,
|
|
PLAYMODE_AWAITINGREINFORCEMENT = 3, // Player is dead and waiting in line to get back in
|
|
PLAYMODE_REINFORCING = 4, // Player is in the process of coming back into the game
|
|
PLAYMODE_OBSERVER = 5,
|
|
PLAYMODE_REINFORCINGCOMPLETE = 6 // Combat only: 'press fire to respawn'
|
|
} AvHPlayMode;
|
|
|
|
typedef enum
|
|
{
|
|
TEAM_IND = 0,
|
|
TEAM_ONE = 1,
|
|
TEAM_TWO = 2,
|
|
TEAM_THREE = 3,
|
|
TEAM_FOUR = 4,
|
|
TEAM_SPECT = 5,
|
|
TEAM_ACTIVE_BEGIN = 1,
|
|
TEAM_ACTIVE_END = 5
|
|
} AvHTeamNumber;
|
|
|
|
typedef enum
|
|
{
|
|
ALERT_NONE = 0,
|
|
ALERT_PLAYER_ENGAGE = 1,
|
|
ALERT_UNDER_ATTACK = 2,
|
|
ALERT_RESEARCH_COMPLETE = 3,
|
|
ALERT_UPGRADE_COMPLETE = 4,
|
|
ALERT_LOW_RESOURCES = 5,
|
|
ALERT_SOLDIER_NEEDS_AMMO = 6,
|
|
ALERT_SOLDIER_NEEDS_HEALTH = 7,
|
|
ALERT_PLAYER_DIED = 8,
|
|
ALERT_SENTRY_FIRING = 9,
|
|
ALERT_SENTRY_DAMAGED = 10,
|
|
ALERT_HIVE_COMPLETE = 11,
|
|
ALERT_HIVE_DYING = 12,
|
|
ALERT_NEW_TRAIT = 13,
|
|
ALERT_ORDER_NEEDED = 14,
|
|
ALERT_ORDER_COMPLETE = 15,
|
|
ALERT_MAX_ALERTS = 16
|
|
} AvHAlertType;
|
|
|
|
typedef enum
|
|
{
|
|
PLAYERCLASS_NONE = 0,
|
|
PLAYERCLASS_ALIVE_MARINE,
|
|
PLAYERCLASS_ALIVE_JETPACK_MARINE,
|
|
PLAYERCLASS_ALIVE_HEAVY_MARINE,
|
|
PLAYERCLASS_ALIVE_LEVEL1,
|
|
PLAYERCLASS_ALIVE_LEVEL2,
|
|
PLAYERCLASS_ALIVE_LEVEL3,
|
|
PLAYERCLASS_ALIVE_LEVEL4,
|
|
PLAYERCLASS_ALIVE_LEVEL5,
|
|
PLAYERCLASS_ALIVE_DIGESTING,
|
|
PLAYERCLASS_ALIVE_GESTATING,
|
|
PLAYERCLASS_DEAD_MARINE,
|
|
PLAYERCLASS_DEAD_ALIEN,
|
|
PLAYERCLASS_COMMANDER,
|
|
PLAYERCLASS_REINFORCING,
|
|
PLAYERCLASS_SPECTATOR,
|
|
PLAYERCLASS_REINFORCINGCOMPLETE
|
|
} AvHPlayerClass;
|
|
|
|
// puzl: 0001073
|
|
#ifdef USE_OLDAUTH
|
|
// This is a mask because players can have more then one of these
|
|
typedef enum
|
|
{
|
|
PLAYERAUTH_NONE = 0,
|
|
PLAYERAUTH_DEVELOPER = 1,
|
|
PLAYERAUTH_GUIDE = 2,
|
|
PLAYERAUTH_SERVEROP = 4,
|
|
PLAYERAUTH_PLAYTESTER = 8,
|
|
PLAYERAUTH_CONTRIBUTOR = 16,
|
|
PLAYERAUTH_CHEATINGDEATH = 32,
|
|
PLAYERAUTH_VETERAN = 64,
|
|
PLAYERAUTH_BETASERVEROP = 128,
|
|
PLAYERAUTH_PENDING = 256,
|
|
PLAYERAUTH_CUSTOM = 512,
|
|
PLAYERAUTH_UPP_MODE = 16384
|
|
} AvHPlayerAuthentication;
|
|
#else
|
|
// Mask replaced with explicit string set for GetIsMember function
|
|
const static string PLAYERAUTH_DEVELOPER("dev");
|
|
const static string PLAYERAUTH_PLAYTESTER("pt");
|
|
const static string PLAYERAUTH_GUIDE("guide");
|
|
const static string PLAYERAUTH_CONTRIBUTOR("const");
|
|
const static string PLAYERAUTH_SERVEROP("op");
|
|
const static string PLAYERAUTH_VETERAN("vet");
|
|
const static string PLAYERAUTH_BETASERVEROP("betaop");
|
|
#endif
|
|
|
|
typedef enum
|
|
{
|
|
HUD_SOUND_INVALID = 0,
|
|
HUD_SOUND_POINTS_SPENT,
|
|
HUD_SOUND_COUNTDOWN,
|
|
HUD_SOUND_SELECT,
|
|
HUD_SOUND_SQUAD1,
|
|
HUD_SOUND_SQUAD2,
|
|
HUD_SOUND_SQUAD3,
|
|
HUD_SOUND_SQUAD4,
|
|
HUD_SOUND_SQUAD5,
|
|
HUD_SOUND_PLACE_BUILDING,
|
|
HUD_SOUND_MARINE_RESEARCHCOMPLETE,
|
|
HUD_SOUND_MARINE_SOLDIER_UNDER_ATTACK,
|
|
HUD_SOUND_MARINE_BASE_UNDER_ATTACK,
|
|
HUD_SOUND_MARINE_UPGRADE_COMPLETE,
|
|
HUD_SOUND_MARINE_MORE,
|
|
HUD_SOUND_MARINE_SOLDIERLOST,
|
|
HUD_SOUND_MARINE_CCONLINE,
|
|
HUD_SOUND_MARINE_CCUNDERATTACK,
|
|
HUD_SOUND_MARINE_COMMANDER_EJECTED,
|
|
HUD_SOUND_MARINE_RESOURCES_LOW,
|
|
HUD_SOUND_MARINE_NEEDS_AMMO,
|
|
HUD_SOUND_MARINE_NEEDS_HEALTH,
|
|
HUD_SOUND_MARINE_NEEDS_ORDER,
|
|
HUD_SOUND_MARINE_POINTS_RECEIVED,
|
|
HUD_SOUND_MARINE_SOLDIER_LOST,
|
|
HUD_SOUND_MARINE_SENTRYFIRING,
|
|
HUD_SOUND_MARINE_SENTRYDAMAGED,
|
|
HUD_SOUND_MARINE_GIVEORDERS,
|
|
HUD_SOUND_MARINE_NEEDPORTAL,
|
|
HUD_SOUND_MARINE_GOTOALERT,
|
|
HUD_SOUND_MARINE_COMMANDERIDLE,
|
|
HUD_SOUND_MARINE_ARMORYUPGRADING,
|
|
|
|
HUD_SOUND_ALIEN_ENEMY_APPROACHES,
|
|
HUD_SOUND_ALIEN_GAMEOVERMAN,
|
|
HUD_SOUND_ALIEN_HIVE_ATTACK,
|
|
HUD_SOUND_ALIEN_HIVE_COMPLETE,
|
|
HUD_SOUND_ALIEN_HIVE_DYING,
|
|
HUD_SOUND_ALIEN_LIFEFORM_ATTACK,
|
|
HUD_SOUND_ALIEN_RESOURCES_LOW,
|
|
HUD_SOUND_ALIEN_MESS,
|
|
HUD_SOUND_ALIEN_MORE,
|
|
HUD_SOUND_ALIEN_NEED_BETTER,
|
|
HUD_SOUND_ALIEN_NEED_BUILDERS,
|
|
HUD_SOUND_ALIEN_NEW_TRAIT,
|
|
HUD_SOUND_ALIEN_NOW_DONCE,
|
|
HUD_SOUND_ALIEN_POINTS_RECEIVED,
|
|
HUD_SOUND_ALIEN_RESOURCES_ATTACK,
|
|
HUD_SOUND_ALIEN_STRUCTURE_ATTACK,
|
|
HUD_SOUND_ALIEN_UPGRADELOST,
|
|
|
|
HUD_SOUND_ORDER_MOVE,
|
|
HUD_SOUND_ORDER_ATTACK,
|
|
HUD_SOUND_ORDER_BUILD,
|
|
HUD_SOUND_ORDER_WELD,
|
|
HUD_SOUND_ORDER_GUARD,
|
|
HUD_SOUND_ORDER_GET,
|
|
HUD_SOUND_ORDER_COMPLETE,
|
|
|
|
HUD_SOUND_GAMESTART,
|
|
HUD_SOUND_YOU_WIN,
|
|
HUD_SOUND_YOU_LOSE,
|
|
HUD_SOUND_TOOLTIP,
|
|
// joev: bug 0000767
|
|
HUD_SOUND_PLAYERJOIN,
|
|
// :joev
|
|
HUD_SOUND_MAX
|
|
} AvHHUDSound;
|
|
|
|
typedef vector<AvHHUDSound> HUDSoundListType;
|
|
|
|
//typedef enum
|
|
//{
|
|
// ARMOR_BASE = 1,
|
|
// ARMOR_HEAVY = 2,
|
|
// ARMOR_LIFESUPPORT = 4,
|
|
// ARMOR_JETPACK = 8,
|
|
// ARMOR_MOTIONTRACK = 16
|
|
//} AvHMarineArmor;
|
|
|
|
// Location orders, global orders
|
|
typedef enum
|
|
{
|
|
ORDERTYPE_UNDEFINED = 0,
|
|
ORDERTYPEL_DEFAULT,
|
|
ORDERTYPEL_MOVE,
|
|
|
|
ORDERTYPET_ATTACK,
|
|
ORDERTYPET_BUILD,
|
|
ORDERTYPET_GUARD,
|
|
ORDERTYPET_WELD,
|
|
ORDERTYPET_GET,
|
|
|
|
ORDERTYPEG_HOLD_POSITION,
|
|
ORDERTYPEG_CODE_DEPLOY_MINES,
|
|
ORDERTYPEG_CODE_GREEN,
|
|
ORDERTYPEG_CODE_YELLOW,
|
|
ORDERTYPEG_CODE_RED,
|
|
|
|
ORDERTYPE_MAX
|
|
}
|
|
AvHOrderType;
|
|
|
|
typedef enum
|
|
{
|
|
ORDERTARGETTYPE_UNDEFINED = 0,
|
|
ORDERTARGETTYPE_GLOBAL = 1,
|
|
ORDERTARGETTYPE_LOCATION = 2,
|
|
ORDERTARGETTYPE_TARGET = 3
|
|
}
|
|
AvHOrderTargetType;
|
|
|
|
extern const char* getModDirectory(void);
|
|
extern const char* getModName(void);
|
|
|
|
#define kSpriteDirectory "sprites"
|
|
#define kMiniMapSpritesDirectory "sprites/minimaps"
|
|
#define kTechTreeSpriteDirectory "sprites/techtree"
|
|
#define kTechTreeSpritePrefix "tech"
|
|
#define kScriptsDirectory "scripts"
|
|
#define kSoundDirectory "sound"
|
|
#define kMapDirectory "maps"
|
|
#define kMusicDirectory "music"
|
|
#define kBasePSName "ns.ps"
|
|
|
|
// Entities
|
|
#define kesDeathMatchStart "info_player_deathmatch"
|
|
#define kesTerroristStart "info_player_deathmatch"
|
|
#define kesCounterTerroristStart "info_player_start"
|
|
|
|
#define kesFuncDoor "func_door"
|
|
#define kesFuncWall "func_wall"
|
|
#define kesEnvSprite "env_sprite"
|
|
#define kesFuncIllusionary "func_illusionary"
|
|
|
|
#define kesReadyRoomStart "info_player_start"
|
|
#define keTeamStart info_team_start
|
|
#define kesTeamStart "info_team_start"
|
|
#define keLeaveGame info_leave_game
|
|
#define keJoinTeam info_join_team
|
|
#define keSpectate info_spectate
|
|
#define keAutoAssign info_join_autoassign
|
|
#define keMapInfo info_mapinfo
|
|
#define kesMapInfo "info_mapinfo"
|
|
#define keGameplay info_gameplay
|
|
#define kesGameplay "info_gameplay"
|
|
|
|
//#define keGlow glow
|
|
#define keGamma env_gamma
|
|
#define kesGamma "env_gamma"
|
|
#define keParticles env_particles
|
|
#define kesParticles "env_particles"
|
|
#define keParticlesCustom env_particles_custom
|
|
#define kesParticlesCustom "env_particles_custom"
|
|
|
|
//#define keResource resource
|
|
#define keWeldable func_weldable
|
|
#define kesWeldable "func_weldable"
|
|
|
|
#define keSeethrough func_seethrough
|
|
#define kesSeethrough "func_seethrough"
|
|
|
|
#define keSeethroughDoor func_seethroughdoor
|
|
#define kesSeethroughDoor "func_seethroughdoor"
|
|
|
|
//#define keWaypoint func_waypoint
|
|
//#define kesWaypoint "func_waypoint"
|
|
|
|
#define keNoBuild func_nobuild
|
|
#define kesNoBuild "func_nobuild"
|
|
|
|
#define keFuncResource func_resource
|
|
#define kesFuncResource "func_resource"
|
|
|
|
#define keMP3Audio target_mp3audio
|
|
#define kesMP3Audio "target_mp3audio"
|
|
|
|
#define keFog env_fog
|
|
#define kesFog "env_fog"
|
|
|
|
#define keInfoLocation info_location
|
|
#define kesInfoLocation "info_location"
|
|
|
|
#define keTeamHive team_hive
|
|
#define kesTeamHive "team_hive"
|
|
|
|
#define keTeamEgg team_egg
|
|
#define kesTeamEgg "team_egg"
|
|
|
|
#define keTriggerRandom trigger_random
|
|
#define kesTriggerRandom "trigger_random"
|
|
|
|
#define keTriggerPresence trigger_presence
|
|
#define kesTriggerPresence "trigger_presence"
|
|
|
|
#define keTriggerScript trigger_script
|
|
#define kesTriggerScript "trigger_script"
|
|
|
|
#define keTeamWebStrand team_webstrand
|
|
#define kesTeamWebStrand "team_webstrand"
|
|
|
|
// Targets fired by game
|
|
#define ktGameStartedStatus "gamestartedstatus"
|
|
#define ktGameReset "gamereset"
|
|
|
|
// Weapons/Equipment
|
|
#define kwsKnife "weapon_knife"
|
|
#define kwKnife weapon_knife
|
|
#define kwsGrenade "weapon_grenade"
|
|
#define kwGrenade weapon_grenade
|
|
#define kwsMachineGun "weapon_machinegun"
|
|
#define kwMachineGun weapon_machinegun
|
|
#define kwsPistol "weapon_pistol"
|
|
#define kwPistol weapon_pistol
|
|
#define kwsShotGun "weapon_shotgun"
|
|
#define kwShotGun weapon_shotgun
|
|
#define kwsHeavyMachineGun "weapon_heavymachinegun"
|
|
#define kwHeavyMachineGun weapon_heavymachinegun
|
|
#define kwsGrenadeGun "weapon_grenadegun"
|
|
#define kwGrenadeGun weapon_grenadegun
|
|
#define kwsNukeGun "weapon_nukegun"
|
|
#define kwNukeGun weapon_nukegun
|
|
#define kwsFlameGun "weapon_flamegun"
|
|
#define kwFlameGun weapon_flamegun
|
|
|
|
// Weapon that dispenses mines
|
|
#define kwsMine "weapon_mine"
|
|
#define kwMine weapon_mine
|
|
|
|
// Deployed mines
|
|
#define kwDeployedMine item_mine
|
|
#define kwsDeployedMine "item_mine"
|
|
|
|
#define kwsDeployedTurret "turret"
|
|
#define kwDeployedTurret turret
|
|
|
|
#define kwsHealth "item_health"
|
|
#define kwHealth item_health
|
|
|
|
#define kwsCatalyst "item_catalyst"
|
|
#define kwCatalyst item_catalyst
|
|
|
|
#define kwsGenericAmmo "item_genericammo"
|
|
#define kwGenericAmmo item_genericammo
|
|
|
|
#define kwsHeavyArmor "item_heavyarmor"
|
|
#define kwHeavyArmor item_heavyarmor
|
|
|
|
#define kwsJetpack "item_jetpack"
|
|
#define kwJetpack item_jetpack
|
|
|
|
#define kwsAmmoPack "item_ammopack"
|
|
#define kwAmmoPack item_ammopack
|
|
|
|
// Alien weapons
|
|
#define kwsParalysisGun "weapon_paralysis"
|
|
#define kwParalysisGun weapon_paralysis
|
|
|
|
#define kwsSpitGun "weapon_spit"
|
|
#define kwSpitGun weapon_spit
|
|
|
|
#define kwClaws weapon_claws
|
|
#define kwsClaws "weapon_claws"
|
|
|
|
#define kwSwipe weapon_swipe
|
|
#define kwsSwipe "weapon_swipe"
|
|
|
|
#define kwSporeGun weapon_spore
|
|
#define kwsSporeGun "weapon_spore"
|
|
|
|
// Alien projectiles
|
|
#define kwsSpitProjectile "spitgunprojectile"
|
|
#define kwSpitProjectile spitgunprojectile
|
|
|
|
#define kwSporeProjectile sporegunprojectile
|
|
#define kwsSporeProjectile "sporegunprojectile"
|
|
|
|
#define kwSpikeGun weapon_spikegun
|
|
#define kwsSpikeGun "weapon_spikegun"
|
|
|
|
#define kwBiteGun weapon_bitegun
|
|
#define kwsBiteGun "weapon_bitegun"
|
|
|
|
#define kwBite2Gun weapon_bite2gun
|
|
#define kwsBite2Gun "weapon_bite2gun"
|
|
|
|
#define kwResourceTowerGun weapon_resourcetowergun
|
|
#define kwsResourceTowerGun "weapon_resourcetowergun"
|
|
|
|
#define kwOffenseChamberGun weapon_offensechambergun
|
|
#define kwsOffenseChamberGun "weapon_offensechambergun"
|
|
|
|
#define kwDefenseChamberGun weapon_defensechambergun
|
|
#define kwsDefenseChamberGun "weapon_defensechambergun"
|
|
|
|
#define kwSensoryChamberGun weapon_sensorychambergun
|
|
#define kwsSensoryChamberGun "weapon_sensorychambergun"
|
|
|
|
#define kwMovementChamberGun weapon_movementchambergun
|
|
#define kwsMovementChamberGun "weapon_movementchambergun"
|
|
|
|
#define kwHiveGun weapon_hivegun
|
|
#define kwsHiveGun "weapon_hivegun"
|
|
|
|
#define kwHealingSpray weapon_healingspray
|
|
#define kwsHealingSpray "weapon_healingspray"
|
|
|
|
#define kwMetabolize weapon_metabolize
|
|
#define kwsMetabolize "weapon_metabolize"
|
|
|
|
#define kwWebSpinner weapon_webspinner
|
|
#define kwsWebSpinner "weapon_webspinner"
|
|
|
|
#define kwsWebProjectile "webgunprojectile"
|
|
#define kwWebProjectile webgunprojectile
|
|
|
|
#define kwBabblerGun weapon_babblergun
|
|
#define kwsBabblerGun "weapon_babblergun"
|
|
|
|
#define kwBabblerProjectile weapon_babblerprojectile
|
|
#define kwsBabblerProjectile "weapon_babblerprojectile"
|
|
|
|
#define kwPrimalScream weapon_primalscream
|
|
#define kwsPrimalScream "weapon_primalscream"
|
|
|
|
#define kwLeap weapon_leap
|
|
#define kwsLeap "weapon_leap"
|
|
|
|
#define kwAmplify weapon_amplify
|
|
#define kwsAmplify "weapon_amplify"
|
|
|
|
#define kwStomp weapon_stomp
|
|
#define kwsStomp "weapon_stomp"
|
|
|
|
#define kwStompProjectile stompprojectile
|
|
#define kwsStompProjectile "stompprojectile"
|
|
|
|
#define kwDevour weapon_devour
|
|
#define kwsDevour "weapon_devour"
|
|
|
|
#define kwCharge weapon_charge
|
|
#define kwsCharge "weapon_charge"
|
|
|
|
#define kwsParasiteGun "weapon_parasite"
|
|
#define kwParasiteGun weapon_parasite
|
|
|
|
#define kwsUmbraCloud "umbracloud"
|
|
#define kwUmbraCloud umbracloud
|
|
#define kwsUmbraProjectile "umbraprojectile"
|
|
#define kwUmbraProjectile umbraprojectile
|
|
|
|
#define kwsUmbraGun "weapon_umbra"
|
|
#define kwUmbraGun weapon_umbra
|
|
|
|
#define kwsBlinkGun "weapon_blink"
|
|
#define kwBlinkGun weapon_blink
|
|
|
|
#define kwsDivineWind "weapon_divinewind"
|
|
#define kwDivineWind weapon_divinewind
|
|
|
|
#define kwBileBomb weapon_bilebomb
|
|
#define kwsBileBomb "weapon_bilebomb"
|
|
|
|
#define kwBileBombGun weapon_bilebombgun
|
|
#define kwsBileBombGun "weapon_bilebombgun"
|
|
|
|
#define kwAcidRocket weapon_acidrocket
|
|
#define kwsAcidRocket "weapon_acidrocket"
|
|
|
|
#define kwAcidRocketGun weapon_acidrocketgun
|
|
#define kwsAcidRocketGun "weapon_acidrocketgun"
|
|
|
|
// Debug item
|
|
#define kwsDebugEntity "item_genericammo"
|
|
|
|
// Filenames
|
|
#define kMOTDName "motd.txt"
|
|
|
|
// Tech node prefix (skill.cfg)
|
|
#define kTechCostPrefix "avh_techcost_"
|
|
#define kTechHealthPrefix "avh_techhealth_"
|
|
#define kTechTimePrefix "avh_techtime_"
|
|
|
|
// Player models
|
|
#define kNullModel "models/null.mdl"
|
|
#define kReadyRoomModel "models/player.mdl"
|
|
#define kMarineSoldierModel "models/player/soldier/soldier.mdl"
|
|
#define kHeavySoldierModel "models/player/heavy/heavy.mdl"
|
|
#define kMarineCommanderModel "models/player/commander/commander.mdl"
|
|
#define kAlienLevelOneModel "models/player/alien1/alien1.mdl"
|
|
#define kAlienLevelTwoModel "models/player/alien2/alien2.mdl"
|
|
#define kAlienLevelThreeModel "models/player/alien3/alien3.mdl"
|
|
#define kAlienLevelFourModel "models/player/alien4/alien4.mdl"
|
|
#define kAlienLevelFiveModel "models/player/alien5/alien5.mdl"
|
|
#define kAlienGestateModel "models/player/gestate/gestate.mdl"
|
|
|
|
//#define kAlienAbilitiesGrantedSound "misc/a-abilities_granted.wav"
|
|
//#define kAlienAbilitiesLostSound "misc/a-abilities_lost.wav"
|
|
#define kAlienBuildingSound1 "misc/a-build1.wav"
|
|
#define kAlienBuildingSound2 "misc/a-build2.wav"
|
|
#define kDistressBeaconSound "misc/distressbeacon.wav"
|
|
|
|
#define kBuildableRecycleSound "misc/b_recycle.wav"
|
|
#define kBuildableHurt1Sound "misc/b_hurt1.wav"
|
|
#define kBuildableHurt2Sound "misc/b_hurt2.wav"
|
|
#define kElectricalSprite "sprites/lgtning.spr"
|
|
|
|
// Model names for key
|
|
#define kSoldierName "soldier"
|
|
#define kHeavyName "heavy"
|
|
#define kCommanderName "commander"
|
|
#define kAlien1Name "alien1"
|
|
#define kAlien2Name "alien2"
|
|
#define kAlien3Name "alien3"
|
|
#define kAlien4Name "alien4"
|
|
#define kAlien5Name "alien5"
|
|
#define kAlienGestationName "gestate"
|
|
|
|
// Sound lists
|
|
#define kPlayerLevelAttackSoundList "player/role%d_attack"
|
|
#define kPlayerLevelDieSoundList "player/role%d_die"
|
|
#define kPlayerLevelIdleSoundList "player/role%d_idle"
|
|
#define kPlayerLevelMoveSoundList "player/role%d_move"
|
|
#define kPlayerLevelPainSoundList "player/role%d_pain"
|
|
#define kPlayerLevelSpawnSoundList "player/role%d_spawn"
|
|
#define kPlayerLevelWoundSoundList "player/role%d_wound"
|
|
#define kHiveWoundSoundList "misc/hive_wound"
|
|
|
|
#define kFallPainSoundFormat "player/pl_fallpain3-%d.wav"
|
|
|
|
|
|
#define kDigestingSound "player/digesting.wav"
|
|
|
|
// Not quite a sound list
|
|
//#define kHiveWoundSoundPrefix "misc/hive_wound"
|
|
|
|
#define kPieSelectForwardSound "hud/select_node_forward.wav"
|
|
#define kPieSelectBackwardSound "hud/select_node_backward.wav"
|
|
#define kPieSelectForwardAlienSound "hud/select_node_forward-a.wav"
|
|
#define kPieSelectBackwardAlienSound "hud/select_node_backward-a.wav"
|
|
#define kSelectSound "hud/select.wav"
|
|
#define kSelectAlienSound "hud/select-a.wav"
|
|
#define kSquad1Sound "hud/squad1.wav"
|
|
#define kSquad2Sound "hud/squad2.wav"
|
|
#define kSquad3Sound "hud/squad3.wav"
|
|
#define kSquad4Sound "hud/squad4.wav"
|
|
#define kSquad5Sound "hud/squad5.wav"
|
|
|
|
#define kMarineSquad1Sound "hud/m-squad1.wav"
|
|
#define kMarineSquad2Sound "hud/m-squad2.wav"
|
|
#define kMarineSquad3Sound "hud/m-squad3.wav"
|
|
#define kMarineSquad4Sound "hud/m-squad4.wav"
|
|
#define kMarineSquad5Sound "hud/m-squad5.wav"
|
|
|
|
#define kPlaceBuildingSound "hud/place_building.wav"
|
|
#define kCountdownSound "hud/countdown.wav"
|
|
#define kPointsSpentSound "hud/points_spent.wav"
|
|
#define kAlienPointsReceivedSound "hud/alien_points_received.wav"
|
|
#define kMarinePointsReceivedSound "hud/marine_points_received.wav"
|
|
|
|
#define kMarineResearchComplete "hud/marine_research_complete.wav"
|
|
#define kMarineSoldierUnderAttack "hud/marine_soldierunderattack.wav"
|
|
#define kMarineCCOnline1 "hud/marine_cconline1.wav"
|
|
#define kMarineCCOnline2 "hud/marine_cconline2.wav"
|
|
#define kMarineCCUnderAttack1 "hud/marine_ccunderattack1.wav"
|
|
#define kMarineCCUnderAttack2 "hud/marine_ccunderattack2.wav"
|
|
#define kMarineCommanderEjected "hud/marine_commander_ejected.wav"
|
|
#define kMarineBaseUnderAttack1 "hud/marine_baseattack1.wav"
|
|
#define kMarineBaseUnderAttack2 "hud/marine_baseattack2.wav"
|
|
#define kMarineMoreResources "hud/marine_more.wav"
|
|
#define kMarineLowResources "hud/marine_lowresources.wav"
|
|
#define kMarineNeedsAmmo1 "hud/marine_needsammo1.wav"
|
|
#define kMarineNeedsAmmo2 "hud/marine_needsammo2.wav"
|
|
#define kMarineNeedsHealth1 "hud/marine_needshealth1.wav"
|
|
#define kMarineNeedsHealth2 "hud/marine_needshealth2.wav"
|
|
#define kMarineNeedsOrder1 "hud/marine_needsorder1.wav"
|
|
#define kMarineNeedsOrder2 "hud/marine_needsorder2.wav"
|
|
#define kMarineSoldierLost1 "hud/marine_soldierlost1.wav"
|
|
#define kMarineSoldierLost2 "hud/marine_soldierlost2.wav"
|
|
#define kMarineSentryFiring1 "hud/marine_sentryfiring1.wav"
|
|
#define kMarineSentryFiring2 "hud/marine_sentryfiring2.wav"
|
|
#define kMarineSentryTakingDamage1 "hud/marine_sentrytakingdamage1.wav"
|
|
#define kMarineSentryTakingDamage2 "hud/marine_sentrytakingdamage2.wav"
|
|
#define kMarineUpgradeComplete "hud/marine_upgradecomplete.wav"
|
|
#define kMarineGiveOrders "hud/marine_giveorders.wav"
|
|
#define kMarineNeedPortal1 "hud/marine_needportal1.wav"
|
|
#define kMarineNeedPortal2 "hud/marine_needportal2.wav"
|
|
#define kMarineGotoAlert "hud/marine_gotoalert.wav"
|
|
#define kMarineCommanderIdle1 "hud/marine_commanderidle1.wav"
|
|
#define kMarineCommanderIdle2 "hud/marine_commanderidle2.wav"
|
|
#define kMarineArmoryUpgrading "hud/marine_armoryupgrading.wav"
|
|
|
|
#define kAlienEnemyApproaches1 "hud/alien_enemyapproaches1.wav"
|
|
#define kAlienEnemyApproaches2 "hud/alien_enemyapproaches2.wav"
|
|
#define kAlienGameOverMan "hud/alien_gameoverman.wav"
|
|
#define kAlienHiveAttack "hud/alien_hiveattack.wav"
|
|
#define kAlienHiveComplete1 "hud/alien_hivecomplete1.wav"
|
|
#define kAlienHiveComplete2 "hud/alien_hivecomplete2.wav"
|
|
#define kAlienHiveDying1 "hud/alien_hivedying1.wav"
|
|
#define kAlienHiveDying2 "hud/alien_hivedying2.wav"
|
|
#define kAlienLifeformAttack1 "hud/alien_lifeformattack1.wav"
|
|
#define kAlienLifeformAttack2 "hud/alien_lifeformattack2.wav"
|
|
#define kAlienLowResources "hud/alien_lowresources.wav"
|
|
#define kAlienMess "hud/alien_mess.wav"
|
|
#define kAlienMoreResources1 "hud/alien_more1.wav"
|
|
#define kAlienMoreResources2 "hud/alien_more2.wav"
|
|
#define kAlienNeedBetter "hud/alien_needbetter.wav"
|
|
#define kAlienNeedBuilders1 "hud/alien_needbuilders1.wav"
|
|
#define kAlienNeedBuilders2 "hud/alien_needbuilders2.wav"
|
|
#define kAlienNewTrait1 "hud/alien_newtrait1.wav"
|
|
#define kAlienNewTrait2 "hud/alien_newtrait2.wav"
|
|
#define kAlienNowDonce "hud/alien_now.wav"
|
|
#define kAlienResourceAttack1 "hud/alien_resourceattack1.wav"
|
|
#define kAlienResourceAttack2 "hud/alien_resourceattack2.wav"
|
|
#define kAlienSeeDead "hud/alien_seedead.wav"
|
|
#define kAlienStructureAttack1 "hud/alien_structureattack1.wav"
|
|
#define kAlienStructureAttack2 "hud/alien_structureattack2.wav"
|
|
#define kAlienUpgradeLost "hud/alien_upgrade_lost.wav"
|
|
|
|
#define kSoundOrderMove1 "hud/marine_order_move1.wav"
|
|
#define kSoundOrderMove2 "hud/marine_order_move2.wav"
|
|
#define kSoundOrderMove3 "hud/marine_order_move3.wav"
|
|
#define kSoundOrderMove4 "hud/marine_order_move4.wav"
|
|
#define kSoundOrderAttack "hud/marine_order_attack.wav"
|
|
#define kSoundOrderBuild "hud/marine_order_build.wav"
|
|
#define kSoundOrderWeld "hud/marine_order_weld.wav"
|
|
#define kSoundOrderGuard "hud/marine_order_guard.wav"
|
|
#define kSoundOrderGet "hud/marine_order_get.wav"
|
|
#define kSoundOrderComplete1 "hud/marine_order_complete1.wav"
|
|
#define kSoundOrderComplete2 "hud/marine_order_complete2.wav"
|
|
#define kSoundOrderComplete3 "hud/marine_order_complete3.wav"
|
|
#define kSoundOrderComplete4 "hud/marine_order_complete4.wav"
|
|
#define kSoundOrderComplete5 "hud/marine_order_complete5.wav"
|
|
#define kSoundOrderComplete6 "hud/marine_order_complete6.wav"
|
|
|
|
#define kAlienGameStart1 "hud/alien_gamestart1.wav"
|
|
#define kAlienGameStart2 "hud/alien_gamestart2.wav"
|
|
#define kMarineGameStart1 "hud/marine_gamestart1.wav"
|
|
#define kMarineGameStart2 "hud/marine_gamestart2.wav"
|
|
#define kYouWinSound "hud/you_win.wav"
|
|
#define kYouLoseSound "hud/you_lose.wav"
|
|
#define kTooltipSound "hud/tooltip.wav"
|
|
#define kMyHiveEasterEgg "hud/alien_myhive.wav"
|
|
|
|
// Tech category names
|
|
#define kWeaponTechCategory "WeaponCategory"
|
|
#define kArmorTechCategory "ArmorCategory"
|
|
#define kBuildTechCategory "BuildCategory"
|
|
#define kRadioTechCategory "RadioCategory"
|
|
|
|
// Tech button components are the category plus this suffix
|
|
//#define kMessageButtonsSuffix "Buttons"
|
|
#define kTechNodeLabelPrefix "TechNodeLabel_"
|
|
#define kTechNodeHelpPrefix "TechNodeHelp_"
|
|
#define kPrerequisitePrefix "Prerequisite"
|
|
#define kUser3Name "User3Name_"
|
|
#define kUser3Description "User3Desc_"
|
|
#define kUser3FriendlyDescription "User3FriendlyDesc_"
|
|
#define kUser3CommanderDescription "User3CommanderDesc_"
|
|
#define kBlipStatusPrefix "BlipStatus_"
|
|
#define kMessageButtonCost "Cost"
|
|
#define kNotFullyBuilt "NotFullyBuilt"
|
|
#define kPointsSuffix "Points"
|
|
|
|
const float kSquadHierarchyScaleFactor = .0001f;
|
|
const float kCommanderHierarchyScaleFactor = .0002f;
|
|
|
|
// Sayings
|
|
#define kSoldierSayingList "vox/ssay%d"
|
|
#define kCommanderSayingList "vox/csay%d"
|
|
#define kAlienSayingList "vox/asay%d"
|
|
|
|
#define kSoldierOrderRequestList "vox/sreq"
|
|
#define kSoldierOrderAckList "vox/sack"
|
|
|
|
// Other sounds
|
|
#define kJetpackSound "misc/jetpack.wav"
|
|
//#define kAdrenalineSound "misc/adren.wav"
|
|
#define kGestationSound "misc/gestate.wav"
|
|
#define kConnectSound "misc/connect.wav"
|
|
//#define kDisconnectSound "misc/disconnect.wav"
|
|
#define kEmptySound "weapons/357_cock1.wav"
|
|
#define kInvalidSound "misc/invalid.wav"
|
|
#define kLevelUpMarineSound "misc/levelup.wav"
|
|
#define kLevelUpAlienSound "misc/a-levelup.wav"
|
|
// joev: bug 0000767
|
|
#define kPlayerJoinedSound "player/jointeam.wav"
|
|
// :joev
|
|
|
|
// Events
|
|
#define kJetpackEvent "events/Jetpack.sc"
|
|
#define kStartOverwatchEvent "events/StartOverwatch.sc"
|
|
#define kEndOverwatchEvent "events/EndOverwatch.sc"
|
|
|
|
#define kStopVoiceSoundEvent "events/StopVoice.sc"
|
|
|
|
#define kRegenerationEvent "events/Regeneration.sc"
|
|
#define kStartCloakEvent "events/StartCloak.sc"
|
|
#define kEndCloakEvent "events/EndCloak.sc"
|
|
|
|
#define kWallJumpEvent "events/WallJump.sc"
|
|
#define kFlightEvent "events/Flight.sc"
|
|
#define kTeleportEvent "events/Teleport.sc"
|
|
#define kSiegeHitEvent "events/SiegeHit.sc"
|
|
#define kSiegeViewHitEvent "events/SiegeViewHit.sc"
|
|
#define kPhaseInEvent "events/PhaseIn.sc"
|
|
#define kCommanderPointsAwardedEvent "events/CommandPoints.sc"
|
|
#define kEmptySoundEvent "events/Empty.sc"
|
|
#define kNumericalInfoEvent "events/NumericalInfo.sc"
|
|
#define kAlienSightOnEvent "events/AlienSightOn.sc"
|
|
#define kAlienSightOffEvent "events/AlienSightOff.sc"
|
|
#define kInvalidActionEvent "events/InvalidAction.sc"
|
|
#define kParticleEvent "events/Particle.sc"
|
|
#define kDistressBeaconEvent "events/DistressBeacon.sc"
|
|
#define kWeaponAnimationEvent "events/WeaponAnimation.sc"
|
|
#define kLevelUpEvent "events/LevelUp.sc"
|
|
#define kAbilityEventName "events/Ability.sc"
|
|
|
|
// Targets
|
|
#define kTargetCommandStationUseTeamOne "commandstationuse1"
|
|
#define kTargetCommandStationUseTeamTwo "commandstationuse2"
|
|
|
|
#define kTargetCommandStationLogoutTeamOne "commandstationlogout1"
|
|
#define kTargetCommandStationLogoutTeamTwo "commandstationlogout2"
|
|
|
|
#define kTargetCommandStationDestroyedTeamOne "commandstationdestroyed1"
|
|
#define kTargetCommandStationDestroyedTeamTwo "commandstationdestroyed2"
|
|
|
|
#define kReadyNotification "ready"
|
|
#define kNotReadyNotification "notready"
|
|
|
|
const int kOverwatchBreakingVelocity = 5;
|
|
const float kOverwatchAcquireTime = 6.0f;
|
|
const float kOverwatchLostTargetTime = 4.0f;
|
|
const float kOverwatchKeepFiringAfterMissingTargetTime = 1.0f;
|
|
const float kSpeakingTime = 4.0f;
|
|
const float kEnemySightedTime = 2.0f;
|
|
|
|
const int kDefaultViewHeight = 0;
|
|
const float kDefaultMinMapExtent = -4000;
|
|
const float kDefaultMaxMapExtent = 4000;
|
|
|
|
// Energy constants for marine structures
|
|
const float kMarineStructureEnergyRate = .33f;
|
|
const float kMarineStructureMaxEnergy = 100;
|
|
|
|
const int kShellRenderAmount = 50;
|
|
const int kInvulShellRenderAmount = 15;
|
|
|
|
// This is one less then 4096 because we need top bit for sign.
|
|
// Only allow map dimensions of this size or lower
|
|
const float kMaxMapDimension = 4095;
|
|
|
|
const float kDefaultMapGamma = 1.0f;
|
|
|
|
const float kNormalizationNetworkFactor = 1000.0f;
|
|
const float kHotKeyNetworkFactor = 100.0f;
|
|
|
|
const int kDetectionDistance = 500;
|
|
const float kMaxRelevantCullDistance = 1024;
|
|
|
|
const int kHiveXYDistanceTolerance = 400;
|
|
const float kBaseHealthPercentage = .5f;
|
|
|
|
const float kHUDSoundVolume = .3f;
|
|
|
|
#define kHotKeyPrefix "hotkey"
|
|
|
|
// How many directions can bullets travel in within spread vector?
|
|
//const int kBulletSpreadGranularity = 15;
|
|
|
|
const int iNumberOfTeamColors = 6;
|
|
extern int kTeamColors[iNumberOfTeamColors][3];
|
|
extern float kFTeamColors[iNumberOfTeamColors][3];
|
|
|
|
// Random resource constants
|
|
const int kNumSharesPerPlayer = 3;
|
|
const int kTotalShares = MAX_PLAYERS_PER_TEAM*kNumSharesPerPlayer;
|
|
|
|
const int kNumericalInfoResourcesEvent = 0;
|
|
const int kNumericalInfoHealthEvent = 1;
|
|
const int kNumericalInfoResourcesDonatedEvent = 2;
|
|
const int kNumericalInfoAmmoEvent = 3;
|
|
|
|
const int kGameStatusReset = 0;
|
|
const int kGameStatusResetNewMap = 1;
|
|
const int kGameStatusEnded = 2;
|
|
const int kGameStatusGameTime = 3;
|
|
const int kGameStatusUnspentLevels = 4;
|
|
|
|
// Max message length is 192, take into account rest of message
|
|
const int kMaxPlayerSendMessageLength = 160;
|
|
|
|
const int kTopDownYaw = 90;
|
|
const int kTopDownPitch = 0;
|
|
const int kTopDownRoll = -90;
|
|
|
|
// Extra fudge factor to make sure players don't get stuck when respawning
|
|
const int kRespawnFudgeFactorHeight = 1;
|
|
|
|
#endif
|