Skip to content

equipment.Function.applyPersonalModifiers

github-actions[bot] edited this page Sep 20, 2026 · 11 revisions

@elite-dangerous-almanac/core / equipment / applyPersonalModifiers

Function: applyPersonalModifiers()

applyPersonalModifiers(stat, base, modifiers): number

Defined in: src/equipment/engineering.ts:103

Apply every modifier for one stat to its base value.

A resistance is the exception, exactly as it is for ship engineering: the factor multiplies the damage taken, so a resistance compounds on 1 − r. Damage Resistance is ×0.9 on damage taken, which turns a 0.5 resistance into 0.55 rather than 0.45. Any stat whose name ends in Resistance is treated this way.

Parameters

stat

string

Stat to apply, e.g. "magazineSize". Modifiers naming another stat are skipped, so a whole suit's or weapon's modifier list can be passed for each stat.

base

number

The catalogue value before engineering.

modifiers

readonly PersonalModifier[]

Modifiers to fold in, in order.

Returns

number

The modified value, rounded to six decimals to keep binary floating-point noise out of a displayed stat.

Throws

If stat is not a string or base is not a finite number.

Example

import { applyPersonalModifiers } from '@elite-dangerous-almanac/core/equipment/engineering';
import { getPersonalModification } from '@elite-dangerous-almanac/core/equipment/modifications';

const clipSize = getPersonalModification('weapon_clipsize')?.modifiers ?? [];
applyPersonalModifiers('magazineSize', 45, clipSize); // -> 68

TypeScript

Guides
astro
Classes (1)
ProceduralSystem

Properties

Accessors

Methods

Interfaces (28)
Type Aliases (6)
Variables (22)
Functions (57)
Subpath modules (3)
commodities
Interfaces (1)
Type Aliases (1)
Variables (3)
Functions (3)
equipment
Interfaces (18)
Type Aliases (9)
Variables (4)
Functions (14)
Subpath modules (2)
galaxy-map
Interfaces (1)
Variables (1)
Functions (2)
i18n
Interfaces (1)
Type Aliases (1)
Functions (23)
materials
Enumerations (2)
Interfaces (2)
Type Aliases (2)
Variables (9)
Functions (9)
ships
Classes (3)
BuildMetrics

Methods

LoadoutEditError

Constructors

Properties

Methods

ShipLoadout

Accessors

Methods

Interfaces (125)
Type Aliases (44)
Variables (10)
Functions (86)
Subpath modules (8)

Clone this wiki locally