From: Rudolf Polzer Date: Fri, 23 Jul 2010 05:53:02 +0000 (+0200) Subject: Merge remote branch 'origin/fruitiex/fruitbalance' into divVerent/fruitbalance X-Git-Tag: xonotic-v0.1.0preview~423^2~18 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=b4777dff6e4b4dbb59e3ec07037926116a0c1cd3;hp=feef23a1fb1aa66839ff37a7057b6448352b4186 Merge remote branch 'origin/fruitiex/fruitbalance' into divVerent/fruitbalance --- diff --git a/balanceFruit.cfg b/balanceFruit.cfg index a2bfdfb466..33de128ac9 100644 --- a/balanceFruit.cfg +++ b/balanceFruit.cfg @@ -206,11 +206,11 @@ set g_balance_grapplehook_health 130 // {{{ weapon properties // {{{ laser -set g_balance_laser_primary_damage 30 // dps 50, hope that's not too high -set g_balance_laser_primary_edgedamage 30 +set g_balance_laser_primary_damage 25 // dps 38, hope that's not too high +set g_balance_laser_primary_edgedamage 25 set g_balance_laser_primary_force 235 -set g_balance_laser_primary_radius 70 -set g_balance_laser_primary_speed 4500 +set g_balance_laser_primary_radius 60 +set g_balance_laser_primary_speed 4000 set g_balance_laser_primary_spread 0 set g_balance_laser_primary_refire 0.6 set g_balance_laser_primary_animtime 0.6 @@ -279,33 +279,33 @@ set g_balance_grenadelauncher_primary_sticky 1 set g_balance_grenadelauncher_primary_damage 100 set g_balance_grenadelauncher_primary_edgedamage 30 set g_balance_grenadelauncher_primary_force 300 -set g_balance_grenadelauncher_primary_radius 200 +set g_balance_grenadelauncher_primary_radius 150 set g_balance_grenadelauncher_primary_speed 800 set g_balance_grenadelauncher_primary_speed_up 0 set g_balance_grenadelauncher_primary_speed_z 350 set g_balance_grenadelauncher_primary_spread 0 set g_balance_grenadelauncher_primary_lifetime 5 -set g_balance_grenadelauncher_primary_lifetime2 0.8 +set g_balance_grenadelauncher_primary_lifetime2 0.65 set g_balance_grenadelauncher_primary_refire 0.8 set g_balance_grenadelauncher_primary_animtime 0.2 set g_balance_grenadelauncher_primary_ammo 2 -set g_balance_grenadelauncher_primary_health 25 +set g_balance_grenadelauncher_primary_health 72 set g_balance_grenadelauncher_secondary_damage 100 set g_balance_grenadelauncher_secondary_edgedamage 30 set g_balance_grenadelauncher_secondary_force 300 -set g_balance_grenadelauncher_secondary_radius 200 +set g_balance_grenadelauncher_secondary_radius 150 set g_balance_grenadelauncher_secondary_speed 800 set g_balance_grenadelauncher_secondary_speed_up 0 set g_balance_grenadelauncher_secondary_speed_z 350 -set g_balance_grenadelauncher_secondary_spread 0 -set g_balance_grenadelauncher_secondary_lifetime 2 +set g_balance_grenadelauncher_secondary_spread 0.025 +set g_balance_grenadelauncher_secondary_lifetime 2.2 set g_balance_grenadelauncher_secondary_refire 0.8 set g_balance_grenadelauncher_secondary_animtime 0.2 set g_balance_grenadelauncher_secondary_ammo 2 set g_balance_grenadelauncher_secondary_health 0 set g_balance_grenadelauncher_secondary_damageforcescale 0 -set g_balance_grenadelauncher_secondary_bouncefactor 0.5 -set g_balance_grenadelauncher_secondary_bouncestop 0.075 +set g_balance_grenadelauncher_secondary_bouncefactor 0.7 +set g_balance_grenadelauncher_secondary_bouncestop 0.12 // }}} // {{{ electro // TODO set g_balance_electro_lightning 1 @@ -347,8 +347,8 @@ set g_balance_electro_combo_comboradius 0 set g_balance_electro_combo_speed 400 // }}} // {{{ crylink -set g_balance_crylink_primary_damage 12 -set g_balance_crylink_primary_edgedamage 10 +set g_balance_crylink_primary_damage 10 +set g_balance_crylink_primary_edgedamage 8 set g_balance_crylink_primary_force 25 set g_balance_crylink_primary_radius 100 set g_balance_crylink_primary_speed 1100 @@ -358,7 +358,7 @@ set g_balance_crylink_primary_bounces 1 set g_balance_crylink_primary_refire 0.8 set g_balance_crylink_primary_animtime 0.4 set g_balance_crylink_primary_ammo 2 -set g_balance_crylink_primary_bouncedamagefactor 0.5 +set g_balance_crylink_primary_bouncedamagefactor 0.2 set g_balance_crylink_primary_middle_lifetime 5 // range: 10000 full, fades to 20000 set g_balance_crylink_primary_middle_fadetime 5 @@ -483,16 +483,16 @@ set g_balance_hook_secondary_power 3 // effect behaves like a square function set g_balance_hook_secondary_duration 1.5 // effect runs for three seconds // }}} // {{{ hlac -set g_balance_hlac_primary_spread_min 0.01 -set g_balance_hlac_primary_spread_max 0.25 -set g_balance_hlac_primary_spread_add 0.0045 -set g_balance_hlac_primary_spread_crouchmod 0.25 +set g_balance_hlac_primary_spread_min 0 +set g_balance_hlac_primary_spread_max 0 +set g_balance_hlac_primary_spread_add 0 +set g_balance_hlac_primary_spread_crouchmod 0 -set g_balance_hlac_primary_damage 23 -set g_balance_hlac_primary_edgedamage 10 -set g_balance_hlac_primary_force 100 -set g_balance_hlac_primary_radius 70 -set g_balance_hlac_primary_speed 9000 +set g_balance_hlac_primary_damage 15 +set g_balance_hlac_primary_edgedamage 0 +set g_balance_hlac_primary_force 70 +set g_balance_hlac_primary_radius 30 +set g_balance_hlac_primary_speed 2500 set g_balance_hlac_primary_lifetime 5 set g_balance_hlac_primary_refire 0.1 @@ -503,15 +503,15 @@ set g_balance_hlac_secondary 1 set g_balance_hlac_secondary_spread 0.15 set g_balance_hlac_secondary_spread_crouchmod 0.5 -set g_balance_hlac_secondary_damage 23 -set g_balance_hlac_secondary_edgedamage 10 -set g_balance_hlac_secondary_force 100 -set g_balance_hlac_secondary_radius 70 -set g_balance_hlac_secondary_speed 9000 +set g_balance_hlac_secondary_damage 20 +set g_balance_hlac_secondary_edgedamage 0 +set g_balance_hlac_secondary_force 40 +set g_balance_hlac_secondary_radius 35 +set g_balance_hlac_secondary_speed 2500 set g_balance_hlac_secondary_lifetime 5 set g_balance_hlac_secondary_refire 1 -set g_balance_hlac_secondary_animtime 0.3 +set g_balance_hlac_secondary_animtime 0.7 set g_balance_hlac_secondary_ammo 10 set g_balance_hlac_secondary_shots 6 // }}} @@ -613,8 +613,8 @@ set g_balance_seeker_flac_spread 0.4 set g_balance_seeker_missile_accel 1.05 set g_balance_seeker_missile_ammo 2 set g_balance_seeker_missile_animtime 0.3 -set g_balance_seeker_missile_count 4 -set g_balance_seeker_missile_damage 40 +set g_balance_seeker_missile_count 3 +set g_balance_seeker_missile_damage 33 set g_balance_seeker_missile_damageforcescale 4 set g_balance_seeker_missile_decel 0.9 set g_balance_seeker_missile_delay 0.25 diff --git a/defaultXonotic.cfg b/defaultXonotic.cfg index 5c76f7df8a..8e4d45d364 100644 --- a/defaultXonotic.cfg +++ b/defaultXonotic.cfg @@ -298,6 +298,8 @@ set sv_ready_restart 0 "if set to 1 allow a map to be restarted once all players set sv_ready_restart_after_countdown 0 "if set to 1 the players and map items are reset after the countdown ended, otherwise they're reset already at the beginning of the countdown" set sv_ready_restart_repeatable 0 "allows the players to restart the game as often as needed" +set sv_hitsound_antispam_time 0.05 "don't play the hitsound more often than this for the electro lightning gun or the laser gauntlet" + //nifreks lockonrestart feature, used in team-based game modes, if set to 1 and all players readied up no other player can then join the game anymore, useful to block spectators from joining set teamplay_lockonrestart 0 "it set to 1 in a team-based game, the teams are locked once all players readied up and the game restarted (no new players can join after restart unless using the server-command unlockteams)" diff --git a/physicsNoQWBunny-XPM.cfg b/physicsNoQWBunny-XPM.cfg deleted file mode 100644 index 1beaeda7e8..0000000000 --- a/physicsNoQWBunny-XPM.cfg +++ /dev/null @@ -1,36 +0,0 @@ -// 2.0-2.4.2 physics minus QW-bunnyhopping-bug, faster onground accel, CPMA air control -sv_gravity 800 -sv_maxspeed 320 - -sv_maxairspeed 320 - -sv_stopspeed 100 -sv_accelerate 15 -sv_airaccelerate 2 -sv_friction 8 -edgefriction 1 -sv_stepheight 34 - -sv_jumpvelocity 300 -sv_wateraccelerate 4 -sv_waterfriction 1 -sv_airaccel_sideways_friction 0 -sv_airaccel_qw -0.937 - -sv_airstopaccelerate 3 -sv_airstrafeaccelerate 24 -sv_maxairstrafespeed 100 -sv_airstrafeaccel_qw -0.979 -sv_aircontrol 125 -sv_aircontrol_penalty 100 -sv_aircontrol_power 2.5 -sv_airspeedlimit_nonqw 0 -sv_warsowbunny_turnaccel 0 -sv_warsowbunny_accel 0.1593 -sv_warsowbunny_topspeed 925 -sv_warsowbunny_backtosideratio 0.8 -sv_friction_on_land 0 -sv_doublejump 0 -sv_jumpspeedcap_min "" -sv_jumpspeedcap_max "" -sv_jumpspeedcap_max_disable_on_ramps 1 diff --git a/physicsNoQWBunny-nexbased.cfg b/physicsNoQWBunny-nexbased.cfg new file mode 100644 index 0000000000..53f1e534e4 --- /dev/null +++ b/physicsNoQWBunny-nexbased.cfg @@ -0,0 +1,32 @@ +// "NoQWBunny" physics based on Nexuiz 2.0-2.4.2 +sv_gravity 800 +sv_maxspeed 400 +sv_maxairspeed 400 +sv_stopspeed 100 +sv_accelerate 15 +sv_airaccelerate 2 +sv_friction 7 +edgefriction 1 +sv_stepheight 34 +sv_jumpvelocity 300 +sv_wateraccelerate -1 +sv_waterfriction -1 +sv_airaccel_sideways_friction -0.2 +sv_airaccel_qw -0.9475 +sv_airstopaccelerate 2.5 +sv_airstrafeaccelerate 24 +sv_maxairstrafespeed 100 +sv_airstrafeaccel_qw -0.9825 +sv_aircontrol 125 +sv_aircontrol_penalty 0 +sv_aircontrol_power 2.5 +sv_airspeedlimit_nonqw 0 +sv_warsowbunny_turnaccel 0 +sv_warsowbunny_accel 0.1593 +sv_warsowbunny_topspeed 925 +sv_warsowbunny_backtosideratio 0.8 +sv_friction_on_land 0 +sv_doublejump 0 +sv_jumpspeedcap_min "" +sv_jumpspeedcap_max "" +sv_jumpspeedcap_max_disable_on_ramps 1 diff --git a/physicsNoQWBunny.cfg b/physicsNoQWBunny.cfg index 5a8732b680..3e1cc9629b 100644 --- a/physicsNoQWBunny.cfg +++ b/physicsNoQWBunny.cfg @@ -1,24 +1,28 @@ -// 2.0-2.4.2 physics minus QW-bunnyhopping-bug, faster onground accel, CPMA air control +// "NoQWBunny" physics based on XPM sv_gravity 800 -sv_maxspeed 400 -sv_maxairspeed 400 +sv_maxspeed 320 + +sv_maxairspeed 320 + sv_stopspeed 100 sv_accelerate 15 sv_airaccelerate 2 -sv_friction 7 +sv_friction 8 edgefriction 1 sv_stepheight 34 -sv_jumpvelocity 300 -sv_wateraccelerate -1 -sv_waterfriction -1 -sv_airaccel_sideways_friction -0.2 -sv_airaccel_qw -0.9475 -sv_airstopaccelerate 2.5 -sv_airstrafeaccelerate 24 -sv_maxairstrafespeed 100 -sv_airstrafeaccel_qw -0.9825 + +sv_jumpvelocity 250 +sv_wateraccelerate 4 +sv_waterfriction 1 +sv_airaccel_sideways_friction 0 +sv_airaccel_qw -0.937 + +sv_airstopaccelerate 3 +sv_airstrafeaccelerate 20 +sv_maxairstrafespeed 96 +sv_airstrafeaccel_qw -0.979 sv_aircontrol 125 -sv_aircontrol_penalty 0 +sv_aircontrol_penalty 100 sv_aircontrol_power 2.5 sv_airspeedlimit_nonqw 0 sv_warsowbunny_turnaccel 0 diff --git a/physicsNoQWBunny_easy.cfg b/physicsNoQWBunny_easy.cfg deleted file mode 100644 index 721f819b3d..0000000000 --- a/physicsNoQWBunny_easy.cfg +++ /dev/null @@ -1,32 +0,0 @@ -// 2.0-2.4.2 physics minus QW-bunnyhopping-bug, faster onground accel, CPMA air control -sv_gravity 800 -sv_maxspeed 400 -sv_maxairspeed 400 -sv_stopspeed 100 -sv_accelerate 15 -sv_airaccelerate 2 -sv_friction 7 -edgefriction 1 -sv_stepheight 34 -sv_jumpvelocity 300 -sv_wateraccelerate -1 -sv_waterfriction -1 -sv_airaccel_sideways_friction -0.35 -sv_airaccel_qw -0.9475 -sv_airstopaccelerate 0 -sv_airstrafeaccelerate 0 -sv_maxairstrafespeed 0 -sv_airstrafeaccel_qw 0 -sv_aircontrol 125 -sv_aircontrol_penalty 0 -sv_aircontrol_power 2.5 -sv_airspeedlimit_nonqw 0 -sv_warsowbunny_turnaccel 0 -sv_warsowbunny_accel 0.1593 -sv_warsowbunny_topspeed 925 -sv_warsowbunny_backtosideratio 0.8 -sv_friction_on_land 0 -sv_doublejump 0 -sv_jumpspeedcap_min "" -sv_jumpspeedcap_max "" -sv_jumpspeedcap_max_disable_on_ramps 1 diff --git a/qcsrc/client/View.qc b/qcsrc/client/View.qc index 05c038e1ce..db41d55d96 100644 --- a/qcsrc/client/View.qc +++ b/qcsrc/client/View.qc @@ -137,7 +137,7 @@ vector GetCurrentFov(float fov) zoomspeed = 3.5; zoomdir = button_zoom; - if(getstati(STAT_ACTIVEWEAPON) == WEP_NEX || getstati(STAT_ACTIVEWEAPON) == WEP_CAMPINGRIFLE && campingrifle_scope) // do NOT use switchweapon here + if(getstati(STAT_ACTIVEWEAPON) == WEP_NEX || (getstati(STAT_ACTIVEWEAPON) == WEP_CAMPINGRIFLE && campingrifle_scope)) // do NOT use switchweapon here zoomdir += button_attack2; if(spectatee_status > 0 || isdemo()) { diff --git a/qcsrc/server/g_damage.qc b/qcsrc/server/g_damage.qc index 3b4386b57d..def4829de5 100644 --- a/qcsrc/server/g_damage.qc +++ b/qcsrc/server/g_damage.qc @@ -463,6 +463,7 @@ void Obituary (entity attacker, entity inflictor, entity targ, float deathtype) entity damage_targ; entity damage_inflictor; entity damage_attacker; +.float prevhitsound; void Damage (entity targ, entity inflictor, entity attacker, float damage, float deathtype, vector hitloc, vector force) { @@ -725,10 +726,14 @@ void Damage (entity targ, entity inflictor, entity attacker, float damage, float { if(damage > 0) { - if(targ.BUTTON_CHAT) - attacker.typehitsound += 1; - else - attacker.hitsound += 1; + if(attacker.weapon != WEP_ELECTRO && attacker.weapon != WEP_LASER || ((attacker.weapon == WEP_ELECTRO && cvar("g_balance_electro_lightning") || attacker.weapon == WEP_LASER) && attacker.prevhitsound + cvar("sv_hitsound_antispam_time") < time)) + { + if(targ.BUTTON_CHAT) + attacker.typehitsound += 1; + else + attacker.hitsound += 1; + attacker.prevhitsound = time; + } damage_goodhits += 1; damage_gooddamage += damage; diff --git a/qcsrc/server/w_electro.qc b/qcsrc/server/w_electro.qc index 2be1573cd3..fed520492c 100644 --- a/qcsrc/server/w_electro.qc +++ b/qcsrc/server/w_electro.qc @@ -360,7 +360,7 @@ float w_electro(float req) { if (self.BUTTON_ATCK) { - if (weapon_prepareattack(0, cvar("g_balance_electro_primary_refire"))) + if (weapon_prepareattack(0, (cvar("g_balance_electro_lightning") ? 0 : cvar("g_balance_electro_primary_refire")))) { if(cvar("g_balance_electro_lightning")) { diff --git a/qcsrc/server/w_laser.qc b/qcsrc/server/w_laser.qc index 870c266278..c3840ac9e6 100644 --- a/qcsrc/server/w_laser.qc +++ b/qcsrc/server/w_laser.qc @@ -263,7 +263,7 @@ float w_laser(float req) else if (req == WR_THINK) { if (self.BUTTON_ATCK) - if (weapon_prepareattack(0, cvar("g_balance_laser_primary_refire"))) + if (weapon_prepareattack(0, (cvar("g_balance_laser_primary_gauntlet") ? 0 : cvar("g_balance_laser_primary_refire")))) { if(cvar("g_balance_laser_primary_gauntlet")) W_Laser_Attack2(0); @@ -275,7 +275,7 @@ float w_laser(float req) { if(cvar("g_balance_laser_secondary")) { - if (weapon_prepareattack(0, cvar("g_balance_laser_secondary_refire"))) + if (weapon_prepareattack(0, (cvar("g_balance_laser_secondary_gauntlet") ? 0 : cvar("g_balance_laser_secondary_refire")))) { if(cvar("g_balance_laser_secondary_gauntlet")) W_Laser_Attack2(1);