Skip to content

Commit

Permalink
Continued Ammo Adjustments (#3838)
Browse files Browse the repository at this point in the history
## About The Pull Request
Makes AP ammo better in most cases
HP ammo worse in most cases
removes deagle
minorly differentiates some cartridges.
bullets no longer tell you their calibre, manufacturing plant,
manufacturing date, the name of who fired them, and if they impacted an
organ

## Why It's Good For The Game
Continued experiments in the field of balance

## Changelog

:cl:
add: bullets now refuse to tell you their calibre
del: deagle
balance: most cartridges have been lightly adjusted. please say
something if firing bullets feels weird.
/:cl:

---------

Signed-off-by: Erika Fox <[email protected]>
  • Loading branch information
Erikafox authored Dec 12, 2024
1 parent 84fa3fb commit e9bf5b9
Show file tree
Hide file tree
Showing 21 changed files with 151 additions and 170 deletions.
2 changes: 1 addition & 1 deletion code/game/objects/effects/spawners/random/exotic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
loot = list(
/obj/item/gun/ballistic/automatic/pistol/ringneck = 8,
/obj/item/gun/ballistic/shotgun/automatic/m11 = 5,
/obj/item/gun/ballistic/automatic/pistol/deagle,
/obj/item/gun/ballistic/automatic/pistol/spitter,
/obj/item/gun/ballistic/revolver/mateba
)

Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@
new /obj/item/aicard(src)
new /obj/item/assembly/flash/handheld(src)
if(prob(50))
new /obj/item/ammo_box/magazine/m50(src)
new /obj/item/ammo_box/magazine/m50(src)
new /obj/item/gun/ballistic/automatic/pistol/deagle(src)
new /obj/item/ammo_box/magazine/cm357(src)
new /obj/item/ammo_box/magazine/cm357(src)
new /obj/item/gun/ballistic/automatic/pistol/cm357(src)
else
new /obj/item/ammo_box/a357(src)
new /obj/item/ammo_box/a357(src)
Expand Down
18 changes: 1 addition & 17 deletions code/modules/awaymissions/capture_the_flag.dm
Original file line number Diff line number Diff line change
Expand Up @@ -403,22 +403,6 @@
CTF.ctf_gear = initial(ctf_gear)
CTF.respawn_cooldown = DEFAULT_RESPAWN

/obj/item/gun/ballistic/automatic/pistol/deagle/ctf
desc = "This looks like it could really hurt in melee."
force = 75
default_ammo_type = /obj/item/ammo_box/magazine/m50/ctf
allowed_ammo_types = list(
/obj/item/ammo_box/magazine/m50/ctf,
)

/obj/item/gun/ballistic/automatic/pistol/deagle/ctf/dropped()
. = ..()
addtimer(CALLBACK(src, PROC_REF(floor_vanish)), 1)

/obj/item/gun/ballistic/automatic/pistol/deagle/ctf/proc/floor_vanish()
if(isturf(loc))
qdel(src)

/obj/item/ammo_box/magazine/m50/ctf
ammo_type = /obj/item/ammo_casing/a50/ctf

Expand Down Expand Up @@ -528,7 +512,7 @@
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/tackler/combat
id = /obj/item/card/id/away
belt = /obj/item/gun/ballistic/automatic/pistol/deagle/ctf
belt = /obj/item/gun/ballistic/automatic/pistol/cm357
l_pocket = /obj/item/ammo_box/magazine/recharge/ctf
r_pocket = /obj/item/ammo_box/magazine/recharge/ctf
r_hand = /obj/item/gun/ballistic/automatic/laser/ctf
Expand Down
5 changes: 2 additions & 3 deletions code/modules/clothing/outfits/ert/frontiersmen_ert.dm
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
back = /obj/item/storage/backpack/satchel/leather
suit = /obj/item/clothing/suit/armor/frontier
suit_store = null
belt = /obj/item/gun/ballistic/automatic/pistol/deagle
belt = /obj/item/gun/ballistic/automatic/pistol/mauler

backpack_contents = list(/obj/item/clothing/mask/gas/frontiersmen, /obj/item/ammo_box/magazine/m50=2, /obj/item/binoculars=1, /obj/item/melee/knife/survival)

Expand All @@ -196,8 +196,7 @@
suit = /obj/item/clothing/suit/armor/vest/marine/frontier
head = /obj/item/clothing/head/helmet/bulletproof/x11/frontier
mask = /obj/item/clothing/mask/breath
belt = /obj/item/gun/ballistic/automatic/pistol/deagle/gold // daring today aren't we

belt = /obj/item/gun/ballistic/automatic/pistol/mauler
backpack = /obj/item/minigunpack
satchel = /obj/item/minigunpack
courierbag = /obj/item/minigunpack
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammunition/_ammo_casing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
if(user.canUseTopic(src, BE_CLOSE))
name = "[initial(src.name)][(inputvalue ? " - '[inputvalue]'" : null)]"
if(BB)
BB.name = "[initial(BB.name)][(inputvalue ? " - '[inputvalue]'" : null)]"
BB.bullet_identifier = "[initial(BB.bullet_identifier)][(inputvalue ? " - '[inputvalue]'" : null)]"
else if(istype(attacking_item, /obj/item/ammo_box) && user.is_holding(src))
add_fingerprint(user)
var/obj/item/ammo_box/ammo_box = attacking_item
Expand Down
13 changes: 0 additions & 13 deletions code/modules/projectiles/ammunition/ballistic/pistol.dm
Original file line number Diff line number Diff line change
Expand Up @@ -99,19 +99,6 @@
bullet_skin = "rubber"
projectile_type = /obj/projectile/bullet/c45/rubber

// .50 AE (Desert Eagle)

/obj/item/ammo_casing/a50AE
name = ".50 AE bullet casing"
desc = "A .50 AE bullet casing."
caliber = ".50 AE"
projectile_type = /obj/projectile/bullet/a50AE

/obj/item/ammo_casing/a50AE/hp
name = ".50 AE hollow point bullet casing"
desc = "A .50 AE hollow point bullet casing."
projectile_type = /obj/projectile/bullet/a50AE/hp

// .22 LR (Himehabu, Pounder)

/obj/item/ammo_casing/c22lr
Expand Down
3 changes: 1 addition & 2 deletions code/modules/projectiles/ammunition/ballistic/rifle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
icon_state = "caseless"
caliber = "a858"
projectile_type = /obj/projectile/bullet/a858
stack_size = 10
stack_size = 5

/obj/item/ammo_casing/caseless/a858/trac
name = "8x58mm tracker round"
Expand Down Expand Up @@ -69,7 +69,6 @@
desc = "A 5.56x42mm CLIP rubber bullet casing."
bullet_skin = "rubber"
projectile_type = /obj/projectile/bullet/a556_42/rubber
stack_size = 15

// 7.62x40mm CLIP (SKM Rifles)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,14 +212,6 @@
/obj/item/ammo_box/magazine/ammo_stack/prefilled/c45/rubber = 4)
generate_items_inside(items_inside,src)

// .50 AE (Desert Eagle)

/obj/item/ammo_box/magazine/ammo_stack/prefilled/a50AE
ammo_type = /obj/item/ammo_casing/a50AE

/obj/item/ammo_box/magazine/ammo_stack/prefilled/a50AE/hp
ammo_type = /obj/item/ammo_casing/a50AE/hp

// .22 LR (Himehabu, Pounder)

/obj/item/ammo_box/magazine/ammo_stack/prefilled/c22lr
Expand Down
10 changes: 0 additions & 10 deletions code/modules/projectiles/boxes_magazines/external/pistol.dm
Original file line number Diff line number Diff line change
Expand Up @@ -72,16 +72,6 @@
. = ..()
icon_state = "[base_icon_state]-[ammo_count() == 1 ? 1 : round(ammo_count(),2)]"

/obj/item/ammo_box/magazine/m50
name = "handgun magazine (.50 AE)"
desc = "An oversized, 7-round handgun magazine for the Desert Eagle handgun. These rounds do significant damage with average performance against armor."
icon_state = "deagle_mag-7"
base_icon_state = "deagle_mag"
ammo_type = /obj/item/ammo_casing/a50AE
caliber = ".50 AE"
max_ammo = 7
multiple_sprites = AMMO_BOX_PER_BULLET

/obj/item/ammo_box/magazine/disposable
name = "part of a disposable gun"
desc = "You ripped out part of the gun, somehow, rendering it unusuable. I hope you're happy."
Expand Down
77 changes: 39 additions & 38 deletions code/modules/projectiles/guns/ballistic/pistol.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,47 +20,48 @@

muzzleflash_iconstate = "muzzle_flash_light"

/obj/item/gun/ballistic/automatic/pistol/deagle
name = "\improper Desert Eagle"
desc = "An oversized handgun chambered in .50 AE. A true hand cannon."
icon = 'icons/obj/guns/manufacturer/frontier_import/48x32.dmi'
lefthand_file = 'icons/obj/guns/manufacturer/frontier_import/lefthand.dmi'
righthand_file = 'icons/obj/guns/manufacturer/frontier_import/righthand.dmi'
mob_overlay_icon = 'icons/obj/guns/manufacturer/frontier_import/onmob.dmi'
icon_state = "deagle"
force = 14
default_ammo_type = /obj/item/ammo_box/magazine/m50
/obj/item/gun/ballistic/automatic/pistol/candor
name = "\improper Candor"
desc = "A classic semi-automatic handgun, widely popular throughout the Frontier. An engraving on the slide marks it as a product of Hunter's Pride. Chambered in .45."
icon_state = "candor"
item_state = "hp_generic"
icon = 'icons/obj/guns/manufacturer/hunterspride/48x32.dmi'
lefthand_file = 'icons/obj/guns/manufacturer/hunterspride/lefthand.dmi'
righthand_file = 'icons/obj/guns/manufacturer/hunterspride/righthand.dmi'
mob_overlay_icon = 'icons/obj/guns/manufacturer/hunterspride/onmob.dmi'

default_ammo_type = /obj/item/ammo_box/magazine/m45
allowed_ammo_types = list(
/obj/item/ammo_box/magazine/m50,
/obj/item/ammo_box/magazine/m45,
)
mag_display = TRUE
show_magazine_on_sprite = TRUE
fire_sound = 'sound/weapons/gun/pistol/deagle.ogg'
rack_sound = 'sound/weapons/gun/pistol/rack.ogg'
fire_sound = 'sound/weapons/gun/pistol/candor.ogg'
rack_sound = 'sound/weapons/gun/pistol/candor_cocked.ogg'
lock_back_sound = 'sound/weapons/gun/pistol/slide_lock.ogg'
bolt_drop_sound = 'sound/weapons/gun/pistol/rack.ogg'
manufacturer = MANUFACTURER_NONE
load_sound = 'sound/weapons/gun/pistol/deagle_reload.ogg'
load_empty_sound = 'sound/weapons/gun/pistol/deagle_reload.ogg'
eject_sound = 'sound/weapons/gun/pistol/deagle_unload.ogg'
eject_empty_sound = 'sound/weapons/gun/pistol/deagle_unload.ogg'
fire_delay = 0.6 SECONDS
recoil = 2
recoil_unwielded = 5
recoil_backtime_multiplier = 2

spread = 7
spread_unwielded = 14

/obj/item/gun/ballistic/automatic/pistol/deagle/gold
desc = "A gold-plated Desert Eagle folded over a million times by superior Martian gunsmiths. Uses .50 AE ammo."
icon_state = "deagleg"
item_state = "deagleg"

/obj/item/gun/ballistic/automatic/pistol/deagle/camo
desc = "A Deagle-brand Deagle for operators operating operationally. Uses .50 AE ammo." //I hate this joke with a passion
icon_state = "deaglecamo"
item_state = "deagleg"
bolt_drop_sound = 'sound/weapons/gun/pistol/candor_cocked.ogg'
manufacturer = MANUFACTURER_HUNTERSPRIDE
load_sound = 'sound/weapons/gun/pistol/candor_reload.ogg'
load_empty_sound = 'sound/weapons/gun/pistol/candor_reload.ogg'
eject_sound = 'sound/weapons/gun/pistol/candor_unload.ogg'
eject_empty_sound = 'sound/weapons/gun/pistol/candor_unload.ogg'
show_magazine_on_sprite = TRUE

NO_MAG_GUN_HELPER(automatic/pistol/candor)

/obj/item/gun/ballistic/automatic/pistol/candor/factory //also give this to the srm, their candors should probably look factory fresh from how well taken care of they are
desc = "A classic semi-automatic handgun, widely popular throughout the Frontier. An engraving on the slide marks it as a product of 'Hunter's Pride Arms and Ammunition'. This example has been kept in especially good shape, and may as well be fresh out of the workshop. Chambered in .45."
item_state = "hp_generic_fresh"

NO_MAG_GUN_HELPER(automatic/pistol/candor/factory)

/obj/item/gun/ballistic/automatic/pistol/candor/factory/update_overlays()
. = ..()
. += "[initial(icon_state)]_factory"

/obj/item/gun/ballistic/automatic/pistol/candor/phenex
name = "\improper HP Phenex"
desc = "A uniquely modified version of the Candor, famously created by Hunter's Pride. Named after the daemonic Phoenix of legend that the Ashen Huntsman had once slain, this hell-kissed weapon is more visually intimidating than its original counterpart, but mechanically acts the same. Chambered in .45."
icon_state = "phenex"
item_state = "hp_phenex"

/obj/item/gun/ballistic/automatic/pistol/commissar
name = "\improper Commissar"
Expand Down
4 changes: 3 additions & 1 deletion code/modules/projectiles/projectile.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
var/near_miss_sound = ""
var/ricochet_sound = ""


///what we should call the fired bullet
var/bullet_identifier = "high velocity gnome"

resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/def_zone = "" //Aiming at
Expand Down Expand Up @@ -694,6 +695,7 @@
trajectory_ignore_forcemove = FALSE
trajectory = new(starting.x, starting.y, starting.z, pixel_x, pixel_y, Angle, SSprojectiles.global_pixel_speed)
last_projectile_move = world.time
name = bullet_identifier
fired = TRUE
SEND_SIGNAL(src, COMSIG_PROJECTILE_FIRE)
if(hitscan)
Expand Down
2 changes: 2 additions & 0 deletions code/modules/projectiles/projectile/beams.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
near_miss_sound = 'sound/weapons/gun/hit/energy_miss1.ogg'
ricochet_sound = 'sound/weapons/gun/hit/energy_ricochet1.ogg'

bullet_identifier = "laser"

flag = "laser"
eyeblur = 2
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
Expand Down
1 change: 1 addition & 0 deletions code/modules/projectiles/projectile/bullets.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
near_miss_sound = "bullet_miss"
ricochet_sound = "bullet_bounce"

bullet_identifier = "bullet"

impact_effect_type = /obj/effect/temp_visual/impact_effect
ricochets_max = 5 //should be enough to scare the shit out of someone
Expand Down
1 change: 1 addition & 0 deletions code/modules/projectiles/projectile/bullets/lmg.dm
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
damage = 25
armour_penetration = 40
speed = BULLET_SPEED_RIFLE
bullet_identifier = "large bullet"

/obj/projectile/bullet/mm712x82/ap
name = "7.12x82mm armor-piercing bullet"
Expand Down
Loading

0 comments on commit e9bf5b9

Please sign in to comment.