MQ2NetHeal
Overview
Current goals of MQ2NetHeal are to keep information on HEALING and CURING and to provide more flexible way for macros, plugins and huds designers to access those INFORMATIONS. Also MQ2NetHeal act as a MONITOR that REPORT when it detect that someone in your group HEALTH goes beyong a defined point and/or when it detect that you are getting hit by some harmfull EFFECT. All Credits for this shoul go to A_Druid_00 and pinkfloydx33. They provided me the inspiration and the gots, to build this and push it beyong my imagination.




Commands

  ● /netheal on|off|auto
   Turn On/Off Healing Informations
  ● /netheal grab=on|off|auto
   Turn On/Off Gather of Healing Informations.
  ● /netheal send=on|off|auto
   Turn On/Off Broadcasting of Healing Informations.
  ● /netheal hot timems list
   Use for macro only.
  ● /netheal da timems list
   Use for macro only.

  ● /netcure on|off|auto
   Turn On/Off Watching for HarmFull Effects.
  ● /netcure audio=on|off|auto
   Turn On/Off Report Audio Sound.
  ● /netcure popup=on|off|auto
   Turn On/Off Report Popup Style.
  ● /netcure quiet=on|off|auto
   Turn On/Off Report to MQ2 Window.

  ● /networst on|off|auto
   Turn On/Off Watching for Group Health.
  ● /networst audio=on|off|auto
   Turn On/Off Report Audio Sound.
  ● /networst popup=on|off|auto
   Turn On/Off Report Popup Style.
  ● /networst quiet=on|off|auto
   Turn On/Off Report to MQ2 Window.

  ● /worsttarget query
   Target Worst One if Any Matching Query.
  ● /worstcycle query
   Cycle to Next Worst One if Any Matching Query.




INI Settings
Plugin MQ2NetHeal settings could be found in servername_tooname.ini, some of those settigns could only be set by editing the INI file.


INI
More +
[MQ2NetHeal]
Stat=1                            :0(off)1(on) same as /netheal on|off|auto
Grab=1                            :0(off)1(on) same as /netheal grab=on|off|auto
Send=1                            :0(off)1(on) same as /netheal send=on|off|auto

[MQ2NetCure]
Watch=1                           :0(off)1(on) same as /netcure on|off|auto
Audio=1                           :0(off)1(on) same as /netcure audio=on|off|auto
Popup=1                           :0(off)1(on) same as /netcure popup=on|off|auto
Quiet=0                           :0(off)1(on) same as /netcure quiet=on|off|auto
Sound=e:\\mq2\\energy.wav         :Path to Sound File.

[MQ2NetWorst]
Watch=1                           :0(off)1(on) same as /networst on|off|auto
Audio=1                           :0(off)1(on) same as /networst audio=on|off|auto
Popup=1                           :0(off)1(on) same as /networst popup=on|off|auto
Quiet=1                           :0(off)1(on) same as /networst quiet=on|off|auto
Sound=e:\\mq2\\heartbeat.wav      :Path to Sound File.
Query=pc group all radius270 hp80 :default query for networst /worsttarget and /worstcycle.



Top-Level Objects
MQ2NetHeal now have built in Top Level Objects (TLO) that provide data informations that could be used for macro scripting, hud designing or with internal built in user defined conditions. I plan on expending TLO`s with request i get.


NetCure

  ● ${NetCure[X]}
   string return list of harmfull effects.
  ● ${NetCure[X].Detrimentals}
   int return # of Detrimental Spells.
  ● ${NetCure[X].Counters}
   int return # of Counters.
  ● ${NetCure[X].Cursed}
   int return # of Curse Counters.
  ● ${NetCure[X].Diseased}
   int return # of Disease Counters.
  ● ${NetCure[X].Poisoned}
   int return # of Poison Counters.
  ● ${NetCure[X].EnduDrain}
   int return # of Endurance Drain Per Tick.
  ● ${NetCure[X].LifeDrain}
   int return # of Life Drain Per Tick.
  ● ${NetCure[X].ManaDrain
   int return # of Mana Drain Per Tick
  ● ${NetCure[X].Blinded}
   int return # Blind Spells.
  ● ${NetCure[X].CastingLevel}
   int return # Reducing Casting Level.
  ● ${NetCure[X].Charmed}
   int return # Charm Spells.
  ● ${NetCure[X].Feared}
   int return # Fear Spells.
  ● ${NetCure[X].Healing}
   int return # Reducing Healing Effectiveness.
  ● ${NetCure[X].Invulnerable}
   int return # Invulnerability Spells
  ● ${NetCure[X].Mesmerized}
   int return # Memsmerize Spells.
  ● ${NetCure[X].Resistance}
   int return # Resist Debuff Spells.
  ● ${NetCure[X].Rooted}
   int return # Root Spells.
  ● ${NetCure[X].Silenced}
   int return # Silence Spells.
  ● ${NetCure[X].Slowed}
   int return # Slow Spells.
  ● ${NetCure[X].Snared}
   int return # Snare Spells.
  ● ${NetCure[X].SpellCost}
   int return # Affecting Spell Mana Cost.
  ● ${NetCure[X].SpellSlowed}
   int return # Slowing Casting Speed.
  ● ${NetCure[X].SpellDamage}
   int return # Reducing Spell Damage.
  ● ${NetCure[X].Trigger}
   int return # That Trigger Something.

* Where X could be (self,myself,pet,warder,spellid,spellidlist);


NetWorst
  ● ${NetWorst.Affects}
   int return Last # of People in Query Range.
  ● ${NetWorst.Average}
   float return HP Average People in Last Query.
  ● ${NetWorst.Counter}
   int return Last # of People Matching Last Query.
  ● ${NetWorst.Members}
   string return People SpawnID List of Last Query.
  ● ${NetWorst.Request[X]}
   int return # of People Matching That Query.

* Where X is the Query to Perform.
* Valid Keywords are: radius,hp,pet,pc,group,self,fd,da,hot,war,clr,pal,rng,shd,dru,mnk,brd,rog,shm,nec,wiz,
 mag,enc,bst,ber,all or #ID#.
* hp,war,clr,pal,rng,shd,dru,mnk,brd,rog,shm,nec,wiz,mag,enc,bst,ber,all could be use with % ie: shm80 war60.
* order you pass paramters might influence query results.


NetHeal
  ● ${NetHeal[X].Name} or ${NetHeal.Name[Y]}
   string return Name.
  ● ${NetHeal[X].ID} or ${NetHeal.ID[Y]}
   int return SpawnID.
  ● ${NetHeal[X].Distance} or ${NetHeal.Distance[Y]}
   float return Distance.
  ● ${NetHeal[X].PctHPs} or ${NetHeal.PctHPs[Y]}
   int return PctHPs.
  ● ${NetHeal[X].Pet} or ${NetHeal.Pet[Y]}
   bool return This is a Pet?
  ● ${NetHeal[X].Class} or ${NetHeal.Class[Y]}
   int return Class.
  ● ${NetHeal[X].Feign} or ${NetHeal.Feign[Y]}
   bool return This is Feign Class?
  ● ${NetHeal[X].Canni} or ${NetHeal.Canni[Y]}
   bool return This is Cannibalize Class?
  ● ${NetHeal[X].Spawn} or ${NetHeal.Spawn[Y]}
   int return Spawn.
  ● ${NetHeal[X].da} or ${NetHeal.da[Y]}
   int return da timer left.
  ● ${NetHeal[X].hot} or ${NetHeal.hot[Y]}
   int return hot timer left.
  ● ${NetHeal[X].ttl} or ${NetHeal.ttl[Y]}
   int return 60000.
  ● ${NetHeal[X].Updated} or ${NetHeal.Updated[Y]}
   int return how old is This?

* Where X Could be ID or Name.
* Where Y is a Numerical Indice on Last ${NetWorst.Request} Enabling This to Act as Some Kind of Array.


is
  ● ${isNPC[ID]}
   bool return true when Spawn[ID] is a NPC.
  ● ${isNPCPET[ID]}
   bool return true when Spawn[ID] is a PET and Owner is a NPC.
  ● ${isNPCCORPSE[ID]}
   bool return true when Spawn[ID] is a CORPSE and Owner is a NPC.
  ● ${isPC[ID]}
   bool return true when Spawn[ID] is a PC.
  ● ${isPCPET[ID]}
   bool return true when Spawn[ID] is a PET and Owner is a PC.
  ● ${isPCCORPSE[ID]}
   bool return true when Spawn[ID] is a CORPSE and Owner is a PC.
Fri Feb 06, 2009 6:54 pm
Co-Founder (Retired)
can anyone share some examples of this plugin in use?
_________________
Sorvani
Tue Sep 07, 2010 7:48 pm
Senior Project Member
I wish I could. I never personally use it, I had a really simple heal script, and used CH rotation from the EQBCHud in the gold area.
Tue Sep 07, 2010 8:01 pm
Project Lead
Modbot was originally set to use this plugin, but no longer requires it.
I have found that it was poorly implemented and the macro can do better without.
Wed Sep 22, 2010 8:52 pm