Skip to content

Interpolate #25

@TimothyMothra

Description

@TimothyMothra
  • https://www.reddit.com/r/DestinyTheGame/comments/d8ahdl/dim_updates_stat_calculation_for_shadowkeep/

  • https://paracausal.science/api-guide/inventory/weapons/stats/

  • Documentation request: an overlook at stat interpolation and how it's applied to items Bungie-net/api#797

    Lets take Crimson, for instance.
    The base investment value (without any perk effects are added) for its Range stat is 55.
    It has two perks already activated that boost the Range stat (Smallbore & Accruzied Rounds) and they provide a total of +17 stat bonus. These values can be found in the perk item definition.
    So you add them up; 55 + 17 = 72.
    This value is the one before any interpolation is made.
    You check the interpolation rules for this specific stat under the statGroupHash of the Crimson.
    There we see the interpolation points for Range stat which are (0, 10) and (100,100) https://data.destinysets.com/i/InventoryItem:3437746471/StatGroup:1038936347
    Here is the interpolation formula:

    You put the values in y is the final value we want to find.
    y - 10 = ((100-10)/(100-0))*(72-0) -> y = 75 which is the final and correct value.

  • https://www.educba.com/interpolation-formula/

    What is the Interpolation Formula?
    The term “Interpolation” refers to the curve fitting technique that is used in the prediction of intermediate values and patterns on the basis of available historical data along with recent data points. In other words, the interpolation technique can be used to predict the missing data points in-between the available data points.

    The formula for interpolation is basically building a function for the unknown variable (y) based on the independent variable and at least two data points – (x1, y1) and (x2, y2). Mathematically, it is represented as,

    Formula,

    y = (y2 – y1) / (x2 – x1) * (x – x1) + y1
    where,

    x = Independent Variable
    x1 = 1st Independent Variable
    x2 = 2nd Independent Variable
    y1 = Value of the Function at Value X1
    y2 = Value of The Function at Value x2

  • https://en.wikipedia.org/wiki/Interpolation#Linear_interpolation

    In the mathematical field of numerical analysis, interpolation is a type of estimation, a method of constructing (finding) new data points based on the range of a discrete set of known data points.[1][2]

    In engineering and science, one often has a number of data points, obtained by sampling or experimentation, which represent the values of a function for a limited number of values of the independent variable. It is often required to interpolate; that is, estimate the value of that function for an intermediate value of the independent variable.

    A closely related problem is the approximation of a complicated function by a simple function. Suppose the formula for some given function is known, but too complicated to evaluate efficiently. A few data points from the original function can be interpolated to produce a simpler function which is still fairly close to the original. The resulting gain in simplicity may outweigh the loss from interpolation error and give better performance in calculation process.

  • https://reference.wolfram.com/language/ref/Interpolation.html

--

Gnawing Hunger Example:

TODO

  • need Base Value, Permutation Values,
  • optionally include masterworked stat (if viewing player's instance of item)
    • How does this affect percentiles? Should I compute every possible masterwork?
  • parse data
  • display data
    • convert to Typescript
      • need to run once per load, scan full page for ids, and programmatically create Charts.
  • several attributes have Null Interpolation. Need to investigate
    • Gnawing Hunger: Recoil Direction
    • Swords

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions