Author Topic: GSX turning 77W into 77F cockpit **SOLVED**  (Read 11628 times)

Qantas747

  • Newbie
  • *
  • Posts: 33
Re: GSX turning 77W into 77F cockpit
« Reply #30 on: September 10, 2021, 06:02:42 am »
Umberto, how can you solve this issue? I've posted on the PMDG forums - https://forum.pmdg.com/forum/main-forum/pmdg-777-forum/147966-gsx-turning-77w-into-77f-cockpit They're certain its not their end

Captain Kevin

  • Beta tester
  • Hero Member
  • *****
  • Posts: 1830
  • Captain Kevin
    • Captain Kevin
Re: GSX turning 77W into 77F cockpit
« Reply #31 on: September 10, 2021, 08:29:47 am »
I'm asking because, the 777 is the only PMDG product I don't own in P3D, I bought the FSX version, but decided to pass on the P3D version, because it didn't feel having to purchase it again without even a small discount ( I guess we are the only fools that allowed users that bought GSX in 2012, to use still use it with the same license in P3D V5 and PBR, 9 years later ) so, if I need to buy the 777 just to check this problem, I wanted to know if it also happens with the Base product, or only with Expansion.
The expansion won't work without the base product anyhow, so if you were to check it, I don't know how just buying the expansion would solve anything.
Captain Kevin

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51256
    • VIRTUALI Sagl
Re: GSX turning 77W into 77F cockpit
« Reply #32 on: September 10, 2021, 09:50:23 am »
The expansion won't work without the base product anyhow, so if you were to check it, I don't know how just buying the expansion would solve anything.

That's not what I meant: I asked if the problem happened also with a model from the base product, so I could buy just that. But I'm afraid it seems I need to get both.
« Last Edit: September 10, 2021, 10:27:18 am by virtuali »

Qantas747

  • Newbie
  • *
  • Posts: 33
Re: GSX turning 77W into 77F cockpit
« Reply #33 on: September 10, 2021, 11:32:05 am »
Yeah it only happens on the 77W, and in order to get the 77W working you need the base package which is the 777-200LR

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51256
    • VIRTUALI Sagl
Re: GSX turning 77W into 77F cockpit
« Reply #34 on: September 10, 2021, 12:34:29 pm »
Don't worry, I just bought all 3 packages, and I can replicate it too. And, as I suspected, I'm not so sure it has anything to do with GSX, at least not directly.

By enabling the Content error report in the sim, I noticed that, when loading the 777-300ER, on exiting the sim, I always get a notice there are errors in the ContentErrors.txt file. So I had a look at it, and it contained A TON of errors, all related to the 777.

The log stops after 1000 errors, so the last section is 999 but and many errors are very similar, some slightly annoying but not critical, like not finding some textures or some effects:

[error.6]
error=Failed to load visual effect "fx_PMDG777_beacon"

[error.7]
error=Texture PMDG_777_MISC_SPEC.DDS failed to load (FE_REQUEST_STATUS==13)

[error.8]
error=Texture PMDG_777_CABIN_METALLIC.DDS failed to load (FE_REQUEST_STATUS==13)

[error.9]
error=Texture PMDG_777_TAIL_SPEC.DDS failed to load (FE_REQUEST_STATUS==13)



Some more troubling, like a failure to load many gauges, due to the wrong version of Simconnect, for example:

[error.17]
error=C-style gauge failed to load: C:\Prepar3D v4\Gauges\PMDG_777X.dll, Gauge: CDU.  Verify the correct version of SimConnect is installed.


There are about 80 errors like this, covering all gauges. However, Simconnect is not related to L: variables, so maybe we can ignore these as well.


But the bulk of the errors, which seems to be the most telling, are A LOT of issues that seems to be related to L: variables IDs, here's an example:

[error.111]
error=Gauge/Script Error
Type: Unknown
Name: Unknown
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "673".


There are 888 of them, (that's just because the log stops after 1000 errors), all with different ID numbers. However, most of these ID are repeated so, I ran a script over the error log that would remove all duplicate lines, and it came out with this result:


Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "211".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "211".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "246".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "280".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "673".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "674".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "692".
Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "693".


These are the unique IDs so, it seems, out of the many L: variables the VC use ( there are probably hundreds of them, at least one for each switch ), ONLY 7 failed to read, for some reason.


After my first test with GSX, to be sure these problems are not caused by a conflict with GSX or any other module, I disabled EVERYTHING

GSX, SODE, FSUIPC, Navigraph, up to a point I don't even had an "Addons" menu anymore. It's just P3D 4.5 HF3 and the 777.

And sure enough, even during the 2nd run, with *all* 3rd party modules disabled, resulted in the SAME errors as before: reports of the wrong version of Simconnect, and hundreds of errors related to reading the Variable IDs.

Now, a quick check on PMDG forums reading users reporting the same errors in the log, always invariably result in comments suggesting to just ignore them, those are only used by developers, and you should turn the Content error option off, and forget about it.

Well, first I find this quite shocking: those errors seems to indicate something is going on with the airplane and, before we do a new GSX release, I always keep it enabled and try my best to be sure I have ZERO errors in the log. When we have errors, they are usually minor, like a missing texture on a specific vehicle variation but, those in the 777 seems to be fairly serious and, specifically, mostly related to issues reading the Variables IDs.

Remember my explanation about the L: variables and their IDs ? That's seems to be the problem: somehow, the simulator is telling this airplane has issues reading L: variables, but that might not be a problem if you use the airplane alone, it only starts being a problem when something else use its own set of L: variables, like GSX, because when two programs that use L: variables are working together, it IS possible to end up with an ID conflict, unless both use the proper care to ensure this doesn't happen.

I think PMDG say you can ignore those errors because, traditionally, L: variables are used by airplanes and, since it's not possible to load two airplanes at the same time, every possible conflict that might happen, won't be visible anyway so, even if their code didn't account the chance of an ID conflict, it won't be a problem, and one can safely assume all IDs are usable when switching planes.

So, having made it clear the airplane has some issues with at least 7 L: Variables even when *nothing* else is installed, why this is happening only with the latest GSX Update, which SEEMS to indicate GSX is the cause ?

My guess is just because we added a bit more variables that will be used by 3rd party developers that interface with GSX, some of them has been added to help FsLabs with their upcoming Concorde, for example. It's possible that, considering the airplane DOES have issues with 7 variables, we just got lucky with previous GSX, because the number of variables used by GSX wasn't enough to start issuing conflicting IDs with the 777. It's difficult to know for sure, without knowing the simulator own strategy to reallocate and reuse IDs but, what I think is happening here is:

The 777 failed to read a variable. We don't know its name from the error log, only its ID so, assume is this one ( if it's not, I'm sure it's one of the other 6 )

Error: PANELS lookup_var : SimVarGet Failed - Module_Var ID: "211".

Here, it seems ( remember, I'm getting this WITHOUT GSX! ), the airplane code for some reason failed to read a variable with ID 211 so, it's likely the simulator would consider that ID "free to use". Let's assume for a moment this 211 number is the variable that causes the VC to change into the freighter version. The real name of the variable is "IsFreighter", BTW, the "custom_vis_IsFreighter_01" is only how ModelConverterX presents it visually.

Now assume we start GSX Deboarding, which at a certain point will ask the sim to register some L: variables used for, let's say, the Cargo loaders, those are the names we use:

FSDT_CargoLoaderGuides
FSDT_CargoLoaderBridge
FSDT_CargoLoaderPlatform

But as I've said before, we use variables by name only the first time when we register them, which means telling the sim we want to use a new custom variable, and the sim will return with an ID.

So, when GSX registers those variables, the simulator is likely considering the ID 211 to be available because when the airplane used it, it FAILED, so it gives ID 211 to GSX.

GSX cannot possibly know the 777 TRIED and FAILED to use that ID already, so it will trust the simulator that ID is in fact available, and as soon one of these animations starts, the 777 L: IsFreighter will be set too, because of the ID conflict initiated by the failure of the airplane to use it which, again, happens even with the simulator is completely clean of add-ons.

I'm fairly confident that, if PMDG can fix their code to remove ALL those 7 variable failures, the conflict with GSX will likely disappear.
« Last Edit: September 10, 2021, 01:03:34 pm by virtuali »

Qantas747

  • Newbie
  • *
  • Posts: 33
Re: GSX turning 77W into 77F cockpit
« Reply #35 on: September 10, 2021, 02:22:12 pm »
Hi Umberto,

Thank you for your explanation and investigation into this issue. I appreciate it. I have quoted your reply to my PMDG forum thread and will await for their reply. I'll keep you updated. Thanks again

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51256
    • VIRTUALI Sagl
Re: GSX turning 77W into 77F cockpit
« Reply #36 on: September 10, 2021, 02:56:54 pm »
I appreciate it. I have quoted your reply to my PMDG forum thread and will await for their reply. I'll keep you updated.

I've read their reply and, as expected, they are continuing to repeat the problem "must be GSX", just because it happened only after our update, without providing any evidence, like I did.

I think I gave a reasonable enough explanation why it never happened before: we added a couple of variables ( all using FSDT_xxxx names, of course ) more in this version, so maybe now their number it's enough to expose a conflict that could always have happened.

The explanation those errors can be ignored, because they use "custom coding the sim does not understand" doesn't make any sense. The log clearly recognized what the code was doing, and it was a call to an API the sim clearly knows about it, which is used to read an L: variable from the panel system, and the sim said those calls failed.

If they really used "custom coding" to read ALL their L: variables, why the sim is logging failures for just 7 of them, out of the hundreds the panel likely use ?

I think I've gathered enough evidence indicating that, the main reason of the problem starts with those failures, and it was only by chance that, a new version of GSX exposed it because we increased the number of L: variable we use, but that error could have happened before, and I wouldn't be so cavalier telling users to ignore the errors.

I could only guess what PMDG would say IF GSX had so many errors logged, when in fact it has none, and it use lots of L: variables, has *thousands* of multi-livery object variations, yet is completely clean of any errors.

Instead, their plane is able to generate 888 errors using always the same 7 variables in a very short time ( and we don't even know how many more are really happening in the sim, because the log stops after 1000 errors! ), yet for some reason, it's GSX's that must change its errorlog-free code.

If I were them, I would worry about having so many errors (regardless of GSX) and would try to get rid of them, if only for possible performance reasons because, even if the log in the sim stops after 1000 errors, who knows how much more costly in cpu time is having constant errors happening, regardless if they are logged or not...



virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51256
    • VIRTUALI Sagl
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #37 on: September 10, 2021, 06:34:01 pm »
Hello, we found a workaround for this problem.

I still think it might be best if the airplane fixed its errors with those variables but, since it doesn't seem it's going to be fixed, we found a way to fix from our side. Get the update as usual.

Qantas747

  • Newbie
  • *
  • Posts: 33
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #38 on: September 11, 2021, 12:00:26 am »
Hi Umberto,

Thank you for solving the issue and releasing an update very quickly.

Captain Kevin

  • Beta tester
  • Hero Member
  • *****
  • Posts: 1830
  • Captain Kevin
    • Captain Kevin
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #39 on: September 11, 2021, 03:16:47 am »
Hello, we found a workaround for this problem.

I still think it might be best if the airplane fixed its errors with those variables but, since it doesn't seem it's going to be fixed, we found a way to fix from our side. Get the update as usual.
Not that it really makes a difference, but I'm just curious as to what you ended up doing to solve the issue.
Captain Kevin

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51256
    • VIRTUALI Sagl
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #40 on: September 11, 2021, 09:56:30 am »
Not that it really makes a difference, but I'm just curious as to what you ended up doing to solve the issue.

It seems the sim was sometimes confused when we registered some of our variables, and in some cases returned 0 as ID, so we now ignore 0 results and try the registration again until we get an non-0 result.

Not sure if it's an unknown bug in the sim, or a bug induced by the sim having to deal with so many errors ( which even if they are not logged on a file, are still happening ) in a very short time. Ignoring Content error reports it's not safe, since no 3rd party developer can be sure they won't have side-effects on the simulator itself.

Captain Kevin

  • Beta tester
  • Hero Member
  • *****
  • Posts: 1830
  • Captain Kevin
    • Captain Kevin
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #41 on: September 11, 2021, 12:04:00 pm »
Interesting.
Captain Kevin

Keight

  • Jr. Member
  • **
  • Posts: 79
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #42 on: September 12, 2021, 01:09:15 am »
hi. installed the latest update and still having the issue

theScotsman87

  • Newbie
  • *
  • Posts: 1
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #43 on: September 12, 2021, 09:29:48 pm »
Hi all.

Same as post above.

GSX updater only updated some texture files last update and issue still persists with the 777

(p3dv4.5)

Qantas747

  • Newbie
  • *
  • Posts: 33
Re: GSX turning 77W into 77F cockpit **SOLVED**
« Reply #44 on: September 13, 2021, 01:44:56 am »
Hi Umberto,

I don't understand your program whatsoever. I updated, it worked fine. Went and loaded up to do a flight and boom it happened again... Then ran the live updater and all worked fine again... Do you have an idea what's happening? Other users on the PMDG forum are still experiencing the panel changing