How psai achieves interactivity
Psai's concept is based on the dynamic recombination of prerecorded audio Segments, mainly based on their Themes and musical Intensity. While your game progresses, psai generally enqueues those Segments for playback which intensity currently matches the best. For detailed information about psai's concepts and playback logic, please refer to the chapters psai's components and psai's playback logic .
How psai achieves diversity
The selection process of the next Segment can be influenced by various factors, as explained below. The default weightings of these factors work pretty well for most themes, but can easily be fine-tuned per theme if needed.
1. Repetition avoidance
When choosing the next Segment for playback on-the-fly, psai evaluates the number of times that each suitable Segment has been replayed so far. This prevents the same Segments from being played over and over again.
2. Groups of instrumentation
Psai directly supports the concept of separated groups of instrumentations. E.g. if a given Theme contains a lead melody which is played once by violins and once by horns, just assign the related audio files to different Groups within the Theme. Psai will automatically take care of transitions from one instrumentation to another, and will avoid random switches in between.
3. unpredictability (optional)
A random factor can be added to the selection process if desired, for adding more unpredictability and diversity. This is especially useful for themes which are based on atmospheric sound textures rather than harmonic sequences.
How psai helps to keep it simple
1. Use of predefined Theme Types
With psai the complexity of a game score can be much higher than what you are used to from most current games, as psai's authoring concept is based on a small collection of well-defined Theme Types. E.g. themes of type BaseMood are treated as ambient background music, and themes used within battles and action sequences will usually be of type Action Even. By this simple assignment, much of the basic playback-logic is automatically configured, so that e.g. your ambient music will never interrupt your battle theme, just because the player has stepped into some trigger zone.
2. No manual linking of audio-clips
To avoid the tedious manual linking of single musical segments, we use a simple categorization scheme based on Themes, Segment Types and groups of instrumentation. While in most cases the out-of-the-box configuration leads to good results quickly and easily, micro-management of single transitions is always possible if needed.
3. Direct support for option-screens, cut-scenes and serialization
psai directly supports ever-recurring standard demands of modern games, like seamless transitions from a cut-scene back to gameplay, or the (de)serialization of the current playback state, and sudden switches to in-game menus and back. In the psai Player, these functions are selectable from the Advanced Functions Panel.
4. All power to the composer
We try to take away as many responsibilities from the audio programmer as possible. Thereby all creative decisions are passed on to the composer, and can be put into effect using the psai Editor without any programming knowledge. This way the code for integrating psai into the game engine is as minimal as possible, and there is low risk that creative decisions are ruined during the integration process. The interactive soundtrack can be fully authored and tested before the first line of game code is programmed. Likewise, the soundtrack can grow independently from the rest of the game, without the need for rebuilding the game project.