XBOX planes with state saving (fuel)?

And then a further 6+ months for the approval “team” to work through their (I could mean that “their” as a singular!) suddenly overflowing inbox! :angry:

1 Like

3 months took into account the time it will take to get the new update and the time it will take for the first newly submitted planes after the update to start getting approval.

I’ve been on Xbox since the first console dropped. I kinda just add the extra MS approval time in automatically at this point! :joy:

The Wilga is an anomaly because the Marketplace just stopped accepting new submissions for a few weeks when Got Friends was ready to send it over to MS for approval. It got EXTRA delayed.

The HJet has fuel state saving as well

Was this in the latest update? Haven’t flown yet with it installed.

I think it’s been there for a little bit prior to the most recent update. I definitely remember the fuel state being saved at least mid summer last year.

1 Like

I haven’t flown it in a while. Hadn’t noticed that. Will need to fly it again next time I am in the sim. It is a lovely plane and I would be thrilled if it state saved fuel. Thanks.

Thanks for this information. I don’t know why but half the time I post a question in this forum I end up spending more money I didn’t have. :grinning:

4 Likes

Why bother having it in the first place if you’re going to end up not having it anyway? Sounds like a good arrangement to me! At least you end up with a new plane! :smiley:

1 Like

Very thought provoking and philosophical!

That’s one to add to the “self justification” armament box I’ve got stashed away somewhere :slight_smile: Thanks!

2 Likes

Confirmed the H Jet state saves your fuel between flights!

On Xbox.

Cool.

3 Likes

Good to get confirmation that it’s working on XBOX.

Is there a current list of planes on XBOX with state saving that are confirmed to work?

Full state saving is very rare on Xbox. Maybe the 414, but I rarely fly it on Xbox so I might be wrong.

Just Flight and MilViz planes aren’t on Xbox yet.

Can you expand on your reference for this being a WASM issue?

State saving (actually just simple storage key/value CRUD interface) is a core function of the FE framework, so it’s not really a WASM issue per se, if anything it’s an implementation issue.

WASM is just a compilation from highlevel code (C#, C++ etc) to the WASM byte code. If a high level feature doesn’t work on WASM (like state saving), it’s because the byte code equivalent has either been nuked for security or not implemented as yet. Good deep dive WASM doc here: MSFS - WASM Deep Dive | FSDeveloper

Have other developers using it on PC given specific reasons why they’re not on XBOX yet? Is it because purely they can’t use base state saving functionality or other reasons?

It would be good to get confirmation from Asobo/MS about the exact WASM features that are implemented. If it is nuked, it is possible Flysimware found a workaround, or they may just be using the base MSFS state saving that does work on XBOX.

I’ve had a similar situation with Unity converting a native C# app (PC/iOS/Android/OSC) to a WASM browser app that didn’t support microphone input (Unity won’t support it) but was able to do it with a custom js implementation that works on WASM. XBOX is trickier though, being console dev and the extra hoops you have to go through to test.

I’m really interested to find out as I’m reliant on it for some features of Aircraft Manager for MSFS - Sonicviz , and I’m trying to assess what I’ll have to do to squeeze this onto XBOX.

1 Like

In the simplest, most non-technical sense, the VAST majority of planes that have state saving (if not all of them) are held up by WASM issues.

I do not know if state saving itself is tied up in all that.

It may just be coincidence that all the planes with state saving aren’t on Xbox, held up by WASM issues.

But fix the WASM issues and those planes should become available on Xbox sooner or later.

Ok, thanks.

So we need to clarify a couple of things, so we don’t assume anything:

  1. What is the exact high level feature set of the MSFS sdk that is supported by WASM

  2. Why specific planes are not making it through the WASM approval pipeline.

I’m going to trawl through the SDK docs to see if I can find the answer to #1.

Are there any devs lurking who might know the answers to these?

Is flysimware dev in the forums? He seems like the one to ask (unless he’s found a personal WASM state saving workaround, which I can understand he might want to be cagey about, but then it did get approved so it can’t be an exploit otherwise they would likely have rejected it.)

Check FSW’s discord.

1 Like

As near as I can determine the persistant storage API is .js only, and not available in WASM.

Quote from a WTT dev re: persistant storage via .js DataStore:

dga CaptMatto commented · Oct 03 2021 at 3:22 AM
This API is only available on the JS side. So, you can do what you want, like we do but you have to do it in the js of glass cockpits. Which isn’t really an option on steam gauge aircraft.

SDK WASM docs also make no reference to any storage functionality:
https://docs.flightsimulator.com/html/Programming_Tools/WASM/WebAssembly.htm

I’ve pinged some devs for more info, to clarify some questions I have about .js DataStore use on XBOX.

So it seems to me the WASM hold up issues are more likely related to other issues than State persistance, given it appears to be a .js feature only.

eg:

They’ve spoken only in general terms about this showstopper platform API issue that’s causing 3rd party WASM planes to be held up. It could be the inability to store info is what they want to enable, or it may be something else, as WTT dev implies it prevents them from running at all. All they seem to say is “platform API issue”. ref: WASM for Xbox SU12 - #103

I haven’t signed up with flysimware discord as yet to check what they’ve done to save fuel state, but at the risk of assuming it looks to me like they are utilising the .js DataStore side of things to do this, if that’s the only known method atm. As 414 is not a glass cockpit, maybe they’ve just implemented a workaround test using DataStore with the fuel.

Given how the WASM XBOX side seems a little “in development” twitchier to deal with than even the regular SDK I’m not surprised devs are having issues navigating the testing/approval process.

All the above subject to further info and clarifications.

Also at the risk of assumptions here as I have no insight other than a gut feeling from what I’ve been reading, but I’ve not seen it mentioned in the last few posts.

I believe the aircraft that have fuel state saving as an option are also the more advanced products (in terms of added features / scope) and it’s THOSE other features that need WASM.

If an aircraft has fuel state saving, they have included the code for that in amongst the same additional codebase as the other implemented features and they don’t want to separate that single part out just for Xbox because they want to launch the SAME product there.

Actually in most cases the features that they need the WASM for are a lot more integral (critical) for their products. Such as additional flight model handling and instrumentation functions (think V22 Osprey, 737, DC-6) so only having fuel state on Xbox is not realistically possible. They need access to all the stuff together to make their product launch possible.

1 Like

I was thinking along those lines. It tracks.

Also, and I can’t emphasize this enough, the whole WASM issue has played out with one setback after another.

Devs didn’t know it would be an issue when they started making a lot of these advanced planes. They expected to be on Xbox. And by now, I imagine some devs expected it to be fixed by the time their next plane released.

After two Holiday seasons for MSFS on Xbox, a lot of smaller developers have had the chance to build planes around WASM issues. The larger developers with longer production cycles are in a pickle. A few seem to have gambled on the assumption it would be fixed by now.

I asked FSW via their contact form how they did the fuel saving and they said it was via standard sim [LocalVars] in systems.cfg

Scroll to bottom of systems.cfg

Although FSW is only using it for fuel state atm, potentially this could be used for any instrumented data.

State saving for non-instrumented data is a different thing though, that’s where you need DataStore type functionality.