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
And (Flowgraph Node)Boolean Expression (Flowgraph Node)Branch (Flowgraph Node)Bundle (Flowgraph Node)Chainflow Branch (Flowgraph Node)Compare (Flowgraph Node)Edge Detector (Flowgraph Node)Flow Switch (Flowgraph Node)Frame Delay (Flowgraph Node)Once (Flowgraph Node)Flow Interval / Rate Limit (Flowgraph Node)Select (Flowgraph Node)Sequencer (Flowgraph Node)Switch Case (Flowgraph Node)Timed Trigger (Flowgraph Node)Wait (Flowgraph Node)XOR (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 Extensionsflowgraphnodeslogic

Flow Interval / Rate Limit (Flowgraph Node)

- **Node Name:** `Flow Interval`

Overview

  • Node Name: Flow Interval
  • Category: logic
  • File: extensions/flowgraph/nodes/logic/rateLimit.lua

Lets flow through at a regular time interval. Fires instantly the first time, then throttles subsequent flow to the configured frequency or duration.

Pin Schema

Input Pins

PinTypeDescription
flowflowInflow for this node
resetflowResets the timer (impulse, hidden)
dtnumberCustom delta time (hidden; uses simulation dt if unset)
inputnumberFrequency (Hz) or duration (seconds) depending on asDuration (default: 1, hardcoded)
reverseHitboolIf true, flow fires at end of cycle; if false, at beginning (default: true)
asDurationboolTreat input as duration instead of frequency (default: false, hidden)

Output Pins

PinTypeDescription
flowflowOutflow at the configured interval (impulse)

Legacy Pin Mapping

Old NameNew Name
fpsfrequency
intervalfrequency

Behavior

  • init() - Resets timer and previous frequency tracker.
  • _executionStarted() - Resets timer state.
  • work() - Decrements internal timer by dt each frame. When the timer reaches 0, outputs a flow impulse and resets the timer. If asDuration is true, timer is set to the input value directly; otherwise it's set to 1/frequency. Reset pin or frequency change restarts the cycle.

How It Works

The node maintains an internal countdown timer. Each frame it subtracts the delta time. When the timer hits zero, it emits a flow pulse and reloads the timer. The reverseHit flag controls whether the first pulse happens immediately (false) or after the first full interval (true).

The middle of the node displays a progress bar showing time remaining in the current cycle.

Example Usage

-- Emit flow every 2 seconds:
-- input = 0.5 (0.5 Hz = every 2 seconds)

-- Or using duration mode:
-- asDuration = true
-- input = 2 (fire every 2 seconds)

-- Rate-limit an expensive check to 10 times per second:
-- input = 10 (10 Hz)
-- Connect the check logic to the output

Additional Methods

C:drawMiddle(builder, style)

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

Parameters:

  • builder
  • style

See Also

  • And (Flowgraph Node) - Related reference
  • Boolean Expression (Flowgraph Node) - Related reference
  • Branch (Flowgraph Node) - Related reference
  • FlowGraph Guide - Guide

Once (Flowgraph Node)

- **Node Name:** `Once`

Select (Flowgraph Node)

- **Node Name:** `Select`

On this page

OverviewPin SchemaInput PinsOutput PinsLegacy Pin MappingBehaviorHow It WorksExample UsageAdditional MethodsC:drawMiddle(builder, style)See Also