From e17ac08288507ba1842b27f309a5d923ba531194 Mon Sep 17 00:00:00 2001 From: Marco Hladik Date: Sun, 24 Apr 2022 17:24:01 -0700 Subject: [PATCH] Weapons: Go over them all and adjust their bullet penetration properties. Only possible thanks to Xylemon's test map. --- src/shared/w_ak47.qc | 4 ++-- src/shared/w_aug.qc | 4 ++-- src/shared/w_awp.qc | 4 ++-- src/shared/w_deagle.qc | 4 ++-- src/shared/w_elites.qc | 2 +- src/shared/w_fiveseven.qc | 2 +- src/shared/w_g3sg1.qc | 4 ++-- src/shared/w_glock18.qc | 2 +- src/shared/w_m3.qc | 3 +-- src/shared/w_m4a1.qc | 4 ++-- src/shared/w_mac10.qc | 2 +- src/shared/w_mp5.qc | 2 +- src/shared/w_p228.qc | 2 +- src/shared/w_p90.qc | 2 +- src/shared/w_para.qc | 4 ++-- src/shared/w_scout.qc | 4 ++-- src/shared/w_sg550.qc | 4 ++-- src/shared/w_sg552.qc | 4 ++-- src/shared/w_tmp.qc | 2 +- src/shared/w_ump45.qc | 2 +- src/shared/w_usp45.qc | 2 +- src/shared/w_xm1014.qc | 3 +-- zpak001.pk3dir/default.cfg | 7 +++++++ 23 files changed, 39 insertions(+), 34 deletions(-) diff --git a/src/shared/w_ak47.qc b/src/shared/w_ak47.qc index c561577..106c854 100644 --- a/src/shared/w_ak47.qc +++ b/src/shared/w_ak47.qc @@ -177,8 +177,8 @@ w_ak47_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.98); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.375); /* 18 units!!! */ + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 36, [accuracy,accuracy], WEAPON_AK47); Sound_Play(pl, CHAN_WEAPON, "weapon_ak47.fire"); #endif diff --git a/src/shared/w_aug.qc b/src/shared/w_aug.qc index 1b7b6f1..9d5c6f6 100644 --- a/src/shared/w_aug.qc +++ b/src/shared/w_aug.qc @@ -143,8 +143,8 @@ w_aug_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.96); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.125); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 32, [accuracy,accuracy], WEAPON_AUG); Sound_Play(pl, CHAN_WEAPON, "weapon_aug.fire"); #endif diff --git a/src/shared/w_awp.qc b/src/shared/w_awp.qc index 24e5fed..a0bbe57 100644 --- a/src/shared/w_awp.qc +++ b/src/shared/w_awp.qc @@ -234,8 +234,8 @@ w_awp_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_sniper_ejectshell, 0.9f); #else - TraceAttack_SetRangeModifier(0.99); - TraceAttack_SetPenetrationPower(3); + TraceAttack_SetRangeModifier(1.375); + TraceAttack_SetPenetrationPower(2); /* however, we can only penetrate one wall if the first one is 5 units thick or higher */ TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 115, [accuracy,accuracy], WEAPON_AWP); Sound_Play(pl, CHAN_WEAPON, "weapon_awp.fire"); diff --git a/src/shared/w_deagle.qc b/src/shared/w_deagle.qc index 105dab6..f154b3e 100644 --- a/src/shared/w_deagle.qc +++ b/src/shared/w_deagle.qc @@ -176,8 +176,8 @@ w_deagle_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.81); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(1.875); /* 14 but not 15 */ + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 54, [accuracy,accuracy], WEAPON_DEAGLE); Sound_Play(pl, CHAN_WEAPON, "weapon_deagle.fire"); #endif diff --git a/src/shared/w_elites.qc b/src/shared/w_elites.qc index 1211320..a60bbaa 100644 --- a/src/shared/w_elites.qc +++ b/src/shared/w_elites.qc @@ -248,7 +248,7 @@ w_elites_primary(player pl) else View_AddEvent(w_pistol_ejectshell_right, 0.0f); #else - TraceAttack_SetRangeModifier(0.75); + TraceAttack_SetRangeModifier(1.875); /* 14 but not 15 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 45, [accuracy,accuracy], WEAPON_ELITES); Sound_Play(pl, CHAN_WEAPON, "weapon_elites.fire"); diff --git a/src/shared/w_fiveseven.qc b/src/shared/w_fiveseven.qc index ec3c5d7..e9dcf48 100644 --- a/src/shared/w_fiveseven.qc +++ b/src/shared/w_fiveseven.qc @@ -147,7 +147,7 @@ w_fiveseven_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.885); + TraceAttack_SetRangeModifier(1.875); /* 14 but not 15 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 25, [accuracy,accuracy], WEAPON_FIVESEVEN); Sound_Play(pl, CHAN_WEAPON, "weapon_fiveseven.fire"); diff --git a/src/shared/w_g3sg1.qc b/src/shared/w_g3sg1.qc index b9cd59e..afa9420 100644 --- a/src/shared/w_g3sg1.qc +++ b/src/shared/w_g3sg1.qc @@ -138,8 +138,8 @@ w_g3sg1_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.98); - TraceAttack_SetPenetrationPower(3); + TraceAttack_SetRangeModifier(2.375); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 80, [accuracy,accuracy], WEAPON_G3SG1); Sound_Play(pl, CHAN_WEAPON, "weapon_g3sg1.fire"); #endif diff --git a/src/shared/w_glock18.qc b/src/shared/w_glock18.qc index 3ad79ec..facdf5a 100644 --- a/src/shared/w_glock18.qc +++ b/src/shared/w_glock18.qc @@ -146,7 +146,7 @@ w_glock18_primary(player pl) float accuracy = Cstrike_CalculateAccuracy(pl, (pl.mode_glock18) ? 175 : 200); pl.glock18_mag--; #ifdef SERVER - TraceAttack_SetRangeModifier(0.75); + TraceAttack_SetRangeModifier(1.25); /* penetrates 9 units, but not 10 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 25, [accuracy,accuracy], WEAPON_GLOCK18); #endif diff --git a/src/shared/w_m3.qc b/src/shared/w_m3.qc index e8b4cc2..3050462 100644 --- a/src/shared/w_m3.qc +++ b/src/shared/w_m3.qc @@ -193,8 +193,7 @@ w_m3_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_m3_ejectshell, 0.6f); #else - TraceAttack_SetRangeModifier(0.70); - TraceAttack_SetPenetrationPower(1); + TraceAttack_SetPenetrationPower(0); /* shotties can't wallbang?! */ if (self.flags & FL_CROUCHING) Animation_PlayerTop(pl, ANIM_SHOOT_SHOTGUN, 0.45f); diff --git a/src/shared/w_m4a1.qc b/src/shared/w_m4a1.qc index 23d31fa..09a70cd 100644 --- a/src/shared/w_m4a1.qc +++ b/src/shared/w_m4a1.qc @@ -184,8 +184,8 @@ w_m4a1_primary(player pl) Sound_Play(pl, CHAN_WEAPON, "weapon_m4a1.fire"); } - TraceAttack_SetRangeModifier(0.97); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.125); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 33, [accuracy,accuracy], WEAPON_M4A1); #endif diff --git a/src/shared/w_mac10.qc b/src/shared/w_mac10.qc index 78e9cee..064d4f4 100644 --- a/src/shared/w_mac10.qc +++ b/src/shared/w_mac10.qc @@ -142,7 +142,7 @@ w_mac10_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.82); + TraceAttack_SetRangeModifier(1.25); /* 9, but not 10 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 29, [accuracy,accuracy], WEAPON_MAC10); Sound_Play(pl, CHAN_WEAPON, "weapon_mac10.fire"); diff --git a/src/shared/w_mp5.qc b/src/shared/w_mp5.qc index a1fb9d7..6ae4c40 100644 --- a/src/shared/w_mp5.qc +++ b/src/shared/w_mp5.qc @@ -140,7 +140,7 @@ w_mp5_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.84); + TraceAttack_SetRangeModifier(1.25); /* 9 units but not 10 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 26, [accuracy,accuracy], WEAPON_MP5); Sound_Play(pl, CHAN_WEAPON, "weapon_mp5.fire"); diff --git a/src/shared/w_p228.qc b/src/shared/w_p228.qc index c3124d4..11dd8d3 100644 --- a/src/shared/w_p228.qc +++ b/src/shared/w_p228.qc @@ -147,7 +147,7 @@ w_p228_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.80); + TraceAttack_SetRangeModifier(1.5); /* penetrates 11, but not 12 units */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 40, [accuracy,accuracy], WEAPON_P228); Sound_Play(pl, CHAN_WEAPON, "weapon_p228.fire"); diff --git a/src/shared/w_p90.qc b/src/shared/w_p90.qc index 6854d44..366050f 100644 --- a/src/shared/w_p90.qc +++ b/src/shared/w_p90.qc @@ -140,7 +140,7 @@ w_p90_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.84); + TraceAttack_SetRangeModifier(1.875); /* 9 but not 10 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 26, [accuracy,accuracy], WEAPON_P90); Sound_Play(pl, CHAN_WEAPON, "weapon_p90.fire"); diff --git a/src/shared/w_para.qc b/src/shared/w_para.qc index 110054e..683b279 100644 --- a/src/shared/w_para.qc +++ b/src/shared/w_para.qc @@ -136,8 +136,8 @@ w_para_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.97); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.125); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 35, [accuracy,accuracy], WEAPON_PARA); Sound_Play(pl, CHAN_WEAPON, "weapon_para.fire"); #endif diff --git a/src/shared/w_scout.qc b/src/shared/w_scout.qc index bf70582..93e2c4f 100644 --- a/src/shared/w_scout.qc +++ b/src/shared/w_scout.qc @@ -197,8 +197,8 @@ w_scout_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.5f); #else - TraceAttack_SetRangeModifier(0.98); - TraceAttack_SetPenetrationPower(3); + TraceAttack_SetRangeModifier(2.375); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 75, [accuracy,accuracy], WEAPON_SCOUT); Sound_Play(pl, CHAN_WEAPON, "weapon_scout.fire"); #endif diff --git a/src/shared/w_sg550.qc b/src/shared/w_sg550.qc index 7d1b3f2..03379e5 100644 --- a/src/shared/w_sg550.qc +++ b/src/shared/w_sg550.qc @@ -137,8 +137,8 @@ w_sg550_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.98); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.125); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 70, [accuracy,accuracy], WEAPON_SG550); Sound_Play(pl, CHAN_WEAPON, "weapon_sg550.fire"); #endif diff --git a/src/shared/w_sg552.qc b/src/shared/w_sg552.qc index 7c98017..066191f 100644 --- a/src/shared/w_sg552.qc +++ b/src/shared/w_sg552.qc @@ -140,8 +140,8 @@ w_sg552_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_rifle_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.955); - TraceAttack_SetPenetrationPower(2); + TraceAttack_SetRangeModifier(2.125); + TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 33, [accuracy,accuracy], WEAPON_SG552); Sound_Play(pl, CHAN_WEAPON, "weapon_sg552.fire"); #endif diff --git a/src/shared/w_tmp.qc b/src/shared/w_tmp.qc index 594a696..8389b2c 100644 --- a/src/shared/w_tmp.qc +++ b/src/shared/w_tmp.qc @@ -140,7 +140,7 @@ w_tmp_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.84); + TraceAttack_SetRangeModifier(1.25); /* 9 but not 10 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 26, [accuracy,accuracy], WEAPON_TMP); Sound_Play(pl, CHAN_WEAPON, "weapon_tmp.fire"); diff --git a/src/shared/w_ump45.qc b/src/shared/w_ump45.qc index 89bbce1..fa4a117 100644 --- a/src/shared/w_ump45.qc +++ b/src/shared/w_ump45.qc @@ -140,7 +140,7 @@ w_ump45_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_pistol_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.02); + TraceAttack_SetRangeModifier(0.875); /* 6, but not 7 */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 30, [accuracy,accuracy], WEAPON_UMP45); Sound_Play(pl, CHAN_WEAPON, "weapon_ump45.fire"); diff --git a/src/shared/w_usp45.qc b/src/shared/w_usp45.qc index 1befb3e..003412c 100644 --- a/src/shared/w_usp45.qc +++ b/src/shared/w_usp45.qc @@ -196,7 +196,7 @@ w_usp45_primary(player pl) } /* actual firing */ - TraceAttack_SetRangeModifier(0.79); + TraceAttack_SetRangeModifier(0.79); /* can penetrate 6 but not 7 units */ TraceAttack_SetPenetrationPower(1); TraceAttack_FireBullets(1, pl.origin + pl.view_ofs, 33, [accuracy,accuracy], WEAPON_USP45); #endif diff --git a/src/shared/w_xm1014.qc b/src/shared/w_xm1014.qc index ce21dc6..699bc86 100644 --- a/src/shared/w_xm1014.qc +++ b/src/shared/w_xm1014.qc @@ -198,8 +198,7 @@ w_xm1014_primary(player pl) View_SetMuzzleflash(MUZZLE_RIFLE); View_AddEvent(w_xm1014_ejectshell, 0.0f); #else - TraceAttack_SetRangeModifier(0.70); - TraceAttack_SetPenetrationPower(1); + TraceAttack_SetPenetrationPower(0); /* shotties can't wallbang?! */ Sound_Play(pl, CHAN_WEAPON, "weapon_xm1014.fire"); #endif diff --git a/zpak001.pk3dir/default.cfg b/zpak001.pk3dir/default.cfg index 5c44a1d..fa2da5d 100755 --- a/zpak001.pk3dir/default.cfg +++ b/zpak001.pk3dir/default.cfg @@ -75,3 +75,10 @@ seta sv_airaccelerate 10 seta sv_wateraccelerate 8 seta sv_accelerate 4 seta sv_maxspeed 250 + +// disable some nuclide niceties +seta v_muzzledlight 0 + +// config compat +alias mp_timelimit timelimit +alias mp_fraglimit fraglimit