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
Load Project (Flowgraph Node)Receive Message (Flowgraph Node)Send Message (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 Extensionsflowgraphnodesthread

Receive Message (Flowgraph Node)

- **Node Name:** `Receive Message`

Overview

  • Node Name: Receive Message
  • Category: (default)
  • File: extensions/flowgraph/nodes/thread/receiveMessage.lua

Receives a message from another running flowgraph project. Used for inter-project communication.

Pin Schema

Input Pins

PinTypeDescription
flowflowIn flow (fixed)
resetflowImpulse to reset the node for receiving again (fixed)
isNetworkboolIf networked (hidden, fixed)
namestringFilter for message names - only exact matches (fixed)

Custom input pins can be added (supports string, number, bool, any, table, vec3, quat, color).

Output Pins

PinTypeDescription
flowflowPasses through input flow (fixed)
receivingflowImpulse when a new message arrives (fixed)
receivedflowHigh after a message has been received (fixed)

Custom output pins can be added to extract message data fields.

Behavior

  • init() - Enables pin saving and custom output pins.
  • onThreadMessageProcess(message) - Captures the incoming message (if not already done).
  • work() - When flow is active, name is set, and a message exists:
    • Copies message fields to matching output pins
    • Sets receiving impulse for one frame
    • Sets received to true permanently
    • Marks as done (won't receive again until reset)
  • Reset - The reset impulse clears done, receiving, and received flags.

How It Works

  1. Set the name filter to match the expected message name.
  2. Add custom output pins matching the data fields you expect.
  3. When a message arrives, receiving fires for one frame and data appears on output pins.
  4. Use reset to allow receiving another message.
-- Sender project sends: { name = "score_update", score = 100 }
-- Receiver has: name = "score_update", custom out pin "score"
-- On receive: pinOut.score = 100, receiving = true (one frame)

Key Dependencies

  • self.mgr.modules.thread - Thread module delivers messages

Additional Methods

C:_executionStarted()

Called when graph execution starts. Used for initialization/reset.

C:drawMiddle(builder, style)

Custom ImGui drawing in the middle section of the node in the editor.

Parameters:

  • builder
  • style

See Also

  • Load Project (Flowgraph Node) - Related reference
  • Send Message (Flowgraph Node) - Related reference
  • FlowGraph Guide - Guide

Load Project (Flowgraph Node)

- **Node Name:** `Load Project`

Send Message (Flowgraph Node)

- **Node Name:** `Send Message`

On this page

OverviewPin SchemaInput PinsOutput PinsBehaviorHow It WorksKey DependenciesAdditional MethodsC:_executionStarted()C:drawMiddle(builder, style)See Also