Flow Scripting Documentation


Additionally, Parallel 42 is not responsible for assisting, distributing, or maintaining custom scripts/widgets.
This documentation will help find standard sim variables, but is not meant to teach you how to code.
Create at your own risk.

Get Started

Flow Functions


"settings_define" Allows the user to customize settings for your scripts. Right now, only checkbox and text are allowed. If you change a setting internally, you can send settings_define(...) again ...

Flow Functions


"loop_..." will automatically execute at the frequency specified. loop_1hz loop_15hz loop_30hz loop_60hz loop_frame loop_frame(() => { // Your code every frame here }); loop_30hz(() => {...

Flow Functions


"search" will execute when a search query is performed on the script via the Otto search bar. let result_1 = null; // Keep track of those if you want to re-use them on query updates let result_2 =...

Flow Functions


"scroll" will execute when the user scrolls the tile with the scroll wheel. scroll((event) => { example_event = { from: 'wheel', // where was the command sent from. Can be 'wheel' '...

Flow Functions


"html_created" will execute when the script has HTML and that the element was created. let html_element = null; html_created((el) => { html_element = el; });  el: The HTML element that was cr...

Flow Functions


"script_message_rcv" will execute when receiving a message from another script using the this.$api.command.script_message_send API function. script_message_rcv((caller_reference_name, message, rep...

Flow Functions


If the Twitch integration is enabled by the user in the Flow settings, chat messages will come through "twitch_message". If the user specified a command via the script settings, this will only exec...

Flow Functions


If the Twitch integration is enabled by the user in the Flow settings, the connection state of the Twitch integration will come through here. twitch_connection((state) => { if(state) { ...


Getting Started

Flow is a menu replacement system for Microsoft Flight Simulator 2020. Not only does it offer better menus, it also enables Pro users to create their own scripts within the simulator. How does scri...


Coherent GT Web platform

Microsoft Flight Simulator uses a platform called Coherent GT. This platform lets developers create video game user interfaces using HTML, CSS, and JavaScript. Version The most recent version of Co...


Create your first widget

Creating the widget: The first step is to add a custom script widget to your wheel. Find it in the left column and drag it to your wheel. Open the script editor: Select your widget from the wh...


Importing/Sharing Scripts

Importing and Exporting script packages for Flow Pro is super easy. Import Download the script package you want to install Extract the zip into your Community folder Launch MSFS The new scripts...



The following events can be configured in the sim's control assignments: HELP MENU: Toggle the Flow WheelCLEAR SEARCH: Toggle the Otto Search bar Some events can be triggered using LVars: L:P42_FLO...

Flow APIs

Draggable HTML Elements

Data Attributes The following attributes can be added to HTML elements of your widgets to enable functions that would normally require complex JavaScript to accomplish. data-dragtarget="my_unique_...

Community of Makers

Our Discord has evolved into a vibrant hub for widget creators. Seek answers to your questions, and showcase your innovative widgets to a community of passionate makers.