From 49dfa9034a0423a6370a6fdde090128267fe50ce Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Fri, 3 Jun 2022 17:57:39 +1000 Subject: [PATCH] Shotgun nerfs (#8590) - Bojevic firerate dropped from 3 to 2 - Pellet damage from 13 to 8 (3 shotting players instead of 2 shot) - Slightly more spread in line with the design doc. Slug spread I made as accurate as an SMG (so not quite full-screen mob hits but pretty close). --- Content.Server/Weapon/Ranged/Systems/GunSystem.cs | 4 ++-- Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs | 2 +- Content.Shared/Weapons/Ranged/Components/GunComponent.cs | 2 +- .../Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml | 3 ++- .../Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml | 4 ++-- .../Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml | 2 +- 6 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Content.Server/Weapon/Ranged/Systems/GunSystem.cs b/Content.Server/Weapon/Ranged/Systems/GunSystem.cs index 14e39f9a80..c4bd95941f 100644 --- a/Content.Server/Weapon/Ranged/Systems/GunSystem.cs +++ b/Content.Server/Weapon/Ranged/Systems/GunSystem.cs @@ -54,8 +54,8 @@ public sealed partial class GunSystem : SharedGunSystem { if (cartridge.Count > 1) { - var angles = LinearSpread(mapAngle - Angle.FromDegrees(cartridge.Spread / 2f), - mapAngle + Angle.FromDegrees(cartridge.Spread / 2f), cartridge.Count); + var angles = LinearSpread(mapAngle - cartridge.Spread / 2, + mapAngle + cartridge.Spread / 2, cartridge.Count); for (var i = 0; i < cartridge.Count; i++) { diff --git a/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs b/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs index 6bcbcef148..b070051988 100644 --- a/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs @@ -35,7 +35,7 @@ public sealed class CartridgeAmmoComponent : AmmoComponent /// How much the ammo spreads when shot, in degrees. Does nothing if count is 0. /// [ViewVariables(VVAccess.ReadWrite), DataField("spread")] - public float Spread = 10f; + public Angle Spread = Angle.FromDegrees(5); /// /// How many prototypes are spawned when shot. diff --git a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs index f153794f09..463ac00f1b 100644 --- a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs @@ -44,7 +44,7 @@ public class GunComponent : Component /// /// How much the spread increases every time the gun fires. /// - [ViewVariables, DataField("angleIncrease")] + [ViewVariables(VVAccess.ReadWrite), DataField("angleIncrease")] public Angle AngleIncrease = Angle.FromDegrees(0.5); /// diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml index 7449bcf44e..65720dc6e4 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml @@ -10,6 +10,7 @@ - ShellShotgun - type: CartridgeAmmo count: 6 + spread: 15 soundEject: collection: ShellEject - type: Sprite @@ -46,7 +47,7 @@ - type: CartridgeAmmo proto: PelletShotgunSlug count: 4 - spread: 2.5 + spread: 5 - type: entity id: ShellShotgunFlare diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml index 78aed66a35..d00d8a3115 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml @@ -10,7 +10,7 @@ - type: Projectile damage: types: - Piercing: 13 + Piercing: 8 # Should have the same or less damage than a regular pellet - type: entity id: PelletShotgunBeanbag @@ -41,7 +41,7 @@ - type: Projectile damage: types: - Piercing: 13 + Piercing: 8 - type: entity id: PelletShotgunFlash diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml index dd2901dced..42fd15dd37 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml @@ -51,7 +51,7 @@ sprite: Objects/Weapons/Guns/Shotguns/bojevic.rsi size: 24 - type: Gun - fireRate: 3 + fireRate: 2 selectedMode: FullAuto availableModes: - FullAuto