PDA

View Full Version : Command / key-press macros



mr_belowski
02-11-2017, 16:02
Guys,

In the latest release we've added the ability to send sequences of key presses from the app to the game (PC only), in response to voice commands (or in a couple of special cases, triggered by events in the game). This is all a work in progress and has no pretty user interface - it's all driven by a configuration file.

The app includes some common macros for Raceroom and ProjectCars2, but I expect the list to grow (a lot), so if there are any common sequences of key presses you're having to make to do stuff in-game these could be incorporated into the default macro configuration. Stuff like requesting a pit stop, selecting pit actions, etc.


Here's the text from the help file, which explains it a bit more:

Command macros
--------------
The app can send sequences of key presses in response to voice command or some specific (hard-coded) in-game events. These can be used for anything you like, but their primary function is to ease the pain of navigating the awkward in-game pit menus. The app comes with a default set of command macros which (at the time of writing) are for PCars2 and Raceroom only. More will be added for other games. The default commands can be found in [install folder]/saved_command_macros.json. If you want to make your own, copy this file to a your Documents folder, in a subfolder called CrewChiefV4 (i.e. Documents/CrewChiefV4/saved_command_macros.json) and edit it as you like.


The first thing you need to do is to update your key assignments in-game so they match the keys that the command macro will send.




Raceroom


default key bindings:
"Pit Menu Toggle": q
"Pit Menu Select": e
"Pit Menu Up": w
"Pit Menu Down": s
"Pit Menu Decrease": a
"Pit Menu Increase": d
"Pit Request Toggle": r
"Real-time Chat": c


Ensure that there's a least one Pitstop Preset defined (from the in-game pit menu).


You can request a pit stop by saying "pit request", "in this lap" or "box this lap". This will open the pit menu, select 'pit request' and close it again after a few seconds delay. When you enter the pitlane the app will automatically open select 'confirm pit actions' from the pit menu so you don't have to fumble around.


You can also cycle pit presets with the voice commands "next strategy", "next pit preset", "previous strategy", "previous pit preset".


If you want to manually navigate the pit menu with voice commands, use "pit menu toggle", "pit menu up", "pit menu down", "pit menu left", "pit menu right" and "pit menu select".




PCars2


default key bindings:
"Car Management": e
"ICM Menu Up": w
"ICM Menu Down": s
"ICM Menu Left": a
"ICM Menu Right": d
"Pit Request Toggle": q
"In-game Chat Box": t


You can request a pit stop by saying "pit request", "in this lap" or "box this lap". This will open the pit menu, select 'pit request' and close it again.


You can select strategies with the voice commands "strategy one" / "strat one", up to "strategy four" / "strat four".


If you want to manually navigate the pit menu with voice commands, use "pit menu toggle", "pit menu up", "pit menu down", "pit menu left" and "pit menu right".



Advanced command macros
--------------

As you can see from the previous section, key press macros are complicated and a bit dumb - the app has no idea what state the pit menu is in so it has to either make lots of assumptions or work quite hard to put the menu into a known state.


There are 2 macros for adding fuel. In both cases, for them to work in R3E the selected pit preset must have fuel *selected* (i.e. highlighted green). One uses the logic of the app's 'Fuel' event to calculate how much fuel is needed to finish the race ("fuel to the end" voice command), the other uses the amount of fuel requested in the voice command ("add fuel, 100 litres" or whatever). These macros opens the pit menu, navigate to the fuel option and attempt to reset it to zero litres. Because they can't know how much fuel might already be set on this menu they have to press the 'decrease' button lots (150) times. This ensure it's at zero before they then add the calculated or requested amount of fuel.


*Note that these will only work correctly if you use Litres as your unit*.


Another point to note here is that these fuelling macros press 'decrease' 150 times quite quickly to ensure the fuel amount is zero before they start increasing it. When things are configured correctly it works well, but it's a lot of key presses and if something goes wrong the end result may be undesirable.


The macro feature can also be used to automate chat messages. There are examples for pCars2 and R3E. Again, these just send sequences of key presses.


There are a few special key press commands in save_commands_macros.json to help ease the pain of wiring these things up. The "actionSequence" element is the list of key presses. These usually refer to action items in the keyBindings section at the top of the file. However, they can also be plain keys - e.g. [..., "a", "b", "c", ...].


- To send a fixed number of multiple key presses use "{MULTIPLE,153}Pit Menu Decrease" (presses the Pit Menu Decrease key 153 times).
- To send a number of multiplekey presses based on some app logic, use "{MULTIPLE,Fuel}ICM Menu Right" (presses ICM Menu Right however many times the Fuel event told it to). This requires specific application code to work but i'm happy to take requests :).
- To send a number of multiple presses based on the voice command that triggered the macro, the voice command needs to use a special format with the number range to recognise in curly braces - e.g. "add fuel, {1,150} litres" (recognises "add fuel 0 litres" up to "add fuel 150 litres", in steps of 1). Use "{MULTIPLE,VOICE_TRIGGER}Pit Menu Increase" to press (in this example) Pit Menu Increase the number of times recognised in the voice command.
- To send a sequence of key presses from some free text, use "{FREE_TEXT}sorry, my bad". Each of the keys after {FREE_TEXT} will be pressed in sequence. Only letters, commas, hypens and full-stops are supported. This is to make chat macros more straightforward (e.g. ["Real-time Chat", "{FREE_TEXT}good pass", "ENTER"]).


The file saved_commands_macros.json in your app's installation folder has examples of all this stuff and lots of comments that should further demystify the process. Alternatively just get the correct in-game key bindings and just use the stuff I've already configured.

Hopefully the game devs will make these menus or the actions they trigger easier to use for 3rd party apps. But until they do, these complicated automated interactions are always going to be flaky.

Paul Bee
13-12-2017, 12:22
I need help to understand this please.

I'm a sim racer of 'more mature years' and have, until now, restricted my racing activities to the PS4 platform, most notably with the original Project Cars and Crew Chief on an Android device. However, with some rather disappointing 'issues' in the new Project Cars release, I've made the move to a PC platform within the past 2 weeks and am currently in the middle of a very steep learning curve.

I downloaded Raceroom and have even managed to get Crew Chief set up..... The next phase, when December 25th comes along, will be my first venture in to VR and so I have read your post on voice commands with great interest.

Do I need to install and set up voice command software? Voice Attack or somesuch? I'm running Windows 10 which I believe has a voice command function. Should I spend time learning setting this up and when done, will I be able to adopt your voice command functions?

Any help would be much appreciated.

Thanks
Paul

mr_belowski
13-12-2017, 12:32
Crew Chief voice recognition uses Microsoft Speech Recognition. This is *not* the same as Windows Speech Recognition. To use voice recognition with Crew Chief, you need to install the recognition engine:

https://www.microsoft.com/en-gb/download/details.aspx?id=27225

and then install a speech recognition language pack:

https://www.microsoft.com/en-gb/download/details.aspx?id=27224


that's all you need to do - no training or anything. You mic needs to be the default audio recording device.

Paul Bee
13-12-2017, 17:03
Thank you. I'll look in to it.

Danny
17-02-2018, 02:02
Mr. Belowski-
I wanted to be able to send messages in Assetto Corsa text chat using speech, so I forked the repository to find out how I could add that behavior. I thought GrammarBuilder.AppendWildcard() [or maybe DictationGrammar and SetDictationContext] might let me grab any text following some initial marker phrase (e.g., "Say "), and then I could use SendKeys() to send the keystrokes to AC.

This was until I found saved_command_macros.json

Is the design of saved_command_macros flexible enough to allow me to send arbitrary words as keystrokes to AC?

mr_belowski
17-02-2018, 07:46
The speech recognition engine is grammar based, not trained. It's not designed to recognise free speech - you have to limit the stuff it listens for otherwise the search space becomes too big and it gets very unreliable.

If there is a fixed list of chat messages you want to send, then that can be done with saved_command_macros.

If you want free diction here, you'll need to integrate the windows built in speech recognition engine

gmerariu
17-02-2018, 14:58
Hi my friend. Love your app.

I used DRE before but yours is much better. I also donated so uou can continue to enhance and aupport it. :]

One question related to macros. I use iracing and need to program 2 commands via voice or wheel button

1) tear off(to clean my visor). Default iracing keys are alt+t
2) trigger whipers. Default iacing is ctrl+shift+w

How do i do that in crew chief

mr_belowski
17-02-2018, 15:33
If you need to assign an action to a key-combination (alt-t or whatever), CC doesn't (yet) support that. The macros are single-key press only.

If you want to reconfigure iRacing so your tear-off is triggered by, say, just the 't' key, you'd need to add this key to the iRacing key bindings:



{
"description": "iRacing command mappings - these are the key assignments in the Options -> Controls",
"gameDefinition": "IRACING",
"keyBindings" : [
{
"action": "Lap Timing Black Box",
"key": "F1"
},
.....
{ "action": "Tear off",
"key": "KEY_T"
}



and then make a macro in the 'macros' section:



{
"name": "Tear off",
"description": "Presses T",
"voiceTriggers": [ "tear off" ],
"commandSets": [
{
"description": "iRacing only",
"gameDefinition": "IRACING",
"actionSequence": [ "Tear off" ],
"keyPressTime": 10,
"waitBetweenEachCommand": 200
}]
},
.....

gmerariu
17-02-2018, 19:27
Thanks a million.

It's almost there.

I rather not change the default since it's used across multiple of my apps...

I can wait. Your app is getting better and better...for now, I am running voice attack simultaneously to send a few extra commands...

jtfreels
28-02-2018, 23:55
I've attempted to add the "tear off" comand like the example above, it kinda works but doesn't actually do the tear off.
I have the "T" key configured in options to do the visor tear off.
Thanks for any help of what I've done wrong, details are below\

Jay

When I start Crew Chief I get this


17:41:00.523 : Loading user-configured command macros from Documents/CrewChiefV4/ folder
17:41:00.716 : Action Tear off not recognised
17:41:00.720 : Loaded 17 macro voice triggers into the speech recogniser



then when I say "tear off" I get

17:58:53.887 : recognised : tear off confidence = 0.9245504
17:58:53.895 : Sending actions Tear off

so it "works" I think, but the visor tear off does not occur in iRacing

what I've configured in my json file

{
"action": "Tear off",
"key": "T"
},

.....
and the macro part

{
"name": "Tear off",
"description": "Presses T",
"voiceTriggers": [ "tear off" ],
"commandSets": [
{
"description": "iRacing only",
"gameDefinition": "IRACING",
"actionSequence": [ "Tear off" ],
"keyPressTime": 10,
"waitBetweenEachCommand": 200
}]
},

mr_belowski
01-03-2018, 07:53
Your key name is wrong - "key": "T" should be "key": "KEY_T"

jtfreels
01-03-2018, 16:07
Great! Works perfectly now....

"someone" should edit post #8 and correct the example :)

Thanks again.

mr_belowski
01-03-2018, 16:19
Ah yes, sorry about that, I've updated it :)

pablereitor
15-05-2018, 16:23
What GameDefinition key text needed to use for rFactor2 ?

Tks.

The Iron Wolf
15-05-2018, 17:35
Try RF2_64BIT please.

pablereitor
15-05-2018, 19:34
Try RF2_64BIT please.


ยก Yeah, it works perfect !

sorry for my bad english.

Neil Bateman
15-05-2018, 20:53
Hi jim, as I don't have a microphone at the moment is it possible for me to program a keypress for the fuel to end command until I can replace my mic, I cant figure out how to do it.

Thanks.

Neil Bateman
18-05-2018, 16:08
Can anyone help with this, is it possible to request fuel calculation to end of race with a keyboard command or does it only work with voice command?

mr_belowski
18-05-2018, 16:25
sorry, it's voice command only at the moment. I keep meaning to go back to that and finish it off, but haven't found the time yet

Neil Bateman
18-05-2018, 19:58
OK tnx jim.:cool:

clintwood60
22-06-2018, 10:20
Hi,
can I also transfer the keybinding (in "saved_command_macros.json") to the controller (Trustmaster T300)?
e.g .:
{
"action": "Pit Request Toggle",
"key": "KEY_Q"
},
to
{
"action": "Pit Request Toggle",
"wheel": "BUTTON_4"
}
Tnx for anwers
clintwood60

mr_belowski
05-10-2018, 07:40
Unfortunately sending controller button presses isn't supported. I did want to implement it but it's hard - each game uses controllers in a different way and it can even vary by controller. So (for now at least) it's keyboard only.

I've made some significant changes to how the macros stuff works to simplify them and make them a bit more powerful - will be in the next released (see post 1 in this thread for the WIP documentation)

deloosem
01-12-2018, 20:47
Can I also transfer NUMPAD 8 (not arrow UP)?

THx

Revan
30-12-2018, 19:46
Hello guys,

i also want to assign a numpad key to an action, can you tell me please the syntax for that?

Found it via tiral and error:

you just have to use the ascii numbers for the specific key. In the case of numpad0 its the number 96 without the "key_"



{
"action": "Center HMD",
"key": "96"
},

mr_belowski
31-12-2018, 08:44
have you tried using NUMPAD0 to NUMPAD9? That's how they're mapped in the code which generates keyboard input - it should be possible to do it like this:



{
"action": "Center HMD",
"key": "NUMPAD0"
}


you might need to ensure numlock is on for this to work

Revan
31-12-2018, 10:38
Don`t know if i tried Numpad0 or key_Numpad0, there was quite a few combinations before i tried the ascii code.
As long as this works i`m happy :)

Thanks for helping out and have a nice new years eve

mr_belowski
31-12-2018, 10:42
looking at the code, i honestly can't see how the ascii code could actually work

Revan
31-12-2018, 11:41
Great :D

Don`t think about it, just accept...

When Life has chocolate to offer you better take it :)

Scoops
09-01-2019, 11:07
Hi,

What would I need to add to the json file to bring macros to rF2?

I have tried adding

{
"description": "rFactor 2 command mappings - these are the key assignments in the Controller menu -> Game",
"gameDefinition": "rFactor 2 (64 bit)",
"keyBindings": [{
"action": "Open Chat",
"key": "KEY_T"
},

and added


{
"description": "rf2 version",
"gameDefinition": "rFactor 2 (64 bit)",
"actionSequence": ["Open Chat", "{FREE_TEXT}good pass", "ENTER"],
"keyPressTime": 10,
"waitBetweenEachCommand": 200
},


but the console is showing "No macro voice triggers defined for the current game" on loading. Loading as Race Room shows the macros loading?

What I am ultimately looking to do is to change my admin status and make admin calls in game such as remove penalties from other drivers etc from voice commands so once I can get the "good pass" test above working I'll be sorted.

Thanks

mr_belowski
09-01-2019, 11:37
Game definition should be RF2_64BIT

Scoops
09-01-2019, 12:51
Thanks, that's moved me on a bit. The console is now loading macro voice triggers into speech recogniser.

When I say "Chief" wait for the beep then say "say, good pass" the console recognises this

13:42:53.205 : Recognised : chat, say good pass confidence = 0.887

but then goes back to Waiting for trigger word chief. I only have rF2 but loded Race Room into CC and then started rF2 and opened the chat box to see if CC was sending key strokes and all works as it should.




I have just noticed the supported characters. Once I get y head around this can I send "/" to the chat window?

The full list of admins commands are

https://steamcommunity.com/sharedfiles/filedetails/?l=danish&id=580727258

and all require /

mr_belowski
09-01-2019, 14:05
There are 2 ways to send key sequences - define each key press as its own action (like the pit macros do) or send free text, like the chat macros do.

The issue here is that there's no support for the '/' character in the chat macros. I'll add this (release due tonight or tomorrow). Alternatively you can use the long winded approach where each key press is an action. The front slash key is called OEM_2 or DIVIDE

Scoops
09-01-2019, 15:00
Thanks DIVIDE is working fine.:) and I am so nearly there


If I want to set myself as admin in need to enter into the chat box for example

/admin Password123abc

I'm trying

"actionSequence": ["Real-time Chat", "DIVIDE", "{FREE_TEXT}admin Password123abc", "ENTER"]


and I'm getting a couple of issues

I can't get the upper case P (I could change the admin password on the server but if there is a way to get upper case that would be great.

The numbers don't display in the chat box.

The result is /admin passwordabc and then enter is pressed.

mr_belowski
09-01-2019, 15:22
Upper case isn't supported - not sure how I'd do it to be honest. Can't see why numbers would work tho

Scoops
09-01-2019, 17:04
I can get numbers using NUMPAD2 etc

As Caps Lock toggles on and off can that be used as a key press? "CAPITAL" isn't currently working, is that an option?

mr_belowski
09-01-2019, 17:50
I'll have a look at upper case later. Caps lock is unlikely to work

mr_belowski
09-01-2019, 19:22
ok, this should work in the release I'm just about to unleash. In {FREE_TEXT} blocks, any capital letters will automatically trigger the left-shift key to be held down while they're being pressed. And the '/' symbol will be interpreted correctly.

Please please please, if you're editing saved_command_macros.json file in your installation folder (C:\Program Files\CrewChiefv4\ or whatever it is) you *must* back it up before updating. If you're editing a copy of the file in Documents\CrewChiefV4\ then it'll all be fine :)

Scoops
10-01-2019, 15:15
Thanks Mr B all sorted with this update :cool:

Greppet
06-04-2020, 09:02
Hi,

I need help with binding keys to chat commands. I cant seem to find how to do it properly. Im new to Sim Racing and this excellent program Crew Chief.

I would like to bind key Z to chat message "say sorry" in Raceroom.

How and where do i put it? This is my "Saved_command_macros.json" file. Is this the correct file?

Thanks in advance for you help!

{
"macros": [
{
"name": "say sorry",
"description": "opens chat, types 'sorry, my bad', presses enter. An action sequence item starting with {FREE_TEXT} tells the app to press each of the following keys in sequence. Numbers, letters, commas and full-stops only are supported.",
"voiceTriggers": [
"chat, say sorry"
],
"commandSets": [
{
"description": "r3e version",
"gameDefinition": "RACE_ROOM",
"actionSequence": [
"KEY_C",
"{FREE_TEXT}Sorry, my bad",
"ENTER"
],
"keyPressTime": 10,
"waitBetweenEachCommand": 200
},


]
},

andreasdahl
12-04-2020, 00:09
I'd like to use a 12 position rotary switch to have some crew chief shortcuts at my wheel. The rotary acts as 12 individual buttons that are continously pressed. The idea is that each position has a shortcut, and then I press a simple button to engage that shortcut. If Crewcheif allowed two-button assignments or use of modulator button then this would be simple, but I dont think this is supported? Is there another way?

marmoset
29-07-2020, 23:25
I would like to sent something up so that I can say "Center Screen" and have CrewChief execute the ";" key press.
Can that be done?

Ziltoid Racer
31-01-2021, 13:53
i am trying to get voice commands working in Assetto Corsa Competizione, if i use the default voice commands they work and when i ask if he can hear me they can but when i add a say sorry macro for ACC the program crashes. can you confirm the Game definition is "ACC"? i have set it up exactly like the others but when i do the voice command it just crashes crew chief. the chief trigger word works and i get the beep for when to speak but like i say i sat the "chat say sorry and bam it closes the program.

This is my macro


"description": "Assetto Corsa Competizione version",
"gameDefinition": "ACC",
"actionSequence": [
"ENTER",
"{FREE_TEXT}Sorry, my bad",
"ENTER"
],
"keyPressTime": 50,
"waitBetweenEachCommand": 100

i cannot workout why it's crashing, any help greatfully appreciated.

mr_belowski
31-01-2021, 18:18
it's a bit of a bug, i'll update the standard chat macros JSON file for the next release and add a null check. The problem here is that the code now ignores the key presses around the FREE_TEXT keys, and instead looks for macros called "start chat message" and "end chat message" and executes these. Unforunately there's no logging or null check so if they're missing (which they are for AC and ACC) the app will crash. Those responsible have been rounded up and are en-route to the Crew Chief Mega Corp Gulag.

You can fix this by adding


,{
"description": "ACC version",
"gameDefinition": "ACC",
"actionSequence": [
"ENTER"
],
"keyPressTime": 100,
"waitBetweenEachCommand": 100
}

to the 'start chat message' commandSets list, and



,{
"description": "ACC version",
"gameDefinition": "ACC",
"actionSequence": [
"ENTER"
],
"keyPressTime": 100,
"waitBetweenEachCommand": 100
}


to the 'end chat message' commandSets list.


I'm updating the standard saved_command_macros.json file for the next release, which will also include a null change and approriate error message

Ziltoid Racer
01-02-2021, 09:36
it's a bit of a bug, i'll update the standard chat macros JSON file for the next release and add a null check. The problem here is that the code now ignores the key presses around the FREE_TEXT keys, and instead looks for macros called "start chat message" and "end chat message" and executes these. Unforunately there's no logging or null check so if they're missing (which they are for AC and ACC) the app will crash. Those responsible have been rounded up and are en-route to the Crew Chief Mega Corp Gulag.

You can fix this by adding


,{
"description": "ACC version",
"gameDefinition": "ACC",
"actionSequence": [
"ENTER"
],
"keyPressTime": 100,
"waitBetweenEachCommand": 100
}

to the 'start chat message' commandSets list, and



,{
"description": "ACC version",
"gameDefinition": "ACC",
"actionSequence": [
"ENTER"
],
"keyPressTime": 100,
"waitBetweenEachCommand": 100
}


to the 'end chat message' commandSets list.


I'm updating the standard saved_command_macros.json file for the next release, which will also include a null change and approriate error message

Thanks for the reply and for putting a fix for it in the next update :)

Thanks again for Crew Chief and the help :)

EDIT:
Thanks again i have added the code and it works great :P

EDIT2: do you by chance know how i can get crew chief (voice command) to flash lights and other commands with say a shift key letter, i have tried a few things?

EDIT3: i have another question, i use the trigger word Chief to get crew chief to listen for voice commands but while in a race tonoight i found the click from my +gear paddle was setting crew chief to listen for a command would you know why? the click is quite loud and the mic for crew chief is close to the paddle (3-4 inch) but it was wierd and annoying through a 30 mins race.
once again any help appreciated..

SirJack
12-12-2021, 09:39
Hopefully this is the correct thread for my question. I'm trying to figure if I can press the 'Start Application' button within CC using the Elgate-Stream Deck as a button-box. I am using CC along with AMS2 and I often forget pressing the 'Start application' button so I am trying to make a command line for the Stream-Deck.
This is what I was able to achive so far
----"C:\Program Files (x86)\Britton IT Ltd\CrewChiefV4\CrewChiefV4.exe" -game AMS2
This command starts CC with the AMS2 profile...but it does not 'press' the 'Start application' button. Any ideas how this can be done...if possible:)

Sparten
12-12-2021, 12:33
Hopefully this is the correct thread for my question. I'm trying to figure if I can press the 'Start Application' button within CC using the Elgate-Stream Deck as a button-box. I am using CC along with AMS2 and I often forget pressing the 'Start application' button so I am trying to make a command line for the Stream-Deck.
This is what I was able to achive so far
----"C:\Program Files (x86)\Britton IT Ltd\CrewChiefV4\CrewChiefV4.exe" -game AMS2
This command starts CC with the AMS2 profile...but it does not 'press' the 'Start application' button. Any ideas how this can be done...if possible:)

There is a setting in the properties called "Start immediately" this will auto "press" the Start application button when the app it started.

SirJack
13-12-2021, 16:12
There is a setting in the properties called "Start immediately" this will auto "press" the Start application button when the app it started.

thx a lot....found it:)!

Imagineer
18-06-2022, 20:05
- To send a number of multiple presses based on the voice command that triggered the macro, the voice command needs to use a special format with the number range to recognise in curly braces - e.g. "add fuel, {1,150} litres" (recognises "add fuel 0 litres" up to "add fuel 150 litres", in steps of 1). Use "{MULTIPLE,VOICE_TRIGGER}Pit Menu Increase" to press (in this example) Pit Menu Increase the number of times recognised in the voice command.


mr_belowski... trying to work with the voicetrigger and find a missing feature.
The voice trigger recognizes the amount you say; can it be implemented to enable that number for chat content?

to enable 'nice pass, nr 456!' chats, or even admin chat actions as '/kick 456' or '/dt 456'

I cant see why it wouldnt work with the logic, as it also enables the correct numbers in 'add fuel'.

Maybe for safety options, add a 'return voicetrigger' and 'confirm' action?

i see this implemented as

say: nice pass, [0-998] --> "Nice pass, four-five-six"


{return voicetrigger} --> four-five-six, confirm
{confirm} --> yes / confirm
{send key}: enter
{free text}: nice pass,
{voicetrigger}: 456
{send key}: enter


Curious to know your thoughts on this.

Seven Smiles
19-06-2022, 09:05
I don't think this will be possible in chat itself as it uses a different method for speech recognition - dictation mode instead of the fixed grammar used to recognise pit commands, macros etc. It may be possible in a command macro code, replacing the "multiple press" bit with number translation and outputting to the chat window; you would then have a macro "Nice pass number {1,999}" or "Slash kick {1,999}".

mr_belowski will be along to correct me shortly.

Imagineer
19-06-2022, 15:14
I don't think this will be possible in chat itself as it uses a different method for speech recognition - dictation mode instead of the fixed grammar used to recognise pit commands, macros etc. It may be possible in a command macro code, replacing the "multiple press" bit with number translation and outputting to the chat window; you would then have a macro "Nice pass number {1,999}" or "Slash kick {1,999}".

mr_belowski will be along to correct me shortly.

I know it is currently impossible in current macros and would have to be adapted or built.
Currently the 'VOICE_TRIGGER' variable holds the spoken value translated into integer, but it is tied to the 'MULTIPLE,___'
As a solution I wouldnt tie it to the chat window, as you then limit the usage; maybe theres a usecase where you can enter that value in another screen with a combination of keypresses; who knows.
just being able to output the separate 'VOICE_TRIGGER' value into the macro would fix it.

The 'confirm voicetrigger' is a nice-to-have so you dont kick the wrong person when translated wrong, but it also might be useful for the 'multiple press' function so you dont add fifteen liters when you needed fifty.
Refernce check... do you say 'six five zero' or 'sixhundred-fifty' ... or is both working?
Would be safe to 'confirm voicetrigger' to be output as "six five zero, confirm" else you still might miss the fifty-fifteen errors.

Sparten
19-06-2022, 15:29
I have something in the works that will allow for numbers in free text type macros.
Confirmation voice trigger is something that is going to have to wait maybe till forever.

Imagineer
22-06-2022, 13:13
I have something in the works that will allow for numbers in free text type macros.
Confirmation voice trigger is something that is going to have to wait maybe till forever.

That would be great!

Dagaznau
01-12-2022, 18:22
This was probably asked before but I couldnt find it anywhere:

Is it possible to have calculations in macros?
What I'm trying to do is:

ENTER
{MULTIPLE,3}DOWN
{MULTIPLE,22}RIGHT
{MULTIPLE,12-VOICE_TRIGGER}LEFT
{MULTIPLE,3}UP
ENTER

and the 12-VOICE_TRIGGER is not working.

stuboyle
17-07-2023, 15:13
Could the default key mappings for all sims be updated in the original post so the macros will work?

ZiltoidTV
01-08-2023, 07:37
I have something in the works that will allow for numbers in free text type macros.
Confirmation voice trigger is something that is going to have to wait maybe till forever.

Hi, did you ever get this working with numbers in free text macro's? If so could you help me out with how to impliment it.

Thanks