Reworks flechette into a AP pellet round that does mostly wounds. Adds the Donk Co. 'Donk Spike' flechette round as a surplus round. (#89972)

## About The Pull Request


![image](https://github.com/user-attachments/assets/a9932294-5355-4a75-b64d-cd8350092c21)

Reworks flechette shells from... whatever it was that they were supposed
to be before into an AP pellet round that primarily focuses on wounding
power and embedding power over specifically dealing direct damage (16 as
opposed to buckshot's 30). Useful if you want to maim as a priority.

You can print flechette once science researches Exotic Ammunition.
Nuclear Operatives also get flechette rounds as a Bulldog Shotgun
magazine choice priced as a basic ammunition type.

In addition, you can also acquire Donk Co. 'Donk Spike' flechette
shells. These shells fire plastic darts! They can be purchased by
Nuclear Operatives as a surplus option for Bulldog shotguns. 7 magazines
for the price of one.

Donk Co. 'Donk Spike' flechette was intended to be an alternative to the
standard flechette but failed spectacularly once it hit the market. Due
to a lack of confidence in the product, Donk Co. 'Donk Spike' flechette
now appears in maintenance loot as potential trash, as Donk Co. dumped
it in the millions into various landfills across the sector.

You can also print it if you find the tech in a BEPIS tech disk. 

Does it work? Why don't you take a chance on Donk and find out?

## Why It's Good For The Game

I'm not sure if the person who made the original flechette actually
understood what each of the variables was supposed to be doing or how
they actually worked. A bullet with an excessively negative standard
wound power (for a pellet projectile) and low damage, but then an
excessively high bare wound bonus (for a pellet projectile). But then
some ricochet variables without ricochet being assigned to the bullet...
and a demolition mod on a round meant to be weak against armor?

Nonsensical.

So I've reworked it into two unique rounds. The first serving a
practical purpose and becoming an AP option when the crew typically
begins seeing those options open up (such as x-ray lasers). The same can
be said for nukies, who love AP options, but one focused on lasting
wounds is handy too for keeping someone down. There isn't a milspec
option; so for nukies, this isn't doing nearly as much upfront damage as
buckshot or slugs. You buy this when you want someone not to be
recovered with a LOT of medical attention.

The second being more tongue in cheek, but also giving a surplus option
for Bulldog shotguns, which I think are having ammunition problems even
still. Surplus ammunition might slowly roll out for all the guns, but
I'm mostly focusing on the ones that have some slight price disparity
for total shots compared to other weapons. Also, shooting people full of
plastic is kind of funny.

## Changelog
🆑
balance: Flechette has been reworked into an AP pellet round that embeds
and wounds, but has less actual damage to buckshot. You can print it
once Exotic Ammunition has been researched. Also available to Nuclear
Operatives.
add: Donk Co. 'Donk Spike' flechette rounds. No longer offered by Donk
Co. It can sometimes shows up in trashbins and dumpsters. And operatives
can buy it in bulk if they really feel like it.
/🆑

---------

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
This commit is contained in:
necromanceranne
2025-03-19 18:01:22 +11:00
committed by GitHub
parent 5039c5bb41
commit df3d6a31ca
18 changed files with 166 additions and 23 deletions

View File

@@ -131,15 +131,26 @@
variance = 25
custom_materials = list(/datum/material/iron=SHEET_MATERIAL_AMOUNT*2)
/obj/item/ammo_casing/shotgun/fletchette
name = "\improper Donk Co Flechette Shell"
desc = "A shotgun casing filled with small metal darts. Has poor armor penetration and velocity, but is good at destroying most electronic devices and injuring unarmored humanoids."
icon_state = "fletchette"
/obj/item/ammo_casing/shotgun/flechette
name = "flechette shell"
desc = "A shotgun casing filled with small metal darts. Pokes many tiny holes into meat and kevlar alike. Useful for turning someones insides \
into outsides."
icon_state = "flechette"
projectile_type = /obj/projectile/bullet/pellet/flechette
custom_materials = list(/datum/material/iron=SHEET_MATERIAL_AMOUNT*2, /datum/material/glass=SMALL_MATERIAL_AMOUNT*1)
pellets = 6
custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2)
pellets = 8
variance = 10
randomspread = TRUE
/obj/item/ammo_casing/shotgun/flechette/donk
name = "\improper Donk Co. 'Donk Spike' Shell"
desc = "Donk Co., looking to create a new and exciting shell to move onto the open market, invented what they call the 'Donk Spike'. \
A flechette not made from standard ferrous metals. But...plastic. It was a financial failure due to a complete lack of \
confidence in the product. Now there are millions of these things in landfills across the sector. This is one such example. \
Looks like a donk-pocket! Tastes like death!"
icon_state = "flechette_donk"
projectile_type = /obj/projectile/bullet/pellet/flechette/donk
custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT, /datum/material/plastic = SMALL_MATERIAL_AMOUNT * 2)
pellets = 5
/obj/item/ammo_casing/shotgun/ion
name = "ion shell"

View File

@@ -41,3 +41,29 @@
icon_state = "m12gbc"
base_icon_state = "m12gbc"
ammo_type = /obj/item/ammo_casing/shotgun/meteorslug
/obj/item/ammo_box/magazine/m12g/flechette
name = "shotgun magazine (12g flechette)"
icon_state = "m12gfl"
base_icon_state = "m12gfl"
ammo_type = /obj/item/ammo_casing/shotgun/flechette
/obj/item/ammo_box/magazine/m12g/donk
name = "shotgun magazine (12g Donk Co. 'Donk Spike' flechette)"
desc = "A drum magazine of shotgun shells, suitable for the Bulldog combat shotgun. It is covered in Donk Co. scratch-and-sniff \
stickers. You're not sure you want to try and get a whiff..."
icon_state = "m12gd"
base_icon_state = "m12gd"
ammo_type = /obj/item/ammo_casing/shotgun/flechette/donk
/obj/item/ammo_box/magazine/m12g/donk/examine_more(mob/user)
. = ..()
if(ishuman(user))
return
var/mob/living/carbon/human/human_sniffer = user
if(!HAS_TRAIT(human_sniffer, TRAIT_ANOSMIA) && human_sniffer.can_perform_action(src, NEED_DEXTERITY|NEED_HANDS|ALLOW_RESTING|FORBID_TELEKINESIS_REACH))
. += span_notice("You scratch and sniff the stickers.")
. += span_warning("<i>Oh god, where did they pull this from, a landfill?</i>")
human_sniffer.add_mood_event("stink-pocket", /datum/mood_event/disgusted)

View File

@@ -58,5 +58,5 @@
max_ammo = 1
/obj/item/ammo_box/magazine/internal/shot/single/musket
name = "donk co musket internal magazine"
ammo_type = /obj/item/ammo_casing/shotgun/fletchette
name = "\improper Donk Co. musket internal magazine"
ammo_type = /obj/item/ammo_casing/shotgun/flechette/donk

View File

@@ -133,17 +133,46 @@
/obj/projectile/bullet/pellet/flechette
name = "flechette"
icon_state = "flechette"
damage = 3
wound_bonus = -25
bare_wound_bonus = 50
damage_falloff_tile = 0.1
wound_falloff_tile = -10
damage = 2
wound_bonus = 5
bare_wound_bonus = 5
armour_penetration = 30
damage_falloff_tile = -0.2
wound_falloff_tile = -0.5
speed = 1.2
ricochet_decay_chance = 0.6
ricochet_decay_damage = 0.3
demolition_mod = 10
sharpness = SHARP_POINTY
weak_against_armour = TRUE
embed_type = /datum/embedding/bullet/flechette
/datum/embedding/bullet/flechette
embed_chance = 100
fall_chance = 0
jostle_chance = 20
ignore_throwspeed_threshold = TRUE
pain_stam_pct = 0.1
pain_mult = 0.5
jostle_pain_mult = 1.5
rip_time = 1 SECONDS
/obj/projectile/bullet/pellet/flechette/donk
name = "\improper Donk Co. 'Donk Spike' flechette"
desc = "Your internal evisceration! As sponsored by the Donk Corporation!"
icon_state = "flechette_plastic"
damage = 1 // good god its awful
wound_bonus = 20 // but it WILL mulch you if you don't have armor.
bare_wound_bonus = 20
armour_penetration = 0
damage_falloff_tile = -0.1
wound_falloff_tile = -2
embed_type = /datum/embedding/bullet/flechette_donk // the true power of the donk spike.
/datum/embedding/bullet/flechette_donk
embed_chance = 100
fall_chance = 0
jostle_chance = 50
ignore_throwspeed_threshold = TRUE
pain_mult = 1
jostle_pain_mult = 1
rip_time = 0.5 SECONDS
// Mech Scattershot