Skip to content

Commit

Permalink
Minor turret balancing (shiptest-ss13#3495)
Browse files Browse the repository at this point in the history
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request
Turrets now differ in when they'll be disabled from damage
Ship turrets now require ship access
NT turrets are shoddy make and have mildly less integrity
Fixes grammar in condition report
ship turrets are now less durable by default
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game
continues my turret program
<!-- Please add a short description of why you think these changes would
benefit the game. If you can't justify it in words, it might not be
worth adding. -->

## Changelog

:cl:
balance: Factional turrets now have new damage thresholds
balance: ship turrets now have 100 less integrity by default
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
  • Loading branch information
Erikafox authored and MrCat15352 committed Dec 27, 2024
1 parent 4d6f007 commit 141ec9d
Showing 1 changed file with 15 additions and 7 deletions.
22 changes: 15 additions & 7 deletions code/game/machinery/porta_turret/portable_turret.dm
Original file line number Diff line number Diff line change
Expand Up @@ -798,12 +798,13 @@ DEFINE_BITFIELD(turret_flags, list(

/obj/machinery/porta_turret/ship
installation = null
max_integrity = 300
max_integrity = 200
always_up = 1
use_power = ACTIVE_POWER_USE
active_power_usage = ACTIVE_DRAW_MINIMAL
has_cover = 0
scan_range = 9
req_ship_access = TRUE
stun_projectile = /obj/projectile/beam/disabler
lethal_projectile = /obj/projectile/beam/laser
lethal_projectile_sound = 'sound/weapons/plasma_cutter.ogg'
Expand All @@ -824,7 +825,7 @@ DEFINE_BITFIELD(turret_flags, list(
. = ..()
if(in_range(user, src) || isobserver(user))
if(!(machine_stat & BROKEN))
. += "<span class='notice'>Its reports that it's integrity is currently [(obj_integrity / max_integrity) * 100] percent.</span>"
. += "<span class='notice'>[src] reports its integrity is currently [round(obj_integrity / max_integrity) * 100] percent.</span>"

/obj/machinery/porta_turret/ship/weak
max_integrity = 120
Expand All @@ -849,6 +850,8 @@ DEFINE_BITFIELD(turret_flags, list(
name = "Sharplite Defense Turret"
desc = "A cheap and effective turret designed by Sharplite and purchased and installed on most Nanotrasen Vessels."
faction = list(FACTION_PLAYER_NANOTRASEN, "turret")
max_integrity = 160
integrity_failure = 0.6
icon_state = "standard_lethal"
base_icon_state = "standard"
stun_projectile = /obj/projectile/beam/disabler/sharplite
Expand All @@ -866,20 +869,19 @@ DEFINE_BITFIELD(turret_flags, list(
lethal_projectile_sound = 'sound/weapons/gun/laser/nt-fire.ogg'
stun_projectile_sound = 'sound/weapons/taser2.ogg'


/obj/machinery/porta_turret/ship/nt/heavy
name = "Sharplite Defense Cannon"
desc = "A heavy laser mounting designed by Sharplite for usage on Nanotrasen vessels."
lethal_projectile = /obj/projectile/beam/laser/heavylaser/sharplite
lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg'
max_integrity = 250

/obj/machinery/porta_turret/ship/nt/pulse
name = "Sharplite Pulse Cannon"
desc = "A pulse cannon mounting designed by Sharplite. Not sold to any purchasers and exclusively used on Nanotrasen Vessels."
lethal_projectile = /obj/projectile/beam/pulse/sharplite_turret
lethal_projectile_sound = 'sound/weapons/gun/laser/heavy_laser.ogg'


max_integrity = 250

/* Syndicate Turrets */

Expand All @@ -903,8 +905,10 @@ DEFINE_BITFIELD(turret_flags, list(
stun_projectile_sound = 'sound/weapons/taser.ogg'
lethal_projectile = /obj/projectile/beam/laser/heavylaser
lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg'
max_integrity = 300

/* Inteq Turrets */
//slower rof, higher damage + range

/obj/machinery/porta_turret/ship/inteq
name = "Vanguard Turret"
Expand All @@ -913,8 +917,9 @@ DEFINE_BITFIELD(turret_flags, list(
stun_projectile_sound = 'sound/weapons/gun/rifle/skm.ogg'
lethal_projectile = /obj/projectile/bullet/a762_40
lethal_projectile_sound = 'sound/weapons/gun/rifle/skm.ogg'
scan_range = 8
scan_range = 9
shot_delay = 20
integrity_failure = 0.4
faction = list(FACTION_PLAYER_INTEQ, "turret")

/obj/machinery/porta_turret/ship/inteq/light
Expand All @@ -925,7 +930,7 @@ DEFINE_BITFIELD(turret_flags, list(
lethal_projectile = /obj/projectile/bullet/c10mm
lethal_projectile_sound = 'sound/weapons/gun/smg/vector_fire.ogg'
subsystem_type = /datum/controller/subsystem/processing/fastprocess //turns out if you have a shot delay below what SSmachines fires at you need to use a different subsystem
scan_range = 4
scan_range = 5
shot_delay = 5

/obj/machinery/porta_turret/ship/inteq/heavy
Expand All @@ -944,6 +949,7 @@ DEFINE_BITFIELD(turret_flags, list(
faction = list(FACTION_PLAYER_SOLCON, "turret")

/* Pan Gezena Federation Turrets */
//midline but hitscan

/obj/machinery/porta_turret/ship/pgf
name = "Etherbor Defensive Mount"
Expand All @@ -955,6 +961,8 @@ DEFINE_BITFIELD(turret_flags, list(
lethal_projectile_sound = 'sound/weapons/gun/energy/kalixsmg.ogg'
icon_state = "standard_lethal"
base_icon_state = "standard"
max_integrity = 250
integrity_failure = 0.4

/obj/machinery/porta_turret/ship/pgf/light
name = "Etherbor Deterrent System"
Expand Down

0 comments on commit 141ec9d

Please sign in to comment.