Optionalsettings: ExternalCountSettings<{}>ReadonlybuffThe user-facing display name of the sim. This needs to be writable, as users can change the display name of sims.
ReadonlyjobOptional ReadonlymanuallyReadonlymanualIf 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.
ReadonlyresultThe internalized settings of the object.
ReadonlyshortA 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.
ReadonlyspecThe original sim spec.
The settings, flatted into a form that is fully JSON-ifiable.
Notify the sim that settings have changed
Run a simulation. As mentioned in the class-level docs, all mutable state should be scoped to this method.
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".
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.
Returns the total cycle time to be used as a basis for the sim. Typically around 120s.
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.