SplitScript reference

This reference is generated from the same compiler-owned catalogs used by parsing, type checking, migration diagnostics, completion, and hover.

Guides

SymbolDescription
Decision guidesChoose a lifecycle block, state-field form, failure boundary, or string unit.
Getting startedBuild a first SplitScript autosplitter with the VS Code extension or native CLI.
LanguageSyntax, declarations, lifecycle blocks, and contextual values.
MigrationGuidance from ASL and familiar languages to canonical SplitScript.
Porting ASL to SplitScriptCanonical compiler-checked recipes for migrating legacy ASL autosplitters.
SplitScript for C# authorsA concise guide to SplitScript's types, control flow, errors, and autosplitter lifecycle for C# authors.
SplitScript for JavaScript authorsA concise guide to SplitScript's static types, fixed-width numbers, errors, and autosplitter lifecycle for JavaScript authors.
SplitScript for Rust authorsA concise guide to SplitScript's inference, capabilities, error values, async behavior, and autosplitter lifecycle for Rust authors.

Namespaces

SymbolDescription
runtimeReads metadata about the autosplitting runtime host.
timerReads information from the timer.
UnityProvides Unity runtime utilities outside managed schema declarations.

Types

SymbolDescription
[T]Stores an indexed sequence of values.
addressStores a process address.
ArrayIteratorIterates over an array while detecting structural mutation.
boolStores a boolean value.
charStores one Unicode scalar value.
DurationRepresents a precise span of time.
ExclusiveRangeIteratorIterates from an included integer start to an excluded end.
f32Stores a 32-bit floating-point number.
f64Stores a 64-bit floating-point number.
FileVersionA four-part numeric Windows executable version.
FilterIterator<I, S>Lazily filters the items of another iterator.
GBAEmulatorRetains a discovered GBA emulator memory mapping.
GCNEmulatorRetains a discovered Nintendo GameCube MEM1 mapping.
GenesisEmulatorRetains a discovered Sega Genesis work-RAM mapping.
i16Stores a 16-bit signed integer.
i32Stores a 32-bit signed integer.
i64Stores a 64-bit signed integer.
i8Stores an 8-bit signed integer.
InclusiveRangeIteratorIterates from an included integer start through an included end.
InstantIdentifies one reading of the runtime's monotonic clock.
IteratorStepDistinguishes one yielded item from iterator exhaustion.
MapIterator<I, S, U>Lazily transforms the items of another iterator.
MemoryPathDescribes a native pointer chain rooted at an address.
MemoryRangeDescribes one mapped process-memory range.
MemoryRangeAccessSelects the permissions required by a mapped-memory query.
ModuleDescribes a module loaded in the attached process.
ModuleVersionInfoThe fixed numeric versions embedded in a Windows PE module.
MonoVersionIdentifies the supported Unity Mono metadata layouts.
NeverDescribes an expression that cannot produce a value.
NoneStores the single unit value None.
PointerSizeDescribes the native pointer width used by a process module.
ProcessAccesses the attached game process.
PS1EmulatorRetains a discovered PlayStation emulator memory mapping.
PS2EmulatorRetains a discovered PlayStation 2 emulator memory mapping.
SetStores a growable collection of unique values for one script instance.
SetIteratorIterates over a set while detecting structural mutation.
SettingsViewSelects either the current or previous values of the script's declared settings.
SignatureStores a compiled process-memory signature.
SignatureMatchIdentifies a signature selected by a multi-pattern memory scan.
SMSEmulatorRetains a discovered Sega Master System or Game Gear memory mapping.
StringStores ordinary immutable UTF-8 text in WebAssembly GC memory.
T!Represents a value or an error.
T..<TRepresents an integer interval whose upper bound is excluded.
T..=TRepresents an integer interval whose upper bound is included.
T?Represents a value that may be absent.
TimerStateDescribes the current timer state.
u16Stores a 16-bit unsigned integer.
u32Stores a 32-bit unsigned integer.
u64Stores a 64-bit unsigned integer.
u8Stores an 8-bit unsigned integer.
UnityContextAttachment-scoped Unity engine facilities.
UnityGameObjectA live GameObject in an attached Unity scene hierarchy.
UnitySceneCaptures one Unity scene at a particular polling update.
UnityScenesReads immutable snapshots from Unity's native scene manager.
WiiEmulatorRetains discovered Nintendo Wii MEM1 and MEM2 mappings.

Capabilities

SymbolDescription
DebugProduces an unambiguous structural representation of a value.
DisplaySupports conversion to a user-facing textual representation.
EquatableSupports equality comparison.
FloatIdentifies floating-point types.
IntegerIdentifies integral numeric types.
IterableCreates an Iterator over a value without consuming that value.
IteratorProduces a sequence of values one step at a time.
MemoryReadableSupports deserialization from process memory.
NumericSupports ordered numeric operations.
SignedIdentifies signed numeric types.

State providers

SymbolDescription
GBAAttaches to a supported Game Boy Advance emulator.
GCNAttaches to a supported Nintendo GameCube emulator.
GenesisAttaches to a supported Sega Genesis emulator.
NativeAttaches to one of the native processes named by the state declaration.
PS1Attaches to a supported PlayStation emulator.
PS2Attaches to a supported PlayStation 2 emulator.
SMSAttaches to a supported Sega Master System or Game Gear emulator.
UnityAttaches to a Unity game and binds declared managed metadata schemas.
WiiAttaches to a supported Nintendo Wii emulator.

Functions

SymbolDescription
nextTickContinues attachment on the next runtime update.
printPrints a diagnostic message.
setTickRateChanges the autosplitter tick rate.
setVariableSets a custom variable in the timer runtime.