There are several screen actions included across the Controller Support Expansion for Ren’Py. They are linked here on this page for convenience.
If you haven’t picked up the tool yet, you can do so here:
Virtual Cursor
MoveVirtualCursor(id, x, y, duration=0, warper=None)
A screen action which will move the virtual cursor to the provided location. See the docs for Virtual Cursors.
Virtual Keyboard
InputLetter(id, letter, layer=None)
InputLetter is a screen action which can be used to add a letter to a ControllerInput. See the docs for the Virtual Keyboard.
ShowOnscreenInput(screen=None, transition=None, *args, **kwargs)
A screen action which will show an onscreen keyboard for controller input. See the docs for the Virtual Keyboard.
UniversalInputToggle(id, **kwargs)
UniversalInputToggle is a screen action which can be used to toggle the provided InputValue if the player is using mouse and keyboard, or if the player is using a controller, it will show the virtual keyboard to enter input via ShowOnscreenInput. See the docs for the Virtual Keyboard.
Controller Configuration & Layout
SetStickInversion(stick, axis, value)
A screen action which sets the provided stick’s axis’s inversion to the given value. In other words, something like SetStickInversion("left", "x", True)
inverts the x axis of the left stick.
stick
is one of “left” or “right”. Which controller stick to invert the axis of.
axis
is one of “x” or “y”. Which axis to invert.
value
is one of True or False. True means the axis is inverted (e.g. left becomes right and right becomes left). False means the axis is normal (left is left and right is right).
ToggleStickInversion(stick, axis)
As with SetStickInversion above, except it toggles the inversion on and off rather than setting it to one specific value.
CycleControllerLayout(reverse=False)
An action that cycles between the different controller layouts (“xbox”, “playstation”, “nintendo”, “steam”, and “generic”). reverse=True
cycles through in reverse order.
SetControllerLayout(layout)
An action that directly sets the controller layout to the provided layout
. layout
must be one of “xbox”, “playstation”, “nintendo”, “steam”, or “generic”.
Other
SetFocus(screen, id, layer=”screens”)
A screen action wrapper for renpy.set_focus. Takes the string name of a screen (e.g. "main_menu"
) and the ID of a displayable to focus on that screen, and focuses that displayable.
Bar Values
StickDeadzoneAdjustment(stick=”left”)
A Bar Value which modifies the dead zone for the provided stick. stick
is one of “left” or “right” depending on which stick’s dead zone is being adjusted. This can be provided on a bar e.g.
controller_bar value StickDeadzoneAdjustment("left")
See also: Controller Bar
StickSensitivityAdjustment(stick=”left”)
A Bar Value which modifies the sensitivity multiplier of the provided stick. stick
is one of “left” or “right” depending on which stick’s sensitivity multiplier is being adjusted. This can be provided on a bar e.g.
controller_bar value StickSensitivityAdjustment("right")
See also: Controller Bar