Jump to content

AVCS4 Voice Control Radios for Falcon BMS 1.3.91

   (0 reviews)

1 Screenshot

About This File


Profile for VoiceAttack
by =VG= SemlerPDX

*Please be sure to download the AVCS CORE 0.91b Profile from this download section as well, it is now a requirement for any AVCS4 game profile I release, such as the upcoming Elite Dangerous profile, and more...


These commands use VoiceAttack to translate the in-game on-screen radio menus from AWACS through Tanker into natural and intelligent voice command phrases that will fire keypress macros to help keep hands on the throttle and stick, and maintain immersion.  As an additional option, these commands can be locked behind a push-to-talk mode bound to your UHF/VHF transmit buttons in-game, allowing any other VoiceAttack command unrestricted access if needed, while still restricting these BMS radio command macros.  Finally, this single advanced control profile is extremely easy to edit or integrate into other profiles.

At VETERANS-GAMING, we fly with friends or AI Pilots, or a mix of both on our 24/7 Public Korean Campaign in Falcon BMS. We may go out with an AI wingman only to have a friend take their place mid-flight.  For this reason and others, I created this VoiceAttack profile based around restricting when the computer can execute keypress macros that match voice phrases, having to first check if that pilot was set to a human pilot and therefore disregard commands for that pilot.

Thanks to user requests during the beta, there is now an optional mode to reverse the Human Pilots system, to assume all pilots are humans unless told otherwise, and also a system to choose a different keyboard layout than QWERTY.  I have also added an optional Audio Feedback Mode to play a short radio cue sound when a command is successfully recognized.

Included is a single profile that handles every callsign and radio command variation in Falcon BMS, with instructions on how to add any custom callsigns to the single profile. The focus of this profile is only on the in-game Radio Menus, and creating an immersive interaction layer through VoiceAttack that is easy to manage and update, or integrate into other Voice Control systems for Falcon BMS.  My goal was an intuitive system, so there is no user manual - only a few infographics and quick reference pic of all the radio commands.  I personally keep that final pic on my tablet for reference when flying, to find radio commands I seldom used in the past when they were more difficult to access while busy with HOTAS in the pit.

Say goodbye to the keyboard, and enjoy the immersion! Cheers!


I will be running a Public Beta Test for AVCS CORE (0.91b) and AVCS4 Falcon BMS Radios, and users are encouraged to try out both, or just AVCS CORE and its included Template Profile, if desired.
Please use the voice command "Open Help and Support Menu" to communicate any bug reports.  These help menus can be expanded without new profile versions, so suggestions are welcome.
Thank you for checking out AVCS CORE for VoiceAttack!    -Sem   (Aug2020)

NOTE:  This beta test is for functionality and flow of interactions with my various systems.  It is a working beta for the updates, multiple profiles initialization, and first time user initialization which grabs the latest config files for said profile(s) from this secure website's AVCS pages (simple HTM pages hosting flat text files of the various default settings, TTS phrases, and Voice Command phrases), and places them in the VA Apps Folder under AVCS CORE and the appropriate profile name folder.  This is how my profile can get "live updates", or minor patch fixes, as I have put so much of the operating settings into these config files.  If someone reports an incorrect TTS phrase, I can change it on the website and then "push" the update as a 'Get User Choice' box when you all load AVCS CORE next ("view changelog", "update", "postpone update").

The initialization time is currently rather slow, depending on your CPU!  Clocking 45 seconds to a minute for CORE to load itself and AVCS4 BMS 1.3.91(beta) on my old laptop i5 4690k - slower in less powerful CPU's!  Understand that this will be resolved before the end of the Beta tests, and I expect to get it on par with the old stand-alone AVCS4 BMS initialization time, closer to 20 seconds or less.  If I didn't release it now to test functions and flow of interactions, I'd miss out on valuable feedback or bugs I may have missed while I continue work on optimization and speed of initialization.  Thank you for bearing with these long load times during the beta tests!  Feedback is encouraged, don't hesitate to tell me if something is messed up or just plain stupid.  :hi: -Sem (Aug-26-2020)



Features:  see full details in post ↓


Sample Pics:  https://imgur.com/a/xuclI0a

(download file contents example, version may differ)

What's New in Version 1.3.91   See changelog


v1.3.91b Major Profile Update (beta)

Since the Beta Test for AVCS CORE has progressed, and changed the way it runs, AVCS4 BMS must be updated as well.  This will not be the norm, I don't expect many AVCS CORE updates, it is a fixed set of functions.  You can download and import both the new versions of AVCS CORE and AVCS4 Falcon BMS at the same time - just switch to the AVCS CORE 0.91 profile first to trigger the new version setup.

Regarding the changes to AVCS CORE, and how they effect AVCS4 Falcon BMS:
Due to some initial issues right off the bat, it seems the concept of having some AVCS CORE functions outside the profile itself as part of an App for VoiceAttack would have included a bit more work, but more importantly increased the profile package size from around 1MB to over 25MB, and it's just not worth it.  The idea was specifically for things like my Save File Sort function that orders the lines of the save file into a readable alphanumeric sorting, where AVCS4 module specific entries were properly grouped together (like saved Quick Commands or VAS Passphrases), and any new AVCS4 profile such as Elite Dangerous could introduce new sorting rules by simply including a new version of the AVCS_CORE App for VoiceAttack in it's profile package.  This would have removed the need to update the base AVCS CORE profile that all AVCS4 game profiles rely upon anytime I wanted to modify those game-specific functions.

I've done away with the app completely now, and recreated the simple functions like sort and initialize as inline functions for VoiceAttack.  This requires everyone to download a new version of AVCS CORE and the AVCS4 Falcon BMS Radios (beta) profile if currently used.

Thanks for your patience during the beta test rounds here, the end goal for AVCS CORE is to be a stable un-changing profile that can handle profile management for any new AVCS4 game profile I create in the future without needing updates itself, and I think we're well on our way to that.  Cheers!

Please be sure to download the AVCS CORE v0.91b Profile (required), this updated changed the entire initialization methods in AVCS CORE function commands and AVCS4 BMS, too!


BETA Release AVCS4 BMS v1.3.91 Changelog Aug-22-2020

	-This is a major profile update, users of v1.3.90b must download the new v1.3.91 beta test profile and AVCS CORE v0.91b
		-(AVCS4 BMS profile version 1.3.90b will be retired in 30 days)

 -AVCS_CORE App removed in place of internal systems - was too slow, and had compatibility issues

___ (previous version changelogs) ___




v1.3.90b Full Overhaul & AVCS CORE Integration Update (beta)

I'm very proud to finally offer the next version of AVCS4 BMS because it includes an entire set of profile control and support from my new AVCS CORE Framework Profile for VoiceAttack.  While AVCS4 BMS has not functionally changed much from what users have come to expect, AVCS CORE adds entirely new features that remove any previous need to manually edit any commands in the traditional sense to modify any configuration settings or otherwise.

The only significant new command added directly to AVCS4 BMS is "Edit the Callsigns List" (and phrase variations of it).  This opens a simple Get Choice menu to offer options to add/change/edit/remove any callsigns recognized by the profile.

After that, most everything comes from the required AVCS CORE Profile Framework that will load before AVCS4 BMS, adding commands and features, as well as allowing auto-profile switching by setting AVCS4 BMS as a "Preferred Profile" in the CORE Options Menu (say, "Open Core Options", poke around, have fun!)

Please be sure to download the AVCS CORE 0.90b Profile from this download section as well, it is now a requirement for any AVCS4 game profile I release, such as the upcoming Elite Dangerous profile, and more...

BETA Release v1.3.90 Changelog Aug2020

New Commands:
 -AVCS CORE Commands Included into AVCS4 BMS Profile to lessen profile switching to CORE when it was needed
 -"Create a new Voice Authorization Phrase" and other included commands from Voice Authorization System
 -VAS can allow QCC commands to be locked behind a required authorization phrase as set by users, in up to 10 weighted levels
 -Integerated Bug Reporting and debugging options from AVCS CORE for easy troubleshooting
 -Versioning allows for Mutiple prior versions (reinitialization required) for easy profile version rollback if desired
 -Included UPDATE command to allow users to import previous saved user settings and saved Quick Commands from previous version of profile
 -Full profile control through command, "Open CORE Options Menu"
 -Better user support through command, "Open Help and Support Menu"  (will expand in time)
 -User settings save file control through command, "Open Save File Menu"  (includes save file backup and restore system)
 -...and much more (see posts at avcs homepage)

 -Set First Use to present user with Get Choice box for Default Keyboard Layout (QWERTY/AZERTY/etc..)
 -Setting 'CurrentBackupIndex' and 'SaveFileBackupCount' to 'Not Set' inside F_SFS_LOAD_ALL  (was getting corrupted in save file)
 -Separated 'new_profiles.txt' file from AVCS4 profiles and AVCS CORE profiles to handle two imports before first time run/initialization of either
 -Added Duplicate Profile check from AVCS CORE, informs user of non-functional AVCS profiles (if ending in 'dash number' such as '-1')
 -Edited Preferred Profile command to allow for any user profile to be set to be auto-switched to after AVCS CORE finishes initializing


BETA Release v1.3.80 Changelog Mar2020

New Commands:
 -"Add/Edit Callsigns List" commands to add or remove callsigns recognized
 -"Add a new Voice Command" and others included from Quick Command Creator system
 - QCC can be used to create additional phrasings, just set action to execute another command (by name)
 -"Edit Keypress Timings" to open options menu to set custom timings

 -AVCS CORE Profile and Updates Management integeration (see AVCS CORE changelog)
 -Full Profile Update Control added with user choice, only downloads if allowed by user (only checks 8 bytes of a version number before that)
 -Profile Updates set to allow choice for majority of fixes/changes to occur without new VoiceAttack Profile download/import  *called "LIVE UPDATES"
 -Physical Profile Updates set to allow previous versions to remain installed without conflict, and also import/uninstall previous version files  *called "MAJOR UPDATES"
 -Fixed typo in command "Raygun" -- corrected from "Ragun"  (first fix via new live updates system)
 -Created 'Add New Callsigns' system using Get-Choice boxes
 -Set most profile variables to config files in VA Apps Folder (edit with "Open Advanced Core Options" command)
 -Set most commands to Text Variables, read from config files



User Feedback

Recommended Comments

is seems this version 1.1 is referencing a sound file that is not included in the profile which is causing a long delay and eventual failure in the processing of the command. The highlighted line in the voice attack output window shows the file that is missing.



Share this comment

Link to comment
Share on other sites

@wheelchock2 Try turning it off and back on.  The variable for the audio channel (LEFT/RIGHT/CENTER) is set when you Turn On the Audio Feedback Mode, and then it is saved to the profile.  If this saved variable is lost for whatever reason, such as a VoiceAttack update (not sure if that does it), or the VoiceAttack application crashes before getting closed gracefully, or any other reason, the command would not work due to the loss of that LEFT/RIGHT/CENTER designation.

//TurnOn Audio Feedback Example:
Begin Text Compare : [~avcs_on] Contains '{CMDSEGMENT:0}'
    Begin Boolean Compare : [AVCS_Audio_On] Equals False
        Say, '{TXT:TTS_VAS_AreYouSure}'  (and wait until it completes)
        Wait for spoken response: '{TXT:AVCS_VAS_CONFIRM}'
        Begin Text Compare : [AVCS_VAS_CONFIRMED] Contains [~avcs_temp_response]
            // Open Pop-up Window with Choices
            Say, '{TXT:TTS_BMS_ChooseAudioFeedbackStereoChannel}'
            Get Choice Input [~avcs_temp_choice]
            // Set Choice to saved variable
            Begin Condition : [~avcs_temp_choice] Contains 'LEFT' OR [~avcs_temp_choice] Contains 'CENTER' OR [~avcs_temp_choice] Contains 'RIGHT'
                Set Text [AVCS_Audio_Channel] to [~avcs_temp_choice] (save value to profile)
                // Handle invalid entry / cancel
                Say, '{TXT:TTS_VAS_Cancelled}'
                Jump: Command Exit
            End Condition
            Set Boolean [AVCS_Audio_On] to True (save value to profile)
            Say, '{TXT:TTS_BMS_AudioFeedbackModeON}'  (and wait until it completes)
            Say, '{TXT:TTS_VAS_Cancelled}'
        End Condition
    End Condition - Exit when condition met
    Say, '{TXT:TTS_COMMON_AlreadyOn}'
End Condition - Exit when condition met


Once you turn it back on, you'll be required to set the stereo channel again, and the command will function properly again.  (*if not, delete your profile and re-download it, as I'm certain it works "out of box")

It has a handler for the user NOT inputting a choice LEFT/RIGHT/CENTER, but not a check for if this variable has gone null.  As the situation is so very rare, I felt it wasn't necessary.  Again, just turn it off and back on to reset it.  I'll add a null check on profile load when I upgrade the profile early next year.

I've been learning how to create profile save files rather than saving variables to the VoiceAttack profile, which could be volatile for the reasons above, and this should be a much more secure way of tracking profile saved variables in advanced voice control profiles like this one.  It will be some time, holidays are busy, no time for tinkering now.  When I release my AVCS Elite Dangerous profile, I'll have learned how to apply a save file / config file system, and variables like this won't get lost ever again, so when I have a new system working for my next profile, I'll come back and overhaul this one with the new save system.

Share this comment

Link to comment
Share on other sites

 @=VG= Kavelenko This profile is for VoiceAttack version 1.8.3 - had you actually gotten past that error, my profile also would not let you proceed until you updated your VoiceAttack program.  The word "ancient" was used when I shared your error pic with other VA guys to ask about it... I already assumed it was a version thing, but before you update, click that wrench icon, and note the version number shown in the options window that pops up - I'm curious as to how far back an error like this would occur for my profile.  Then you can click that Check for Updates button and download the latest version.  Don't worry too much about your existing profiles, Gary has always done well with making sure new versions of VA are backwards compatible with older profiles (he still hasn't removed the "Small Integer (Condition)" variable which predates setting Decimals, Booleans, Text and Integer variables, etc.).

I'm sure this will work just fine with latest version, I just downloaded and imported it myself to check that all is well.  Cheers!

Share this comment

Link to comment
Share on other sites

Any users with extremely long time between keypresses or commands may have this problem -- the way international decimal separators are handled is not working as desired, and is causing a 0.05 second pause to be interpreted as a 5 second pause.  I will address this in an upcoming major profile update for this beta, within a week or two, but for anyone who wants to push through, I have a simple hotfix that can *mostly* fix it for the time being, but it is not perfect:

31 minutes ago, =VG= SemlerPDX said:

Okay, this is a big issue... the time between keys should be default 50 milliseconds (0.05) and not 5 seconds.  It is regarding the way my systems are handling international decimal separators, and will be resolved in an upcoming beta version.  For now, as posted in the Discord channel, anyone with this same issue will need to import this custom version of the init_MAIN command into the AVCS4 BMS v1.3.91 beta if they don't want to wait for the next version.

This issue may pop up with other decimals in the profile, but I can't think of any as crucial and game-breaking as having 5 seconds between every key that AVCS4 BMS presses.  Follow instructions carefully to overwrite the default init_MAIN command, and restart VoiceAttack to enact the change.   This is a hotfix and not a fully functional update so should only be used if someone has this same problem of very long time between keypresses by AVCS4 BMS v1.3.91 beta



NOTE - AVCS4 BMS v1.3.91 beta --
If anyone is experiencing extremely long time between keypresses/commands, and your country uses "," for decimals instead of "." as we do in USA, this is a hotfix until I get the next beta test version released:

Step 1:  Open AVCS4 BMS Profile (the edit profile button, where you see all my commands)
Step 2: Press the button on the lower left labeled "IMPORT COMMANDS"
Step 3: Point it to this profile here called "DO NOT IMPORT THIS"
*it's labeled that so as to not be imported as a profile, only import it's command!
Step 4. When AVCS4 BMS Tells you this will overwrite any existing commands labeled in RED, allow it and proceed


Download: DO NOT IMPORT THIS - Follow instructions in Discord-Profile.vap


Share this comment

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now