Added g_proximityMinesLiveTime cvar, allows setting of time (in ms) of mine life time. After time is reached, mines blow up. Default is 60s (60000)

Added a few balance changes for basilisk, mainly health going up to 90 and 115. Poision cloud is 15 seconds, not 10. Range is up by 150%. Repeat rate is slower, taking 2.75s instead of 2s.

If these balance changes do not work, ill roll them back later.
This commit is contained in:
Paradox460 committed 2008-03-22 22:48:04 +00:00
1 parent cf635a3ca7
commit 7029cb2954
4 files changed
+19 -6

No files matched your search

+2
View File
@@ -242,6 +242,7 @@ struct gentity_s
int lastDamageTime;
int bdnumb; // buildlog entry ID
int livetime;
};
typedef enum
@@ -1257,6 +1258,7 @@ extern vmCvar_t g_warmup;
extern vmCvar_t g_doWarmup;
extern vmCvar_t g_proximityMines;
extern vmCvar_t g_proximityMinesPrice;
extern vmCvar_t g_proximityMinesLiveTime;
extern vmCvar_t g_blood;
extern vmCvar_t g_allowVote;
extern vmCvar_t g_voteLimit;
+2
View File
@@ -74,6 +74,7 @@ vmCvar_t g_warmup;
vmCvar_t g_doWarmup;
vmCvar_t g_proximityMines;
vmCvar_t g_proximityMinesPrice;
vmCvar_t g_proximityMinesLiveTime;
vmCvar_t g_restarted;
vmCvar_t g_lockTeamsAtStart;
vmCvar_t g_logFile;
@@ -269,6 +270,7 @@ static cvarTable_t gameCvarTable[ ] =
{ &g_proximityMines, "g_proximityMines", "0", 0, 0, qtrue },
{ &g_proximityMinesPrice, "g_proximityMinesPrice", "800", 0, 0, qtrue },
{ &g_proximityMinesLiveTime, "g_proximityMinesLiveTime", "60000", 0, 0, qtrue },
{ &g_teamAutoJoin, "g_teamAutoJoin", "0", CVAR_ARCHIVE },
{ &g_teamForceBalance, "g_teamForceBalance", "1", CVAR_ARCHIVE },
{ &g_buyAll, "g_buyAll", "0", CVAR_ARCHIVE, 0, qtrue },
+9
View File
@@ -111,10 +111,18 @@ void G_ProcessProximityMine(gentity_t *ent) {
int i, total_entities, entityList[MAX_GENTITIES];
vec3_t range, mins, maxs;
gentity_t *target;
// Set the next time to run this check (can be overwritten below)
ent->nextthink = level.time + PROXIMITY_CHECK_FREQUENCY;
if( g_proximityMinesLiveTime.integer != -1 && ent->livetime + PROXIMITY_CHECK_FREQUENCY == level.time )
{
ent->nextthink = level.time;
ent->think = G_ExplodeMissile;
return;
}
// Grab all entities around us
VectorSet(range, PROXIMITY_RANGE, PROXIMITY_RANGE, PROXIMITY_RANGE);
VectorAdd(ent->s.origin, range, maxs);
@@ -531,6 +539,7 @@ gentity_t *launch_grenade( gentity_t *self, vec3_t start, vec3_t dir )
if(g_proximityMines.integer) {
bolt->nextthink = level.time + PROXIMITY_INIT_TIME;
bolt->think = G_ProcessProximityMine;
bolt->livetime = level.time + g_proximityMinesLiveTime.integer;
} else {
bolt->nextthink = level.time + 5000;
bolt->think = G_ExplodeMissile;
+6 -6
View File
@@ -55,7 +55,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define LEVEL0_BITE_REPEAT 500
#define LEVEL0_BITE_K_SCALE 1.0f
#define LEVEL1_CLAW_DMG ADM(32)
#define LEVEL1_CLAW_DMG ADM(35)
#define LEVEL1_CLAW_RANGE 96.0f
#define LEVEL1_CLAW_WIDTH 10.0f
#define LEVEL1_CLAW_REPEAT 600
@@ -66,9 +66,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#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 LEVEL1_PCLOUD_RANGE 250.0f
#define LEVEL1_PCLOUD_REPEAT 2750
#define LEVEL1_PCLOUD_TIME 15000
#define LEVEL2_CLAW_DMG ADM(40)
#define LEVEL2_CLAW_RANGE 96.0f
@@ -157,13 +157,13 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#define LEVEL1_SPEED 1.25f
#define LEVEL1_VALUE AVM(225)
#define LEVEL1_HEALTH AHM(75)
#define LEVEL1_HEALTH AHM(90)
#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_HEALTH AHM(115)
#define LEVEL1_UPG_REGEN 3
#define LEVEL1_UPG_COST 1