]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge remote branch 'origin/master' into samual/new_shotgun_tracing
authorSamual <samual@xonotic.org>
Fri, 23 Sep 2011 05:59:15 +0000 (01:59 -0400)
committerSamual <samual@xonotic.org>
Fri, 23 Sep 2011 05:59:15 +0000 (01:59 -0400)
balance25.cfg
balanceFruit.cfg
balanceLeeStricklin.cfg
balanceXonotic.cfg
balancetZork.cfg
qcsrc/server/autocvars.qh
qcsrc/server/g_hook.qc
qcsrc/server/vehicles/vehicles.qc
qcsrc/server/w_hagar.qc

index 6dfadc12d812dfc1ed444797c8c4a4c2f31ce04f..e0763be45fc289ae43e34837c887acc29d969b65 100644 (file)
@@ -546,6 +546,8 @@ set g_balance_hagar_primary_ammo 1
 set g_balance_hagar_secondary 1
 set g_balance_hagar_secondary_load 0
 set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
 set g_balance_hagar_secondary_load_max 4
 set g_balance_hagar_secondary_load_hold 0
 set g_balance_hagar_secondary_load_releasedeath 1
index ec23f590c7377b59b366700679b503e2f79a3ce4..ba22e635fbb6e621941c522a2ea4442a90d7f8e2 100644 (file)
@@ -546,6 +546,8 @@ set g_balance_hagar_primary_ammo 1
 set g_balance_hagar_secondary 1
 set g_balance_hagar_secondary_load 0
 set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
 set g_balance_hagar_secondary_load_max 4
 set g_balance_hagar_secondary_load_hold 0
 set g_balance_hagar_secondary_load_releasedeath 1
index 37ca225e9d16c0aef778ee99e5115507d2d160d0..7ed6c97982772d3eb20c5bfebc0afad6cbed2196 100644 (file)
@@ -546,6 +546,8 @@ set g_balance_hagar_primary_ammo 2
 set g_balance_hagar_secondary 1
 set g_balance_hagar_secondary_load 0
 set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
 set g_balance_hagar_secondary_load_max 4
 set g_balance_hagar_secondary_load_hold 0
 set g_balance_hagar_secondary_load_releasedeath 1
index 7fc125b596f9501ecfbc2193b8e418d07716ded0..d3878b0d436d01652f3ec4d3ac5775571a6eb5e5 100644 (file)
@@ -144,7 +144,7 @@ set g_balance_fuel_limit 999
 // }}}
 
 // {{{ misc
-set g_balance_selfdamagepercent 0.75
+set g_balance_selfdamagepercent 0.65
 set g_balance_weaponswitchdelay 0.15
 set g_weaponspeedfactor 1 "weapon projectile speed multiplier"
 set g_weaponratefactor 1 "weapon fire rate multiplier"
@@ -290,13 +290,13 @@ set g_balance_uzi_burst_force 20
 set g_balance_uzi_burst_ammo 3
 
 set g_balance_uzi_first 1
-set g_balance_uzi_first_damage 16
+set g_balance_uzi_first_damage 14
 set g_balance_uzi_first_force 5
 set g_balance_uzi_first_spread 0.03
-set g_balance_uzi_first_refire 0.3
+set g_balance_uzi_first_refire 0.4
 set g_balance_uzi_first_ammo 1
 
-set g_balance_uzi_sustained_damage 14
+set g_balance_uzi_sustained_damage 12
 set g_balance_uzi_sustained_force 5
 set g_balance_uzi_sustained_spread 0.04
 set g_balance_uzi_sustained_refire 0.1
@@ -484,8 +484,8 @@ set g_balance_crylink_reload_time 2
 // {{{ nex
 set g_balance_nex_primary_damage 90
 set g_balance_nex_primary_force 400
-set g_balance_nex_primary_refire 1.25
-set g_balance_nex_primary_animtime 0.3
+set g_balance_nex_primary_refire 1.5
+set g_balance_nex_primary_animtime 0.4
 set g_balance_nex_primary_ammo 6
 set g_balance_nex_primary_damagefalloff_mindist 0 // 1000    For tZork ;3
 set g_balance_nex_primary_damagefalloff_maxdist 0 // 3000
@@ -534,11 +534,11 @@ set g_balance_minstanex_reload_ammo 0 //default: 50
 set g_balance_minstanex_reload_time 2
 // }}}
 // {{{ hagar
-set g_balance_hagar_primary_damage 30
-set g_balance_hagar_primary_edgedamage 15
+set g_balance_hagar_primary_damage 25
+set g_balance_hagar_primary_edgedamage 12.5
 set g_balance_hagar_primary_force 50
-set g_balance_hagar_primary_radius 70
-set g_balance_hagar_primary_spread 0.05
+set g_balance_hagar_primary_radius 60
+set g_balance_hagar_primary_spread 0.04
 set g_balance_hagar_primary_speed 2000
 set g_balance_hagar_primary_lifetime 5
 set g_balance_hagar_primary_refire 0.15
@@ -546,6 +546,8 @@ set g_balance_hagar_primary_ammo 1
 set g_balance_hagar_secondary 1
 set g_balance_hagar_secondary_load 1
 set g_balance_hagar_secondary_load_speed 0.5
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
 set g_balance_hagar_secondary_load_max 4
 set g_balance_hagar_secondary_load_hold 1
 set g_balance_hagar_secondary_load_releasedeath 0
@@ -554,7 +556,7 @@ set g_balance_hagar_secondary_damage 40
 set g_balance_hagar_secondary_edgedamage 20
 set g_balance_hagar_secondary_force 50
 set g_balance_hagar_secondary_radius 80
-set g_balance_hagar_secondary_spread 0.05
+set g_balance_hagar_secondary_spread 0.06
 set g_balance_hagar_secondary_speed 2000
 set g_balance_hagar_secondary_lifetime_min 10
 set g_balance_hagar_secondary_lifetime_rand 0
@@ -567,7 +569,7 @@ set g_balance_hagar_reload_time 2
 set g_balance_rocketlauncher_damage 80
 set g_balance_rocketlauncher_edgedamage 40
 set g_balance_rocketlauncher_force 400
-set g_balance_rocketlauncher_radius 100
+set g_balance_rocketlauncher_radius 110
 set g_balance_rocketlauncher_speed 1500
 set g_balance_rocketlauncher_speedaccel 1500
 set g_balance_rocketlauncher_speedstart 800
@@ -585,7 +587,7 @@ set g_balance_rocketlauncher_guidedelay 0.2 // delay before guiding kicks in
 set g_balance_rocketlauncher_guidestop 0 // stop guiding when firing again
 set g_balance_rocketlauncher_remote_damage 70
 set g_balance_rocketlauncher_remote_edgedamage 35
-set g_balance_rocketlauncher_remote_radius 100
+set g_balance_rocketlauncher_remote_radius 110
 set g_balance_rocketlauncher_remote_force 400
 set g_balance_rocketlauncher_reload_ammo 0 //default: 25
 set g_balance_rocketlauncher_reload_time 2
index 2d7afed7a9c52602ce0dd6ae30bd5cf28062f65c..7b4746b05e7d975d0007a35d9727ccea83e8f67f 100644 (file)
@@ -545,6 +545,8 @@ set g_balance_hagar_primary_ammo 1
 set g_balance_hagar_secondary 1
 set g_balance_hagar_secondary_load 0
 set g_balance_hagar_secondary_load_speed 0.6
+set g_balance_hagar_secondary_load_spread 0.075
+set g_balance_hagar_secondary_load_spread_bias 0.5
 set g_balance_hagar_secondary_load_max 4
 set g_balance_hagar_secondary_load_hold 0
 set g_balance_hagar_secondary_load_releasedeath 1
index f3cc68c4787ce63aa16c79b09750deda54c0ccee..bf03b2ce5725217a4038c654fe65784681594956 100644 (file)
@@ -325,6 +325,8 @@ float autocvar_g_balance_hagar_primary_speed;
 float autocvar_g_balance_hagar_secondary;
 float autocvar_g_balance_hagar_secondary_load;
 float autocvar_g_balance_hagar_secondary_load_speed;
+float autocvar_g_balance_hagar_secondary_load_spread;
+float autocvar_g_balance_hagar_secondary_load_spread_bias;
 float autocvar_g_balance_hagar_secondary_load_max;
 float autocvar_g_balance_hagar_secondary_load_hold;
 float autocvar_g_balance_hagar_secondary_load_releasedeath;
@@ -337,6 +339,8 @@ float autocvar_g_balance_hagar_secondary_lifetime_min;
 float autocvar_g_balance_hagar_secondary_lifetime_rand;
 float autocvar_g_balance_hagar_secondary_radius;
 float autocvar_g_balance_hagar_secondary_refire;
+float autocvar_g_balance_hagar_secondary_speed;
+float autocvar_g_balance_hagar_secondary_spread;
 float autocvar_g_balance_hagar_reload_ammo;
 float autocvar_g_balance_hagar_reload_time;
 float autocvar_g_balance_health_limit;
index 76faad923281b026a45773f292bfc91854f78789..4f655ca5738220c1dc75da1c95849f347b2cef68 100644 (file)
@@ -296,8 +296,11 @@ void FireGrapplingHook (void)
        if((arena_roundbased && time < warmup) || (time < game_starttime))
                return;
 
-    if(self.freezetag_frozen)
-        return;
+  if(self.freezetag_frozen)
+               return;
+       
+       if(self.vehicle)
+               return;
 
        makevectors(self.v_angle);
 
index d9d77b5f5211957f539c4ee41b1057beec0980a4..6006dcf92edb6f0e2acf0bf3094211e1e4756e39 100644 (file)
@@ -428,6 +428,8 @@ void vehicles_enter()
     if(self.team)
     if(self.team != other.team)
         return;
+        
+    RemoveGrapplingHook(other);
 
     self.vehicle_ammo1   = 0;
     self.vehicle_ammo2   = 0;
index 26d2df69e89507ac3bc7bb8f10690ee96703884f..080eea39e453fe7ed7a7704bc1d6d8aae3321e45 100644 (file)
@@ -118,7 +118,7 @@ void W_Hagar_Attack2_Load_Release (void)
        // time to release the rockets we've loaded
 
        local entity missile;
-       local float counter, shots;
+       local float counter, shots, spread_pershot;
        local vector s;
        vector forward, right, up;
 
@@ -153,7 +153,13 @@ void W_Hagar_Attack2_Load_Release (void)
                setorigin (missile, w_shotorg);
                setsize(missile, '0 0 0', '0 0 0');
                missile.movetype = MOVETYPE_FLY;
-
+               
+               // per-shot spread calculation: the more shots there are, the less spread is applied (based on the bias cvar)
+               spread_pershot = ((shots - 1) / (autocvar_g_balance_hagar_secondary_load_max - 1)); 
+               spread_pershot = (1 - (spread_pershot * autocvar_g_balance_hagar_secondary_load_spread_bias));
+               spread_pershot = (autocvar_g_balance_hagar_secondary_spread * spread_pershot * g_weaponspreadfactor);
+               
+               // pattern spread calculation
                s = '0 0 0';
                if (counter == 0)
                        s = '0 0 0';
@@ -163,8 +169,9 @@ void W_Hagar_Attack2_Load_Release (void)
                        s_y = v_forward_x;
                        s_z = v_forward_y;
                }
-               s = s * cvar("g_balance_hagar_secondary_spread") * g_weaponspreadfactor;
-               W_SetupProjectileVelocityEx(missile, w_shotdir + right * s_y + up * s_z, v_up, cvar("g_balance_hagar_secondary_speed"), 0, 0, 0, FALSE);
+               s = s * autocvar_g_balance_hagar_secondary_load_spread * g_weaponspreadfactor;
+               
+               W_SetupProjectileVelocityEx(missile, w_shotdir + right * s_y + up * s_z, v_up, autocvar_g_balance_hagar_secondary_speed, 0, 0, spread_pershot, FALSE);
 
                missile.angles = vectoangles (missile.velocity);
                missile.flags = FL_PROJECTILE;