Triggers: Difference between revisions
From Iron Realms Nexus Client Documentation
(60 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Triggers are | Triggers are a very powerful and versatile type of reflexes. Triggers allow you to automatically react when text (and other events) is sent to your character from the game. | ||
A few brief examples of things triggers can do: | |||
* Automatically send commands to the game when certain text is received. | |||
* Hide unimportant lines you don't want to see. | |||
* Highlight lines of text you do not want to accidentally miss. | |||
* Modify portions of the lines received from the game. | |||
* Save data in a variable for later use. Such as how much gold you picked up or the name of a player that hit you. | |||
The basic usage of triggers is similar to that of [[aliases]] or [[keybinds]]. One thing to be careful of is that by default, triggers can match anywhere in the received text, not only at the beginning (you can change the ''Matching Type'' accordingly, if desired). | |||
== How to Create a New Trigger == | |||
Triggers are a reflex. They are created and managed from the Reflexes tab in the settings window. To open the settings window, click on the gear icon [[File:Settings_icon.jpg|text-bottom]] in the lower right part of your main game screen | |||
=== Step 1. Open the settings page and click the 'Reflexes' tab. === | === Step 1. Open the settings page and click the 'Reflexes' tab. === | ||
To create a new trigger, open your settings window by clicking on the gear icon [[File:Settings_icon.jpg|text-bottom]] in the lower right part of your game screen. This will popup a new window in your browser. | |||
In the settings window, click on the 'Reflexes' tab as shown in the image below. | |||
[[File:tab-reflexes.png|frame|center|Setting window displaying the reflexes tab.]] | |||
=== Step 2. Click the 'Add' Button and select 'Add a Trigger'. === | === Step 2. Click the 'Add' Button and select 'Add a Trigger'. === | ||
There are several different | There are several different reflexes you can create. We want to create a trigger. In order to do this, click the 'Add' button located in the left pane and then click on 'Add a Trigger'. This will create a new, undefined trigger. | ||
Should you want to delete a trigger, you can select the trigger from the list, and then click the 'Remove' button. | |||
[[File:Trigger-create.png]] | [[File:Trigger-create.png|frame|center|Example of creating a new trigger.]] | ||
=== Step 3: Triggers Options. === | |||
There are two main option sections for triggers; '''Matching''' and '''Actions'''. | |||
'''Enabled''' This checkbox marks if the trigger is currently being used by the system. If unchecked, this trigger will not be used. | |||
Matching is used to | '''Matching''' is used to find the text you would like to use for this trigger. When the game sends text to your character that matches, it will automatically send the action defined below it. | ||
Actions | '''Actions''' is what will happen when the trigger matches text from the game. Actions can be used to automatically send text to the game, highlight you want to stand out, create complicated functions, and other things. | ||
[[File:trigger-blank.png]] | [[File:trigger-blank.png|frame|center|This is a blank trigger. It will not do anything until you add text to match and an action to do when that text is matched.]] | ||
== Matching Options Explained == | |||
Matching is used to find text sent from the game to create an action for. You can match entire lines of text, single words, partial lines, and lines of text with variable words. | |||
[[File:trigger-matching.png]] | [[File:trigger-matching.png]] | ||
'''Trigger Text | There are five options for matching text. | ||
=== Trigger Text === | |||
This field is required and contains the text to match. | |||
Examples of Trigger Text: | |||
* You have recovered balance. | |||
* You have recovered | |||
* recovered balance. | |||
* You have recovered balance. | |||
This works hand in hand with the '''Matching Type''' option. See below. | |||
==== Wildcards in Trigger Text ==== | |||
This is a very powerful feature in the Nexus client that you will want to understand. | |||
There are times when you'll want to use wildcard matches in your triggers. Most messages you will want to trigger will vary slightly. Character names, item number, and more. | |||
For example, let's say someone is entering the room you are in. | |||
You can the name in <>'s to allow the trigger to fire. You can also assign the name to a variable. If an example line is ''Jeremy enters from the north'', you could configure your trigger to match on ''<person> enters from the <direction>''. As an added bonus, you can then use @person and @direction as variables in the trigger actions. | |||
These simplified triggers do not work with regular expressions, and if using this advanced feature, you'll want to ensure that you're using the correct syntax. | |||
[[WildcardMatching|Here is a full example of a basic wildcard match.]] | |||
=== Matching Type === | |||
There are four options for matching text. | |||
* '''Contains''': This will match any line that has your trigger text in it. | |||
* '''Begins with''': Will only match a line that starts with your trigger text in it. | |||
* '''Exact match''': Will only match a line that matches exactly like your trigger text. | |||
* '''Regular expression''': This will match any regular expression patterns. This is advanced, but good to learn. | |||
In most cases you will want to use ''Contains'' option unless you have more complicated situations. | |||
=== Whole Words Only === | |||
If checked, the trigger will only match whole words. | |||
For example; you create a trigger with trigger text set to 'You have recovered bal'. | |||
If the game sends the text - You have recovered balance. - it will '''NOT''' match, because 'balance.' is a different whole word than 'bal'. | |||
If I uncheck 'Whole words only', the trigger would work. | |||
In almost all cases you will just want to keep 'Whole words only' turned on and be sure to include the full trigger text. Remember that whole words are separated by spaces and punctuation is considered part of a word. | |||
=== Match Case === | |||
If checked, capitalization must match. | |||
''' | For example, if checked, 'You have recovered balance' is not the same as 'You HAVE reCOvered balance'. | ||
If unchecked, the example above will work. | |||
=== Trigger Name === | |||
(Optional) The name of the trigger. The name is an identifier that will show up in your list of triggers. It is used for organizing your triggers. It is not required for your trigger and has nothing to do with the actual operation of the trigger. | |||
== Action Options Explained == | |||
Once you have matched text from the game, you can initiate a single action, or a series of multiple actions. Actions will fire in the order they are listed. | |||
[[File:trigger-actions.png]] | [[File:trigger-actions.png]] | ||
Above is a simple example of three separate actions that will happen when a trigger fires. | |||
=== Simplified Scripting === | |||
The Nexus client allows for fifteen different [[SimplifiedScripting|simplified scripting]] actions. In most cases instantly returning a command is the best option. However, the Nexus client will allow you to loop through commands, use if statements, wait commands, highlight text, and much more. | |||
All of these options, with full explanations and examples can be found here: [[SimplifiedScripting|simplified scripting]]. | |||
=== Advanced Scripting === | |||
There are two main [[AdvancedScripting|advanced scripting]] options. You can ''Call function'' or you can ''Execute script''. Both options allow for the use of javascript. You can learn more and [[functions]] here and more about [[javascript]] here. | |||
== Examples == | == Examples == | ||
You can view some example triggers on the [[examples]] page. | |||
== Regular Expression Help == | |||
* http://www.regular-expressions.info/ |
Latest revision as of 18:11, 15 September 2016
Triggers are a very powerful and versatile type of reflexes. Triggers allow you to automatically react when text (and other events) is sent to your character from the game.
A few brief examples of things triggers can do:
- Automatically send commands to the game when certain text is received.
- Hide unimportant lines you don't want to see.
- Highlight lines of text you do not want to accidentally miss.
- Modify portions of the lines received from the game.
- Save data in a variable for later use. Such as how much gold you picked up or the name of a player that hit you.
The basic usage of triggers is similar to that of aliases or keybinds. One thing to be careful of is that by default, triggers can match anywhere in the received text, not only at the beginning (you can change the Matching Type accordingly, if desired).
How to Create a New Trigger
Triggers are a reflex. They are created and managed from the Reflexes tab in the settings window. To open the settings window, click on the gear icon in the lower right part of your main game screen
Step 1. Open the settings page and click the 'Reflexes' tab.
To create a new trigger, open your settings window by clicking on the gear icon in the lower right part of your game screen. This will popup a new window in your browser.
In the settings window, click on the 'Reflexes' tab as shown in the image below.
Step 2. Click the 'Add' Button and select 'Add a Trigger'.
There are several different reflexes you can create. We want to create a trigger. In order to do this, click the 'Add' button located in the left pane and then click on 'Add a Trigger'. This will create a new, undefined trigger.
Should you want to delete a trigger, you can select the trigger from the list, and then click the 'Remove' button.
Step 3: Triggers Options.
There are two main option sections for triggers; Matching and Actions.
Enabled This checkbox marks if the trigger is currently being used by the system. If unchecked, this trigger will not be used.
Matching is used to find the text you would like to use for this trigger. When the game sends text to your character that matches, it will automatically send the action defined below it.
Actions is what will happen when the trigger matches text from the game. Actions can be used to automatically send text to the game, highlight you want to stand out, create complicated functions, and other things.
Matching Options Explained
Matching is used to find text sent from the game to create an action for. You can match entire lines of text, single words, partial lines, and lines of text with variable words.
There are five options for matching text.
Trigger Text
This field is required and contains the text to match.
Examples of Trigger Text:
- You have recovered balance.
- You have recovered
- recovered balance.
- You have recovered balance.
This works hand in hand with the Matching Type option. See below.
Wildcards in Trigger Text
This is a very powerful feature in the Nexus client that you will want to understand.
There are times when you'll want to use wildcard matches in your triggers. Most messages you will want to trigger will vary slightly. Character names, item number, and more.
For example, let's say someone is entering the room you are in.
You can the name in <>'s to allow the trigger to fire. You can also assign the name to a variable. If an example line is Jeremy enters from the north, you could configure your trigger to match on <person> enters from the <direction>. As an added bonus, you can then use @person and @direction as variables in the trigger actions.
These simplified triggers do not work with regular expressions, and if using this advanced feature, you'll want to ensure that you're using the correct syntax.
Here is a full example of a basic wildcard match.
Matching Type
There are four options for matching text.
- Contains: This will match any line that has your trigger text in it.
- Begins with: Will only match a line that starts with your trigger text in it.
- Exact match: Will only match a line that matches exactly like your trigger text.
- Regular expression: This will match any regular expression patterns. This is advanced, but good to learn.
In most cases you will want to use Contains option unless you have more complicated situations.
Whole Words Only
If checked, the trigger will only match whole words.
For example; you create a trigger with trigger text set to 'You have recovered bal'.
If the game sends the text - You have recovered balance. - it will NOT match, because 'balance.' is a different whole word than 'bal'.
If I uncheck 'Whole words only', the trigger would work.
In almost all cases you will just want to keep 'Whole words only' turned on and be sure to include the full trigger text. Remember that whole words are separated by spaces and punctuation is considered part of a word.
Match Case
If checked, capitalization must match.
For example, if checked, 'You have recovered balance' is not the same as 'You HAVE reCOvered balance'.
If unchecked, the example above will work.
Trigger Name
(Optional) The name of the trigger. The name is an identifier that will show up in your list of triggers. It is used for organizing your triggers. It is not required for your trigger and has nothing to do with the actual operation of the trigger.
Action Options Explained
Once you have matched text from the game, you can initiate a single action, or a series of multiple actions. Actions will fire in the order they are listed.
Above is a simple example of three separate actions that will happen when a trigger fires.
Simplified Scripting
The Nexus client allows for fifteen different simplified scripting actions. In most cases instantly returning a command is the best option. However, the Nexus client will allow you to loop through commands, use if statements, wait commands, highlight text, and much more.
All of these options, with full explanations and examples can be found here: simplified scripting.
Advanced Scripting
There are two main advanced scripting options. You can Call function or you can Execute script. Both options allow for the use of javascript. You can learn more and functions here and more about javascript here.
Examples
You can view some example triggers on the examples page.