FSXA Is there "Advanced Life" without SimVar?

#1
I've been mission building for years…I cut my teeth on OPT then moved to FSXME.

However, I am fairly new to SimVar. It certainly does many great things via FSXME and I am totally hooked. (look for a free (obviously) SimVar intensive mission to come out on my website in a week or so.)

Of course, being an Engineer, I can't help but open the hood (bonnet for our British Common Wealth friends) and se what is going on.

To paraphrase an explanation I saw on SOH, it works similar to FSUIPC in that it takes commands or information and then translates them into FSX via SimConnect.

A look at the MS SDK for FSX Variables shows the following:

Notes (SimConnect)
Simulation variables are referenced from within SimConnect clients with the SimConnect_AddToDataDefinition call (see the SimConnect document for full details). When the units are listed as a structure or as a string, enter the empty string, or simply NULL, in the units parameter of this function call.

For example:

hr = SimConnect_AddToDataDefinition(hSimConnect, DEFINITION_1, "Kohlsman setting hg", "inHg");

Sooooo…what is this saying? Is it saying that if you include a line like the above…(in the Mission XML?)…for each "additional" variable you want to use, it will be duly passed by SimConnect?

In which case one wouldn't require SimVar to be running?

Not that I'm trying to kick SimVar to the curb…however, if I build a mission that only has one or two SimVar functions/variables, it would be a easier install for folks that don't currently run SimVar.
 
Last edited:
#2
Notes (SimConnect)
Simulation variables are referenced from within SimConnect clients with the SimConnect_AddToDataDefinition call (see the SimConnect document for full details). When the units are listed as a structure or as a string, enter the empty string, or simply NULL, in the units parameter of this function call.

For example:

hr = SimConnect_AddToDataDefinition(hSimConnect, DEFINITION_1, "Kohlsman setting hg", "inHg");

Sooooo…what is this saying? Is it saying that if you include a line like the above…(in the Mission XML?)…for each "additional" variable you want to use, it will be duly passed by SimConnect?

In which case one wouldn't require SimVar to be running?

Not that I'm trying to kick SimVar to the curb…however, if I build a mission that only has one or two SimVar functions/variables, it would be a easier install for folks that don't currently run SimVar.
I don't think it is that easy. FSX (as I understand) with the object placement tool (OPT) has some 60? simvars you can access. FSXME has a SIMVAR extension program that I think is already a Simconnect program that extends the simvars in the mission part of FSX and allows you to do great things. (but it seems you need to purchase the full edition now). If you create a mission using FSXME and have SIMVARs you will need to ship SIMVAR.exe with your mission. (maybe that's pat of the Mission - Create Installation menu item)

You could create your own exe or dll that does the same thing as SIMVAR.exe, but why reinvent that. BUT, if you have a requirement in your mission that cannot be solved with FSX OPT simvar or FSXME SIMVAR.exe then you will need to build your own simconnect dll or exe and use a custom trigger that gets or sets the variable.
 
#3
Agree that it's never smart to reinvent the wheel…unless of course you have a reason…and I'm not sure I have a reason or not.

Ron's reply has helped much with that determination–Many thanks!:)

The reason I think I have:

I like to make my offerings "friendly" to a wide range of flight simmers. Adding SimVar has a couple of downsides, especially for the more casual flight simmer.

First, there is the pop-up asking if you want install this "unverified" app (or some such language) - I'll need to explain up front in the installer that it is OK …still folks may be reluctant.

Second, by requiring SimVar I'm adding a bit RAM overhead…not much to be sure…but some. Plus most folks will go ahead and click on the "Yes, install every time in the future without asking me again" … so probably 90% of the time they won't eve be using it…but it will still be there. So if I'm adding the SimVar requirement for say, one or two "cool mission features" …is it worth it?

Frankly, if that's all I will need it for in any given mission , I'm much more interested in Ron's idea of a specific simconnect dll, even if it is for something that SimVar already does.

Still much thinking to do. :scratchch

BTW, Yes, you are correct, OPT give you 60 variables. Oddly enough FSXME only gives you 36. The work around: After starting a mission in FSXME, open it in OPT…add a property trigger using one of the 24 variables FSXME does not include…Save the mission. The full 60 will now be available to the FXME property trigger.
 
Last edited:
#4
UPDATE: For the last month or so I have immersed my self in "all things SimVar". The result is a Freeware Mission called North Sea SAR (available on the esci website - the "Free Stuff" page).

Conclusions: SimVar is a powerful add-on for mission building. In North Sea SAR was able to program a virtual copilot to take care of all the radios, GPS, communications and navigation functions. I changed the weather 4 times. I sent prompts messages to the pilot - even gave him the difference between KIAS and GS so he could figure his head wind…plus some other stuff.

However…It can be wonky. I had to purposely slow down some processes because it would go on to the next command before the first one was finished. Results were unpredictable…what worked one day, didn't the next. Version control was an issue. Ihe latest version is 1.0.3824.0…but during Beta testing some folks ran into a C++ Runtime Error using it (and it seemed to be taking a lot of CPU cycles). The solution was to drop back a version to 1.0.3750.0. Why? Heck if I know.

Verdict: I may use SimVar in the future for some work, but for something that I want (would like) distributed widely I think I'll stick to the un-enhanced SDK.

Just some thoughts
 
Top