Game Control (LL 26.5) part 1: protocol support -- GameControlData message, GameControlEnabled feature, PERMISSION_GAME_CONTROL #1202
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#1202
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
LL's 26.5 viewer adds Game Control: controller and keyboard input sent to the region, so scripts get a new LSL event,
game_control(key id, integer button_levels, list axes)(plus llGetGameControlMode / ModeAxes / ModeButtons). Without the protocol pieces, scripts using it never get input from Slipstream.Scope
Message template (
scripts/messages/message_template.msg): addGameControlData(High 33, NotTrusted, Zerocoded). Blocks:Bump the header's High count. Keep the old
GameControlInput(High 32, now deprecated upstream) unless it conflicts.Prehash strings (
indra/llmessage/message_prehash.{h,cpp}): GameControlData, ActionMode, Axes, ModeAxes, ModeButtons.SimulatorFeatures: add a
gameControlEnabled()accessor next to the existing feature accessors (indra/newview/llviewerregion.h). The viewer only ever sends on regions advertisingGameControlEnabled.Script permission: bit 20,
PERMISSION_GAME_CONTROL("UseGameControlInputs").indra/newview/llscriptruntimeperms.h(stops at 19 today) and the question dialog text in strings.xml.Script editor: the new LSL keywords (event, functions, constant) in the keywords / LSL definitions.
Not in scope
Sending input: part 2. Local controller driving and UI: part 3.
Check first
Log a few main-grid regions' SimulatorFeatures to see whether
GameControlEnabledexists on Agni yet.Policy: pin to the 26.5
GameControlDataformat (the protocol changed during LL's development). Writing the template entries from the spec is fine now. Copying LL code waits for 26.5 RC or release, with credit.Research (local): research/GAME_CONTROL_2026-10-28.md. Upstream: LL viewer PR secondlife/viewer#6202 ("Game Control Alpha", merged to release/26.5 on 2026-10-17); wiki https://wiki.secondlife.com/wiki/LSL_Game_Control_Beta and https://wiki.secondlife.com/wiki/Game_control.
Shipped in 1.5.0 Beta 5 (2026-10-29).