Announcement

Collapse
No announcement yet.

Voice Recogntion and Commo Rose interaction in BF2

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Voice Recogntion and Commo Rose interaction in BF2

    Hi Guys,

    I'm new here and had something I wanted to share. A thread started on TotalBF2 about Voice Recogntion using a freeware application called "Shoot 1.6.4", it allows you to issue a command that initiates a series of keypresses. This was fine for calling up the Map, changing zoom levels, swapping weapons etc but interacting with the Commo Rose was troublesome, I had initially setup an AutoHotkey script that was a success 9 times out of 10 but it was unreliable. As luck would have it another TotalBF2 member "DosX' published a post where you can edit the 'Controls.con' file to access the Commo Rose using the Numpad. Seeing as it just made alteranative Commo Rose access as a series of keypresses now all commands were easily accessible. I can't post the link to the thread yet being a new member but here follow the steps (also I couldn't post links to the software etc yet but trustworthy Google should provide all)....

    Shoot Installation

    1. Download Shoot 1.6.4 (a quick search on google).
    2. The download has provided you with a zip file 'shoot-1.6.4.zip'. Extract this to the folder of your choice, in this case create a folder C:\Shoot\ and extract the zip file here. As per the download page and Shoot's forums note that at this time it will only work with Microsoft .NET Framework 1.1
    3. Download Speech SDK 5.1 (a quick search on google). The full file is 68MB
    4. Extract ‘SpeechSDK51.exe’ to a temporary folder and run the ‘setup.exe’ accepting all the default options.

    Shoot Initial Configuration

    1. Download my Shoot XML profile (located on TotalBF2 forums "BF2 & VoiceBuddy3.0" post #25) . Extract the contents of this zip file to the correct folders. ‘Battlefield 2 Shoot.XML’ is to be placed in C:\Shoot\Profiles and the two accompanying .wav files are to be placed in C:\Shoot\sounds.
    2. Run C:\Shoot\Shoot.exe. Load the profiles by going 'File \ Open' and load ‘Battlefield 2 Shoot.XML’. NB: A profile MUST be loaded in order to configure the Microphone. Also, by default my profile has Shoot voice recognition toggled off, you MUST activate it or you will encounter a "The Microphone Wizard has failed to initialize" error. Toggle on voice recognition by pressing the ‘T’ key. Check that you can access the ‘Speech \ Audio \ Microphone’ menu. From here you will have to say some phrases to configure your microphone volume levels.
    3. Next step is to commence Training. ‘Ctrl+T’ will start this or it can be accessed via ‘Speech \ Recognizer \ Training’ menu. Follow the on screen instructions to commence voice training.

    Configuring Commo Rose Interaction
    Shoot can only perform keyboard presses. Interacting with the Commo Rose normally requires both keyboard and mouse movement/click. A workaround for this is to assign the keyboards Numpad the ability to interact with the Commo Rose.

    Follow these instructions:
    Locate Controls.con file in:

    \My Documents\Battlefield 2\Profiles\0001 *Note: it might be 002 or something based on which player profile you are editing.

    Find this line in Controls.con file:

    ControlMap.create defaultGameControlMap

    Add these lines to that section:

    ControlMap.addKeysToAxisMapping c_GIMouseLookX IDFKeyboard IDKey_Numpad6 IDKey_Numpad4 1
    ControlMap.addKeysToAxisMapping c_GIMouseLookY IDFKeyboard IDKey_Numpad2 IDKey_Numpad8 1
    ControlMap.addKeyToTriggerMapping c_GIOk IDFKeyboard IDKey_Numpad5 0 1

    Make sure this line is somewhere in there as well, it probably is already there:

    ControlMap.addKeyToTriggerMapping c_GIAltOk IDFKeyboard IDKey_Numpad0 0 1

    After those are in your Controls.con you can now move around the command rose using the NUMPAD 2/8 (down/up) and NUMPAD 4/6 (left/right). NUMPAD 5 selects whatever is highlighted. NUMPAD 0 gives you the SPOTTED selection menu.

    After you edit try them out. Hit Q to bring up commo rose then use your NUMPAD keys to move around.

    Now that we can access the Commo Rose via the Numpad it allows Shoot to initiate the series of key presses needed issue Commo Rose orders.

  • #2
    Re: Voice Recogntion and Commo Rose interaction in BF2

    Welcome Lanserschrek to Tactical Gamer. Good to have you on board. Great post. I am sure people will find it interesting. If you have not done so please read our rules and SOP's. The links are in my sig.


    18th SF Operational Detachment Delta

    Comment


    • #3
      Re: Voice Recogntion and Commo Rose interaction in BF2

      Very interesting indeed. Ill have to check its possibilities and practical applications out when i get in from work.... I like the idea of editing the con to overlap the keys for VOIP and this program. Saying "medic" to your squad and it initiating the "i need a medic here" commo rose command might be pretty neat. Thanks.



      Comment


      • #4
        Re: Voice Recogntion and Commo Rose interaction in BF2

        +rep, ill also check it out later

        Comment


        • #5
          Re: Voice Recogntion and Commo Rose interaction in BF2

          Thanks for the welcome guys, glad to be onboard. I've often referenced the forums over the last while and felt this project was worth sharing. Hope you like it if you get to try it out.

          Comment


          • #6
            Re: Voice Recogntion and Commo Rose interaction in BF2

            Welcome to TG Lanserschrek. Thanks for sharing this (+rep)

            I used shoot for OFP and and had mixed feelings. It wasnt very consistent. But I dont remember doing a training and probably it is because of that. I may give this a shot.

            Comment


            • #7
              Re: Voice Recogntion and Commo Rose interaction in BF2

              Originally posted by Lanserschrek
              Thanks for the welcome guys, glad to be onboard. I've often referenced the forums over the last while and felt this project was worth sharing. Hope you like it if you get to try it out.
              Welcome to TG.

              P.S: That stats signature wont go well here :p

              Comment


              • #8
                Re: Voice Recogntion and Commo Rose interaction in BF2

                Originally posted by XS-StrikeEagle
                Welcome to TG.

                P.S: That stats signature wont go well here :p
                Suggestions welcome

                Comment


                • #9
                  Re: Voice Recogntion and Commo Rose interaction in BF2

                  Thanks for the tip Lanserschrek. I used to use Shoot, but found the program was sometimes non-responsive.

                  I now use Voice Activated Command - VAC ($10 for lifetime licence). I have found this gem of a program to be 100% reliable. The author is constantly upgrading/refining too. He listens to user feedback, and will incorporate any good suggestions at the next upgrade.

                  No messing about with XML documents either, really easy to put your voice commands in to the VAC builder, test, then save.

                  Fully functioning trial for 30 days at : http://www.dwvac.com

                  Program review : http://www.airwarfare.com/AWX/featur...vac_review.htm

                  Comment


                  • #10
                    Re: Voice Recogntion and Commo Rose interaction in BF2

                    Originally posted by XS-StrikeEagle
                    Welcome to TG.

                    P.S: That stats signature wont go well here :p
                    We're inclusive here. Lots of people spend time on ranked server as well as TG. We aren't going to hurt anyone for liking stats. ;)
                    Peace through fear... since 1947!

                    Comment


                    • #11
                      Re: Voice Recogntion and Commo Rose interaction in BF2

                      Originally posted by Sssnake_Eyes
                      Thanks for the tip Lanserschrek. I used to use Shoot, but found the program was sometimes non-responsive.

                      I now use Voice Activated Command - VAC ($10 for lifetime licence). I have found this gem of a program to be 100% reliable. The author is constantly upgrading/refining too. He listens to user feedback, and will incorporate any good suggestions at the next upgrade.

                      No messing about with XML documents either, really easy to put your voice commands in to the VAC builder, test, then save.

                      Many thanks for that Voice software recommendation. I'll defintely try it out. I'm also going to try out another bit of freeware software called VoiceFlux I heard mentioned.

                      I'm glad the keybinds are working for you. Out of curiosity, what are the toggle features like with VAC?. Can you have say one button for Toggle On/Off, another to press and hold to activate?. Also can each command after it's issued auto-toggle itself off?. I guess I'll get to answer these questions myself but just curious.

                      PS I want to give you guys some positve rep in return but I'm not seeing the option. What am I missing?

                      Comment


                      • #12
                        Re: Voice Recogntion and Commo Rose interaction in BF2

                        Originally posted by Lanserschrek
                        PS I want to give you guys some positve rep in return but I'm not seeing the option. What am I missing?
                        The rep system has been deactivated as of 10:00AM this morning...

                        http://www.tacticalgamer.com/general...on-system.html

                        Comment


                        • #13
                          Re: Voice Recogntion and Commo Rose interaction in BF2

                          Originally posted by Lanserschrek
                          Many thanks for that Voice software recommendation. I'll defintely try it out. I'm also going to try out another bit of freeware software called VoiceFlux I heard mentioned.

                          I'm glad the keybinds are working for you. Out of curiosity, what are the toggle features like with VAC?. Can you have say one button for Toggle On/Off, another to press and hold to activate?. Also can each command after it's issued auto-toggle itself off?. I guess I'll get to answer these questions myself but just curious.

                          PS I want to give you guys some positve rep in return but I'm not seeing the option. What am I missing?
                          Toggle system is a doddle (once you understand how VAC processess the commands) - but thats could be said of any other program to be honest.

                          I was a big shoot fan and supported the author via paypal. However, I came across VAC, and have never looked back.

                          Comment


                          • #14
                            Re: Voice Recogntion and Commo Rose interaction in BF2

                            Originally posted by Sssnake_Eyes
                            Toggle system is a doddle (once you understand how VAC processess the commands) - but thats could be said of any other program to be honest.

                            I was a big shoot fan and supported the author via paypal. However, I came across VAC, and have never looked back.
                            Hi Sssnake_Eyes,

                            I started trying out Voice Activated Command. I was able to edit my existing XML file and convert it to the VAC format so all the basic commands were straightforward, it handled things like Tab, Enter differently but I figured that out and I like using the VAC Builder, it's very functional.

                            Next I began work on the Commo Rose stuff, it seems to be working but seems a bit more sluggish than Shoot at it. If you've successfully experimented with this bit could you give me a few examples of the XML code in the VAC config file for the Commo Rose commands like 'Thanks', 'Sorry' and 'Go, Go, Go" just so i can see the timings used.

                            Many thanks.

                            Comment


                            • #15
                              Re: Voice Recogntion and Commo Rose interaction in BF2

                              Good morning Lanser. I apologise for not answering sooner, I did not revisit this thread after my last post.

                              Here is my XML Commo Rose Section. I hope it is of some use to you. All the best:

                              </command>
                              <command name="Spotted" phrase="Spotted" successphrase="" sndok="">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Thank You" phrase="Thank You" successphrase="" sndok="">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Medic" phrase="Request Medic">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Backup" phrase="Request Backup">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Sorry" phrase="Sorry" successphrase="" sndok="">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Ammo" phrase="Request Ammo">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Pickup" phrase="Request Pickup">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Get In" phrase="Get In" successphrase="" sndok="">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Follow Me" phrase="Follow Me">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Go" phrase="Go" successphrase="" sndok="">
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="q" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Attack" phrase="Attack">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Defend" phrase="Defend" successphrase="" sndok="">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Move here" phrase="Move here" successphrase="" sndok="">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Supplies" phrase="Request Supplies">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Repairs" phrase="Request Repairs" successphrase="" sndok="">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request UAV" phrase="Request UAV">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 4" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Orders" phrase="Request Orders" successphrase="" sndok="">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Destroy Here" phrase="Destroy Here">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 2" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>
                              <command name="Request Artillery" phrase="Request Artillery" successphrase="" sndok="">
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200" toggle="-1"/>
                              <key extended="NumPad 6" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 8" pause="100" repeat="1" duration="200"/>
                              <key extended="NumPad 5" pause="100" repeat="1" duration="200"/>
                              <key value="t" extended="NONE" pause="100" repeat="1" duration="200"/>
                              </command>

                              Hope it helps? Only sort of problem I had was with "Thanks" - I use "Thank You" instead (Thanks kept coming up as TANKS)!

                              Comment

                              Connect

                              Collapse

                              TeamSpeak 3 Server

                              Collapse

                              Advertisement

                              Collapse

                              Twitter Feed

                              Collapse

                              Working...
                              X