Xivgear Types Documentation
    Preparing search index...
    • Given stats, an ability, and combined buff effects, calculate the damage dealt.

      Parameters

      • stats: ComputedSetStats

        The stats

      • ability:
            | Readonly<
                {
                    _idForCooldown?: number;
                    activatesBuffs?: readonly Buff[];
                    alternativeScalings?: AlternativeScaling[];
                    animationLock?: number;
                    appDelay?: number;
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    buffApplicationDelay?: number;
                    cast?: number;
                    combos?: readonly ComboData[];
                    cooldown?: Cooldown;
                    fixedGcd?: boolean;
                    id: number;
                    itemId?: number;
                    name: string;
                    noIcon?: boolean;
                    translate?: boolean;
                } & {
                    levelModifiers?: LevelModifier<
                        {
                            _idForCooldown?: number;
                            activatesBuffs?: readonly Buff[];
                            alternativeScalings?: AlternativeScaling[];
                            animationLock?: number;
                            appDelay?: number;
                            attackType: | "Unknown"
                            | "Auto-attack"
                            | "Spell"
                            | "Weaponskill"
                            | "Ability"
                            | "Item";
                            buffApplicationDelay?: number;
                            cast?: number;
                            combos?: readonly ComboData[];
                            cooldown?: Cooldown;
                            fixedGcd?: boolean;
                            id: number;
                            itemId?: number;
                            name: string;
                            noIcon?: boolean;
                            translate?: boolean;
                        },
                    >[];
                } & Readonly<{ potency: null }> & {
                    levelModifiers?: LevelModifier<Readonly<{ potency: null }>>[];
                },
            > & Readonly<LevelModifiable<{ gcd: number; type: "gcd" }>>
            | Readonly<
                {
                    _idForCooldown?: number;
                    activatesBuffs?: readonly Buff[];
                    alternativeScalings?: AlternativeScaling[];
                    animationLock?: number;
                    appDelay?: number;
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    buffApplicationDelay?: number;
                    cast?: number;
                    combos?: readonly ComboData[];
                    cooldown?: Cooldown;
                    fixedGcd?: boolean;
                    id: number;
                    itemId?: number;
                    name: string;
                    noIcon?: boolean;
                    translate?: boolean;
                } & {
                    levelModifiers?: LevelModifier<
                        {
                            _idForCooldown?: number;
                            activatesBuffs?: readonly Buff[];
                            alternativeScalings?: AlternativeScaling[];
                            animationLock?: number;
                            appDelay?: number;
                            attackType: | "Unknown"
                            | "Auto-attack"
                            | "Spell"
                            | "Weaponskill"
                            | "Ability"
                            | "Item";
                            buffApplicationDelay?: number;
                            cast?: number;
                            combos?: readonly ComboData[];
                            cooldown?: Cooldown;
                            fixedGcd?: boolean;
                            id: number;
                            itemId?: number;
                            name: string;
                            noIcon?: boolean;
                            translate?: boolean;
                        },
                    >[];
                } & Readonly<
                    {
                        alternativeScalings?: AlternativeScaling[];
                        attackType: | "Unknown"
                        | "Auto-attack"
                        | "Spell"
                        | "Weaponskill"
                        | "Ability"
                        | "Item";
                        autoCrit?: boolean;
                        autoDh?: boolean;
                        dot?: DotInfo;
                        potency: number;
                    },
                > & {
                    levelModifiers?: LevelModifier<
                        Readonly<
                            {
                                alternativeScalings?: AlternativeScaling[];
                                attackType: | "Unknown"
                                | "Auto-attack"
                                | "Spell"
                                | "Weaponskill"
                                | "Ability"
                                | "Item";
                                autoCrit?: boolean;
                                autoDh?: boolean;
                                dot?: DotInfo;
                                potency: number;
                            },
                        >,
                    >[];
                },
            > & Readonly<LevelModifiable<{ gcd: number; type: "gcd" }>>
            | Readonly<
                {
                    _idForCooldown?: number;
                    activatesBuffs?: readonly Buff[];
                    alternativeScalings?: AlternativeScaling[];
                    animationLock?: number;
                    appDelay?: number;
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    buffApplicationDelay?: number;
                    cast?: number;
                    combos?: readonly ComboData[];
                    cooldown?: Cooldown;
                    fixedGcd?: boolean;
                    id: number;
                    itemId?: number;
                    name: string;
                    noIcon?: boolean;
                    translate?: boolean;
                } & {
                    levelModifiers?: LevelModifier<
                        {
                            _idForCooldown?: number;
                            activatesBuffs?: readonly Buff[];
                            alternativeScalings?: AlternativeScaling[];
                            animationLock?: number;
                            appDelay?: number;
                            attackType: | "Unknown"
                            | "Auto-attack"
                            | "Spell"
                            | "Weaponskill"
                            | "Ability"
                            | "Item";
                            buffApplicationDelay?: number;
                            cast?: number;
                            combos?: readonly ComboData[];
                            cooldown?: Cooldown;
                            fixedGcd?: boolean;
                            id: number;
                            itemId?: number;
                            name: string;
                            noIcon?: boolean;
                            translate?: boolean;
                        },
                    >[];
                } & Readonly<{ potency: null }> & {
                    levelModifiers?: LevelModifier<Readonly<{ potency: null }>>[];
                },
            > & Readonly<LevelModifiable<{ type: "ogcd" }>>
            | Readonly<
                {
                    _idForCooldown?: number;
                    activatesBuffs?: readonly Buff[];
                    alternativeScalings?: AlternativeScaling[];
                    animationLock?: number;
                    appDelay?: number;
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    buffApplicationDelay?: number;
                    cast?: number;
                    combos?: readonly ComboData[];
                    cooldown?: Cooldown;
                    fixedGcd?: boolean;
                    id: number;
                    itemId?: number;
                    name: string;
                    noIcon?: boolean;
                    translate?: boolean;
                } & {
                    levelModifiers?: LevelModifier<
                        {
                            _idForCooldown?: number;
                            activatesBuffs?: readonly Buff[];
                            alternativeScalings?: AlternativeScaling[];
                            animationLock?: number;
                            appDelay?: number;
                            attackType: | "Unknown"
                            | "Auto-attack"
                            | "Spell"
                            | "Weaponskill"
                            | "Ability"
                            | "Item";
                            buffApplicationDelay?: number;
                            cast?: number;
                            combos?: readonly ComboData[];
                            cooldown?: Cooldown;
                            fixedGcd?: boolean;
                            id: number;
                            itemId?: number;
                            name: string;
                            noIcon?: boolean;
                            translate?: boolean;
                        },
                    >[];
                } & Readonly<
                    {
                        alternativeScalings?: AlternativeScaling[];
                        attackType: | "Unknown"
                        | "Auto-attack"
                        | "Spell"
                        | "Weaponskill"
                        | "Ability"
                        | "Item";
                        autoCrit?: boolean;
                        autoDh?: boolean;
                        dot?: DotInfo;
                        potency: number;
                    },
                > & {
                    levelModifiers?: LevelModifier<
                        Readonly<
                            {
                                alternativeScalings?: AlternativeScaling[];
                                attackType: | "Unknown"
                                | "Auto-attack"
                                | "Spell"
                                | "Weaponskill"
                                | "Ability"
                                | "Item";
                                autoCrit?: boolean;
                                autoDh?: boolean;
                                dot?: DotInfo;
                                potency: number;
                            },
                        >,
                    >[];
                },
            > & Readonly<LevelModifiable<{ type: "ogcd" }>>
            | never
            | Readonly<
                {
                    _idForCooldown?: number;
                    activatesBuffs?: readonly Buff[];
                    alternativeScalings?: AlternativeScaling[];
                    animationLock?: number;
                    appDelay?: number;
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    buffApplicationDelay?: number;
                    cast?: number;
                    combos?: readonly ComboData[];
                    cooldown?: Cooldown;
                    fixedGcd?: boolean;
                    id: number;
                    itemId?: number;
                    name: string;
                    noIcon?: boolean;
                    translate?: boolean;
                } & {
                    levelModifiers?: LevelModifier<
                        {
                            _idForCooldown?: number;
                            activatesBuffs?: readonly Buff[];
                            alternativeScalings?: AlternativeScaling[];
                            animationLock?: number;
                            appDelay?: number;
                            attackType: | "Unknown"
                            | "Auto-attack"
                            | "Spell"
                            | "Weaponskill"
                            | "Ability"
                            | "Item";
                            buffApplicationDelay?: number;
                            cast?: number;
                            combos?: readonly ComboData[];
                            cooldown?: Cooldown;
                            fixedGcd?: boolean;
                            id: number;
                            itemId?: number;
                            name: string;
                            noIcon?: boolean;
                            translate?: boolean;
                        },
                    >[];
                } & Readonly<
                    {
                        alternativeScalings?: AlternativeScaling[];
                        attackType: | "Unknown"
                        | "Auto-attack"
                        | "Spell"
                        | "Weaponskill"
                        | "Ability"
                        | "Item";
                        autoCrit?: boolean;
                        autoDh?: boolean;
                        dot?: DotInfo;
                        potency: number;
                    },
                > & {
                    levelModifiers?: LevelModifier<
                        Readonly<
                            {
                                alternativeScalings?: AlternativeScaling[];
                                attackType: | "Unknown"
                                | "Auto-attack"
                                | "Spell"
                                | "Weaponskill"
                                | "Ability"
                                | "Item";
                                autoCrit?: boolean;
                                autoDh?: boolean;
                                dot?: DotInfo;
                                potency: number;
                            },
                        >,
                    >[];
                },
            > & Readonly<
                {
                    alternativeScalings?: AlternativeScaling[];
                    attackType: | "Unknown"
                    | "Auto-attack"
                    | "Spell"
                    | "Weaponskill"
                    | "Ability"
                    | "Item";
                    autoCrit?: boolean;
                    autoDh?: boolean;
                    dot?: DotInfo;
                    potency: number;
                },
            > & Readonly<LevelModifiable<{ type: "autoattack" }>>

        The ability

      • combinedBuffEffects: CombinedBuffEffect

        The combined buff effects

      Returns DamageResult

      if the ability is not damaging, returns a DamageResult with 'null' for both direct damage and DoT. If the ability is damaging, returns a value representing the damage and variance. In addition, if the ability also has DoT damage, returns predicted DoT damage information.