Duke (Piston + Turbine) LVAR for MobiFlight
-
@Black-Square I'm open to testing anything prior to release.
@Tailhook Thanks for volunteering! Believe it or not, it should be as simple as doing the following find-and-replace on the main behaviors XML, and of course for BKSQ_IgnitionPosition_2, as well.
Find:
(L:BKSQ_IgnitionPosition_1, number) 4 ==
Replace:(L:BKSQ_IgnitionPosition_1, number) 4 >= -
@Tailhook Thanks for volunteering! Believe it or not, it should be as simple as doing the following find-and-replace on the main behaviors XML, and of course for BKSQ_IgnitionPosition_2, as well.
Find:
(L:BKSQ_IgnitionPosition_1, number) 4 ==
Replace:(L:BKSQ_IgnitionPosition_1, number) 4 >=Find:
(L:BKSQ_IgnitionPosition_1, number) 4 ==
Replace:(L:BKSQ_IgnitionPosition_1, number) 4 >=Tried this (3 lines, both mags), no difference. The mags won't go into START now at all. Still need to use the two different event's I posted above to get any action out of both L/R starters.
-
Find:
(L:BKSQ_IgnitionPosition_1, number) 4 ==
Replace:(L:BKSQ_IgnitionPosition_1, number) 4 >=Tried this (3 lines, both mags), no difference. The mags won't go into START now at all. Still need to use the two different event's I posted above to get any action out of both L/R starters.
@Tailhook Three lines? I only see two. Also, when you say you tried it, do you mean that you tried your previous homebrew solution, or you tried incrementing/decrementing L:BKSQ_IgnitionPosition_1
0 -> 1 -> 2 -> 3 -> 5? -
@Tailhook Three lines? I only see two. Also, when you say you tried it, do you mean that you tried your previous homebrew solution, or you tried incrementing/decrementing L:BKSQ_IgnitionPosition_1
0 -> 1 -> 2 -> 3 -> 5?@Black-Square Lines 5256 and 5298 were the '3rd' for each. ¯_(ツ)_/¯
I reverted those lines and tested again. Setting ignition to 5 does crank the starter now. But this change is not realistic because the knob only counts to 0-4 when using mouse.
Instead, I replaced:
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>A:GENERAL ENG STARTER:1, bool) }
with
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>K:STARTER1_SET) }and
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:SET_STARTER2_HELD) }
with
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:STARTER2_SET) }NOW the magneto switches go to START when in position 4, like they should.
-
@Tailhook Three lines? I only see two. Also, when you say you tried it, do you mean that you tried your previous homebrew solution, or you tried incrementing/decrementing L:BKSQ_IgnitionPosition_1
0 -> 1 -> 2 -> 3 -> 5?@Black-Square said in Duke (Piston + Turbine) LVAR for MobiFlight:
@Tailhook Three lines? I only see two. Also, when you say you tried it, do you mean that you tried your previous homebrew solution, or you tried incrementing/decrementing L:BKSQ_IgnitionPosition_1
0 -> 1 -> 2 -> 3 -> 5?So when the patch comes out, or we put the fix in manually, we should skip a value of 4?
-
@Black-Square Lines 5256 and 5298 were the '3rd' for each. ¯_(ツ)_/¯
I reverted those lines and tested again. Setting ignition to 5 does crank the starter now. But this change is not realistic because the knob only counts to 0-4 when using mouse.
Instead, I replaced:
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>A:GENERAL ENG STARTER:1, bool) }
with
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>K:STARTER1_SET) }and
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:SET_STARTER2_HELD) }
with
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:STARTER2_SET) }NOW the magneto switches go to START when in position 4, like they should.
@Tailhook said in Duke (Piston + Turbine) LVAR for MobiFlight:
But this change is not realistic because the knob only counts to 0-4 when using mouse.
I'm sorry if I'm missing something, but how is setting a value of 5 to get what you want "unrealistic", just because that's not what happens when you use your mouse?
-
@Tailhook said in Duke (Piston + Turbine) LVAR for MobiFlight:
But this change is not realistic because the knob only counts to 0-4 when using mouse.
I'm sorry if I'm missing something, but how is setting a value of 5 to get what you want "unrealistic", just because that's not what happens when you use your mouse?
@Black-Square Because manually manipulating the starter variable through devmode by forcing an abnormal value just to achieve a desired effect is not realistic. Everyone using external hardware or software with the Duke, Baron, and Bonanza are currently suffering from this issue. I provided the fix for simconnect to get both engines started externally, and the animation now works correctly when setting the Lvar and starter event simultaneously.
-
Please bear with me again, because I want to make the correct decision for everyone here. Can you explain how setting an L:Var and the correct starter event simultaneously is more desirable than just setting one L:Var? There's nothing "abnormal" about the value five. It just allows us to bypass the spring return of the four position in code.
-
Please bear with me again, because I want to make the correct decision for everyone here. Can you explain how setting an L:Var and the correct starter event simultaneously is more desirable than just setting one L:Var? There's nothing "abnormal" about the value five. It just allows us to bypass the spring return of the four position in code.
@Black-Square Because magneto switches do not have 6 positions. This would require a custom intercept of receiving the Lvar value of 4 and then forcing the value of 5.
-
I'm not the most adept with hardware and the various 3rd party applications to bind them, so maybe that's the problem here, but... my users bind all sorts of complex behaviors with my aircraft using L:Vars. What is so complicated about setting the value to five when you turn your hardware switch to the start position? Please don't misconstrue my questions for resistance to change. If I have to explain a change to all my users in the future, I would just like to understand why it was the best choice to make at the time.
-
Understandable. Just note that you are using the wrong event for the starter variable. _HELD is primarily for starter buttons, not switches. For more, see here: https://devsupport.flightsimulator.com/t/set-starter1-held-sdk-info-needs-slight-update/5366/3
-
@Black-Square Lines 5256 and 5298 were the '3rd' for each. ¯_(ツ)_/¯
I reverted those lines and tested again. Setting ignition to 5 does crank the starter now. But this change is not realistic because the knob only counts to 0-4 when using mouse.
Instead, I replaced:
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>A:GENERAL ENG STARTER:1, bool) }
with
(A:GENERAL ENG STARTER:1, bool) if{ 0 (>K:STARTER1_SET) }and
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:SET_STARTER2_HELD) }
with
(A:GENERAL ENG STARTER:2, bool) if{ 0 (>K:STARTER2_SET) }NOW the magneto switches go to START when in position 4, like they should.
I agree, and I think the discrepancy that you've noticed was me "shotgun" testing multiple possible solutions back when I was developing this system. The STARTER_SET event would be the most correct to use, but I also want to make sure that people have a way to access the magneto switch via L:Var without the spring return, which has been a sticking point for the majority of hardware questions in the past.
Now, reading your original post to figure out the best combination of things to do here, the real question is why I haven't had any problems with starting the engines (with the proper visual switch position) by using the native starter events from the in-game controls menu.