# Exploration Update - Combat
- lmao I have way too many projects right now, don't expect this to be done in a timely manner. If you want to help though, it would be very, very much appreciated, so ping me ~@silicons
- lmao yeah probably expect this by 2022 or something with the amount of effort + balance issues this is going to be
- This is hilariously WIP.
- This'll probably be after everything else as part of ship combat/ghostroles/shuttle interdiction implementation.
## Armor, Physiology
### Armor
- Completely rework armor
- New armor types:
- `blunt` - represents mitigation to blunt force like being hit with a bat or a heavy object
- `pierce` - represents mitigation to piercing physical force like being stabsbed with a sharp object or impaled on a spike
- `ablate` - represents resistance to "burst" heat sources like laser/blaster impacts, welders, etc
- `conduct` - replaces siemens_conductivity - represents resistance to electricity. All electrical damage and stuns will be converted into a single electrocute_act much like on baycode, and this armor type is what determines how much you receieve on an area.
- `bio` - represents permeability. How easy is it for microbes, nanites, microscopic living organisms to find a way inside. Also represents **chemical soak protection** from things like smoke, foam, etc
- `acid` - represents resistance to corrosive or caustic things that chemically destroy materials.
- `bomb` - represents resistance to concussive force and shock waves
- `rad` - represents resistance to radiation, whether contaminating radiation or radiation waves
- `energy` - represents general resistance to energy beams like disablers which are assumed to be some futuristic device that projects normally-penetrating energy of a certain type with certain effects on materials of some type.
- `magic` - more on this below
- These are the armor **types**. They aren't necessarily represented by one variable - with the use of armor datum references vs new lists, we save a ton of memory and can afford a high level of simulation if needed. The only overhead is coders having to set these on items
- Therefore it should be easy to set armor regardless. We could have melee damage and legacy damage types automatically translate to the new armor types for the time being and automate it for lazier/busier coders.
- `magic` and `energy`: xenoarcheology is being slowly designed and worked on. Optimally, these things wouldn't be in armor, or would allow for more complex simulations (particle types, etc). More on that later, but for the sake of argument, assume it's still a % based mitigation like before.
- Even in a perfect implementation of artifacts and exotic particles this'll still be useful for "generics" like disablers and similar which don't always need that level of simulation.
- Armor represents the physical properties of something's material. You'll notice that `bullet` armor is gone - that's because bullets will have properties that are sometimes better blocked by blunt, or sometimes better blocked by pierce. Lasers are ablating, so are welders.
- heat and cold protection can be rolled in at some point too if needed. A gradual heat source won't do anything to a firesuit, lmao
- Armor shouldn't stack additively, but stacking multiplicatively might make it too weak. A new formula is needed, because...
- Almost all clothing will have armor. It'll always be better to be hit by a laser in an area you have a jumpsuit on than to not. Some things will have higher damage to make up for this, because even normal clothing will have some material property that helps soften effects like ablation and chemical splashes.
- Obviously they'll be shitty at it so you won't have someone with a jumpsuit being significantly harder to kill either
- Clothing damage is a thing :)
### Physiology
- We currently have species and physiology mods
- Change species armor entirely
- Species armor should just be a /datum/physiology_mod to apply to physiology on species gain
- Physiology armor:
- More traditional resists as well as armor
- Brutemod, burnmod, etc, but also includes new armor
- This helps represent how this is more of a trait with the biological (or not, given that we will have synthetics soon) structure of a mob vs armor, which is a physical barrier attempting to prevent damage
- Things like under-skin dermal armor nanites would modify physiology as it's not an external physical protection.
## Jetpack, Space Combat
- Vector jetpacks
- Jetpacks have a low speed controlled mode like they do now (gives slightly faster speed than run in space or floating contexts)
- Jetpacks can have their stabilizers disabled
- User uses physics vectors to move
- Jetpack applies thrust every tick
- Impacting things at high speed will not be good for you.. or the thing you just hit.
## Projectiles, Guns
- Guns:
- Refactored to /projectile, /beam, /special
- Standardized icon updates etc for all of them
- /projectile are all current guns firing an /obj/projectile
- /beam represents constant beam things. This won't be too useful right now and might just be excluded but it could be fun later on.
- /special represens neither - current mediguns, pneumatic item launchers, throwers, "abstract" guns, etc
- Projectiles:
- Port latest /tg/ backend for projectiles, pass flags, prehits, handling, etc
- Most projectiles are either blunt/kinetic, burn/ablating, concussive, or some sort of abstract energy projection with various effects
- Armor checks differ based on what kind of projectile
- Bullets now have penetrating power + kinetic force
- Implement things like hollowpoint vs AP rounds using this
- Slightly higher damage to account for increased armor
## Stuns
- Stuns are either electrical, energy, or blunt
- Energy will usually check `energy` armor or other special armors
- Blunt weapons doing stamina damage will usually use `blunt` armor
- Electrical stuns:
- Roll siemens_conductivity to `conduct` armor
- High powered elecrical stuns to limbs negatively affecting function.
- Something like insulated gloves with 0 conduct would prevent this
- Optimally, roll everything into electrocute_act: power, lethality, conduction amplification, etc
- Doorshocks that are bad enough can stamcrit people
- Stuns without enough power won't even knock someone down
- Tasers rolled into this; Disablers kept on energy.
## Aiming, Hostages
- Right click with a gun to autoaim at people
- Automatic guns can do this to more people
- It takes 2 seconds of walk or no movement for this to "lock"
- Allow radio usage, item usage, etc, automated, visuals
- "Infractions" result in automatic aim/triggerbot fire from the gun
- The projectile will be sped up enough that this will always hit unless the person has high-powered adrenals/similar dodging buffs
- The user gets free shots on the target for 2-3 shots or until the target leaves the location of the first shot by ~5 tiles, whichever comes first. This is so the aimbot function isn't too strong
## Wounds
- You might have noticed wound armor on armor is gone
- Things wound based on damage + armor + properties instead of an innate "wound buff", could include sharpness/etc
- Wounds should be expanded a bit. Jointlocks etc can be counted as a "wound", disarm attacks in melee vs harm, etc
- Make it easier to greviously harm/nonlethally incapacitate someone without straight up killing them while making straight up killing someone harder
- ~~This is not baymed I swear~~
## Grabs
### Grab vs Pull
- Remember hand objects for grabbing? You won't unless you played baystation or have played pre-2015 /tg/.
- This'll be a thing again. Pulling will just do that, pull. Pulling a downed person will make their wounds worse, etc etc.
- Pulls will not have effect past that. They're the equivalent of grabbing someone by the wrist. They can just twist away from you.
- Grabs, however, will be a thing. Even a passive grab will slow you down and have other effects - more on that later.
- Grabs get inhand objects. Press Z to upgrade once ready - and press shift Z to downgrade.//
- You can only have one person grabbed at a time
- You can have two if you're a hulk.
- **You cannot shove a grabbed target.**
### Challenges
- Making breaking out interactive yet not too easy.
- The entire point of this is to make grabbing more of a dynamic system.
- Getting from passive to aggressive grab should be the same difficulty as before, to not make melee useless or grabs too strong.
- Killing someone should be as easy as before. The point of grabs is for an alternative way to disable or harm someone for fluff, at this point. You can just as easily weld someone to death once they're aggrograbbed than to break all their limbs.
- That said, grabs shouldn't be made ungodly powerful, because I'm going to scream if we get the evolved meta of "grab, then disarm".
- The current design has too much emphasis on disarm spam. Part of what made stun nice is that the loop for the grabbed person is just resisting out, instead of potentially spamming any weapons they can reach to attack the attacker.
### Severities
- Grabs have severities in this order: Passive, Aggressive, Neck, Strangling
- Upgrading from one severity to the next has a delay. **MOVING INCREASES THIS DELAY.**
- Disarming reduces the severity by 1, and breaks out if at passive or below.
- Obviously the grabbed person cannot disarm the grabber to break the grab. It'll just count as a regular resist.
#### Breaking out
- Instead of pure RNG breakout, grab breakouts will depend on user and target health, and maybe have grab integrities when past a passive grab to make it more of a game
- This is extremely TBD, because both systems are kind of awful (too RNG based vs not enough RNG. Maybe RNG "Damage" to the grab?).
- Whatever it is, it'll be modified by if they're standing or not.
- This is the case even at passive.
- However, if they're standing up, expect them to break out extremely quickly just like before.
- Resisting a grab, whether by movement/resist button, or by attacking your attacker, will make it harder for them to upgrade their grab.
#### Stuns
- Grabs no longer stun. At all.
- What they instead do is lower attack damage from the grabbed to the grabber. By a lot. And at high enough strength, to others too.
- The grabber will gain increased disarm chance with stage.
#### Passive
- Should be nearly impossible to keep if the target isn't already down
- If already down, it should be a 50/50 (not literally) of being able to escalate to aggressive if grabber and grabbee are at relatively the same health, or less.
- If the grabbed person is weaker in some way, maybe give them a disadvantage.
- Nearly no damage reduction, maybe 5-15% tops. No damage reduction to anyone around you.
- **Maybe** we can have gunshots sometimes miss the attacker. TBD.
- Fast-ish upgrade timer if the target is not resisting, and you are not moving. Slow if they are, and are not weakened.
- Disarming the target will not be buffed by this stage, to prevent you from one-two tapping someone.
- **This will still restrain their movement, even if breaking out is easy.**
- In all reality this'll probably be made to instantly break so you can't bola anyone on demand just by clicking with grab intent, because this is probably going to be awful.
- Alternatively them breaking out staggers you/has a negative effect, but people with backup like security still would be too op with this.
#### Aggressive
- Escalated - Fighting back will now reduce upgrade timer progress.
- It'll take either weakening the target further or some very good luck to get to neckgrab.
- 75-85% incoming damage reduction. Slower attacking for the grabbed person.
- 35-45% damage reduction for people around them.
- This is the crucial stage at where you should be breaking out of this, and if you don't, it'll be harder in the next stage.
- Disarming the target will be far easier (20-30% chance).
- Item pickup delay at this and above to combat "weapon spam" - must be holding still, reach action that takes a delay and warns the grabber.
#### Neck
- This is pretty much the point (like before) where breaking out will be very hard.
- 90%+ incoming damage reduction
- 60-70%+ damage reduction to people around you
- Disarming target is instant.
- Upgrading to stranglehold will be faster than aggro --> neck
- **The target will be facing the direction you are.** Yes, you can use someone as a meatshield.
- Projectiles will hit the target instead of you with a high chance even if they're not in the way. If they are, they almost always are the one hit.
- Melee attacks will sometimes hit the victim instead of you unless the attacker is immediately behind you
- You've pretty much lost at this point, but resisting out is still possible.
#### Strangling
- At this point the target will only do around 2.5-7.5% damage to the user or less, and 10-15% or less to those around them. Alternatively, this can just full-stun them like before because if you let someone get to this you've lost.
- Fast oxyloss - not just suffocation but active stranglation. Death in 30 seconds, around that.
### Interactions
#### Target zoning?
- **Anything requiring targeting anything that isn't chest/head (which should be equivalent or near equivalent) should not be more powerful than chest/head, and should not be more powerful than the grabber just wailing on the grabbed with a weapon.** Target zone changes are extremely obnoxious to do, and forcing quick reflexes with a numpad **WILL NOT HAPPEN.** This is not negotiable.
#### In general
- Disarm intent to force someone to the ground (pin)
- If harm intent/disarm intent limb breaks/jointlocks are done, doing it to chest/head should be a similarly damaging (and require the same grab state) move for damaging and disabling respectively.
#### Specific areas
- Help intent to check for wounds
- Harm intent mouth to mute for a while
- Harm intent eyes to blind for a while
- Harm intenting a limb will dislocate it (or worsen it if already dislocated). Harm intenting into a table will as usual make it worse (bone breakies!.
- This will all require neckgrabs, maybe we can do aggro though.
- Disarm intent for "jointlock" that acts like a temporary wound + stamina? If this is done it would need to also work on chest as a disarming/stunning move, because as stated, this should **not require limb changes.**