ISteamController
Note
This documentation is auto-generated. Methods marked with 🤖 are automatically generated bindings. Methods marked with ✍️ are manually implemented and methods marked with ✋ are currently not implemented.
List of Functions
Function Reference
- Controller.ActivateActionSet(controllerHandle, actionSetHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
actionSetHandle (uint64 - ControllerActionSetHandle_t) –
- SteamWorks:
Example:
local gameplaySet = Steam.Controller.GetActionSetHandle('GameControls')
Steam.Controller.ActivateActionSet(controllerHandle, gameplaySet)
- Controller.ActivateActionSetLayer(controllerHandle, actionSetLayerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
actionSetLayerHandle (uint64 - ControllerActionSetHandle_t) –
- SteamWorks:
- Controller.DeactivateActionSetLayer(controllerHandle, actionSetLayerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
actionSetLayerHandle (uint64 - ControllerActionSetHandle_t) –
- SteamWorks:
- Controller.DeactivateAllActionSetLayers(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- SteamWorks:
- Controller.GetActionOriginFromXboxOrigin(controllerHandle, eOrigin)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
eOrigin (int - EXboxOrigin) –
- Returns:
(int - EControllerActionOrigin) Return value
- SteamWorks:
- Controller.GetActionSetHandle(pszActionSetName)
🤖 Auto-generated binding
- Parameters:
pszActionSetName (str?) –
- Returns:
(uint64 - ControllerActionSetHandle_t) Return value
- SteamWorks:
Example:
local gameplaySet = Steam.Controller.GetActionSetHandle('GameControls')
- Controller.GetActiveActionSetLayers(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(int) Return value
- Returns:
(uint64[])
handlesOut- SteamWorks:
Signature differences from C++ API:
Parameter
handlesOutis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- Controller.GetAnalogActionData(controllerHandle, analogActionHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
analogActionHandle (uint64 - ControllerAnalogActionHandle_t) –
- Returns:
(InputAnalogActionData_t) Return value
- SteamWorks:
Example:
local moveHandle = Steam.Controller.GetAnalogActionHandle('Move')
local data = Steam.Controller.GetAnalogActionData(controllerHandle, moveHandle)
player.setVelocity(data.x * speed, data.y * speed)
- Controller.GetAnalogActionHandle(pszActionName)
🤖 Auto-generated binding
- Parameters:
pszActionName (str?) –
- Returns:
(uint64 - ControllerAnalogActionHandle_t) Return value
- SteamWorks:
Example:
local moveHandle = Steam.Controller.GetAnalogActionHandle('Move')
- Controller.GetAnalogActionOrigins(controllerHandle, actionSetHandle, analogActionHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
actionSetHandle (uint64 - ControllerActionSetHandle_t) –
analogActionHandle (uint64 - ControllerAnalogActionHandle_t) –
- Returns:
(int) Return value
- Returns:
(int[])
originsOut- SteamWorks:
Signature differences from C++ API:
Parameter
originsOutis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- Controller.GetConnectedControllers()
🤖 Auto-generated binding
- Returns:
(int) Return value
- Returns:
(uint64[])
handlesOut- SteamWorks:
Signature differences from C++ API:
Parameter
handlesOutis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local _, controllers = Steam.Controller.GetConnectedControllers()
print('Connected controllers:', #controllers)
- Controller.GetControllerBindingRevision(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(bool) Return value
- Returns:
(int)
pMajor- Returns:
(int)
pMinor- SteamWorks:
Signature differences from C++ API:
Parameter
pMajoris not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pMinoris not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- Controller.GetControllerForGamepadIndex(nIndex)
🤖 Auto-generated binding
- Parameters:
nIndex (int) –
- Returns:
(uint64 - ControllerHandle_t) Return value
- SteamWorks:
- Controller.GetCurrentActionSet(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(uint64 - ControllerActionSetHandle_t) Return value
- SteamWorks:
- Controller.GetDigitalActionData(controllerHandle, digitalActionHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
digitalActionHandle (uint64 - ControllerDigitalActionHandle_t) –
- Returns:
(InputDigitalActionData_t) Return value
- SteamWorks:
Example:
local jumpHandle = Steam.Controller.GetDigitalActionHandle('Jump')
local data = Steam.Controller.GetDigitalActionData(controllerHandle, jumpHandle)
if data.bState then
player.jump()
end
- Controller.GetDigitalActionHandle(pszActionName)
🤖 Auto-generated binding
- Parameters:
pszActionName (str?) –
- Returns:
(uint64 - ControllerDigitalActionHandle_t) Return value
- SteamWorks:
Example:
local jumpHandle = Steam.Controller.GetDigitalActionHandle('Jump')
- Controller.GetDigitalActionOrigins(controllerHandle, actionSetHandle, digitalActionHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
actionSetHandle (uint64 - ControllerActionSetHandle_t) –
digitalActionHandle (uint64 - ControllerDigitalActionHandle_t) –
- Returns:
(int) Return value
- Returns:
(int[])
originsOut- SteamWorks:
Signature differences from C++ API:
Parameter
originsOutis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- Controller.GetGamepadIndexForController(ulControllerHandle)
🤖 Auto-generated binding
- Parameters:
ulControllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(int) Return value
- SteamWorks:
- Controller.GetGlyphForActionOrigin(eOrigin)
🤖 Auto-generated binding
- Parameters:
eOrigin (int - EControllerActionOrigin) –
- Returns:
(str) Return value
- SteamWorks:
- Controller.GetGlyphForXboxOrigin(eOrigin)
🤖 Auto-generated binding
- Parameters:
eOrigin (int - EXboxOrigin) –
- Returns:
(str) Return value
- SteamWorks:
- Controller.GetInputTypeForHandle(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(int - ESteamInputType) Return value
- SteamWorks:
Example:
local inputType = Steam.Controller.GetInputTypeForHandle(controllerHandle)
if inputType == Steam.k_ESteamInputType_PS4Controller then
print("PS4 controller!")
end
- Controller.GetMotionData(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(InputMotionData_t) Return value
- SteamWorks:
- Controller.GetStringForActionOrigin(eOrigin)
🤖 Auto-generated binding
- Parameters:
eOrigin (int - EControllerActionOrigin) –
- Returns:
(str) Return value
- SteamWorks:
- Controller.GetStringForXboxOrigin(eOrigin)
🤖 Auto-generated binding
- Parameters:
eOrigin (int - EXboxOrigin) –
- Returns:
(str) Return value
- SteamWorks:
Example:
Steam.Controller.Init()
Example:
-- Call once per frame in your game loop
Steam.Controller.RunFrame()
- Controller.SetLEDColor(controllerHandle, nColorR, nColorG, nColorB, nFlags)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
nColorR (int) –
nColorG (int) –
nColorB (int) –
nFlags (int - unsigned int) –
- SteamWorks:
Example:
-- Red LED for low health
Steam.Controller.SetLEDColor(controllerHandle, 255, 0, 0, 0)
- Controller.ShowBindingPanel(controllerHandle)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
Steam.Controller.ShowBindingPanel(controllerHandle)
Example:
Steam.Controller.Shutdown()
- Controller.StopAnalogActionMomentum(controllerHandle, eAction)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
eAction (uint64 - ControllerAnalogActionHandle_t) –
- SteamWorks:
- Controller.TranslateActionOrigin(eDestinationInputType, eSourceOrigin)
🤖 Auto-generated binding
- Parameters:
eDestinationInputType (int - ESteamInputType) –
eSourceOrigin (int - EControllerActionOrigin) –
- Returns:
(int - EControllerActionOrigin) Return value
- SteamWorks:
- Controller.TriggerHapticPulse(controllerHandle, eTargetPad, usDurationMicroSec)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
eTargetPad (int - ESteamControllerPad) –
usDurationMicroSec (int - unsigned short) –
- SteamWorks:
Example:
Steam.Controller.TriggerHapticPulse(controllerHandle, Steam.k_ESteamControllerPad_Right, 1000)
- Controller.TriggerRepeatedHapticPulse(controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
eTargetPad (int - ESteamControllerPad) –
usDurationMicroSec (int - unsigned short) –
usOffMicroSec (int - unsigned short) –
unRepeat (int - unsigned short) –
nFlags (int - unsigned int) –
- SteamWorks:
- Controller.TriggerVibration(controllerHandle, usLeftSpeed, usRightSpeed)
🤖 Auto-generated binding
- Parameters:
controllerHandle (uint64 - ControllerHandle_t) –
usLeftSpeed (int - unsigned short) –
usRightSpeed (int - unsigned short) –
- SteamWorks:
Example:
Steam.Controller.TriggerVibration(controllerHandle, 16000, 16000)