Skip to content

Conversation

@SirWarock
Copy link
Contributor

@SirWarock SirWarock commented Jan 5, 2026

About the PR

I adjusted the values of the NT-3 to be weaker in an traitors/nukies hand.
The NT-3 cannot be parcel wrapped anymore.
The NT-3 will prevent the user from going invisible via stealth.
Firerate decreased: 4 shots per second -> 3 shots per second. Firerate with bipod remains unchanged at 7 shots per second.
Ammo capacity increased: 60 -> 80.
Bipod-Deploytime decreased: 2s -> 1.25s
Movementspeedslowdown increased: 10% -> 20%
.40 Anti-materiel ammo box (the printable one): 30 bullets per box -> 40 bullets per box.
Added CombatModeComponent to the whitelist, causing it to not infinitely pierce most living entities.

Since these adjustments negatively affect our beloved local cargo antag the most, I've taken the liberty to name the PR accordingly.

I also adjusted the wielded sprites, they looked off.

Why / Balance

Parcelwrapping the NT-3 to turn it from a Backpackslot only weapon into a 2x4, circumventing the movementspeed debuff, is outright crazy. I specifically only allowed backpackslot to make the NT-3 unwieldy and a commitment - You cannot carry a secondary weapon to defend yourself, unless it's a pistol. Parcel wrapping went against this philosophy.
Stealth with the NT-3 is also outright bonkers. I do not need to explain why.
I decreased the firerate because I read that 4 seccies with 4 NT-3s decided to run down a dragon and a colossus with it.
You should never willingly use the NT-3 without the bipod - That should be a last option, a desperate attempt to keep an enemy from advancing. If you don't wanna use the bipod, use a lecter.
Increased the slowdown to make it more likely to be caught out with the weapon. Better have teammates that can back you up.
Bipod-Deploytime has been decreased due to the firerate and slowdown nerf. while you have a harder time getting into a good position, you'll have an easier time capitalizing on one.
Ammo count has been increased because I wanted to.

Technical details

Bunch of YML changes.
Added the PreventStealthComponent and added checks for it in SharedStealthSystem.
Added AddedStealthEvent and StealthModifiedEvent to work with the afforementioned component.

Media

grafik grafik grafik grafik
NT-3.Adjustment.mp4

Requirements

  • I have tested all added content and changes.
  • I have added media to this PR or it does not require an ingame showcase.

Breaking changes

Changelog

🆑

  • tweak: The NT-3 prevents invisibility via stealth!
  • tweak: The NT-3 has a pierce limit of 1 mob.
  • tweak: The NT-3's firerate has been decreased from 4.0 to 3.0. Firerate with the bipod remains unchanged.
  • tweak: The NT-3's ammo capacity has been increased from 60 to 80.
  • tweak: The NT-3's bipod deployment time has been decreased from 2s to 1.25s.
  • tweak: The NT-3's movement speed slowdown increased from10% to 20%.
  • tweak: The NT-3 cannot be parcel-wrapped anymore!
  • tweak: The .40 Anti-materiel ammo box (the printable one) has been increased from 30 bullets per box to 40 bullets per box.
  • fix: Adjusted the wielding sprites of the NT-3 to look less wrong.

@SirWarock SirWarock requested a review from a team as a code owner January 5, 2026 13:29
@github-actions github-actions bot added Changes: YML Changes any yml files Changes: C# Changes any cs files Changes: Sprite Changes any png or json in an rsi size/M 64-255 lines S: Needs Review Awaiting review from a Maintainer labels Jan 5, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Jan 5, 2026

RSI Diff Bot; head commit 69eabf4 merging into a345a0b
This PR makes changes to 1 or more RSIs. Here is a summary of all changes:

Resources/Textures/_DV/Objects/Weapons/Guns/LMGs/NT-3.rsi

State Old New Status
wielded-inhand-left Modified
wielded-inhand-right Modified

Edit: diff updated after 69eabf4

@Cepelinas1
Copy link
Contributor

is it possible to limit the penetration range (like the bullet can only go through 3 things at max, like walls and humans) or is it coding hell

@SirWarock
Copy link
Contributor Author

is it possible to limit the penetration range (like the bullet can only go through 3 things at max, like walls and humans) or is it coding hell

Currently, it goes through 1 whitelisted entity and an infinite amount of non-whitelisted entities.
Current whitelisted entities are walls. If it hits one wall, it'll pierce that wall (unless it has a high enough health like reinforced walls) and then be stopped by the next.
Humans are currently not whitelisted. If I were to whitelist them, they'd count as a wall. That is all possible via YML.
However.
If I am to differentiate between humans and walls (aka between whitelisted entities), that would be coding hell.

@ShepardToTheStars ShepardToTheStars changed the title Nerf C.A.R.P. (John Doe) NT-3 Tweaks Jan 5, 2026
@ShepardToTheStars
Copy link
Contributor

ShepardToTheStars commented Jan 5, 2026

Currently, it goes through 1 whitelisted entity and an infinite amount of non-whitelisted entities.

I'd really rather not maintain an arbitrary whitelist of things the NT-3 suddenly cannot penetrate well.

What if you kept track of how many entities it has pierced, and just put in a way for there to be a MaxPierces and despawn the bullet once it meets or exceeds that amount?

@SirWarock
Copy link
Contributor Author

What if you kept track of how many entities it has pierced, and just put in a way for there to be a MaxPierces and despawn the bullet once it meets or exceeds that amount?

That is possible, but then I couldn't differentiate between a mouse and a wall. With how I coded it currently, it allows for a much finer control as to what should count towards the penetration counter and what shouldn't.

@ShepardToTheStars
Copy link
Contributor

ShepardToTheStars commented Jan 5, 2026

That is possible, but then I couldn't differentiate between a mouse and a wall. With how I coded it currently, it allows for a much finer control as to what should count towards the penetration counter and what shouldn't.

Well, you could turn the blocklist into an actual EntityBlacklist, make PierceCounter count every entity it hits, then just do something like.

(psuedocode)

if (comp.PierceCounter >= comp.MaxPierces || _whitelist.IsBlacklistFail(comp.Blacklist))
  DeleteProjectile()

@SirWarock
Copy link
Contributor Author

I turned it into a whitelist now - which is much more of an elegant solution than the List<<ProtoId>Tag> was.
I added CombatModeComponent to the whitelist, so anything that can fight will count towards the counter.
It can only pierce 1 human and hit the second, for example.

// If it does have the tag to stop it and enough health to count as "strongly armored", it'll block the bullet.
if (bullet.Comp.HealthThreshold < args.RequiredDamage)
// Mobs return a required Damage amount of Float.MaxValue. Therefore we need to check for absurdly high values.
if (bullet.Comp.HealthThreshold < args.RequiredDamage && args.RequiredDamage < 20000000)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Magic number. Declare as a constant and give it a descriptive name. Also, probably comment how you derived it (if it was more than picking 'BIG NUMBER YAY!')

Suggested change
if (bullet.Comp.HealthThreshold < args.RequiredDamage && args.RequiredDamage < 20000000)
if (bullet.Comp.HealthThreshold < args.RequiredDamage && args.RequiredDamage < 20000000)

Comment on lines +1 to +9
using Content.Shared._DV.Stealth; // DeltaV - Make certain items unable to stealth.
using Content.Shared._DV.Stealth.Components; // DeltaV - Make certain items unable to stealth.
using Content.Shared.Examine;
using Content.Shared.Hands; // DeltaV - Make certain items unable to stealth.
using Content.Shared.Inventory; // DeltaV - Make certain items unable to stealth.
using Content.Shared.Mobs;
using Content.Shared.Mobs.Systems;
using Content.Shared.Stealth.Components;
using Robust.Shared.Containers; // DeltaV - Make certain items unable to stealth.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are all of these DeltaV additions needed now that you moved things to Content.Shared/_DV/Stealth/Systems/SharedStealthSystem.cs?

@ShepardToTheStars ShepardToTheStars added S: Awaiting Changes Do not merge due to requested changes and removed S: Needs Review Awaiting review from a Maintainer labels Jan 6, 2026
- Wall
- Window
components:
- CombatMode
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In case there are mobs that don't have combat modes.

Suggested change
- CombatMode
- CombatMode
- MobState

@ShepardToTheStars
Copy link
Contributor

Direction review 24h

@ShepardToTheStars ShepardToTheStars added the Under Direction Review This pull request is under consideration from the Direction team. label Jan 6, 2026
maxAngle: -20
angleDecay: 4
fireRateIncrease: 3
fireRateIncrease: 4
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Direction requested change. Lowering the bipod fire rate to 6 makes this a bit less overwhelming.

Suggested change
fireRateIncrease: 4
fireRateIncrease: 3

soundEmpty:
path: /Audio/Weapons/Guns/Empty/lmg_empty.ogg
- type: GunBipod
setupDelay: 1.25
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Direction requested change. We like the bipod time at 2 seconds because it allows people to get to cover if they realize there's an NT-3. If we lower it, we run into the territory that even if you notice it and start running for cover, you're still going to get shot.

(Revert to 2 seconds)

Suggested change
setupDelay: 1.25
setupDelay: 2

(Or remove)

Suggested change
setupDelay: 1.25

- Back
- type: ClothingSpeedModifier
sprintModifier: 0.9
sprintModifier: 0.8
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Direction requested change. Speed nerf isn't really needed.

Suggested change
sprintModifier: 0.8
sprintModifier: 0.9

@ShepardToTheStars
Copy link
Contributor

Direction changes requested, and approved once they are made!

@ShepardToTheStars ShepardToTheStars removed the Under Direction Review This pull request is under consideration from the Direction team. label Jan 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: C# Changes any cs files Changes: Sprite Changes any png or json in an rsi Changes: YML Changes any yml files S: Awaiting Changes Do not merge due to requested changes size/M 64-255 lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants