Difference between revisions of "Compiled Index of Lua Scripts for Visionaire Studio"

From The Official Visionaire Studio: Adventure Game Engine Wiki
(Advanced)
 
(51 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Here you can find a list of ''verified'' working Lua scripts made by various members of the Visionaire Studio team & forum community. Also included is a list of workflow functions, shader functions & standard Visionaire Studio functions.
+
Here you can find a list of Lua scripts made by various members of the Visionaire Studio team & forum community.
 +
 
 +
''If you would like to share your own script and see it added to that list, please tell us on our [https://discord.gg/g5zFejW Discord] or in the [http://visionaire-studio.net forum].''
 +
 
 +
<span class="red">'''IMPORTANT:''' If you intend to use any of these scripts in your own game project, make sure to check for any usage restrictions. While the scripts on this page are basically free to use, some require attribution to the creator in your game credits.</span>
  
== Basic ==
 
{| class="ts sortable" style="width:100%"
 
|-
 
! style="text-align:left" | Script Name
 
! style="text-align:left;width:10%" | By
 
|-
 
| [[Chained_Volume_Control_(CMS)|Chained Volume Control (music vs speech)]]
 
| style="width:10%" | AFRLme
 
|-
 
| [[Mute/Restore_Volume_(CMS)|Mute/Restore Volume]] || AFRLme
 
|}
 
  
== Intermediate ==
+
== Interfaces & Items ==
{| class="ts sortable" style="width:100%"
+
{| class="ts sortable"
|-
+
|-
! style="text-align:left" | Script Name
+
! style="text-align:left;width:25%" | Script Name
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 
! style="text-align:left;width:10%" | By
 
! style="text-align:left;width:10%" | By
 
|-
 
|-
| [[Cycle_Inventory_Items_(CMS)|Cycle Inventory Items]]  
+
| [[Custom Item-Dragging System]] || An alternative to Visionaire's default item-dragging, offering additional options || Intermediate || Christopher A. Summer
| style="width:10%" | AFRLme
 
 
|-
 
|-
| [[Dynamic_Action_Names_(CMS)|Dynamic Action Names]] || AFRLme
+
| [[Cycle_Inventory_Items_(CMS)|Cycle Inventory Items]] || Endlessly scroll through the inventory items forwards or backwards || Intermediate || AFRLme
 
|-
 
|-
| [[Global_Command_Checker_(CMS)|Global Command Checker]] || AFRLme
+
| [[Dynamic_Action_Names_for_Dragged_Items_(CMS)|Dynamic Action Names for Dragged Items]] || || Advanced || AFRLme
 
|-
 
|-
| [[High_Score_Display_(CMS)|High Score Display (updated ''via'' function)]] || AFRLme
+
| [[Insert_Item_(CMS)|Insert Item]] || Insert an item into the inventory before or after a specific item (needs updating) || Intermediate || AFRLme
 
|-
 
|-
| [[Insert_Item_(CMS)|Insert Item]] || AFRLme
+
| [[Organize_Inventory_Items_Alphabetically_(CMS)|Organize Inventory Items Alphabetically]] || Sort inventory items alphabetically (needs updating) || Intermediate || AFRLme
 
|-
 
|-
| [[Kill_Background_Text_(CMS)|Kill Background Text (multiple options)]] || AFRLme
+
| [[Replace_Item_(CMS)|Replace Item]] || Replace an item in the inventory with another item (used for item combination) || Intermediate || AFRLme
 
|-
 
|-
| [[How_to_Load_External_Scripts_Into_Visionaire_Studio_(CMS)|Load External Scripts]] || Divo
+
| [[Sliding_Interface_MKIII_(CMS)|Sliding Interface MKIII]] || Slide interfaces in & out with duration & easing options || Basic || AFRLme
 
|-
 
|-
| [[Organize_Inventory_Items_Alphabetically_(CMS)|Organize Inventory Items Alphabetically]] || AFRLme
+
| [[Deponia_Based_Sliding_Interface_(CMS)|Sliding Interfaces]] || based on Deponia || Advanced || AFRLme
 +
|}
 +
 
 +
 
 +
== Sound ==
 +
{| class="ts sortable"
 +
|-
 +
! style="text-align:left;width:25%" | Script Name
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 +
! style="text-align:left;width:10%" | By
 
|-
 
|-
| [[Percentage_Display_(CMS)|Percentage Display (updated ''via'' function)]] || AFRLme
+
| [[Chained_Volume_Control_(CMS)|Chained Volume Control]] || Automatically dips music volume when a character talks & restores it when they have finished talking || Basic || AFRLme
 
|-
 
|-
| [[Replace_Item_(CMS)|Replace Item]] || AFRLme
+
| [[Mute/Restore_Volume_(CMS)|Toggle Mute Volume]] || Toggle mute & restore volume via keybind or an interface button || Basic || AFRLme
|-
 
| [[Sliding_Interface_MKII_(CMS)|Sliding Interface MKII (VS4+)]] || AFRLme
 
 
|}
 
|}
  
== Advanced ==
+
 
{| class="ts sortable" style="width:100%"
+
== Text ==
 +
{| class="ts sortable"
 
|-  
 
|-  
! style="text-align:left" | Script Name  
+
! style="text-align:left;width:25%" | Script Name  
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 
! style="text-align:left;width:10%" | By
 
! style="text-align:left;width:10%" | By
 
|-
 
|-
| [[Read/Write_Config.ini_(CMS)|Config.ini (read/write)]] || AFRLme
+
| [[Argo Bubbles]] || Dynamic Stylized Speech Bubbles (optional styling) || Advanced || The Argonauts
 
|-
 
|-
| [[Dynamic_Action_Names_for_Dragged_Items_(CMS)|Dynamic Action Names for Dragged Items]] || AFRLme
+
| [[Change Text Position]] || Set character and/or narration text to a fixed position on screen || Intermediate || Various
 
|-
 
|-
| [[Dynamic_Loop_Handler_(CMS)|Dynamic Loop Handler (control delay & loop amount)]] || AFRLme
+
| <s>[[Dynamic_Action_Names_(CMS)|Dynamic Action Names]]</s> || Update action text on mouse over (deprecated) || Intermediate || AFRLme
 
|-
 
|-
| [[Dynamic_Sound_(CMS)|Dynamic Sound (based on current character position)]] || AFRLme
+
| [[Kill_Background_Text_(CMS)|Kill Background Text]] || Allows you to skip background texts || Intermediate || AFRLme
 
|-
 
|-
| [[Shader_(CMS)|Shader Toolkit]] || SimonS
+
| [[Text Skipping Protection]] || Keeps the user from skipping character and narration texts accidentally || Basic || AFRLme (&&nbsp;others)
 
|-
 
|-
| [[Deponia_Based_Sliding_Interface_(CMS)|Sliding Interfaces (based on Deponia)]] || AFRLme
+
| [[UpdateCharName_(CMS)|updateCharName()]] || Dynamically update the name of characters on mouse over  || Intermediate || AFRLme
 
|-
 
|-
| [[Sliding_Puzzle_(CMS)|Sliding Puzzle (3x3)]] || AFRLme
+
| [[UpdateName_(CMS)|updateName()]] || Dynamically update the name of the current object below the mouse cursor (multi-language support)  || Intermediate || AFRLme
 +
|}
 +
 
 +
 
 +
== Puzzles ==
 +
{| class="ts sortable"
 +
|-
 +
! style="text-align:left;width:25%" | Script Name
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 +
! style="text-align:left;width:10%" | By
 
|-
 
|-
| [[Volume_Control_Basic_Version_(CMS)|Volume Control (rail, button, percentage)]] || AFRLme
+
| [[Sliding_Puzzle_(CMS)|Sliding Puzzle (3x3)]] || || Advanced || AFRLme
 
|}
 
|}
  
== Workflow Functions ==
+
 
{| class="ts sortable" style="width:100%"
+
== Miscellaneous ==
 +
{| class="ts sortable"
 
|-  
 
|-  
! style="text-align:left" | Function Name  
+
! style="text-align:left;width:25%" | Script Name  
! style="text-align:left;width:80%" class="unsortable" | Description
+
! style="text-align:left" class="unsortable" | Description
|-
+
! style="text-align:left;width:10%" | Level
| [[AlignChar_(CMS)|alignChar()]] || Quickly align a character to another character.
+
! style="text-align:left;width:10%" | By
|-
 
| [[AlignObj_(CMS)|alignObj()]] || Quickly align a character to a scene object.
 
|-
 
| [[ChangeOutfit_(CMS)|changeOutfit()]] || Quickly change the outfit of a character.
 
|-
 
| [[ChangeScene_(CMS)|changeScene()]] || Change to another scene with a specific transition effect, over a specified amount of time.
 
|-
 
| [[CheckCond_(CMS)|checkCond()]] || Quickly check the boolean value of a condition.
 
|-
 
| [[MoveObj_(CMS)|moveObj()]] || Move an object from one position to another over x amount of milliseconds.
 
 
|-
 
|-
| [[SetAnimFrames_(CMS)|setAnimFrames()]] || Quickly set the first & last frame of an active animation.
+
| [[Check For Scene Scrolling]] || Provides a function to check if the scene is currently scrolling || Intermediate || Einzelkämpfer
 
|-
 
|-
| [[SetAnimSize_(CMS)|setAnimSize()]] || Quickly set the size of an active animation.
+
| [[Read/Write_Config.ini_(CMS)|Config.ini (read/write)]] || Used to store & retrieve the players option choices || Advanced || AFRLme
 
|-
 
|-
| [[SetCondition_(CMS)|setCondition()]] || Quickly set the boolean value of a condition.
+
| <s>[[Global_Command_Checker_(CMS)|Global Command Checker]]</s> || Dynamically determine which commands are accessible on mouse over objects (needs updating) || Intermediate || AFRLme
 
|-
 
|-
| [[SetLang_(CMS)|setLang()]] || Quickly set the spoken language & subtitle language.
+
| [[Little Achievements]] || Implement a basic local achievement system || Advanced || Einzelkämpfer
 
|-
 
|-
| [[SetSceneBrightness_(CMS)|setSceneBrightness()]] || Quickly set the brightness/contrast level of a specific scene or the current scene.
+
| [[Loop_Me_Not_(CMS)|Loop Me Not]] || Create a self-looping function that loops a specific amount of times || Intermediate || AFRLme
 
|-
 
|-
| [[setVal_(CMS)|setVal()]] || Quickly set the integer or string of a value.
+
| [[Self_Looping_Function_with_Delay_(CMS)|Self Looping Function with Delay]] || 2 versions || Advanced || AFRLme
|-
 
| [[ToggleCondition_(CMS)|toggleCondition()]] || Quickly toggle the boolean value of a condition.
 
 
|}
 
|}
  
== Shader Toolkit Functions ==
+
 
 +
== Math Functions ==
 
{| class="ts sortable" style="width:100%"
 
{| class="ts sortable" style="width:100%"
 
|-  
 
|-  
! style="text-align:left" | Function Name  
+
! style="text-align:left;width:25%" | Script Name  
! style="text-align:left;width:80%" class="unsortable" | Description
+
! style="text-align:left" class="unsortable" | Description
|-
+
! style="text-align:left;width:10%" | Level
| [[ShaderAddEffect_(CMS)|shaderAddEffect()]] || Add various dynamic pre-made warp effects to the screen.
+
! style="text-align:left;width:10%" | By
|-
 
| [[ShaderBlur_(CMS)|shaderBlur()]] || Blur/Focus the screen over x amount of milliseconds.
 
|-
 
| [[ShaderColorize_(CMS)|shaderColorize()]] || Tint all the graphics on the screen a specific color over x amount of milliseconds.
 
|-
 
| [[ShaderContrast_(CMS)|shaderContrast()]] || Set the global contrast level of the screen over x amount of milliseconds.
 
|-
 
| [[ShaderFollowCharacter_(CMS)|shaderFollowCharacter()]] || Softly follow the linked character around the screen.
 
|-
 
| [[ShaderGlow_(CMS)|shaderGlow()]] || Create a glow effect on light/saturated scene objects (automatically selected) over x amount of milliseconds.
 
|-
 
| [[ShaderHue_(CMS)|shaderHue()]] || Adjust the hue level of the screen over x amount of milliseconds.
 
|-
 
| [[ShaderLightness_(CMS)|shaderLightness()]] || Adjust the lightness of the screen over x amount of milliseconds.
 
|-
 
| [[ShaderNoise_(CMS)|shaderNoise()]] || Apply noise effect to the screen over x amount of milliseconds.
 
|-
 
| [[ShaderPan_(CMS)|shaderPan()]] || Pan the camera on the x or y axis over x amount of milliseconds.
 
 
|-
 
|-
| [[ShaderRotate_(CMS)|shaderRotate()]] || Rotate the screen over x amount of milliseconds.
+
| [[SecondsToDays_(CMS)|secondsToDays()]] || Convert seconds to dd time format. || Basic || AFRLme
 
|-
 
|-
| [[ShaderSaturation_(CMS)|shaderSaturation()]] || Adjust saturation value of the screen over x amount of milliseconds.
+
| [[SecondsToHours_(CMS)|secondsToHours()]] || Convert seconds to hh time format. || Basic || AFRLme
 
|-
 
|-
| [[ShaderViewport_(CMS)|shaderViewport()]] || Pan, zoom & rotate the camera over x amount of milliseconds.
+
| [[SecondsToMinutes_(CMS)|secondsToMinutes()]] || Convert seconds to mm time format. || Basic || AFRLme
 
|-
 
|-
| [[ShaderZoom_(CMS)|shaderZoom()]] || Zoom the camera over x amount of milliseconds.
+
| [[SecondsToSeconds_(CMS)|secondsToSeconds()]] || Convert seconds to ss time format. || Basic || AFRLme
 
|-
 
|-
| [[ShaderZoomCharacter_(CMS)|shaderZoomCharacter()]] || Zoom camera into or out of linked characters position over x amount of milliseconds.
+
| [[SecondsToTime_(CMS)|secondsToTime()]] || Convert seconds to dd:hh:mm:ss time format. || Basic || AFRLme
|-
 
| [[ShaderZoomObject_(CMS)|shaderZoomObject()]] || Zoom camera into or out of linked objects location over x amount of milliseconds.
 
 
|}
 
|}
  
== Visionaire Studio Functions ==
+
 
{| class="ts sortable" style="width:100%"
+
== Workflow Functions ==
 +
{| class="ts sortable"
 +
|-
 +
! style="text-align:left;width:25%" | Script Name
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 +
! style="text-align:left;width:10%" | By
 
|-
 
|-
! style="text-align:left" | Function Name
+
| [[AlignChar_(CMS)|alignChar()]] || Quickly align a character to another character. || Basic || AFRLme
! style="text-align:left;width:80%" class="unsortable" | Description
 
 
|-
 
|-
| [[CreateScreenshot_(CMS)|createScreenshot()]] || Create a screenshot & save as .png to a specified folder or use the screenshot for the save game thumbnail.
+
| [[AlignObj_(CMS)|alignObj()]] || Quickly align a character to a scene object. || Basic || AFRLme
 
|-
 
|-
| [[GetBool_(CMS)|getBool()]] || Retrieve boolean value of the linked object.
+
| [[ChangeOutfit_(CMS)|changeOutfit()]] || Quickly change the outfit of a character. || Basic || AFRLme
 
|-
 
|-
| [[GetCursorPos_(CMS)|getCursorPos()]] || Retrieves the current (''absolute'') position of the mouse cursor.
+
| [[ChangeScene_(CMS)|changeScene()]] || Change to another scene with a specific transition effect over a specified amount of time. || Basic || AFRLme
 
|-
 
|-
| [[GetFloat_(CMS)|getFloat()]] || Retrieve the float value of the linked object.
+
| [[CheckCond_(CMS)|checkCond()]] || Quickly check the boolean value of a condition. || Basic || AFRLme
 
|-
 
|-
| [[GetFloats_(CMS)|getFloats()]] || Retrieve the float values of the linked objects data table.
+
| [[IsInRadius_(CMS)|isInRadius()]] || Quickly determine if mouse cursor is inside of a specified radius of an objects center or characters position. || Basic || AFRLme
 
|-
 
|-
| [[GetId_(CMS)|getId()]] || Retrieve the table id or table id name of the linked object.
+
| [[LangVisibility_(CMS)|langVisibility()]] || Quickly fade in all scene objects containing the active language name, & fade out all scene objects containing other language names. || Basic || AFRLme
 
|-
 
|-
| [[GetInt_(CMS)|getInt()]] || Retrieve the integer value of the linked object.
+
| [[MoveObj_(CMS)|moveObj()]] || Move an object from one position to another over x amount of milliseconds. || Basic || AFRLme
 
|-
 
|-
| [[GetInts_(CMS)|getInts()]] || Retrieve the integer values of the linked objects data table.
+
| [[ObjName_(CMS)|objName()]] || Return the action text name of a specified object (returns active language name). || Basic || Sebastian
 
|-
 
|-
| [[GetLink_(CMS)|getLink()]] || Retrieves the data stored inside of a linked objects table.
+
| [[ObjVisibility_(CMS)|objVisibility()]] || Quickly update the opacity of multiple scene objects, duration & easing are optional. || Basic || AFRLme
 
|-
 
|-
| [[GetLinks_(CMS)|getLinks()]] || Retrieves grouped data stored inside of a linked objects table.
+
| [[ResetAnimFrames_(CMS)|resetAnimFrames()]] || Quickly reset the specified animations current frame range back to the default animation frame range. || Basic || AFRLme
 
|-
 
|-
| [[GetName_(CMS)|getName()]] || Returns the "string" name value of the linked objects table.
+
| [[SetAnimFrames_(CMS)|setAnimFrames()]] || Quickly set the first & last frame of an active animation. || Basic || AFRLme
 
|-
 
|-
| [[GetObject_(CMS)|getObject()]] || Retrieves the data stored inside of a linked objects table.
+
| [[SetAnimSize_(CMS)|setAnimSize()]] || Quickly set the size of an active animation. || Basic || AFRLme
 
|-
 
|-
| [[GetParent_(CMS)|getParent()]] || Retrieves the parent object which contains the linked object. (only ''game objects'' contain no parent)
+
| [[SetCondition_(CMS)|setCondition()]] || Quickly set or toggle the boolean value of a condition. || Basic || AFRLme
 
|-
 
|-
| [[GetPath_(CMS)|getPath()]] || Retrieves path (directory in unix format) of linked object. (images, videos, sounds etc)
+
| [[SetConditions_(CMS)|setConditions()]] || Quickly set or toggle the boolean value of multiple conditions. || Basic || AFRLme
 
|-
 
|-
| [[GetPaths_(CMS)|getPaths()]] || Retrieves multiple paths (directories in unix format) of linked object data table. (images, videos, sounds etc)
+
| [[SetLang_(CMS)|setLang()]] || Quickly set the spoken language & subtitle language. || Basic || AFRLme
 
|-
 
|-
| [[GetPoint_(CMS)|getPoint()]] || Retrieves the x,y coordinates associated with the linked object.
+
| [[SetSceneBrightness_(CMS)|setSceneBrightness()]] || Quickly set the brightness/contrast level of a specific scene or the current scene. || Basic || AFRLme
 
|-
 
|-
| [[GetPoints_(CMS)|getPoints()]] || Retrieves multiple x,y coordinates associated with the linked objects data table.
+
| [[setVal_(CMS)|setVal()]] || Quickly set the integer or string of a value. || Basic || AFRLme
 
|-
 
|-
| [[GetProperty_(CMS)|getProperty()]] || Retrieve various operating system (os) properties; such as: platform, system language etc...
+
| [[UpdateData_(CMS)|updateData()]] || Quickly update multiple data types via a table & the function. || Basic || AFRLme
 +
|}
 +
 
 +
 
 +
== General Developing ==
 +
{| class="ts sortable"
 +
|-
 +
! style="text-align:left;width:25%" | Script Name
 +
! style="text-align:left" class="unsortable" | Description
 +
! style="text-align:left;width:10%" | Level
 +
! style="text-align:left;width:10%" | By
 
|-
 
|-
| [[GetSoundId_(CMS)|getSoundId()]] || Retrieve id of linked sound. (only applicable for active sounds)
+
| [[How_to_Load_External_Scripts_Into_Visionaire_Studio_(CMS)|Load External Scripts]] || Allows you to load external scripts into Visionaire || Intermediate || Divo
|-
+
|}
| [[GetSoundProperty_(CMS)|getSoundProperty()]] || Retrieve various properties of linked sound, such as: current playtime, balance, volume, loop. (only applicable for active sounds)
+
{{toc}}
|-
 
| [[GetSteamAchievement_(CMS)|getSteamAchievement]] || Retrieve boolean value of linked steam achievement.
 
|-
 
| [[GetSteamStat_(CMS)|getSteamStat]] || Retrieve integer value of linked steam stat.
 
|-
 
| [[GetTexts_(CMS)|getTexts()]] || Retrieve all texts associated with the linked object.
 
|-
 
| [[GetTextStr_(CMS)|getTextStr()]] || Retrieve a specific text string, based on the current game language or the included language id.
 
|-
 
| [[GetTime_(CMS)|getTime()]] || Developer command for checking time between 2 points; can be re-purposed into a crude delay or loop function.
 
|-
 
| [[GetVolume_(CMS)|getVolume()]] || Retrieve volume levels for: music, sound, speech, videos, & master.
 
|-
 
| [[GetWindowBrightness_(CMS)|getWindowBrightness()]] || Retrieve global window brightness value.
 
|-
 
| [[IsEmpty_(CMS)|isEmpty()]] || Returns true or false; depending on whether or not the linked object is empty.
 
|-
 
| [[RegisterEventHandler_(CMS)|registerEventHandler()]] || Create loops, listen out for various events; such as mouse actions, action/text started/stopped etc...
 
|-
 
| [[RegisterHookFunction_(CMS)|registerHookFunction()]] || Set displayed & action text positions.
 
|-
 
| [[ResetSteamStats_(CMS)|resetSteamStats()]] || Reset the linked steam stat back to its default value.
 
|-
 
| [[SetCursorPos_(CMS)|setCursorPos()]] || Set the absolute position of the mouse cursor.
 
|-
 
| [[SetSoundProperty_(CMS)|setSoundProperty()]] || Set the properties of a linked sound, such as: current playtime position, balance, volume, loop (requires sound id)
 
|-
 
| [[SetSteamAchievement_(CMS)|setSteamAchievement()]] || Set the boolean value of the linked steam achievement.
 
|-
 
| [[SetSteamStat_(CMS)|setSteamStat()]] || Set the integer value of the linked steam stat.
 
|-
 
| [[SetValue_(CMS)|setValue()]] || Edit value of the linked object. (all data types)
 
|-
 
| [[SetVolume_(CMS)|setVolume()]] || Adjust the volume levels for: music, sound, speech, videos, & master.
 
|-
 
| [[SetWindowBrightness_(CMS)|setWindowBrightness()]] || Adjust the global window brightness value.
 
|-
 
| [[SetWindowTitle_(CMS)|setWindowTitle()]] || Set a custom title in the window application bar (only applicable for window mode)
 
|-
 
| [[StartAction_(CMS)|startAction()]] || Call & start the linked action.
 
|-
 
| [[StartAnimation_(CMS)|startAnimation()]] || Play the linked animation.
 
|-
 
| [[StartDefaultBrowser_(CMS)|startDefaultBrowser]] || Launch default web browser & open the linked url in a new tab. (only launches browser if not already open)
 
|-
 
| [[StartSound_(CMS)|startSound()]] || Play the linked sound; additional properties can also be set such as: current playtime position, balance, volume, & loop.
 
|-
 
| [[StopAction_(CMS)|stopAction()]] || Stop the linked action. (only applicable for active actions)
 
|-
 
| [[StopAnimation_(CMS)|stopAnimation()]] || Stop & unload the linked action. (only applicable for active animations)
 
|-
 
| [[StopSound_(CMS)|stopSound()]] || Stop the linked sound; requires sound id. (only applicable for active sounds)
 
|-
 
| [[ToggleSoundPause_(CMS)|toggleSoundPause()]] || Toggle linked sound between playing & paused state; requires sound id. (only applicable for active sounds)
 
|-
 
| [[UnregisterEventHandler_(CMS)|unregisterEventHandler()]] || Unregister the linked event handler & function.
 
|}{{toc}}
 

Latest revision as of 18:18, 22 January 2024

Here you can find a list of Lua scripts made by various members of the Visionaire Studio team & forum community.

If you would like to share your own script and see it added to that list, please tell us on our Discord or in the forum.

IMPORTANT: If you intend to use any of these scripts in your own game project, make sure to check for any usage restrictions. While the scripts on this page are basically free to use, some require attribution to the creator in your game credits.


Interfaces & Items

Script Name Description Level By
Custom Item-Dragging System An alternative to Visionaire's default item-dragging, offering additional options Intermediate Christopher A. Summer
Cycle Inventory Items Endlessly scroll through the inventory items forwards or backwards Intermediate AFRLme
Dynamic Action Names for Dragged Items Advanced AFRLme
Insert Item Insert an item into the inventory before or after a specific item (needs updating) Intermediate AFRLme
Organize Inventory Items Alphabetically Sort inventory items alphabetically (needs updating) Intermediate AFRLme
Replace Item Replace an item in the inventory with another item (used for item combination) Intermediate AFRLme
Sliding Interface MKIII Slide interfaces in & out with duration & easing options Basic AFRLme
Sliding Interfaces based on Deponia Advanced AFRLme


Sound

Script Name Description Level By
Chained Volume Control Automatically dips music volume when a character talks & restores it when they have finished talking Basic AFRLme
Toggle Mute Volume Toggle mute & restore volume via keybind or an interface button Basic AFRLme


Text

Script Name Description Level By
Argo Bubbles Dynamic Stylized Speech Bubbles (optional styling) Advanced The Argonauts
Change Text Position Set character and/or narration text to a fixed position on screen Intermediate Various
Dynamic Action Names Update action text on mouse over (deprecated) Intermediate AFRLme
Kill Background Text Allows you to skip background texts Intermediate AFRLme
Text Skipping Protection Keeps the user from skipping character and narration texts accidentally Basic AFRLme (& others)
updateCharName() Dynamically update the name of characters on mouse over Intermediate AFRLme
updateName() Dynamically update the name of the current object below the mouse cursor (multi-language support) Intermediate AFRLme


Puzzles

Script Name Description Level By
Sliding Puzzle (3x3) Advanced AFRLme


Miscellaneous

Script Name Description Level By
Check For Scene Scrolling Provides a function to check if the scene is currently scrolling Intermediate Einzelkämpfer
Config.ini (read/write) Used to store & retrieve the players option choices Advanced AFRLme
Global Command Checker Dynamically determine which commands are accessible on mouse over objects (needs updating) Intermediate AFRLme
Little Achievements Implement a basic local achievement system Advanced Einzelkämpfer
Loop Me Not Create a self-looping function that loops a specific amount of times Intermediate AFRLme
Self Looping Function with Delay 2 versions Advanced AFRLme


Math Functions

Script Name Description Level By
secondsToDays() Convert seconds to dd time format. Basic AFRLme
secondsToHours() Convert seconds to hh time format. Basic AFRLme
secondsToMinutes() Convert seconds to mm time format. Basic AFRLme
secondsToSeconds() Convert seconds to ss time format. Basic AFRLme
secondsToTime() Convert seconds to dd:hh:mm:ss time format. Basic AFRLme


Workflow Functions

Script Name Description Level By
alignChar() Quickly align a character to another character. Basic AFRLme
alignObj() Quickly align a character to a scene object. Basic AFRLme
changeOutfit() Quickly change the outfit of a character. Basic AFRLme
changeScene() Change to another scene with a specific transition effect over a specified amount of time. Basic AFRLme
checkCond() Quickly check the boolean value of a condition. Basic AFRLme
isInRadius() Quickly determine if mouse cursor is inside of a specified radius of an objects center or characters position. Basic AFRLme
langVisibility() Quickly fade in all scene objects containing the active language name, & fade out all scene objects containing other language names. Basic AFRLme
moveObj() Move an object from one position to another over x amount of milliseconds. Basic AFRLme
objName() Return the action text name of a specified object (returns active language name). Basic Sebastian
objVisibility() Quickly update the opacity of multiple scene objects, duration & easing are optional. Basic AFRLme
resetAnimFrames() Quickly reset the specified animations current frame range back to the default animation frame range. Basic AFRLme
setAnimFrames() Quickly set the first & last frame of an active animation. Basic AFRLme
setAnimSize() Quickly set the size of an active animation. Basic AFRLme
setCondition() Quickly set or toggle the boolean value of a condition. Basic AFRLme
setConditions() Quickly set or toggle the boolean value of multiple conditions. Basic AFRLme
setLang() Quickly set the spoken language & subtitle language. Basic AFRLme
setSceneBrightness() Quickly set the brightness/contrast level of a specific scene or the current scene. Basic AFRLme
setVal() Quickly set the integer or string of a value. Basic AFRLme
updateData() Quickly update multiple data types via a table & the function. Basic AFRLme


General Developing

Script Name Description Level By
Load External Scripts Allows you to load external scripts into Visionaire Intermediate Divo