Voice commands

Started by Johannes, March 05, 2012, 10:01:14 AM

Previous topic - Next topic

Johannes

EFU supports a class of commands known as "voice commands" which are activated by typing into your NWN chat bar. Voice commands provide a lot of functionality which is useful, and even essential to the EFU experience, such as changing PvP modes, performing rolls and collecting the contents of a dropped pack. Here is how they are used :
  • Suppose that you are trying to activate a voice command named "commands". Assuming that it has no parameters, you'd type this into your chat bar :

Quote/c commands
More generally, an arbitrary command with N arguments may be called with the syntax :

Quote/c [command name] <[argument 1]> <[argument 2]> ... <[argument N]>
  • A voice command has the potential to have options in the form of -o  (Short options with single characters) or --some-long-command (Long  options with multiple characters), denoted by the prefixed "-".
  • Short options may be grouped together, i.e :

Quote/c somecommand -a -1 -x -o
is semantically equivalent to :

Quote/c somecommand -a1xo
  • Options may sometimes need to be supplied with parameters. For short options, the syntax is as follows :

Quote/c somecommand -o myparameter
Or you can even omit the space entirely like this :

Quote/c somecommand -omyparameter
Long command parameters differ slightly :

Quote/c somecommand --long-command=myparameter
  • The  ordering of options in a command is meaningless. They can precede,  follow and even be intermingled between standard command arguments.
  • If  you are familiar with GNU-style options, then you will recognize their  influence in this convention. Note this important difference, however :
  • Command  arguments with more than one character may require < and > (not "  ") as opening and closing brackets to properly delimit them if they  consist of any spaces, or if they are non-options prefixed with the '-'  character. If in doubt, use the delimiters.
  • All voice commands  are now documented and versioned as a standard. Appending the --help  long option to any command will display detailed documentation on its  usage, including valid parameters.
  • You may list voice commands with the 'commands' voice command.

Howlando

An incomplete list is as follows:

Quote from: ArkovWe're using an advanced listener system to directly process and/or hide text that players send to the server. In simple terms, this allows us to create "chat text commands" that you type directly into the chat bar (or attach to a quickslot). Features already implemented in this system include:
 
  • Setting a password for EFUSL
    /c password YourPasswordHere
  • Speaking through an Associate
    You can use the following commands to "speak" through an animal companion, dominated monster, familiar, henchman, or summon. Each must be prefixed with "/v" (standing for voice-throwing), followed by a single letter that identifies which creature to speak through, and finally a message to have that creature speak.

    /v a = Animal Companion
    /v d = Dominated Monster
    /v f = Familiar
    /v h = Henchman
    /v s = Summoned Creature

    Example: "/v f Hello!" will make your familiar say "Hello!".
  • Activating Stealth and Detect modes for an Associate
    You can use the following commands to place your associates into stealth and detect modes.
     
    Familiars
    /c astealth f
    /c adetect f
     
    Animal Companions
    /c astealth a
    /c adetect  a
     
    Henchmen
    /c astealth h
    /c adetect h
  • Text Commands
  • [/U][/B][/SIZE]You can use the following commands by typing "/c ", where is one of the highlighted phrases below.
[INDENT]Follow (name) -- Autofollow the nearest character named (name).
 
"/c follow Thoop" will make you autofollow Thoop.
 
Detect Evil -- Activate the paladin Detect Evil ability.
 
"/c detect evil" will make you attempt to detect evil.
 
Track -- Activate the ranger Track ability.
 
"/c track" search for nearby tracks.
"/c track -race giant" search for nearby giant tracks.
"/c track -size huge" search for nearby huge creature tracks.
"/c track -race goblinoid -size medium" search for nearby medium-size goblinoid tracks.
"/c track -name Harry Halfwit" search for Harry Halfwit's tracks.
 
Dispel -- Allows selective dispelling of beneficial effects.
 
"/c dispel skins" dispel barkskin/stoneskin/shadow shield.
"/c dispel invis" dispel invisibility and sanctuary.
"/c dispel blur" dispel ghostly visage.
 
Subdual (next/prev/spar/subdual/full) -- Switch subdual mode.
 
"/c subdual prev" cycle to the previous subdual mode.
"/c subdual next" cycle to the next subdual mode.
"/c subdual spar" switch to sparring mode.
"/c subdual subdual" switch to subdual mode.
"/c subdual full" switch to full damage mode.
 
Hostile (nearest/radius/area/all/) -- Set yourself hostile to people.
To set people unhostile, use "/c unhostile ..." with these same sorts of parameters.
 
"/c hostile nearest" will set you hostile to the nearest person.
"/c hostile radius" will set you hostile to everybody you can see within a fixed radius.
"/c hostile area" will set you hostile to everybody you can see in the area.
"/c hostile all" will set you hostile to everybody on the server.
"/c hostile Thoop" will set you hostile to the character named Thoop.
 
Swivel (angle) -- Swivel chair rotation control.
You must be sitting in a swivel chair for this command to work.
 
Example: "/c swivel 45" will rotate your chair by 45 degrees.
 
Catapult (aim/power_down/power_up/angle_down/angle_up/status) -- Catapult siege equipment control.
Can only be used when you're close enough to operate the catapult.
 
"/c catapult aim" will aim the catapult in your direction.
"/c catapult power_up" will increase the catapult's tension/power.
"/c catapult angle_down" will decrease the catapult's angle.
"/c catapult status" will display a status report on the catapult.
 
Wereshift (human/hybrid/animal) -- Lycanthropy shifting control.
Only usable by lycanthropes.
 
"/c wereshift human" will shift you to human form.
"/c wereshift hybrid" will shift you to hybrid form.
"/c wereshift animal" will shift you to animal form.
 
Knock -- knock on the nearest door; can be heard on other side.
 
"/c knock" will knock on the nearest door.
 
Diagnose -- attempt to diagnose the target's medical condition. (Heal skill based)
 
"/c diagnose Thoop" will have you try to determine whether Thoop is poisoned / diseased / etc.
 
Recall -- recalls all associates (animal companion, summons, familiar, etc) to your location. Can only be used outside of combat.
 
"/c recall" will recall your associates to your location.
 
Drop_Pack -- drop your gold/items into a pack onto the ground.
 
"/c drop_pack" will drop your gold and inventory items.
"/c drop_pack purse" will just drop your gold.
"/c drop_pack everything" will drop your gold, equipped items, and inventory items.
 
Yank_Pack -- yank a subdued/bleeding PC's pack onto the ground. This works on the nearest subdued/bleeding PC.
 
"/c yank_pack" will yank their gold and inventory items into the pack. This takes four seconds.
"/c yank_pack purse" will just yank their gold into the pack. This takes two seconds.
"/c yank_pack quick" will yank their gold and readily-grabbed equipped items (like weapons). This takes three seconds.
"/c yank_pack everything" will yank their gold, equipped items, and inventory. This takes five seconds.
 
Collect_Pack -- automatically pick up all the items in a dropped pack that belongs to you.
[/INDENT]
  • Example: "/c collect_pack" will collect up your pack.
  • Parsed Emotes
  • [/U][/B][/SIZE]You can activate a rudimentary emote parser by typing "/e ". This will be revised and heavily improved soon, but at present you can already make use of such handy features as:

    "/e fall" fall forward.
    "/e fall back" fall backward.
    "/e stand" stand back up again.
    "/e whistles" whistle a jaunty tune.
    "/e bends" reach down to the ground.
    "/e casts" wave your arms about as though casting a spell.
    "/e steals" play the 'sneaky stealing' animation.
    "/e shakes head" play a somewhat-awkward head-shaking animation.

    You can also use "/c toggle parse_emotes" to turn dynamic emote parsing on: this will search through everything that you say in the Talk channel and play emotes that it finds. To avoid having this be annoying, it only responds to specific emotes: *reads* will trigger an animation of you reading a note or scroll, but not *reads the sign*. Once activated, this can be deactivated using the same command.
  • Rolling Dice

  • [/U][/B][/SIZE]You can roll skill checks, ability checks, saves, or just arbitrary dice using either "/c roll " or just speaking "*roll *", where is one of the possibilities below:
  • (skill/ability) check -- Roll a (skill/ability) check.
  • Example: "/c roll int check" will make you roll an Intelligence ability check.
  • Example: "/c roll lore check" will make you roll a Lore skill check.
  • Example: "*roll lore check*" will also make you roll a Lore skill check.
     
    (will/fort/reflex) save -- Roll a (will/fortitude/reflex) save.
  • Example: "/c roll will save" will make you roll a Will save.
     
    (melee/ranged) attack -- Roll a (melee/ranged) attack roll.
  • Example: "/c roll melee attack" will make you roll a melee attack roll (Strength modifier + BAB + d20).
  • Example: "*roll ranged attack*" will make you roll a ranged attack roll (Dexterity modifier + BAB + d20).
     
    #d# -- Roll an arbitrary number of arbitrary dice.
  • Example: "/c roll 3d10" will roll three ten-sided dice and report their sum.
  • Example: "*roll 1d20*" will roll one twenty-sided die and report the result.
  • Example: "/c roll d20" will roll one twenty-sided die and report the result.
  • Example: "*roll 21d7*" will roll twenty-one seven-sided dice and report their sum.
  • Tell Filtering
  • [/U][/B][/SIZE]There is an optional tell filtering system, to allow you to temporarily ignore all tells (except those from DMs). This can be used in circumstances where a flood of OOC tells would break immersion. To use this system, first activate it with the command below, and then turn "silence" mode on and off at will. When in "silence" mode, all tells except those from players on your permit-list, and DMs, will be ignored. You will get a message when a tell is ignored, and the player sending the tell will get a similar message.
  • activate/deactivate -- Turn the system on and off.
  • Example: "/c tell_filter activate" will turn on the system.
  • Example: "/c tell_filter deactivate" will turn off the system.
  • Example: "/c tell_filter toggle active" will toggle whether or not the system is activated.
     
    silence/unsilence -- Turn "silence mode" on and off.
  • Example: "/c tell_filter silence" will turn on silence mode.
  • Example: "/c tell_filter unsilence" will turn off silence mode.
  • Example: "/c tell_filter toggle silence" will toggle silence mode on and off.
     
    permit/unpermit
    -- Configure your permit list.
  • Example: "/c tell_filter permit Arkov Bartelisk" will add Arkov Bartelisk to your permit list.
  • Example: "/c tell_filter unpermit Arkov Bartelisk" will remove Arkov Bartelisk from your permit list.
  • Show Backpack
[INDENT]This can be used to display various 'backpack' items, including quivers, scabbards, and true backpacks.

To reset the backpack, just write /c setbackpack and click enter, or write anything that isn't a following option.
 
/c setbackpack backpack
/c setbackpack backpack2
/c setbackpack quiver
/c setbackpack quiver2
/c setbackpack scabbard
/c setbackpack scabbarda
/c setbackpack scabbardb
/c setbackpack scabbard2
/c setbackpack scabbarda2
/c setbackpack scabbardb2
/c setbackpack greatsword

[/INDENT]And more to come!
If you'd like to see a feature added to this system, please suggest it and I'll attempt to get it implemented.

Howlando

Creating spell notes
You can save your current​ set of spells in the form of a spell note, an item which is stored in your inventory and changes your spell set when used. Having multiple such notes helps you quickly switch between different spell sets. When you stop using a particular spell set, you can simply trash the note.

"/c sb_save name" create a spell note with the given name from your current spell set.