mon control.txt

From OpenKore Wiki
Revision as of 22:34, 26 April 2021 by Conversion script (talk | contribs) (Conversion script moved page Mon control.txt to mon control.txt: Converting page titles to lowercase)
Jump to navigation Jump to search

By default, all monsters are attacked when attackAuto is set. This file allows to specify per-monster behaviour.

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.

<monster name>

Name of a monster, or "all" for default options for monsters not specified in that file.

<attack>

Attack this monster when attackAuto is set.

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. Attack it even while auto-sitting to regain hp/sp.
3 Mob-training.

<teleport>

Avoid this monster by teleporting.

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 for 30 seconds if the monster is on your screen.
>= 4 (4, 5, etc.) Set the time that will be disconnected (in seconds) if the monster is on your screen.

Notes:

  • Only if you will be teleported (value < 0, 1 and 2) to the auto-attack mode enabled.
  • 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>

Treat this monster as a "search monster": When teleportAuto_search is set, auto-attack will be activated only when a certain amount of "search monsters" is found on screen.

<skillcancel>

Attempt to avoid skills being cast by this 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>

Minimum required base level before auto-attacking the monster.

<joblv>

Minimum required job level before auto-attacking the monster.

<hp>

Minimum required current HP before auto-attacking the monster (specified in absolute amount, not in percentage).

<sp>

Minimum required current SP before auto-attacking the monster (specified in absolute amount, not in percentage).

<weight>

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

API

Misc::mon_control

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.