Author Topic: Question about Advanced Capabilities of VA  (Read 3976 times)

ChevyFan

  • Guest
Question about Advanced Capabilities of VA
« on: February 25, 2017, 04:25:39 AM »
Hello,

I'm really enjoying VoiceAttack!

But one thing I would love to do is be able to learn how to do more advanced things..

I downloaded a few different profiles, just so I could take a look and see if I can understand how they work. It's a little confusing to say the least..

Here's the inside of one Command of a profile I downloaded..

Set small int (condition) [Schleudersitz] value to 1
Say, 'Sure ?'
Execute command, 'SchleudersitzTimer' (and wait until it completes)
Begin Small Integer Compare : [Schleudersitz] Equals 1
    Say, 'Emergency eject timeout reached.'
    Pause 2 seconds
    Set small int (condition) [Schleudersitz] value to 3
End Condition
Begin Small Integer Compare : [Schleudersitz] Equals 2
    Say, 'See you later'
    Set small int (condition) [Schleudersitz] value to 0
End Condition - Exit when condition met
Begin Small Integer Compare : [Schleudersitz] Equals 3
    Say, 'Ejectseat safety bolts secured again.'
End Condition
Set small int (condition) [Schleudersitz] value to 0



I guess my question is how to I begin to learn how to do this?!

There must be a method to the madness lol


like how do people know what specific words to put into their commands that they know the specific game they are playing will pick up on them, and how you integrate VoiceAttack into a game that will prompt you to take serious actions based on presented options of a given task.


Thanks!

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4759
  • RTFM
Re: Question about Advanced Capabilities of VA
« Reply #1 on: February 25, 2017, 09:16:25 AM »
how do people know what specific words to put into their commands that they know the specific game they are playing will pick up on them, and how you integrate VoiceAttack into a game that will prompt you to take serious actions based on presented options of a given task.
They don't, because it doesn't.

The actions you see are only relevant to VoiceAttack itself, they don't rely on data from the game.

If you want to get information from a game rather than just send input to it(in the form of keypresses and mouse actions) you need to write a plugin to do it(or buy/use one if already available, as is the case for FSX, XPlane, and Elite:Dangerous, perhaps others).


What most people will do is set up a system that presents them options based on what the user can observe and relay to VoiceAttack, or an internal state that VoiceAttack keeps track of independently of the game(with no guarantee of remaining synchronized).


An example of this would be switching between two spells; Let's say you have fire and ice, and each has a different keypress asigned.

If you say "Switch to fire" when ice is currently selected, VoiceAttack will send the correct keypress, and the switch happens as expected.

If, however, you say "Switch to ice" when ice is currently selected, seemingly nothing will happen in the game, as while the keypress is sent as you have commanded, the user has not relayed the current ingame state correctly.


No matter how complex you make your commands, there is always a burden on the user to maintain a state of synchronization between VoiceAttack's internal state, and the actual game state(without using a plugin).