Vocal commands with "Shoot" [speech recognition]

Users who are viewing this thread

I searched the forum and I believe there is no mention of voice/speech recognition here, and actually I felt that it's one of those very few things M&B lacks.
But it's not all lost, we can use Shoot application (http://clans.gameclubcentral.com/shoot/downloads.php) - free for non-commercial use - to translate voice commands into keystrokes. It's easy enough to command an army in M&B on the battlefield, so why would we need voice commands? Because actually, it's pretty neat to say "Cavalry, crush them!" and see how your soldiers react :]
Required software is linked on the Shoot download site. It's pretty easy to make a new profile or edit existing - cause it is just a xml file :wink: Here's my Mount & Blade profile I use at the moment, if anybody wants to contribute and add some more aliases/commands - please do so and post it here for us all. :]

<?xml version="1.0" encoding="iso-8859-1" ?>

<shoot-config>
<command-list>
<!-- ++++++++++++++++++++++++++++++++
    +    BATTLE MAP COMMANDS      +
    ++++++++++++++++++++++++++++++++
-->

<command name="Show map" phrase="show map">
<key type="Backspace" />
</command>
<command name="Close map" phrase="close map">
<key type="Backspace" />
</command>

<!-- ******** HEAR ME! ******** -->
<command name="Everyone, hear me!" phrase="everyone hear me">
<key type="1" />
</command>
<command name="My army, hear me!" phrase="my army hear me">
<key type="1" />
</command>
<command name="My soldiers, hear me!" phrase="my soldiers hear me">
<key type="1" />
</command>

<command name="Infrantry, hear me!" phrase="infrantry hear me">
<key type="2" />
</command>
<command name="Footmen, hear me!" phrase="footmen hear me">
<key type="2" />
</command>

<command name="Archers, hear me!" phrase="archers hear me">
<key type="3" />
</command>
<command name="Bowmen, hear me!" phrase="bowmen hear me">
<key type="3" />
</command>

<command name="Cavalry, hear me!" phrase="cavalry hear me">
<key type="4" />
</command>
<command name="Horsemen, hear me!" phrase="horsemen hear me">
<key type="4" />
</command>

<command name="Others, hear me!" phrase="others hear me">
<key type="5" />
</command>
<command name="Infrantry and archers, hear me!" phrase="infrantry and archers hear me">
<key type="5" />
</command>
<command name="Footmen and bowmen, hear me!" phrase="footmen and bowmen hear me">
<key type="5" />
</command>



<!-- ******** shorter hear me ******** -->
<command name="Everyone!" phrase="everyone">
<key type="1" />
</command>
<command name="My army!" phrase="my army">
<key type="1" />
</command>
<command name="My soldiers!" phrase="my soldiers">
<key type="1" />
</command>

<command name="Infrantry!" phrase="infrantry">
<key type="2" />
</command>
<command name="Footmen!" phrase="footmen">
<key type="2" />
</command>

<command name="Archers!" phrase="archers">
<key type="3" />
</command>
<command name="Bowmen!" phrase="bowmen">
<key type="3" />
</command>

<command name="Cavalry!" phrase="cavalry">
<key type="4" />
</command>
<command name="Horsemen!" phrase="horsemen">
<key type="4" />
</command>

<command name="Others!" phrase="others">
<key type="5" />
</command>
<command name="Infrantry and archers!" phrase="infrantry and archers">
<key type="5" />
</command>
<command name="Footmen and bowmen!" phrase="footmen and bowmen">
<key type="5" />
</command>



<!-- F1 -->
<command name="Hold your ground!" phrase="hold your ground">
<key type="F1" />
</command>
<command name="Stand your ground!" phrase="stand your ground">
<key type="F1" />
</command>
<command name="Hold your position!" phrase="hold your position">
<key type="F1" />
</command>
<command name="Hold this position!" phrase="hold this position">
<key type="F1" />
</command>
<command name="Set up defence here!" phrase="set up defence here">
<key type="F1" />
</command>

<!-- F2 -->
<command name="Follow me!" phrase="follow me">
<key type="F2" />
</command>
<command name="Stay with me!" phrase="stay with me">
<key type="F2" />
</command>
<command name="Behind me!" phrase="behind me">
<key type="F2" />
</command>
<command name="Stay close!" phrase="stay close">
<key type="F2" />
</command>

<!-- F3 -->
<command name="Attack!" phrase="attack">
<key type="F3" />
</command>
<command name="Charge!" phrase="charge">
<key type="F3" />
</command>
<command name="Crush them!" phrase="crush them">
<key type="F3" />
</command>
<command name="Hit them hard!" phrase="hit them hard">
<key type="F3" />
</command>
<command name="Take no prisoners!" phrase="take no prisoners">
<key type="F3" />
</command>
<command name="Kill them all!" phrase="kill them all">
<key type="F3" />
</command>
<command name="Take their lifes!" phrase="take their lifes">
<key type="F3" />
</command>
<command name="Trust and go forward!" phrase="trust and go forward">
<key type="F3" />
</command>
<command name="Tear them into peaces!" phrase="tear them into peaces">
<key type="F3" />
</command>
<command name="Let them taste our steel!" phrase="let them taste our steel">
<key type="F3" />
</command>

<!-- F4 -->
<command name="Dismount horses!" phrase="dismount horses">
<key type="F4" />
</command>
<command name="Mount horses!" phrase="mount horses">
<key type="F4" />
</command>
<command name="On your horses!" phrase="on your horses">
<key type="F4" />
</command>
<command name="Off your horses!" phrase="off your horses">
<key type="F4" />
</command>

<!-- F5-->
<command name="Hold your fire!" phrase="hold your fire">
<key type="F5" />
</command>
<command name="Fire at will!" phrase="fire at will">
<key type="F5" />
</command>

<!-- F6 -->
<command name="Advance!" phrase="advance">
<key type="F6" />
</command>
<command name="Advance ten paces!" phrase="advance ten paces">
<key type="F6" />
</command>

<!-- F7 -->
<command name="Fall back!" phrase="fall back">
<key type="F7" />
</command>
<command name="Fall back ten paces!" phrase="fall back ten paces">
<key type="F7" />
</command>

<!-- F8 -->
<command name="Stand closer!" phrase="stand closer">
<key type="F8" />
</command>

<!-- F9 -->
<command name="Spread out!" phrase="spread out">
<key type="F9" />
</command>
<command name="Spread the hell out!" phrase="spread the hell out">
<key type="F9" />
<key type="F9" />
<key type="F9" />
</command>

<!-- F11 -->
<command name="Use blunt weapons!" phrase="use blunt weapons">
<key type="F11" />
</command>
<command name="Use all weapons!" phrase="use all weapons">
<key type="F11" />
</command>



<!-- other orders -->

<command name="By God, sound the retreat!" phrase="by god sound the retreat">
<key type="Tab" />
</command>

<command name="Battle positions!" phrase="battle positions">
<key type="1" />
<key type="F1" />
<key type="2" />
<key type="F6" />
<key type="F6" />
<key type="F6" />
<key type="3" />
<key type="F6" />
<key type="F6" />
<key type="4" />
<key type="F9" />
<key type="F9" />
<key type="F9" />
<key type="1" />
</command>


<command name="Make battle formation!" phrase="make battle formation">
<key type="J" />
</command>
<command name="Form ranks around me!" phrase="form ranks around me">
<key type="J" />
</command>

<command name="Cancel battle formation!" phrase="cancel battle formation">
<key type="U" />
</command>

</command-list>

<!-- configure your  push-to-talk  key here: -->
<push-to-talk initial-state="off">
<hold on-press="enable">
<key type="LeftControl"/>
</hold>
</push-to-talk>

<sounds>
<sound type="recognized" source="recognized.wav" volume="100" pan="0"/>
</sounds>
</shoot-config>

Ofcourse it isn't perfect, since there are some orders that are toggled - like "Dismount/Mount horses" - you can say "On your horses" for the first time and your horsemen will dismount, and then say "Off your horses" and they will mount their horses. Just because both commands will issue F4 keystroke :wink: But even with that kind of things I still think it adds a tremendous dose of immersion into the battle. How do you think?

[It's not actually a mod, but I think it's a good place for this topic, since  it is a nice and new feature that adds another layer of immersion into the game.]
Moderators: if you see any better fitting place for this topic, feel free to take it there :smile:

Oh, the usage:
Run Shoot and open the profile [File->Open...] - then run M&B (or the other way around if you like, which could work better if you have any problems with audio drivers).
My profile is configured to be push-to-talk, so Shoot will only "listen" for the commands when I press and hold my LeftControl key. You can change this behaviour (or the key needed to press) in the file.

edit:
Okay, I just thought not everybody knows what does it mean "it's just an xml file" - it means the profile is just a plain text file with .xml extension. It looks a bit like html file, nothing scary at all. You can open it with any text editor out there.
To create a new profile just copy the spoiler text and save it into whatever_the_name.xml (preferably to the Shoots "profiles" directory) and that's it, now you can open the file through the File->Open menu in the application. :smile:

edit:
What to do to make it work?
1. Download Shoot: (direct url: http://clans.gameclubcentral.com/shoot/download.php?file=shoot-1.6.4.zip)
1a. If you don't have it yet - download SAPI 5.1 (211 kb - direct url: http://download.microsoft.com/download/speechSDK/SDK/5.1/WXP/EN-US/SpeechSDK51.exe)
1b. again, if you don't have it yet - download .NET 1.1 (http://www.microsoft.com/downloads/details.aspx?FamilyID=262d25e3-f589-4842-8157-034d1e7cf3a3&DisplayLang=en), and it should work. You may or may not need .NET 2.0 (http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=en). You probably have .NET Framework installed by now (cause some games force you to install it :wink: ) It should also appear as an optional update in Windows Update. If you have strange errors when opening .xml files - you probably need to get .NET 1.1
If you still have problems - you may want to try this: http://www.gameclubcentral.com/index.php?name=ForumsPro&file=viewtopic&t=3945. Note that I didn't need that, but Cleidophoros did, so it may help.
1c. Install DirectX 8.1 or newer - you are bound to have that installed if you play M&B :wink:

2. Copy the profile from the spoiler up up there in the first post and save it as mnb_profile.xml - preferably in the "~/Shoot/profiles" directory.
3. Run the application, choose File->Open and choose your new mnb_profile.xml - if everything is okay - you will see names of the commands in the application window.
4. Run Mount & Blade, play as usual with any module or mod of your liking, Shoot is a standalone application, it does not modify any M&B files in any way.
5. Provoke a battle. During a battle press and hold Left Controll button and say some command, you should see a reaction as if you did it via keyboard.
Feel free to be more immersed. :wink:
 
Thank you MrRoy. I sure enjoy that as I am playing, but it's also important to have some decent microphone/headset and train the sapi profile (control panel->Speech->Train profile) so it would have better "hit and miss" ratio.
I also see a potential to a bit tactics in this - lets say you add a command: "Prepare a defence position" - it would send: "Everybody, Hold your ground", "Archers, Advance, Advance", "Infrantry, Advance", "Cavalry, Fall back" - resulting in having a cavalry at the back, 20 paces in front of them there would be a line of infrantry and 10 paces further - archers. You let your archers shoot until you see that the enemy is up close, then you say: "First line, get to cover" or some other "defence phaze two" thingie - triggering "Infrantry, Advance", "Archers, Fall back" - then wait untill the enemy gets to fight the footmen - and order your cavalry to attack.
Sure, you can do all of this now - or with the basic vocal orders with Shoot - but I'm just saying, you can try to immerse even more with those "prepared actions" :smile:

@Wu-long: Can you give any examples of mods featuring speech recognition? I would gladly take a look at them :]
 
azrael_valedhel said:
Thank you MrRoy. I sure enjoy that as I am playing, but it's also important to have some decent microphone/headset and train the sapi profile (control panel->Speech->Train profile) so it would have better "hit and miss" ratio.
I also see a potential to a bit tactics in this - lets say you add a command: "Prepare a defence position" - it would send: "Everybody, Hold your ground", "Archers, Advance, Advance", "Infrantry, Advance", "Cavalry, Fall back" - resulting in having a cavalry at the back, 20 paces in front of them there would be a line of infrantry and 10 paces further - archers. You let your archers shoot until you see that the enemy is up close, then you say: "First line, get to cover" or some other "defence phaze two" thingie - triggering "Infrantry, Advance", "Archers, Fall back" - then wait untill the enemy gets to fight the footmen - and order your cavalry to attack.
Sure, you can do all of this now - or with the basic vocal orders with Shoot - but I'm just saying, you can try to immerse even more with those "prepared actions" :smile:

@Wu-long: Can you give any examples of mods featuring speech recognition? I would gladly take a look at them :]

You mind making a tutorial on how to use this? Can we change the voice btw?

I cant find the mod but here is the its possible link
http://forums.taleworlds.com/index.php/topic,58796.0.html
 
@Wu-long:
I think you misunderstood the whole concept. Quoting from the linked topic:
voice orders = if you press a button (for example 3 (for archers) there is a sound played: "archers ready"
- what this topic is about however - is... YOU SAY "Archers, hear me" and then the keystroke "3" is sent, so the game thinks you pressed "3" on the keyboard.
Shoot uses SAPI - windows speech recognition piece of software to "understand" what you are saying and then send some keystrokes to the game.

What to do to make it work? ---> See the bottom spoiler in the first post.

I will also copy that to the first post.

So you see you can easily create a profile and "voice enable" a game of your liking as long as it's about the keystrokes :wink: Just don't try to do it for Silent Hunter 3 or 4 - there are SH3Speech and SH4Speech mods for this sole purpose that can do much much more than Shoot (for example send clicks - operate with games ui by taking control of the mouse pointer :wink: )

I hope that I have put some light on this now. I also changed the topic name to "Vocal commands..." - so less people would make the mistake of Wu-long.
 
azrael_valedhel said:
Cleidophoros said:
Man, first, playing the goddamn game all the time and now this; my wife is gonna kill me for sure!

Try to keep it quiet at night or you're gonna wake up the kid ;P
There will be no kid if i dont keep it quiet!

Dude, i get this when tryin to open them xml files, any of'em. And microphone wizard aint workin' either; my mic is fine though.

15p60ko.jpg

 
Try to install .NET 1.1 - url on the bottom of the first post, or in the 6th post (1b. :wink: )
It would show that Shoot works with .NET 1.1 - and works with .NET 2.0 IF you also have 1.1
 
No downgrade required. Just install .NET 1.1. A .NET application uses the version of the Framework that it was compiled for. You can have all versions of the Framework installed at once.
 
HardCode said:
No downgrade required. Just install .NET 1.1. A .NET application uses the version of the Framework that it was compiled for. You can have all versions of the Framework installed at once.
Thanks mate.

If you have any .NET version greater than 1.1 you will need this fix it seems.
http://www.gameclubcentral.com/index.php?name=ForumsPro&file=viewtopic&t=3945.

So yeah it does work now.
 
Cleidophoros said:
HardCode said:
No downgrade required. Just install .NET 1.1. A .NET application uses the version of the Framework that it was compiled for. You can have all versions of the Framework installed at once.
Thanks mate.

If you have any .NET version greater than 1.1 you will need this fix it seems.
http://www.gameclubcentral.com/index.php?name=ForumsPro&file=viewtopic&t=3945.

So yeah it does work now.
Actually I think you won't need it, somewhere else they say that the newest release works well with .NET 2.0 (if you have 1.1 too it seems) - and I didn't get to that fix :smile:
 
In desktop all commands work well but when I play MB only show map, everyone and by god sounds the retreat work. I don't know why. Can anyone help me?
 
moody said:
In desktop all commands work well but when I play MB only show map, everyone and by god sounds the retreat work. I don't know why. Can anyone help me?
Do you play with headset or mic + loudspeakers? I play with headset, only when there's little to no background sounds like tv or something, and I have to say that it's easier to get the app understand a command in the app than ingame, but not that much that it would be worth mentioning as a problem. If your game audio somehow interferes with what goes to mic - try lowering game audio volume and get your headset volume up (I did that when playing cod4 with mumble a long time ago, cause my friend heard himself and my game sounds :wink: helped greatly. )
 
Back
Top Bottom