X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script.

Baron 58 Cruise

X-Plane 12 Copilot Cruise Decent Lua Script.

The X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script is a short script to assist you with reminders and settings for your cruise descent phase of the flight. The Baron 58 regularly cruises between 8000-10,000 ft altitude although it can easily go higher.

It is recommended that you use these altitudes for cruise as the X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script won’t play if you don’t exceed 7000 Ft before you then descend. If your flying above 7000 ft in your cruise then descend below the 7000 ft altitude the Decent reminder checklist reads off for you.

It’s hard to cover all scenarios when creating these LUA SCRIPTS so please appreciate the limitations. Above 7000 ft you get the checklist when you descend!

Where do I put the LUA SCRIPT?

This X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script can be placed in your X-Plane12/Resources/Plugins/scripts folder. It will work fine with the other scripts we have produced for the Baron 58 Copilot series without conflicting.

Future Options

There may be a point where I can ideally combine these into a Copilot Cold and Dark OR Copilot Engines Running script but it’s easy to get small section working independently.

What has proven difficult in the past to combine them without significant issues. Time will tell as always.

It’s my desire to include all the sub scripts into either the Baron 58 Cold and Dark or the Baron 58 Engines running LUA Scripts in the future so its more of an all in one package.

Baron 58  Crashed

What This Script Does.

This X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script as it sounds helps manage the cruise Decent phase with checklists and prompts that get you ready on the descent. None of these are critical but there to give you a Virtual pilot to keep it realistic to a point. Its nice to have company.

Amazon Prime

X-Plane 12 Copilot Cruise Says:

After Wheels UP and Climbing:
  • Yaw Damper On. – After Takeoff checks
  • Cruise checklist. Climb to cruise altitude, eight to ten thousand feet at your discretion, Sir.
  • Set twenty Three hundred RPM and twenty Three inches of manifold pressure. This is known as square power. Lean the mixture as required
  • Monitor all engine instruments.
  • Maintain all assigned headings and altitudes.
Decent Phase Triggered by Descending below 7000 Ft.
  • Descent checklist Sir. Set power as required. – On Decent
  • Mixture richen as needed. – On Decent
  • Check altimeter and lights. – On Decent
  • Begin descent briefing with Crew & Passengers. – On Decent

Baron 58 Lua Scripts

So at this point we have a number of different Baron58 Lua Scripts that we can use together. Combinations that work currently are below:

BARON 58 ENGINES OFF START USE:

Baron58_ColdAndDark.lua -> Baron 58 Rotate_Call.Lua -> Baron58_Cruise.lua

BARON 58 ENGINES STARTED USE:

Baron58_Copilot_Engines_Running.Lua ->Baron 58 Rotate_Call.Lua-> Baron58_Cruise.lua

Can I Edit the Script?

Yes, absolutely your very welcome to edit the spoken words which are highlighted below for you. This is one of the line so you can identify what’s changeable –
speakNoText(“Positive rate, gear up“) as an example.

You can change the format or wording and even add your name if you want where it says SIR! On my own sim it calls me by name which is a nice touch where appropriate.
I’d be very careful if you decide to edit the CLIMB CHECKLIST section. It would be easy to make an error here!

Commas put a small pause between words but the Brackets ( ) and the Inverted Commas “” must stay as you see them.

How to Install the Lua Script

Create Your Own File.

Copy everything BETWEEN the Dotted LINES and Paste into a NOTEPAD page!
Name it Baron58_Cruise.lua
ENSURE you change the file type from TXT to ALL FILES.
If you look at your file and it says Baron58_Cruise.lua.txt you didn’t do correctly ok! Resave it and change the FILE TYPE in the lower save box to ALL FILES and you will see it named correctly as Baron58_Cruise.lua – OK
Please the file in your X Plane 12/resources/plugins/flywithlua/scripts folder.

Copy the text BETWEEN the ——– but dont copy the lines please.

Name your new script: Baron58_Cruise.lua – Further Updated 25/6/2025.


–[[
Baron58_Cruise.lua
Cruise checklist voice callout script for X-Plane 12
Created by Brendon McALiece of LetsFlyVFR.com
–]]
— Datarefs (read-only)
dataref(“IAS”, “sim/flightmodel/position/indicated_airspeed”, “readonly”)
dataref(“VS”, “sim/flightmodel/position/vh_ind_fpm”, “readonly”)
dataref(“Y_AGL”, “sim/flightmodel/position/y_agl”, “readonly”)
dataref(“ALT_MSL”, “sim/cockpit2/gauges/indicators/altitude_ft_pilot”, “readonly”)
— Voice output
function speakNoText(sText)
if XPLMSpeakString ~= nil then
XPLMSpeakString(sText)
end
end
— State variables
local yaw_damper_called = false
local cruise_check_called = false
local cruise_step = 0
local cruise_timer = 0
local cruise_alt_check_called = false
local cruise_alt_step = 0
local cruise_alt_timer = 0
local cruise_altitude = 0
local descent_check_called = false
local descent_timer = 0
local descent_check_ready = false
— Main logic
function cruiseChecklist()
local dt = SIM_PERIOD or 0.016
local airborne = Y_AGL > 0.5 or VS > 100
— Yaw damper on at 120 KIAS
if IAS >= 120 and airborne and not yaw_damper_called then
speakNoText(“Yaw damper on”)
yaw_damper_called = true
end
— Initial cruise checklist at 130 KIAS
if IAS >= 130 and not cruise_check_called then
cruise_check_called = true
cruise_step = 1
cruise_timer = 0
end
— Step through first cruise checklist
if cruise_check_called and cruise_step > 0 then
cruise_timer = cruise_timer + dt
if cruise_step == 1 and cruise_timer > 0 then speakNoText(“Cruise checklist. Climb to cruise altitude, eight to ten thousand feet at your discretion, Sir.”) cruise_step = 2 cruise_timer = 0 elseif cruise_step == 2 and cruise_timer > 3 then speakNoText(“Set twenty Three hundred RPM and twenty Three inches of manifold pressure. This is known as square power. Lean the mixture as required.”) cruise_step = 3 cruise_timer = 0 elseif cruise_step == 3 and cruise_timer > 3 then speakNoText(“Monitor all engine instruments.”) cruise_step = 4 cruise_timer = 0 elseif cruise_step == 4 and cruise_timer > 3 then speakNoText(“Maintain all assigned headings and altitudes.”) cruise_step = 0 end
end
— Second cruise checklist at 7000 ft
if not cruise_alt_check_called and ALT_MSL > 7000 and airborne then
cruise_alt_check_called = true
cruise_alt_step = 1
cruise_alt_timer = 0
cruise_altitude = ALT_MSL — Save cruise altitude for descent detection
descent_check_ready = true
end
— Step through second cruise checklist
if cruise_alt_check_called and cruise_alt_step > 0 then
cruise_alt_timer = cruise_alt_timer + dt
if cruise_alt_step == 1 and cruise_alt_timer > 0 then speakNoText(“Now passing seven thousand feet Sir. Cruise checklist items.”) cruise_alt_step = 2 cruise_alt_timer = 0 elseif cruise_alt_step == 2 and cruise_alt_timer > 3 then speakNoText(“Set twenty Three hundred RPM and twenty Three inches of manifold pressure. Lean the mixture as required.”) cruise_alt_step = 3 cruise_alt_timer = 0 elseif cruise_alt_step == 3 and cruise_alt_timer > 3 then speakNoText(“Monitor all engine instruments.”) cruise_alt_step = 4 cruise_alt_timer = 0 elseif cruise_alt_step == 4 and cruise_alt_timer > 3 then speakNoText(“Maintain all assigned headings and altitudes.End Check List”) cruise_alt_step = 0 end
end
— Descent checklist trigger if dropping 1000+ feet from cruise altitude
if descent_check_ready and not descent_check_called then
if ALT_MSL < (cruise_altitude – 1000) and VS < -200 then descent_timer = descent_timer + dt if descent_timer > 3 then
speakNoText(“Descent checklist Sir. Set power as required.”)
speakNoText(“Mixture richen as needed.”)
speakNoText(“Check altimeter and lights.”)
speakNoText(“Begin descent briefing with Crew & Passangers.”)
descent_check_called = true
end
else
descent_timer = 0 — Reset timer if not steadily descending
end
end
end
— Register loop
do_every_frame(“cruiseChecklist()”)

——————————————-

Baron 58 Night

Legal Notice

  • FREE TO DOWNLOAD & USE: The Baron58_Cruise.lua is completely free for personal use. You are welcome to download, install, and use it in your X-Plane 12 setup.
  • NOT FREE TO REDISTRIBUTE: Redistribution of this script, in whole or in part, without the permission of the creator, Brendon McAliece of LetsFLYVFR.com, is strictly prohibited.
  • USER MODIFICATIONS: While you are free to edit the script for your personal use, modifying the Lua script incorrectly may cause it to malfunction. Any modifications are done at your own risk. The script remains the intellectual property of Brendon McAliece, the creator and owner, associated with LETSFLYVFR.com and the LETSFLYVFR YouTube Channel.
AMAZON KINDLE

Baron58_Cruise.lua – Common Issues & Troubleshooting

While the TakeOff_Climb.lua Script has been extensively tested by Brendon McAliece (AKA Gunnie) of LETSFLYVFR.com, there may still be occasional issues, especially as the script is still in beta. The script included I flew with today and works perfectly!

Common Issues:

  • No Speech or Callouts: Ensure FlyWithLua NG is properly installed. If the Lua script isn’t executing, it might be due to missing files or incorrect setup. Check the installation steps carefully.
  • Script Not Running: Double-check that the script file is saved with the correct .lua extension and placed in the FlyWithLua/Scripts/ folder.
  • Missing Datarefs or Errors in Log: If you see errors about missing datarefs, it may indicate that a specific part of the aircraft model or X-Plane setup is not fully compatible with the script. Report any issues in the comments or contact us.
  • Performance Issues: If the script causes performance issues, try disabling other scripts temporarily to identify potential conflicts.

Current Baron 58 Lua Scripts Available.

Author

Brendon McAliece - Gunnie and a Jabiru 170 Sport Pilot Certified.
Brendon McAliece – Sport Pilot Certificate Holder

Brendon McAliece (Aka Gunnie) is a military veteran with 23 years working on Jet Fighters, their weapons systems and ejection seat/module systems as well as munitions and R&D. Involved with flight simulation since the 1980s, he has flown all the major flight simulators over the years.

He is an Australian expat who has lived in Malaysia, UK, Saudi Arabia and more recently Thailand. He is a multi-lingual blogger who loves to share his life experiences here on LetsFlyVFR.com and DreamingGuitar.com, with his lifestyle and Travel experiences Blog plus his Dreaming Coffee website.

Learn More @ 
DreamingGuitar.com – DreamingCoffee.com – LetsFlyVFR.com

HOME – BLOG – SHOP – ABOUT )

This page has been viewed 10 times.

As an Amazon affiliate I may benefit from qualifying sales.

One response to “X-Plane 12 Baron 58 Copilot Cruise Decent Lua Script.”