vgstation-coders / vgstation13

Butts
GNU General Public License v3.0
260 stars 542 forks source link

Limbs should be a bit easier to rip off and a few other changes #36642

Open boy2mantwicethefam opened 1 month ago

boy2mantwicethefam commented 1 month ago

It turns out that regardless of the damage done by a weapon a weapon would have always required at least 2 hits to take off a limb because the limb removal code always checked for the limb's health at that moment. This PR fixes it by allowing limbs to be taken off in one hit IF the sharpness value is above 1, and only if a calculated damage (multiplied by sharpness and considering the limb's current damage) surpasses the limb's maximum health enough. Limbs removed in one hit do not damage the victim because they are clean cuts. This is the same as the previous limb removal functionality. Notably, this allows the Bloodlust and the Ninja's energy blade to cut off hands and feet (NOT arms and legs) in one hit. It also gives the Ninja's energy blade a 15% chance to remove an arm or leg in one hit. The executioner's blade has a 30% chance to remove a hand or foot in one hit. The changes do not apply to heads.

In addition, this PR also fixes a 7 year old bug that prevented weapons with over 20 brute damage from delimbing through sheer force (as opposed to gibbing). The issue was that the conditions that would have called that code would have always been intercepted by previous conditions regardless of condition. Keep in mind that this code only runs when against blunt weapons while the limb has taken maximum damage. You should see more limbs dropping from high-damage blunt weapons as opposed to being gibbed. Also fixes another 7 year old bug that prevented peg limbs from being removed by non-sharp damage.

Increased the energy blade's sharpness to 2, which is the reason I made the PR. It didn't actually have the sharpness required to remove limbs in one hit.

Limited the amount of sharpness that an item can get through blacksmithing to 2, to avoid insane instances of sharpness that could allow instantly delimbing a limb (except for the torso and head). They can still have a really high chance of delimbing, however.

:cl:

SECBATON-GRIFFON commented 1 month ago

disabling feet it still pretty powerful since it's essentially a one hit way to force people into crawling slowly, dunno about that. rest seems fine though

boy2mantwicethefam commented 1 month ago

Now that you mention it I don't think it would be a good idea to allow ghetto weapons to cut limbs off that easily. I should rewrite the formula.

boy2mantwicethefam commented 1 month ago

Formula has been fixed. The executioner's sword only has a 30% chance on hit to remove a hand or foot in one hit, which balances the ghetto weapons nicely. It's also a very slow-hitting weapon.

djkramer123 commented 1 month ago

one hit limb/hand and foot removal is lame, also it makes sense for blunt weapons to gib the limb rather than cut it off imo

Eneocho commented 1 month ago

one hit limb/hand and foot removal is lame, also it makes sense for blunt weapons to gib the limb rather than cut it off imo

The way I see it, it's something like getting your arm stuck in some industrial gears, and the limb is severed from the body. It'd get cut that way. That seems to be the reasoning behind limb cuts from blunt.

Formula has been fixed. The executioner's sword only has a 30% chance on hit to remove a hand or foot in one hit, which balances the ghetto weapons nicely. It's also a very slow-hitting weapon.

What are the odds for the macuahuitl? It's a very finnicky weapon so being extra sharp would be an interesting balance point to requiring "reloading" the thing. IRL macuahitls were stupidly sharp, there's even a story of an aztec warrior beheading a horse in one fell swoop, those things were terrifying. Fair, those used obsidian blades rather than glass shards, but I'd say they should keep some extra delimbing chance.

boy2mantwicethefam commented 1 month ago

@Eneocho 0. The maximum damage is 20, and it's not enough to make use of the damage overflow. Their sharpness is still pretty dangerous and makes it easy to cut limbs with subsequent hits dealt to the same limb though. @djkramer123 It's a legacy bug at this point, it's important to note that it happens with overwhelmingly powerful melee weapons and it's probably for the same reasoning that @Eneocho said; strong enough to just rip off the limb rather than crush it.

Eneocho commented 1 month ago

Their sharpness is still pretty dangerous and makes it easy to cut limbs with subsequent hits dealt to the same limb though.

fair enough.

djkramer123 commented 1 month ago

That won't make magboot stomping behead people now rather than braining them will it?

boy2mantwicethefam commented 1 month ago

It will. Let me fix that.

boy2mantwicethefam commented 1 month ago

The condition to gib is now above the condition to rip it off which should make REALLY hard-hitting blunt weapons such as magboot stomps gib all the time. Also fixed a bug where peg limbs couldn't be removed by blunt weapons. Since the check for (sharp || ispeg()) never really accounted for the actual sharpness value in the next check for if(prob((5 brute) sharp)), which would always fail because sharp was 0. If there is no sharpness value then it just defaults to 1 instead of the sharp value.

boy2mantwicethefam commented 1 month ago

The system for cutting a limb off early will no longer apply to heads. People shouldn't get decapitated in only 2 hits by the Bloodlust.

Eneocho commented 1 month ago

It will. Let me fix that.

Clearly the solution is to add skiing magboots that behead when stomping, or make it so the captain's magboots can behead instead (the description says it uses retractable spikes to anchor the user on the floor instead of magnetism, so it would make sense).

hacker-on-steroids commented 1 month ago

ninja can now guarantee you going horizontal in 1 swing

turns out it doesnt and i'm retarded

boy2mantwicethefam commented 1 month ago

Cutting off a foot does not knock someone down. Only a leg does.

falcon2346 commented 4 weeks ago

It will. Let me fix that.

Clearly the solution is to add skiing magboots that behead when stomping, or make it so the captain's magboots can behead instead (the description says it uses retractable spikes to anchor the user on the floor instead of magnetism, so it would make sense).

If he goes this route the vox magboots should behead too, as they use "Razor sharp talons" to prevent slipping.

Eneocho commented 4 weeks ago

It will. Let me fix that.

Clearly the solution is to add skiing magboots that behead when stomping, or make it so the captain's magboots can behead instead (the description says it uses retractable spikes to anchor the user on the floor instead of magnetism, so it would make sense).

If he goes this route the vox magboots should behead too, as they use "Razor sharp talons" to prevent slipping.

fair enough, but only if both the vox boots and the capboots pop inflatable floors when used.

boy2mantwicethefam commented 3 weeks ago

Oh this is not working right with guns.

boy2mantwicethefam commented 3 weeks ago

Oh it's working right with guns