I have noticed in some holy/downs I've seen people using Bool alot. What does the Bool function do to assist in holy/downs.
http://www.redguides.com/docs/projects/macroquest/reference/top-level-objects/tlo-bool/
Bool makes it a TRUE/FALSE statement. If the condition inside the brackets [ ] is met, it is true, else it is false, IE ${Bool[${Plugin[MQ2CEcho]}]} if you have the plugin loaded, returns true, otherwise false.
Most of your if statement will take number values to be true/false as well. As in "/if (${SpawnCount[npc targetable radius ${NPCRadius} zradius ${NPCZRadius} noalert 1 playerstate 4]}) /dosomething" Spawncount will give a number based on the condition placed inside the [ ], if there is any number other then 0, the if statement will see it as TRUE. If it is 0 it will see it as FALSE.
- - - Updated - - -
The trick to writing holy/down shits it understanding the format.
Rich (BB code):
holyshit1=/if (conditions are all true) /do something
You need to have a general idea on what you want to have happen, and what sort of condition you want to have before it happens. Then it takes a little research to find out how to tell MQ the conditions you want met.
You will be using MQ2 script language to set the conditions. This involves using TLO, or Top Level Objects. Here is a link to MQ2's source provided TLOs (some plugins provide addtional TLO's, like MQ2Melee and MQ2Cast)
http://www.redguides.com/docs/tlos/
Unfortunately, this is sort of like.... lets say playing with legos. You have to build your "/if () /" statement, and sometimes the blocks you want to use wont always fit right. So there is a lot of researching and testing. It helps to look at what others have posted, as long as you can grasp what it is they were trying to accomplish and how they went about doing it. It can be hard finding examples that someone has taken the trouble to explain, so that others can grasp what was going on (one of the reasons I don't mind expanding on my posts, I know the struggle! =p)
In this caase you are looking to farther utilize a plugin. It always pays to look up what you can about that plugin. Up top RG has a "Plugin List", or you can click:
http://www.redguides.com/community/showthread.php/24833-Redguides-MQ2-Compile-Plugin-List
down that list you will see MQ2Melee, click it or click here:
http://www.redguides.com/community/showthread.php/24780-MQ2Melee
That will give you a general idea on how the plugin works, answer some FAQ's, and provide links to various class specific MQ2Melee INI's that other folks have written and graciously posted to help others out. You may find what you are looking for already there, or something similar enough you can adapt it to fit your needs. If nothing else though, it will give you a plethora of examples to look at.
If you want a deeper understanding, pick out any INI there and try to piece out what the author was trying to accomplish, and research the TLO's they used to accomplish it enough you can grasp what is going on in "plain language" , for instance:
Rich (BB code):
downshit1=/if (${Me.PctEndurance}<25 && ${Me.CombatAbilityReady[${Spell[Breather].RankName}]} && ${Me.CurrentEndurance}>100 && (${Zone.ID}!=344)) /disc ${Spell[Breather].RankName}
This is from my paladin, what is it saying is "if my endurance percentage is below 25%, and my discipline "Breather" (of which ever rank I have) is ready to use, and my current endurance points are over 100, and I am not in the lobby, then activate the discipline "breather" (in what ever rank of the spell I have)
Rich (BB code):
holyshit12=/if (!${Target.Slowed.ID} && ${Me.Inventory[mainhand].ID}!=133167 && !${SpawnCount[pc slower group]} && ${Target.Body.Name.NotEqual[Undead]}) /Bandolier Activate Slow
This one is saying "if the target is not slowed (the ! at the front of a TLO makes the return the opposite, so in this case, if the target has a slow spell, it returns the spell ID number of the spell. As mentioned earlier, in an IF statement any number not a 0 returns TRUE... the ! changes it. The intent here is... if there is no slowed spell ID, the TLO is changed to a TRUE) and my primary hand weapons is not me slow procing hammer, and there is not a slower in my group, and the target is not undead, then use the Bandolier to change to my slow procing weapon.
-----------------
Remember that when you are making a holy/down, you will need to think out your conditions. The plugin will try to fire everything it can constantly, so depending on what you are trying to accomplish, some "common sense" conditions may need to be put in.
Once you have an idea on what you want to try, you can test the TLO segments ingame using /echo, as in "/echo ${SpawnCount[pc slower group]}" and have a slower join your group, see if it returns 1 or not, to know if you wrote the condition correctly.
Give it a few tries... if you can't figure out whats wrong, come post it and I am sure someone will be happy to help. I highly recommend trying to figure it out yourself though, it will open doors to new possibilities later on as you gain a better understanding of what you can and can not do with MQ =)