Skip to content

Effect

Inherits object

Public Member Functions

string

ToString()

string

ResolveName(IEnumerable parameters)

bool

Equals(Effect? other)

bool

Equals(object? obj)

int

GetHashCode()

Public Static Functions

string

GetDisplayName(string name, SITimeSpan? duration)

Gets the display name of the effect. This is the name as it will appear to viewers. Returns the display name of the effect.

string

SanitizeID(string input)

Sanitizes the ID of the effect. This attempts to intelligently convert the provided string into a sensible identifier. Returns the sanitized ID.

Public Attributes

string

ID

The safe name of the effect. Not displayed. Must be unique per-effect.

string

Name

The display name of the effect.

string?

SortName

The sorting name of the effect.

QuantityRange

Quantity

The effect code for use in commands.

uint

DefaultQuantity

The default quantity to use for testing. This value is only used by the SDK.

SITimeSpan?

Duration

The default duration of the associated effect.

bool

IsDurationEditable

true if the streamer is permitted to change the default duration; otherwise, false.

string?

Description

A long description of the effect.

string?

Note

A small context note for the effect.

string?

StartMessage

A text template displayed to the player when the effect starts.

string?

EndMessage

A text template displayed to the player when the effect ends (timed effects only).

List?

Category

List of categories that the effect belongs to.

List?

Group

List of effect groups that the effect belongs to.

List?

Tags

Tags searchable by the UI.

List?

Metadata

A list of metadata fields to attach to successful effect responses.

string?

Image

The icon to represent the associated effect.

uint?

QueueWarning

The per-effect number of concurrent queued requests before the viewer is served a warning.

uint?

QueueMax

The per-effect maximum number of concurrent queued requests.

SITimeSpan?

ViewerCooldown

The per-viewer per-effect cooldown for requests.

SITimeSpan?

SessionCooldown

The per-effect cooldown for requests.

uint

Price

The cost of the item, in coins.

ParameterList?

Parameters

The parameters to the effect or bid war.

SITimeSpan?

ResponseTimeout

The maximum time to wait for a response from the game for asynchronous connector types (TCP/WebSocket/etc).

uint?

RetryMaxAttempts

The maximum number of times to attempt a failed effect.

SITimeSpan?

RetryMaxTime

The maximum amount of time to retry a failed effect.

SITimeSpanRange?

RetryInterval

The minimum and maximum intervals to wait between retries of a failed effect.

string?

ErrorOverride

An error message to display in place of standard messages in case of failures.

bool

Inactive

true if the item is currently marked as inactive and optional; otherwise, false.

bool

Disabled

true if the item is currently marked as hidden to all non-staff users; otherwise, false.

Alignment?

Alignment

The alignment of the effect.

bool?

NoPooling

true if pooling is disabled for this effect; otherwise, false.

List?

ScaleGroups

The scaling groups to which the referenced effect belongs.

EffectType

EffectType

The type of the effect.

Regex

DURATION

Regex to match common language patterns for durations. Any matches to this Regex will not be displayed to viewers as part of the effect name. This is also used by the SDK and the automated QA tool to check for hardcoded durations. Effect names that satisfy this Regex will generate QA warnings.

Properties

bool

HasQuantity

[get, ]

true if the effect has a definable quantity; otherwise, false.

bool

HasDuration

[get, ]

float

ScaleFactor

[get, set]

The factor to scale up by.

SITimeSpan

ScaleDecayTime

[get, set]

Duration until next scaling decay event.

string

DisplayName

[get, set]

The display name of the effect. This is the name as it will appear to viewers.