Property Configuration¶
Properties are the base configuration item in BoxHUD and define the TLOs which will be referenced by columns in the table.
There are 3 types of properties:
Observed
NetBots
Spawn
Properties can be configured directly in the HUD configuration tab.
Observed properties¶
Observed properties define a property for which a DanNet observer should be created for each character, to monitor the value of that property from each character.
For ideas on other observed properties to add, check out the MQ TLO docs here: MacroQuest Docs.
NOTE: All TLO members are case sensitive. For example,
me.pcthps
orMe.Pcthps
orMe.PctHps
will fail. OnlyMe.PctHPs
will work. Adding observers on TLO members that don't exist can have annoying consequences. If you're unsure,/echo
it first.
To add a property that should be observed on all characters, just set the property name. For example, to add Me.Level
:
In the boxhud-settings.lua
file, this will be added as:
Properties = {
["Me.PctHPs"] = {
["Name"] = "Me.PctHPs";
["Type"] = "Observed";
};
}
Observing properties which are not defined on a character can impact running macros. To avoid this, there are some optional settings which can be added to Observed property definitions to define conditions for when to create the observer for a given character:
The above image shows how to add a property which should only be observed on certain characters, like only those classes which are running CWTN plugins.
Set the DependsOnName
to Me.Class.ShortName
and DependsOnValue
to the list of classes which have CWTN plugins loaded.
In the boxhud-settings.lua
file, this will be added as:
["Properties"] = {
["CWTN.Mode"] = {
["Name"] = "CWTN.Mode";
["Type"] = "Observed";
["DependsOnName"] = "Me.Class.ShortName";
["DependsOnValue"] = "war,shd,clr,shm,mag,bst,mnk,ber,rog";
["Inverse"] = false;
};
NetBots properties¶
Properties = {
['PctMana'] = {
["Name"] = "PctMana";
["Type"] = "NetBots";
};
}
NetBots properties define a property to get from MQ2NetBots
for each character.
Spawn properties¶
Properties = {
["Distance3D"] = {
["Name"] = "Distance3D";
["Type"] = "Spawn";
};
}
Spawn properties define a property to read from the Spawn data for each toon. These will only work for toons that are in the same zone as only they would have Spawn data available.
Properties summary¶
All 3 types of properties can be mixed together, provided they have unique names. Combining the 4 example properties above, we would have:
Properties = {
['Me.PctHPs'] = { Name='Me.PctHPs', Type='Observed' },
['PctMana'] = { Name='PctMana', Type='NetBots' },
['Distance3D'] = { Name='Distance3D', Type='Spawn' },
['CWTN.Mode'] = {
Name='CWTN.Mode',
Type='Observed',
DependsOnName='Me.Class.ShortName',
DependsOnValue='war,shd,clr,shm,mag,bst,mnk,ber,rog',
Inverse=false,
}
}