Xivgear Types Documentation
    Preparing search index...

    Class BaseUsageCountSim<ResultType, InternalSettingsType>Abstract

    Represents a configured simulation. Note that an instance of this object is re-used across multiple runs of the same simulation (e.g. multiple sets, or multiple runs of one set). Thus, no mutable state should be kept at this level. Rather, all mutable state should be scoped within the simulate method.

    Type Parameters

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Properties

    buffManager: BuffSettingsManager
    displayName: string

    The user-facing display name of the sim. This needs to be writable, as users can change the display name of sims.

    job:
        | "NIN"
        | "PLD"
        | "WAR"
        | "DRK"
        | "GNB"
        | "WHM"
        | "SCH"
        | "AST"
        | "SGE"
        | "MNK"
        | "DRG"
        | "SAM"
        | "RPR"
        | "VPR"
        | "BRD"
        | "MCH"
        | "DNC"
        | "BLM"
        | "SMN"
        | "RDM"
        | "PCT"
        | "BLU"
    manuallyActivatedBuffs?: PartyBuff[]
    manualRun: false

    If true, do not automatically re-run the sim. Currently, this is only implemented for the configuration - changing settings will not cause the sim to auto-re-run. Eventually, it may also be implemented for changes to gear sets.

    resultSettings: ResultSettings

    The internalized settings of the object.

    shortName: string

    A short name for the sim, used for internal naming. Should be usable as a CSS class name or other HTML-ish applications, i.e. start with a letter, then keep to alphanumeric and hyphen.

    A good choice is to simply use the spec's stub name.

    spec: SimSpec<
        Simulation<
            ResultType,
            InternalSettingsType,
            ExternalCountSettings<InternalSettingsType>,
        >,
        ExternalCountSettings<InternalSettingsType>,
    >

    The original sim spec.

    Methods

    • Like simulate, but only needs to return a single number. This is used for meld solving and such, as the brute force sim does not need to display any additional data to the user. If the extra processing time and memory use from the normal simulation path is trivial for a particular sim implementation, then this can be implemented as simply "return (await this.simulate(set)).mainDpsResult".

      Parameters

      Returns Promise<number>

    • Returns the number of skills that fit in a buff duration, or total if the buff duration is null.

      This should be cumulative - e.g. the count for 'null' should be the total skills used. The count for '20' should be the count of skills used in 20 second buffs, including 15 and 10 second buffs.

      Parameters

      Returns SkillCount[]