From ecd33388dd34e6c99f9cb9ae9d7d4a601cc220f6 Mon Sep 17 00:00:00 2001 From: mynameasjeff <55303178+mynameasjeff@users.noreply.github.com> Date: Wed, 14 Jan 2026 15:29:45 -0400 Subject: [PATCH] Small gun go blam blam blam: The Light Coilgun revive + SSRM Corvette Tweaks (#21699) This PR aims to revive the Solarian Light coilgun from #20094 and replaces the SSRM Corvette's Grauwolf with said Coilgun. Credit goes to TheDanseMacabre for the sprites and code. --- aurorastation.dme | 1 + .../ship_weaponry/weaponry/light_coilgun.dm | 38 ++++ .../Mynameasjeff-PR-Coilgunrevive.yml | 61 +++++++ .../machinery/ship_guns/sol_light_coilgun.dmi | Bin 0 -> 7351 bytes maps/away/ships/sol/sol_ssrm/ssrm_ship.dmm | 172 +++++++++--------- .../sol/sol_ssrm/ssrm_ship_ghostroles.dm | 4 + 6 files changed, 193 insertions(+), 83 deletions(-) create mode 100644 code/modules/overmap/ship_weaponry/weaponry/light_coilgun.dm create mode 100644 html/changelogs/Mynameasjeff-PR-Coilgunrevive.yml create mode 100644 icons/obj/machinery/ship_guns/sol_light_coilgun.dmi diff --git a/aurorastation.dme b/aurorastation.dme index a8a32e327eb..e38a9c0857d 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -3274,6 +3274,7 @@ #include "code\modules\overmap\ship_weaponry\weaponry\grauwolf_probe.dm" #include "code\modules\overmap\ship_weaponry\weaponry\lammergeier.dm" #include "code\modules\overmap\ship_weaponry\weaponry\leviathan.dm" +#include "code\modules\overmap\ship_weaponry\weaponry\light_coilgun.dm" #include "code\modules\overmap\ship_weaponry\weaponry\longbow.dm" #include "code\modules\overmap\ship_weaponry\weaponry\longbow_ammo.dm" #include "code\modules\overmap\ship_weaponry\weaponry\nephilim.dm" diff --git a/code/modules/overmap/ship_weaponry/weaponry/light_coilgun.dm b/code/modules/overmap/ship_weaponry/weaponry/light_coilgun.dm new file mode 100644 index 00000000000..7df9709ddc6 --- /dev/null +++ b/code/modules/overmap/ship_weaponry/weaponry/light_coilgun.dm @@ -0,0 +1,38 @@ +/obj/machinery/ship_weapon/coilgun/light + name = "M302A7 piledriver light coilgun" + desc = "A miniaturized version of the Solarian Navy’s coilgun platform, the M302A7 is the latest version of a weapon class that has served with honor since the Interstellar War. A semiautomatic, magazine-loaded design, it excels at applying pressure to enemy shields and hulls." + desc_extended = "Pressed for a smaller version of a coilgun to fit onto escort craft, the Alliance contracted what was then Necropolis Industries to design and manufacture the Navy’s first coilgun for corvette use in the mid-2200s. The M2307 is a post-Interstellar War modernization of earlier models that had been steadily improved upon over time. Though phased out of use in some battlegroups in favor of the M455A1 light coilgun, it remains a common sight in many fleets." + icon = 'icons/obj/machinery/ship_guns/sol_light_coilgun.dmi' + icon_state = "weapon_base" + max_ammo = 3 + projectile_type = /obj/projectile/ship_ammo/coilgun/light + + heavy_firing_sound = 'sound/weapons/railgun.ogg' + firing_effects = FIRING_EFFECT_FLAG_EXTREMELY_LOUD + screenshake_type = SHIP_GUN_SCREENSHAKE_ALL_MOBS + caliber = SHIP_CALIBER_COILGUN + +/obj/item/ship_ammunition/coilgun/light + name = "light tungsten rod pack" + name_override = "light tungsten rod" + desc = "A pack of rods used as ammunition for a light coilgun." + icon = 'icons/obj/ammo.dmi' + icon_state = "trodpack-2" + caliber = SHIP_CALIBER_COILGUN + overmap_icon_state = "light_pulse" + impact_type = SHIP_AMMO_IMPACT_AP + +/obj/projectile/ship_ammo/coilgun/light + name = "low-power tungsten rod" + icon_state = "heavy" + damage = 10000 + armor_penetration = 1000 + penetrating = 1 + +/obj/projectile/ship_ammo/coilgun/light/on_hit(atom/target, blocked, def_zone, is_landmark_hit) + . = ..() + if(ismob(target)) + var/mob/M = target + M.visible_message(SPAN_DANGER("\The [src] blows [M]'s chest apart and punches straight through!")) + if(isturf(target) || isobj(target)) + explosion(target, 2, 3, 4) diff --git a/html/changelogs/Mynameasjeff-PR-Coilgunrevive.yml b/html/changelogs/Mynameasjeff-PR-Coilgunrevive.yml new file mode 100644 index 00000000000..4498c99b684 --- /dev/null +++ b/html/changelogs/Mynameasjeff-PR-Coilgunrevive.yml @@ -0,0 +1,61 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: Mynameasjeff + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Revives the long-lost Solarian Light Coilgun (credit goes to @TheDanseMacabre for the assets and code)" + - rscadd: "Replaces the SSRM Recon Corvette's Grauwolf with said coilgun." + + diff --git a/icons/obj/machinery/ship_guns/sol_light_coilgun.dmi b/icons/obj/machinery/ship_guns/sol_light_coilgun.dmi new file mode 100644 index 0000000000000000000000000000000000000000..7a315e9515d01314f54a74450151ed5740267c1f GIT binary patch literal 7351 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 av6T=;cVH{YUx)uj1k8*rjY