Want more features on Pastebin? Sign Up, it's FREE!
Guest

tremulous.h 1hkoREBALANCE

By: a guest on Jul 17th, 2011  |  syntax: None  |  size: 26.19 KB  |  views: 27  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. /*
  2. ===========================================================================
  3. Copyright (C) 1999-2005 Id Software, Inc.
  4. Copyright (C) 2000-2009 Darklegion Development
  5.  
  6. This file is part of Tremulous.
  7.  
  8. Tremulous is free software; you can redistribute it
  9. and/or modify it under the terms of the GNU General Public License as
  10. published by the Free Software Foundation; either version 2 of the License,
  11. or (at your option) any later version.
  12.  
  13. Tremulous is distributed in the hope that it will be
  14. useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. GNU General Public License for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with Tremulous; if not, write to the Free Software
  20. Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  21. ===========================================================================
  22. */
  23.  
  24.  
  25. /*
  26.  * ALIEN weapons
  27.  *
  28.  * _REPEAT  - time in msec until the weapon can be used again
  29.  * _DMG     - amount of damage the weapon does
  30.  *
  31.  * ALIEN_WDMG_MODIFIER - overall damage modifier for coarse tuning
  32.  *
  33.  */
  34.  
  35. #define ALIEN_WDMG_MODIFIER         1.0f
  36. #define ADM(d)                      ((int)((float)d*ALIEN_WDMG_MODIFIER))
  37.  
  38. #define ABUILDER_BUILD_REPEAT       500
  39. #define ABUILDER_CLAW_DMG           ADM(20)
  40. #define ABUILDER_CLAW_RANGE         64.0f
  41. #define ABUILDER_CLAW_WIDTH         4.0f
  42. #define ABUILDER_CLAW_REPEAT        1000
  43. #define ABUILDER_CLAW_K_SCALE       1.0f
  44. #define ABUILDER_BLOB_DMG           ADM(4)
  45. #define ABUILDER_BLOB_REPEAT        1000
  46. #define ABUILDER_BLOB_SPEED         800.0f
  47. #define ABUILDER_BLOB_SPEED_MOD     0.5f
  48. #define ABUILDER_BLOB_TIME          2000
  49.  
  50. #define LEVEL0_BITE_DMG             ADM(36)
  51. #define LEVEL0_BITE_RANGE           64.0f
  52. #define LEVEL0_BITE_WIDTH           6.0f
  53. #define LEVEL0_BITE_REPEAT          500
  54. #define LEVEL0_BITE_K_SCALE         1.0f
  55.  
  56. #define LEVEL1_CLAW_DMG             ADM(32)
  57. #define LEVEL1_CLAW_RANGE           64.0f
  58. #define LEVEL1_CLAW_U_RANGE         LEVEL1_CLAW_RANGE + 3.0f
  59. #define LEVEL1_CLAW_WIDTH           10.0f
  60. #define LEVEL1_CLAW_REPEAT          600
  61. #define LEVEL1_CLAW_U_REPEAT        500
  62. #define LEVEL1_CLAW_K_SCALE         1.0f
  63. #define LEVEL1_CLAW_U_K_SCALE       1.0f
  64. #define LEVEL1_GRAB_RANGE           96.0f
  65. #define LEVEL1_GRAB_U_RANGE         LEVEL1_GRAB_RANGE + 3.0f
  66. #define LEVEL1_GRAB_TIME            300
  67. #define LEVEL1_GRAB_U_TIME          300
  68. #define LEVEL1_PCLOUD_DMG           ADM(4)
  69. #define LEVEL1_PCLOUD_RANGE         120.0f
  70. #define LEVEL1_PCLOUD_REPEAT        2000
  71. #define LEVEL1_PCLOUD_TIME          10000
  72. #define LEVEL1_REGEN_MOD            2.0f
  73. #define LEVEL1_UPG_REGEN_MOD        3.0f
  74. #define LEVEL1_REGEN_SCOREINC       AVM(100) // score added for healing per 10s
  75. #define LEVEL1_UPG_REGEN_SCOREINC   AVM(200)
  76.  
  77. #define LEVEL2_CLAW_DMG             ADM(40)
  78. #define LEVEL2_CLAW_RANGE           80.0f
  79. #define LEVEL2_CLAW_U_RANGE         LEVEL2_CLAW_RANGE + 2.0f
  80. #define LEVEL2_CLAW_WIDTH           14.0f
  81. #define LEVEL2_CLAW_REPEAT          500
  82. #define LEVEL2_CLAW_K_SCALE         1.0f
  83. #define LEVEL2_CLAW_U_REPEAT        400
  84. #define LEVEL2_CLAW_U_K_SCALE       1.0f
  85. #define LEVEL2_AREAZAP_DMG          ADM(60)
  86. #define LEVEL2_AREAZAP_RANGE        200.0f
  87. #define LEVEL2_AREAZAP_WIDTH        15.0f
  88. #define LEVEL2_AREAZAP_REPEAT       1500
  89. #define LEVEL2_AREAZAP_TIME         1000
  90. #define LEVEL2_AREAZAP_MAX_TARGETS  5
  91. #define LEVEL2_WALLJUMP_MAXSPEED    1000.0f
  92.  
  93. #define LEVEL3_CLAW_DMG             ADM(40)
  94. #define LEVEL3_CLAW_RANGE           80.0f
  95. #define LEVEL3_CLAW_UPG_RANGE       LEVEL3_CLAW_RANGE + 3.0f          
  96. #define LEVEL3_CLAW_WIDTH           15.0f
  97. #define LEVEL3_CLAW_REPEAT          450
  98. #define LEVEL3_CLAW_K_SCALE         1.0f
  99. #define LEVEL3_CLAW_U_REPEAT        400
  100. #define LEVEL3_CLAW_U_K_SCALE       1.0f
  101. #define LEVEL3_POUNCE_DMG           ADM(100)
  102. #define LEVEL3_POUNCE_RANGE         48.0f
  103. #define LEVEL3_POUNCE_UPG_RANGE     LEVEL3_POUNCE_RANGE + 3.0f
  104. #define LEVEL3_POUNCE_WIDTH         14.0f
  105. #define LEVEL3_POUNCE_TIME          800      // msec for full Dragoon pounce
  106. #define LEVEL3_POUNCE_TIME_UPG      800      // msec for full Adv. Dragoon pounce
  107. #define LEVEL3_POUNCE_TIME_MIN      200      // msec before which pounce cancels  
  108. #define LEVEL3_POUNCE_REPEAT        400      // msec before a new pounce starts
  109. #define LEVEL3_POUNCE_SPEED_MOD     0.75f    // walking speed modifier for pounce charging
  110. #define LEVEL3_POUNCE_JUMP_MAG      700      // Dragoon pounce jump power
  111. #define LEVEL3_POUNCE_JUMP_MAG_UPG  800      // Adv. Dragoon pounce jump power
  112. #define LEVEL3_BOUNCEBALL_DMG       ADM(55)
  113. #define LEVEL3_BOUNCEBALL_REPEAT    600
  114. #define LEVEL3_BOUNCEBALL_SPEED     1000.0f
  115. #define LEVEL3_BOUNCEBALL_RADIUS    75
  116. #define LEVEL3_BOUNCEBALL_REGEN     7500    // msec until new barb
  117.  
  118. #define LEVEL4_CLAW_DMG             ADM(100)
  119. #define LEVEL4_CLAW_RANGE           100.0f
  120. #define LEVEL4_CLAW_WIDTH           14.0f
  121. #define LEVEL4_CLAW_HEIGHT          20.0f
  122. #define LEVEL4_CLAW_REPEAT          800
  123. #define LEVEL4_CLAW_K_SCALE         1.0f
  124.  
  125. #define LEVEL4_TRAMPLE_DMG             ADM(111)
  126. #define LEVEL4_TRAMPLE_SPEED           2.0f
  127. #define LEVEL4_TRAMPLE_CHARGE_MIN      375   // minimum msec to start a charge
  128. #define LEVEL4_TRAMPLE_CHARGE_MAX      1000  // msec to maximum charge stored
  129. #define LEVEL4_TRAMPLE_CHARGE_TRIGGER  3000  // msec charge starts on its own
  130. #define LEVEL4_TRAMPLE_DURATION        3000  // msec trample lasts on full charge
  131. #define LEVEL4_TRAMPLE_STOP_PENALTY    1     // charge lost per msec when stopped
  132. #define LEVEL4_TRAMPLE_REPEAT          100   // msec before a trample will rehit a player
  133.  
  134. #define LEVEL4_CRUSH_DAMAGE_PER_V      0.5f  // damage per falling velocity
  135. #define LEVEL4_CRUSH_DAMAGE            120   // to players only
  136. #define LEVEL4_CRUSH_REPEAT            500   // player damage repeat
  137.  
  138. /*
  139.  * ALIEN classes
  140.  *
  141.  * _SPEED   - fraction of Q3A run speed the class can move
  142.  * _REGEN   - health per second regained
  143.  *
  144.  * ALIEN_HLTH_MODIFIER - overall health modifier for coarse tuning
  145.  *
  146.  */
  147.  
  148. #define ALIEN_HLTH_MODIFIER         1.0f
  149. #define AHM(h)                      ((int)((float)h*ALIEN_HLTH_MODIFIER))
  150.  
  151. #define ALIEN_VALUE_MODIFIER        1.0f
  152. #define AVM(h)                      ((int)((float)h*ALIEN_VALUE_MODIFIER))
  153.  
  154. #define ABUILDER_SPEED              0.9f
  155. #define ABUILDER_VALUE              AVM(240)
  156. #define ABUILDER_HEALTH             AHM(50)
  157. #define ABUILDER_REGEN              (0.04f * ABUILDER_HEALTH)
  158. #define ABUILDER_COST               0
  159.  
  160. #define ABUILDER_UPG_SPEED          0.9f
  161. #define ABUILDER_UPG_VALUE          AVM(300)
  162. #define ABUILDER_UPG_HEALTH         AHM(75)
  163. #define ABUILDER_UPG_REGEN          (0.04f * ABUILDER_UPG_HEALTH)
  164. #define ABUILDER_UPG_COST           0
  165.  
  166. #define LEVEL0_SPEED                1.4f
  167. #define LEVEL0_VALUE                AVM(180)
  168. #define LEVEL0_HEALTH               AHM(25)
  169. #define LEVEL0_REGEN                (0.05f * LEVEL0_HEALTH)
  170. #define LEVEL0_COST                 0
  171.  
  172. #define LEVEL1_SPEED                1.25f
  173. #define LEVEL1_VALUE                AVM(270)
  174. #define LEVEL1_HEALTH               AHM(60)
  175. #define LEVEL1_REGEN                (0.03f * LEVEL1_HEALTH)
  176. #define LEVEL1_COST                 1
  177.  
  178. #define LEVEL1_UPG_SPEED            1.25f
  179. #define LEVEL1_UPG_VALUE            AVM(330)
  180. #define LEVEL1_UPG_HEALTH           AHM(80)
  181. #define LEVEL1_UPG_REGEN            (0.03f * LEVEL1_UPG_HEALTH)
  182. #define LEVEL1_UPG_COST             1
  183.  
  184. #define LEVEL2_SPEED                1.2f
  185. #define LEVEL2_VALUE                AVM(420)
  186. #define LEVEL2_HEALTH               AHM(150)
  187. #define LEVEL2_REGEN                (0.03f * LEVEL2_HEALTH)
  188. #define LEVEL2_COST                 1
  189.  
  190. #define LEVEL2_UPG_SPEED            1.2f
  191. #define LEVEL2_UPG_VALUE            AVM(540)
  192. #define LEVEL2_UPG_HEALTH           AHM(175)
  193. #define LEVEL2_UPG_REGEN            (0.03f * LEVEL2_UPG_HEALTH)
  194. #define LEVEL2_UPG_COST             1
  195.  
  196. #define LEVEL3_SPEED                1.1f
  197. #define LEVEL3_VALUE                AVM(600)
  198. #define LEVEL3_HEALTH               AHM(200)
  199. #define LEVEL3_REGEN                (0.03f * LEVEL3_HEALTH)
  200. #define LEVEL3_COST                 1
  201.  
  202. #define LEVEL3_UPG_SPEED            1.1f
  203. #define LEVEL3_UPG_VALUE            AVM(720)
  204. #define LEVEL3_UPG_HEALTH           AHM(250)
  205. #define LEVEL3_UPG_REGEN            (0.03f * LEVEL3_UPG_HEALTH)
  206. #define LEVEL3_UPG_COST             1
  207.  
  208. #define LEVEL4_SPEED                1.2f
  209. #define LEVEL4_VALUE                AVM(960)
  210. #define LEVEL4_HEALTH               AHM(350)
  211. #define LEVEL4_REGEN                (0.025f * LEVEL4_HEALTH)
  212. #define LEVEL4_COST                 2
  213.  
  214. /*
  215.  * ALIEN buildables
  216.  *
  217.  * _BP            - build points required for this buildable
  218.  * _BT            - build time required for this buildable
  219.  * _REGEN         - the amount of health per second regained
  220.  * _SPLASHDAMGE   - the amount of damage caused by this buildable when melting
  221.  * _SPLASHRADIUS  - the radius around which it does this damage
  222.  *
  223.  * CREEP_BASESIZE - the maximum distance a buildable can be from an egg/overmind
  224.  * ALIEN_BHLTH_MODIFIER - overall health modifier for coarse tuning
  225.  *
  226.  */
  227.  
  228. #define ALIEN_BHLTH_MODIFIER        1.0f
  229. #define ABHM(h)                     ((int)((float)h*ALIEN_BHLTH_MODIFIER))
  230. #define ALIEN_BVALUE_MODIFIER       90.0f
  231. #define ABVM(h)                     ((int)((float)h*ALIEN_BVALUE_MODIFIER))
  232.  
  233. #define CREEP_BASESIZE              700
  234. #define CREEP_TIMEOUT               1000
  235. #define CREEP_MODIFIER              0.5f
  236. #define CREEP_ARMOUR_MODIFIER       0.75f
  237. #define CREEP_SCALEDOWN_TIME        3000
  238.  
  239. #define PCLOUD_MODIFIER             0.5f
  240. #define PCLOUD_ARMOUR_MODIFIER      0.75f
  241.  
  242. #define ASPAWN_BP                   10
  243. #define ASPAWN_BT                   15000
  244. #define ASPAWN_HEALTH               ABHM(250)
  245. #define ASPAWN_REGEN                8
  246. #define ASPAWN_SPLASHDAMAGE         50
  247. #define ASPAWN_SPLASHRADIUS         100
  248. #define ASPAWN_CREEPSIZE            120
  249. #define ASPAWN_VALUE                ABVM(ASPAWN_BP)
  250.  
  251. #define BARRICADE_BP                8
  252. #define BARRICADE_BT                20000
  253. #define BARRICADE_HEALTH            ABHM(300)
  254. #define BARRICADE_REGEN             14
  255. #define BARRICADE_SPLASHDAMAGE      50
  256. #define BARRICADE_SPLASHRADIUS      100
  257. #define BARRICADE_CREEPSIZE         120
  258. #define BARRICADE_SHRINKPROP        0.25f
  259. #define BARRICADE_SHRINKTIMEOUT     500
  260. #define BARRICADE_VALUE             ABVM(BARRICADE_BP)
  261.  
  262. #define BOOSTER_BP                  12
  263. #define BOOSTER_BT                  15000
  264. #define BOOSTER_HEALTH              ABHM(150)
  265. #define BOOSTER_REGEN               8
  266. #define BOOSTER_SPLASHDAMAGE        50
  267. #define BOOSTER_SPLASHRADIUS        100
  268. #define BOOSTER_CREEPSIZE           120
  269. #define BOOSTER_REGEN_MOD           3.0f
  270. #define BOOSTER_VALUE               ABVM(BOOSTER_BP)
  271. #define BOOST_TIME                  20000
  272. #define BOOST_WARN_TIME             15000
  273.  
  274. #define ACIDTUBE_BP                 8
  275. #define ACIDTUBE_BT                 15000
  276. #define ACIDTUBE_HEALTH             ABHM(125)
  277. #define ACIDTUBE_REGEN              10
  278. #define ACIDTUBE_SPLASHDAMAGE       50
  279. #define ACIDTUBE_SPLASHRADIUS       100
  280. #define ACIDTUBE_CREEPSIZE          120
  281. #define ACIDTUBE_DAMAGE             8
  282. #define ACIDTUBE_RANGE              300.0f
  283. #define ACIDTUBE_REPEAT             300
  284. #define ACIDTUBE_REPEAT_ANIM        2000
  285. #define ACIDTUBE_VALUE              ABVM(ACIDTUBE_BP)
  286.  
  287. #define HIVE_BP                     12
  288. #define HIVE_BT                     20000
  289. #define HIVE_HEALTH                 ABHM(125)
  290. #define HIVE_REGEN                  10
  291. #define HIVE_SPLASHDAMAGE           30
  292. #define HIVE_SPLASHRADIUS           200
  293. #define HIVE_CREEPSIZE              120
  294. #define HIVE_SENSE_RANGE            500.0f
  295. #define HIVE_LIFETIME               3000
  296. #define HIVE_REPEAT                 3000
  297. #define HIVE_K_SCALE                1.0f
  298. #define HIVE_DMG                    80
  299. #define HIVE_SPEED                  320.0f
  300. #define HIVE_DIR_CHANGE_PERIOD      500
  301. #define HIVE_VALUE                  ABVM(HIVE_BP)
  302.  
  303. #define TRAPPER_BP                  8
  304. #define TRAPPER_BT                  12000
  305. #define TRAPPER_HEALTH              ABHM(50)
  306. #define TRAPPER_REGEN               6
  307. #define TRAPPER_SPLASHDAMAGE        15
  308. #define TRAPPER_SPLASHRADIUS        100
  309. #define TRAPPER_CREEPSIZE           30
  310. #define TRAPPER_RANGE               400
  311. #define TRAPPER_REPEAT              1000
  312. #define TRAPPER_VALUE               ABVM(TRAPPER_BP)
  313. #define LOCKBLOB_SPEED              650.0f
  314. #define LOCKBLOB_LOCKTIME           5000
  315. #define LOCKBLOB_DOT                0.85f // max angle = acos( LOCKBLOB_DOT )
  316. #define LOCKBLOB_K_SCALE            1.0f
  317.  
  318. #define OVERMIND_BP                 0
  319. #define OVERMIND_BT                 30000
  320. #define OVERMIND_HEALTH             ABHM(750)
  321. #define OVERMIND_REGEN              6
  322. #define OVERMIND_SPLASHDAMAGE       15
  323. #define OVERMIND_SPLASHRADIUS       300
  324. #define OVERMIND_CREEPSIZE          120
  325. #define OVERMIND_ATTACK_RANGE       150.0f
  326. #define OVERMIND_ATTACK_REPEAT      1000
  327. #define OVERMIND_VALUE              ABVM(30)
  328.  
  329. /*
  330.  * ALIEN misc
  331.  *
  332.  * ALIENSENSE_RANGE - the distance alien sense is useful for
  333.  *
  334.  */
  335.  
  336. #define ALIENSENSE_RANGE            1000.0f
  337. #define REGEN_BOOST_RANGE           200.0f
  338.  
  339. #define ALIEN_POISON_TIME           10000
  340. #define ALIEN_POISON_DMG            5
  341. #define ALIEN_POISON_DIVIDER        (1.0f/1.32f) //about 1.0/(time`th root of damage)
  342.  
  343. #define ALIEN_SPAWN_REPEAT_TIME     10000
  344.  
  345. #define ALIEN_REGEN_DAMAGE_TIME     2000 //msec since damage that regen starts again
  346. #define ALIEN_REGEN_NOCREEP_MOD     (1.0f/3.0f) //regen off creep
  347.  
  348. #define ALIEN_MAX_FRAGS             9
  349. #define ALIEN_MAX_CREDITS           (ALIEN_MAX_FRAGS*ALIEN_CREDITS_PER_KILL)
  350. #define ALIEN_CREDITS_PER_KILL      400
  351. #define ALIEN_TK_SUICIDE_PENALTY    350
  352.  
  353. /*
  354.  * HUMAN weapons
  355.  *
  356.  * _REPEAT  - time between firings
  357.  * _RELOAD  - time needed to reload
  358.  * _PRICE   - amount in credits weapon costs
  359.  *
  360.  * HUMAN_WDMG_MODIFIER - overall damage modifier for coarse tuning
  361.  *
  362.  */
  363.  
  364. #define HUMAN_WDMG_MODIFIER         1.0f
  365. #define HDM(d)                      ((int)((float)d*HUMAN_WDMG_MODIFIER))
  366.  
  367. #define BLASTER_REPEAT              600
  368. #define BLASTER_K_SCALE             1.0f
  369. #define BLASTER_SPREAD              200
  370. #define BLASTER_SPEED               1400
  371. #define BLASTER_DMG                 HDM(10)
  372. #define BLASTER_SIZE                5
  373.  
  374. #define RIFLE_CLIPSIZE              30
  375. #define RIFLE_MAXCLIPS              6
  376. #define RIFLE_REPEAT                90
  377. #define RIFLE_K_SCALE               1.0f
  378. #define RIFLE_RELOAD                2000
  379. #define RIFLE_PRICE                 0
  380. #define RIFLE_SPREAD                200
  381. #define RIFLE_DMG                   HDM(5)
  382.  
  383. #define PAINSAW_PRICE               100
  384. #define PAINSAW_REPEAT              75
  385. #define PAINSAW_K_SCALE             1.0f
  386. #define PAINSAW_DAMAGE              HDM(11)
  387. #define PAINSAW_RANGE               64.0f
  388. #define PAINSAW_WIDTH               0.0f
  389. #define PAINSAW_HEIGHT              8.0f
  390.  
  391. #define GRENADE_PRICE               200
  392. #define GRENADE_REPEAT              0
  393. #define GRENADE_K_SCALE             1.0f
  394. #define GRENADE_DAMAGE              HDM(310)
  395. #define GRENADE_RANGE               192.0f
  396. #define GRENADE_SPEED               400.0f
  397.  
  398. #define SHOTGUN_PRICE               150
  399. #define SHOTGUN_SHELLS              6
  400. #define SHOTGUN_PELLETS             11 //used to sync server and client side
  401. #define SHOTGUN_MAXCLIPS            3
  402. #define SHOTGUN_REPEAT              500
  403. #define SHOTGUN_K_SCALE             1.0f
  404. #define SHOTGUN_RELOAD              1500
  405. #define SHOTGUN_SPREAD              700
  406. #define SHOTGUN_DMG                 HDM(2.5)
  407. #define SHOTGUN_RANGE               (8192 * 12)
  408.  
  409. #define LASGUN_PRICE                250
  410. #define LASGUN_AMMO                 200
  411. #define LASGUN_REPEAT               200
  412. #define LASGUN_K_SCALE              1.0f
  413. #define LASGUN_RELOAD               2000
  414. #define LASGUN_DAMAGE               HDM(9)
  415.  
  416. #define MDRIVER_PRICE               350
  417. #define MDRIVER_CLIPSIZE            10
  418. #define MDRIVER_MAXCLIPS            2
  419. #define MDRIVER_DMG                 HDM(20)
  420. #define MDRIVER_REPEAT              500
  421. #define MDRIVER_K_SCALE             1.0f
  422. #define MDRIVER_RELOAD              1000
  423.  
  424. #define CHAINGUN_PRICE              400
  425. #define CHAINGUN_BULLETS            300
  426. #define CHAINGUN_REPEAT             80
  427. #define CHAINGUN_K_SCALE            1.0f
  428. #define CHAINGUN_SPREAD             900
  429. #define CHAINGUN_DMG                HDM(6)
  430.  
  431. #define FLAMER_PRICE                400
  432. #define FLAMER_GAS                  200
  433. #define FLAMER_REPEAT               200
  434. #define FLAMER_K_SCALE              2.0f
  435. #define FLAMER_DMG                  HDM(20)
  436. #define FLAMER_SPLASHDAMAGE         HDM(10)
  437. #define FLAMER_RADIUS               50       // splash radius
  438. #define FLAMER_SIZE                 15        // missile bounding box
  439. #define FLAMER_LIFETIME             700.0f
  440. #define FLAMER_SPEED                500.0f
  441. #define FLAMER_LAG                  0.65f    // the amount of player velocity that is added to the fireball
  442.  
  443. #define PRIFLE_PRICE                450
  444. #define PRIFLE_CLIPS                40
  445. #define PRIFLE_MAXCLIPS             5
  446. #define PRIFLE_REPEAT               100
  447. #define PRIFLE_K_SCALE              1.0f
  448. #define PRIFLE_RELOAD               2000
  449. #define PRIFLE_DMG                  HDM(9)
  450. #define PRIFLE_SPEED                1200
  451. #define PRIFLE_SIZE                 5
  452.  
  453. #define LCANNON_PRICE               600
  454. #define LCANNON_AMMO                80
  455. #define LCANNON_K_SCALE             1.0f
  456. #define LCANNON_REPEAT              500
  457. #define LCANNON_RELOAD              0
  458. #define LCANNON_DAMAGE              HDM(265)
  459. #define LCANNON_RADIUS              150      // primary splash damage radius
  460. #define LCANNON_SIZE                5        // missile bounding box radius
  461. #define LCANNON_SECONDARY_DAMAGE    HDM(30)
  462. #define LCANNON_SECONDARY_RADIUS    75       // secondary splash damage radius
  463. #define LCANNON_SECONDARY_SPEED     1400
  464. #define LCANNON_SECONDARY_RELOAD    2000
  465. #define LCANNON_SECONDARY_REPEAT    1000
  466. #define LCANNON_SPEED               700
  467. #define LCANNON_CHARGE_TIME_MAX     3000
  468. #define LCANNON_CHARGE_TIME_MIN     100
  469. #define LCANNON_CHARGE_TIME_WARN    2000
  470. #define LCANNON_CHARGE_AMMO         10       // ammo cost of a full charge shot
  471.  
  472. #define HBUILD_PRICE                0
  473. #define HBUILD_REPEAT               1000
  474. #define HBUILD_HEALRATE             18
  475.  
  476. /*
  477.  * HUMAN upgrades
  478.  */
  479.  
  480. #define LIGHTARMOUR_PRICE           70
  481. #define LIGHTARMOUR_POISON_PROTECTION 1
  482. #define LIGHTARMOUR_PCLOUD_PROTECTION 1000
  483.  
  484. #define HELMET_PRICE                90
  485. #define HELMET_RANGE                1000.0f
  486. #define HELMET_POISON_PROTECTION    1
  487. #define HELMET_PCLOUD_PROTECTION    1000
  488.  
  489. #define MEDKIT_PRICE                0
  490.  
  491. #define BATTPACK_PRICE              100
  492. #define BATTPACK_MODIFIER           1.5f //modifier for extra energy storage available
  493.  
  494. #define JETPACK_PRICE               120
  495. #define JETPACK_FLOAT_SPEED         128.0f //up movement speed
  496. #define JETPACK_SINK_SPEED          192.0f //down movement speed
  497. #define JETPACK_DISABLE_TIME        1000 //time to disable the jetpack when player damaged
  498. #define JETPACK_DISABLE_CHANCE      0.3f
  499.  
  500. #define BSUIT_PRICE                 400
  501. #define BSUIT_POISON_PROTECTION     3
  502. #define BSUIT_PCLOUD_PROTECTION     3000
  503.  
  504. #define MGCLIP_PRICE                0
  505.  
  506. #define CGAMMO_PRICE                0
  507.  
  508. #define GAS_PRICE                   0
  509.  
  510. #define MEDKIT_POISON_IMMUNITY_TIME 0
  511. #define MEDKIT_STARTUP_TIME         4000
  512. #define MEDKIT_STARTUP_SPEED        5
  513.  
  514. /*
  515.  * HUMAN buildables
  516.  *
  517.  * _BP            - build points required for this buildable
  518.  * _BT            - build time required for this buildable
  519.  * _SPLASHDAMGE   - the amount of damage caused by this buildable when it blows up
  520.  * _SPLASHRADIUS  - the radius around which it does this damage
  521.  *
  522.  * REACTOR_BASESIZE - the maximum distance a buildable can be from an reactor
  523.  * REPEATER_BASESIZE - the maximum distance a buildable can be from a repeater
  524.  * HUMAN_BHLTH_MODIFIER - overall health modifier for coarse tuning
  525.  *
  526.  */
  527.  
  528. #define HUMAN_BHLTH_MODIFIER        1.0f
  529. #define HBHM(h)                     ((int)((float)h*HUMAN_BHLTH_MODIFIER))
  530. #define HUMAN_BVALUE_MODIFIER       240.0f
  531. #define HBVM(h)                     ((int)((float)h*(float)HUMAN_BVALUE_MODIFIER)) // remember these are measured in credits not frags (c.f. ALIEN_CREDITS_PER_KILL)
  532.  
  533. #define REACTOR_BASESIZE            1000
  534. #define REPEATER_BASESIZE           500
  535. #define HUMAN_DETONATION_DELAY      5000
  536.  
  537. #define HSPAWN_BP                   10
  538. #define HSPAWN_BT                   10000
  539. #define HSPAWN_HEALTH               HBHM(310)
  540. #define HSPAWN_SPLASHDAMAGE         50
  541. #define HSPAWN_SPLASHRADIUS         100
  542. #define HSPAWN_VALUE                HBVM(HSPAWN_BP)
  543.  
  544. #define MEDISTAT_BP                 8
  545. #define MEDISTAT_BT                 10000
  546. #define MEDISTAT_HEALTH             HBHM(190)
  547. #define MEDISTAT_SPLASHDAMAGE       50
  548. #define MEDISTAT_SPLASHRADIUS       100
  549. #define MEDISTAT_VALUE              HBVM(MEDISTAT_BP)
  550.  
  551. #define MGTURRET_BP                 8
  552. #define MGTURRET_BT                 10000
  553. #define MGTURRET_HEALTH             HBHM(190)
  554. #define MGTURRET_SPLASHDAMAGE       100
  555. #define MGTURRET_SPLASHRADIUS       100
  556. #define MGTURRET_ANGULARSPEED       12
  557. #define MGTURRET_ACCURACY_TO_FIRE   0
  558. #define MGTURRET_VERTICALCAP        30  // +/- maximum pitch
  559. #define MGTURRET_REPEAT             150
  560. #define MGTURRET_K_SCALE            1.0f
  561. #define MGTURRET_RANGE              400.0f
  562. #define MGTURRET_SPREAD             200
  563. #define MGTURRET_DMG                HDM(8)
  564. #define MGTURRET_SPINUP_TIME        750 // time between target sighted and fire
  565. #define MGTURRET_VALUE              HBVM(MGTURRET_BP)
  566.  
  567. #define TESLAGEN_BP                 10
  568. #define TESLAGEN_BT                 15000
  569. #define TESLAGEN_HEALTH             HBHM(220)
  570. #define TESLAGEN_SPLASHDAMAGE       50
  571. #define TESLAGEN_SPLASHRADIUS       100
  572. #define TESLAGEN_REPEAT             250
  573. #define TESLAGEN_K_SCALE            4.0f
  574. #define TESLAGEN_RANGE              200
  575. #define TESLAGEN_DMG                HDM(10)
  576. #define TESLAGEN_VALUE              HBVM(TESLAGEN_BP)
  577.  
  578. #define DC_BP                       8
  579. #define DC_BT                       10000
  580. #define DC_HEALTH                   HBHM(190)
  581. #define DC_SPLASHDAMAGE             50
  582. #define DC_SPLASHRADIUS             100
  583. #define DC_ATTACK_PERIOD            10000 // how often to spam "under attack"
  584. #define DC_HEALRATE                 4
  585. #define DC_RANGE                    1000
  586. #define DC_VALUE                    HBVM(DC_BP)
  587.  
  588. #define ARMOURY_BP                  10
  589. #define ARMOURY_BT                  10000
  590. #define ARMOURY_HEALTH              HBHM(420)
  591. #define ARMOURY_SPLASHDAMAGE        50
  592. #define ARMOURY_SPLASHRADIUS        100
  593. #define ARMOURY_VALUE               HBVM(ARMOURY_BP)
  594.  
  595. #define REACTOR_BP                  0
  596. #define REACTOR_BT                  20000
  597. #define REACTOR_HEALTH              HBHM(930)
  598. #define REACTOR_SPLASHDAMAGE        200
  599. #define REACTOR_SPLASHRADIUS        300
  600. #define REACTOR_ATTACK_RANGE        100.0f
  601. #define REACTOR_ATTACK_REPEAT       1000
  602. #define REACTOR_ATTACK_DAMAGE       40
  603. #define REACTOR_ATTACK_DCC_REPEAT   1000
  604. #define REACTOR_ATTACK_DCC_RANGE    150.0f
  605. #define REACTOR_ATTACK_DCC_DAMAGE   40
  606. #define REACTOR_VALUE               HBVM(30)
  607.  
  608. #define REPEATER_BP                 4
  609. #define REPEATER_BT                 10000
  610. #define REPEATER_HEALTH             HBHM(250)
  611. #define REPEATER_SPLASHDAMAGE       50
  612. #define REPEATER_SPLASHRADIUS       100
  613. #define REPEATER_VALUE              HBVM(REPEATER_BP)
  614.  
  615. /*
  616.  * HUMAN misc
  617.  */
  618.  
  619. #define HUMAN_SPRINT_MODIFIER       1.2f
  620. #define HUMAN_JOG_MODIFIER          1.0f
  621. #define HUMAN_BACK_MODIFIER         0.8f
  622. #define HUMAN_SIDE_MODIFIER         0.9f
  623. #define HUMAN_DODGE_SIDE_MODIFIER   2.9f
  624. #define HUMAN_DODGE_SLOWED_MODIFIER 0.9f
  625. #define HUMAN_DODGE_UP_MODIFIER     0.5f
  626. #define HUMAN_DODGE_TIMEOUT         500
  627. #define HUMAN_LAND_FRICTION         3.0f
  628.  
  629. #define STAMINA_STOP_RESTORE        30
  630. #define STAMINA_WALK_RESTORE        15
  631. #define STAMINA_MEDISTAT_RESTORE    30 // stacked on STOP or WALK
  632. #define STAMINA_SPRINT_TAKE         6
  633. #define STAMINA_JUMP_TAKE           250
  634. #define STAMINA_DODGE_TAKE          250
  635. #define STAMINA_MAX                 1000
  636. #define STAMINA_BREATHING_LEVEL     0
  637. #define STAMINA_SLOW_LEVEL          -500
  638. #define STAMINA_BLACKOUT_LEVEL      -800
  639.  
  640. #define HUMAN_SPAWN_REPEAT_TIME     10000
  641. #define HUMAN_REGEN_DAMAGE_TIME     2000 //msec since damage before dcc repairs
  642.  
  643. #define HUMAN_MAX_CREDITS           2000
  644. #define HUMAN_TK_SUICIDE_PENALTY    150
  645.  
  646. #define HUMAN_BUILDER_SCOREINC      50       // builders receive this many points every 10 seconds
  647. #define ALIEN_BUILDER_SCOREINC      AVM(100)  // builders receive this many points every 10 seconds
  648.  
  649. #define HUMAN_BUILDABLE_INACTIVE_TIME 90000
  650.  
  651. /*
  652.  * Misc
  653.  */
  654.  
  655. #define MIN_FALL_DISTANCE           30.0f //the fall distance at which fall damage kicks in
  656. #define MAX_FALL_DISTANCE           120.0f //the fall distance at which maximum damage is dealt
  657. #define AVG_FALL_DISTANCE           ((MIN_FALL_DISTANCE+MAX_FALL_DISTANCE)/2.0f)
  658.  
  659. #define DEFAULT_FREEKILL_PERIOD     "120" //seconds
  660. #define FREEKILL_ALIEN              ALIEN_CREDITS_PER_KILL
  661. #define FREEKILL_HUMAN              LEVEL0_VALUE
  662.  
  663. #define DEFAULT_ALIEN_BUILDPOINTS   "150"
  664. #define DEFAULT_ALIEN_QUEUE_TIME    "12000"
  665. #define DEFAULT_ALIEN_STAGE2_THRESH "12000"
  666. #define DEFAULT_ALIEN_STAGE3_THRESH "24000"
  667. #define DEFAULT_ALIEN_MAX_STAGE     "2"
  668. #define DEFAULT_HUMAN_BUILDPOINTS   "100"
  669. #define DEFAULT_HUMAN_QUEUE_TIME    "8000"
  670. #define DEFAULT_HUMAN_REPEATER_BUILDPOINTS "20"
  671. #define DEFAULT_HUMAN_REPEATER_QUEUE_TIME "0"
  672. #define DEFAULT_HUMAN_REPEATER_MAX_ZONES "500"
  673. #define DEFAULT_HUMAN_STAGE2_THRESH "6000"
  674. #define DEFAULT_HUMAN_STAGE3_THRESH "12000"
  675. #define DEFAULT_HUMAN_MAX_STAGE     "2"
  676.  
  677. #define DAMAGE_FRACTION_FOR_KILL    0.5f //how much damage players (versus structures) need to
  678.                                          //do to increment the stage kill counters
  679.                                          
  680. #define MAXIMUM_BUILD_TIME          20000 // used for pie timer
clone this paste RAW Paste Data