SteamVR/Environments/Scripting: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Added links to scripting articles.)
m (clean up)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Destinations]] includes the [[VScript]] scripting system with an extensive API, allowing many modifications and extensions to the game, including accessing the VR motion controllers. Scripting in Destinations is done using the Lua language.
The SteamVR Workshop Tools include the [[VScript]] scripting system with an extensive API, allowing many modifications and extensions to the game, including access of the VR motion controllers. Scripting is done using the Lua language.


Many of the [[Dota_2_Workshop_Tools/Scripting| Dota 2 scripting features]] also apply to Destinations. Some of the links below may have inconsistencies when scripting for Destinations instead of Dota 2.
Many of the [[Dota 2 Workshop Tools/Scripting|Dota 2 scripting features]] also apply to the SteamVR Workshop Tools. Some of the links below may have inconsistencies when scripting for SteamVR instead of Dota 2.


== Getting Started ==
== Getting Started ==
There are three main ways of running scripts in SteamVR Home. Game mode scripts are specific to the add-on, and are executed when a map in the add-on loads. Map scripts are executed when the specific map is loaded, and receive callbacks from the scripting system on certain events. Entity Scripts are set up on specific entities and execute when the entity is spawned.
* [[SteamVR/Environments/Scripting/Map Scripts|Map Scripts]]
* [[Entity Scripts]]
* [[Dota 2 Workshop Tools/Scripting/Debugging Lua scripts|Debugging Lua scripts]]
* [[Dota 2 Workshop Tools/Scripting/Debugging Lua scripts|Debugging Lua scripts]]


== Common Techniques ==
== Common Techniques ==
* [[Entity_Scripts|Entity Scripts]]
* [[Dota 2 Workshop Tools/Scripting/ThinkerFunctions|Thinker Functions]]
* [[Dota 2 Workshop Tools/Scripting/ThinkerFunctions|Thinker Functions]]
* [[Dota 2 Workshop Tools/Scripting/Console Commands|Console Commands]]
* [[Dota 2 Workshop Tools/Scripting/Console Commands|Console Commands]]
* [[Dota 2 Workshop Tools/Scripting/Dedicated VConsole Log Viewer|Dedicated VConsole Log Viewer]]
* [[Dota 2 Workshop Tools/Scripting/Dedicated VConsole Log Viewer|Dedicated VConsole Log Viewer]]
* [[Dota_2_Workshop_Tools/Scripting/Listening_to_game_events|Listening to Game Events]]
* [[Dota 2 Workshop Tools/Scripting/Listening to game events|Listening to Game Events]]
 
== References ==
* [[SteamVR/Environments/Scripting/API|Scripting API]]
* [[Source 2 Animation System VScript API|Animation System API]]


== Reference ==
== '''<span style="color: red">New:</span>''' Examples ==
* [[Destinations/Scripting/API|Scripting API]]
* [[SteamVR/Environments/Scripting/Lua Scripting Intro|Lua Scripting Intro]]
* [[SteamVR/Environments/Scripting/Linking Lua with Hammer|Linking Lua with Hammer]]
* [[SteamVR/Environments/Scripting/Linking Lua with Javascript|Linking Lua with Javascript]]
* [[SteamVR/Environments/Scripting/Flashlight Tool Tutorial|Creating a Flashlight Tool]]
* [[SteamVR/Environments/Scripting/Custom Tool Creation|Custom Tool Creation]]


== '''<span style="color: red">New:</span>''' Lua Resources ==
* [http://www.lua.org/ Official Lua Website]
* [http://www.lua.org/pil/ Programming in Lua] - Good resource for learning Lua.  If you're new to Lua or programming this is a good reference point to start from.
* [http://www.lua.org/pil/contents.html Programming In Lua - Online] - First edition of the above book is available online for free.


[[Category:Destinations]]
[[Category:SteamVR]]
[[Category:SteamVR Home]]
[[Category:Scripting]]

Latest revision as of 02:19, 6 January 2024

The SteamVR Workshop Tools include the VScript scripting system with an extensive API, allowing many modifications and extensions to the game, including access of the VR motion controllers. Scripting is done using the Lua language.

Many of the Dota 2 scripting features also apply to the SteamVR Workshop Tools. Some of the links below may have inconsistencies when scripting for SteamVR instead of Dota 2.

Getting Started

There are three main ways of running scripts in SteamVR Home. Game mode scripts are specific to the add-on, and are executed when a map in the add-on loads. Map scripts are executed when the specific map is loaded, and receive callbacks from the scripting system on certain events. Entity Scripts are set up on specific entities and execute when the entity is spawned.

Common Techniques

References

New: Examples

New: Lua Resources