AC Tool Final

Plugin/Utility Releases and Community Support. Do not release software without the author's consent.
Phinius
Posts: 27

AC Tool Final

Post #1 »

For those that wish to visit the AC Tool website and support forums. Then you may do so at the following url:

actools.cu.cc

AC Tool is finally complete and apparently so is the game. I am posting this update anyway if only for personal reasons to see the project to the end. Let the jokes fly.

Installation Instructions
  1. Download actool.zip
  2. Extract actoolinstall_540.exe and actoolupdate_5405.zip.
  3. Install actoolinstall_540.exe. Do not install to the C:\Program Files or C:\Program Files (x86) folders. AC Tool macros exist within the install folder and will activate the Virtual Store if they use data files. Any changed files may not be accessible from the install folder.
  4. (Optional) Make backup copies of: actool.exe, actool.chm, actp.dll, actoolhook.dll, Commands.xml, and Companion.xml. The spell databases will work with either version but the update contains complete spell lists.
  5. Extract the files in actoolupdate_5405.zip to the location where AC Tool is installed and overwrite all files.
  6. Launch AC Tool. On some versions of Windows, Run as Administrator is needed.

Phinius
Posts: 27

Post #2 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

Information regarding Parameters
Text or String parameters that contain commas (,) can cause AC Tool to incorrectly identify any or all of the parameters passed to any particular command. Three methods exist to handle this. However, not all may be applicable in any particular situation.
  1. Replace the commas with the keyword {Comma}.
  2. Use the partial name method.
  3. Omit the parameter (if optional) and allow AC Tool to use the selected object instead.
Text or String parameters that contain apostrophes (') can cause errors when the command manages filtered databases, but this should be very rare. Four methods exist to handle this. However, not all may be applicable in any particular situation.
  1. Replace the apostrophes with the keyword {Apostrophe}.
  2. Replace single apostrophes with double apostrophes ('').
  3. Use the partial name method.
  4. Omit the parameter (if optional) and allow AC Tool to use the selected object instead.
Information regarding Partial Names
Text or String parameters that specify the name of a player, NPC, or other object allow passing only part of those names. Append an Asterisk (*) to the end of the name to indicate a partial name. Phin*, ini*, nius* will all match to the name Phinius.

Phinius
Posts: 27

Post #3 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

ApplyItem
Use an inventory item on another object. The item being used must be in the characters inventory. No errors are generated if the item cannot be used or cannot be used on the other object.

Syntax
ApplyItem Item, Recipient
  • Item - (Required) - Name, Partial Name, or GUID of the item.
  • Recipient - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the Recipient.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
    • INVALID RECIPIENT = Recipient could not be located
Examples

Code: Select all

ApplyItem Plentiful Healing Kit, Phinius
ApplyItem Plentiful Healing Kit
ApplyItem Plentiful*, Phin*

AutoWield
Equip an item that can be equipped into more than one slot (rings, bracelets, or melee weapons). The item must be in the characters inventory and must be equippable. Tethered melee weapons are always equipped into the offhand slot. Items that are currently equipped in the specified slot will be unequipped. AC Tool will wait while items are unequipped and equipped.

Syntax
AutoWield Item, Slot
  • Item - (Required) - Name, Partial Name, or GUID of the item.
  • Slot - (Optional - Default: Empty or Right) - Slot (0=Right, 1=Left) to which the item is to be equipped. If not specified, the item will be equipped to any open slot or to the right slot when all slots are currently filled.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
Example

Code: Select all

AutoWield Sword, 0
AutoWield Sword
AutoWield Swo*, 1

Phinius
Posts: 27

Post #4 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

CastSpell
Cast a spell by name or ID. The character must have a casting device equipped and be in spell casting stance. The spell does not need to be on any spell bars but it does need to be in the characters spellbook. No check is made to determine if the character has the proper spell components, has a sufficient skill level, or whether the spell can be cast on the Target.

When the CastSpellDelay value is greater than 0, AC Tool will wait until spell casting is complete (_SpellReady is set to 1) or until the CastSpellTimeout value has been reached.

Syntax
CastSpell Spell, Target
  • Spell - (Required) - Spell name or ID.
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID STANCE = The character is not in spellcasting stance
    • INVALID SPELL = The spell is not known by the character
    • INVALID TARGET = Target could not be located
Example

Code: Select all

CastSpell Strength Other I, Phinius
CastSpell Strength Other I
CastSpell 1, Phin*

CastSpellEx
Cast a spell by name or ID. The character must have a casting device equipped and be in spell casting stance. The spell does not need to be on any spell bars but it does need to be in the characters spellbook. No check is made to determine if the character has the proper spell components, has a sufficient skill level, or whether the spell can be cast on the Target.

When the CastSpellDelay value is greater than 0, AC Tool will wait until spell casting is complete (_PointerState is Idle) or until the CastSpellTimeout value has been reached.

Syntax
CastSpellEx Spell, Target
  • Spell - (Required) - Spell name or ID.
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID STANCE = The character is not in spellcasting stance
    • INVALID SPELL = The spell is not known by the character
    • INVALID TARGET = Target could not be located
Example

Code: Select all

CastSpellEx Strength Other I, Phinius
CastSpellEx Strength Other I
CastSpellEx 1, Phin*

CastSpellRaw
Cast a spell by name or ID. The character must have a casting device equipped and be in spell casting stance. The spell does not need to be on any spell bars but it does need to be in the characters spellbook. No check is made to determine if the character has the proper spell components, has a sufficient skill level, or whether the spell can be cast on the Target.

AC Tool does not wait for spell casting to complete and the CastSpellDelay and CastSpellTimeout values are ignored.

Syntax
CastSpellRaw Spell, Target
  • Spell - (Required) - Spell name or ID.
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID STANCE = The character is not in spellcasting stance
    • INVALID SPELL = The spell is not known by the character
    • INVALID TARGET = Target could not be located
Example

Code: Select all

CastSpellRaw Strength Other I, Phinius
CastSpellRaw Strength Other I
CastSpellRaw 1, Phin*

CastSpellRoot
Cast a spell by root name and spell level. The character must have a casting device equipped and be in spell casting stance. The spell does not need to be on any spell bars but it does need to be in the characters spellbook. No check is made to determine if the character has the proper spell components, has a sufficient skill level, or whether the spell can be cast on the Target.

Syntax
CastSpellRoot Root, Level, Target
  • Root - (Required) - Spell root name.
  • Level - (Required) - Spell level.
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID STANCE = The character is not in spellcasting stance
    • INVALID SPELL = The spell is not known by the character
    • INVALID TARGET = Target could not be located
Example

Code: Select all

CastSpellRoot Strength Other, 1, Phinius
CastSpellRoot Strength Other, 1
CastSpellRoot Strength Other, 1, Phin*

CastSpellDelay
Set the amount of time that AC Tool will wait after casting a spell. When a non-zero value is specified, AC Tool will wait until spellcasting is complete and for an additional amount of time specified by this command. Not all CastSpell commands are affected by this value. This value is set to 0 when the macro is started.

Syntax
CastSpellDelay Time
  • Time - (Required) - Amount of time (in milliseconds) that AC Tool should wait once spellcasting is complete.
Example

Code: Select all

CastSpellDelay 1000

CastSpellTimeout
Set the amount of time that AC Tool will wait for spellcasting to complete. When this timeout value has been reached AC Tool continues macro execution even if spellcasting has not completed. This value is set to 5000 when the macro is started.

Syntax
CastSpellTimeout Time
  • Time - (Required) - Amount of time (in milliseconds) that AC Tool should wait for spellcasting to complete.
Example

Code: Select all

CastSpellTimeout 5000

ClearPluginVar
Clear a Companion Variable and reset it to a default value. Not all Companion Variables can be cleared. Some variables represent realtime values which will populate whenever they are referenced.

The default value is based upon the data type that the variable normally contains. String variables are reset to an empty string and numeric variables are reset to 0.

Syntax
ClearPluginVar Variable
  • Variable - (Required) - Name of the variable. Include the underscore (_) character.
Example

Code: Select all

ClearPluginVar _InvInsertItem

CmdAdd
Add a custom command that can be used from the game chat box.

Custom commands function in a similar manner to the /actcmd plugin command but do not require /actcmd to be entered each time. Custom commands generate an ACTCmd macro event with a command name of CustomCommand. {ActCmdCmd} contains the command entered and {ActCmdParam} contains any parameters entered after the command.

Syntax
CmdAdd Command
  • Command - (Required) - Command to add. Include any prefix characters such as /, !, @, #, etc.
Returns
  • {PluginResult}
    • OK = Successful
    • ALREADY EXISTS = The command already exists
    • INVALID COMMAND = The command was not specified
Example

Code: Select all

CmdAdd /buff

// This procedure is executed whenever a custom command is entered in the game.
// Enter /buff in the game chat box.
Procedure CustomCommands on ACTCMD CUSTOMCOMMAND 
   SendText 13, Command= {ActCmdCmd} 
   SendText 13, Params= {ActCmdParam} 
End

CmdClear
Remove all custom commands defined with the CmdAdd command.

Syntax
CmdClear


CmdRemove
Remove a specific custom command defined with the CmdAdd command.

Syntax
CmdRemove Command
  • Command - (Required) - Command to remove. Include any prefix characters such as /, !, @, #, etc.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID COMMAND = Command is not defined or was not specified
Example

Code: Select all

CmdRemove /buff

CommandText
Read a command from the game chat box. AC Tool will wait for the command to be entered.

Syntax
CommandText

Returns
  • _Commandtext
    • Text entered in the game chat box
Example

Code: Select all

CommandText
SendText 13, Text= _CommandText

Phinius
Posts: 27

Post #5 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

DirectChat
Send public chat directly to the game without needing to use Say or SayPaste.

Note: DirectChat can be used to send any command directly to the game.

Syntax
DirectChat Text
  • Text - (Required) - Text to be sent.
Example

Code: Select all

DirectChat hello everyone
DirectChat /help

DirectEmote
Send text as an emote directly to the game without needing to use Say or SayPaste.

Syntax
DirectEmote Text
  • Text - (Required) - Text to be sent.
Example

Code: Select all

DirectEmote looks around

DirectGroupTell
Same as the DirectChat command.


DirectTell
Send a message directly to another player without needing to use Say or SayPaste.

Syntax
DirectTell Player, Text
  • Player - (Required) - Name of the player that will receive the message.
  • Text - (Required) - Text to be sent.
Returns
  • {PluginResult}
    • OK = Successful
    • MISSING PARAM = Player or Text was not specified
Example

Code: Select all

DirectTell Phinius, hello

Distance
Calculate the two-dimensional distance between the character and another object.

Syntax
Distance Target
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • INVALID TARGET = Target could not be located
    • Distance (in meters) between the character and the object
Example

Code: Select all

Distance Storage
Distance Stor*

Distance3D
Calculate the three-dimensional distance between the character and another object.

Syntax
Distance3D Target
  • Target - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the target.
Returns
  • {PluginResult}
    • INVALID TARGET = Target could not be located
    • Distance (in meters) between the character and the object
Example

Code: Select all

Distance3D Storage
Distance3D Stor*

DistanceEx
Calculate the two-dimensional distance between two objects.

Syntax
DistanceEx Object1, Object2
  • Object1 - (Optional - Default: Character) - Name, Partial Name, or GUID of the first object.
  • Object2 - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the second object.
Returns
  • {PluginResult}
    • INVALID TARGET = Target could not be located
    • IDENTICAL PARAMS = Object1 and Object2 are the same
    • Distance (in map units) between the objects
Example

Code: Select all

DistanceEx Storage
DistanceEx Stor*

Distance3DEx
Calculate the three-dimensional distance between two objects.

Syntax
Distance3DEx Object1, Object2
  • Object1 - (Optional - Default: Character) - Name, Partial Name, or GUID of the first object.
  • Object2 - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the second object.
Returns
  • {PluginResult}
    • INVALID TARGET = Target could not be located
    • IDENTICAL PARAMS = Object1 and Object2 are the same
    • Distance (in map units) between the objects
Example

Code: Select all

Distance3DEx Storage
Distance3DEx Stor*

DropItem
Drop an item from the characters inventory. No check is made to determine if the item can actually be dropped.

Syntax
DropItem Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
Example

Code: Select all

DropItem Lugian Axe
DropItem Lugian*

Phinius
Posts: 27

Post #6 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

Enchantment
Determine various types of information about the enchantments on the character.

Count
Count the number of enchantments on the character.

Syntax
Enchantment Count

Returns
  • {PluginResult}
    • Number of enchantments
Example

Code: Select all

Enchantment Count
Affected
Determine the character property affected by an enchantment.

Syntax
Enchantment Spell, Affected
  • Spell - (Required) - Spell name or ID.
Returns
  • {PluginResult}
    • Affected character property ID
Example

Code: Select all

Enchantment Strength Self I, Affected
Adjustment
Determine the adjustment applied to the character property.

Syntax
Enchantment Spell, Adjustment
  • Spell - (Required) - Spell name or ID.
Returns
  • {PluginResult}
    • Character property adjustment amount
Example

Code: Select all

Enchantment Strength Self I, Adjustment
Layer
Determine the number of concurrent layers of an enchantment.

Syntax
Enchantment Spell, Layer
  • Spell - (Required) - Spell name or ID.
Returns
  • {PluginResult}
    • Number of enchantment layers
Example

Code: Select all

Enchantment Strength Self I, Layer
Time
Determine the expiration time of the most recent layer.

Syntax
Enchantment Spell, Time
  • Spell - (Required) - Spell name or ID.
Returns
  • {PluginResult}
    • Enchantment expiration time (in seconds)
Example

Code: Select all

Enchantment Strength Self I, Time
Returns (All Modes)
  • {PluginResult}
    • INVALID COMMAND = The secondary command is not valid
    • INVALID ENCHANTMENT = Spell could not be found

Equip
Equip an item. The item being equipped must be in the characters inventory. For items that can be equipped to more than one slot, the item will be equipped to any open slot or to the right slot if all slots are filled. Tethered melee weapons are always equipped into the offhand, or secondary, slot. Items that are currently equipped in the specified slot will be unequipped before equipping the new item. AC Tool will wait until all items are equipped, and if necessary unequipped.

Syntax
Equip Item
  • Item - (Required) - Name, Partial Name, or GUID of the item to be equipped.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
Example

Code: Select all

Equip Bracelet
Equip Brace*

Equipped
Check whether an item is currently equipped.

Syntax
Equipped Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • EQUIPPED = Item is equipped
    • UNEQUIPPED = Item is unequipped
    • INVALID ITEM = Item could not be located
Example

Code: Select all

Equipped Bracelet
Equipped Brace*

ExamineItem
Examine an item by placing the item in the Decal ID queue. This queue is shared by all plugins which may cause the ID to be delayed. Certain other commands require that items be examined prior to their use.

Syntax
ExamineItem Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • INVALID ITEM = Item could not be located
    • Time the item was last examined
Example

Code: Select all

// Constant to save the ID time returned by ExamineItem
Constants
   TimeSave = 0
End

// Examine the selected item and save the examination time.
ExamineItem _SelectedGUID
SetConst TimeSave = {PluginResult}

// Retrieve the information for the selected item.
GetObjectIDData _SelectedGUID

// {PluginResult} will contain NOT AVAILABLE only when the item has not previously been examined.
// All successive ExamineItem calls will always generate an OK result since the World Object Filter
// still contains the data from the previous ExamineItem call.  To ensure that the _id* Companion
// Variables contain the results of the most recent ExamineItem a loop can be used to compare the time
// returned by the ExamineItem command and the _isLastIDTime variable populated with the
// GetObjectIDData command.  If the times are the same then the most recent ExamineItem has
// not completed.
While _idLastIDTime = $TimeSave and {LoopNo} <= 50
   Delay 50
   GetObjectIDData _SelectedGUID
End

Phinius
Posts: 27

Post #7 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

FaceHeading
Turn the character to face a specific direction. AC Tool does not wait for the character to complete the turn.

Syntax
FaceHeading Heading
  • Heading - (Required) - New heading (in degrees).
Example

Code: Select all

FaceHeading 180

FellowDisband
Disband the characters fellowship. The character must belong to a fellowship and must be the fellowship leader.

Syntax
FellowDisband

Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship
    • NOT LEADER = The character is not the fellowship leader

FellowDismiss
Dismiss a player from a fellowship. The character must belong to a fellowship and must be the fellowship leader.

Syntax
FellowDismiss Player
  • Player - (Required) - Name, Partial Name, or GUID of the player.
Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship
    • NOT LEADER = The character is not the fellowship leader
    • INVALID PLAYER = Player is not a member of the fellowship
Example

Code: Select all

FellowDismiss Phinius
FellowDismiss Phin*

FellowOpen
Set or toggle whether a fellowship is open. The character must belong to a fellowship and must be the fellowship leader.

Syntax
FellowOpen State
  • State - (Optional - Default: Toggle State) - Fellow open state (0=CLosed, 1=Open).
Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship
    • NOT LEADER = The character is not the fellowship leader
Example

Code: Select all

FellowOpen 1
FellowOpen True
FellowOpen Off

FellowPromote
Promote another player within the fellowship to leader. The character must belong to a fellowship and must be the fellowship leader.

Syntax
FellowPromote Player
  • Player - (Required) - Name, Partial Name, or GUID of the player.
Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship
    • NOT LEADER = The character is not the fellowship leader
    • INVALID PLAYER = Player is not a member of the fellowship
Example

Code: Select all

FellowPromote Phinius
FellowPromote Phin*

FellowQuit
Quit or leave a fellowship. The character must belong to a fellowship.

Syntax
FellowQuit

Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship

FellowRecruit
Recruit a player into a fellowship. The character must belong to a fellowship and be the fellowship leader or the fellowship must be open. The player being recruited must be within range (30 meters).

Syntax
FellowRecruit Player
  • Player - (Required) - Name, Partial Name, or GUID of the player.
Returns
  • {PluginResult}
    • OK = Successful
    • NO FELLOWSHIP = The character does not belong to a fellowship
    • NOT LEADER = The character is not the fellowship leader
    • INVALID PLAYER = Player is not a member of the fellowship
    • OUT OF RANGE = Player is out of range
Example

Code: Select all

FellowRecruit Phinius
FellowRecruit Phin*

FindText
Locate the first message within any of the game message logs. This command will reset the FindNextText index for the specified log.

Only the most recent 1000 messages are saved within each log.

Valid message logs: Server, Chat, Tell, Fellow, Allegiance, General, and Trade

Syntax
FindText Log, Text
  • Log - (Required) - Message log name.
  • Text - (Optional - Default: All) - Locate only messages that contain this text. If not specifed, the first message is returned.
Returns
  • {PluginResult}
    • INVALID LOG = Log is an invalid message log
    • TEXT NOT FOUND = A message could not be found that contains Text or the log is empty
    • Message text (maximum 255 characters)
  • {PluginResultAdd}
    • Sender of the message
Example

Code: Select all

FindText Server, resisted
FindText Tell
FindText Allegiance, help

FindNextText
Locate the next message within any of the game message logs.

Only the most recent 1000 messages are saved within each log.

Valid message logs: Server, Chat, Tell, Fellow, Allegiance, General, and Trade

Syntax
FindNextText Log, Text
  • Log - (Required) - Message log name.
  • Text - (Optional - Default: All) - Locate only messages that contain this text. If not specifed, the next message is returned.
Returns
  • {PluginResult}
    • INVALID LOG = Log is an invalid message log
    • TEXT NOT FOUND = A message could not be found that contains Text, the log is empty, or the end of the log has been reached
    • Message text (maximum 255 characters)
  • {PluginResultAdd}
    • Sender of the message
Example

Code: Select all

FindNextText Server, resisted
FindNextText Tell
FindNextText Allegiance, help

FindTextClear
Clear a specific message log.

Valid message logs: Server, Chat, Tell, Fellow, Allegiance, General, and Trade

Syntax
FindTextClear Log
  • Log - (Required) - Message log name.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID LOG = Log is an invalid message log
Example

Code: Select all

FindTextClear Server

Phinius
Posts: 27

Post #8 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

GetAttribEx
Retrieve the current level of an attribute.

Valid attribute IDs:
  • 1 - Strength
  • 2 - Endurance
  • 3 - Quickness
  • 4 - Coordination
  • 5 - Focus
  • 6 - Self
Syntax
GetAttribEx Attribute
  • Attribute - (Required) - Attribute ID.
Returns
  • {PluginResult}
    • Current attribute level
Example

Code: Select all

GetAttribEx 1

GetCharacterData
Retrieve character specific information from the Character Stats Filter. Character information is returned in the _Char* Companion Variables. The character does not need to be examined prior to using this command.

Syntax
GetCharacterData


GetObjectIDData
Retrieve item specific information from the World Object Filter. Item information is returned in the _id* Companion Variables.

Syntax
GetObjectIDData Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • OK = Successful
    • NOT AVAILABLE = Item has not been examined or the examine has not yet completed
Example

Code: Select all

// Constant to save the ID time returned by ExamineItem
Constants
   TimeSave = 0
End

// Examine the selected item and save the examination time.
ExamineItem _SelectedGUID
SetConst TimeSave = {PluginResult}

// Retrieve the information for the selected item.
GetObjectIDData _SelectedGUID

// {PluginResult} will contain NOT AVAILABLE only when the item has not previously been examined.
// All successive ExamineItem calls will always generate an OK result since the World Object Filter
// still contains the data from the previous ExamineItem call.  To ensure that the _id* Companion
// Variables contain the results of the most recent ExamineItem a loop can be used to compare the time
// returned by the ExamineItem command and the _isLastIDTime variable populated with the
// GetObjectIDData command.  If the times are the same then the most recent ExamineItem has
// not completed.
While _idLastIDTime = $TimeSave and {LoopNo} <= 50
   Delay 50
   GetObjectIDData _SelectedGUID
End

GetObjectPhysics
Retrieve physics information for a specific item from the World Object Filter. Item information is returned in the _Physics* Companion Variables. The item does not need to be examined prior to using this command.

Syntax
GetObjectPhysics Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
Example

Code: Select all

GetObjectPhysics Tusker Guard
GetObjectPhysics Tusker*

GetPluginVar
Retrieve the value of a Companion Variable.

Syntax
GetPluginVar Variable
  • Variable - (Required) - Variable name. Exclude the uderscore (_) prefix.
Returns
  • {PluginResult}
    • NOT FOUND = Variable could not be found
    • Value of the variable
Example

Code: Select all

GetPluginVar MyID
GetPluginVar CharAge

GetSkillEx
Retrieve the current level of a skill.

Valid skill IDs:
  • 14 - Arcane Lore
  • 15 - Magic Defense
  • 16 - Mana Conversion
  • 18 - Item Tinkering
  • 19 - Assess Person
  • 20 - Deception
  • 21 - Healing
  • 22 - Jump
  • 23 - Lockpick
  • 24 - Run
  • 27 - Assess Creature
  • 28 - Weapon Tinkering
  • 29 - Armor Tinkering
  • 30 - Magic Item Tinkering
  • 31 - Creature Enchantment
  • 32 - Item Enchantment
  • 33 - Life Magic
  • 34 - War Magic
  • 35 - Leadership
  • 36 - Loyalty
  • 37 - Fletching
  • 38 - Alchemy
  • 39 - Cooking
  • 40 - Salvaging
  • 41 - Two Handed Combat
  • 43 - Void Magic
  • 44 - Heavy Weapons
  • 45 - Light Weapons
  • 46 - Finesse Weapons
  • 47 - Missile Weapons
  • 48 - Shield
  • 50 - Dual Wield
  • 51 - Recklessness
  • 52 - Sneak Attack
  • 53 - Dirty Fighting
  • 54 - Summoning
Syntax
GetSkillEx Skill
  • Skill - (Required) - Skill ID.
Returns
  • {PluginResult}
    • Current skill level
Example

Code: Select all

GetSkillEx 34

GiveItem
Give an inventory item to another player, npc, or interactable object. The item must be in the characters inventory.

Syntax
GiveItem Item, Recipient
  • Item - (Required) - Name, Partial Name, or GUID of the item.
  • Recipient - (Optional - Default: Selected Object) - Name, Partial Name, or GUID of the Recipient.
Returns
  • {PluginResult}
    • OK = Successful
    • INVALID ITEM = Item could not be located
    • INVALID RECIPIENT = Recipient could not be located
Example

Code: Select all

GiveItem Pyreal, Phinius
GiveItem Pyr*, Phin*

Phinius
Posts: 27

Post #9 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

HaveItem
Check whether a specific item is in the characters inventory.

Syntax
HaveItem Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • YES = Item is present
    • NO = Item is not present
Example

Code: Select all

HaveItem Plentiful Healing Kit
HaveItem Plentifu*

Phinius
Posts: 27

Post #10 »

[align=center]Top Base A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Variables[/align]

InventoryCount
Count all stacks of a specific item in the characters inventory.

Syntax
InventoryCount Item
  • Item - (Required) - Name, Partial Name, or GUID of the item.
Returns
  • {PluginResult}
    • INVALID ITEM = Item could not be located
    • Total count of all stacks
Example

Code: Select all

InventoryCount Pyreal
InventoryCount Pyr*