Jump to content

Document with Xen 2 Shield Data as of Demo v3.03


Recommended Posts

I just finished making a document with lots of data for how many shots a shield user can take as opposed to a normal soldier with no shield. This is tangentially related to my other topic I made the other day about making shields have a better "game feel". This document is free for anyone to use and it has no conclusion in it, so anyone reading it can come to their own conclusions. 

I made a lot of assumptions and my equation for my data is potentially very wrong. I also only took into account enemy weapons up to the Alien Mag-Rifle, soldier armors up to Guardian armor, and only used the default shield as I don't have the stats of any of the equipment past those. If anyone knows the stats of any equipment past the ones I have, then feel free to tell me the damage, armor penetration, and armor destruction of the weapons and tell more the armor of the armors and advanced shield. If I made a significant math error as well, feel free to shoot me a message here or on the Xenonauts 2 discord.

I hope this might make discussions more about the hard math more than the shields just "feeling" bad to use, so the balance issue of shields can be addressed much more easily. And before anyone says, I know I put way to much effort into this for something that might not be used at all. But I'm proud of it, so that's the thing that matters the most. 

https://docs.google.com/document/d/1p4Vfc1unY_59aSDWYPETrUEthFNrvfeh_hlbXt0fSXQ/edit?usp=sharing 

  • Like 4
Link to comment
Share on other sites

Damage localization works by determining what part of the body got hit according to this table: 

(First is Chance to Hit -> Location,  Second is Location -> Modifier on Damage)
 

/// <summary>
/// Provides the hitchance table for locational damage, per https://trello.com/c/aYcOD0N3/303-locational-damage
/// Used in <see cref="SingleTargetDamage"/>.
/// </summary>
public static readonly OddmentTable<DamageLocation> DAMAGE_LOCATION_HIT_CHANCE = new OddmentTable<DamageLocation> {
    {15f, DamageLocation.Head()},
    {15f, DamageLocation.Neck()},
    {40f, DamageLocation.Body()},
    {4f, DamageLocation.LeftArm()},
    {4f, DamageLocation.RightArm()},
    {4f, DamageLocation.LeftLeg()},
    {4f, DamageLocation.RightLeg()},
    {14f, DamageLocation.Graze()},
};

/// <summary>
/// Provides the modifiers to locational damage, per https://trello.com/c/aYcOD0N3/303-locational-damage
/// Used in <see cref="SingleTargetDamage"/>.
/// </summary>
public static readonly Dictionary<DamageLocation, float> DAMAGE_LOCATION_MODIFIER =
    new Dictionary<DamageLocation, float> {
        {DamageLocation.Head(), 1.5f},
        {DamageLocation.Neck(), 1.25f},
        {DamageLocation.Body(), 1},
        {DamageLocation.LeftArm(), 0.75f},
        {DamageLocation.RightArm(), 0.75f},
        {DamageLocation.LeftLeg(), 0.75f},
        {DamageLocation.RightLeg(), 0.75f},
        {DamageLocation.Graze(), 0.5f}
    };
Link to comment
Share on other sites

Just so I'm reading this correctly, the first table is the chance that any ahot hit will hit a given body part and the second table is damage modfiers for said body part right?

I remember that a soldier injury system was supposed to be tested where taking damage to certain body parts was supposed to hinder a soldier in specific ways. Is this system also original part of that mechanic but got grandfathered when it did not make it in?

Link to comment
Share on other sites

On 2/10/2023 at 3:40 PM, Kamehamehayes said:

Just so I'm reading this correctly, the first table is the chance that any ahot hit will hit a given body part and the second table is damage modfiers for said body part right?

I remember that a soldier injury system was supposed to be tested where taking damage to certain body parts was supposed to hinder a soldier in specific ways. Is this system also original part of that mechanic but got grandfathered when it did not make it in?

Pretty much spot on for both! We still have code for injuries and I suspect that modding it back in will be straightforward. 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...