Silver Bullet rebalancing, add prone mechanic.
This commit is contained in:
parent
b1704f0212
commit
cf028f7faa
10 changed files with 34 additions and 10 deletions
|
|
@ -205,6 +205,8 @@ The definitive model of **Blackmann Arms**'s legendary **Silver Bullet** series.
|
|||
|
||||
This weapon is generally not recommended for human use outside of power armor. Good thing you're not a human, then. Still, the recoil compensator jet engines can potentially deal damage to yourself if you don't have any armor, so be careful.
|
||||
|
||||
Note that going prone (crouching) will automatically disable the recoil compensators, increasing the potential damage of the bullets, but also reducing your mobility.
|
||||
|
||||
### 1.150 XSB Bullets ~ Replaces Cells, Runes
|
||||

|
||||
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ SWWM_LORETXT_YNYKRON2 = "\cxDesignation:\c-\n\cf Ynykron Artifact\c-\n\cxManufac
|
|||
SWWM_LORETAG_SILVERBULLET = "Silver Bullet JET";
|
||||
SWWM_LORETAB_SILVERBULLET = "Item";
|
||||
SWWM_LOREREL_SILVERBULLET = "Blackmann;Forx;Explodium";
|
||||
SWWM_LORETXT_SILVERBULLET = "\cxDesignation:\c-\n\cf Silver Bullet JET\c-\n\cxManufacturer:\c-\n\cf Blackmann Arms Ltd.\c-\n\cf Forx Aeronautics\c-\n\cxClassification:\c-\n\cf Ultra-High Caliber Sniper Rifle\c-\n\nThe \cfSilver Bullet JET\c- is the 1.150 member of the \cfSilver Bullet\c- series of ultra-high caliber rifles manufactured by \cfBlackmann Arms\c-. It was created as a lighter, more \"reasonable\" alternative to the 1.350 \cfBehemoth\c- model. Weighing 43 kilograms and sporting a total length of 2.4 meters, it is sufficiently compact for non-augmented human use.\n\nThe main ammunition designed for this specific model is the 1.150 \cfXSB (eXplosive Super Burst)\c-. These beastly rounds are partially based on a NATO standard 30x113mm cartridge, and employ a low density \cfExplodium\c- shaped charge as propellant, allowing high velocity while still being safe for use. The bullets themselves are composed of a tungsten carbide core, snugly wrapped in an aluminum jacket, and decorated with a thin silver plating for aesthetic appearance (Silver Bullets are, indeed, NOT really made of silver). XSB rounds can penetrate several targets before eventually stopping, depending on their size, they may also do the same for thin walls.\n\nThe secondary ammunition is the 1.150 \cfFCB (Fat Chode Bomb)\c-. Personally named by the CEO of Blackmann Arms himself, FCBs are quite similar to the standard XSB ammunition, but instead the bullets are full of additional Explodium, which on impact, is released violently, propagating its deadly blast through solid surfaces. Due to the volatility of these bullets, the propellant employed is slightly less potent, which results in a diminished potential for target penetration, but the blast definitely compensates for this. The explosive charge is so powerful that it can break some walls to pieces.\n\nIn order to compensate for its massive recoil, the weapon redirects a part of the gasses from round ignition into a set of jet compensators designed by \cfForx Aeronautics\c-. Although partially cooled in the process, it is still hot enough to cause some damage to users not wearing adequate protection.\n\n\cfPrimary Fire:\c- Shoot the bullet. Any small targets hit by it are pretty much turned to paste. A second press after firing will chamber another round.\n\n\cfSecondary Fire:\c- Switches next reload between XSB and FCB ammunition, if available.\n\n\cfReloading:\c- Reloads the weapon. Each magazine holds 5 rounds. An extra round can also be kept chambered.\n\n\cfZoom:\c- Custom-tailored adjustable telescopic sight, up to 16x. Equipped with a soft foam covering to protect the user's face during scoped fire.\n\n\cxSaya's Notes:\c-\n\cfWhat was that quote again, \"there is no kill like overkill\"? Yeah, sounds about right for this thing.\c-\n\n\cfThe fuck are you even supposed to hunt with it, wild tanks? I suppose... bigass beefy demons could also count, but you're going to just turn them all to fucking paste.\c-";
|
||||
SWWM_LORETXT_SILVERBULLET = "\cxDesignation:\c-\n\cf Silver Bullet JET\c-\n\cxManufacturer:\c-\n\cf Blackmann Arms Ltd.\c-\n\cf Forx Aeronautics\c-\n\cxClassification:\c-\n\cf Ultra-High Caliber Sniper Rifle\c-\n\nThe \cfSilver Bullet JET\c- is the 1.150 member of the \cfSilver Bullet\c- series of ultra-high caliber rifles manufactured by \cfBlackmann Arms\c-. It was created as a lighter, more \"reasonable\" alternative to the 1.350 \cfBehemoth\c- model. Weighing 43 kilograms and sporting a total length of 2.4 meters, it is sufficiently compact for non-augmented human use.\n\nThe main ammunition designed for this specific model is the 1.150 \cfXSB (eXplosive Super Burst)\c-. These beastly rounds are partially based on a NATO standard 30x113mm cartridge, and employ a low density \cfExplodium\c- shaped charge as propellant, allowing high velocity while still being safe for use. The bullets themselves are composed of a tungsten carbide core, snugly wrapped in an aluminum jacket, and decorated with a thin silver plating for aesthetic appearance (Silver Bullets are, indeed, NOT really made of silver). XSB rounds can penetrate several targets before eventually stopping, depending on their size, they may also do the same for thin walls.\n\nThe secondary ammunition is the 1.150 \cfFCB (Fat Chode Bomb)\c-. Personally named by the CEO of Blackmann Arms himself, FCBs are quite similar to the standard XSB ammunition, but instead the bullets are full of additional Explodium, which on impact, is released violently, propagating its deadly blast through solid surfaces. Due to the volatility of these bullets, the propellant employed is slightly less potent, which results in a diminished potential for target penetration, but the blast definitely compensates for this. The explosive charge is so powerful that it can break some walls to pieces.\n\nIn order to compensate for its massive recoil, the weapon redirects a part of the gasses from round ignition into a set of jet compensators designed by \cfForx Aeronautics\c-. Although partially cooled in the process, it is still hot enough to cause some damage to users not wearing adequate protection.\n\n\cfPrimary Fire:\c- Shoot the bullet. Any small targets hit by it are pretty much turned to paste. A second press after firing will chamber another round.\n\n\cfSecondary Fire:\c- Switches next reload between XSB and FCB ammunition, if available.\n\n\cfReloading:\c- Reloads the weapon. Each magazine holds 5 rounds. An extra round can also be kept chambered.\n\n\cfZoom:\c- Custom-tailored adjustable telescopic sight, up to 16x. Equipped with a soft foam covering to protect the user's face during scoped fire.\n\n\cfTechniques:\c- When going prone to use the bipod, the recoil compensators will automatically disengage, resulting in increased firepower at the cost of less mobility.\n\n\cxSaya's Notes:\c-\n\cfWhat was that quote again, \"there is no kill like overkill\"? Yeah, sounds about right for this thing.\c-\n\n\cfThe fuck are you even supposed to hunt with it, wild tanks? I suppose... bigass beefy demons could also count, but you're going to just turn them all to fucking paste.\c-";
|
||||
SWWM_LORETAG_BIGSHOT = "Mr. BIG SHOT";
|
||||
SWWM_LORETAB_BIGSHOT = "People";
|
||||
SWWM_LOREREL_BIGSHOT = "Blackmann;Saya";
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,2 +1,2 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r531 (Mon 7 Sep 22:47:52 CEST 2020)";
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r532 (Mon 7 Sep 23:29:06 CEST 2020)";
|
||||
|
|
|
|||
|
|
@ -29,6 +29,8 @@ In order to compensate for its massive recoil, the weapon redirects a part of th
|
|||
|
||||
\cfZoom:\c- Custom-tailored adjustable telescopic sight, up to 16x. Equipped with a soft foam covering to protect the user's face during scoped fire.
|
||||
|
||||
\cfTechniques:\c- When going prone to use the bipod, the recoil compensators will automatically disengage, resulting in increased firepower at the cost of less mobility.
|
||||
|
||||
\cxSaya's Notes:\c-
|
||||
\cfWhat was that quote again, "there is no kill like overkill"? Yeah, sounds about right for this thing.\c-
|
||||
|
||||
|
|
|
|||
|
|
@ -23,6 +23,8 @@ Para poder compensar su masivo retroceso, el arma redirige una parte de los gase
|
|||
|
||||
\cfZoom:\c- Mira telescópica hecha a medida, hasta 16 aumentos. Equipada con una cubierta de espuma suave para proteger la cara del usuario durante el disparo con mira.
|
||||
|
||||
\cfTécnicas:\c- Al agacharse para usar el bípode, los compensadores de retroceso se desactivarán automáticamente, resultando en un incremento de la potencia de fuego a costa de una movilidad reducida.
|
||||
|
||||
\cxNotas de Saya:\c-
|
||||
\cfComo era la frase esa, ¿"no hay kill como un overkill"? Ya, pues queda perfecta para la cosa esta.\c-
|
||||
|
||||
|
|
|
|||
|
|
@ -763,6 +763,8 @@ $random silverbullet/flesh { silverbullet/flesh1 silverbullet/flesh2 }
|
|||
silverbullet/chode1 sounds/silverbullet/silver_chode1.ogg
|
||||
silverbullet/chode2 sounds/silverbullet/silver_chode2.ogg
|
||||
$random silverbullet/chode { silverbullet/chode1 silverbullet/chode2 }
|
||||
silverbullet/crouch sounds/silverbullet/silver_crouch.ogg
|
||||
silverbullet/uncrouch sounds/silverbullet/silver_uncrouch.ogg
|
||||
|
||||
candygun/fire1 sounds/candygun/candy_fire1.ogg
|
||||
candygun/fire2 sounds/candygun/candy_fire2.ogg
|
||||
|
|
|
|||
BIN
sounds/silverbullet/silver_crouch.ogg
Normal file
BIN
sounds/silverbullet/silver_crouch.ogg
Normal file
Binary file not shown.
BIN
sounds/silverbullet/silver_uncrouch.ogg
Normal file
BIN
sounds/silverbullet/silver_uncrouch.ogg
Normal file
Binary file not shown.
|
|
@ -561,6 +561,7 @@ Class SilverBullet : SWWMWeapon
|
|||
ui TextureID reticle;
|
||||
bool initialized;
|
||||
int rezoom;
|
||||
bool proneme;
|
||||
|
||||
State dezoomstate;
|
||||
|
||||
|
|
@ -665,6 +666,22 @@ Class SilverBullet : SWWMWeapon
|
|||
Super.DoEffect();
|
||||
if ( zoomed ) crosshair = 99;
|
||||
else crosshair = 0;
|
||||
if ( !Owner || !Owner.player )
|
||||
{
|
||||
proneme = false;
|
||||
lookscale = 1.;
|
||||
return;
|
||||
}
|
||||
if ( (Owner.player.ReadyWeapon == self) && Owner.player.mo.CanCrouch() && (Owner.player.crouchfactor <= .5) )
|
||||
{
|
||||
if ( !proneme ) Owner.A_StartSound("silverbullet/crouch",CHAN_WEAPONEXTRA,CHANF_OVERLAP);
|
||||
proneme = true;
|
||||
lookscale = .25;
|
||||
return;
|
||||
}
|
||||
if ( proneme ) Owner.A_StartSound("silverbullet/uncrouch",CHAN_WEAPONEXTRA,CHANF_OVERLAP);
|
||||
proneme = false;
|
||||
lookscale = 1.;
|
||||
}
|
||||
override void RenderUnderlay( RenderEvent e )
|
||||
{
|
||||
|
|
@ -810,7 +827,7 @@ Class SilverBullet : SWWMWeapon
|
|||
}
|
||||
if ( t.Results.HitType == TRACE_HitActor )
|
||||
{
|
||||
int dmg = t.Results.HitActor.DamageMobj(invoker,self,1000,'shot',DMG_FOILINVUL|DMG_USEANGLE|DMG_THRUSTLESS,atan2(t.Results.HitVector.y,t.Results.HitVector.x));
|
||||
int dmg = t.Results.HitActor.DamageMobj(invoker,self,invoker.proneme?1000:500,'shot',DMG_FOILINVUL|DMG_USEANGLE|DMG_THRUSTLESS,atan2(t.Results.HitVector.y,t.Results.HitVector.x));
|
||||
SWWMUtility.DoKnockback(t.Results.HitActor,t.Results.HitVector+(0,0,.025),dmg*20.*FRandom[SilverBullet](.8,1.2));
|
||||
if ( t.Results.HitActor && !t.Results.HitActor.bNOBLOOD )
|
||||
{
|
||||
|
|
@ -822,7 +839,7 @@ Class SilverBullet : SWWMWeapon
|
|||
else if ( t.Results.HitType == TRACE_HitWall )
|
||||
{
|
||||
t.Results.HitLine.RemoteActivate(self,t.Results.Side,SPAC_Impact,t.Results.HitPos);
|
||||
BusterWall.Bust(t.Results,2500,self,t.Results.HitVector,t.Results.HitPos.z);
|
||||
BusterWall.Bust(t.Results,invoker.proneme?2500:2000,self,t.Results.HitVector,t.Results.HitPos.z);
|
||||
}
|
||||
let p = Spawn("FatChodeImpact",t.Results.HitPos+hitnormal*4);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
|
|
@ -851,7 +868,6 @@ Class SilverBullet : SWWMWeapon
|
|||
A_ZoomFactor(basezoom);
|
||||
A_PlayerFire();
|
||||
SWWMHandler.DoFlash(self,Color(110,255,192,80),8);
|
||||
A_Overlay(-9999,"Jet");
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = swwm_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
Vector3 origin = level.Vec3Offset(Vec2OffsetZ(0,0,player.viewz),10*x+1*y-1*z);
|
||||
|
|
@ -870,7 +886,7 @@ Class SilverBullet : SWWMWeapon
|
|||
{
|
||||
SilverBulletTracer sst = new("SilverBulletTracer");
|
||||
sst.ignoreme = self;
|
||||
sst.penetration = 2500.;
|
||||
sst.penetration = invoker.proneme?2500.:1500.;
|
||||
sst.hitlist.Clear();
|
||||
sst.shootthroughlist.Clear();
|
||||
sst.waterhitlist.Clear();
|
||||
|
|
@ -912,7 +928,8 @@ Class SilverBullet : SWWMWeapon
|
|||
s.vel += vel*.5+x*FRandom[Silverbullet](4.,8.)+y*FRandom[Silverbullet](-1,1)+z*FRandom[Silverbullet](-1,1);
|
||||
}
|
||||
double fact = invoker.fcbchambered?270000.:320000.;
|
||||
if ( player.mo.CanCrouch() && (player.crouchfactor != 1) ) fact /= 10.;
|
||||
if ( invoker.proneme ) fact /= 8.;
|
||||
else A_Overlay(-9999,"Jet");
|
||||
SWWMUtility.DoKnockback(self,-x,fact);
|
||||
}
|
||||
action void A_DropCasing( bool fcb = false )
|
||||
|
|
@ -978,8 +995,7 @@ Class SilverBullet : SWWMWeapon
|
|||
invoker.specialf1 -= .06;
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = swwm_CoordUtil.GetAxes(pitch,angle,roll);
|
||||
bool reduceme = (player.mo.CanCrouch()&&(player.crouchfactor != 1));
|
||||
vel += x*min(1.,invoker.specialf1)*((reduceme?60.:600.)/Mass);
|
||||
vel += x*min(1.,invoker.specialf1)*(600./Mass);
|
||||
A_OverlayAlpha(PSP_WEAPON+2,clamp(invoker.specialf1*3.,0.,1.));
|
||||
if ( Random[SilverBullet](0,int(invoker.specialf1*2)) )
|
||||
self.DamageMobj(invoker,self,1,'jet');
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue