Falcon BMS Forum
    • Categories
    • Unread
    • Recent
    • Unsolved
    • Popular
    • Website
    • Wiki
    • Discord
    • Register
    • Login

    Virtual crew chief

    Voice Control
    15
    60
    2.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • SemlerPDXS
      SemlerPDX @Mylonite470
      last edited by SemlerPDX

      @Mylonite470 said in Virtual crew chief:

      I use the Push To Talk function with @SemlerPDX 's AVCS4, and I like the immersion it brings.

      I was doing another ramp start with the Virtual Crew Chief today, and I noticed that the PTT function isn’t working when I’m using the VCC. VA is listening all the time during my ramp start.

      Does anyone know if there’s a way to make the PTT function work with both VA profiles, i.e. with AVCS4 and the VCC profile?

      It’s not a huge deal, just a “would be nice to have” item. It’s no tragedy if this isn’t possible, since most of the time spent in a mission is outside the scope of VCC, and thus most of that time is spent with the immersion of the PTT function.

      Well, it would be a bit of work, but you could add a single condition to every command in VCC, which is how my AVCS4 profile(s) watch for PTT clearance to execute - when the key is not down, they exit. While you cannot directly copy the following text, the actions are quite apparent and you can just copy the names of the variables we are checking (both true/false boolean variables, without the surrounding square brackets mind yoo) from below, and add “Begin Condition” actions as shown below with these variables in the condition field:

      // Check if set to a PTT only command mode
      Begin Boolean Compare : [AVCS_RadioButtons_ON] Equals True
          Begin Boolean Compare : [AVCS_BMS_PTT_KeyDown] Equals False
          End Condition - Exit when condition met
      End Condition
      

      …in the “End Condition” action for the inner condition (for KeyDown), you would need to check the box to ‘Exit when condition met’, as we are checking if this is false, meaning “if the button is not down, exit”:
      be9f3afb-ddc4-4840-b1ab-edfedace7817-image.png

      …finally, you can select these four action lines in that command, and copy them, then open each command in the VCC profile and just paste them at the top before any other actions.

      AVCS4 Voice Control Radio Menus for Falcon BMS (and other profiles for VoiceAttack): veterans-gaming.com/avcs

      1 Reply Last reply Reply Quote 1
      • SemlerPDXS
        SemlerPDX @SPoehlmann
        last edited by

        @SPoehlmann said in Virtual crew chief:

        @Aragorn Don’t get too psyched… Those “humans” are basically static. There are some animated ones on the carrier (with Supercarrier add-on), but that is limited though improving slowly.

        I’ve played Falcon and BMS (and all the other incarnations) since Falcon 3.0 and still love it for dynamic campaign and the sense of being in an actual on-going war. But DCS is not all eye-candy. Especially these days, with thoughtful campaign creators it can be VERY immersive. These platforms do different things and compliment each other. I know, that’s heresy but send the inquisition… 😉

        “Apples are better than oranges”

        “What do you mean? Oranges are far better. There is literally zero orange juice in apples. How can you say they are better?!”

        “I like both…”

        …

        “GET HIM!!”
        "GET HIM!!

        🤡

        AVCS4 Voice Control Radio Menus for Falcon BMS (and other profiles for VoiceAttack): veterans-gaming.com/avcs

        AragornA 1 Reply Last reply Reply Quote 1
        • AragornA
          Aragorn @SemlerPDX
          last edited by

          I like turtles.

          1 Reply Last reply Reply Quote 3
          • R
            Ricky
            last edited by Ricky

            I’ve been playing around with getting VoiceAttack to read BMS’s shared memory, so that we can have our crew chief respond to actual events, instead of relying on timing and delays. Here’s the steps I’ve taken for a proof of concept:

            1. Recompile F4SharedMem.dll from Lightning’s tools (https://github.com/lightningviper/lightningstools/) for 64-bit instead of 32-bit, because recent versions of VoiceAttack have become 64-bit applications.

            2. Place the new dll in VoiceAttack’s folder under Shared/Assemblies. Another location is fine too, but then you have to specify the whole path when we reference the dll from VoiceAttack.

            3. Copy the sound files 10SpeedBreaksOpen.mp3 and 11SpeedBreaksClosed.mp3 from the original Virtual Crew Chief profile to VoiceAttack’s Sound folder.

            4. Create a new command. Use “speed brakes clear” as the voice command. Create the following sequence:

            73ecb448-4f1d-4437-a1a8-2ad44d60c850-image.png

            These steps set a variable SpeedBrakesOpen to False at the start. A loop is then started, checking the status of the speed brakes until they open. The loop is then ended and the sound of the crew chief saying the brakes are open is played. This process is then repeated, but waiting for the brakes to close and playing the corresponding sound.

            The inline C# function is what allows us to use F4SharedMem to get current values from the sim:

            using System;
            using System.Collections.Generic;
            using System.ComponentModel;
            using System.Data;
            using System.Drawing;
            using System.Linq;
            using System.Text;
            using System.Threading.Tasks;
            using System.Windows.Forms;
            using F4SharedMem;
            
            public class VAInline
            {
            	private Reader sharedMemReader = new Reader();
            	private FlightData currentFlightData;
            		
            	public void main()
            	{
            		currentFlightData = sharedMemReader.GetCurrentData();
            		float speedBrake = currentFlightData.speedBrake;
            		VA.SetBoolean("speedBrakesOpen", Convert.ToBoolean(speedBrake));
            	}
            }
            

            To make this work, the F4SharedMem.dll must be added to the Referenced Assemblies at the top:

            d81269e0-6a88-4591-aa24-d5b68ada813d-image.png

            And done!

            I think this principle should work for any data that’s available in the shared memory. Instead of booleans, the loops could also check for when a value passes a certain level, such as for the nozzle position.

            To improve usability, I guess the loops need a way to cancel the command and stuff like that, but I just wanted to test the idea out first.

            What do you all think? Shall I try building this for all the checks and commands? Or should anything be improved in the method first?

            TomcattwoT 1 Reply Last reply Reply Quote 7
            • TomcattwoT
              Tomcattwo @Ricky
              last edited by Tomcattwo

              @Ricky said in Virtual crew chief:

              To improve usability, I guess the loops need a way to cancel the command and stuff like that, but I just wanted to test the idea out first.

              What do you all think? Shall I try building this for all the checks and commands? Or should anything be improved in the method first?

              @Ricky , this is freakin’ brilliant! Yes, you will need a way to ensure that program does not get stuck in an endless loop. Hell yes please try to build this for all checks and commands as feasible. I can’t speak to any recommended improvements, but please let me know if there is anything I can help to do to further this effort.

              Copy the sound files 10SpeedBreaksOpen.mp3 and 11SpeedBreaksClosed.mp3 from the original Virtual Crew Chief profile to VoiceAttack’s Sound folder.

              Create a new command. Use “speed brakes clear” as the voice command. Create the following sequence:

              I don’t understand why these two steps are needed.
              VCC already has a folder in the VA\Sounds folder - can that just be referenced in the code?
              Within the VCC VA.profile, seems that the call to your new C# sequence can just be embedded in the current command rather than having to create a new voice command.

              Feel free to PM me to discuss as you desire.
              Regards,
              Tomcattwo
              (VoiceClone)

              Tomcattwo
              (VoiceClone)

              R 1 Reply Last reply Reply Quote 1
              • R
                Ricky @Tomcattwo
                last edited by

                @Tomcattwo said in Virtual crew chief:

                I don’t understand why these two steps are needed.
                VCC already has a folder in the VA\Sounds folder - can that just be referenced in the code?
                Within the VCC VA.profile, seems that the call to your new C# sequence can just be embedded in the current command rather than having to create a new voice command.

                Because I wanted this demo to work independently of the original VCC profile. But you’re right, maybe the best way forward would be to integrate my checks into the existing VCC profile.

                Thanks for the compliment! Give me a few days and I’ll try to get the rest working too.

                TomcattwoT 1 Reply Last reply Reply Quote 1
                • TomcattwoT
                  Tomcattwo @Ricky
                  last edited by

                  @Ricky ,
                  Rgr. If there’s anything I can do to help, just let me know.
                  R/,
                  TC2

                  Tomcattwo
                  (VoiceClone)

                  1 Reply Last reply Reply Quote 0
                  • R
                    Ricky
                    last edited by

                    Quick update for tonight. I’ve made a lot of progress. Most commands now work with feedback from the sim.

                    Even better news: I’ve been in touch with Bogey Dope. He graciously gave me permission to modify and republish his profile for use with BMS. What a great guy! In fact, we’re now talking about hopefully adding some new recordings to the profile to respond to bad situations, like a hot start. I’ll keep you all posted!

                    XenoX 1 Reply Last reply Reply Quote 17
                    • TomcattwoT
                      Tomcattwo @Ricky
                      last edited by

                      Re: Virtual crew chief
                      BogeyDope has released Version 9 of VCC. It’s available for download here

                      This version:

                      1. adds responses if the F-16 pilot is a Female Officer (e.g., “Yes ma’am” instead of “Yes sir” etc.)
                      2. Provides Voice Attack profiles (.vap) for Female Pilots
                      3. Adds a check of the air refueling door to all profiles (last step, after brake checks).

                      I modified my own profile to add the AAR door checks.
                      Regards,
                      Tomcattwo
                      (VoiceClone)

                      Tomcattwo
                      (VoiceClone)

                      1 Reply Last reply Reply Quote 5
                      • XenoX
                        Xeno @Ricky
                        last edited by

                        @Ricky

                        Could it be a first step to get it incorporated into BMS itself? 😉

                        =========================

                        Poland: First to fight!

                        Windows are for cars and buildings not computers

                        System:

                        –-----------

                        Self-build:

                        CPU: Ryzen 3 3100; M/B: MSI B450-A PRO MAX; RAM 16 GB DDR4 3733MHz CL 17 Patriot Viper; GPU: Saphire RX480 8GB NITRO+ OC; P/S SuperFlower LEADEX III 750W; Hotas: Saitek X45; OS: Fedora 33/Wine 6.0/MESA/DXVK

                        1415:2000 PS3 Eye + freetrack hat clip on headphones.

                        R 1 Reply Last reply Reply Quote 2
                        • R
                          Ricky
                          last edited by Ricky

                          An early version of the new profile just went to @Tomcattwo, who offered to help out with testing. If nothing super weird comes up, the first release will be very soon.

                          SemlerPDXS 1 Reply Last reply Reply Quote 4
                          • R
                            Ricky @Xeno
                            last edited by

                            @Xeno That would be awesome, but I’m not sure I could help with that. Although if the devs would be interested, I would definitely be willing to discuss it. I would really love to try working on all the voices in the game, but I have no idea if my skills are enough to work on the current code.

                            1 Reply Last reply Reply Quote 0
                            • SemlerPDXS
                              SemlerPDX @Ricky
                              last edited by

                              @Ricky Very cool of you to make this a public offering!! Regarding my note above about adding a check for AVCS4 BMS profile PTT mode, this will appropriately be ignored for users who do not have or use my AVCS profiles, and so is a smart thing to add to your commands which should respect that mode for AVCS users. I have similar checks for things of other authors myself, JanJan’s awesome plugin for VoiceAttack has its own radio commands, and so my profile checks for and nullifies one of his variables so that all of his other commands work yet the radio commands do not such that my own will take priority and function instead. Accounting for the various use case scenarios of end users can be the difference between a good program/system and a great one.

                              Best wishes and good luck with everything - happy to help if you have technical questions about VoiceAttack, etc. 🍻

                              AVCS4 Voice Control Radio Menus for Falcon BMS (and other profiles for VoiceAttack): veterans-gaming.com/avcs

                              R 1 Reply Last reply Reply Quote 3
                              • R
                                Ricky @SemlerPDX
                                last edited by

                                @SemlerPDX Thanks for the help! @Tomcattwo and I are looking into simply using VoiceAttack itself to include the VCC profile into yours. If we run into any trouble there, I’ll be sure to ask you for advice.

                                Another update: @Tomcattwo has just sent me his (awesome!) feedback. Really polishing some details here. Once we’ve combined all our work, every single check will respond to the sim.

                                1 Reply Last reply Reply Quote 3
                                • First post
                                  Last post

                                69

                                Online

                                10.0k

                                Users

                                21.7k

                                Topics

                                357.2k

                                Posts
                                Benchmark Sims - All rights reserved ©