From 339bfb2b0b1bf3373a7942a89d836029644fb65d Mon Sep 17 00:00:00 2001 From: AndroBetel <44546836+AndroBetel@users.noreply.github.com> Date: Sat, 7 Dec 2024 21:04:04 +0300 Subject: [PATCH] non-military ammo nerf (#557) --- code/datums/ammo/bullet/pistol.dm | 6 +-- code/datums/ammo/bullet/revolver.dm | 4 +- code/datums/ammo/bullet/rifle.dm | 16 +++++- code/datums/ammo/bullet/smg.dm | 8 +-- code/datums/ammo/bullet/sniper.dm | 4 +- code/datums/ammo/bullet/special_ammo.dm | 1 - code/modules/projectiles/guns/rifles.dm | 54 +++----------------- code/modules/projectiles/magazines/rifles.dm | 23 ++++----- 8 files changed, 42 insertions(+), 74 deletions(-) diff --git a/code/datums/ammo/bullet/pistol.dm b/code/datums/ammo/bullet/pistol.dm index a821b41ac6a..6bfb769dbde 100644 --- a/code/datums/ammo/bullet/pistol.dm +++ b/code/datums/ammo/bullet/pistol.dm @@ -11,7 +11,7 @@ accuracy = HIT_ACCURACY_TIER_3 accuracy_var_low = PROJECTILE_VARIANCE_TIER_6 damage = 40 - penetration= ARMOR_PENETRATION_TIER_2 + penetration= -ARMOR_PENETRATION_TIER_2 shrapnel_chance = SHRAPNEL_CHANCE_TIER_2 /datum/ammo/bullet/pistol/tiny @@ -30,7 +30,7 @@ name = "hollowpoint pistol bullet" damage = 55 //hollowpoint is strong - penetration = 0 //hollowpoint can't pierce armor! + penetration = -ARMOR_PENETRATION_TIER_5 //hollowpoint can't pierce armor! shrapnel_chance = SHRAPNEL_CHANCE_TIER_3 //hollowpoint causes shrapnel // Used by M4A3 AP and mod88 @@ -39,7 +39,7 @@ damage = 25 accuracy = HIT_ACCURACY_TIER_2 - penetration= ARMOR_PENETRATION_TIER_8 + penetration= ARMOR_PENETRATION_TIER_2 shrapnel_chance = SHRAPNEL_CHANCE_TIER_2 /datum/ammo/bullet/pistol/ap/penetrating diff --git a/code/datums/ammo/bullet/revolver.dm b/code/datums/ammo/bullet/revolver.dm index 9c0e56218aa..08a74328ae2 100644 --- a/code/datums/ammo/bullet/revolver.dm +++ b/code/datums/ammo/bullet/revolver.dm @@ -9,7 +9,7 @@ headshot_state = HEADSHOT_OVERLAY_MEDIUM damage = 70 - penetration = ARMOR_PENETRATION_TIER_3 + penetration = -ARMOR_PENETRATION_TIER_2 accuracy = HIT_ACCURACY_TIER_2 /datum/ammo/bullet/revolver/on_hit_mob(mob/entity, obj/projectile/bullet) @@ -24,7 +24,7 @@ shrapnel_chance = 0 damage_falloff = 0 accurate_range = 12 - penetration = ARMOR_PENETRATION_TIER_7 + penetration = ARMOR_PENETRATION_TIER_4 /datum/ammo/bullet/revolver/heavy name = "heavy revolver bullet" diff --git a/code/datums/ammo/bullet/rifle.dm b/code/datums/ammo/bullet/rifle.dm index 35b9132035b..d7ec66c76f9 100644 --- a/code/datums/ammo/bullet/rifle.dm +++ b/code/datums/ammo/bullet/rifle.dm @@ -259,6 +259,18 @@ // Misc /datum/ammo/bullet/rifle/mar40 - name = "7.62x39mm rifle bullet" + name = "8.8x29 rifle bullet" damage = 45 - penetration = ARMOR_PENETRATION_TIER_2 + +/datum/ammo/bullet/rifle/m16 + name = "5.56x45 rifle bullet" + damage = 35 + +/datum/ammo/bullet/rifle/m16/ap + name = "armor-piercing 5.56x45 rifle bullet" + damage = 30 + penetration = ARMOR_PENETRATION_TIER_5 + +/datum/ammo/bullet/rifle/ar10 + name = "7.62x51 rifle bullet" + damage = 55 diff --git a/code/datums/ammo/bullet/smg.dm b/code/datums/ammo/bullet/smg.dm index 0e8983a33a8..76e03a94c7b 100644 --- a/code/datums/ammo/bullet/smg.dm +++ b/code/datums/ammo/bullet/smg.dm @@ -16,7 +16,7 @@ damage = 34 accurate_range = 4 effective_range_max = 4 - penetration = ARMOR_PENETRATION_TIER_1 + penetration = -ARMOR_PENETRATION_TIER_2 shell_speed = AMMO_SPEED_TIER_6 damage_falloff = DAMAGE_FALLOFF_TIER_5 scatter = SCATTER_AMOUNT_TIER_6 @@ -64,7 +64,7 @@ icon_state = "nail-projectile" damage = 25 - penetration = ARMOR_PENETRATION_TIER_5 + penetration = -ARMOR_PENETRATION_TIER_5 damage_falloff = DAMAGE_FALLOFF_TIER_6 accurate_range = 5 shell_speed = AMMO_SPEED_TIER_4 @@ -133,7 +133,7 @@ damage = 26 accurate_range = 7 effective_range_max = 7 - penetration = ARMOR_PENETRATION_TIER_2 + penetration = -ARMOR_PENETRATION_TIER_2 damage_falloff = DAMAGE_FALLOFF_TIER_7 scatter = SCATTER_AMOUNT_TIER_5 @@ -142,6 +142,6 @@ damage = 35 accurate_range = 7 effective_range_max = 10 - penetration = ARMOR_PENETRATION_TIER_4 + penetration = -ARMOR_PENETRATION_TIER_4 damage_falloff = DAMAGE_FALLOFF_TIER_6 scatter = SCATTER_AMOUNT_TIER_6 diff --git a/code/datums/ammo/bullet/sniper.dm b/code/datums/ammo/bullet/sniper.dm index 58fe6c39886..5f723a091b7 100644 --- a/code/datums/ammo/bullet/sniper.dm +++ b/code/datums/ammo/bullet/sniper.dm @@ -16,7 +16,7 @@ max_range = 32 scatter = 0 damage = 70 - penetration= ARMOR_PENETRATION_TIER_10 + penetration= ARMOR_PENETRATION_TIER_5 shell_speed = AMMO_SPEED_TIER_6 damage_falloff = 0 @@ -88,7 +88,7 @@ /datum/ammo/bullet/sniper/crude name = "crude sniper bullet" damage = 42 - penetration = ARMOR_PENETRATION_TIER_6 + penetration = -ARMOR_PENETRATION_TIER_2 /datum/ammo/bullet/sniper/crude/on_hit_mob(mob/M, obj/projectile/P) . = ..() diff --git a/code/datums/ammo/bullet/special_ammo.dm b/code/datums/ammo/bullet/special_ammo.dm index 9c72d1ed041..2c08afd7252 100644 --- a/code/datums/ammo/bullet/special_ammo.dm +++ b/code/datums/ammo/bullet/special_ammo.dm @@ -178,7 +178,6 @@ accuracy_var_high = PROJECTILE_VARIANCE_TIER_6 accurate_range = 12 damage = 45 //7.62x51 is scary - penetration= ARMOR_PENETRATION_TIER_6 shrapnel_chance = SHRAPNEL_CHANCE_TIER_2 /datum/ammo/bullet/pkp diff --git a/code/modules/projectiles/guns/rifles.dm b/code/modules/projectiles/guns/rifles.dm index f33e7600037..04004aeb6f1 100644 --- a/code/modules/projectiles/guns/rifles.dm +++ b/code/modules/projectiles/guns/rifles.dm @@ -750,7 +750,7 @@ /obj/item/weapon/gun/rifle/mar40 name = "\improper MAR-40 battle rifle" - desc = "A cheap, reliable assault rifle chambered in 7.62x39mm. Commonly found in the hands of criminals or mercenaries, or in the hands of the UPP or CLF." + desc = "A cheap, reliable assault rifle chambered in 8.8x29mm. Commonly found in the hands of criminals or mercenaries, or in the hands of the UPP or CLF." icon = 'icons/obj/items/weapons/guns/guns_by_faction/colony.dmi' icon_state = "mar40" item_state = "mar40" @@ -779,28 +779,6 @@ /obj/item/attachable/attached_gun/shotgun, /obj/item/attachable/scope/slavic, ) - random_spawn_chance = 38 - random_spawn_rail = list( - /obj/item/attachable/reddot, - /obj/item/attachable/reflex/, - /obj/item/attachable/scope/slavic, - /obj/item/attachable/magnetic_harness, - ) - random_spawn_under = list( - /obj/item/attachable/gyro, - /obj/item/attachable/bipod, - /obj/item/attachable/attached_gun/flamer, - /obj/item/attachable/attached_gun/extinguisher, - /obj/item/attachable/attached_gun/shotgun, - /obj/item/attachable/burstfire_assembly, - ) - random_spawn_muzzle = list( - /obj/item/attachable/suppressor, - /obj/item/attachable/bayonet/upp, - /obj/item/attachable/extended_barrel, - /obj/item/attachable/compensator, - ) - flags_gun_features = GUN_AUTO_EJECTOR|GUN_CAN_POINTBLANK start_automatic = TRUE @@ -825,13 +803,13 @@ recoil = RECOIL_AMOUNT_TIER_5 /obj/item/weapon/gun/rifle/mar40/tactical - desc = "A cheap, reliable assault rifle chambered in 7.62x39mm. Commonly found in the hands of criminals or mercenaries, or in the hands of the UPP or CLF. This one has been equipped with an after-market ammo-counter." + desc = "A cheap, reliable assault rifle chambered in 8.8x29mm. Commonly found in the hands of criminals or mercenaries, or in the hands of the UPP or CLF. This one has been equipped with an after-market ammo-counter." starting_attachment_types = list(/obj/item/attachable/angledgrip, /obj/item/attachable/suppressor, /obj/item/attachable/magnetic_harness) flags_gun_features = GUN_AMMO_COUNTER|GUN_AUTO_EJECTOR|GUN_CAN_POINTBLANK /obj/item/weapon/gun/rifle/mar40/carbine name = "\improper MAR-30 battle carbine" - desc = "A cheap, reliable carbine chambered in 7.62x39mm. Commonly found in the hands of criminals or mercenaries." + desc = "A cheap, reliable carbine chambered in 8.8x29mm. Commonly found in the hands of criminals or mercenaries." icon_state = "mar30" item_state = "mar30" fire_sound = 'sound/weapons/gun_mar40.ogg' @@ -862,26 +840,6 @@ /obj/item/attachable/scope, /obj/item/attachable/scope/mini, ) - random_spawn_chance = 35 - random_spawn_rail = list( - /obj/item/attachable/reddot, - /obj/item/attachable/reflex/, - /obj/item/attachable/scope/mini, - /obj/item/attachable/magnetic_harness, - ) - random_spawn_under = list( - /obj/item/attachable/angledgrip, - /obj/item/attachable/verticalgrip, - /obj/item/attachable/bipod, - /obj/item/attachable/attached_gun/extinguisher, - /obj/item/attachable/attached_gun/shotgun, - /obj/item/attachable/lasersight, - ) - random_spawn_muzzle = list( - /obj/item/attachable/suppressor, - /obj/item/attachable/bayonet/upp, - /obj/item/attachable/extended_barrel, - ) /obj/item/weapon/gun/rifle/mar40/carbine/set_gun_config_values() ..() @@ -892,13 +850,13 @@ recoil_unwielded = RECOIL_AMOUNT_TIER_3 /obj/item/weapon/gun/rifle/mar40/carbine/tactical - desc = "A cheap, reliable carbine chambered in 7.62x39mm. Commonly found in the hands of criminals or mercenaries. This one has been equipped with an after-market ammo-counter." + desc = "A cheap, reliable carbine chambered in 8.8x29mm. Commonly found in the hands of criminals or mercenaries. This one has been equipped with an after-market ammo-counter." starting_attachment_types = list(/obj/item/attachable/verticalgrip, /obj/item/attachable/suppressor, /obj/item/attachable/magnetic_harness) flags_gun_features = GUN_AMMO_COUNTER|GUN_AUTO_EJECTOR|GUN_CAN_POINTBLANK /obj/item/weapon/gun/rifle/mar40/lmg name = "\improper MAR-50 light machine gun" - desc = "A cheap, reliable LMG chambered in 7.62x39mm. Commonly found in the hands of slightly better funded criminals." + desc = "A cheap, reliable LMG chambered in 8.8x29mm. Commonly found in the hands of slightly better funded criminals." icon_state = "mar50" item_state = "mar50" fire_sound = 'sound/weapons/gun_mar40.ogg' @@ -944,7 +902,7 @@ recoil = RECOIL_AMOUNT_TIER_5 /obj/item/weapon/gun/rifle/mar40/lmg/tactical - desc = "A cheap, reliable LMG chambered in 7.62x39mm. Commonly found in the hands of slightly better funded criminals. This one has been equipped with an after-market ammo-counter." + desc = "A cheap, reliable LMG chambered in 8.8x29mm. Commonly found in the hands of slightly better funded criminals. This one has been equipped with an after-market ammo-counter." starting_attachment_types = list(/obj/item/attachable/mar50barrel, /obj/item/attachable/bipod, /obj/item/attachable/magnetic_harness) flags_gun_features = GUN_AMMO_COUNTER|GUN_CAN_POINTBLANK|GUN_WIELDED_FIRING_ONLY //------------------------------------------------------- diff --git a/code/modules/projectiles/magazines/rifles.dm b/code/modules/projectiles/magazines/rifles.dm index 928355f0145..d79b77d6a24 100644 --- a/code/modules/projectiles/magazines/rifles.dm +++ b/code/modules/projectiles/magazines/rifles.dm @@ -210,9 +210,9 @@ //MAR-40 AK CLONE //AK47 and FN FAL together as one. /obj/item/ammo_magazine/rifle/mar40 - name = "\improper MAR magazine (7.62x39mm)" - desc = "A 7.62x39mm magazine for the MAR series of firearms." - caliber = "7.62x39mm" + name = "\improper MAR magazine (8.8x29mm)" + desc = "A 8.8x29mm magazine for the MAR series of firearms." + caliber = "8.8x29mm" icon = 'icons/obj/items/weapons/guns/ammo_by_faction/colony.dmi' icon_state = "mar40" default_ammo = /datum/ammo/bullet/rifle/mar40 @@ -221,16 +221,16 @@ w_class = SIZE_MEDIUM /obj/item/ammo_magazine/rifle/mar40/extended - name = "\improper MAR extended magazine (7.62x39mm)" - desc = "A 7.62x39mm MAR magazine, this one carries more rounds than the average magazine." + name = "\improper MAR extended magazine (8.8x29mm)" + desc = "A 8.8x29mm magazine, this one carries more rounds than the average magazine." max_rounds = 60 bonus_overlay = "mar40_ex" icon_state = "mar40_extended" /obj/item/ammo_magazine/rifle/mar40/lmg - name = "\improper MAR drum magazine (7.62x39mm)" - desc = "A 7.62x39mm drum magazine for the MAR-50 LMG." - caliber = "7.62x39mm" + name = "\improper MAR drum magazine (8.8x29mm)" + desc = "A 8.8x29mm drum magazine for the MAR-50 LMG." + caliber = "8.8x29mm" icon_state = "mar50" max_rounds = 100 gun_type = /obj/item/weapon/gun/rifle/mar40/lmg @@ -244,7 +244,7 @@ caliber = "5.56x45mm" icon = 'icons/obj/items/weapons/guns/ammo_by_faction/colony.dmi' icon_state = "m16" - default_ammo = /datum/ammo/bullet/rifle + default_ammo = /datum/ammo/bullet/rifle/m16 max_rounds = 20 gun_type = /obj/item/weapon/gun/rifle/m16 w_class = SIZE_MEDIUM @@ -257,7 +257,6 @@ caliber = "5.56x45mm" icon = 'icons/obj/items/weapons/guns/ammo_by_faction/colony.dmi' icon_state = "m16" - default_ammo = /datum/ammo/bullet/rifle max_rounds = 30 gun_type = /obj/item/weapon/gun/rifle/m16 w_class = SIZE_MEDIUM @@ -268,7 +267,7 @@ name = "\improper M16 AP magazine" desc = "An AP 5.56x45mm magazine for the M16 assault rifle and its clones. Holds 20 rounds." caliber = "5.56x45mm" - default_ammo = /datum/ammo/bullet/rifle/ap + default_ammo = /datum/ammo/bullet/rifle/m16/ap max_rounds = 20 gun_type = /obj/item/weapon/gun/rifle/m16 w_class = SIZE_MEDIUM @@ -283,7 +282,7 @@ caliber = "7.62x51mm" icon = 'icons/obj/items/weapons/guns/ammo_by_faction/colony.dmi' icon_state = "ar10" - default_ammo = /datum/ammo/bullet/rifle + default_ammo = /datum/ammo/bullet/rifle/ar10 max_rounds = 20 gun_type = /obj/item/weapon/gun/rifle/ar10 w_class = SIZE_MEDIUM