Files
BurgerLUAandGitHub 945f516cf3 Adds Security Missile Launchers (real) (#4316)
<img width="573" height="475" alt="image"
src="https://github.com/user-attachments/assets/3a38946a-41b0-455d-8bbe-333cc5bc3b85"
/>

## About The Pull Request

Adds Security Missile Launchers. These are special missile launchers
that have a custom snowflake code active radar system that seeks out
targets based on their perceived density, somewhat similar to how IRL
radar works.

Codewise, while the missile is in flight, it will scan targets in a cone
in front of it, and do a weighted random selection of which target to
home in on. For walls and turfs, it is based on its heat capacity
(generally, stronger materials have higher radar signature). For objects
and mobs, objects with higher health are more likely to be chosen, thus
it should only be used in very wide open areas, such as space, as it is
extremely likely the missile will target a nearby vending machine, a
wall, the neighbor's dog, or even the floor.

Once the missile hits, it will create a custom snowflake explosion that
calls the explosion proc on non-living objects and just apply bomb
damage to living objects. This is to ensure that the missile launcher
doesn't delimb and ruin an antag's round. Against living targets, it
applies a 2 second knockdown.

One missile launcher will exist round start, in the armory, along with 4
missiles. Additional missile launchers can be ordered for 50,000 credits
each. A box of 5 missiles can be ordered for 10,000 credits each.

Keep in mind that you can't just walk up to someone and point blank a
target with it, avoiding the drawbacks of the weapon. The missile must
travel for some time before it actually arms. Hitting someone too close
will cause toolbox-tier damage, and stun them for 2 seconds.

## Why It's Good For The Game

The intent here is to actually give security some fighting chance
against space tiding. As it currently stands, security is at a MASSIVE
disadvantage in space, due to:
- Limited security modsuits round start.
- Jetpacks being able to travel faster than bullets/lasers/etc.
- Antagonists being designed to 1v2 security officers, and win.
- Antagonists having built-in or easy-to-access EVA capabilities.
- Inherently low view range, making scouting difficult and easy to get
caught in an ambush.
- Easy to access modsuit modules, jetpacks, and modsuits themselves via
cargo and robotics.
- In space, no one can hear you complain about being stripped and left
for dead on another z-level.

The intent of a missile launcher is to even the playing field against
spacetiding antagonists without having to directly nerf spacetiding
antagonists. While this won't stop spacetiding, it will require
spacetiders to dodge missiles and stick closer to the station in order
to bait missiles into hitting walls.

Don't expect this missile launcher to work well in hallways, or near
multiple targets. As the American Declaration of Independence once said:

> "We hold these truths to be self-evident, that all men are tracked by
missiles equally."

## TODO

- [x] Move all the code to the modules folder instead of keeping
everything in one file.
- [x] Add custom effects like smoke, light, and a missile ignition
sound.
- [x] Add a reload time to the rocket launcher so you can't just rapid
fire them. (Not possible, added a fire delay of 2 seconds).
- [x] Fix the angle code and figure out if an angle of 0 means north or
east.
- [x] Add a (nerfed) backblast to it.
- [x] Make the weapon obtainable via armory.
- [x] Make the ammo obtainable via cargo + armory.
- [x] Add emag interaction to the rocket launcher (radar will instead
loop around back to the user after being fired).
- [x] Make a better ammo icon sprite.
- [x] Make the missile run radar seeking code the moment it is created
so it isn't a normal missile for 1 second.
- [x] Balance the missile (make it slower, deal less damage, add an HP
cap for mobs so large HP mobs like space dragons aren't dicked, etc)
- [x] Add a debug variant that has like a magazine of 50 rockets for lag
testing.

## Proof Of Testing

Tested extensively ™️


https://github.com/user-attachments/assets/780ff8d0-dc5d-445f-b34c-0e3c3878faa9


## Changelog
🆑 BurgerBB
add: Adds Security Missile Launchers. These are special missile
launchers that have a custom snowflake code active radar system that
seeks out targets based on their perceived density, somewhat similar to
how IRL radar works.
/🆑
2025-09-27 20:36:49 +02:00

17 lines
823 B
Plaintext

/datum/supply_pack/security/armory/rocket_launcher
name = "Security Missile Launcher Crate"
desc = "Contains one \"VARS\" Variable Active Radar Missile System for security."
cost = CARGO_CRATE_VALUE * 50 //10000
access_view = ACCESS_ARMORY
contains = list(/obj/item/gun/ballistic/rocketlauncher/security = 1)
crate_name = "security missile launcher crate"
discountable = SUPPLY_PACK_UNCOMMON_DISCOUNTABLE //Shits and giggles.
/datum/supply_pack/security/armory/rocket_launcher_ammo
name = "Security Missile Launcher Ammo Pack"
desc = "Contains a box of 7 \"VARS\" HE missiles for the \"VARS\" Variable Active Radar Missile System."
cost = CARGO_CRATE_VALUE * 7 //1400
access_view = ACCESS_ARMORY
contains = list(/obj/item/storage/box/security_missiles = 1)
crate_name = "security missile launcher ammo crate"