mon control.txt: Difference between revisions

From OpenKore Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
By default, if the option '''attackAuto''' in config.txt is set to '''2''', Kore will attack all monsters that it can engage. The file mon_control.txt allows you to control which monsters Kore should attack and which monsters should be ignored.
By default, if the option [[attackAuto]] in [[config.txt]] is set to '''2''', Kore will attack all monsters that it can engage. The file mon_control.txt allows you to control which monsters Kore should attack and which monsters should be ignored.
Aside from auto-attack, additional options and features can be configured in this file.
Aside from auto-attack, additional options and features can be configured in this file.


Line 9: Line 9:
* designating monster weights to distinguish weak monsters from stronger ones.
* designating monster weights to distinguish weak monsters from stronger ones.


==Syntax==
 
== Syntax ==
The format of this file is simply a set of lines that observes the following syntax:
The format of this file is simply a set of lines that observes the following syntax:
  <monster name> <attack> <teleport> <search> <skillcancel> <lv> <joblv> <hp> <sp> <weight>  
  <monster name> <attack> <teleport> <search> <skillcancel> <lv> <joblv> <hp> <sp> <weight>  


==Details==
''' Note. ''' Alternatively, you can use a TAB character between the monster name and the flags. Use this for monsters that have numbers on their names.
===<monster name>===
 
This is the name of a monster as it appears in tables\monsters.txt. You can use the keyword "all" to set default options for all monsters.
=== Details ===
----
 


===<attack>===
; <[[References#Monster Names|monster name]]>
If auto-attack is enabled (i.e. the option attackAuto in config.txt is set to 1 or 2), this flag controls whether Kore should attack the monster or not. It takes one of the following values:  
: This is the name of a monster. You can use the keyword "all" to set default options for all monsters.
{| class="wikitable" border="1" cellspacing="0"
 
|-style=background-color:#F9F9F9;
 
; <attack>
: If auto-attack is enabled (i.e. the option [[attackAuto]] is set), this flag controls whether Kore should attack the monster or not. It takes one of the following values:  
 
{|border="1" cellpadding="2" cellspacing="1"  
|- style=background-color:#F9F9F9;
!Value
!Value
!Description
!Description
Line 37: Line 45:
|}
|}


'''''Note.''''' If you set this flag to '''2''', Kore will try to attack a monster even while you are auto-sitting to regain hp/sp.
'''Note.''' If you set this flag to '''2''', Kore will try to attack a monster even while you are auto-sitting to regain hp/sp.


===<teleport>===
 
This is a flag that tells if Kore should avoid the monster by teleporting. It takes one of the following values:  
; <teleport>
{| class="wikitable" border="1" cellspacing="0"
: This is a flag that tells if Kore should avoid the monster by teleporting. It takes one of the following values:  
|-style=background-color:#F9F9F9;
 
{|border="1" cellpadding="2" cellspacing="1"  
|- style=background-color:#F9F9F9;
!Value
!Value
!Description
!Description
|-
|-
|align=center|< 0 (-1, -2, etc.)
|align=center|< 0 (-1, -2, etc.)
|Set exact critical distance for this monster. Teleport, if the monster reaches it.
|Set the distance for this monster. Teleport, if the monster reaches it.
|-
|-
|align=center|0
|align=center|0
Line 61: Line 71:
|Disconnect if the monster is on your screen.
|Disconnect if the monster is on your screen.
|}
|}
'''Notes:'''
'''Notes:'''
* You must have the Teleport Skill or Fly Wings in inventory or this option will fail (see also teleportAuto_useSkill in config.txt).
* You must have the Teleport Skill or Fly Wings in inventory or this option will fail (see [[teleportAuto_useSkill]]).
* If you timely teleport due to attack from the monster, you will not receive any damage at all even if it is displayed in the console.
* If you timely teleport due to attack from the monster, you will not receive any damage at all even if it is displayed in the console.


===<search>===
This boolean flag tells if Kore should search for the monster or not. If this flag is set to '''1''', this labels the monster as a "search monster". If the option teleportAuto_search in config.txt is enabled, auto-attack will be deactivated by default and will only be activated when a search monster is found on screen.


===<skillcancel>===
; <search>
This is a boolean flag that tells if Kore should attempt to avoid skills being cast by the monster. Set this flag to '''1''' to enable, or '''0''' to disable. If this is enabled, Kore will either switch target and attack the monster to interrupt its skill casting, or run to the monster's back if it is casting a location-based skill.  
: This boolean flag tells if Kore should search for the monster or not. If this flag is set to '''1''', this labels the monster as a "search monster". If the option [[teleportAuto_search]] is enabled, auto-attack will be deactivated by default and will only be activated when a search monster is found on screen.
 
 
; <skillcancel>
: This is a [[References#Basic Value and Parameter Types|boolean flag]] that tells if Kore should attempt to avoid skills being cast by the monster. If this is enabled, Kore will either switch target and attack the monster to interrupt its skill casting, or run to the monster's back if it is casting a location-based skill.  


===<lv>===
This specifies the minimum required base level before you auto-attack the monster.


===<joblv>===
; <lv>
This specifies the minimum required job level before you auto-attack the monster.  
: This specifies the minimum required base level before you auto-attack the monster.  


===<hp>===
This specifies the minimum required current HP before you auto-attack the monster. Note that this is specified in absolute amount, and not in percentage.


===<sp>===
; <joblv>
This specifies the minimum required current SP before you auto-attack the monster. Note that this is specified in absolute amount, and not in percentage.
: This specifies the minimum required job level before you auto-attack the monster.  


===<weight>===
This is a numeric factor that will be used as the monster's quantity or weight when counting for the number of aggressives. This value should be greater than '''0''' or the monster will be counted as '''1''' aggressive. If you don't want to count the monster as aggressive, specify '''-1'''. This value supports floating point numbers (eg 1.8237402).


==Examples==
; <hp>
The example below will make Kore attack and search for Elder Willows and Eggyras, but ignore Bigfoots, Willows and Poporings.<br/>
: This specifies the minimum required current HP before you auto-attack the monster.
 
'''Note.''' This is specified in absolute amount, and not in percentage.
 
 
; <sp>
: This specifies the minimum required current SP before you auto-attack the monster.
 
'''Note.''' This is specified in absolute amount, and not in percentage.
 
 
; <weight>
: This is a numeric factor that will be used as the monster's quantity or weight when counting for the number of aggressives. This value should be greater than '''0''' or the monster will be counted as '''1''' aggressive. If you don't want to count the monster as aggressive, specify '''-1'''. This value supports floating point numbers (eg 1.8237402).
 
 
== Examples ==
 
The example below will make Kore attack and search for Elder Willows and Eggyras, but ignore Bigfoots, Willows and Poporings.
 
Kore will also try to avoid skills casted by Elder Willows (Fire Bolt).  
Kore will also try to avoid skills casted by Elder Willows (Fire Bolt).  
  Elder Willow 1 0 1 1
  Elder Willow 1 0 1 1
  Eggyra 1 0 1
  Eggyra 1 0 1
Line 94: Line 120:
  Willow 0 0 0
  Willow 0 0 0
  Poporing 0 0 0
  Poporing 0 0 0


The following example shows a typical way of how monster weight is used:  
The following example shows a typical way of how monster weight is used:  
Line 103: Line 130:
  Hydra 1 0 0 0 0 0 0 0 0.2
  Hydra 1 0 0 0 0 0 0 0 0.2
  Merman 1 0 0 0 0 0 0 0 2
  Merman 1 0 0 0 0 0 0 0 2
With the configuration above, if five Hydras and two Sword Fishes attack the bot, it will not teleport away since the aggressives are counted as (5 * 0.2) + (2 * 1) = 3.
With the configuration above, if five Hydras and two Sword Fishes attack the bot, it will not teleport away since the aggressives are counted as (5 * 0.2) + (2 * 1) = 3.
However, two Marcs and two Merman will make it teleport away because it sees (2 * 1) + (2 * 2) = 6 aggressives.  
However, two Marcs and two Merman will make it teleport away because it sees (2 * 1) + (2 * 2) = 6 aggressives.  


'''''Note.''''' Lines that begin with the pound sign (#) are comment lines. They are ignored by Openkore.
'''Note.''' Lines that begin with the pound sign (#) are comment lines. They are ignored by Openkore.
 


[[Category:Control]]
[[Category:Control]]

Revision as of 02:39, 14 December 2009

By default, if the option attackAuto in config.txt is set to 2, Kore will attack all monsters that it can engage. The file mon_control.txt allows you to control which monsters Kore should attack and which monsters should be ignored. Aside from auto-attack, additional options and features can be configured in this file.

These include:

  • teleporting away from monsters
  • teleporting to search for monsters
  • avoiding skills being casted by monsters
  • defining minimum level, joblevel, hp and sp requirements that should be met before attacking a monster
  • designating monster weights to distinguish weak monsters from stronger ones.


Syntax

The format of this file is simply a set of lines that observes the following syntax:

<monster name> <attack> <teleport> <search> <skillcancel> <lv> <joblv> <hp> <sp> <weight> 

Note. Alternatively, you can use a TAB character between the monster name and the flags. Use this for monsters that have numbers on their names.

Details



<monster name>
This is the name of a monster. You can use the keyword "all" to set default options for all monsters.


<attack>
If auto-attack is enabled (i.e. the option attackAuto is set), this flag controls whether Kore should attack the monster or not. It takes one of the following values:
Value Description
-1 Ignore monster.
0 Do not auto-attack monster, but retaliate when it attacks you.
1 Auto-attack monster (default).
2 Always consider monster as aggressive.

Note. If you set this flag to 2, Kore will try to attack a monster even while you are auto-sitting to regain hp/sp.


<teleport>
This is a flag that tells if Kore should avoid the monster by teleporting. It takes one of the following values:
Value Description
< 0 (-1, -2, etc.) Set the distance for this monster. Teleport, if the monster reaches it.
0 Do not teleport.
1 Teleport if the monster is on screen.
2 Teleport if the monster's attack will damage you.
3 Disconnect if the monster is on your screen.

Notes:

  • You must have the Teleport Skill or Fly Wings in inventory or this option will fail (see teleportAuto_useSkill).
  • If you timely teleport due to attack from the monster, you will not receive any damage at all even if it is displayed in the console.


<search>
This boolean flag tells if Kore should search for the monster or not. If this flag is set to 1, this labels the monster as a "search monster". If the option teleportAuto_search is enabled, auto-attack will be deactivated by default and will only be activated when a search monster is found on screen.


<skillcancel>
This is a boolean flag that tells if Kore should attempt to avoid skills being cast by the monster. If this is enabled, Kore will either switch target and attack the monster to interrupt its skill casting, or run to the monster's back if it is casting a location-based skill.


<lv>
This specifies the minimum required base level before you auto-attack the monster.


<joblv>
This specifies the minimum required job level before you auto-attack the monster.


<hp>
This specifies the minimum required current HP before you auto-attack the monster.

Note. This is specified in absolute amount, and not in percentage.


<sp>
This specifies the minimum required current SP before you auto-attack the monster.

Note. This is specified in absolute amount, and not in percentage.


<weight>
This is a numeric factor that will be used as the monster's quantity or weight when counting for the number of aggressives. This value should be greater than 0 or the monster will be counted as 1 aggressive. If you don't want to count the monster as aggressive, specify -1. This value supports floating point numbers (eg 1.8237402).


Examples

The example below will make Kore attack and search for Elder Willows and Eggyras, but ignore Bigfoots, Willows and Poporings.

Kore will also try to avoid skills casted by Elder Willows (Fire Bolt).

Elder Willow 1 0 1 1
Eggyra 1 0 1
Bigfoot 0 0 0
Willow 0 0 0
Poporing 0 0 0


The following example shows a typical way of how monster weight is used:

# In config.txt:
teleportAuto_minAggressives 6
teleportAuto_minAggressivesInLock 6

# In mon_control.txt:
Hydra 1 0 0 0 0 0 0 0 0.2
Merman 1 0 0 0 0 0 0 0 2

With the configuration above, if five Hydras and two Sword Fishes attack the bot, it will not teleport away since the aggressives are counted as (5 * 0.2) + (2 * 1) = 3. However, two Marcs and two Merman will make it teleport away because it sees (2 * 1) + (2 * 2) = 6 aggressives.

Note. Lines that begin with the pound sign (#) are comment lines. They are ignored by Openkore.