Friday, October 4, 2013

How GlovePIE Voice Commands in Arma 3 Work

Here's a video explaining how GlovePIE voice commands in Arma 3 work. I hope this helps someone. Pardon me for grammatical and pronunciation errors in the video. English is not my native language.

GlovePIE stands for Glove Programmable Input Emulator. It was originally started as a system for emulating Joystick and Keyboard Input using the Essential Reality P5 Glove but it doesn't have to be used with VR Gloves since now, it supports emulating all kinds of input such as joysticks, gamepads, mouse and keyboards. Not only does GlovePIE emulate keystrokes but it also features speech recognition. Speech recognition feature requires Microsoft SAPI with speech recognition engine.

So in a nutshell, GlovePIE is a program which can emulate keystrokes and do speech recognition. Speech recognition and keyboard emulation are two indispensable features of GlovePIE which we need in Arma 3 game.

In Arma 3 (Singleplayer mode), you can control your player or your squad using key bindings or command menus. Below are the command menus of Arma 3:

Move menu (1)

Target menu (2)

Engage menu (3)

Mount menu (4)

Status menu (5)

Action menu (6)

Combat menu (7)

Formation menu (8)

Team menu (9)

Support menu (0)

For instance, if you are using the default key bindings of the game and want to open the map in game, all you have to do is press the 'M' button of your keyboard. Furthermore, if you are the squad leader and wish to have soldier two to stay in crouched combat mode, then press F2 7 7 (refer to Combat menu).

Now this is where GlovePIE comes in really handy. Instead of pressing M key, you can just say 'open map' or instead of pressing F2 7 7 to have soldier two of your squad to stay crouched, you can just say 'two stay crouched'.

To have an idea how a GlovePIE scipt works, examine the code below:
// When you say 'open map', key M is pressed once 
if said("open map") then
end if

// When you say 'two' or 'soldier two', F2 is pressed once 
if said("two") or said("soldier two") then
end if

// When you say 'stay crouched', 7 is pressed twice. This corresponds to the default crouched combat stance of the game 
if said("stay crouched") then
    wait 100 ms
end if

The code above is an example on how the keyboard emulation feature of GlovePIE works in synergy with the speech recognition feature. The 'open map, soldier two and stay crouched' phrases in the example are considered voice commands, the commands you say in game to activate the key presses. That's the essence of GlovePIE. It recognizes your voice commands then translates them to the keystrokes you programmed it to do.

One might find this approach pointless since you could just hit one button to open the map for example than say two words 'open map'. GlovePIE can do more than those very basic sample task. Its just the tip of the iceberg! Imagine complex commands like requesting for artillery support, ordering your squad members to attach suppressor to their weapon, ordering members of your squad or your entire squad to shoot at a target you specify without going through the game's command menu. That is very much doable in GlovePIE.

Things you can do with this setup can be summarized into two categories:

(1) BASIC commands for player (yourself) or squad (AIs, NPCs)

- Commands like change view, kneel, stand up, go prone, open watch, open map, assign team, mount vehicle, disembark, engage target, open fire, hold fire, watch direction, copy stance, etcetera.

- Of course, those basic commands above can also be programmed in other 3rd-party voice recognition softwares like PiLfluS, Shoot, VAC or Windows Speech Recognition Macros. A walk in the park task.

For a list of Arma 3 key assignments, check out this link:

Here's a video demonstrating squad commands in Arma 3 via GlovePIE:

Reddit discussion:

(2) ADVANCED commands for player (yourself) or squad (AIs, NPCs)

- Adding or removing your own/your squad member's rifle attachments such as optics, flashlight and suppressors, adding or removing clothes/ uniforms, commands for player or squad invincibility, adding (spawning) any weapon, ammo, vehicle, item in ArmA 3 or from ArmA 2 (thru AiA), time and weather manipulation, calling artillery strikes, moving to specific map location, etc.

- Now, this is something unique since there is no in-game menu or dialog interaction involved, no keyboard shortcuts pressed. Just use your voice. To each his own. This setup is not dependent on injectors, cheat menu or hack menu found elsewhere on the internet.


If you need a Glock, then just say "add Glock"
Want a AMV-7 Marshall? Just say "add Marshall"
Need a ARCO optics for your rifle? Just say "add A R C O"
To add 2 hours to current time, just say "add two hours"
To call artillery strike at designated map location, just say "artillery"
To order your squad to fire at specific target, just point and say "target that"

... and so on and so forth.

Very easy to use. I haven't seen a video on YouTube using similar approach. I could be wrong though.

Wish Bohemia Interactive devs integrated some sort of voice recognition feature in Arma 3 for us who love to say what we want in game. Of course, not all commands of the not-so-basic stuff like weapon and vehicle spawning, calling for artillery or nuke strike, weather and time manipulation can be added to the proposed feature but I think adding voice recognition support for basic AI/squad commands is plausible. I believe that it adds realistic immersion to the already awesome game that is Arma 3. One could just say 'Two, gunner get in that chopper' instead of pressing the equivalent key bindings.

Wishful thinking? Who knows, the devs might give it a go. Vote up!

Files featured here are for personal use only. The only things which went public are my videos and not the files used. Video shared on YouTube just so you know something like this exists. Videos or it never happened!

Thanks for dropping by. Voice commands and Arma 3 rocks!


ArmA 3

GlovePIE 0.45 Free

How To Use GlovePIE Voice Commands in Arma 3