[READY] Walks back combat refactor, plus ammo balance changes (#8728)

This commit is contained in:
tacoguy7765093
2024-08-13 17:11:04 -05:00
committed by GitHub
parent 48ecf49f55
commit 99830636d9
53 changed files with 311 additions and 252 deletions

View File

@@ -113,8 +113,8 @@ var/global/list/magazine_overrides = list(
/obj/item/ammo_magazine/ammo_box/b10mm = /obj/item/ammo_magazine/ammo_box/small,
/obj/item/ammo_magazine/ammo_box/b44 = /obj/item/ammo_magazine/ammo_box/small,
/obj/item/ammo_magazine/ammo_box/b45 = /obj/item/ammo_magazine/ammo_box/small,
/obj/item/ammo_magazine/ammo_box/b145 = /obj/item/ammo_magazine/ammo_box/large,
/obj/item/ammo_magazine/ammo_box/b145/highvel = /obj/item/ammo_magazine/ammo_box/large/ap,
///obj/item/ammo_magazine/ammo_box/b145 = /obj/item/ammo_magazine/ammo_box/large, Seperation of 14.5
///obj/item/ammo_magazine/ammo_box/b145/highvel = /obj/item/ammo_magazine/ammo_box/large/ap,
/obj/item/ammo_magazine/ammo_box/b762 = /obj/item/ammo_magazine/ammo_box/medium,
/obj/item/ammo_magazine/ammo_box/b545 = /obj/item/ammo_magazine/ammo_box/medium,
/obj/item/ammo_magazine/ammo_box/b545/large = /obj/item/ammo_magazine/ammo_box/medium/large,

View File

@@ -82,7 +82,7 @@
max_ammo = 30
mag_type = MAGAZINE
caliber = "small"
matter = list(DEFAULT_WALL_MATERIAL = 800)
matter = list(MAT_STEEL = 800)
multiple_sprites = 1
ammo_type = /obj/item/ammo_casing/simple/small
@@ -122,7 +122,7 @@
max_ammo = 50
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 1500)
matter = list(MAT_STEEL = 1500)
ammo_type = /obj/item/ammo_casing/simple/small
/obj/item/ammo_magazine/smg_drum/empty
@@ -156,7 +156,7 @@
max_ammo = 30
mag_type = MAGAZINE
caliber = "medium"
matter = list(DEFAULT_WALL_MATERIAL = 1400)
matter = list(MAT_STEEL = 1400)
multiple_sprites = 1
ammo_type = /obj/item/ammo_casing/simple/medium
@@ -192,7 +192,7 @@
max_ammo = 20
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 1800)
matter = list(MAT_STEEL = 1800)
ammo_type = /obj/item/ammo_casing/simple/medium
/obj/item/ammo_magazine/medium_small/empty
@@ -227,7 +227,7 @@
max_ammo = 50
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 2500)
matter = list(MAT_STEEL = 2500)
ammo_type = /obj/item/ammo_casing/simple/medium
/obj/item/ammo_magazine/medium_drum/empty
@@ -258,7 +258,7 @@
caliber = "medium"
mag_type = MAGAZINE | SPEEDLOADER //Act as both, because the garand will use you like a magazine bb
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 400)
matter = list(MAT_STEEL = 400)
ammo_type = /obj/item/ammo_casing/simple/medium
/obj/item/ammo_magazine/clip/medium/empty
@@ -294,7 +294,7 @@
max_ammo = 100
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 8000)
matter = list(MAT_STEEL = 8000)
ammo_type = /obj/item/ammo_casing/simple/medium
/obj/item/ammo_magazine/medium_box/empty
@@ -326,7 +326,7 @@
max_ammo = 7
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 2400)
matter = list(MAT_STEEL = 2400)
ammo_type = /obj/item/ammo_casing/simple/large
/obj/item/ammo_magazine/large/empty
@@ -354,7 +354,7 @@
max_ammo = 100
mag_type = MAGAZINE
multiple_sprites = 1
matter = list(DEFAULT_WALL_MATERIAL = 20000)
matter = list(MAT_STEEL = 20000)
ammo_type = /obj/item/ammo_casing/simple/large
/obj/item/ammo_magazine/large_box/empty

View File

@@ -82,7 +82,7 @@ Leave this unticked by default. This was used to generate ammo_overrides.dm
var/list/small_calibers = list(".380", "7.62x25mm", "9x18mm", ".45 LC", "9mm", ".45", "10mm", ".357", ".38", ".44")
var/list/medium_calibers = list("5mm caseless", "7.62x54mmR", "7.92x33mm", "9.5x40mm", "7.62x39mm", "5.56x45mm", "7.62mm", "5.45mm", "9x39mm", "mauser", ".48")
var/list/large_calibers = list(".338", ".50 BMG", "12.7x108mm", "14.5mm")
var/list/large_calibers = list(".338", ".50 BMG", "12.7x108mm") //14.5 doesnt get overridden, its their own superheavy ammo
var/list/override_calibers = small_calibers + medium_calibers + large_calibers
var/output_small = ""
var/output_medium = ""

View File

@@ -24,7 +24,7 @@ Small Weapons
/obj/item/weapon/gun/projectile/revolver
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/lemat
caliber = "small"
@@ -34,7 +34,7 @@ Small Weapons
/obj/item/weapon/gun/projectile/revolver/stainless
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/detective
caliber = "small"
@@ -49,17 +49,17 @@ Small Weapons
/obj/item/weapon/gun/projectile/revolver/lombardi
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/lombardi/panther
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/lombardi/gold
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/cappeacekeeper
caliber = "small"
@@ -69,7 +69,7 @@ Small Weapons
/obj/item/weapon/gun/projectile/revolver/mateba
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/deckard
caliber = "small"
@@ -94,22 +94,22 @@ Small Weapons
/obj/item/weapon/gun/projectile/revolver/nova
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/cerberus
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/nagant
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/nagant/skinned
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/revolver/saa
caliber = "small"
@@ -261,12 +261,12 @@ Small Weapons
/obj/item/weapon/gun/projectile/contender
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/contender/tacticool
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/colt
caliber = "small"
@@ -325,7 +325,7 @@ Small Weapons
/obj/item/weapon/gun/projectile/derringer
caliber = "small"
ammo_type = /obj/item/ammo_casing/simple/small
projectile_type = /obj/item/projectile/bullet/a357
projectile_type = /obj/item/projectile/bullet/pistol/strong
/obj/item/weapon/gun/projectile/luger
caliber = "small"
@@ -804,9 +804,9 @@ Large Weapons
*/
/* These are superheavy weapons, and the overrides dont even work on them anyway, 14.5 ammo will be its own seperate 'superheavy' ammo
/obj/item/weapon/gun/projectile/heavysniper
caliber = "large"
caliber = "14.5"
ammo_type = /obj/item/ammo_casing/simple/large
projectile_type = /obj/item/projectile/bullet/rifle/a145
@@ -816,10 +816,10 @@ Large Weapons
projectile_type = /obj/item/projectile/bullet/rifle/a145
/obj/item/weapon/gun/projectile/revolver/slab
caliber = "large"
caliber = "14.5" ////Editing these back to 14.5 bullets, these are extremely damaging and shouldnt be as free as 'large bullets'
ammo_type = /obj/item/ammo_casing/simple/large
projectile_type = /obj/item/projectile/bullet/rifle/a145
*/
/obj/item/weapon/gun/projectile/automatic/serdy/awp
caliber = "large"
projectile_type = /obj/item/projectile/bullet/rifle/a338

View File

@@ -38,6 +38,7 @@
var/obj/item/projectile/P = new projectile_type_real(src.loc)
P.agony = round(P.damage * AMMO_RUBBER_AGONY_MULT) //In exchange for agony proportional to damage
P.damage = round(P.damage * AMMO_RUBBER_DAMAGE_MULT) //Severely reduced damage
P.sharp = FALSE //Rubber shot shouldnt bleed you
qdel(src)
return P.launch_from_gun(target, target_zone, user, params, angle_override, forced_spread, launcher)
if(ammo_flags & AMMO_FLAG_HUNTER)
@@ -76,7 +77,6 @@
desc = "A medium bullet casing, probably fit for a rifle"
caliber = "medium"
icon_state = "rifle-casing"
projectile_type = /obj/item/projectile/bullet/rifle/a545
matter = list(MAT_STEEL = 180)
ammo_flags = AMMO_FLAG_MEDIUM
@@ -84,7 +84,6 @@
desc = "A large bullet casing, probably fit for a sniper."
icon_state = "lcasing"
caliber = "large"
projectile_type = /obj/item/projectile/bullet/rifle/a338
matter = list(MAT_STEEL = 800)
ammo_flags = AMMO_FLAG_LARGE

View File

@@ -49,7 +49,7 @@
/obj/item/projectile/bullet/rifle/clockwork
fire_sound = 'modular_chomp/sound/weapons/clockwork/cwc_rifle_fire.ogg'
damage = 10
damage = 20 //Old 10
hud_state = "rifle_heavy"
/obj/item/projectile/beam/shock/clockwork
@@ -62,7 +62,7 @@
tracer_type = /obj/effect/projectile/tracer/voltbeam
impact_type = /obj/effect/projectile/impact/voltbeam
damage = 20
damage = 40 //Old 20
agony = 15
eyeblur = 2
hitsound = 'sound/effects/lightningshock.ogg'

View File

@@ -1,3 +1,4 @@
/* Combat refactor walkback
/obj/item/projectile/beam
damage = 20
@@ -43,27 +44,28 @@
/obj/item/projectile/beam/precursor
damage = 25
*/
//Damage values back to old values for combat refactor walkback, keeping simplemob bonus damage.
/obj/item/projectile/beam/phaser //The "medium" phaser beam.
damage = 10
//damage = 10
SA_bonus_damage = 10
/obj/item/projectile/beam/phaser/light
damage = 5
//damage = 5
SA_bonus_damage = 5
/obj/item/projectile/beam/phaser/heavy
damage = 12
//damage = 12
SA_bonus_damage = 12
/obj/item/projectile/beam/phaser/heavy/cannon
damage = 15
//damage = 15
SA_bonus_damage = 15
/obj/item/projectile/scatter/laser
damage = 20
damage = 40 //Old 20
submunition_spread_max = 40
submunition_spread_min = 10
@@ -75,7 +77,7 @@
/obj/item/projectile/beam/prismatic
name = "prismatic beam"
icon_state = "omnilaser"
damage = 5
damage = 10 //Old 5?
damage_type = BURN
check_armour = "laser"
light_color = "#00C6FF"
light_color = "#00C6FF"

View File

@@ -1,6 +1,6 @@
/obj/item/projectile/bullet
damage = 25 //seems many bullets use this vaule for some reason
/* Combat refactor walkback, default bullets do 60 damage I think so im keeping this, were not getting the CR20 incident again lol
/obj/item/projectile/bullet/pistol
damage = 10
@@ -126,4 +126,5 @@
muzzle_type = null
/obj/item/projectile/bullet/pellet/fragment/strong
damage = 7
damage = 7
*/

View File

@@ -1,18 +1,19 @@
//I think most of the energy weapons are security but I regonize a few of this from the aliens and drones.
//Combat refactor walkback, damage values will be reverted but bonuses and AP will stay, idk if this will affect balance
/obj/item/projectile/energy/excavate
damage = 20
//damage = 20
armor_penetration = 60
/obj/item/projectile/energy/excavate/weak
damage = 10
//damage = 10
excavation_amount = 100
/obj/item/projectile/energy/acid
damage = 15
//damage = 15
/obj/item/projectile/energy/neurotoxin/toxic
damage = 10
//
/obj/item/projectile/energy/phase/bolt
range = 4
SA_bonus_damage = 15 // 30 total on animals
@@ -25,11 +26,11 @@
hud_state = "taser"
/obj/item/projectile/energy/plasma/vepr
damage = 30
//damage = 30
armor_penetration = 15
/obj/item/projectile/energy/phase
damage = 5
//damage = 5
SA_bonus_damage = 15
armor_penetration = 0
SA_vulnerability = list(SA_ANIMAL, MOB_CLASS_SYNTHETIC, MOB_CLASS_ABERRATION)
@@ -39,11 +40,11 @@
armor_penetration = 0
/obj/item/projectile/energy/phase/heavy
damage = 5
//damage = 5
SA_bonus_damage = 20
armor_penetration = 0
/obj/item/projectile/energy/phase/heavy/cannon
damage = 5
//damage = 5
SA_bonus_damage = 35
armor_penetration = 0
armor_penetration = 0

View File

@@ -1,3 +1,4 @@
//File has been unticked due to combat refactor walk-back, things do more damage now
/obj/item/weapon/gun/energy
charge_cost = 80
@@ -90,4 +91,4 @@
list(mode_name="stun", fire_delay = 8, projectile_type= /obj/item/projectile/beam/stun, modifystate="x01stun", fire_sound='sound/weapons/Taser.ogg', charge_cost = 80),
list(mode_name="laser", fire_delay = 8, projectile_type=/obj/item/projectile/beam, modifystate="x01laser", fire_sound='sound/weapons/Laser.ogg', charge_cost = 160),
list(mode_name="gauss", fire_delay=15, projectile_type=/obj/item/projectile/energy/gauss, modifystate="x01gauss", fire_sound='sound/weapons/gauss_shoot.ogg', charge_cost = 120)
)
)

View File

@@ -1,5 +1,7 @@
//Oh this are apparently a thing
// Rod for railguns. Slightly less nasty than the sniper round.
//Combat refactor walkback, keeping AP and SA bonus
/*
/obj/item/projectile/bullet/magnetic
damage = 33
@@ -14,11 +16,11 @@
/obj/item/projectile/bullet/magnetic/flechette/small/khi
damage = 9
*/
/obj/item/projectile/bullet/magnetic/flechette/hunting
armor_penetration = 15
SA_bonus_damage = 20
/*
/obj/item/projectile/bullet/magnetic/heated/weak
damage = 7
@@ -35,4 +37,5 @@
damage = 7
/obj/item/projectile/bullet/magnetic/bore
damage = 10
damage = 10
*/

View File

@@ -6,7 +6,7 @@
icon_state = "impact_beam_heavy"
fire_sound = 'sound/weapons/lasercannonfire.ogg'
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
damage = 25
damage = 60 //Old 25
armor_penetration = 30
light_range = 3
light_power = 1
@@ -17,7 +17,7 @@
icon_state = "impact_laser"
fire_sound = 'sound/weapons/Laser.ogg'
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
damage = 20
damage = 40 //old 20
armor_penetration = 10
damage_type = BURN
check_armour = "laser"
@@ -27,7 +27,7 @@
icon_state = "impact_laser"
fire_sound = 'sound/weapons/Laser.ogg'
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
damage = 10
damage = 30 //Old 10
armor_penetration = 0
damage_type = BURN
check_armour = "laser"
@@ -38,7 +38,7 @@
icon_state = "impact_laser"
fire_sound = 'sound/weapons/Laser.ogg'
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
damage = 10
damage = 20 //Old 10
damage_type = BURN
check_armour = "laser"
@@ -46,7 +46,7 @@
name = "inversion blast"
icon = 'icons/obj/projectiles_impact.dmi'
icon_state = "impact_invert"
damage = 15
damage = 30 //old 15
armor_penetration = 60
damage_type = BURN
check_armour = "laser"
@@ -74,14 +74,14 @@
light_color = "#FF0099"
hud_state = "plasma_rifle"
damage = 25
damage = 48 //Old 25
armor_penetration = 10
//Eclipse mob stuff
/obj/item/projectile/energy/blob/moth
damage = 15
damage = 30 //old 15
armor_penetration = 15
my_chems = list("fuel", "mold")
flammability = 0.25
@@ -97,7 +97,7 @@
speed = 3.2
/obj/item/projectile/energy/electrode/eclipse
damage = 20
damage = 40 //old 20
damage_type = BURN
color = "#38b9ff"
speed = 3.2
@@ -114,22 +114,22 @@
/obj/item/projectile/energy/mob/heavysniper
armor_penetration = 40
damage = 40
damage = 60 //Old 40, not doubling that lol
speed = 1.2
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
name = "sniper beam"
icon_state = "impact_xray"
/obj/item/projectile/energy/declone/burn
damage = 15
damage = 30 //Old 15
nodamage = 0
speed = 3.2
irradiate = 30
/obj/item/projectile/energy/mob/ionbeam
name = "Ion Burst"
damage = 10
damage = 20 //Old 10
damage_type = ELECTROMAG
light_color = "#00CCFF"
icon_state = "impact_blue"
fire_sound = 'sound/weapons/Laser.ogg'
fire_sound = 'sound/weapons/Laser.ogg'