jwebmeister / tacspeak

Tacspeak - Fast, lightweight, modular speech recognition for gaming
GNU Affero General Public License v3.0
44 stars 2 forks source link

Suggestions: Ready or Not grammar module #8

Open jwebmeister opened 9 months ago

jwebmeister commented 9 months ago

Please post your suggestions for the Ready or Not grammar module here.

Please test your suggestions first!

Try to test if your suggestion causes conflicts with other commands, or otherwise reduces the overall speech recognition accuracy. I suggest at least one mission run, using as many speech commands as possible, particularly those that are similar sounding.

jwebmeister commented 9 months ago

From clsShadow:

map_door_options = {
    "[use the] wand": "mirror",

Note (to self): need to test if it conflicts with other commands, e.g. "wedge"

Added in pull #7

rake5000 commented 9 months ago

From clsShadow:

map_door_options = {
    "[use the] wand": "mirror",

Note (to self): need to test if it conflicts with other commands, e.g. "wedge"

to avoid confusion, I've now changed my handle in nexus from clsshadow to rake5000 to be consistend with all my other profiles like here and on discord

I've used both the wegde and wand commands extensively and so far they have never misfired

rake5000 commented 9 months ago

Suggestion: add "on my six" as alternative for "fall in". I've tested it on 3 missions, no misfires so far.

class FallIn(CompoundRule):
    """
    Speech recognise team fall in
    """
    spec_1 = "[<color>] [team] [<hold>] (fall in | regroup | form up | on my six) [on me] [<formation>] [on me]"
    spec_2 = "<color> [team] [<hold>] on me [<formation>]"
    spec = f"({spec_1} | {spec_2})"
    extras = [
        Choice("color", map_colors),
        Choice("hold", map_hold),
        Choice("formation", map_ground_fallin_formations),
    ]
    defaults = {
        "color": "current",
        "hold": "go",
        "formation": "single",
    }

    def _process_recognition(self, node, extras):
        color = extras["color"]
        hold = extras["hold"]
        formation = extras["formation"]
        print(f"{color} team {hold} fall in {formation}")
        cmd_fallin(color, hold, formation).execute()
jwebmeister commented 9 months ago

Suggestion: add "on my six" as alternative for "fall in". I've tested it on 3 missions, no misfires so far.

It’s a good suggestion, but I’m going to leave it for users to add themselves, for now.

I’m hoping to use (and thus reserving) numbers and cardinal directions in future commands. This requires additional functionality in-game, so it might not happen, and likely not anytime soon.

madmaximus101 commented 8 months ago

Suggestion: add "on my six" as alternative for "fall in". I've tested it on 3 missions, no misfires so far.

class FallIn(CompoundRule):
    """
    Speech recognise team fall in
    """
    spec_1 = "[<color>] [team] [<hold>] (fall in | regroup | form up | on my six) [on me] [<formation>] [on me]"
    spec_2 = "<color> [team] [<hold>] on me [<formation>]"
    spec = f"({spec_1} | {spec_2})"
    extras = [
        Choice("color", map_colors),
        Choice("hold", map_hold),
        Choice("formation", map_ground_fallin_formations),
    ]
    defaults = {
        "color": "current",
        "hold": "go",
        "formation": "single",
    }

    def _process_recognition(self, node, extras):
        color = extras["color"]
        hold = extras["hold"]
        formation = extras["formation"]
        print(f"{color} team {hold} fall in {formation}")
        cmd_fallin(color, hold, formation).execute()

i can also confirm this works flawlessly, have been using the "on my six" command for weeks now. Unsure if important or irrelevant - I am using the large version of the three LLM speech recognition algorithms provided. So far no issues with that either.