Some clarification from devs about what LLM can and can’t do. From what I understand it won’t bring anything new to users who communicate with ATC via Action commands.
@everyone Hi everyone. With the impending release of the LLM to the experimental branch, I want to take a moment to discuss what to expect. If you’re not familiar with this topic, please refer to the announcement post above this one.
I’ve noticed some wild speculations and assumptions online about what this feature will do. There have also been incorrect claims about how this feature will impact system performance. Let’s clarify everything ahead of the release.
**What does the LLM do?**
The LLM acts as a logic layer on top of BeyondATC’s core engine, enabling powerful new functionality. However, it’s important to understand that the LLM cannot perform tasks that the core program doesn’t already support.
For example:
- You cannot request different vectors.
- You cannot say “unable” to a request.
- You cannot ask for an alternative instruction to what you’ve been given.
Why not? Because these features aren’t supported in the base program, and the LLM doesn’t expand the actions available within BeyondATC.
**Why are these limitations in place?**
As explained in the video, these restrictions are intentional to prevent the LLM from issuing nonsensical instructions (called “hallucinations”).
LLMs excel at processing and generating text but lack situational awareness and spatial reasoning.
To maintain accuracy and realism, the core engine of BeyondATC remains in full control. The LLM is not a magic solution; it’s a powerful chatbot that enhances interaction within the robust pre-existing ATC engine we’ve developed.
**What CAN the LLM do?**
The LLM brings two major improvements:
1) Enhanced understanding of pilot requests.
- The LLM improves the accuracy of interpreting your requests. Previously, if you phrased something in a way BeyondATC didn’t recognize, you might get a “request not understood” response. Instead, it will now always understand and respond to you.
- The LLM contextualizes your input and translates it into actions supported by the core engine.
For example, you could say:
“Can you hear me?” → This would trigger a radio check.
“We’re at the runway threshold, ready whenever you are.” → This would initiate a departure request.
Even if your microphone misinterprets some words, the LLM can infer your intent.
2) Informational queries - You can ask various questions to enhance your situational awareness:
- “Can you repeat my squawk code?”
- “What’s the wind direction at my destination?”
- “Is the airport busy right now? Should I expect delays?”
Notice none of these examples involve requesting new instructions. The LLM is for requests and informational queries, not operational changes. Instruction-related tasks must be handled by BeyondATC’s 3D engine to ensure accuracy.
**Performance impact**
The LLM has been designed to have minimal impact on your system.
Maintaining optimal performance for your simulator is our top priority. As mentioned in the video, we achieve this by using a local LLM that runs on your system, while offloading the heavy lifting to our servers. You don’t need to worry about the LLM turning your GPU into a thermonuclear device whenever you ask what time it is.
**Final notes**
Similar to other features, this LLM release is a v1. In line with our open development philosophy, we’re releasing this “starter kit” version to gather feedback and identify how users want to utilize this technology.
We’ll closely monitor player feedback to guide future improvements and expansions. So as with traffic when it was first released, please expect this version to contain bugs and problems as this is a new feature. If you do not want to deal with this, please switch back to the Early Access branch where we will continue to provide stable updates to the core engine.
We’re very excited to share this new way of interacting with BeyondATC!
As always, thank you for your continued support! If you have any questions, feel free to join our channels and ask.
Here’s a good example of what I hope/assume the LLM will provide. Landed my freighter at KMEM yesterday, asked Ground for “Cargo Ramp 803”, got “Im sorry, that ramp doesn’t exist”. If I would have said “Cargo 803”, it would have worked (I resorted to using the lower-left menu).
Will strongly suspect that the LLM will infer the meaning much more effectively, i.e “Ramp 803”, “Cargo 803”, “Fedex Ramp 803”, etc, might all work.
I just want to clarify something. There will be two layers: the LLM and the BATC core, which you’ve been using until now. The LLM will determine whether an ATC request is being triggered - which will be handled by the BATC core - or if it can respond directly because it’s an out-of-the-box question. However, at this stage, readbacks will not utilize the LLM as it’s part of the BATC core. Its primary role is to decide which request the user is triggering.
Example: if I’m holding short the runway and I say United 443, runway 22R, we are ready, it will understand that I am requesting departure (this would have resulted in request not understood without the LLM due to the missing keyword departure/takeoff/go). But if I’m reading back a taxi instruction, the LLM is not involved at this time.
2 flights in the last two days. On each one, BATC crashed at least 5 times. Never had this issue before. Things were fine until the latest patch, nothing else has changed at my end.
It would help BATC if you would submit your log files of the crashes to the BATC Discord site, if possible. They would also let you know if something might be wrong on your end. My guess is that, if they agree that crashes are due to the latest version released, they would provide a patch fairly quickly. They provide excellent support!
Happening again on my current flight. BATC is basically unusable when I need to pause the flight and then spend a few minutes getting it rebooted, just to have to repeat the process 10 minutes later. How do I submit the log files? This is went from rock solid to Beyond Annoying after the last update (I can’t think of any other catalyst for the crashes, I’ve made no other changes / adding no other programs since the update).
Share your BATC log files
When reporting bugs please upload your log file by dragging and dropping the text file Player.log into discord. The log file is located here: %userprofile%\appdata\locallow\Skirmish Mode Games, Inc\BeyondATC
Hopefully, they will be able to get you going fairly quickly.
After the latest update, BATC is giving me radar vectors for the approach when I request descent clearance. Happened on last two flights. They tell me, “turn right, HDG 335, radar vectors for ILS 04R, expect further clearance in 65 miles”
Anyone else with this? I tried ILS04R KEWR and RNAV10 MBPV.
Both approaches did not include a STAR, they were meant to include radar vectors from my last fix about 10 miles from the FAF.
First time flying out of the stock MSFS 2024 KATL. Both flights, received no taxi directions, just “proceed to Runway XX at pilot’s discretion”. Landing at KMCO, got detailed taxi instructions to the gate but it didn’t ask me to stop and request permission to cross another runway.
Is this normal for BATC to have some glitches like this? At other airports, BATC is meticulous about having me stop and wait to be cleared before crossing a runway.
What I hate, are the inconsitant of frequencies inside MSFS, Navigraph and BATC.
Sometimes they matches with Navigraph, MSFS Worldmap or MSFS2024 Charts/EFB, sometimes not.
It depends on the airport scenery’s AFCAD files. Most third-party developers’ stuff is better in this regard than stock sim airports, even the “hand crafted” ones.
Very common for visual approaches to still use the localizer as a lateral reference. You can enter the localizer frequency in your nav radios and actually join the localizer, or simply turn into an extended runway centerline purely visually, though if you’re 8-10 miles away and have some clouds. or haze, or a cluttered cityscape, it might be difficult to line up cleanly. Having the localizer as a reference helps quite a bit.
Because BATC reads taxiways directly from the scenery files, not Navigraph data. If your scenery is out of date (most Asobo handcrafted airports) it won’t match latest charts. Just follow yellow signs.
Yep, as DrVenkman said, this is very common in the US for visual approaches. It assumes that you have the ILS tuned. I guess it’s the equivalent to “join the centerline of the runway”. Kinda weird, but real-world ops in the US.
I’ll have to hunt down a runway that does not have ILS (RNAV only, maybe), with VFR conditions, and see what BATC says in that case.
“Airport is at your X o’clock. Report the field in sight.”
And it really doesn’t like when I say, “Airport in sight.”
I’m trying to recall if I figured out I have to say “Field in sight” or if I am still having to switch the BATC window and choosing the selection to get it to work.
I think it’s “Field in Sight”. You can look at the BeyondATC log and see your speech, what it believes you said, and then a response category which should give you clues.
I do tend to try to enunciate “Field in sight, [flight number]” very distinctly at this stage, because I’m probably getting close to the runway and I don’t want a lot of back and forth at this point before getting passed to tower.