API
Setup
Free Engine
- Summary: Free the engine instance
- Inputs:
none
- Outputs:
none
- Example:

Initialize Engine
- Summary: Initialize the engine instance
- Inputs:
none
- Outputs:
- Return Value
bool
- Return Value
- Example:

Init Audio
- Summary: Initialize the given audio settings for the engine instance
- Inputs:
- Sample Rate
float - Buffer Size
float
- Sample Rate
- Outputs:
none
- Example:

Load All Bundles
- Summary: Loads all content in all bundles.
- Inputs:
- Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Threading Mode
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Bundle Data Asset
- Summary: Loads all content in a specific Bundles.
- Inputs:
- Bundle
UReactionalBundleThe Bundle Data Asset to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Bundle
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Section Data Asset
- Summary: Loads all assets of the given Section
- Inputs:
- Section
UReactionalSectionThe Section Data Asset to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Section
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Theme Data Asset
- Summary: Loads all the assets of the given Theme
- Inputs:
- Theme
UReactionalThemeInfoThe Theme Data Asset to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Theme
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Playlist Data Asset
- Summary: Loads all the assets of the given Playlist
- Inputs:
- Playlist
UReactionalPlaylistThe Playlist Data Asset to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Playlist
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Track Data Asset
- Summary: Loads the specified Track
- Inputs:
- Track
UReactionalTrackInfoThe Track Data Asset to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- Track
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Load Track From Bytes
- Summary: Loads the specified track from raw bytes.
- Inputs:
- TrackData
const TArray<uint8>&Data of a Track - TrackMetadata
const TArray<uint8>&Metadata of a Track - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync }
- TrackData
- Outputs:
- Error String
stringMsg
- Error String
- Example:

Unload Asset
- Summary: Unload a Track or Theme from the Engine, freeing its resources.
- Inputs:
- Asset Type
enum AssetType { Track, Theme } - Id
intTrackID or ThemeID
- Asset Type
- Outputs:
none
- Example:

Unload Bundle
- Summary: Unload a Bundle: all its Sections, Themes, Playlist and Tracks from Engine, Freeing its Resources
- Inputs:
- Bundle
UReactionalBundleThe Bundle Data Asset to Unload
- Bundle
- Outputs:
none
- Example:

Unload Section
- Summary: Unload a Section: and its Theme, Playlists and Tracks in a Bundle from the engine, freeing its resources.
- Inputs:
- Section
UReactionalSectionThe Section Data Asset to Unload
- Section
- Outputs:
none
- Example:

Unload Theme
- Summary: Unload specific Theme in a Bundle from the Engine, Freeing its Resources
- Inputs:
- Theme
UReactionalThemeInfoThe Theme Data Asset to Unload
- Theme
- Outputs:
none
- Example:

Unload All Themes
- Summary: Unload all Themes in the engine, freeing its Resources
- Inputs:
none
- Outputs:
none
- Example:

Unload Playlist
- Summary: Unload a Playlist: and its Tracks in a Bundle from the Engine, Freeing its Resources
- Inputs:
- Theme
UReactionalPlaylistThe Playlist Data Asset to Unload
- Theme
- Outputs:
none
- Example:

Unload Track
- Summary: Unload specific Track: from the Playlist, in a Bundle in the Engine, Freeing its Resources
- Inputs:
- Theme
UReactionalTrackInfoThe Track Data Asset to Unload
- Theme
- Outputs:
none
- Example:

Unload All Tracks
- Summary: Unload all Tracks in the engine, freeing its Resources.
- Inputs:
none
- Outputs:
none
- Example:

Set Allow Play
- Summary: Set if Engine is Allowed to play. When true, the system is allowed to Process and Play audio. When false, the system is halted and no audio is played.
- Inputs:
- bAllowPlay
bool
- bAllowPlay
- Outputs:
none
- Example:

Get Allow Play
- Summary: Returns the state if Engine is Allowed to Play.
- Inputs:
none
- Outputs:
- bAllowPlay
bool
- bAllowPlay
- Example:

Get Project Bundles
- Summary: Gets the BundleInfo of all the bundles set in settings and added to your project.
- Inputs:
none
- Outputs:
TArray<FReactionalBundle>OutBundleInfo;
- Example:

Get BundleInfo
- Summary: Extracts and exposes individual data assets from the given Reactional Bundle Data Asset.
- Output pins are generated automatically based on the selected Bundle and Option
- Changing the BundleOptions dropdown dynamically updates which pins are shown
- Each output pin contains a direct reference to the data asset, and all its underlying data
- Inputs:
UReactionalBundle*Bundle - The Reactional Bundle data asset to extract information fromEReactionalNodeOptionBundleOptions - The type of data to expose as output pins:Bundle: The bundle itselfSections: All sections within the bundleThemes: All themes across all sectionsPlaylists: All playlists across all sectionsTracks: All individual tracks from all playlists
- Outputs:
Dynamic Pins: One output pin per item, named after the item. Each pin provides a typed reference to the corresponding data asset. (UReactionalBundle*,UReactionalSection*,UReactionalThemeInfo*,UReactionalPlaylist*, orUReactionalTrackInfo*depending on the selected option).
- Example:

Playback
Playlist
Get Current Beat
- Summary: Gets the current beat from the beat-clock.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get BPM
- Summary: Gets the tempo of the current track in beats per minute.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get Track
- Summary: Gets the currently loaded tracks index.
- Inputs:
none
- Outputs:
- Return Value
int
- Return Value
- Example:

Get Track ID
- Summary: Gets the currently loaded tracks id in the engine.
- Inputs:
none
- Outputs:
- Return Value
int
- Return Value
- Example:

Get Current Track Info
- Summary: Gets the track info struct for the currently loaded track.
- Inputs:
none
- Outputs:
- Out Track Info
FReactionalTrackInfo - Return Value
bool
- Out Track Info
- Example:

Is Loaded
- Summary: Checks if a Playlist/Tracks is loaded in the engine.
- Inputs:
none
- Outputs:
- Return Value
bool
- Return Value
- Example:

Play
- Summary: Starts playback of the first loaded track.
- Inputs:
- Fade In Time
float
- Fade In Time
- Outputs:
none
- Example:

Play Track by Index
- Summary: Plays the loaded track with the corresponding index if it exists. Fading from the previous one if requested.
- Inputs:
- Track Index
int - Fade Out Time
float - Fade In Time
float
- Track Index
- Outputs:
none
- Example:

Play Track by ID
- Summary: Play a track based on the music system assigned ID.
- Inputs:
- Track TrackID
int - Fade Out Time
float - Fade In Time
float
- Track TrackID
- Outputs:
none
- Example:

Play Track by Name
- Summary: Plays the loaded track with the corresponding name if it exists. Fading from the previous one if requested.
- Inputs:
- Track Name
FString - Fade Out Time
float - Fade In Time
float
- Track Name
- Outputs:
none
- Example:

Play Track by Track Info
- Summary: Plays the loaded track with the corresponding track info if it exists. Fading from the previous one if requested.
- Inputs:
- Track Info
FReactionalTrackInfo - Fade Out Time
float - Fade In Time
float
- Track Info
- Outputs:
none
- Example:

Next
- Summary: Plays the next track. Fading out and in if requested.
- Inputs:
- Fade Out Time
float - Fade In Time
float
- Fade Out Time
- Outputs:
none
- Example:

Prev
- Summary: Plays the previous track. Fading out and in if requested.
- Inputs:
- Fade Out Time
float - Fade In Time
float
- Fade Out Time
- Outputs:
none
- Example:

Random
- Summary: Plays a randomly selected loaded track. Fading from the previous one if requested.
- Inputs:
- Fade Out Time
float - Fade In Time
float
- Fade Out Time
- Outputs:
none
- Example:

Stop
- Summary: Gets the current state of the playlist.
- Inputs:
- Fade Out Time
float
- Fade Out Time
- Outputs:
none
- Example:

State
- Summary: Gets the current state of the playlist.
- 0 = Stopped
- 1 = Playing
- 2 = Paused
- Inputs:
none- Outputs:
- Return Value
int - Example:

Fade
- Summary: Fades the volume of the playlist to the target amp over the fade time.
The track will also stop playback once target is reached when Stop Finish is true. - Inputs:
- Target
float - Fade Time
float - Offset
float - Stop Finish
bool
- Target
- Outputs:
none
- Example:

Skip To Percentage
- Summary: Skips to the closest bar offset based on a percentage of the track length.
- Inputs:
- Percentage
float(The percentage of the track length to skip to (0-100))
- Percentage
- Outputs:
- NoN
- Example:

Skip To Bar
- Summary: Skips playback to a specific bar in the current track.
- Inputs:
- NoN
- Outputs:
- Bar
int
- Bar
- Example:

Skip To Part
- Summary: Skips to a specific part in the track if available.
- Inputs:
- NoN
- Outputs:
- Part
int
- Part
- Example:

Get Num Bars
- Summary: Retrieves the numbers of all the bars in the loaded Track.
- Inputs:
none
- Outputs:
- Return Value
intNumber of Bars
- Return Value
- Example:

Get Current Bar
- Summary: Retrieves the Current bars in the Loaded Track.
- Inputs:
none
- Outputs:
- Return Value
intCurrent Bar
- Return Value
- Example:

Get Bar Offset
- Summary: Retrieves the Offset of the bar in the Loaded Track.
- Inputs:
- Current Bar
int
- Current Bar
- Outputs:
- Return Value
floatBar Offset
- Return Value
- Example:

Get Bar Duration
- Summary: Retrieves the duration of the bar in the Loaded Track.
- Inputs:
- Current Bar
int
- Current Bar
- Outputs:
- Return Value
floatBar Duration - Example:

Get Num Tracks
- Summary: Retrieves the Number of all the Tracks in the Loaded Playlist
- Inputs:
none
- Outputs:
- Return Value
int
- Return Value
- Example:

Set Track
- Summary: Sets the currently selected track by engine id, can be used to set which track to play prior to playback.
- Inputs:
- Id
int
- Id
- Outputs:
none
- Example:

Unset Track
- Summary: Sets the currently selected track to none.
- Inputs:
none
- Outputs:
none
- Example:

Get Volume
- Summary: Gets the current volume for the playlist.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Set Volume
- Summary: Sets the volume of the playlist.
- Inputs:
- Value
float
- Value
- Outputs:
none
- Example:

Theme
Get Current Beat
- Summary: Gets the current beat from the beat-clock.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get BPM
- Summary: Gets the tempo of the current Theme in beats per minute.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get ID
- Summary: Gets the loaded theme id from the engine.
- Inputs:
none
- Outputs:
- Return Value
int - Example:

Get Current Theme Info
- Summary: Gets the theme info struct for the currently loaded theme.
- Inputs:
none
- Outputs:
- Out Track Info
FReactionalThemeInfo
- Out Track Info
- Return Value
bool - Example:

Is Loaded
- Summary: Checks if a Theme is loaded.
- Inputs:
none
- Outputs:
- Return Value
bool
- Return Value
- Example:

Play
- Summary: Starts playback of the set theme.
- Inputs:
none
- Outputs:
none
- Example:

Reset
- Summary: Resets the currently loaded theme.
- Inputs:
none
- Outputs:
none
- Example:

Stop
- Summary: Stops playback of the theme.
- Inputs:
none
- Outputs:
none- Example:

State
- Summary: Gets the current state of the theme.
- 0 = Stopped
- 1 = Playing
- 2 = Paused
- Inputs:
none
- Outputs:
- Return Value
int
- Return Value
- Example:

Fade
- Summary: Fades the volume of the theme to the target amp over the fade time.
The theme will also stop playback once target is reached when Stop Finish is true. - Inputs:
- Target
float - Fade Time
float - Offset
float - Stop Finish
bool
- Target
- Outputs:
none
- Example:

Get Controls
- Summary: Gets all controls from the current theme.
- Inputs:
none
- Outputs:
- Out
TMap<FString , FReactionalControlInfo>
- Out
- Example:

Set Control
- Summary: Sets the value of one of the controls in the theme.
- Inputs:
- Control Name
FString
- Control Name
- Value
float - Outputs:
none
- Example:

Get Num Parts
- Summary: Retrieves the Number of all the Parts in the Loaded Theme
- Inputs:
none
- Outputs:
- Return Value
intNumber of Parts
- Return Value
- Example:

Get Current Part
- Summary: Gets the Current active Part in the Loaded Part
- Inputs:
none
- Outputs:
- Return Value
intCurrent Part or -1 if no part was found
- Return Value
- Example:

Get Part Name
- Summary: Retrieves the Name of the Part in the Loaded Theme
- Inputs:
- Part
int
- Part
- Outputs:
- Return Value
FStringPart Name
- Return Value
- Example:

Get Part Offset
- Summary: Retrieves the Offset of the Part in the Loaded Theme
- Inputs:
- Part
int
- Part
- Outputs:
- Return Value
floatPart Offset
- Return Value
- Example:

Get Part Duration
- Summary: Retrieves the Duration of the part in the Loaded Theme
- Inputs:
- Part
int
- Part
- Outputs:
- Return Value
floatPart Duration
- Return Value
- Example:

Get Num Bars
- Summary: Retrieves the Numbers of all the bars in the Loaded Theme.
- Inputs:
none
- Outputs:
- Return Value
intNumber of Bars
- Return Value
- Example:

Get Current Bar
- Summary:Retrieves the current bars in the Loaded Theme.
- Inputs:
none
- Outputs:
- Return Value
intCurrent Bar
- Return Value
- Example:

Get Bar Offset
- Summary: Retrieves the Offset of the bar in the Loaded Theme.
- Inputs:
- Current Bar
int
- Current Bar
- Outputs:
- Return Value
floatBar Offset
- Return Value
- Example:

Get Bar Duration
- Summary: Retrives the Duration of the bar in the Loaded Theme.
- Inputs:
- Current Bar
int
- Current Bar
- Outputs:
- Return Value
floatBar Duration
- Return Value
- Example:

Get Control
- Summary: Gets the requested control from the current theme.
- Inputs:
- Control Name
FString
- Control Name
- Outputs:
- Return Value
float
- Return Value
- Example:

Trigger Stinger Float
- Summary: Triggers the given state in the theme.
- Inputs:
- State Name
FString - Value
float
- State Name
- Outputs:
none
- Example:

Trigger Stinger Quant
- Summary: Triggers the given state in the theme.
- Inputs:
- State Name
FString - Quant
EReactionalQuantizationValue
- State Name
- Outputs:
none- Example:

Trigger Part Quant
- Summary: Triggers a Part by name, in the current theme with EReactionalQuantizationValue.
- Inputs:
- Part Name
FStringthe name of the state - Quant
EReactionalQuantizationValueThe quantization value as an enum.
- Part Name
- Outputs:
none
- Example:

Trigger Part Float
- Summary: Triggers a Part by name, in the current theme, with quantization as a float value in Range of 0 - 0.33.
- Inputs:
- Part Name
FStringThe name of the state. - Value
FloatThe quantization value as a float: 0-0.33.
- Part Name
- Outputs:
none
- Example:

Instrument Override
- Summary: Overrides the instrument settings for the theme.
- Inputs:
- Instrument Name
FString - Pulse Rate
float - Pitch
float - Velocity
float - Active
bool - Legato
float
- Instrument Name
- Outputs:
none
- Example:

Get Overridable Instruments
- Summary: Gets the list of overridable instruments for the current theme.
- Inputs:
none
- Outputs:
- Out
TArray<FString>
- Out
- Example:

Get Theme
- Summary: Gets the ID of the currently active theme in the engine.
- Inputs:
none
- Outputs:
- Return Value
int
- Return Value
- Example:

Set Theme
- Summary: Sets the currently set theme to the one corresponding to the id.
- Note: The theme needs to be loaded in prior.
- Inputs:
- Id
int
- Id
- Outputs:
none
- Example:

Unset Theme
- Summary: Removes the active theme from the engine without unloading it from memory.
- Inputs:
none
- Outputs:
none
- Example:

Get Volume
- Summary: Gets the currently set theme volume.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Set Volume
- Summary: Sets the volume of the theme.
- Inputs:
- Value
float
- Value
- Outputs:
none
- Example:

Music System
Schedule Audio
- Summary: Schedules sound to play on a beat according to set quantized value.
- Inputs:
- Sound
USoundBase - Quant
float - Time Offset
float
- Sound
- Outputs:
none
- Example:

Get Time To Beat
- Summary: Gets the time remaining until the next beat from set quantized value.
- Inputs:
- Quant
float - Offset
float - Theme
bool
- Quant
- Outputs: x
- Example:

Get Real Time To Beat
- Summary: Gets the time remaining in seconds until the next beat from set quantized value.
- Inputs:
- Quant
float
- Quant
- Outputs:
- Return Value
float
- Return Value
- Example:

Get Next Beat
- Summary: Gets the next beat from the set quantization value.
- Inputs:
- Quant
float - Offset
float - Theme
bool
- Quant
- Outputs:
- Return Value
float
- Return Value
- Example:

Get Next Beat Absolute
- Summary: Gets the next microbeat from the set quantization value.
- Inputs:
- Quant
float - Offset
float - Theme
bool
- Quant
- Outputs:
- Return Value
int64
- Return Value
- Example:

Get Current Beat
- Summary: Gets the current beat from the beat-clock.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get Current Micro Beat
- Summary: Gets the current microbeat from the beat-clock.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Get BPM
- Summary: Gets beats per minute of the playing track or theme.
- Inputs:
none
- Outputs:
- Return Value
float
- Return Value
- Example:

Beats to Seconds
- Summary: Converts beats to seconds in the engine.
- Inputs:
- Beats
float
- Beats
- Outputs:
- Return Value
float
- Return Value
- Example:

Get Current Scale
- Summary: The current scale as an FString or float[]
- Outputs:
- Return Value
FStringThe current scale as a comma-separated string - Return Value
float[]The current scale as an array of floats
- Return Value
- Example:

Get Current Root
- Summary: Gets the current root note of the current scale or chord.
- Outputs:
- Return Value
intThe current root note as an integer.
- Return Value
- Example:

Pitch To Note Name
- Summary: Uses modulo 12 to map the pitch into one octave (C, C#, D, ..., B).
- Inputs:
- Pitch
int32
- Pitch
- Outputs:
- Return Value
FString
- Return Value
- Example:

Duck Music
- Summary: Ducks the music to the desired Amp value.
- Inputs:
- Amp
float
- Amp
- Outputs:
- Return Value
float - Example:

- Return Value
TogglePause
- Summary: Toggle pause of system playback.
- Inputs:
none
- Outputs:
- Return Value
bool
- Return Value
- Example:

Wait For Next Beat
- Summary: Delay until next desired beat.
- Inputs:
- Beats
float - Offset
float
- Beats
- Outputs:
none
- Example:

Subscribe to Quantization Event
- Summary: Binds an event to a quantized value which will trigger during playback.
- Inputs:
- Quant
float - OnQuantizationEvent
const FReactionalQuantizationEvent&
- Quant
- Outputs:
none
- Example:

Services
Remote
Initialize
- Summary: Initializes the client to the backend, registering a new client if no id or secret has been passed to the function.
- Inputs:
- ClientId
const FString& - ClientSecret
const FString&
- ClientId
- Outputs:
- Return Value
UReactionalRemoteInitializeAsync*
- Return Value
- Example:

Fetch Track
- Summary: Fetches a
FReactionalTrackPayloadcorresponding to the giventrack. When not providing a usersCountryCodeonly tracks with worldwide access will be parsed. - Inputs:
- TrackId
const FString& - CountryCode
const FString& - bIsHash
bool
- TrackId
- Outputs:
- Return Value
UReactionalRemoteFetchTrackAsync*
- Return Value
- Example:

Fetch Track Array
- Summary: Fetches an array of
FReactionalTrackPayloadcorresponding to the giventracks. When not providing a usersCountryCodeonly tracks with worldwide access will be parsed. - Inputs:
- TrackIds
const TArray<FString>& - CountryCode
const FString& - bIsHash
bool
- TrackIds
- Outputs:
- Return Value
UReactionalRemoteFetchTracksAsync*
- Return Value
- Example:

Fetch Playlist
- Summary: Fetches a
FReactionalPlaylistPayloadcorresponding to the givenplaylist id. When not providing a usersCountryCodeonly tracks with worldwide access will be parsed. - Inputs:
- PlaylistId
const FString& - CountryCode
const FString&
- PlaylistId
- Outputs:
- Return Value
UReactionalRemoteFetchPlaylistAsync*
- Return Value
- Example:

Fetch Playlist Page
- Summary: Fetches a
FReactionalPlaylistPagewithLimitamount ofFReactionalPlaylistPayloaditems. This can be repeated when a page contains a nextUrl link. Make sure to take theOffsetinto account for subsequent calls. When not providing a usersCountryCodeonly tracks with worldwide access will be parsed. - Inputs:
- ProjectId
const FString& - Limit
const int32 - Offset
const int32 - CountryCode
const FString&
- ProjectId
- Outputs:
- Return Value
UReactionalRemoteFetchPlaylistPageAsync*
- Return Value
- Example:

Fetch Track Data
- Summary: Fetches a
FReactionalTrackDownloadDatacorresponding to the givenTrack. When not providing a userscountryCodeonly tracks with worldwide access will be parsed. - Inputs:
- TrackId
const FString& - CountryCode
const FString&
- TrackId
- Outputs:
- Return Value
UReactionalRemoteFetchTrackDataAsync*
- Return Value
- Example:

Fetch Entitlements
- Summary: Fetches all of a clients previous purchases as an array of
FReactionalEntitlementsPayload. - Inputs:
none
- Outputs:
- Return Value
UReactionalRemoteFetchEntitlementsAsync*
- Return Value
- Example:

Events
Via the Subsystem you have the opportunity to subscribe to delegates functions, that will trigger on events. This has an added benefit in that we can listen in on said communication, and also communicate directly with the various features, as a sort of low level API. The most common use case would be to listen for "noteon", and "noteoff" messages generated by the engine.
On Audio Start
- Summary: Fires when playback starts.
- Outputs:
none
- Example:

On Audio End
- Summary: Fires when playback stops, this would fire at the end of a track.
- Outputs:
none
- Example:

On Note On
- Summary: Fires every time a note is played by the current theme.
- Outputs:
- Offset
float - Sink
int - Lane
int - Pitch
float - Velocity
float
- Offset
- Example:

On Note Off
- Summary: Fires every time a note ends in the current theme.
- Outputs:
- Offset
float - Sink
int - Lane
int - Pitch
float - Velocity
float
- Offset
- Example:

On Part
- Summary: Fires when a new part section starts, this is normally every bar even when no part change has happened.
- Outputs:
- Offset
float - Sink
int - Lane
int - Part Index
int
- Offset
- Example:

On Bar Beat Event
- Summary: Fires every beat during playback.
- Outputs:
- Offset
float - Bar
int - Beat
int
- Offset
- Example:

Structs
Reactional Bundle
FStringName;boolbAutoload;FStringPath;TArray<FReactionalSection>Sections;
Reactional Section
FStringName;TArray<FReactionalThemeInfoThemes;TArray<FReactionalPlaylist>Playlists;UReactionalBundleParentBundle:
ThemeInfo
FStringName;intID;FStringArtist;FStringAlbum;FStringGenre;FStringCover;FStringBPM;intDuration;floatTime;FStringHash;FStringBundleID;TArray<FString>macros;TArray<FString>parts;TArray<FString>stingers;TArray<FString>overridableInstruments;TArray<FReactionalPreformerInfo>preformerRoutings;UReactionalSectionParentSection;
Reactional Playlist
FStringName;TArray<FReactionalTrackInfo>Tracks;UReactionalSectionParentSection;
TrackInfo
FStringName;intID;FStringArtist;FStringAlbum;FStringGenre;FStringCover;FStringBPM;FReactionalTimeSignatureTimeSignatureintDuration;floatTime;- ``FString Hash;
FStringBundleID;UReactionalPlaylistParentPlaylist;
TimeSignature
intnumerator;intdenominator;
ReactionalPerformerInfo
FstringName;intLaneIndex -1TArray<int>SinkIndices;
Components
Get Audio Component
- Summary: Get the internal audio component
- Inputs:
- Target
UReactionalSubsystem
- Target
- Outputs:
- Return Value
UAudioComponent
- Return Value
- Example:

Get Synth Component
- Summary: Get the internal synth component used in the Synth Component Audio Render Mode.
- Inputs:
- Target
UReactionalSubsystem
- Target
- Outputs:
- Return Value
USynthComponent
- Return Value
- Example:

Metasounds
RenderAudioStereo
- Summary: Render Audio Sterio Buffer from the Reactional Engine
- Inputs:
none - Outputs:
- Out Left Audio
Audio - Out Right Audio
Audio - Example:

EventNoteOnTriggerV2
- Summary: Event Callback from the Reactional Engine. Invoked when a "noteon" message is received from the Reactional Engine. This callback processes note-on events, providing details such as the event offset, sink index, lane index, pitch, and velocity.
- Inputs:
- Sink Equal To
Int32 - Outputs:
- OnNoteOn
Trigger - Offset
TArray<float> - Sink
TArray<Int32> - Lane
TArray<Int32> - Pitch
TArray<float> - Velocity
TArray<float> - Beat
float - Event Notes Num
Int32
- Sink Equal To
- Example:

EventNoteOffTriggerV2
- Summary: Event Callback from the Reactional Engine. Invoked when a "noteoff" message is received from the Reactional Engine. This callback processes note-off events, providing details such as the event offset, sink index, lane index, pitch, and velocity.
- Inputs:
- Sink Equal To
Int32 - Outputs:
- OnNoteOn
Trigger - Offset
TArray<float> - Sink
TArray<Int32> - Lane
TArray<Int32> - Pitch
TArray<float> - Velocity
TArray<float> - Beat
float - Event Notes Num
Int32
- Sink Equal To
- Example:

Depricated API Functions
DEPRICATED
Playlist | Get Current Track Metadata
- Summary: Gets the currently loaded tracks metadata as a string.
- Inputs:
none- Outputs:
- Return Value
FString - Example:
//
DEPRICATED
Load Bundle
- Summary: Loads all content in a specific Bundles.
- Inputs:
- Bundle Name
stringThe name of the Bundle to Load or if Empty, Defaults to the first Bundle in Settings - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync } - Outputs:
- Error String
stringMsg - Example:

DEPRICATED
Load Section
- Summary: Loads all assets of the given Section in a Bundle
- Inputs:
- Bundle Name
stringThe name of the Bundle where the Section Lives. - Section Name
stringThe name of the Section to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync } - Outputs:
- Error String
stringMsg - Example:

DEPRICATED
Load Theme
- Summary: Loads the specified Theme of the given Bundle
- Inputs:
- Bundle Name
stringThe name of the Bundle to where the Theme Lives - Theme Name
stringThe name of the Theme to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync } - Outputs:
- Error String
stringMsg - Example:

DEPRICATED
Load Playlist
- Summary: Loads all Tracks of the given Playlist in a Bundle
- Inputs:
- Bundle Name
stringThe name of the Bundle to where the Playlist Lives - Playlist Name
stringThe name of the Playlist to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync } - Outputs:
- Error String
stringMsg - Example:

DEPRICATED
Load Track
- Summary: Loads the specified Track of the given Bundle
- Inputs:
- Bundle Name
stringThe name of the Bundle to where the Track Lives - Track Name
stringThe name of the Track to Load - Threading Mode
enum ThreadingMode { GameThreadSynchronous, PooledThreadAsync } - Outputs:
- Error String
stringMsg - Example:
