Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated XM43E1 for Sniper Spec #5774

Merged
merged 29 commits into from
Apr 6, 2024
Merged

Conversation

Kaga-404
Copy link
Contributor

@Kaga-404 Kaga-404 commented Feb 21, 2024

About the pull request

New Updates:

  • Using Aimed Shot on a fully-focused target will now change the laser and icon to blue.
  • Aimed Shot Damage has been adjusted across the board with two new effects, which stack together.
  • The first is current health damage, which allows it to stay about as dangerous against full-health Xenos, but reduces the pressure at low health, and the likelihood of going from 375 HP to crit immediately. Low-health burst sniping becomes even more unlikely from Aimed Shots when combined with the second effect, Focused Fire. The scaling is 20% against most xenos, and 30% against big xenos.
  • Focused Fire triggers whenever Aimed Shot lands on a target, though it only modifies damage applied to most xenos at the moment, except Runners. This effect reduces the bonus Aimed Shot Damage by 50% when hitting a new target. However, subsequent Aimed Shot hits against the same xeno will increase the modifier, with the second going up to 75%, and then the 3 onwards at 100%. This effect resets when landing an Aimed Shot on another target. If you're the sniper, consider using normal shots for damage and support to preserve your focus on a priority target.
  • Defenders are now excluded from the higher-tier size calculations, so they only take 200 + 10% current health damage from Aimed Shots. Focused Fire damage reduction doesn't apply to them because of this, but it might be added in if they still continue to struggle when trying to block shots for allies. However, they may also be targeted less by the ability with this update, and only take normal hits (can survive 4-5 on weeds, which takes the sniper about 16-20s of open sightlines and free shots) because the focus mark is being kept on a more dangerous target.

Fixed PR built from the master branch. Thank you to Zonespace for the idea of making a Wall-Penetrating Ammo subtype, with more nuance and falloff mechanics to expand on stemming from the Vulture, and all the help in messing around with the code.

The XM43E1 is an experimental anti-materiel rifle that's existed in the code for a while as a test weapon, but had several bugs and insufficient testing. This PR should hopefully allow it to be testmerged in a balanced manner as an M42A sniper sidegrade, without the need for staff to spawn it in. It can be picked as a normal option from Spec Vendors, being mutually exclusive with the M42A, as well as cryo spec kits.

Its design purpose is that of a sniper weapon that fires slower, with less direct combat utility, but more supportive utility and higher impact on shots that actually land. To this purpose, in comparison to the normal sniper rifle (M42A), it:

  • Has around half the magazine of the normal sniper (8 vs 15)
  • Has slightly less damage potential within the magazine (1000 vs 1050)
  • Has less DPS than the M42A (125 vs 140, per 3s)
  • Loses out on combining ammunition types, and their special effects. It cannot set targets on fire, hit around corners with flak, or use their respective special effects from aimed shots (blindness and slows).
  • Has special damage scaling on its aimed shot, causing it to lose massive amounts of potential damage per magazine when hitting small targets. 1.8x vs Non-Xenos and Runners, 2.4x vs most Xenos, and only the normal 3x vs Big Xenos. Most T3s, the Queen, and Fortified Defenders. This comes out to as little as 1800 damage per magazine from Aimed Shots, compared to Marksman M42A mags dealing up to 3150, with a max single-target potential of 3000 vs 3150.

In return, however, it has higher single-shot damage that allows for more surprising burst, and effects of its own to enable alternative support and utility, alongside special balancing to make them more balanced and interesting to play around, explained below.

Also included in this PR are several backend fixes to actually make this work properly - without this, the weapon would deal more damage when wallbanging, and also deal multiplied damage to mobs inside of walls, like a Queen building beneath herself.

Explain why it's good for the game

The updated XM43E1's design keeps the weapon's wall-and-mob-piercing, but adds in falloff for balancing and interactivity, which applies to everything it hits. While it retains massive damage against walls and structures, able to break even Thick Resin in a single shot, normal metal walls in 4, and reinforced in 8, it now loses a huge portion of its energy when doing so, subsequently reducing its damage and penetration power.

What this means in practice is that it can no longer theoretically multiply its potential damage by up to 8x if everything lines up. In fact, it can barely even get through 2 walls, doing very little damage after that. Mobs, it can handle a bit better, but bodyblocking for more vulnerable targets is a valid strategy to try and protect allies from the AMR. You take the brunt of the hit, and increase their technical DPS, but greatly blunt the damage to the targets behind you.

The actual numbers are 20% reduction in damage for most targets hit, and 60% for dense walls (normal and resin walls) and Big Xenos. Note that this does not include Resin Membranes or windows, which goes into another of the XM43E1's sidegrade utilities: the ability to fight Boilers, something Sniper Spec has been lacking for years ever since the caste was updated, and a feature this weapon had been originally been designed around.

Membranes will still reduces the AMR's effectiveness temporarily, but such defenses break under sustained focus from it, forcing the Boiler to either seek out allies to cover for it (Fortify Defender escort is back!) or shift to new positions and angles, prepared by builders to force the AMR to expend more ammo.

Additionally, this also affects the Aimed Shot's potential, stacking with the existing special modifiers. Against single targets, the XM43E1 is still far inferior in most cases, only being able to deal more damage when you can only fire off one shot before needing to run, at the cost of way less actual damage and none of the special effects compared to the M42A's special ammos, but in a crowd it gains some benefits and loses others.

The main benefit is that the technical damage it's dealing is increasing. More targets, more hits, more efficiency. However, the Aimed Shot target can be covered by others, potentially reducing that multiplier down, or even blocking the shot completely. A few big xenos can entirely eat an Aimed Shot for a Queen, and they don't take the increased damage.

Wallbreaking and wallbanging potential is also heavily reduced by this new effect, as the XM43E1 should usually only be able to hit targets at most 2 walls in, and that's within pretty close ranges. At most sniping ranges it'll probably be only one. It can break a Thick Resin Wall in 1 shot, but it'll only slightly hurt the second one behind that, and have to spend another full shot to break that down, and so on. The Sniper Spec also doesn't have thermals, so while true wallbanging is still possible, it's not consistent like the PMC Sniper, nor is it nearly as effective due to the above mentioned falloff. You'll be looking at around like 50 damage after just 1 wall.

That one shot can save people, though, like the old-school masterkey supports. Gotta get someone out who got dragged behind a door? Blast away like the XM51 does these days, except from a long-range support position. Its design also emphasizes aiming for structural weakspots like Resin Membranes, glass, and doors.

Essentially, it serves as a sidegrade where you trade off superior overall stats, extremely flexible combat utility, and special Aimed Shot effects for:

  • Slightly worse damage against single target, but better damage against multiple that line up, with diminished effectiveness for each target, at long ranges, and against big xenos.
  • An Aimed Shot 60% as efficient as a M42A's aimed shot against runners, 80% against most xenos, and only equal efficiency against big xenos. It can potentially still hit and get that sweet multiplier through a few xenos, or if a target ducks behind a wall once the shot goes out but before it hits. However, any blocking, whether mobs or walls, will greatly reduce the final damage, and may even completely block it. No more hitting a full damage Aimed Shot through 7 xenos.
  • The ability to break singular walls and obstacles with precisely aimed shots, especially resin, but at the cost of a full shot. You only get 8 per mag, and each mag costs the same as a sniper's, and it'll be 3 seconds before you can shoot something else.
  • A weapon that isn't CAS/Mortar/OB to counter Boilers, by easily breaking their cover and chipping away at them, and performing better against peeking than the M42A's lower single-shot damage.

Testing Photographs and Procedure

Screenshots & Videos

Put screenshots and videos here with an empty line between the screenshots and the <details> tags.

Changelog

🆑 Kaga
add: Added the XM43E1 Anti-Materiel Rifle as a pickable sidegrade option for USCM Sniper Specs through the vendor, mutually exclusive with the normal M42A Sniper Rifle. The AMR can shred obstacles, blow a hole through most infantry and their equipment, and even hit a collateral on multiple targets or through light cover, but its lack of specialized ammunition and small magazine mean that you'll need to make every shot count. Ammo can be bought from Req, at the same cost per magazine as the M42A.
balance: Completely updated the XM43E1 AMR, adding damage falloff to its wall-piercing properties whenever it hits something alongside range loss. Most things reduce its damage by 20%. Dense walls and big xenos reduce both the damage and range 3 times as much.
/:cl:

@github-actions github-actions bot added Feature Feature coder badge Balance You need to be a professional veteran game maintainer to comprehend what is being done here. labels Feb 21, 2024
@Huffie56
Copy link
Contributor

their is two open issues concerning vulture if you could take a look that would be lovely thanks.
https://github.com/cmss13-devs/cmss13/issues?q=is%3Aissue+is%3Aopen+vulture+spotter

@Drulikar Drulikar added Testmerge Candidate we'll test this while you're asleep and the server has 10 players Needs Testing Need to test it on the guinea pigs (production server) labels Feb 26, 2024
Copy link
Contributor

@Drulikar Drulikar left a comment

Choose a reason for hiding this comment

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

Otherwise no problems with brief testing. Will add to TMs as is.

code/datums/elements/bullet_trait/damage_boost.dm Outdated Show resolved Hide resolved
code/datums/elements/bullet_trait/damage_boost.dm Outdated Show resolved Hide resolved
cm13-github added a commit that referenced this pull request Feb 26, 2024
@Drulikar Drulikar marked this pull request as draft February 26, 2024 13:50
@Drulikar
Copy link
Contributor

Drulikar commented Feb 26, 2024

Oh also please rename the lineart.dmi state for this gun from xm42b to xm43e1 so it shows up correctly in weapon stats.
image

Copy link
Contributor

@Drulikar Drulikar left a comment

Choose a reason for hiding this comment

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

Other thoughts as I observed a round with this:

  • This sniper must be mutually exclusive to the other sniper (as in if you have one, you cannot have the other)
  • I don't think the user has any idea they can fire it past a wall; their aimed shot will end when the target enters cover. Not sure if its intended to shoot through cover only if its at the very end of the shot, or if this is to only apply to manual shots (fine if its this case; just maybe I need to look at the weapon descriptions more).
  • Damage multiplier w/o any obstruction as an aimed shot is probably too high overall regardless of size; but I would have to see it used more. Two shots will easily overkill a queen. A good position with this gun means no one can even attempt to engage without being above 80-90% health or risk being killed outright fully through crit. Probably the only feasible way to have this much damage would be if it took a severe penalty for any damage rolling over into crit.

One aimed shot (though close range) on each:
image

cm13-github added a commit that referenced this pull request Feb 26, 2024
cm13-github added a commit that referenced this pull request Feb 26, 2024
cm13-github added a commit that referenced this pull request Feb 26, 2024
@Nanu308 Nanu308 mentioned this pull request Feb 26, 2024
3 tasks
code/datums/supply_packs/spec_ammo.dm Outdated Show resolved Hide resolved
cm13-github added a commit that referenced this pull request Feb 27, 2024
cm13-github added a commit that referenced this pull request Mar 30, 2024
cm13-github added a commit that referenced this pull request Mar 30, 2024
cm13-github added a commit that referenced this pull request Mar 30, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Mar 31, 2024
cm13-github added a commit that referenced this pull request Apr 1, 2024
Copy link
Contributor

github-actions bot commented Apr 2, 2024

This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself

@github-actions github-actions bot added the Stale beg a maintainer to review your PR label Apr 2, 2024
@Kaga-404 Kaga-404 marked this pull request as ready for review April 3, 2024 06:21
@Drulikar Drulikar removed the Stale beg a maintainer to review your PR label Apr 5, 2024
@Drulikar Drulikar added the Balance Approved This PR has had its balance and gameplay-affecting aspects approved. Cry to the Head-maint about it. label Apr 5, 2024
cm13-github added a commit that referenced this pull request Apr 5, 2024
cm13-github added a commit that referenced this pull request Apr 5, 2024
@Drulikar Drulikar added this pull request to the merge queue Apr 6, 2024
Merged via the queue into cmss13-devs:master with commit 48fde5d Apr 6, 2024
27 checks passed
cm13-github added a commit that referenced this pull request Apr 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Balance Approved This PR has had its balance and gameplay-affecting aspects approved. Cry to the Head-maint about it. Balance You need to be a professional veteran game maintainer to comprehend what is being done here. Feature Feature coder badge Needs Testing Need to test it on the guinea pigs (production server) Testmerge Candidate we'll test this while you're asleep and the server has 10 players
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants