Actions

Triggers: Difference between revisions

From Iron Realms Nexus Client Documentation

No edit summary
No edit summary
Line 141: Line 141:
[[File:action-rewrite.png]]
[[File:action-rewrite.png]]


===== Modify variable =====
The modify variable action is used to modify a certain variable - you can assign a fixed value to it, modify (increase / decrease / ...) it by some value, assign the value of another variable to it, or modify it by the value of another variable. You can also assign the matched text or a captured part of it.
===== If =====
This action allows you to branch the execution of your script based on what is going on - you can specify a condition to check, and actions to perform if the condition is, or is not, true. You can compare two variables, or a variable and a fixed value. You can also compare against the matched text or a captured part of it. When the check succeeds or fails, you can choose whether the script should continue running normally, stop, or continue running from a Label action.
===== Repeat =====
This action allows you to repeat a block of actions multiple times. All actions up to a label that you specify will be repeated.
===== Disable this reflex =====
This simple action disables the current reflex.
===== Disable reflex =====
This action disables a reflex of your choice. The reflex must have a name.
===== Enable reflex =====
This action enables a reflex of your choice. The reflex must have a name.
===== Label =====
This action does nothing at all. It is used together with the If, Repeat, and Goto actions to do conditional execution and looping.
===== Goto =====
This action causes a jump to the label of your choice. It is best used inside an If or Repeat block, so you don't create an endless loop (the client does offer protection against these).
===== Wait for =====
This action is essentially a temporary trigger. It allows you to specify a line or pattern to wait for. Once encountered, the script will continue executing normally. If not encountered within the specified timeout, the script is aborted.


===== Call function =====
===== Call function =====

Revision as of 19:53, 26 January 2016

Triggers are a very powerful and versatile type of reflexes. Triggers allow you to have your character automatically react on various events, to hide unimportant lines to ensure that you do not miss anything important, to display warnings and notices on important events, as well as to modify portions of the lines received from the game.

The basic usage of triggers is similar to that of aliases or keybindings. 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). Beyond that, the setup is very similar. For example, you could have your character automatically try to wake upon receiving one of the lines about falling asleep, by entering the line into the Trigger text field and the command into the Send a command field.

How to Create a New Trigger

This page we will demonstrate how to create a new trigger and explains the various settings.

Examples of triggers are linked at the bottom of the page. These examples will help you better understand triggers.


Step 1. Open the settings page and click the 'Reflexes' tab.

Reflexes is a term for all of the settings used to automate the game experience. In order to create a new trigger you must first 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.


Step 3. Triggers Options

There are two main sections of a trigger setting; Matching and Actions.

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 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

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:

  • 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.

You can match text that may not always be the same using regular expressions. For example, you may want to match 'Jeremy enters from the north.'. However, maybe the name or the direction is not always going to be the same. This is more complicated and you can review the examples at the bottom of the page for more information.

Whole Words Only

If checked, the trigger will only match whole words.

For example:

You create a trigger with matching set to 'You have recovered bal'.

In this case, 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', then 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.

Case Sensitive

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 not required for your trigger and has nothing to do with the actual operation of the trigger.

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' unless you have more complicated situations.


Action Options

Once you have matched text from the game, you will want to send an action back.


There are eight different action options.

Send a command

This is the most basic and commonly used action. The trigger will automatically send text back to the game.


Show a notice

The action will just display a notice using whatever colors you choose. Typically players use these to get something to pop out at them so they know it has happened, but they may not want to automatically respond.


Wait

The wait action is usually used in conjunction with other actions. In the example below, we wait 3 seconds and then attack the rat.


Hide the line

You can also opt to just hide any line that matches you trigger. Sometimes this is good for text that you see over and over again and are tired of reading.

This is also refereed to as a gag or gagging.


Highlight

This will highlight the text you have matched. There are more options here to highlight the text around the trigger as well.


Rewrite

A rewrite will change the trigger text into whatever your would like. Players will typically use this to shorten long messages in combat.


Modify variable

The modify variable action is used to modify a certain variable - you can assign a fixed value to it, modify (increase / decrease / ...) it by some value, assign the value of another variable to it, or modify it by the value of another variable. You can also assign the matched text or a captured part of it.


If

This action allows you to branch the execution of your script based on what is going on - you can specify a condition to check, and actions to perform if the condition is, or is not, true. You can compare two variables, or a variable and a fixed value. You can also compare against the matched text or a captured part of it. When the check succeeds or fails, you can choose whether the script should continue running normally, stop, or continue running from a Label action.


Repeat

This action allows you to repeat a block of actions multiple times. All actions up to a label that you specify will be repeated.


Disable this reflex

This simple action disables the current reflex.


Disable reflex

This action disables a reflex of your choice. The reflex must have a name.


Enable reflex

This action enables a reflex of your choice. The reflex must have a name.


Label

This action does nothing at all. It is used together with the If, Repeat, and Goto actions to do conditional execution and looping.


Goto

This action causes a jump to the label of your choice. It is best used inside an If or Repeat block, so you don't create an endless loop (the client does offer protection against these).


Wait for

This action is essentially a temporary trigger. It allows you to specify a line or pattern to wait for. Once encountered, the script will continue executing normally. If not encountered within the specified timeout, the script is aborted.

Call function

Functions are used when you may be doing something more complicated and would like to use some javascript to make it happen. You can read more about functions here: Functions.


Execute Script

Scripts are just like functions, but you write them in the box provided. You can read more about writing scripts and functions here: Functions.

Examples

Balance Recovery Attack: This is an example of a trigger to automatically attack a target when you recover balance.


Regular Expression Help