Action Parts

From The Official Visionaire Studio: Adventure Game Engine Wiki
Revision as of 18:00, 6 October 2022 by EK (talk | contribs) (Introduction)

Introduction

Action part selection dialog

By default, the action part selection dialog (see image) pops up when adding a new action part to an action (you can disable this in the options). The dialog shows all available action parts grouped by categories on the right hand side. Click on one of the buttons to open up a category list and choose the desired action part. The action parts you use the most will be listed on the left hand side for quick & easy access (double-click to select). There is also a search field available.

You can always change the type of action part after you added it. Just choose another part from the list at the top of the action part properties area.

Visionaire Studio offers the possibility to create your own action parts through plugins. If you have installed such plugins, you will not find the custom action parts in the action part selection dialog but only at the very bottom of the list (so add a random action part from the dialog first and change it afterwards).

Character

Display text

Displays the included text over the top of the linked characters head & plays an audio file - if included - & automatically plays the characters talk animation - if one was included in the current characters outfit. By default, unless displayed text was set as "background text" or the mouse cursor was hidden - prior to calling the display text action part; then the displayed text can be skipped by clicking the left mouse button! All actions listed after the displayed text will not be performed until the displayed text has finished being displayed unless the displayed text was set as "background text" - in which case actions can be performed while displayed text is being displayed.

If Show as background text is selected then the user can perform actions while the text is being displayed & all listed actions after the displayed text will continue to be performed. Background-text can not be skipped via the left mouse button! Background text can be used for displaying conversations by people in the background or you could use it for displaying text while being allowed to perform actions, walk around the scene or manually change which character actions to display.


Send character to position

Send the selected character to a specified position; make sure the specified position is not outside of the way borders.

If "wait until character reached destination" is selected then: all action parts listed after this, will not be performed until the character has reached the specified destination.


Send character to object

Send the selected character to the linked object; make sure the character & object are on the same scene.

If "wait until character reached destination" is selected then: all action parts listed after this, will not be performed until the character has reached the linked object.


Wait until character stops

This prevents action parts listed after this one from being performed until the selected character has stopped walking. This action part should only really be used during cut-scenes; when the player has no control over the character or it's position &/or destination.


Stop character

If the selected character is walking to a destination; then this action part will cancel the destination & stop the character at its current position.


Align character

This action part allows you to realign the selected character towards a new direction.


Set character to position

This action part allows you to teleport the selected to character to a specified position in the selected scene & control the direction the character should be facing.


Set character to object

This action part allows you to teleport the selected character to a linked object & control the direction the character should be facing; the character & object should be in the same scene.


Change character

This action part allows you to change the current playable character; if the new playable character is in the same scene as the previously used playable character then select the "Immediately show scene" option, otherwise select the "Fade to scene" option.


Change outfit

This action part allows you to change the linked characters outfit to another one; if "Do not unload old outfit animations" is selected then: the previous outfits animations will be stored in memory so they don't have to be reloaded if you change back to them later on.


Change comment set

This action part allows you to change the default comment sets of what is to be displayed when a character performs an invalid action; this could be changed to display comments which reflect the characters current mood.


Change walking sound

This action part allows you to change the footstep sounds of the selected character to the linked audio file.


Change font of a character

This action part allows you to change the default font (displayed text) for the selected character.


Change character speed

This action part allows you to control the selected characters walking speed; this could be used for controlling when a character walks, runs or the speed the character should move over a specific area of terrain.


Change character animation index

Changes the animation index of a character (default is 0 when the game is started). This index is used for talk-, random- and stand-animations. If more than 1 animation exists for a direction then this index decides which animation is shown.

Example: A character has 8 talk animations, 2 for each direction (0, 90, 180, 270 degrees). If the index is 0 then the first of the two animations (for a direction) is shown. If the index is 1 then the second animation is shown.

With this index it is possible to have different animations (e.g. talking friendly / neutral / angry) without changing the complete outfit.


Chase character

Allows you to make a character follow/chase another character around a scene; if the character doing the following/chasing enters the set radius then a linked "called by other action" can be performed - if an action is linked.

The two characters must be in the same scene!


Stop chase

Stops character(s) from chasing the selected character.


Show/Hide character

Show or hide the selected character.


Set character visibility

Allows you to set the opacity of the selected character by using the Visibility [%] & control the amount of time (in ms) with the Delay [ms] as to how long it should take to change from current opacity to new opacity amount.

If a value is linked to Visibility (value) then it will be used instead of the value set in Visibility [%].

This could be used for creating a semi-transparent character: like a ghost for instance or maybe to suggest the character is invisible because they are wearing a special item; like the ring in: The Lord of the Rings or Simon the Sorcerer.


Start dialog/dialog-layer

Starts dialog between the current character and a partner. The dialog has to be created under the dialog option of the addressed character. Following action parts will be executed immediately so take care if this is not the last action part of the listed actions.


Stop dialog

Allows you to manually stop & close the currently opened dialog.


Scene

Change scene

Allows you to change to a new scene & teleport the selected character to the linked object of a scene & set the direction the character should be facing; you can switch to new scene instantly or you can fade out of current scene & into the next.


Show scene/menu

Allows you to switch to a new scene or menu without having to teleport a character; useful for switching to menus or a scene in which you want to show a cut-scene.


Scroll scene to position

This action part: scrolls the current scene to the specified position.


Scroll scene to object (centered)

This action part: scroll the current scene until the linked object is in the center of the scene; the linked object must be in the current scene.


Center scene on character permanently

Scene is centered on the selected characters position unless the "Clear centering checkbox is selected; this action part is intended for using in cut-scenes or when you don't want the scene to be focused on the currently playable character.


Change to scene of a character

Changes to the scene where the selected character is located; this is mostly used to switch back from menu scenes to the scene where your playable character is located.

You can fade out from current scene into the one where the selected character is located or you can show the scene instantly.


Set fade effect to new scene

Let's you control the transition effects from one scene to another & the amount of time (in ms) that the transition should take.


Set object visibility

This action part allows you to control the opacity of the linked object in any scene & the amount of time it should take (in ms) to change from current opacity to the set opacity amount.


Change way system

Allows you to change the current way system for any scene by linking to another way system; this could be used to change to another way system which has a different border or different paths due to something being changed in a scene; for example: maybe an earthquake or explosion blocked part of the scene & as a result we need to change the walkable paths of a scene!


Set lightmap

Sets the light map (see Light map in Scene <-- need to add page for this later!) for the selected scene.


Set brightness

Allows you to control the brightness of the selected scene; currently the brightness can only be set, one scene at a time.


Fade "snoop" animations in/out

This action part allows you to fade in/out the snoop (hotspot) animations over x time (in ms) for the current scene; in general it's a good idea to add the show snoop action to an on key input & then hide on key input (release).


Set horizontal scroll area

By default the scene can be scrolled from the left to the right border of the scene background image. With this action part it is possible to limit the horizontal scroll area. Left border sets the left border of the background image where the scene can be scrolled to (default is 0), Right border the right border analogous (default is width of background image). E.g. it is possible to limit the scroll area and let a character walk from outside into the scene.


Set vertical scroll area

By default the scene can be scrolled from the top to the bottom border of the scene background image. With this action part it is possible to limit the vertical scroll area. Top border sets the top border of the background image where the scene can be scrolled to (default is 0), Bottom border the bottom border analogous (default is height of background image).


Keep scene in memory

This action part allows you to store various things from the current scene into memory for the set amount of scene changes; this is useful for when you want to change to a new scene (cut-scene maybe) & then back again without having to wait for the images & animations etc to reload.


Condition, If, Value

Change condition

Allows you to change the boolean value of the linked condition to true or false.


Set value

Allows you to change the value of the linked value with one of the Operators listed below.

Operators

Equal[=] allows you to set the value to the linked value or number provided
Add[+] allows you to add the linked value or number provided to the current value
Subtract[-] allows you to subtract from the current value with the linked value or number provided
Multiply[*] allows you to multiply the current value with the linked value or number provided
Divide[/] allows you to divide the current value with the linked value or number provided


Set random value

Allows you to set a random value; from min to max or by linking to another value.


If condition

Only perform the actions wrapped in the query, if the linked condition equals the boolean true or false value you selected; else perform actions listed after the next else (if provided) or end if.


If value

Only perform the actions wrapped in the query, if the linked value matches one of the specified criteria in the Operators listed below; else perform actions listed after the next else (if provided) or end if.

Operators

Equal to[=] queries if the current value equals the linked value or number provided
Does not equal[!=] queries if the current value does not equal the linked value or number provided
Less than or equal to[<=] queries if the linked value or number provided is less than or equal to the current value
Less than[<] queries if the linked value or number provided is less than the current value
More than or equal to[>=] queries if the linked value or number provided is more than or equal to the current value
More than[>] queries if the linked value or number provided is more than the current value


If character is on scene

Only perform the actions wrapped in the query if the selected character is on the selected scene; else perform actions listed after the next else (if provided) or end if.


If character is current character

Only perform the actions wrapped in the query, if the selected character is the character you are currently controlling; else perform actions listed after the next else (if provided) or end if.


If language is current language

Only perform the actions wrapped in the query, if the selected language equals the current language being used; else perform actions listed after the next else (if provided) or end if.


If command is current command

Only perform the actions wrapped in the query, if the current command being used equals the selected command; else perform actions listed after the next else (if provided) or end if.


If current object ...

Only perform the actions wrapped in the query if the current position of the mouse cursor meets the selected criteria listed in Objects below; else perform actions listed after the next else (if provided) or end if.

Objects

exists: only perform the listed actions if an object is under the mouse cursor
does not exist: only perform the listed actions if an object is not under the mouse cursor
is a scene object: only perform the listed actions if a scene object is below the mouse cursor
is an item: only perform the listed actions if an item is under the mouse cursor
is a character: only perform the listed actions if a character is under the mouse cursor


If savegame/autosave exists

Only perform the actions wrapped in the query, if a save game or the specified auto-save number exists; else perform actions listed after the next else (if provided) or end if.

This query is very useful & can be used for checking if a player can resume game on start or the auto-saves can be used for checking if a certain achievement/bonus content has been obtained without having to use lua to read from an external file.


Else

Allows you to add additional if else queries after the previous if; if no if is added after the else then any actions added to the else part will only be performed if the initial if query criteria was not met.


End if

This action part is used to end an if else query; there should be the same amount of end if, as if queries.


Interface

Add/Remove item

Adds or removes the selected item to/from the selected characters inventory; if the item is already part of the users inventory/or not currently part of the users inventory then do nothing.

If scroll to added item is checked then show the inventory & scroll to the newly added item; this should only be checked for the current player & if an item was added & not removed.


Remove all items from character

Removes all items from the selected character.


Give all items to other character

Transfers all items from the selected character to another character.


Save object

Saves the object which is currently under the mouse cursor to memory; this action part is used in conjunction with Execute command on saved object.


Execute command on saved object

The saved command is being executed on a previously saved object. This action part is essential if you are using a coin/ring interface.


Clear saved object

Removes the currently saved object from memory; if no object is currently stored/saved, then do nothing.


Show/Hide interfaces

This allows you to globally show or hide all interfaces at the same time.


Show/Hide interface

Allows you to show, hide or toggle if the selected interface class is shown or hidden.


Set interface visibility

Allows you to set the opacity for the selected interface class & set a delay time, for how long it should take to change opacity; set as "0ms" if you want it to instantly change to the new opacity.


Set active/inactive image

Allows you to set the active or inactive image for the linked button; this would normally be used in conjunction with on cursor enters/on cursor leaves, to show the linked button is active or inactive.


Set interface of a character

Allows you to change the default interface of a character.


Set command

Saves the selected command to memory to be executed later on.


Set item

Sets the currently held item to the selected item; if Dragged item is checked then the item can be dragged.


Animation

Play/Hide animation

Play or Stop the linked animation; the animation will play forward unless Play in reverse order is checked.

If Wait until animation is finished is checked then the action parts listed after this one will not be performed until the animation has finished; it will never end if animation is being looped unless you manually hide/stop the animation.


Wait until animation is finished

This action part prevents all other actions listed after this one from being performed until the linked animation finishes or is manually stopped; this action part should be used if you set an animation playing but wanted to perform a few action parts after the animation & then wait until the linked animation has finished playing before carrying on with the rest of the listed actions.


Preload/Unload animation

Stores or removes the linked animation to/from memory; the animation will be stored to memory, so you don't have to reload it each time you enter the scene - until you unload the animation.


Preload/Unload character

Stores or removes the selected character to/from memory; all the characters animations (for each outfit) will be stored to memory so you can instantly switch between outfits without having to wait for them to load - until you unload the character.


Change position of an animation

Set the current position (x,y) of the linked animation via one the Operators & the specified value.

Operators

Equals[=] absolutely position the animation to the x,y position provided
Add[+] add the x,y position values to the current x,y position of the animation
Subtract[-] remove the x,y position values from the current x,y position of the animation


Action, Script

Call/Quit action

Performs or Stops the linked called by other action.


Quit current action

All action parts listed after this one will be cancelled!


Jump to action part

Allows you to jump forwards or backwards to a certain action part via the value you set in Skip action parts; this action part can be used to create a loop by wrapping it inside of an if else query & having it jump back to the action part containing the if condition or value & will only continue the action parts listed after the jump to action part if the condition/value criteria are met.

Jump relative allows you to skip x action parts forward or backwards, whereas ...
Jump absolute allows you to jump to the action part value you set in Skip action parts.


Call script

Allows you to call a script which is assigned as an execution script.


Execute a script

Allows you to call a global function or variable function or even write a custom script inside of the action part editor section.

Example of calling a global function or variable function:

-- this is how we call a global function assigned in a definition script
function_name() -- yes, it's as simple as calling the function name & adding closed brackets afterwards
-- now let's call a variable function which should also be assigned in a definition script!
function_name("string", integer, bool) -- text should be wrapped in " or ' & integers are number values, bool = true or false!

-- let's say we have a function which allows us to add a number to an integer variable
addValue(10) -- this adds 10 to the current integer value

-- the function inside of the definition script may look something like this ...
function addValue(i) -- "i" being what we replaced with "10" (above)
 count = count + i -- this adds the value stored in i to the current value!
 print('the old value was ' .. count - i .. ', the new value is ' .. count .. '!') -- print old/new values to the log file
end


Multimedia

Play sound

Play the selected sound file & set the volume & left/right audio balance; only mono channel sounds can be panned.


Play sound and loop infinitely

Same as Play sound action part, apart from the selected sound will continue to loop until it is stopped via the Stop currently playing sound action part.


Stop currently playing sound

Stops the selected sound file from playing; if the selected sound file is not playing then do nothing.


Wait until sound is finished

Wait until the selected sound file has finished playing; all action parts listed after this action will not be performed until the sound file has finished playing.


Change background music

Allows you to change the background music file for the selected scene & set the volume & left/right audio balance; only mono channel sounds can be panned.


Change volume

Change the volume level for: music, sound, speech, movies & global by using one of the operators & setting a volume value.

Operators

Equals[=] set the selected volume level to the value provided
Add[+] add the volume value to the currently selected volume level
Subtract[-] remove the volume value from the currently selected volume level


Change settings of currently playing sound

Allows you to edit the volume level & left/right audio balance of a currently playing sound; if the selected sound file is not currently playing, then this action part will have no effect.


Play video

Allows you to play the selected video file, declare if video should be scaled to users screen resolution & decide what the currently playing active sounds should do while video is playing or after it has finished!

Active sounds

Only resume in same scene: all active sounds will be paused & only resumed if the scene is not changed after the video has finished playing
Pause and resume: all active sounds will be paused & resumed after the video has finished regardless of if the scene has been changed or not
Continue: all active sounds will continue playing throughout & after the video has finished playing
Stop: all active sounds will be stopped & not resumed after video has finished playing


Savegame

Load/Execute autosave

Allows you to load or save from/to the currently allocated autosave value.

Load/Save game

Allows you to load or save from/to the currently selected save slot; bearing in mind that all new saves will automatically be added to the first empty save slot as opposed to the actual selected one, if the currently selected save slot doesn't already contain a save game.


Show next/previous savegames

This action part allows you to scroll through the save slots; providing you decide not use a set amount of save slots.


Delete savegame/autosave

Allows you to delete a save from the currently selected save game slot or to delete the allocated autosave value; if provided.


Miscellaneous

Begin/End of cutscene

Allows you to start or stop a cut-scene; cut-scenes are scenes containing none playable scenarios in which the player has no control over what is happening on the screen.


Pause

Allows you to set a pause/delay between action parts; in other words all action parts listed after pause will not be resumed until after the pause time value has been reached. This is especially useful for controlling loops & what is happening on the screen.


Set text and voice output

This action part allows you to determine if both spoken text (subtitles) & speech (audio) should both be shown/played or whether to only show the spoken text or play the speech.

Output options

Text and speech output: both text (subtitles) & speech (audio) will be shown/played
Only speech output: only speech (audio) will be played
Only text output: only text (subtitles) will be displayed


Display narration text

This is essentially narration text & is not spoken by characters. The text in this action part can be manually positioned anywhere on the screen unlike the character > display text action part.

Additional Info

Display narration text, formerly known as Display speaker text


Display object text

Allows you to assign a display text to a scene object or interface button & display indefinitely; or at least until the displayed text is hidden with the Hide object text action part.


Hide object text

Use this to hide a displayed text created with the Display object text action part.


Skip current text

Skips the currently displayed spoken text or narration text; not applicable to background texts.


Set speed for text output

Allows you to speed up or slow down the text output by x percentage based on whatever pause value you add to your displayed text.


Show/Hide cursor

Show or hide the mouse cursor. Warning! hiding the mouse cursor kills all input methods; meaning that neither the mouse, nor keyboard will work until the cursor is unhidden.


Set cursor

Allows you to change the current mouse cursor to another one.


Start/Stop earthquake

Play god by starting or stopping an earthquake. You can also control the force & speed of the screen shake.


Change language

Allows you to change between the languages you have setup; language controls which text & speech files will be displayed/played.


Quit game

Allows you quit the game executable & go back to the desktop.


Contents