diff options
Diffstat (limited to 'src/game/tremulous.h')
-rw-r--r-- | src/game/tremulous.h | 572 |
1 files changed, 0 insertions, 572 deletions
diff --git a/src/game/tremulous.h b/src/game/tremulous.h deleted file mode 100644 index 93a85ba0..00000000 --- a/src/game/tremulous.h +++ /dev/null @@ -1,572 +0,0 @@ -/* - * Portions Copyright (C) 2000-2001 Tim Angus - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the OSML - Open Source Modification License v1.0 as - * described in the file COPYING which is distributed with this source - * code. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - */ - - -/* - * ALIEN weapons - * - * _REPEAT - time in msec until the weapon can be used again - * _DMG - amount of damage the weapon does - * - * ALIEN_WDMG_MODIFIER - overall damage modifier for coarse tuning - * - */ - -#define ALIEN_WDMG_MODIFIER 1.0f -#define ADM(d) ((int)((float)d*ALIEN_WDMG_MODIFIER)) - -#define ABUILDER_BUILD_REPEAT 500 -#define ABUILDER_CLAW_DMG ADM(20) -#define ABUILDER_CLAW_RANGE 64.0f -#define ABUILDER_CLAW_WIDTH 4.0f -#define ABUILDER_CLAW_REPEAT 1000 -#define ABUILDER_BASE_DELAY 17000 -#define ABUILDER_ADV_DELAY 12000 -#define ABUILDER_BLOB_DMG ADM(4) -#define ABUILDER_BLOB_REPEAT 1000 -#define ABUILDER_BLOB_SPEED 800.0f -#define ABUILDER_BLOB_SPEED_MOD 0.5f -#define ABUILDER_BLOB_TIME 5000 - -#define LEVEL0_BITE_DMG ADM(48) -#define LEVEL0_BITE_RANGE 64.0f -#define LEVEL0_BITE_WIDTH 6.0f -#define LEVEL0_BITE_REPEAT 500 - -#define LEVEL1_CLAW_DMG ADM(32) -#define LEVEL1_CLAW_RANGE 96.0f -#define LEVEL1_CLAW_WIDTH 10.0f -#define LEVEL1_CLAW_REPEAT 600 -#define LEVEL1_CLAW_U_REPEAT 500 -#define LEVEL1_GRAB_RANGE 64.0f -#define LEVEL1_GRAB_TIME 300 -#define LEVEL1_GRAB_U_TIME 450 -#define LEVEL1_PCLOUD_DMG ADM(4) -#define LEVEL1_PCLOUD_RANGE 200.0f -#define LEVEL1_PCLOUD_REPEAT 2000 -#define LEVEL1_PCLOUD_TIME 10000 - -#define LEVEL2_CLAW_DMG ADM(40) -#define LEVEL2_CLAW_RANGE 96.0f -#define LEVEL2_CLAW_WIDTH 12.0f -#define LEVEL2_CLAW_REPEAT 500 -#define LEVEL2_CLAW_U_REPEAT 400 -#define LEVEL2_AREAZAP_DMG ADM(80) -#define LEVEL2_AREAZAP_RANGE 200.0f -#define LEVEL2_AREAZAP_WIDTH 15.0f -#define LEVEL2_AREAZAP_REPEAT 2000 -#define LEVEL2_AREAZAP_TIME 1000 -#define LEVEL2_AREAZAP_MAX_TARGETS 3 -#define LEVEL2_WALLJUMP_MAXSPEED 1000.0f - -#define LEVEL3_CLAW_DMG ADM(80) -#define LEVEL3_CLAW_RANGE 96.0f -#define LEVEL3_CLAW_WIDTH 16.0f -#define LEVEL3_CLAW_REPEAT 700 -#define LEVEL3_CLAW_U_REPEAT 600 -#define LEVEL3_POUNCE_DMG ADM(100) -#define LEVEL3_POUNCE_RANGE 64.0f -#define LEVEL3_POUNCE_WIDTH 16.0f -#define LEVEL3_POUNCE_SPEED 700 -#define LEVEL3_POUNCE_UPG_SPEED 800 -#define LEVEL3_POUNCE_SPEED_MOD 0.75f -#define LEVEL3_POUNCE_CHARGE_TIME 700 -#define LEVEL3_POUNCE_TIME 400 -#define LEVEL3_BOUNCEBALL_DMG ADM(110) -#define LEVEL3_BOUNCEBALL_REPEAT 1000 -#define LEVEL3_BOUNCEBALL_SPEED 1000.0f - -#define LEVEL4_CLAW_DMG ADM(100) -#define LEVEL4_CLAW_RANGE 128.0f -#define LEVEL4_CLAW_WIDTH 20.0f -#define LEVEL4_CLAW_REPEAT 750 -#define LEVEL4_REGEN_RANGE 200.0f -#define LEVEL4_REGEN_MOD 2.0f -#define LEVEL4_CHARGE_SPEED 2.0f -#define LEVEL4_CHARGE_TIME 3000 -#define LEVEL4_CHARGE_CHARGE_TIME 1500 -#define LEVEL4_MIN_CHARGE_TIME 750 -#define LEVEL4_CHARGE_CHARGE_RATIO (LEVEL4_CHARGE_TIME/LEVEL4_CHARGE_CHARGE_TIME) -#define LEVEL4_CHARGE_REPEAT 1000 -#define LEVEL4_CHARGE_DMG ADM(110) - - - -/* - * ALIEN classes - * - * _SPEED - fraction of Q3A run speed the class can move - * _REGEN - health per second regained - * - * ALIEN_HLTH_MODIFIER - overall health modifier for coarse tuning - * - */ - -#define ALIEN_HLTH_MODIFIER 1.0f -#define AHM(h) ((int)((float)h*ALIEN_HLTH_MODIFIER)) - -#define ALIEN_VALUE_MODIFIER 1.0f -#define AVM(h) ((int)((float)h*ALIEN_VALUE_MODIFIER)) - -#define ABUILDER_SPEED 0.8f -#define ABUILDER_VALUE AVM(200) -#define ABUILDER_HEALTH AHM(50) -#define ABUILDER_REGEN 2 -#define ABUILDER_COST 0 - -#define ABUILDER_UPG_SPEED 1.0f -#define ABUILDER_UPG_VALUE AVM(250) -#define ABUILDER_UPG_HEALTH AHM(75) -#define ABUILDER_UPG_REGEN 3 -#define ABUILDER_UPG_COST 0 - -#define LEVEL0_SPEED 1.3f -#define LEVEL0_VALUE AVM(175) -#define LEVEL0_HEALTH AHM(25) -#define LEVEL0_REGEN 1 -#define LEVEL0_COST 0 - -#define LEVEL1_SPEED 1.25f -#define LEVEL1_VALUE AVM(225) -#define LEVEL1_HEALTH AHM(75) -#define LEVEL1_REGEN 2 -#define LEVEL1_COST 1 - -#define LEVEL1_UPG_SPEED 1.25f -#define LEVEL1_UPG_VALUE AVM(275) -#define LEVEL1_UPG_HEALTH AHM(100) -#define LEVEL1_UPG_REGEN 3 -#define LEVEL1_UPG_COST 1 - -#define LEVEL2_SPEED 1.2f -#define LEVEL2_VALUE AVM(350) -#define LEVEL2_HEALTH AHM(150) -#define LEVEL2_REGEN 4 -#define LEVEL2_COST 1 - -#define LEVEL2_UPG_SPEED 1.2f -#define LEVEL2_UPG_VALUE AVM(450) -#define LEVEL2_UPG_HEALTH AHM(175) -#define LEVEL2_UPG_REGEN 5 -#define LEVEL2_UPG_COST 1 - -#define LEVEL3_SPEED 1.1f -#define LEVEL3_VALUE AVM(500) -#define LEVEL3_HEALTH AHM(200) -#define LEVEL3_REGEN 6 -#define LEVEL3_COST 1 - -#define LEVEL3_UPG_SPEED 1.1f -#define LEVEL3_UPG_VALUE AVM(600) -#define LEVEL3_UPG_HEALTH AHM(250) -#define LEVEL3_UPG_REGEN 7 -#define LEVEL3_UPG_COST 1 - -#define LEVEL4_SPEED 1.2f -#define LEVEL4_VALUE AVM(800) -#define LEVEL4_HEALTH AHM(400) -#define LEVEL4_REGEN 7 -#define LEVEL4_COST 2 - - - -/* - * ALIEN buildables - * - * _BP - build points required for this buildable - * _BT - build time required for this buildable - * _REGEN - the amount of health per second regained - * _SPLASHDAMGE - the amount of damage caused by this buildable when melting - * _SPLASHRADIUS - the radius around which it does this damage - * - * CREEP_BASESIZE - the maximum distance a buildable can be from an egg/overmind - * ALIEN_BHLTH_MODIFIER - overall health modifier for coarse tuning - * - */ - -#define ALIEN_BHLTH_MODIFIER 1.0f -#define ABHM(h) ((int)((float)h*ALIEN_BHLTH_MODIFIER)) - -#define CREEP_BASESIZE 700 -#define CREEP_TIMEOUT 1000 -#define CREEP_MODIFIER 0.5f -#define CREEP_ARMOUR_MODIFIER 0.75f -#define CREEP_SCALEDOWN_TIME 3000 - -#define ASPAWN_BP 10 -#define ASPAWN_BT 15000 -#define ASPAWN_HEALTH ABHM(250) -#define ASPAWN_REGEN 8 -#define ASPAWN_SPLASHDAMAGE 50 -#define ASPAWN_SPLASHRADIUS 50 -#define ASPAWN_CREEPSIZE 120 -#define ASPAWN_VALUE 150 - -#define BARRICADE_BP 10 -#define BARRICADE_BT 20000 -#define BARRICADE_HEALTH ABHM(200) -#define BARRICADE_REGEN 14 -#define BARRICADE_SPLASHDAMAGE 50 -#define BARRICADE_SPLASHRADIUS 50 -#define BARRICADE_CREEPSIZE 120 - -#define BOOSTER_BP 12 -#define BOOSTER_BT 15000 -#define BOOSTER_HEALTH ABHM(150) -#define BOOSTER_REGEN 8 -#define BOOSTER_SPLASHDAMAGE 50 -#define BOOSTER_SPLASHRADIUS 50 -#define BOOSTER_CREEPSIZE 120 -#define BOOSTER_INTERVAL 30000 //time in msec between uses (per player) -#define BOOSTER_REGEN_MOD 2.0f - -#define ACIDTUBE_BP 8 -#define ACIDTUBE_BT 15000 -#define ACIDTUBE_HEALTH ABHM(125) -#define ACIDTUBE_REGEN 10 -#define ACIDTUBE_SPLASHDAMAGE 6 -#define ACIDTUBE_SPLASHRADIUS 300 -#define ACIDTUBE_CREEPSIZE 120 -#define ACIDTUBE_RANGE 300.0f -#define ACIDTUBE_REPEAT 3000 - -#define HIVE_BP 12 -#define HIVE_BT 20000 -#define HIVE_HEALTH ABHM(125) -#define HIVE_REGEN 10 -#define HIVE_SPLASHDAMAGE 30 -#define HIVE_SPLASHRADIUS 200 -#define HIVE_CREEPSIZE 120 -#define HIVE_RANGE 400.0f -#define HIVE_REPEAT 5000 -#define HIVE_DMG 50 -#define HIVE_SPEED 240.0f -#define HIVE_DIR_CHANGE_PERIOD 500 - -#define TRAPPER_BP 8 -#define TRAPPER_BT 12000 -#define TRAPPER_HEALTH ABHM(50) -#define TRAPPER_REGEN 6 -#define TRAPPER_SPLASHDAMAGE 15 -#define TRAPPER_SPLASHRADIUS 100 -#define TRAPPER_CREEPSIZE 30 -#define TRAPPER_RANGE 400 -#define TRAPPER_REPEAT 1000 -#define LOCKBLOB_SPEED 650.0f -#define LOCKBLOB_DOT 0.85f // max angle = acos( LOCKBLOB_DOT ) - -#define OVERMIND_BP 0 -#define OVERMIND_BT 30000 -#define OVERMIND_HEALTH ABHM(750) -#define OVERMIND_REGEN 6 -#define OVERMIND_SPLASHDAMAGE 15 -#define OVERMIND_SPLASHRADIUS 300 -#define OVERMIND_CREEPSIZE 120 -#define OVERMIND_ATTACK_RANGE 150.0f -#define OVERMIND_ATTACK_REPEAT 1000 -#define OVERMIND_VALUE 300 - -#define HOVEL_BP 0 -#define HOVEL_BT 15000 -#define HOVEL_HEALTH ABHM(375) -#define HOVEL_REGEN 20 -#define HOVEL_SPLASHDAMAGE 20 -#define HOVEL_SPLASHRADIUS 200 -#define HOVEL_CREEPSIZE 120 - - - -/* - * ALIEN misc - * - * ALIENSENSE_RANGE - the distance alien sense is useful for - * - */ - -#define ALIENSENSE_RANGE 1000.0f - -#define ALIEN_POISON_TIME 10000 -#define ALIEN_POISON_DMG 30 -#define ALIEN_POISON_DIVIDER (1.0f/1.32f) //about 1.0/(time`th root of damage) - -#define ALIEN_SPAWN_REPEAT_TIME 10000 - -#define ALIEN_REGEN_DAMAGE_TIME 2000 //msec since damage that regen starts again - -/* - * HUMAN weapons - * - * _REPEAT - time between firings - * _RELOAD - time needed to reload - * _PRICE - amount in credits weapon costs - * - * HUMAN_WDMG_MODIFIER - overall damage modifier for coarse tuning - * - */ - -#define HUMAN_WDMG_MODIFIER 1.0f -#define HDM(d) ((int)((float)d*HUMAN_WDMG_MODIFIER)) - -#define BLASTER_REPEAT 600 -#define BLASTER_SPREAD 200 -#define BLASTER_SPEED 1400 -#define BLASTER_DMG HDM(9) - -#define RIFLE_CLIPSIZE 30 -#define RIFLE_MAXCLIPS 6 -#define RIFLE_REPEAT 90 -#define RIFLE_RELOAD 2000 -#define RIFLE_PRICE 0 -#define RIFLE_SPREAD 200 -#define RIFLE_DMG HDM(5) - -#define PAINSAW_PRICE 100 -#define PAINSAW_REPEAT 75 -#define PAINSAW_DAMAGE HDM(15) -#define PAINSAW_RANGE 40.0f - -#define GRENADE_PRICE 200 -#define GRENADE_REPEAT 0 -#define GRENADE_DAMAGE HDM(310) -#define GRENADE_RANGE 192.0f -#define GRENADE_SPEED 400.0f - -#define SHOTGUN_PRICE 150 -#define SHOTGUN_SHELLS 8 -#define SHOTGUN_PELLETS 8 //used to sync server and client side -#define SHOTGUN_MAXCLIPS 3 -#define SHOTGUN_REPEAT 1000 -#define SHOTGUN_RELOAD 2000 -#define SHOTGUN_SPREAD 900 -#define SHOTGUN_DMG HDM(7) - -#define LASGUN_PRICE 250 -#define LASGUN_AMMO 200 -#define LASGUN_REPEAT 200 -#define LASGUN_RELOAD 2000 -#define LASGUN_DAMAGE HDM(9) - -#define MDRIVER_PRICE 350 -#define MDRIVER_CLIPSIZE 5 -#define MDRIVER_MAXCLIPS 4 -#define MDRIVER_DMG HDM(38) -#define MDRIVER_REPEAT 1000 -#define MDRIVER_RELOAD 2000 - -#define CHAINGUN_PRICE 400 -#define CHAINGUN_BULLETS 300 -#define CHAINGUN_REPEAT 80 -#define CHAINGUN_SPREAD 1000 -#define CHAINGUN_DMG HDM(6) - -#define PRIFLE_PRICE 400 -#define PRIFLE_CLIPS 50 -#define PRIFLE_MAXCLIPS 4 -#define PRIFLE_REPEAT 100 -#define PRIFLE_RELOAD 2000 -#define PRIFLE_DMG HDM(9) -#define PRIFLE_SPEED 1000 - -#define FLAMER_PRICE 450 -#define FLAMER_GAS 150 -#define FLAMER_REPEAT 200 -#define FLAMER_DMG HDM(31) -#define FLAMER_RADIUS 50 -#define FLAMER_LIFETIME 800.0f -#define FLAMER_SPEED 200.0f -#define FLAMER_LAG 0.65f //the amount of player velocity that is added to the fireball - -#define LCANNON_PRICE 600 -#define LCANNON_AMMO 90 -#define LCANNON_REPEAT 500 -#define LCANNON_CHARGEREPEAT 1000 -#define LCANNON_RELOAD 2000 -#define LCANNON_DAMAGE HDM(265) -#define LCANNON_RADIUS 150 -#define LCANNON_SECONDARY_DAMAGE HDM(27) -#define LCANNON_SECONDARY_RADIUS 75 -#define LCANNON_SPEED 350 -#define LCANNON_CHARGE_TIME 2000 -#define LCANNON_TOTAL_CHARGE 255 - -#define HBUILD_PRICE 0 -#define HBUILD_REPEAT 1000 -#define HBUILD_DELAY 17500 -#define HBUILD_HEALRATE 18 - -#define HBUILD2_PRICE 0 -#define HBUILD2_REPEAT 1000 -#define HBUILD2_DELAY 15000 - - - -/* - * HUMAN upgrades - */ - -#define LIGHTARMOUR_PRICE 70 - -#define HELMET_PRICE 90 -#define HELMET_RANGE 1000.0f - -#define MEDKIT_PRICE 0 - -#define BATTPACK_PRICE 100 -#define BATTPACK_MODIFIER 1.5f //modifier for extra energy storage available - -#define JETPACK_PRICE 120 -#define JETPACK_FLOAT_SPEED 128.0f //up movement speed -#define JETPACK_SINK_SPEED 192.0f //down movement speed -#define JETPACK_DISABLE_TIME 1000 //time to disable the jetpack when player damaged -#define JETPACK_DISABLE_CHANCE 0.3f - -#define BSUIT_PRICE 400 - -#define MGCLIP_PRICE 0 - -#define CGAMMO_PRICE 0 - -#define GAS_PRICE 0 - -#define MEDKIT_POISON_IMMUNITY_TIME 30000 -#define MEDKIT_STARTUP_TIME 4000 -#define MEDKIT_STARTUP_SPEED 5 - - -/* - * HUMAN buildables - * - * _BP - build points required for this buildable - * _BT - build time required for this buildable - * _SPLASHDAMGE - the amount of damage caused by this buildable when it blows up - * _SPLASHRADIUS - the radius around which it does this damage - * - * REACTOR_BASESIZE - the maximum distance a buildable can be from an reactor - * REPEATER_BASESIZE - the maximum distance a buildable can be from a repeater - * HUMAN_BHLTH_MODIFIER - overall health modifier for coarse tuning - * - */ - -#define HUMAN_BHLTH_MODIFIER 1.0f -#define HBHM(h) ((int)((float)h*HUMAN_BHLTH_MODIFIER)) - -#define REACTOR_BASESIZE 1000 -#define REPEATER_BASESIZE 500 -#define HUMAN_DETONATION_DELAY 5000 - -#define HSPAWN_BP 10 -#define HSPAWN_BT 10000 -#define HSPAWN_HEALTH HBHM(310) -#define HSPAWN_SPLASHDAMAGE 50 -#define HSPAWN_SPLASHRADIUS 100 -#define HSPAWN_VALUE 1 - -#define MEDISTAT_BP 8 -#define MEDISTAT_BT 10000 -#define MEDISTAT_HEALTH HBHM(190) -#define MEDISTAT_SPLASHDAMAGE 50 -#define MEDISTAT_SPLASHRADIUS 100 - -#define MGTURRET_BP 8 -#define MGTURRET_BT 10000 -#define MGTURRET_HEALTH HBHM(190) -#define MGTURRET_SPLASHDAMAGE 100 -#define MGTURRET_SPLASHRADIUS 100 -#define MGTURRET_ANGULARSPEED 8 //degrees/think ~= 200deg/sec -#define MGTURRET_ACCURACYTOLERANCE MGTURRET_ANGULARSPEED / 1.5f //angular difference for turret to fire -#define MGTURRET_VERTICALCAP 30 // +/- maximum pitch -#define MGTURRET_REPEAT 100 -#define MGTURRET_RANGE 300.0f -#define MGTURRET_SPREAD 200 -#define MGTURRET_DMG HDM(4) -#define MGTURRET_DCC_ANGULARSPEED 10 -#define MGTURRET_DCC_ACCURACYTOLERANCE MGTURRET_DCC_ANGULARSPEED / 1.5f -#define MGTURRET_GRAB_ANGULARSPEED 3 -#define MGTURRET_GRAB_ACCURACYTOLERANCE MGTURRET_GRAB_ANGULARSPEED / 1.5f - -#define TESLAGEN_BP 10 -#define TESLAGEN_BT 15000 -#define TESLAGEN_HEALTH HBHM(220) -#define TESLAGEN_SPLASHDAMAGE 50 -#define TESLAGEN_SPLASHRADIUS 100 -#define TESLAGEN_REPEAT 250 -#define TESLAGEN_RANGE 250 -#define TESLAGEN_DMG HDM(9) - -#define DC_BP 8 -#define DC_BT 10000 -#define DC_HEALTH HBHM(190) -#define DC_SPLASHDAMAGE 50 -#define DC_SPLASHRADIUS 100 - -#define ARMOURY_BP 10 -#define ARMOURY_BT 10000 -#define ARMOURY_HEALTH HBHM(280) -#define ARMOURY_SPLASHDAMAGE 50 -#define ARMOURY_SPLASHRADIUS 100 - -#define REACTOR_BP 0 -#define REACTOR_BT 20000 -#define REACTOR_HEALTH HBHM(930) -#define REACTOR_SPLASHDAMAGE 200 -#define REACTOR_SPLASHRADIUS 300 -#define REACTOR_ATTACK_RANGE 100.0f -#define REACTOR_ATTACK_REPEAT 1000 -#define REACTOR_ATTACK_DAMAGE 40 -#define REACTOR_VALUE 2 - -#define REPEATER_BP 0 -#define REPEATER_BT 10000 -#define REPEATER_HEALTH HBHM(250) -#define REPEATER_SPLASHDAMAGE 50 -#define REPEATER_SPLASHRADIUS 100 -#define REPEATER_INACTIVE_TIME 90000 - -/* - * HUMAN misc - */ - -#define HUMAN_SPRINT_MODIFIER 1.2f -#define HUMAN_JOG_MODIFIER 1.0f -#define HUMAN_BACK_MODIFIER 0.8f -#define HUMAN_SIDE_MODIFIER 0.9f - -#define STAMINA_STOP_RESTORE 25 -#define STAMINA_WALK_RESTORE 15 -#define STAMINA_SPRINT_TAKE 8 -#define STAMINA_LARMOUR_TAKE 4 - -#define HUMAN_SPAWN_REPEAT_TIME 10000 - -/* - * Misc - */ - -#define MIN_FALL_DISTANCE 30.0f //the fall distance at which fall damage kicks in -#define MAX_FALL_DISTANCE 120.0f //the fall distance at which maximum damage is dealt -#define AVG_FALL_DISTANCE ((MIN_FALL_DISTANCE+MAX_FALL_DISTANCE)/2.0f) - -#define HUMAN_MAXED 900 //a human with a strong selection of weapons/upgrades -#define HUMAN_MAX_CREDITS 2000 -#define ALIEN_MAX_KILLS 9 -#define ALIEN_MAX_SINGLE_KILLS 3 - -#define FREEKILL_PERIOD 120000 //msec -#define FREEKILL_ALIEN 1 -#define FREEKILL_HUMAN LEVEL0_VALUE - -#define DEFAULT_ALIEN_BUILDPOINTS "100" -#define DEFAULT_HUMAN_BUILDPOINTS "100" - -#define DAMAGE_FRACTION_FOR_KILL 0.5f //how much damage players (versus structures) need to - //do to increment the stage kill counters |