Environment (E) variables missing from Simulation Variables docs (for SimConnect users)

Version: Live SDK docs as of Oct. 21, 2023

Frequency: Consistently

Severity: Low

Context: Simulation Variables

Bug description:

None of the Environment Variables (‘E’ type) are documented in the Simulation Variables section, even though they’re accessible via SimConnect by name, same way as ‘A’ type variables. Which in itself doesn’t seem to be documented anywhere I can find.

I don’t even know how an “average SimConnect user” would find out about these vars in the first place (I guess via searching for solutions to specific problems), but even then it can lead to obvious confusion w/out actually knowing what exactly the vars represent or what other options are available. For example:
https://www.fsdeveloper.com/forum/threads/get-simulated-date-season.457852/

Thanks,
-Max

EDIT 04-Mar-24 - Fixed links to point to published E var docs vs. the RPN reference of the type.

Are they listed here ? being called GENERAL SIMULATION Variables, as opposed to ENVIRONMENT Variables …

https://docs.flightsimulator.com/html/Programming_Tools/WASM/Gauge_API/Token_Vars/General_Simulation.htm?rhhlterm=zulu%20month%20year&rhsearch=ZULU%20MONTH%20OF%20YEAR%20

These seem similar, yes, besides the names and what is available in each set.

But again they’re under “Token Variables,” in the Gauge API docs this time, so I’m not sure how any SimConnect user is supposed to find them. My WASM-based remote API actually supports using token vars, but anytime I’ve mentioned them seems like no one even knows what I’m talking about… :slight_smile:

For some unknown reason the E Variables are listen under Reverse Polish Notation where all the variables types are being explained.

Best,
Raul

Indeed, that is where my “Environment Variables” link points as well. I’m not sure they were ever listed as Simulation Vars. Even the ahem… other… SimConnect reference lists them separately as “Environment Variables” (though at least in the same general area as Sim Vars). I guess it’s part of the “black magic” of working with SimConnect… :sweat_smile:

Here’s the closest I’ve found so far… I guess someone cared about developers at some point. :stuck_out_tongue:
You have to scroll way down since there are no internal links, but the E vars are listed as “Environment Data” on https://learn.microsoft.com/en-us/previous-versions/microsoft-esp/cc526981(v=msdn.10)

Kind of telling.
Microsoft MSFS was promoted as being derived from Microsoft FSX.
Lockheed were sold ESP. so ESP is now totally owned by Lockheed.

Now we have traces of Lockheed’s ESP documentation turning up in MSFS, that was never in FSX.

I’m pretty sure Microsoft still owns ESP.

Lockheed purchased the rights to develop products using it for anything other than entertainment.

Microsoft ESP technology allows users to operate realistic vehicle models that incorporate real-world physics to enhance realism, such as in the interior and instrumentation of a Boeing 747-400 shown here.

The agreement provides Lockheed Martin with access to the ESP technology portfolio enabling the company to build cost-effective simulation solutions for customized training for its worldwide customers. Lockheed Martin’s software development teams will extend the current capabilities of ESP to enable a whole new suite of innovative ESP-based solutions that will evolve beyond flight training to include ground and civil agency applications.

1 Like

The environment variables are listed in the “Environment Variables” section on Programming APIs. I’m not sure if that changed since this topic was created?

You’re right, that’s the (same and only, seems like) place they’re currently documented.

The links I pasted in the OP were probably confusing/wrong, so I updated those (thanks to the frames in the online docs you can’t just copy internal (#) link URLs from the address bar).

Note that the “Environment Variables” section of that page doesn’t even show up in the left nav, so w/out scrolling or looking closely at the right side index, makes them even easier to miss IMHO.

Also as pointed out in another open ticket here, those docs neglect to mention that one doesn’t need the “E:” prefix to access them via SimConnect. Basically as far as SimConnect API/usage goes, there’s no distinction between “Environment” and “Simulation” var types in this case.

1 Like