Skip to content
Caffeine Docs

Automation

Caffeine comes with a standard Automation plugin for botting.

Common

These are common objects that are used in multiple Automation settings.

Vendor

Caffeine will automatically repair or purchase food/water from a vendor object in your profile based on user settings.

Automation.Common.Vendor:New(vendor_model) : VendorObject

Blackspot

Caffeine will automatically avoid blackspots.

Automation.Common.Blackspot:New(blackspot_model) : BlackspotObject

Hotspot

Hotspots are places that Caffeine will use to search for enemies.

Automation.Common.Hotspot:New(hotspot_model) : HotspotObject

ObjectiveGroup

ObjectiveGroups allow developers to group objectives inside certain conditions.

Automation.Common.ObjectiveGroup:New(objective_group_model) : ObjectiveGroupObject

Quest

These are objects that are used specifically for Quest automation.

Profile

Profiles are what the Automation plugin uses to run.

Automation.Quest.Profile:New(quest_profile) : QuestProfileObject

PickUp

PickUp objects tell the bot to pick up a quest.

Automation.Quest.PickUp:New(pickup_model) : PickUpObject

TurnIn

TurnIn objects tell the bot to turn in a quest.

Automation.Quest.TurnIn:New(turnin_model) : TurnInObject

Objective

Objective objects tell the bot to complete an objective.

Automation.Qyest.Objective:New(objective_model) : ObjectiveObject

There are numerous objective models based on the Type of objective. First, we will go over the common fields, then go into the type-specific fields.

Common

QuestName

The name of the quest.

Types: String?

QuestId

The ID of the quest the objective is for.

Types: String, number

ObjectiveId

This ID of the specific quest objective. For single objective quests, this is typically 1.

Defaults to 1 if not entered.

Types: String, number

Type

The objective type. All of the below types are possible.

Types: String

X, Y, Z, Map

The coordinates and MapID of the objective. If not entered, the bot will search for the objective within render range. It is recommended to add these just in case a user stops the profile mid-way and wants to start from elsewhere in the world.

Map defaults to player’s current map.

Types: String?, number?

IgnoreCombat

Tells the bot not to defend itself for this objective.

Sets Caffeine.IgnoreCombat to true for rotations to utilize.

Types: boolean?

ClickMob

Hotspots

A Caffeine list of HotspotObjects where the bot can find targets.

Types: List[HotSpotObjects]?

MobId

A mob ID or table of mob IDs to search for.

Types: String, number, table[String], table[number]

ClickDist

The distance from which you can click the target.

Defaults to 3 meters.

Types: String?, number?

ClickObject

Hotspots

A Caffeine list of HotspotObjects where the bot can find targets.

Types: List[HotSpotObjects]?

ObjectId

An object ID or table of object IDs to search for.

Types: String, number, table[String], table[number]

ClickDist

The distance from which you can click the target.

Defaults to 3 meters.

Types: String?, number?

ExploreArea

X, Y, and Z are required for ExploreArea.

FollowUnit

FollowName

The name of the unit to follow.

Types: String?

FollowId

The ID of the unit to follow.

Types: String, number

FollowDistance

How far away from the unit you should be, at most.

Defaults to 8 meters.

Types: String?, number?

GossipSelect

Gossipname

The name of the unit to speak with.

Types: String?

GossipType

The type of unit to speak with.

Accepts “unit” or “object”. Defaults to “unit”

Types: String?

GossipId

The ID of the unit to speak with.

Types: String?, number?

GossipOption

The ID to select. Accepts a single ID or a table of IDs to search for.

Will attempt to search for Quest gossips if nothing listed.

Types: String?, number?, table[String]?, table[number]?

KillMob

Hotspots

A Caffeine list of HotspotObjects where the bot can find targets.

Types: List[HotSpotObjects]?

MobId

A mob ID or table of mob IDs to search for.

Types: String, number, table[String], table[number]

UseItemNear

TargetId

The Id of the unit or object to use the item near.

Types: String, number

ItemId

The ID of the item to use.

Types: String, number

ItemDistance

How far away from the target you can use the item.

Defaults to 3 meters.

Types: String?, number?

Grind

Profile