Jump to content
Mpstark

Articulate: Squad Voice Command Utility for Arma 3

Recommended Posts

I also have problems with getting a unit/team to move where I want them to. I've tried saying it fast, slow, with pause, without pause, I get it to work maybe 10% of the time.

There shouldn't be a way to move unit's yet because the move unit command relies on the context menu and I have no way of knowing from this outside application what the current selection is. It could be Move, Get In, Target, etc.

The best workaround for this is to select the units that you want to move using voice commands and then use the middle mouse to select move (notice that it doesn't have a keybind!) from the context menu that pops up. Teams will not pop up a context menu, but there is some way, unknown to me to get it back.

Share this post


Link to post
Share on other sites
This will be included in a future version.

The conceptual wall I ran into with this was that an external application has no idea whether you have any units selected or not, and therefore doesn't know when to press the tilde/grave key to select all units prior to issuing the command (e.g., if you had already selected everyone and then said "Regroup", it would press the tilde key, deselecting everyone, and then do a bunch of useless phantom keypresses). There would need to be a direct plugin to the game to be able to have this behaviour work reliably in all cases, unless everyone is comfortable with the "known issue".

If it helps, I was trying to write a GlovePIE script for voice commands (and getting very frustrated by the fact that GlovePIE doesn't process scripts linearly -- and inner "if" blocks are often ignored entirely), and came up with the following aliases that could conceivably be used for most commands. I went ahead and trimmed out the stuff that relied on my never-to-see-the-light-of-day AI commands plugin, so there are a couple mentions of "vanilla" in there. ;-)

ADMINISTRATIVE FUNCTIONS

Reset variables

Microphone check // Ten zero

VANILLA MENU FUNCTIONS

Cancel // Never mind // Disregard

No // More // Next // More options // More actions // Next page

The first one // One // Option one

The second one // Two // Option two

The third one // Three // Option three

The fourth one // Four // Option four

The fifth one // Five // Option five

The sixth one // Six // Option six

The seventh one // Seven // Option seven

The eighth one // Eight // Option eight

The ninth one // Nine // Option nine

VANILLA SELECTION FUNCTIONS

Unit one // One // Alpha

Unit two // Two // Bravo

Unit three // Three // Charlie

Unit four // Four // Delta

Unit five // Five // Echo

Unit six // Six // Foxtrot

Unit seven // Seven // Golf

Unit eight // Eight // Hotel

Unit nine // Nine // India

Unit ten // Ten // Juliet

Unit eleven // Eleven // Kilo

Unit twelve // Twelve // Lima

Team green // Green team

Team yellow // Yellow team

Team red // Red team

Team white // White team

All // Everyone // Team // Squad

Cancel // Never mind // Disregard // Scratch that // Forget it

VANILLA INFANTRY VERBALS

Stay frosty // Watch your sectors // Stay alert // Keep alert // Keep your eyes open // Shoulder weapons // Shoulder your weapons // Weapons shouldered // Guns ready // Guns at the ready

Stealth // Go stealth // Go quiet // Keep quiet // Quiet // Stay quiet // Shoosh // Shush

Return to formation // Fall in // Get back // Get back in formation // Form up // Form on me

Stop // Halt // Hold it // Don't move // Do not move // Stay there // Stay right there

Wait for me // Wait up // Hold up

Fire at will // Weapons free // Weapons hot

Hold fire // Hold your fire // Cease fire // Ceasefire // Wait for my order // Weapons hold // Stop shooting // Don't shoot

Take cover // Duck and cover // Incoming fire // Watch out // Find cover // Get to cover

Danger // Bounding formation // Cover me

Relax // Take five // At ease

Report in // Report // Sitrep // Report status // What's your situation // Give me a sitrep

Formation column // Form column

Formation left // Form left // Left echelon // Echelon left

Formation right // Form right // Right echelon // Echelon right

Formation line // Form line // Make a line

Formation delta // Form delta

Engage // Break and attack

Engage at will // You are free to attack

Disengage // Disengage now // Stay in formation

Fire // Open up // Open fire // Shoot // Take the shot

Do actions // Do something

Gunner get in // You're the gunner // Get in as gunner // Get on the fifty // Get on the fifty kal // Get on the gun // Take the fifty // Take the gun // Take the gunner's seat // Mount the gun

Driver get in // You drive // You're driving // You're the driver // Get in as driver // Get in as the driver // Grab the wheel // Take the wheel // Take the driver's seat

Pilot get in // You're the pilot // You're flying // You fly // Grab the stick // Take the stick // Take the pilot's seat

Commander get in // You're the commander // Get in as commander // Take the commander's seat

Get in the back // Get in the cargo // Take the back seat // Ride in the back

Get in // Get in that vehicle // Hop in // Mount up // Climb aboard // Climb on board // Get on board // Board that vehicle

Patch yourself up // Heal yourself // Use your medkit // Heal up // Treat yourself

Scan horizon

Stay standing

Go prone // Get prone // On the ground

Crouch down // Go crouched // Head down // Stay low // Stay down // Get your head down // Keep your head down // Kneel down // Take a knee

Copy my stance // Get up // Stand up // On your feet

Advance // Advance forward // Move up

Watch north // Watch the north // Look north // Face north

Watch northeast // Watch the northeast // Look northeast // Face northeast

Watch east // Watch the east // Look east // Face east

Watch southeast // Watch the southeast // Look southeast // Face southeast

Watch south // Watch the south // Look south // Face south

Watch southwest // Watch the southwest // Look southwest // Face southwest

Watch west // Watch the west // Look west // Face west

Watch northwest // Watch the northwest // Look northwest // Face northwest

Stay back // Back up

Flank left // Take the left flank

Flank right // Take the right flank

No target

Roger // Roger that // Affirmative // Solid copy // Acknowledged // Yes sir // Sir yes sir

Negative // Negatory // Negative on that // No sir

Running out of ammo // Two mags left // Last mag // Last magazine // Almost out of ammo

Got him // Target down // One down // Enemy down // Confirmed kill // Target eliminated // He's down

Injured // I'm injured // Medic // I need a medic // I need help // Corpsman // I need a corpsman // Help me

Ready // Awaiting orders // Ready for orders // Waiting // Task complete // Orders sir

Out of ammo // Weapon dry

Cannot fire // Can't shoot // I can't shoot // I can't fire // Weapon down // Gun down

Ready to fire // Weapon up // Gun up // Waiting to fire

Where are you // Ten twenty // What's your twenty // What's your location // Report your location

Wait for me // Hang on

Next waypoint

Say again // Repeat last // Ten nine

Suppressive fire // Suppress them

VEHICLE VERBALS

Stop // Halt

Slow // Slow forward // Go slow // Slow down // Easy

Forward // Go forward // Normal speed

Fast // Go fast // Fast forward // Step on it

Manual fire // Give me gun control // I'll take guns

ADVANCED VEHICLE VERBALS

Reverse // Back up (double-tap stop)

Edited by jtgibson

Share this post


Link to post
Share on other sites

Thank you for the list of phrases -- I will probably end up stealing some of them.

The conceptual wall I ran into with this was that an external application has no idea whether you have any units selected or not, and therefore doesn't know when to press the tilde/grave key to select all units prior to issuing the command (e.g., if you had already selected everyone and then said "Regroup", it would press the tilde key, deselecting everyone, and then do a bunch of useless phantom keypresses). There would need to be a direct plugin to the game to be able to have this behaviour work reliably in all cases, unless everyone is comfortable with the "known issue".

Yes. That is the problem with emulating keypresses without any sort of context. I'm looking into building a plugin for Arma 3 that connects to the outside application to provide it that missing context (as well as get rid of emulating keypresses at all, providing extra AI commands, and giving additional options for voice input) -- that is a far way off, mind you.

One of the main features of this over any other kind of input program is that it matches vocal input to only valid commands. Now, I see your argument that you can select units without issuing a command -- I know that this gets in the way, but it is important to be able to select those units for now (for contextual menus and such). We will see if assuming 'all' is the correct thing to do later on in development.

Share this post


Link to post
Share on other sites
There shouldn't be a way to move unit's yet because the move unit command relies on the context menu and I have no way of knowing from this outside application what the current selection is. It could be Move, Get In, Target, etc.

The best workaround for this is to select the units that you want to move using voice commands and then use the middle mouse to select move (notice that it doesn't have a keybind!) from the context menu that pops up. Teams will not pop up a context menu, but there is some way, unknown to me to get it back.

Yes, of course. What I now realize I was doing was simply selecting "all" (by voice) while zoomed in on an area. The default context selection is "Move There", which I activated with a press of the space bar. Doesn't work with color teams though. I have big dreams of one day playing Arma with Oculus Rift or similar. Anything that simplifies having to actually "look" at the keyboard is a bonus!

Never mind. Don't let me bother you with silly stuff like that. :) I look forward to any future improvements you may make.

Share this post


Link to post
Share on other sites

Excellent idea. I've used VAC and PILFIUS in the past, so I will try this. Thanks for sharing.

Share this post


Link to post
Share on other sites
cool stuff, look i am sure i am not the first one asking for this but i am going to ask anyways, is there a way instead of say "all", it can be implied with not group order given, i mean instead of say "all, regroup", you can say, "regroup" and the all is implied.

Does it make sense?

Not really, since the "regroup" command would no longer be usable with selected units. You could use another word/phrase (E.G. "RED get back"), but then that's not much different from just saying "all regroup".

Share this post


Link to post
Share on other sites
Not really, since the "regroup" command would no longer be usable with selected units. You could use another word/phrase (E.G. "RED get back"), but then that's not much different from just saying "all regroup".

This isn't true. Articulate's voice recognition can distinguish from when you say "team red, form up" and when you say "form up" without a subject. Every utterance (don't hate me, that's what it's called!) that you make it is checked for validity against a set of rules. It just so happens that I've included selecting units by saying their names as a command.

Share this post


Link to post
Share on other sites

Hi there,

I get the following error - any help greatly appreciated!

Capture.jpg

Dave

Share this post


Link to post
Share on other sites

What version of Articulate are you running? It's available in the Control Panel under Add/Remove programs. This error has to do with the system locale settings, not the default input device.

Share this post


Link to post
Share on other sites

That's with the .exe so not in control panel as was never installed as such. Rightclicking will give the file version as 1.0.0.0 but I'm pretty sure I used the download link for the latest version (1.0.3).

---------- Post added at 14:01 ---------- Previous post was at 13:58 ----------

Just installed v1.0.2 and it's come up as "listening"

---------- Post added at 14:27 ---------- Previous post was at 14:01 ----------

Update: still doesn't seem to work

Share this post


Link to post
Share on other sites

Hmm... I don't know. Do you mind giving me as much information as possible about your setup?

What locale are you setup in? What version of Windows? If you go to Control Panel>Ease of Access>Speech Recognition>Advanced speech options what does the panel have for language?

Share this post


Link to post
Share on other sites

v1.0.2 works but with limited functionality.

1.0.3 doesn't work.

Running windows 8 64bit with English (UK)

Speech recognizer 8.0

---------- Post added at 17:15 ---------- Previous post was at 17:14 ----------

Also was wondering if there was a way to keep the context menu open when selecting a team (as if pressing SHIFT+Fkey) to give a click to move order.

Share this post


Link to post
Share on other sites

I had a chance to use this a little yesterday and I seem to run into problems assigning teams. E.g. "Three, five, seven, assign to yellow." Then sudenly every unit in my group is quickly selected and assigned to team yellow. This happens with any comination or units or team colors. I've tried all of the verbages , "assign" , "assign to" , "add to" , as well as some of the other examples on GitHub , "Team green, add to team red." and etc. Always the same results. I select the individual units alright, although I some times seem to have problems with four for some reason.

I thought it might be a key mapping problem, so I made a new profile with default keys and it still does it. So I went through the speach training a couple more times and it's still happening.

Other than this great start! I can't wait to see some of your new features you listed under the Future Development. :)

Share this post


Link to post
Share on other sites
Articulate's voice recognition can distinguish from when you say "team red, form up" and when you say "form up" without a subject.

Well f**k me running.

I'm a long-time VAC user, and have my profiles dialed in pretty well, but this functionality is a huge advantage for Articulate.

Share this post


Link to post
Share on other sites
v1.0.2 works but with limited functionality.

1.0.3 doesn't work.

Running windows 8 64bit with English (UK)

Speech recognizer 8.0

Hmm.. sounds like it is having a hard time with the UK locale. Switching to the US locale will fix it probably. I am working on a fix for the next release.

Also was wondering if there was a way to keep the context menu open when selecting a team (as if pressing SHIFT+Fkey) to give a click to move order.

Yes. This would be the better way to do it. I will be switching to this soon.

---------- Post added at 13:31 ---------- Previous post was at 12:25 ----------

Well f**k me running.

I'm a long-time VAC user, and have my profiles dialed in pretty well, but this functionality is a huge advantage for Articulate.

It's the reason that the commands are accepted in a natural pace. In order to get the same functionality in VAC, you would have to systematically assign every command to every possible subject, which borders on the impossible. This is the primary reason that I built Articulate.

Share this post


Link to post
Share on other sites

THESE ARE DEVELOPMENT BRANCH CHANGES -- THEY ARE NOT FINAL

Figured since I haven't had an update in a little bit, I might as well show off the new stuff that we've been working on.

Ac5D9VS.png

A2xgdC9.png

tnEmowQ.png

New UI with settings(!) and working listening modes! Thanks to Benjamin Pannell, one of the new members of the Articulate team for basically everything that you see in these screenshots!

  • Push to Arm listens after a button press for a single command and then shuts off.
  • Push to Ignore is the opposite of push to talk -- you can assign the key to your ACRE/Teamspeak key and have it ignore all you say during that time.

Other changes in the development branch include:

  • Only outputs keypresses to an Arma game.
  • Now supports the British!
  • Hopefully, a new installer!
  • Some backend improvements.
  • Bug fixes.

Some other stuff that we are working on (read: thinking forward to) but isn't yet in the development branch (and will probably not make it for the next release):

  • Support for German language voice input! Thanks Alpha-Kilo!
  • XML-based commands that you can potentially customize!
  • New default command phrases!
  • Support for WW AI_Menu

Edited by Mpstark

Share this post


Link to post
Share on other sites

A new version, 0.2.0 is out. Download it from here.

There are many new features and improvements in this release.

  • New: Installer (you can still choose a No Installer version!)
  • New: Metro-themed UI
  • New: Listening Modes (Push-To-Talk, Push-To-Arm, Push-To-Ignore and Continuous)
  • New: Displays detected phrase on the UI
  • New: Can now change the Voice Input's Confidence Margin, which can increase speech responsiveness at the cost of accuracy
  • New: Will only output keystrokes if an ArmA game is foreground
  • New: Will (hopefully) log crash reports
  • Fixed: Now detects best version of Microsoft Speech Recognizer to use (only supports English currently) -- this means the British should have significantly better voice input and should not crash on program startup

Most of these features are brought to you by Benjamin Pannell, a new member of the Articulate team. Mad props to him!

Please uninstall the old ClickOnce installer since we are now using a normal installer.

Share this post


Link to post
Share on other sites

Thanks!

Is this "responsiveness" slider capable of fine tuning the "pause" between spoken words, as you suggested in one of your earlier replies?

EDIT--

Trying to bind "Ignore" to my side mouse button that I use to activate VOIP. Stays "None" and can't change it? Works with keyboard bindings it seems, just not my mouse button.

Edited by Oktyabr

Share this post


Link to post
Share on other sites

Love the program, thanks. Any chance this will work with Arma 2 also?

Share this post


Link to post
Share on other sites

@Oktyabr The confidence margin slider currently only adjusts the cutoff margin for whether a command is accepted. The speech engine reports how confident it is in its interpretation of a command (from 0% to 100%) and this confidence margin allows you to adjust what you consider an acceptable ratio between accuracy and rejection frequency. We will be adding the ability to adjust the end of speech timeout in an upcoming release. Regarding binding mouse buttons, I'll implement that as soon as I get the chance and you should hopefully see it in the next release as well.

@m101 I haven't yet tested Articulate with ArmA 2, however I see no reason as to why it shouldn't work just as well. If you notice any discrepancies or issues in ArmA 2 then please report them and we'll try to work out a solution.

Share this post


Link to post
Share on other sites

Ok so i've tried the program in Arma 2 but it doesn't work at all. Not even in a "broken way" at least (i mean at least to try to open some menus and fail). Strange because the menus , at least for some basics commands, should be the same.

I think the program doesn't detect Arma 2.

Edited by m101

Share this post


Link to post
Share on other sites
The new version crashes on start up for me. :(

Figured out the issue, since I was not using the packaged version. Listed on the announcement for Articulate Development Preview v0.1.0.2.

"The non-installer version does not check for the proper version of .net (4.5) so it will not work if you do not have that version of the runtime."

Probably should put that in a Readme.txt in the "Articulate-NoInstaller.zip". ;)

Is it only accepting Keyboard inputs? I would like to be able to map it to the same mouse button I use for VOIP, so I can configure it to Push to Ignore. It doesn't seem to recognize any of them.

Edited by skadog

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×