RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Flowgraph Base ModuleFlowgraph Base NodeFlowgraph Base State NodeFlowgraph Node BuilderFlowgraph GraphFlowgraph Group HelperFlowgraph LinkFlowgraph ManagerNew Node TemplateFlowgraph PinFlowgraph States ManagerFlowgraph UtilsFlowgraph Variable Storage
Medal / Auto Medal (Flowgraph Node)Clear Messages (Flowgraph Node)Context Translation (Flowgraph Node)ConvertUnit (Flowgraph Node)Set UI Timer / Corner Timer (Flowgraph Node)Custom Button TEST (Flowgraph Node)Custom UI Layout (Flowgraph Node)End Screen (Flowgraph Node)End Stats (Flowgraph Node)Fade From Black (Flowgraph Node)Fade Sequence (Flowgraph Node)Fade To Black (Flowgraph Node)Flash Message (Flowgraph Node)Generic Mission Text (Flowgraph Node)Get Gamestate (Flowgraph Node)Show Editor (Flowgraph Node)Hide Game UI (Flowgraph Node)Message (Flowgraph Node)Mission End Screen (Flowgraph Node)Popup (Flowgraph Node)Monologue (Flowgraph Node)Multi Description (Flowgraph Node)On Bigmap Poi (Flowgraph Node)On Bigmap State Change (Flowgraph Node)Set UI Race Checkpoints (Flowgraph Node)Set UI Race Laps (Flowgraph Node)Set UI Race Recovery (Flowgraph Node)RT Message (Flowgraph Node)Select Buttons (Flowgraph Node)Set UI Layout (Flowgraph Node)Show Apps (Flowgraph Node)Show Monitor (Flowgraph Node)Start Screen (Flowgraph Node)Clear Goals (Flowgraph Node)Tasklist Message (Flowgraph Node)Tasklist Task (Flowgraph Node)Three Element Select (Flowgraph Node)Vehicle Selector (Flowgraph Node)

UI

Resources

BeamNG Game Engine Lua Cheat SheetGE Developer RecipesMCP Server Setup

// RLS.STUDIOS=true

Premium Mods for BeamNG.drive. Career systems, custom vehicles, and immersive gameplay experiences.

Index

HomeProjectsPatreon

Socials

DiscordPatreon (RLS)Patreon (Vehicles)

© 2026 RLS Studios. All rights reserved.

Modding since 2024

API ReferenceGE Extensionsflowgraphnodesui

Three Element Select (Flowgraph Node)

- **Node Name:** `Three Element Select`

Overview

  • Node Name: Three Element Select
  • Category: once / singleActive
  • File: extensions/flowgraph/nodes/ui/threeElementSelect.lua

Presents the player with a choice of three elements (typically vehicles), each with an image, name, and description. Outputs flow for whichever option is picked.

Pin Schema

Input Pins

PinTypeDescription
flowflowInflow for this node
resetflow (impulse)Resets this node
descriptionstring/tableSubtext of the menu
veh1imagestringImage path for element 1
veh1namestringName of element 1
veh1descstringDescription of element 1
veh2imagestringImage path for element 2
veh2namestringName of element 2
veh2descstringDescription of element 2
veh3imagestringImage path for element 3
veh3namestringName of element 3
veh3descstringDescription of element 3

Output Pins

PinTypeDescription
pick1flowElement 1 was selected
pick2flowElement 2 was selected
pick3flowElement 3 was selected

Internals

Key Methods

MethodDescription
init()Initializes open and done flags
openDialogue()Builds the three-element data and triggers the UI state change
closeDialogue()Clears the open/active state
buttonPushed(action)Sets the matching output pin to true
getCmd(action)Returns a Lua command string to call buttonPushed from the UI
work()Handles reset logic and opens the dialogue when flow is active
_executionStarted()Resets all output pins and state
_executionStopped()Closes dialogue and resets

How It Works

  1. When flow becomes active, openDialogue() builds a data table with three elements (image, name, desc, pickButtonCode).
  2. Each element's pickButtonCode is a Lua string that calls buttonPushed('pickN') via core_flowgraphManager.getManagerGraphNode().
  3. Triggers guihooks.trigger('ChangeState', {state = 'menu.threeElementSelect', params = {data = data}}).
  4. When the player picks an element, the corresponding pick1/pick2/pick3 output fires.
  5. The reset impulse closes the dialogue and resets all state.

Usage Example

-- The UI state 'menu.threeElementSelect' receives data like:
{
  description = "Choose your vehicle",
  elements = {
    { image = "/vehicles/etk800/default.png", name = "ETK 800", desc = "Sedan", pickButtonCode = "..." },
    { image = "/vehicles/vivace/default.png", name = "Vivace", desc = "Coupe", pickButtonCode = "..." },
    { image = "/vehicles/pickup/default.png", name = "D-Series", desc = "Truck", pickButtonCode = "..." },
  }
}

Key Dependencies

  • guihooks.trigger('ChangeState', ...) - opens the selection menu
  • core_flowgraphManager.getManagerGraphNode() - used for UI-to-node callback
  • core_input_bindings - listed dependency

See Also

  • Medal / Auto Medal (Flowgraph Node) - Related reference
  • Clear Messages (Flowgraph Node) - Related reference
  • Context Translation (Flowgraph Node) - Related reference
  • FlowGraph Guide - Guide

Tasklist Task (Flowgraph Node)

- **Node Name:** `Tasklist Task`

Vehicle Selector (Flowgraph Node)

- **Node Name:** `Vehicle Selector`

On this page

OverviewPin SchemaInput PinsOutput PinsInternalsKey MethodsHow It WorksUsage ExampleKey DependenciesSee Also