Difference between revisions of "ForWho"

From ISXOgre
Jump to: navigation, search
(Created page with "== For Who == When issuing commands to OgreBot, most commands take a 'ForWho' parameter. This is how you specify who will execute or process the request you are giving. The m...")
 
(Options)
 
(10 intermediate revisions by 4 users not shown)
Line 4: Line 4:
 
The most common one is 'all', meaning everyone.
 
The most common one is 'all', meaning everyone.
  
 +
=== Options ===
 +
{| class="wikitable"
 +
|-
 +
!Command
 +
!colspan="2"|Parameter & Description
 +
|-
 +
|rowspan="1"|<center>'''all'''</center>||colspan="2"|Everyone
 +
|-
 +
|rowspan="1"|<center>'''auto'''</center>||colspan="2"|Makes use of MCPForWho - if MCPForWho not selected it goes to the default (usually all)
 +
|-
 +
|rowspan="1"|<center>'''groups:#'''</center>||colspan="2"|If you are in raid, the Group specified will do it. For example: 'groups:2' would mean only group 2
 +
|-
 +
|rowspan="1"|<center>'''Class'''</center>||colspan="2"|Your Class. For example: 'guardian' - would mean only Guadians.
 +
|-
 +
|rowspan="1"|<center>'''Ascension Class'''</center>||colspan="2"|Your Class. For example: 'Elementalist' - would mean only Elementalists.
 +
|-
 +
|rowspan="1"|<center>'''Subclass'''</center>||colspan="2"|Your Subclass. For example: 'Crusader' - Would mean only Shadowknight and paladins.
 +
|-
 +
|rowspan="1"|<center>'''Archetype'''</center>||colspan="2"|Your archetype. For example: 'Scout' - Would mean only scouts.
 +
|-
 +
|rowspan="1"|<center>'''Not Archetype'''</center>||colspan="2"|Not your archetype. For example: 'NotFighter' - Would mean anyone who is not a fighter.
 +
|-
 +
|rowspan="1"|<center>'''Melee'''</center>||colspan="2"|If I consider you melee. Refers to Fighters and Scouts.
 +
|-
 +
|rowspan="1"|<center>'''NotMelee'''</center>||colspan="2"|Refers to not being melee. So Mages and Priests.
 +
|-
 +
|rowspan="1"|<center>'''Casters'''</center>||colspan="2"|If I consider you a caster. Refers to Mages and Priests.
 +
|-
 +
|rowspan="1"|<center>'''NotCasters'''</center>||colspan="2"|Refers to not being a caster. So Fighters and Scouts.
 +
|-
 +
|rowspan="1"|<center>'''IGW:___'''</center>||colspan="2"|Stands for: In Group With. Example: 'IGW:Kannkor' - Refers to Kannkor and anyone in the group with Kannkor
 +
|-
 +
|rowspan="1"|<center>'''IGWBN:___'''</center>||colspan="2"|Stands for: In Group With But Not. Example: 'IGWBN:Kannkor' - Refers to anyone in the group with Kannkor, but not Kannkor.
 +
|-
 +
|rowspan="1"|<center>'''IRW:___'''</center>||colspan="2"|Stands for: In Raid With. Example: 'IRW:Kannkor' - Refers to Kannkor and anyone in the raid with Kannkor.
 +
|-
 +
|rowspan="1"|<center>'''IRWBN:___'''</center>||colspan="2"|Stands for: In Group With But Not. Example: 'IRWBN:Kannkor' - Refers to anyone in the raid with Kannkor, but not Kannkor.
 +
|-
 +
|rowspan="1"|<center>'''Not:___'''</center>||colspan="2"|Stands for Not:Player. Example: 'Not:Kannkor' - Refers to anyone who is not Kannkor.
 +
|-
 +
|rowspan="2"|<center>'''Not<classification>'''</center>
 +
|colspan="2"|Stands for Not<classification>. Example: 'Not:priest' - Refers to anyone who is not a priest.
 +
|-
 +
|colspan="2"|Parameters currently supported:
 +
*NotScout
 +
*NotFighter
 +
*NotMage
 +
*NotPriest
 +
*NotMelee (mage or priest)
 +
*NotCaster (scout or fighter)
 +
|-
 +
|}
  
<Todo> Update this...
+
=== Advanced Options ===
 +
You can use "or" by using the delimiter |. This will split the check into multiple pieces. Where if all of the checks in a delimiter are valid, it will return true. See examples below.
 +
 
 +
You can use "and" to perform multiple checks. Prepend the check with +.
 +
 
 +
You can get the opposite value. Prepend the check with -.
 +
 
 +
 
 +
* Example 1
 +
** fighter|scout
 +
*** Fighter or scout
 +
* Example 2
 +
** fighter+groups:1
 +
*** Fighter in group 1 (in a raid situation)
 +
* Example 3
 +
** fighter|scout+groups:1
 +
*** Fighter (doesn't matter what group) OR a scout in group 1.
 +
**** Note: The only way to make this check for groups:1 for fighters or scouts is: fighter+groups:1|scout+groups:1, which would result in a fighter in groups:1 OR a scout in groups:1.
 +
* Example 4
 +
** -fighter
 +
*** TRUE if you are NOT a fighter. FALSE if you ARE a fighter.
 +
* Example 5
 +
** -mage+-scout+-priest
 +
*** TRUE if you are NOT a mage and NOT a scout and NOT a priest. (A really ugly way to say 'fighter').
 +
* Example 6
 +
** fighter+groups:1+-kannkor
 +
*** Fighters in group 1 whom are NOT named 'Kannkor'
 +
* Example 7
 +
** all+-priest
 +
*** Everyone except for priests. (notpriest would be easier)
 +
* Example 8
 +
** all+-kannkor+-user01+-primalz
 +
*** Everyone except for kannkor, user01, and primalz.
 +
* Example 9
 +
** kannkor|user01|primalz
 +
*** Only people named: kannkor|user01|primalz
 +
 
 +
== ForWho Button ==
 +
 
 +
 
 +
* ForWho Button - *When MCP loads, there is now a new window. Labeled 'For Who'.
 +
**This will modify MCP buttons in real time. There's two sections.
 +
***ForWhere (OgreConsole and IRC)
 +
****If NONE of these are selected, then it uses whatever kind of button it was. For example: If you have a "Cast" button, that would use OgreConsole. If you have a "OgreIRC" button, that will use IRC.
 +
****If you select OgreConsole, then ALL buttons will be sent to OgreConsole, including those that are set as 'OgreIRC'.
 +
****Likewise, if you select IRC, all OgreConsole buttons will be sent to IRC. Note: IRC must be set up prior or these commands will be sent to the avoid. IRC is generally used for bot raiding.
 +
***ForWho
 +
****Any button where a ForWho is possible, and it is not specified, will be converted based on your selection. For example:
 +
*****MCP -> Jump. If you do not specify the ForWho (leave it blank), the default is all. However, is you select something in the list, such as [x] Mages only, it will then only apply to mages. You could then select Priests only, and press it again, and only priests would jump.
 +
****There is a [x] Multi-select option, that lets you select more than one option. You need to be smart about this, as you can make impossible scenarios. Such as: [x] Mage only and [x] Priest only. This is an AND, not an OR. If you selected both, it means someone would need to be a MAGE and a PRIEST, which is impossible, so no one would listen to your button. Multi-select isn't used often, but cases where it is used, are usually for a specific group and a specific class. Such as: [x] G3 Only and [x] Mages only. This means Group 3 and Mages only will listen to the command.
 +
[[File:ForWho.PNG]]
 +
*[x] IRC Me Only
 +
**This will be phased out, as using [x] OgreConsole will do the same thing
 +
*When you hide (alt+~) MCP, it will hide the ForWho window also. When you unhide MCP (alt+~), if the ForWho window was visible before it was hidden, it will be visible again. If it was hidden before, it will remain hidden.
 +
*This window is HIDDEN by default. You can click the [ForWho] button (beside the [Setup] button) on the MCP to show it. If you wish for it to always be shown on load, inside of [Setup] is a checkbox that will have it show on load.
 +
*If you wish to specifically invoke this new behaviour, you can do so via command line. Using the keyword "auto" in place of any forwho, and adding a -cfw <ForWhoHere> BEFORE any commands. Example: !c -cfw g1, would result in all commands on that same line, having a default of 'g1' if it's not supplied.
 +
*In order to complete this change, I had to manually change every single OgreConsole/MCP command that exists. That means every single button. It's possible I made a mistake/typo. If ANY button that was working prior, is not working now, please right click it (to edit it), then take a picture and send it to me. Then I can reproduce the button and fix it. Please include a picture of your ForWho UI also, so I know what you have checked.

Latest revision as of 20:44, 8 April 2020

For Who

When issuing commands to OgreBot, most commands take a 'ForWho' parameter. This is how you specify who will execute or process the request you are giving.

The most common one is 'all', meaning everyone.

Options

Command Parameter & Description
all
Everyone
auto
Makes use of MCPForWho - if MCPForWho not selected it goes to the default (usually all)
groups:#
If you are in raid, the Group specified will do it. For example: 'groups:2' would mean only group 2
Class
Your Class. For example: 'guardian' - would mean only Guadians.
Ascension Class
Your Class. For example: 'Elementalist' - would mean only Elementalists.
Subclass
Your Subclass. For example: 'Crusader' - Would mean only Shadowknight and paladins.
Archetype
Your archetype. For example: 'Scout' - Would mean only scouts.
Not Archetype
Not your archetype. For example: 'NotFighter' - Would mean anyone who is not a fighter.
Melee
If I consider you melee. Refers to Fighters and Scouts.
NotMelee
Refers to not being melee. So Mages and Priests.
Casters
If I consider you a caster. Refers to Mages and Priests.
NotCasters
Refers to not being a caster. So Fighters and Scouts.
IGW:___
Stands for: In Group With. Example: 'IGW:Kannkor' - Refers to Kannkor and anyone in the group with Kannkor
IGWBN:___
Stands for: In Group With But Not. Example: 'IGWBN:Kannkor' - Refers to anyone in the group with Kannkor, but not Kannkor.
IRW:___
Stands for: In Raid With. Example: 'IRW:Kannkor' - Refers to Kannkor and anyone in the raid with Kannkor.
IRWBN:___
Stands for: In Group With But Not. Example: 'IRWBN:Kannkor' - Refers to anyone in the raid with Kannkor, but not Kannkor.
Not:___
Stands for Not:Player. Example: 'Not:Kannkor' - Refers to anyone who is not Kannkor.
Not<classification>
Stands for Not<classification>. Example: 'Not:priest' - Refers to anyone who is not a priest.
Parameters currently supported:
  • NotScout
  • NotFighter
  • NotMage
  • NotPriest
  • NotMelee (mage or priest)
  • NotCaster (scout or fighter)

Advanced Options

You can use "or" by using the delimiter |. This will split the check into multiple pieces. Where if all of the checks in a delimiter are valid, it will return true. See examples below.

You can use "and" to perform multiple checks. Prepend the check with +.

You can get the opposite value. Prepend the check with -.


  • Example 1
    • fighter|scout
      • Fighter or scout
  • Example 2
    • fighter+groups:1
      • Fighter in group 1 (in a raid situation)
  • Example 3
    • fighter|scout+groups:1
      • Fighter (doesn't matter what group) OR a scout in group 1.
        • Note: The only way to make this check for groups:1 for fighters or scouts is: fighter+groups:1|scout+groups:1, which would result in a fighter in groups:1 OR a scout in groups:1.
  • Example 4
    • -fighter
      • TRUE if you are NOT a fighter. FALSE if you ARE a fighter.
  • Example 5
    • -mage+-scout+-priest
      • TRUE if you are NOT a mage and NOT a scout and NOT a priest. (A really ugly way to say 'fighter').
  • Example 6
    • fighter+groups:1+-kannkor
      • Fighters in group 1 whom are NOT named 'Kannkor'
  • Example 7
    • all+-priest
      • Everyone except for priests. (notpriest would be easier)
  • Example 8
    • all+-kannkor+-user01+-primalz
      • Everyone except for kannkor, user01, and primalz.
  • Example 9
    • kannkor|user01|primalz
      • Only people named: kannkor|user01|primalz

ForWho Button

  • ForWho Button - *When MCP loads, there is now a new window. Labeled 'For Who'.
    • This will modify MCP buttons in real time. There's two sections.
      • ForWhere (OgreConsole and IRC)
        • If NONE of these are selected, then it uses whatever kind of button it was. For example: If you have a "Cast" button, that would use OgreConsole. If you have a "OgreIRC" button, that will use IRC.
        • If you select OgreConsole, then ALL buttons will be sent to OgreConsole, including those that are set as 'OgreIRC'.
        • Likewise, if you select IRC, all OgreConsole buttons will be sent to IRC. Note: IRC must be set up prior or these commands will be sent to the avoid. IRC is generally used for bot raiding.
      • ForWho
        • Any button where a ForWho is possible, and it is not specified, will be converted based on your selection. For example:
          • MCP -> Jump. If you do not specify the ForWho (leave it blank), the default is all. However, is you select something in the list, such as [x] Mages only, it will then only apply to mages. You could then select Priests only, and press it again, and only priests would jump.
        • There is a [x] Multi-select option, that lets you select more than one option. You need to be smart about this, as you can make impossible scenarios. Such as: [x] Mage only and [x] Priest only. This is an AND, not an OR. If you selected both, it means someone would need to be a MAGE and a PRIEST, which is impossible, so no one would listen to your button. Multi-select isn't used often, but cases where it is used, are usually for a specific group and a specific class. Such as: [x] G3 Only and [x] Mages only. This means Group 3 and Mages only will listen to the command.

ForWho.PNG

  • [x] IRC Me Only
    • This will be phased out, as using [x] OgreConsole will do the same thing
  • When you hide (alt+~) MCP, it will hide the ForWho window also. When you unhide MCP (alt+~), if the ForWho window was visible before it was hidden, it will be visible again. If it was hidden before, it will remain hidden.
  • This window is HIDDEN by default. You can click the [ForWho] button (beside the [Setup] button) on the MCP to show it. If you wish for it to always be shown on load, inside of [Setup] is a checkbox that will have it show on load.
  • If you wish to specifically invoke this new behaviour, you can do so via command line. Using the keyword "auto" in place of any forwho, and adding a -cfw <ForWhoHere> BEFORE any commands. Example: !c -cfw g1, would result in all commands on that same line, having a default of 'g1' if it's not supplied.
  • In order to complete this change, I had to manually change every single OgreConsole/MCP command that exists. That means every single button. It's possible I made a mistake/typo. If ANY button that was working prior, is not working now, please right click it (to edit it), then take a picture and send it to me. Then I can reproduce the button and fix it. Please include a picture of your ForWho UI also, so I know what you have checked.