From de80a965c3715a307271090b654ec1bd63332713 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 27 Aug 2023 23:20:18 -0400 Subject: [PATCH 01/17] LORE UPDATE 27AUG23 LORE UPDATE 27AUG23 --- code/modules/mob/new_player/new_player.dm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 107b16dd4708..2db4dba9fe68 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -48,6 +48,10 @@ output += "

Observe

" + + + + if(!IsGuestKey(src.key)) if(SSdbcore.Connect()) var/isadmin = 0 @@ -75,7 +79,10 @@ output += "" - panel = new(src, "Welcome","Welcome", 210, 280, src) + output += "It is the 26th century, and the galaxy is enjoying an era of relative peace. Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space. For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!" //Murphy Adding a primer blurb, 27AUG23 + + + panel = new(src, "Welcome","Welcome", 500, 480, src) panel.set_window_options("can_close=0") panel.set_content(output) panel.open() From 1337df1bd964cbb671375ee5a56eefac9c8a75f1 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Tue, 29 Aug 2023 22:52:49 -0400 Subject: [PATCH 02/17] De-Russia-fication of bullets converted the 5.45mm round and associated references to 5.56, per discussion with admin team. --- code/datums/uplink/ammunition.dm | 16 ++-- code/datums/uplink/visible_weapons.dm | 2 +- .../subtypes/humanoid/mercs/mercs.dm | 2 +- .../subtypes/vore/corrupt_hounds.dm | 2 +- code/modules/mob/new_player/new_player.dm | 6 +- code/modules/projectiles/ammunition/rounds.dm | 36 ++++----- .../projectiles/guns/projectile/automatic.dm | 12 +-- .../projectiles/guns/projectile/pistol.dm | 2 +- .../modules/projectiles/magazines/unsorted.dm | 76 +++++++++---------- .../modules/projectiles/projectile/bullets.dm | 8 +- 10 files changed, 82 insertions(+), 80 deletions(-) diff --git a/code/datums/uplink/ammunition.dm b/code/datums/uplink/ammunition.dm index 261e7151f1ff..19c0ef9cd82a 100644 --- a/code/datums/uplink/ammunition.dm +++ b/code/datums/uplink/ammunition.dm @@ -66,19 +66,19 @@ path = /obj/item/storage/box/sniperammo /datum/uplink_item/item/ammo/c545 - name = "Rifle Magazine (5.45mm)" + name = "Rifle Magazine (5.56mm)" path = /obj/item/ammo_magazine/m545 /datum/uplink_item/item/ammo/c545/ext - name = "Rifle Magazine (5.45mm Extended)" + name = "Rifle Magazine (5.56mm Extended)" path = /obj/item/ammo_magazine/m545/ext /datum/uplink_item/item/ammo/c545/ap - name = "Rifle Magazine (5.45mm AP)" + name = "Rifle Magazine (5.56mm AP)" path = /obj/item/ammo_magazine/m545/ap /datum/uplink_item/item/ammo/c545/ap/ext - name = "Rifle Magazine (5.45mm AP Extended)" + name = "Rifle Magazine (5.56mm AP Extended)" path = /obj/item/ammo_magazine/m545/ap/ext /datum/uplink_item/item/ammo/c762 @@ -93,12 +93,12 @@ name = "SMG Magazine (10mm)" path = /obj/item/ammo_magazine/m10mm -/datum/uplink_item/item/ammo/a545 - name = "Machinegun Magazine (5.45mm)" +/datum/uplink_item/item/ammo/a556 + name = "Machinegun Magazine (5.56mm)" path = /obj/item/ammo_magazine/m545saw -/datum/uplink_item/item/ammo/a545/ap - name = "Machinegun Magazine (5.45mm AP)" +/datum/uplink_item/item/ammo/a556/ap + name = "Machinegun Magazine (5.56mm AP)" path = /obj/item/ammo_magazine/m545saw/ap /datum/uplink_item/item/ammo/g12 diff --git a/code/datums/uplink/visible_weapons.dm b/code/datums/uplink/visible_weapons.dm index 4fcf803248f7..c20d18a9e24e 100644 --- a/code/datums/uplink/visible_weapons.dm +++ b/code/datums/uplink/visible_weapons.dm @@ -130,7 +130,7 @@ path = /obj/item/gun/ballistic/automatic/c20r /datum/uplink_item/item/visible_weapons/assaultrifle - name = "Assault Rifle (5.45mm)" + name = "Assault Rifle (5.56mm)" item_cost = 75 path = /obj/item/gun/ballistic/automatic/sts35 diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm index 64f9907cf267..ec88660e0e1f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm @@ -449,7 +449,7 @@ base_attack_cooldown = 2.5 // Four Attacks a Second. MOAR DAKKA reload_max = 50 - projectiletype = /obj/projectile/bullet/rifle/a545 + projectiletype = /obj/projectile/bullet/rifle/a556 projectilesound = 'sound/weapons/Gunshot_light.ogg' loot_list = list(/obj/item/gun/ballistic/automatic/lmg = 100) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm index 4fa45400d541..2570380a8e38 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm @@ -114,7 +114,7 @@ reload_max = 6 reload_time = 15 - projectiletype = /obj/projectile/bullet/rifle/a545 + projectiletype = /obj/projectile/bullet/rifle/a556 projectilesound = 'sound/weapons/Gunshot_light.ogg' diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 2db4dba9fe68..47fbbcc287f5 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -78,11 +78,13 @@ output += "

Show News

" output += "" + output +="
" + - output += "It is the 26th century, and the galaxy is enjoying an era of relative peace. Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space. For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!" //Murphy Adding a primer blurb, 27AUG23 + output += "
It is the 26th century, and the galaxy is enjoying an era of relative peace.

Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space.

For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!
" //Murphy Adding a primer blurb, 27AUG23 - panel = new(src, "Welcome","Welcome", 500, 480, src) + panel = new(src, "Welcome","Welcome", 400, 450, src) panel.set_window_options("can_close=0") panel.set_content(output) panel.open() diff --git a/code/modules/projectiles/ammunition/rounds.dm b/code/modules/projectiles/ammunition/rounds.dm index 29a059610eca..40b515ddf7e9 100644 --- a/code/modules/projectiles/ammunition/rounds.dm +++ b/code/modules/projectiles/ammunition/rounds.dm @@ -436,39 +436,39 @@ materials = list(MAT_STEEL = 1250) /* - * 5.45mm + * 5.56mm */ -/obj/item/ammo_casing/a545 - desc = "A 5.45mm bullet casing." - caliber = "5.45mm" +/obj/item/ammo_casing/a556 + desc = "A 5.56mm bullet casing." + caliber = "5.56mm" icon_state = "rifle-casing" - projectile_type = /obj/projectile/bullet/rifle/a545 + projectile_type = /obj/projectile/bullet/rifle/a556 materials = list(MAT_STEEL = 180) -/obj/item/ammo_casing/a545/ap - desc = "A 5.45mm armor-piercing bullet casing." - projectile_type = /obj/projectile/bullet/rifle/a545/ap +/obj/item/ammo_casing/a556/ap + desc = "A 5.56mm armor-piercing bullet casing." + projectile_type = /obj/projectile/bullet/rifle/a556/ap materials = list(MAT_STEEL = 270) -/obj/item/ammo_casing/a545/practice - desc = "A 5.45mm practice bullet casing." +/obj/item/ammo_casing/a556/practice + desc = "A 5.56mm practice bullet casing." icon_state = "rifle-casing" // Need to make an icon for these projectile_type = /obj/projectile/bullet/practice materials = list(MAT_STEEL = 90) -/obj/item/ammo_casing/a545/blank - desc = "A blank 5.45mm bullet casing." +/obj/item/ammo_casing/a556/blank + desc = "A blank 5.56mm bullet casing." projectile_type = /obj/projectile/bullet/blank materials = list(MAT_STEEL = 90) -/obj/item/ammo_casing/a545/hp - desc = "A 5.45mm hollow-point bullet casing." - projectile_type = /obj/projectile/bullet/rifle/a545/hp +/obj/item/ammo_casing/a556/hp + desc = "A 5.56mm hollow-point bullet casing." + projectile_type = /obj/projectile/bullet/rifle/a556/hp -/obj/item/ammo_casing/a545/hunter - desc = "A 5.45mm hunting bullet casing." - projectile_type = /obj/projectile/bullet/rifle/a545/hunter +/obj/item/ammo_casing/a556/hunter + desc = "A 5.56mm hunting bullet casing." + projectile_type = /obj/projectile/bullet/rifle/a556/hunter /* * 10x24mm Caseless diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index 5974e8fd0986..5e6aa3267a7d 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -66,20 +66,20 @@ /obj/item/gun/ballistic/automatic/sts35 name = "assault rifle" - desc = "The rugged STS-35 is a durable automatic weapon of a make popular on the frontier worlds. Uses 5.45mm rounds." + desc = "The rugged STS-35 is a durable automatic weapon of a make popular on the frontier worlds. Uses 5.56mm rounds." icon_state = "arifle" item_state = "arifle" wielded_item_state = "arifle-wielded" item_state = null w_class = ITEMSIZE_LARGE damage_force = 10 - caliber = "5.45mm" + caliber = "5.56mm" origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 1, TECH_ILLEGAL = 4) slot_flags = SLOT_BACK load_method = MAGAZINE magazine_type = /obj/item/ammo_magazine/m545 allowed_magazines = list(/obj/item/ammo_magazine/m545) - projectile_type = /obj/projectile/bullet/rifle/a545 + projectile_type = /obj/projectile/bullet/rifle/a556 mag_insert_sound = 'sound/weapons/guns/interaction/ltrifle_magin.ogg' mag_remove_sound = 'sound/weapons/guns/interaction/ltrifle_magout.ogg' heavy = TRUE @@ -204,20 +204,20 @@ /obj/item/gun/ballistic/automatic/lmg name = "light machine gun" - desc = "A rather traditionally made L6 SAW with a pleasantly lacquered wooden pistol grip. 'Aussec Armoury-2531' is engraved on the reciever. Uses 5.45mm rounds. It's also compatible with magazines from STS-35 assault rifles." + desc = "A rather traditionally made L6 SAW with a pleasantly lacquered wooden pistol grip. 'Aussec Armoury-2531' is engraved on the reciever. Uses 5.56mm rounds. It's also compatible with magazines from STS-35 assault rifles." icon_state = "l6closed50" item_state = "l6closed" w_class = ITEMSIZE_LARGE damage_force = 10 slot_flags = 0 max_shells = 50 - caliber = "5.45mm" + caliber = "5.56mm" origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 1, TECH_ILLEGAL = 2) slot_flags = SLOT_BACK load_method = MAGAZINE magazine_type = /obj/item/ammo_magazine/m545saw allowed_magazines = list(/obj/item/ammo_magazine/m545saw, /obj/item/ammo_magazine/m545) - projectile_type = /obj/projectile/bullet/rifle/a545 + projectile_type = /obj/projectile/bullet/rifle/a556 mag_insert_sound = 'sound/weapons/guns/interaction/lmg_magin.ogg' mag_remove_sound = 'sound/weapons/guns/interaction/lmg_magout.ogg' can_special_reload = FALSE diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 1c5276fcc9fc..a6ae54169573 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -278,7 +278,7 @@ /obj/item/ammo_casing/a12g/stunshell = "12g", /obj/item/ammo_casing/a12g/flare = "12g", /obj/item/ammo_casing/a762 = "7.62mm", - /obj/item/ammo_casing/a545 = "5.45mm" + /obj/item/ammo_casing/a556 = "5.56mm" ) /obj/item/gun/ballistic/pirate/Initialize(mapload) diff --git a/code/modules/projectiles/magazines/unsorted.dm b/code/modules/projectiles/magazines/unsorted.dm index 39597a574ba9..d04d1649a4b2 100644 --- a/code/modules/projectiles/magazines/unsorted.dm +++ b/code/modules/projectiles/magazines/unsorted.dm @@ -642,21 +642,21 @@ name = "ammunition box (10mm haywire)" ammo_type = /obj/item/ammo_casing/a10mm/emp -///////// 5.45mm ///////// +///////// 5.56mm ///////// /obj/item/ammo_magazine/m545 - name = "magazine (5.45mm)" + name = "magazine (5.56mm)" icon_state = "m545" origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE - caliber = "5.45mm" + caliber = "5.56mm" materials = list(MAT_STEEL = 1800) - ammo_type = /obj/item/ammo_casing/a545 + ammo_type = /obj/item/ammo_casing/a556 max_ammo = 20 multiple_sprites = 1 /obj/item/ammo_magazine/m545/ext - name = "extended magazine (5.45mm)" + name = "extended magazine (5.56mm)" materials = list(MAT_STEEL = 2700) max_ammo = 30 @@ -667,31 +667,31 @@ initial_ammo = 0 /obj/item/ammo_magazine/m545/practice - name = "magazine (5.45mm practice)" - ammo_type = /obj/item/ammo_casing/a545/practice + name = "magazine (5.56mm practice)" + ammo_type = /obj/item/ammo_casing/a556/practice /obj/item/ammo_magazine/m545/practice/ext - name = "extended magazine (5.45mm practice)" + name = "extended magazine (5.56mm practice)" max_ammo = 30 /obj/item/ammo_magazine/m545/ap - name = "magazine (5.45mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a545/ap + name = "magazine (5.56mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a556/ap /obj/item/ammo_magazine/m545/ap/ext - name = "extended magazine (5.45mm armor-piercing)" + name = "extended magazine (5.56mm armor-piercing)" max_ammo = 30 /obj/item/ammo_magazine/m545/hunter - name = "magazine (5.45mm hunting)" - ammo_type = /obj/item/ammo_casing/a545/hunter + name = "magazine (5.56mm hunting)" + ammo_type = /obj/item/ammo_casing/a556/hunter /obj/item/ammo_magazine/m545/hunter/ext - name = "extended magazine (5.45mm hunting)" + name = "extended magazine (5.56mm hunting)" max_ammo = 30 /obj/item/ammo_magazine/m545/small - name = "reduced magazine (5.45mm)" + name = "reduced magazine (5.56mm)" icon_state = "m545-small" materials = list(MAT_STEEL = 900) max_ammo = 10 @@ -700,57 +700,57 @@ initial_ammo = 0 /obj/item/ammo_magazine/m545/small/practice - name = "magazine (5.45mm practice)" - ammo_type = /obj/item/ammo_casing/a545/practice + name = "magazine (5.56mm practice)" + ammo_type = /obj/item/ammo_casing/a556/practice /obj/item/ammo_magazine/m545/small/ap - name = "magazine (5.45mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a545/ap + name = "magazine (5.56mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a556/ap /obj/item/ammo_magazine/m545/small/hunter - name = "magazine (5.45mm hunting)" - ammo_type = /obj/item/ammo_casing/a545/hunter + name = "magazine (5.56mm hunting)" + ammo_type = /obj/item/ammo_casing/a556/hunter /obj/item/ammo_magazine/clip/c545 - name = "ammo clip (5.45mm)" + name = "ammo clip (5.56mm)" icon_state = "clip_rifle" - caliber = "5.45mm" - ammo_type = /obj/item/ammo_casing/a545 + caliber = "5.56mm" + ammo_type = /obj/item/ammo_casing/a556 materials = list(MAT_STEEL = 450) // metal costs are very roughly based around one 10mm casing = 180 metal max_ammo = 5 multiple_sprites = 1 /obj/item/ammo_magazine/clip/c545/ap - name = "rifle clip (5.45mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a545/ap + name = "rifle clip (5.56mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a556/ap /obj/item/ammo_magazine/clip/c545/hunter - name = "rifle clip (5.45mm hunting)" - ammo_type = /obj/item/ammo_casing/a545/hunter + name = "rifle clip (5.56mm hunting)" + ammo_type = /obj/item/ammo_casing/a556/hunter /obj/item/ammo_magazine/clip/c545/practice - name = "rifle clip (5.45mm practice)" - ammo_type = /obj/item/ammo_casing/a545 + name = "rifle clip (5.56mm practice)" + ammo_type = /obj/item/ammo_casing/a556 /obj/item/ammo_magazine/m545saw - name = "magazine box (5.45mm)" - icon_state = "a545" + name = "magazine box (5.56mm)" + icon_state = "a556" origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE - caliber = "5.45mm" + caliber = "5.56mm" materials = list(MAT_STEEL = 10000) - ammo_type = /obj/item/ammo_casing/a545 + ammo_type = /obj/item/ammo_casing/a556 w_class = ITEMSIZE_NORMAL // This should NOT fit in your pocket!! max_ammo = 50 multiple_sprites = 1 /obj/item/ammo_magazine/m545saw/ap - name = "magazine box (5.45mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a545/ap + name = "magazine box (5.56mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a556/ap /obj/item/ammo_magazine/m545saw/hunter - name = "magazine box (5.45mm hunting)" - ammo_type = /obj/item/ammo_casing/a545/hunter + name = "magazine box (5.56mm hunting)" + ammo_type = /obj/item/ammo_casing/a556/hunter /obj/item/ammo_magazine/m545saw/empty initial_ammo = 0 diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index a0ced79eee2c..cecfcd874726 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -308,20 +308,20 @@ SA_vulnerability = MOB_CLASS_DEMONIC holy = TRUE -/obj/projectile/bullet/rifle/a545 +/obj/projectile/bullet/rifle/a556 fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' damage = 25 -/obj/projectile/bullet/rifle/a545/ap +/obj/projectile/bullet/rifle/a556/ap damage = 20 armor_penetration = 50 // At 40 or more armor, this will do more damage than standard rounds. -/obj/projectile/bullet/rifle/a545/hp +/obj/projectile/bullet/rifle/a556/hp damage = 35 armor_penetration = -50 penetrating = 0 -/obj/projectile/bullet/rifle/a545/hunter +/obj/projectile/bullet/rifle/a556/hunter damage = 15 SA_bonus_damage = 35 // 50 total on animals. SA_vulnerability = MOB_CLASS_ANIMAL From 9b0962cbe0b90eaa489ac97310ccb38b4bb7b668 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Tue, 29 Aug 2023 23:31:05 -0400 Subject: [PATCH 03/17] Update new_player.dm --- code/modules/mob/new_player/new_player.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 47fbbcc287f5..7511b5d1a91f 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -81,7 +81,7 @@ output +="
" - output += "
It is the 26th century, and the galaxy is enjoying an era of relative peace.

Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space.

For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!
" //Murphy Adding a primer blurb, 27AUG23 + output += "
It is the 26th century, and the galaxy is enjoying an era of relative peace.

Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space.

For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!
" panel = new(src, "Welcome","Welcome", 400, 450, src) From 2c6db0958bc035ddbd557f3c5b656bf48584d47e Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Thu, 31 Aug 2023 18:46:18 -0400 Subject: [PATCH 04/17] Update new_player.dm --- code/modules/mob/new_player/new_player.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 7511b5d1a91f..2ec8fcf4f1b3 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -84,7 +84,7 @@ output += "
It is the 26th century, and the galaxy is enjoying an era of relative peace.

Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space.

For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!
" - panel = new(src, "Welcome","Welcome", 400, 450, src) + panel = new(src, "Welcome","Welcome", 400, 480, src) panel.set_window_options("can_close=0") panel.set_content(output) panel.open() From 34ca128f7068ea32bd6296eebaea434ee58504b2 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sat, 2 Sep 2023 12:09:52 -0400 Subject: [PATCH 05/17] Update new_player.dm --- code/modules/mob/new_player/new_player.dm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 2ec8fcf4f1b3..bf2923cf46f6 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -78,13 +78,10 @@ output += "

Show News

" output += "" - output +="
" - - output += "
It is the 26th century, and the galaxy is enjoying an era of relative peace.

Whether you hail from the human-aligned worlds of the Orion Confederation, the Unathi-dominated Alliance of Three Hands, or the alien-centric Skrell controlled Vikaran Combine, you find yourself on the frontier, working for an NT crew on the edge of Orion Confederation space.

For more information, please see our Wiki via the button on the upper right of your screen! Simply press 'Okay' when prompted!
" - panel = new(src, "Welcome","Welcome", 400, 480, src) + panel = new(src, "Welcome","Welcome", 210, 280, src) panel.set_window_options("can_close=0") panel.set_content(output) panel.open() From 9edc5549a7fabab126b8af4872db2f0e3ff126d1 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 1 Sep 2024 14:43:37 -0400 Subject: [PATCH 06/17] Adds in a Gauss rifle, Gauss bullet, and AC10. No, you can't stop me. --- .../modules/projectiles/projectile/bullets.dm | 7 +++++ .../research/designs/mechfab_designs.dm | 10 +++++++ .../equipment/weapons/ballistic/automatic.dm | 28 +++++++++++++++++++ 3 files changed, 45 insertions(+) diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index c6d6b9ef8960..0a4ef7e7224b 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -334,6 +334,13 @@ armor_penetration = 80 hitscan = 1 //so the PTR isn't useless as a sniper weapon +/obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. + fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. + damage = 60 + penetrating = 1 + armor_penetration = 60 + //hitscan = 1 // fuck this shit + /* Miscellaneous */ /obj/projectile/bullet/suffocationbullet//How does this even work? diff --git a/code/modules/research/designs/mechfab_designs.dm b/code/modules/research/designs/mechfab_designs.dm index 6ab674d5452f..7ae1195b9106 100644 --- a/code/modules/research/designs/mechfab_designs.dm +++ b/code/modules/research/designs/mechfab_designs.dm @@ -514,6 +514,16 @@ id = "mech_lmg" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg +/datum/design/science/mecha/lmg_heavy + design_name = "AC 10" + id = "mech_lmg_heavy" + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg_heavy + +/datum/design/science/mecha/gauss_rifle + design_name = "Gauss Rifle" + id = "mech_gauss_rifle" + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle + /datum/design/science/mecha/rigged_lmg design_name = "Jury-Rigged Machinegun" id = "mech_lmg-r" diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index 7bc1b1c89d12..87cb20cc7934 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -11,6 +11,34 @@ projectile_energy_cost = 20 fire_cooldown = 2 +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg_heavy + name = "\improper AC 10" + desc = "The original in anti-mech firepower, the standard Hephaestus Autocannon MK10 design fires AP slugs in order to damage other heavy armor suits. This does mean its rate between bursts is longer than most." + icon_state = "mecha_uac2" + equip_cooldown = 30 + projectile = /obj/projectile/bullet/rifle/a762/ap + fire_sound = 'sound/weapons/Gunshot_deagle.ogg' + projectiles = 20 //Mag size + projectiles_per_shot = 2 + deviation = 0.3 + projectile_energy_cost = 60 + fire_cooldown = 2 + + + +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle + name = "\improper Gauss Rifle" + desc = "The current standard in non-laser, anti-armor firepower, this weapon is the same as those mounted on light tanks for their primary weapon. Fires a single nickle-iron slug at high speed. Requires a long charge time between shots. " + icon_state = "mecha_uac2-rig" + equip_cooldown = 45 + projectile = /obj/projectile/bullet/mecha/a12mm_gauss + fire_sound = 'sound/weapons/Gunshot_cannon.ogg' + projectiles = 10 //Mag size + projectiles_per_shot = 1 + deviation = 0.3 + projectile_energy_cost = 100 + fire_cooldown = 2 + /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg/rigged name = "jury-rigged machinegun" desc = "The cross between a jackhammer and a whole lot of zipguns." From 7a2b8cb3729f9694303e1a3cac63090002c59683 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 1 Sep 2024 17:32:23 -0400 Subject: [PATCH 07/17] Second try, adding the gauss, AC10 and such. Work this time dammit --- code/modules/projectiles/projectile/bullets.dm | 1 - .../sealed/mecha/equipment/weapons/ballistic/automatic.dm | 7 ++----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 0a4ef7e7224b..0d3eaee5d817 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -339,7 +339,6 @@ damage = 60 penetrating = 1 armor_penetration = 60 - //hitscan = 1 // fuck this shit /* Miscellaneous */ diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index 87cb20cc7934..1e2a6ebe424d 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -15,7 +15,7 @@ name = "\improper AC 10" desc = "The original in anti-mech firepower, the standard Hephaestus Autocannon MK10 design fires AP slugs in order to damage other heavy armor suits. This does mean its rate between bursts is longer than most." icon_state = "mecha_uac2" - equip_cooldown = 30 + equip_cooldown = 3 SECONDS projectile = /obj/projectile/bullet/rifle/a762/ap fire_sound = 'sound/weapons/Gunshot_deagle.ogg' projectiles = 20 //Mag size @@ -24,20 +24,17 @@ projectile_energy_cost = 60 fire_cooldown = 2 - - /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle name = "\improper Gauss Rifle" desc = "The current standard in non-laser, anti-armor firepower, this weapon is the same as those mounted on light tanks for their primary weapon. Fires a single nickle-iron slug at high speed. Requires a long charge time between shots. " icon_state = "mecha_uac2-rig" - equip_cooldown = 45 + equip_cooldown = 4 SECONDS projectile = /obj/projectile/bullet/mecha/a12mm_gauss fire_sound = 'sound/weapons/Gunshot_cannon.ogg' projectiles = 10 //Mag size projectiles_per_shot = 1 deviation = 0.3 projectile_energy_cost = 100 - fire_cooldown = 2 /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg/rigged name = "jury-rigged machinegun" From 94f49f033549b3275b7a54848bfb3151d41ffab8 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 1 Sep 2024 17:34:12 -0400 Subject: [PATCH 08/17] TAKE. THREE. --- .../sealed/mecha/equipment/weapons/ballistic/automatic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index 1e2a6ebe424d..af8016f42955 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -15,7 +15,7 @@ name = "\improper AC 10" desc = "The original in anti-mech firepower, the standard Hephaestus Autocannon MK10 design fires AP slugs in order to damage other heavy armor suits. This does mean its rate between bursts is longer than most." icon_state = "mecha_uac2" - equip_cooldown = 3 SECONDS + equip_cooldown = 2 SECONDS projectile = /obj/projectile/bullet/rifle/a762/ap fire_sound = 'sound/weapons/Gunshot_deagle.ogg' projectiles = 20 //Mag size From 3fc451839f59394a9405e5d8caac2bbec2a7715e Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 1 Sep 2024 17:38:51 -0400 Subject: [PATCH 09/17] OKAY, FINE, FIXING CAPITALIZATION --- .../sealed/mecha/equipment/weapons/ballistic/automatic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index af8016f42955..621bd64cc8e5 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -25,7 +25,7 @@ fire_cooldown = 2 /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle - name = "\improper Gauss Rifle" + name = "\improper gauss rifle" desc = "The current standard in non-laser, anti-armor firepower, this weapon is the same as those mounted on light tanks for their primary weapon. Fires a single nickle-iron slug at high speed. Requires a long charge time between shots. " icon_state = "mecha_uac2-rig" equip_cooldown = 4 SECONDS From c2f3e3f6999b6f60f57a031d7c7deed9cfa93406 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Sun, 1 Sep 2024 18:16:32 -0400 Subject: [PATCH 10/17] AAAA I MISSED SOMETHING. --- .../sealed/mecha/equipment/weapons/ballistic/automatic.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index 621bd64cc8e5..9cf6250926bc 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -33,7 +33,6 @@ fire_sound = 'sound/weapons/Gunshot_cannon.ogg' projectiles = 10 //Mag size projectiles_per_shot = 1 - deviation = 0.3 projectile_energy_cost = 100 /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg/rigged From 7ce0d49228ce814d926d56cc86804e844f14b450 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Mon, 2 Sep 2024 20:24:39 -0400 Subject: [PATCH 11/17] WORK DAMMIT --- .../modules/projectiles/projectile/bullets.dm | 565 ++++++++++++++++++ 1 file changed, 565 insertions(+) create mode 100644 code/modules/projectiles/projectile/bullets.dm diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm new file mode 100644 index 000000000000..0d3eaee5d817 --- /dev/null +++ b/code/modules/projectiles/projectile/bullets.dm @@ -0,0 +1,565 @@ +/obj/projectile/bullet + name = "bullet" + icon_state = "bullet" + fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' + damage = 60 + damage_type = BRUTE + nodamage = 0 + damage_flag = ARMOR_BULLET + embed_chance = 20 //Modified in the actual embed process, but this should keep embed chance about the same + sharp = 1 + var/mob_passthrough_check = 0 + + muzzle_type = /obj/effect/projectile/muzzle/bullet + miss_sounds = list('sound/weapons/guns/miss1.ogg','sound/weapons/guns/miss2.ogg','sound/weapons/guns/miss3.ogg','sound/weapons/guns/miss4.ogg') + ricochet_sounds = list('sound/weapons/guns/ricochet1.ogg', 'sound/weapons/guns/ricochet2.ogg', + 'sound/weapons/guns/ricochet3.ogg', 'sound/weapons/guns/ricochet4.ogg') + impact_sounds = list(BULLET_IMPACT_MEAT = SOUNDS_BULLET_MEAT, BULLET_IMPACT_METAL = SOUNDS_BULLET_METAL) + +/obj/projectile/bullet/on_hit(var/atom/target, var/blocked = 0) + if (..(target, blocked)) + var/mob/living/L = target + shake_camera(L, 3, 2) + +/obj/projectile/bullet/projectile_attack_mob(var/mob/living/target_mob, var/distance, var/miss_modifier) + if(penetrating > 0 && damage > 20 && prob(damage)) + mob_passthrough_check = 1 + else + mob_passthrough_check = 0 + return ..() + +/obj/projectile/bullet/can_embed() + //prevent embedding if the projectile is passing through the mob + if(mob_passthrough_check) + return 0 + return ..() + +/obj/projectile/bullet/check_penetrate(var/atom/A) + if(!A || !A.density) return 1 //if whatever it was got destroyed when we hit it, then I guess we can just keep going + + if(istype(A, /obj/vehicle/sealed/mecha)) + return 1 //mecha have their own penetration handling + + if(ismob(A)) + if(!mob_passthrough_check) + return 0 + if(iscarbon(A)) + damage *= 0.7 //squishy mobs absorb KE + return 1 + + var/chance = damage + if(istype(A, /turf/simulated/wall)) + var/turf/simulated/wall/W = A + chance = round(damage/W.material_outer.density*1.8) + else if(istype(A, /obj/machinery/door)) + var/obj/machinery/door/D = A + chance = round(damage/D.integrity_max*180) + if(D.glass) chance *= 2 + else if(istype(A, /obj/structure/girder)) + chance = 100 + + if(prob(chance)) + if(A.opacity) + //display a message so that people on the other side aren't so confused + A.visible_message("\The [src] pierces through \the [A]!") + return 1 + + return 0 + +/* short-casing projectiles, like the kind used in pistols or SMGs */ + +/obj/projectile/bullet/pistol // 9mm pistols and most SMGs. Sacrifice power for capacity. + fire_sound = 'sound/weapons/weaponsounds_smallpistolshot.ogg' + damage = 20 + +/obj/projectile/bullet/pistol/lap //Light Armor Piercing + damage = 20 + armor_penetration = 10 + +/obj/projectile/bullet/pistol/ap + damage = 15 + armor_penetration = 30 + +/obj/projectile/bullet/pistol/hp + damage = 25 + armor_penetration = -50 + +/obj/projectile/bullet/pistol/hunter + damage = 15 + SA_bonus_damage = 25 // 40 total against animals + SA_vulnerability = MOB_CLASS_ANIMAL + embed_chance = -1 + +/obj/projectile/bullet/pistol/silver + damage = 15 + SA_bonus_damage = 25 // 40 total against demons + SA_vulnerability = MOB_CLASS_DEMONIC + embed_chance = -1 + holy = TRUE + +/obj/projectile/bullet/pistol/medium // .45 (and maybe .40 if it ever gets added) caliber security pistols. Balance between capacity and power. + fire_sound = 'sound/weapons/weaponsounds_pistolshot.ogg' // Snappier sound. + damage = 25 + +/obj/projectile/bullet/pistol/medium/ap + damage = 20 + armor_penetration = 15 + +/obj/projectile/bullet/pistol/medium/hp + damage = 30 + armor_penetration = -50 + +/obj/projectile/bullet/pistol/medium/hunter + damage = 15 + SA_bonus_damage = 45 // 60 total against animals + SA_vulnerability = MOB_CLASS_ANIMAL + embed_chance = -1 + +/obj/projectile/bullet/pistol/medium/silver + damage = 15 + SA_bonus_damage = 45 // 60 total against demons + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + embed_chance = -1 + holy = TRUE + +/obj/projectile/bullet/pistol/medium/ap/suppressor // adminspawn only + name = "suppressor bullet" // this guy is Important and also Hates You + fire_sound = 'sound/weapons/doompistol.ogg' // converted from .wavs extracted from doom 2 + damage = 10 // high rof kinda fucked up lets be real + agony = 10 // brute easily heals, agony not so much + armor_penetration = 30 // reduces shield blockchance + accuracy = -20 // he do miss actually + speed = 25 * WORLD_ICON_SIZE + +/obj/projectile/bullet/pistol/medium/ap/suppressor/turbo // spicy boys + speed = 50 * WORLD_ICON_SIZE + +/obj/projectile/bullet/pistol/strong // .357 and .44 caliber stuff. High power pistols like the Mateba or Desert Eagle. Sacrifice capacity for power. + fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' + damage = 60 + +/obj/projectile/bullet/pistol/strong/silver //Because all Demons need to die + fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' + damage = 40 + SA_bonus_damage = 80 // 120 total against demons + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + embed_chance = -1 + holy = TRUE + +/obj/projectile/bullet/pistol/rubber/strong // "Rubber" bullets for high power pistols. + fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' // Rubber shots have less powder, but these still have more punch than normal rubber shot. + damage = 10 + agony = 60 + embed_chance = 0 + sharp = 0 + damage_flag = ARMOR_MELEE + +/obj/projectile/bullet/pistol/rubber // "Rubber" bullets for all other pistols. + name = "rubber bullet" + damage = 5 + agony = 40 + embed_chance = 0 + sharp = 0 + damage_flag = ARMOR_MELEE + fire_sound ='sound/weapons/weaponsounds_smallpistolshot.ogg' // It may be rubber shots but it's still a gun homie it shouldn't be as pathetic as it was + +/obj/projectile/bullet/pistol/spin // Special weak ammo for Service Spin mode. + fire_sound = 'sound/weapons/weaponsounds_smallpistolshot.ogg' + damage = 5 + SA_bonus_damage = 10 // 15 total against demons + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + holy = TRUE + +/* shotgun projectiles */ + +/obj/projectile/bullet/shotgun + name = "slug" + fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' + damage = 50 + armor_penetration = 15 + +/obj/projectile/bullet/shotgun/beanbag //because beanbags are not bullets + name = "beanbag" + damage = 20 + agony = 60 + embed_chance = 0 + sharp = 0 + damage_flag = ARMOR_MELEE + +//Should do about 80 damage at 1 tile distance (adjacent), and 50 damage at 3 tiles distance. +//Overall less damage than slugs in exchange for more damage at very close range and more embedding +/obj/projectile/bullet/pellet/shotgun + name = "shrapnel" + fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' + damage = 13 + pellets = 6 + range_step = 1 + spread_step = 10 + +/obj/projectile/bullet/pellet/shotgun_improvised + name = "shrapnel" + damage = 1 + pellets = 10 + range_step = 1 + spread_step = 10 + +/obj/projectile/bullet/pellet/shotgun/flak + damage = 2 //The main weapon using these fires four at a time, usually with different destinations. Usually. + range_step = 2 + spread_step = 30 + armor_penetration = 10 + +// This is my boomstick, +/obj/projectile/bullet/pellet/shotgun/silver + name = "shrapnel" + fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' + damage = 10 + SA_bonus_damage = 16 // Potential 156 Damage against demons at point blank. + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + embed_chance = -1 + pellets = 6 + range_step = 1 + spread_step = 20 + holy = TRUE + +/obj/projectile/bullet/shotgun/stake + name = "stake" + fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' + damage = 50 + armor_penetration = 15 + SA_bonus_damage = 16 // Potential 156 Damage against demons at point blank. + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + holy = TRUE + +//EMP shotgun 'slug', it's basically a beanbag that pops a tiny emp when it hits. //Not currently used +/obj/projectile/bullet/shotgun/ion + name = "ion slug" + fire_sound = 'sound/weapons/gunshot/gunshot_tech_huge.ogg' + damage = 15 + embed_chance = 0 + sharp = 0 + damage_flag = ARMOR_MELEE + + combustion = FALSE + +/obj/projectile/bullet/shotgun/ion/on_hit(var/atom/target, var/blocked = 0) + ..() + empulse(target, 0, 0, 2, 0) //Only affects what it hits + return 1 + +//Frag shot +/obj/projectile/bullet/shotgun/frag12 + name ="frag12 slug" + damage = 25 + +/obj/projectile/bullet/shotgun/frag12/on_hit(atom/target, blocked = FALSE) + ..() + explosion(target, -1, 0, 1) + return 1 + +/* "Rifle" rounds */ + +/obj/projectile/bullet/rifle + fire_sound = 'sound/weapons/Gunshot_generic_rifle.ogg' + armor_penetration = 15 + penetrating = 1 + +/obj/projectile/bullet/rifle/a762 + fire_sound = 'sound/weapons/weaponsounds_heavyrifleshot.ogg' + damage = 35 + +/obj/projectile/bullet/rifle/a762/sniper // Hitscan specifically for sniper ammo; to be implimented at a later date, probably for the SVD. -Ace + fire_sound = 'sound/weapons/weaponsounds_heavyrifleshot.ogg' + hitscan = 1 //so the ammo isn't useless as a sniper weapon + +/obj/projectile/bullet/rifle/a762/ap + damage = 30 + armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds. + +/obj/projectile/bullet/rifle/a762/ap/silver + damage = 30 + armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds. + SA_bonus_damage = 30 // 60 total against demons + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + holy = TRUE + +/obj/projectile/bullet/rifle/a762/hp + damage = 40 + armor_penetration = -50 + penetrating = 0 + +/obj/projectile/bullet/rifle/a762/hunter // Optimized for killing simple animals and not people, because Balance(tm) + damage = 25 + SA_bonus_damage = 45 // 70 total on animals. + SA_vulnerability = MOB_CLASS_ANIMAL + embed_chance = -1 + +/obj/projectile/bullet/rifle/a762/sniperhunter + damage = 25 + SA_bonus_damage = 45 // 70 total on animals. + SA_vulnerability = MOB_CLASS_ANIMAL + embed_chance = -1 + speed = 25 * WORLD_ICON_SIZE + +/obj/projectile/bullet/rifle/a762/silver // Hunting Demons with bolt action rifles. + damage = 20 + SA_bonus_damage = 50 // 70 total on animals. + SA_vulnerability = MOB_CLASS_DEMONIC + holy = TRUE + +/obj/projectile/bullet/rifle/a556 + fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' + damage = 25 + +/obj/projectile/bullet/rifle/a556/ap + damage = 20 + armor_penetration = 50 // At 40 or more armor, this will do more damage than standard rounds. + +/obj/projectile/bullet/rifle/a556/hp + damage = 35 + armor_penetration = -50 + penetrating = 0 + +/obj/projectile/bullet/rifle/a556/hunter + damage = 15 + SA_bonus_damage = 35 // 50 total on animals. + SA_vulnerability = MOB_CLASS_ANIMAL + +/obj/projectile/bullet/rifle/a12_7mm // 14.5×114mm is bigger than a .50 BMG round. + fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. + damage = 80 + stun = 3 + weaken = 3 + penetrating = 5 + armor_penetration = 80 + hitscan = 1 //so the PTR isn't useless as a sniper weapon + +/obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. + fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. + damage = 60 + penetrating = 1 + armor_penetration = 60 + +/* Miscellaneous */ + +/obj/projectile/bullet/suffocationbullet//How does this even work? + name = "co bullet" + damage = 20 + damage_type = OXY + +/obj/projectile/bullet/cyanideround + name = "poison bullet" + damage = 40 + damage_type = TOX + +/obj/projectile/bullet/cyanideround/jezzail + name = "toxic penetrator shard" + damage = 25 + armor_penetration = 20 + agony = 5 + embed_chance = 1 + damage_type = TOX + +/obj/projectile/bullet/burstbullet + name = "exploding bullet" + fire_sound = 'sound/soundbytes/effects/explosion/explosion1.ogg' + damage = 20 + embed_chance = 0 + edge = 1 + +/obj/projectile/bullet/burstbullet/on_hit(var/atom/target, var/blocked = 0) + if(isturf(target)) + explosion(target, -1, 0, 2) + ..() + +/obj/projectile/bullet/burstbullet/service + name = "charge bullet" + fire_sound = 'sound/soundbytes/effects/explosion/explosion1.ogg' + damage = 20 + embed_chance = 0 + edge = 1 + SA_bonus_damage = 40 // 60 total damage against demons. + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + holy = TRUE + +/obj/projectile/bullet/burstbullet/service/on_hit(var/atom/target, var/blocked = 0) + if(isturf(target)) + explosion(target, 0, 1, 2) + ..() + +/* Black Powder */ + +/obj/projectile/bullet/musket // Big Slow and bad against armor. + fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' + damage = 60 + speed = 8.3 * WORLD_ICON_SIZE + armor_penetration = -50 + +/obj/projectile/bullet/musket/silver // What its a classic + damage = 25 + SA_bonus_damage = 75 + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + embed_chance = -1 + holy = TRUE + +/obj/projectile/bullet/pellet/blunderbuss //More Damage at close range greater falloff + damage = 10 + pellets = 8 + range_step = 0.5 //Very quick falloff + spread_step = 30 + +/obj/projectile/bullet/pellet/blunderbuss/silver + damage = 5 + SA_bonus_damage = 15 + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + embed_chance = -1 + holy = TRUE + +//10 Gauge Shot +/obj/projectile/bullet/heavy_shotgun + name = "heavy slug" + fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' + damage = 60 + armor_penetration = 25 + +/obj/projectile/bullet/pellet/heavy_shotgun //I want this to use similar calcuations to blunderbuss shot for falloff. + damage = 3 //Fires five pellets at a time. + range_step = 0.75 + spread_step = 30 + armor_penetration = 10 + +/obj/projectile/bullet/pellet/heavy_shotgun/silver + damage = 3 + SA_bonus_damage = 3 + SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION + holy = TRUE + +//Special 10g rounds for Grit, since I don't want ALL 10g to do this: +/obj/projectile/bullet/heavy_shotgun/grit + name = "custom heavy slug" + +/obj/projectile/bullet/heavy_shotgun/grit/on_hit(var/atom/movable/target, var/blocked = 0) + if(isliving(target)) + var/mob/living/L = target + var/throwdir = get_dir(firer,L) + if(prob(10) && !blocked) + L.afflict_stun(20 * 1) + L.Confuse(1) + L.throw_at_old(get_edge_target_turf(L, throwdir), rand(3,6), 10) + + return 1 + +/obj/projectile/bullet/pellet/heavy_shotgun/grit + name = "heavy buckshot" + range_step = 1 + +/obj/projectile/bullet/pellet/heavy_shotgun/grit/on_hit(var/atom/movable/target, var/blocked = 0) + if(isliving(target)) + var/mob/living/L = target + var/throwdir = get_dir(firer,L) + if(prob(10) && !blocked) + L.afflict_stun(20 * 1) + L.Confuse(1) + L.throw_at_old(get_edge_target_turf(L, throwdir), rand(3,6), 10) + + return 1 + +/* Incendiary */ + +/obj/projectile/bullet/incendiary + name = "incendiary bullet" + icon_state = "bullet_alt" + damage = 15 + damage_type = BURN + incendiary = 1 + flammability = 2 + +/obj/projectile/bullet/incendiary/shotgun + name = "dragonsbreath pellet" + icon_state = "bullet_alt" + damage = 10 + damage_type = BURN + incendiary = 1 + flammability = 2 + +/obj/projectile/bullet/incendiary/flamethrower + name = "ball of fire" + desc = "Don't stand in the fire." + icon_state = "fireball" + damage = 10 + embed_chance = 0 + //incendiary = 2 //The Trail of Fire doesn't work. + flammability = 4 + agony = 30 + range = WORLD_ICON_SIZE * 4 + vacuum_traversal = 0 + +/obj/projectile/bullet/incendiary/flamethrower/weak + flammability = 2 + +/obj/projectile/bullet/incendiary/flamethrower/large + damage = 15 + range = WORLD_ICON_SIZE * 6 + +/obj/projectile/bullet/incendiary/caseless + name = "12.7mm phoron slug" + icon_state = "bullet_alt" + damage = 60 + damage_type = BRUTE + incendiary = 1 + flammability = 4 + armor_penetration = 40 + penetrating = 5 + combustion = TRUE + +/obj/projectile/bullet/incendiary/caseless/on_hit(var/atom/movable/target, var/blocked = 0) + if(isliving(target)) + var/mob/living/L = target + L.adjustFireLoss(10) + +/obj/projectile/bullet/incendiary/phoronshrap + name = "phoron shrapnel slug" + icon_state = "bullet_alt" + damage = 40 + armor_penetration = 30 + damage_type = BRUTE + incendiary = 1 + flammability = 4 + penetrating = 1 + combustion = TRUE + + +/* Practice rounds and blanks */ + +/obj/projectile/bullet/practice + damage = 5 + +/obj/projectile/bullet/pistol/cap // Just the primer, such as a cap gun. + name = "cap" + damage_type = HALLOSS + fire_sound = 'sound/effects/snap.ogg' + damage = 0 + nodamage = 1 + embed_chance = 0 + sharp = 0 + incendiary = 1 + flammability = 4 + + combustion = FALSE + +/obj/projectile/bullet/pistol/cap/process(delta_time) + loc = null + qdel(src) + +/obj/projectile/bullet/blank + name = "blank" + damage_type = HALLOSS + fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' // Blanks still make loud noises. + damage = 0 + nodamage = 1 + embed_chance = 0 + sharp = 0 + +/obj/projectile/bullet/blank/cap/process(delta_time) + loc = null + qdel(src) From 21099bd40bd8db26db4a6014b26522e2cd0c1ded Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Mon, 2 Sep 2024 20:40:50 -0400 Subject: [PATCH 12/17] WORK YOU SUMBITCH --- code/modules/projectiles/projectile/subtypes/bullets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/projectile/subtypes/bullets.dm b/code/modules/projectiles/projectile/subtypes/bullets.dm index 00eb3c805562..11458f9cd56a 100644 --- a/code/modules/projectiles/projectile/subtypes/bullets.dm +++ b/code/modules/projectiles/projectile/subtypes/bullets.dm @@ -311,7 +311,7 @@ /obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. damage = 60 - penetrating = 1 + legacy_penetrating = 1 armor_penetration = 60 /* Miscellaneous */ From 193989abe0efeee979640c8fb6b40fa8ee79efac Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Tue, 3 Sep 2024 00:00:51 -0400 Subject: [PATCH 13/17] WORK YOU MOTHER- --- .../modules/projectiles/projectile/bullets.dm | 565 ------------------ 1 file changed, 565 deletions(-) delete mode 100644 code/modules/projectiles/projectile/bullets.dm diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm deleted file mode 100644 index 0d3eaee5d817..000000000000 --- a/code/modules/projectiles/projectile/bullets.dm +++ /dev/null @@ -1,565 +0,0 @@ -/obj/projectile/bullet - name = "bullet" - icon_state = "bullet" - fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' - damage = 60 - damage_type = BRUTE - nodamage = 0 - damage_flag = ARMOR_BULLET - embed_chance = 20 //Modified in the actual embed process, but this should keep embed chance about the same - sharp = 1 - var/mob_passthrough_check = 0 - - muzzle_type = /obj/effect/projectile/muzzle/bullet - miss_sounds = list('sound/weapons/guns/miss1.ogg','sound/weapons/guns/miss2.ogg','sound/weapons/guns/miss3.ogg','sound/weapons/guns/miss4.ogg') - ricochet_sounds = list('sound/weapons/guns/ricochet1.ogg', 'sound/weapons/guns/ricochet2.ogg', - 'sound/weapons/guns/ricochet3.ogg', 'sound/weapons/guns/ricochet4.ogg') - impact_sounds = list(BULLET_IMPACT_MEAT = SOUNDS_BULLET_MEAT, BULLET_IMPACT_METAL = SOUNDS_BULLET_METAL) - -/obj/projectile/bullet/on_hit(var/atom/target, var/blocked = 0) - if (..(target, blocked)) - var/mob/living/L = target - shake_camera(L, 3, 2) - -/obj/projectile/bullet/projectile_attack_mob(var/mob/living/target_mob, var/distance, var/miss_modifier) - if(penetrating > 0 && damage > 20 && prob(damage)) - mob_passthrough_check = 1 - else - mob_passthrough_check = 0 - return ..() - -/obj/projectile/bullet/can_embed() - //prevent embedding if the projectile is passing through the mob - if(mob_passthrough_check) - return 0 - return ..() - -/obj/projectile/bullet/check_penetrate(var/atom/A) - if(!A || !A.density) return 1 //if whatever it was got destroyed when we hit it, then I guess we can just keep going - - if(istype(A, /obj/vehicle/sealed/mecha)) - return 1 //mecha have their own penetration handling - - if(ismob(A)) - if(!mob_passthrough_check) - return 0 - if(iscarbon(A)) - damage *= 0.7 //squishy mobs absorb KE - return 1 - - var/chance = damage - if(istype(A, /turf/simulated/wall)) - var/turf/simulated/wall/W = A - chance = round(damage/W.material_outer.density*1.8) - else if(istype(A, /obj/machinery/door)) - var/obj/machinery/door/D = A - chance = round(damage/D.integrity_max*180) - if(D.glass) chance *= 2 - else if(istype(A, /obj/structure/girder)) - chance = 100 - - if(prob(chance)) - if(A.opacity) - //display a message so that people on the other side aren't so confused - A.visible_message("\The [src] pierces through \the [A]!") - return 1 - - return 0 - -/* short-casing projectiles, like the kind used in pistols or SMGs */ - -/obj/projectile/bullet/pistol // 9mm pistols and most SMGs. Sacrifice power for capacity. - fire_sound = 'sound/weapons/weaponsounds_smallpistolshot.ogg' - damage = 20 - -/obj/projectile/bullet/pistol/lap //Light Armor Piercing - damage = 20 - armor_penetration = 10 - -/obj/projectile/bullet/pistol/ap - damage = 15 - armor_penetration = 30 - -/obj/projectile/bullet/pistol/hp - damage = 25 - armor_penetration = -50 - -/obj/projectile/bullet/pistol/hunter - damage = 15 - SA_bonus_damage = 25 // 40 total against animals - SA_vulnerability = MOB_CLASS_ANIMAL - embed_chance = -1 - -/obj/projectile/bullet/pistol/silver - damage = 15 - SA_bonus_damage = 25 // 40 total against demons - SA_vulnerability = MOB_CLASS_DEMONIC - embed_chance = -1 - holy = TRUE - -/obj/projectile/bullet/pistol/medium // .45 (and maybe .40 if it ever gets added) caliber security pistols. Balance between capacity and power. - fire_sound = 'sound/weapons/weaponsounds_pistolshot.ogg' // Snappier sound. - damage = 25 - -/obj/projectile/bullet/pistol/medium/ap - damage = 20 - armor_penetration = 15 - -/obj/projectile/bullet/pistol/medium/hp - damage = 30 - armor_penetration = -50 - -/obj/projectile/bullet/pistol/medium/hunter - damage = 15 - SA_bonus_damage = 45 // 60 total against animals - SA_vulnerability = MOB_CLASS_ANIMAL - embed_chance = -1 - -/obj/projectile/bullet/pistol/medium/silver - damage = 15 - SA_bonus_damage = 45 // 60 total against demons - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - embed_chance = -1 - holy = TRUE - -/obj/projectile/bullet/pistol/medium/ap/suppressor // adminspawn only - name = "suppressor bullet" // this guy is Important and also Hates You - fire_sound = 'sound/weapons/doompistol.ogg' // converted from .wavs extracted from doom 2 - damage = 10 // high rof kinda fucked up lets be real - agony = 10 // brute easily heals, agony not so much - armor_penetration = 30 // reduces shield blockchance - accuracy = -20 // he do miss actually - speed = 25 * WORLD_ICON_SIZE - -/obj/projectile/bullet/pistol/medium/ap/suppressor/turbo // spicy boys - speed = 50 * WORLD_ICON_SIZE - -/obj/projectile/bullet/pistol/strong // .357 and .44 caliber stuff. High power pistols like the Mateba or Desert Eagle. Sacrifice capacity for power. - fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' - damage = 60 - -/obj/projectile/bullet/pistol/strong/silver //Because all Demons need to die - fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' - damage = 40 - SA_bonus_damage = 80 // 120 total against demons - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - embed_chance = -1 - holy = TRUE - -/obj/projectile/bullet/pistol/rubber/strong // "Rubber" bullets for high power pistols. - fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' // Rubber shots have less powder, but these still have more punch than normal rubber shot. - damage = 10 - agony = 60 - embed_chance = 0 - sharp = 0 - damage_flag = ARMOR_MELEE - -/obj/projectile/bullet/pistol/rubber // "Rubber" bullets for all other pistols. - name = "rubber bullet" - damage = 5 - agony = 40 - embed_chance = 0 - sharp = 0 - damage_flag = ARMOR_MELEE - fire_sound ='sound/weapons/weaponsounds_smallpistolshot.ogg' // It may be rubber shots but it's still a gun homie it shouldn't be as pathetic as it was - -/obj/projectile/bullet/pistol/spin // Special weak ammo for Service Spin mode. - fire_sound = 'sound/weapons/weaponsounds_smallpistolshot.ogg' - damage = 5 - SA_bonus_damage = 10 // 15 total against demons - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - holy = TRUE - -/* shotgun projectiles */ - -/obj/projectile/bullet/shotgun - name = "slug" - fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' - damage = 50 - armor_penetration = 15 - -/obj/projectile/bullet/shotgun/beanbag //because beanbags are not bullets - name = "beanbag" - damage = 20 - agony = 60 - embed_chance = 0 - sharp = 0 - damage_flag = ARMOR_MELEE - -//Should do about 80 damage at 1 tile distance (adjacent), and 50 damage at 3 tiles distance. -//Overall less damage than slugs in exchange for more damage at very close range and more embedding -/obj/projectile/bullet/pellet/shotgun - name = "shrapnel" - fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' - damage = 13 - pellets = 6 - range_step = 1 - spread_step = 10 - -/obj/projectile/bullet/pellet/shotgun_improvised - name = "shrapnel" - damage = 1 - pellets = 10 - range_step = 1 - spread_step = 10 - -/obj/projectile/bullet/pellet/shotgun/flak - damage = 2 //The main weapon using these fires four at a time, usually with different destinations. Usually. - range_step = 2 - spread_step = 30 - armor_penetration = 10 - -// This is my boomstick, -/obj/projectile/bullet/pellet/shotgun/silver - name = "shrapnel" - fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' - damage = 10 - SA_bonus_damage = 16 // Potential 156 Damage against demons at point blank. - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - embed_chance = -1 - pellets = 6 - range_step = 1 - spread_step = 20 - holy = TRUE - -/obj/projectile/bullet/shotgun/stake - name = "stake" - fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' - damage = 50 - armor_penetration = 15 - SA_bonus_damage = 16 // Potential 156 Damage against demons at point blank. - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - holy = TRUE - -//EMP shotgun 'slug', it's basically a beanbag that pops a tiny emp when it hits. //Not currently used -/obj/projectile/bullet/shotgun/ion - name = "ion slug" - fire_sound = 'sound/weapons/gunshot/gunshot_tech_huge.ogg' - damage = 15 - embed_chance = 0 - sharp = 0 - damage_flag = ARMOR_MELEE - - combustion = FALSE - -/obj/projectile/bullet/shotgun/ion/on_hit(var/atom/target, var/blocked = 0) - ..() - empulse(target, 0, 0, 2, 0) //Only affects what it hits - return 1 - -//Frag shot -/obj/projectile/bullet/shotgun/frag12 - name ="frag12 slug" - damage = 25 - -/obj/projectile/bullet/shotgun/frag12/on_hit(atom/target, blocked = FALSE) - ..() - explosion(target, -1, 0, 1) - return 1 - -/* "Rifle" rounds */ - -/obj/projectile/bullet/rifle - fire_sound = 'sound/weapons/Gunshot_generic_rifle.ogg' - armor_penetration = 15 - penetrating = 1 - -/obj/projectile/bullet/rifle/a762 - fire_sound = 'sound/weapons/weaponsounds_heavyrifleshot.ogg' - damage = 35 - -/obj/projectile/bullet/rifle/a762/sniper // Hitscan specifically for sniper ammo; to be implimented at a later date, probably for the SVD. -Ace - fire_sound = 'sound/weapons/weaponsounds_heavyrifleshot.ogg' - hitscan = 1 //so the ammo isn't useless as a sniper weapon - -/obj/projectile/bullet/rifle/a762/ap - damage = 30 - armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds. - -/obj/projectile/bullet/rifle/a762/ap/silver - damage = 30 - armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds. - SA_bonus_damage = 30 // 60 total against demons - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - holy = TRUE - -/obj/projectile/bullet/rifle/a762/hp - damage = 40 - armor_penetration = -50 - penetrating = 0 - -/obj/projectile/bullet/rifle/a762/hunter // Optimized for killing simple animals and not people, because Balance(tm) - damage = 25 - SA_bonus_damage = 45 // 70 total on animals. - SA_vulnerability = MOB_CLASS_ANIMAL - embed_chance = -1 - -/obj/projectile/bullet/rifle/a762/sniperhunter - damage = 25 - SA_bonus_damage = 45 // 70 total on animals. - SA_vulnerability = MOB_CLASS_ANIMAL - embed_chance = -1 - speed = 25 * WORLD_ICON_SIZE - -/obj/projectile/bullet/rifle/a762/silver // Hunting Demons with bolt action rifles. - damage = 20 - SA_bonus_damage = 50 // 70 total on animals. - SA_vulnerability = MOB_CLASS_DEMONIC - holy = TRUE - -/obj/projectile/bullet/rifle/a556 - fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' - damage = 25 - -/obj/projectile/bullet/rifle/a556/ap - damage = 20 - armor_penetration = 50 // At 40 or more armor, this will do more damage than standard rounds. - -/obj/projectile/bullet/rifle/a556/hp - damage = 35 - armor_penetration = -50 - penetrating = 0 - -/obj/projectile/bullet/rifle/a556/hunter - damage = 15 - SA_bonus_damage = 35 // 50 total on animals. - SA_vulnerability = MOB_CLASS_ANIMAL - -/obj/projectile/bullet/rifle/a12_7mm // 14.5×114mm is bigger than a .50 BMG round. - fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. - damage = 80 - stun = 3 - weaken = 3 - penetrating = 5 - armor_penetration = 80 - hitscan = 1 //so the PTR isn't useless as a sniper weapon - -/obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. - fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. - damage = 60 - penetrating = 1 - armor_penetration = 60 - -/* Miscellaneous */ - -/obj/projectile/bullet/suffocationbullet//How does this even work? - name = "co bullet" - damage = 20 - damage_type = OXY - -/obj/projectile/bullet/cyanideround - name = "poison bullet" - damage = 40 - damage_type = TOX - -/obj/projectile/bullet/cyanideround/jezzail - name = "toxic penetrator shard" - damage = 25 - armor_penetration = 20 - agony = 5 - embed_chance = 1 - damage_type = TOX - -/obj/projectile/bullet/burstbullet - name = "exploding bullet" - fire_sound = 'sound/soundbytes/effects/explosion/explosion1.ogg' - damage = 20 - embed_chance = 0 - edge = 1 - -/obj/projectile/bullet/burstbullet/on_hit(var/atom/target, var/blocked = 0) - if(isturf(target)) - explosion(target, -1, 0, 2) - ..() - -/obj/projectile/bullet/burstbullet/service - name = "charge bullet" - fire_sound = 'sound/soundbytes/effects/explosion/explosion1.ogg' - damage = 20 - embed_chance = 0 - edge = 1 - SA_bonus_damage = 40 // 60 total damage against demons. - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - holy = TRUE - -/obj/projectile/bullet/burstbullet/service/on_hit(var/atom/target, var/blocked = 0) - if(isturf(target)) - explosion(target, 0, 1, 2) - ..() - -/* Black Powder */ - -/obj/projectile/bullet/musket // Big Slow and bad against armor. - fire_sound = 'sound/weapons/weaponsounds_heavypistolshot.ogg' - damage = 60 - speed = 8.3 * WORLD_ICON_SIZE - armor_penetration = -50 - -/obj/projectile/bullet/musket/silver // What its a classic - damage = 25 - SA_bonus_damage = 75 - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - embed_chance = -1 - holy = TRUE - -/obj/projectile/bullet/pellet/blunderbuss //More Damage at close range greater falloff - damage = 10 - pellets = 8 - range_step = 0.5 //Very quick falloff - spread_step = 30 - -/obj/projectile/bullet/pellet/blunderbuss/silver - damage = 5 - SA_bonus_damage = 15 - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - embed_chance = -1 - holy = TRUE - -//10 Gauge Shot -/obj/projectile/bullet/heavy_shotgun - name = "heavy slug" - fire_sound = 'sound/weapons/weaponsounds_shotgunshot.ogg' - damage = 60 - armor_penetration = 25 - -/obj/projectile/bullet/pellet/heavy_shotgun //I want this to use similar calcuations to blunderbuss shot for falloff. - damage = 3 //Fires five pellets at a time. - range_step = 0.75 - spread_step = 30 - armor_penetration = 10 - -/obj/projectile/bullet/pellet/heavy_shotgun/silver - damage = 3 - SA_bonus_damage = 3 - SA_vulnerability = MOB_CLASS_DEMONIC | MOB_CLASS_ABERRATION - holy = TRUE - -//Special 10g rounds for Grit, since I don't want ALL 10g to do this: -/obj/projectile/bullet/heavy_shotgun/grit - name = "custom heavy slug" - -/obj/projectile/bullet/heavy_shotgun/grit/on_hit(var/atom/movable/target, var/blocked = 0) - if(isliving(target)) - var/mob/living/L = target - var/throwdir = get_dir(firer,L) - if(prob(10) && !blocked) - L.afflict_stun(20 * 1) - L.Confuse(1) - L.throw_at_old(get_edge_target_turf(L, throwdir), rand(3,6), 10) - - return 1 - -/obj/projectile/bullet/pellet/heavy_shotgun/grit - name = "heavy buckshot" - range_step = 1 - -/obj/projectile/bullet/pellet/heavy_shotgun/grit/on_hit(var/atom/movable/target, var/blocked = 0) - if(isliving(target)) - var/mob/living/L = target - var/throwdir = get_dir(firer,L) - if(prob(10) && !blocked) - L.afflict_stun(20 * 1) - L.Confuse(1) - L.throw_at_old(get_edge_target_turf(L, throwdir), rand(3,6), 10) - - return 1 - -/* Incendiary */ - -/obj/projectile/bullet/incendiary - name = "incendiary bullet" - icon_state = "bullet_alt" - damage = 15 - damage_type = BURN - incendiary = 1 - flammability = 2 - -/obj/projectile/bullet/incendiary/shotgun - name = "dragonsbreath pellet" - icon_state = "bullet_alt" - damage = 10 - damage_type = BURN - incendiary = 1 - flammability = 2 - -/obj/projectile/bullet/incendiary/flamethrower - name = "ball of fire" - desc = "Don't stand in the fire." - icon_state = "fireball" - damage = 10 - embed_chance = 0 - //incendiary = 2 //The Trail of Fire doesn't work. - flammability = 4 - agony = 30 - range = WORLD_ICON_SIZE * 4 - vacuum_traversal = 0 - -/obj/projectile/bullet/incendiary/flamethrower/weak - flammability = 2 - -/obj/projectile/bullet/incendiary/flamethrower/large - damage = 15 - range = WORLD_ICON_SIZE * 6 - -/obj/projectile/bullet/incendiary/caseless - name = "12.7mm phoron slug" - icon_state = "bullet_alt" - damage = 60 - damage_type = BRUTE - incendiary = 1 - flammability = 4 - armor_penetration = 40 - penetrating = 5 - combustion = TRUE - -/obj/projectile/bullet/incendiary/caseless/on_hit(var/atom/movable/target, var/blocked = 0) - if(isliving(target)) - var/mob/living/L = target - L.adjustFireLoss(10) - -/obj/projectile/bullet/incendiary/phoronshrap - name = "phoron shrapnel slug" - icon_state = "bullet_alt" - damage = 40 - armor_penetration = 30 - damage_type = BRUTE - incendiary = 1 - flammability = 4 - penetrating = 1 - combustion = TRUE - - -/* Practice rounds and blanks */ - -/obj/projectile/bullet/practice - damage = 5 - -/obj/projectile/bullet/pistol/cap // Just the primer, such as a cap gun. - name = "cap" - damage_type = HALLOSS - fire_sound = 'sound/effects/snap.ogg' - damage = 0 - nodamage = 1 - embed_chance = 0 - sharp = 0 - incendiary = 1 - flammability = 4 - - combustion = FALSE - -/obj/projectile/bullet/pistol/cap/process(delta_time) - loc = null - qdel(src) - -/obj/projectile/bullet/blank - name = "blank" - damage_type = HALLOSS - fire_sound = 'sound/weapons/weaponsounds_rifleshot.ogg' // Blanks still make loud noises. - damage = 0 - nodamage = 1 - embed_chance = 0 - sharp = 0 - -/obj/projectile/bullet/blank/cap/process(delta_time) - loc = null - qdel(src) From b048b1539e7e931d94b452eaba4782b0f89fd2f1 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Wed, 4 Sep 2024 17:25:29 -0400 Subject: [PATCH 14/17] Need to up the damage a little. --- code/modules/projectiles/projectile/subtypes/bullets.dm | 2 +- .../sealed/mecha/equipment/weapons/ballistic/automatic.dm | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/projectiles/projectile/subtypes/bullets.dm b/code/modules/projectiles/projectile/subtypes/bullets.dm index 11458f9cd56a..3e283874361c 100644 --- a/code/modules/projectiles/projectile/subtypes/bullets.dm +++ b/code/modules/projectiles/projectile/subtypes/bullets.dm @@ -310,7 +310,7 @@ /obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. - damage = 60 + damage = 70 legacy_penetrating = 1 armor_penetration = 60 diff --git a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm index 9cf6250926bc..6686d75d011f 100644 --- a/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm +++ b/code/modules/vehicles/sealed/mecha/equipment/weapons/ballistic/automatic.dm @@ -15,7 +15,7 @@ name = "\improper AC 10" desc = "The original in anti-mech firepower, the standard Hephaestus Autocannon MK10 design fires AP slugs in order to damage other heavy armor suits. This does mean its rate between bursts is longer than most." icon_state = "mecha_uac2" - equip_cooldown = 2 SECONDS + equip_cooldown = 1 SECONDS projectile = /obj/projectile/bullet/rifle/a762/ap fire_sound = 'sound/weapons/Gunshot_deagle.ogg' projectiles = 20 //Mag size @@ -28,7 +28,7 @@ name = "\improper gauss rifle" desc = "The current standard in non-laser, anti-armor firepower, this weapon is the same as those mounted on light tanks for their primary weapon. Fires a single nickle-iron slug at high speed. Requires a long charge time between shots. " icon_state = "mecha_uac2-rig" - equip_cooldown = 4 SECONDS + equip_cooldown = 3 SECONDS projectile = /obj/projectile/bullet/mecha/a12mm_gauss fire_sound = 'sound/weapons/Gunshot_cannon.ogg' projectiles = 10 //Mag size From 399b4fdea428a82f7c0d4eb0040d4df6ce56f53e Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Thu, 5 Sep 2024 17:46:26 -0400 Subject: [PATCH 15/17] I guess I shouldn't make things *too* OP --- code/modules/projectiles/projectile/subtypes/bullets.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/projectile/subtypes/bullets.dm b/code/modules/projectiles/projectile/subtypes/bullets.dm index 3e283874361c..11458f9cd56a 100644 --- a/code/modules/projectiles/projectile/subtypes/bullets.dm +++ b/code/modules/projectiles/projectile/subtypes/bullets.dm @@ -310,7 +310,7 @@ /obj/projectile/bullet/mecha/a12mm_gauss //Mecha gauss rifle round. fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon. - damage = 70 + damage = 60 legacy_penetrating = 1 armor_penetration = 60 From f1c0314dec460b52986f679ac5a8b89a70465bd4 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Tue, 10 Sep 2024 19:37:27 -0400 Subject: [PATCH 16/17] Ups the cost of the AC/10 and Gauss Rifle --- code/modules/research/designs/mechfab_designs.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/research/designs/mechfab_designs.dm b/code/modules/research/designs/mechfab_designs.dm index 7ae1195b9106..9cc415dca10e 100644 --- a/code/modules/research/designs/mechfab_designs.dm +++ b/code/modules/research/designs/mechfab_designs.dm @@ -518,11 +518,13 @@ design_name = "AC 10" id = "mech_lmg_heavy" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg_heavy + materials_base = list(MAT_STEEL = 12000, MAT_GLASS = 6000, MAT_PLASTIC = 2000, MAT_SILVER = 1500, MAT_COPPER = 4000) /datum/design/science/mecha/gauss_rifle design_name = "Gauss Rifle" id = "mech_gauss_rifle" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle + materials_base = list(MAT_STEEL = 16000, MAT_GLASS = 8000, MAT_PLASTIC = 4000, MAT_SILVER = 3500, MAT_COPPER = 8000) /datum/design/science/mecha/rigged_lmg design_name = "Jury-Rigged Machinegun" From c69f81d3b8afba821adfc32b9bf9b33f7a5c8c93 Mon Sep 17 00:00:00 2001 From: GySgtMurphy Date: Tue, 10 Sep 2024 19:40:54 -0400 Subject: [PATCH 17/17] Ups the material cost on AC/10 and Gauss Rifle --- code/modules/research/designs/mechfab_designs.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/research/designs/mechfab_designs.dm b/code/modules/research/designs/mechfab_designs.dm index 7ae1195b9106..d38be97cb29c 100644 --- a/code/modules/research/designs/mechfab_designs.dm +++ b/code/modules/research/designs/mechfab_designs.dm @@ -518,11 +518,13 @@ design_name = "AC 10" id = "mech_lmg_heavy" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg_heavy + materials_base = list(MAT_STEEL = 12000, MAT_GLASS = 4000, MAT_PLASTIC = 3000, MAT_SILVER = 1500, MAT_COPPER = 4000) /datum/design/science/mecha/gauss_rifle design_name = "Gauss Rifle" id = "mech_gauss_rifle" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/gauss_rifle + materials_base = list(MAT_STEEL = 16000, MAT_GLASS = 8000, MAT_PLASTIC = 4000, MAT_SILVER = 3500, MAT_COPPER = 8000) /datum/design/science/mecha/rigged_lmg design_name = "Jury-Rigged Machinegun"