Top and Left side HUD

Forum for posting custom UIs, portions of UIs, and HUD stuff using MQ's enhancements.

Moderator: MacroQuest Developers

jacensolo
a snow griffon
a snow griffon
Posts: 427
Joined: Wed Feb 14, 2007 8:51 am
Location: Right behind you

Top and Left side HUD

Post by jacensolo » Wed Aug 15, 2007 11:48 pm

Heres a fairly complete HUD I've been working on for a week or so. There are still a few bugs in it, but I'm working those out as I go. It contains all the useful info I could think of to put in it, which I could find a way to do in a HUD. When I play with this HUD, the only permanently open UI windows I use are chat windows, Hotbutton, and Compass. I use UI windows for Inventory/Bank, etc, but almost all regular info is in the HUD.

For my chat windows, I use http://www.eqinterface.com/downloads/fi ... hp?id=4497 because it lets me setup a dedicated input window, and save space on others.

Also, to match the HUD, I use this HUD style compass: http://www.eqinterface.com/downloads/fi ... hp?id=3547
It fits perfectly with the HUD, fits in with default spacing in the gap beneath NetStat bar.

Its setup to display across top and down left side. Heres the code:

Code: Select all

[Main]
Time=3,3,24,000,255,000,${Time.Date} ${Time.Time12}
Macro=3,3,81,000,255,000,${If[${Macro.RunTime},Macro: ${Macro.Name},]}

STR=3,136,1,000,255,000,STR: ${Me.STR}
STA=3,135,11,000,255,000,STA: ${Me.STA}
DEX=3,136,21,000,255,000,DEX: ${Me.DEX}
AGI=3,183,1,000,255,000,AGI: ${Me.AGI}
INT=3,186,11,000,255,000,INT: ${Me.INT}
WIS=3,182,21,000,255,000,WIS: ${Me.WIS}
CHA=3,227,1,000,255,000,CHA: ${Me.CHA}
SvM=3,228,11,000,255,000,SvM: ${Me.svMagic}
SvD=3,229,21,000,255,000,SvD: ${Me.svDisease}
SvP=3,274,1,000,255,000,SvP: ${Me.svPoison}
SvC=3,273,11,000,255,000,SvC: ${Me.svCold}
SvF=3,274,21,000,255,000,SvF: ${Me.svFire}

Exp=3,321,1,000,255,000,EXP: ${Me.PctExp.Int}
AAExp=3,324,11,000,255,000,${If[${Me.Level}>50 || ${Me.Shrouded},AA: ${Me.PctAAExp.Int},]}
AAs=3,318,21,000,255,000,${If[${Me.AAPoints},AAs: ${Me.AAPoints},]}

Loc=3,3,34,000,255,000,Loc: ${Me.Y.Int}, ${Me.X.Int}, ${Me.Z.Int}
State=3,3,70,000,255,000,Status: ${If[${Me.AFK},AFK ,]}${If[${Me.Anonymous},ANON ,]}${If[${Me.Roleplaying},RP ,]}${If[${Me.Trader},Trd ,]}${If[${Me.Buyer},Buy ,]}${If[${Me.Ducking},Duck ,]}${If[${Me.Feigning},FD ,]}${If[${Me.Invis},Invs ,]}${If[${Me.Levitating},Lev ,]}${If[${Me.LFG},LFG ,]}${If[${Me.Sitting},Sit ,]}${If[${Me.Sneaking},Snk ,]}${If[${Me.FeetWet},Swm ,]}${If[${Me.Stunned},Stn,]}

HP=3,360,1,255,000,000,HP: ${Me.CurrentHPs}/${Me.MaxHPs}
Mana=3,365,11,000,000,255,${If[${Me.MaxMana},M: ${Me.CurrentMana}/${Me.MaxMana},]}

HPPct=3,440,1,255,000,000,${If[${Me.State.Equal[DEAD]},DEAD,${Me.PctHPs}]}
ManaPct=3,440,11,000,000,255,${If[${Me.MaxMana},${Me.PctMana},]}

HPGauge=3,460,1,255,000,000,${If[${Me.PctHPs}>1 && ${Me.State.NotEqual[DEAD]},${textgauge.Left[${Math.Calc[${Me.PctHPs}*.6].Int}]},]}
ManaGauge=3,460,11,000,000,255,${If[${Me.MaxMana} && ${Me.PctMana}>1,${textgauge.Left[${Math.Calc[${Me.PctMana}*.6].Int}]},]}

Pet=3,354,21,255,255,000,${If[${Me.Pet.ID},${Me.Pet.CleanName} ${If[${Me.Pet.Distance}>80,LOST,]},]}
PetPct=3,440,21,255,255,000,${If[${Me.Pet.ID},${Me.Pet.PctHPs},]}
PetGauge=3,460,21,255,255,000,${If[${Me.Pet.ID} && ${Me.Pet.PctHPs}>1,${textgauge.Left[${Math.Calc[${Me.Pet.PctHPs}*.6].Int}]},]}

TargetGREY=3,580,1,170,170,170,${If[${Target.ConColor.Equal[GREY]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetGREEN=3,580,1,50,200,50,${If[${Target.ConColor.Equal[GREEN]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetLIGHTBLUE=3,580,1,000,100,255,${If[${Target.ConColor.Equal[LIGHT BLUE]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetBLUE=3,580,1,000,000,255,${If[${Target.ConColor.Equal[BLUE]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetWHITE=3,580,1,255,255,255,${If[${Target.ConColor.Equal[WHITE]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetYELLOW=3,580,1,255,255,000,${If[${Target.ConColor.Equal[YELLOW]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}
TargetRED=3,580,1,255,000,000,${If[${Target.ConColor.Equal[RED]},${If[${Target.ID},${Target.Class.ShortName} ${Target.Level} ${Target.CleanName},]},]}

TargetInfo=3,580,11,000,255,000,${If[${Target.ID},${If[${Target.LineOfSight},LOS,   ]} ${If[${Math.Calc[(${Me.Heading.Degrees}-${Target.HeadingTo.Degrees}+375)%360]}<30,^^^,${If[${Math.Calc[(${Me.Heading.Degrees}-${Target.HeadingTo.Degrees}+360)%360]}<180,<--,-->]}]} ${Target.Distance.Int},]}
TargetPct=3,580,21,255,000,000,${If[${Target.ID},${If[${Target.State.Equal[DEAD]},DEAD,${Target.PctHPs}]},]}
TargetGauge=3,600,21,255,000,000,${If[${Target.ID} && ${Target.PctHPs}>1,${textgauge.Left[${Math.Calc[${Target.PctHPs}*.6].Int}]},]}

TargetofTargetGREY=3,720,1,170,170,170,${If[${Me.TargetOfTarget.ConColor.Equal[GREY]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetGREEN=3,720,1,50,200,50,${If[${Me.TargetOfTarget.ConColor.Equal[GREEN]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetLIGHTBLUE=3,720,1,000,100,255,${If[${Me.TargetOfTarget.ConColor.Equal[LIGHT BLUE]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetBLUE=3,720,1,000,000,255,${If[${Me.TargetOfTarget.ConColor.Equal[BLUE]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetWHITE=3,720,1,255,255,255,${If[${Me.TargetOfTarget.ConColor.Equal[WHITE]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetYELLOW=3,720,1,255,255,000,${If[${Me.TargetOfTarget.ConColor.Equal[YELLOW]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}
TargetofTargetRED=3,720,1,255,000,000,${If[${Me.TargetOfTarget.ConColor.Equal[RED]},${If[${Me.TargetOfTarget.ID},${Me.TargetOfTarget.Class.ShortName} ${Me.TargetOfTarget.Level} ${Me.TargetOfTarget.CleanName},]},]}

TargetofTargetInfo=3,720,11,000,255,000,${If[${Me.TargetOfTarget.ID},${If[${Me.TargetOfTarget.LineOfSight},LOS,   ]} ${If[${Math.Calc[(${Me.Heading.Degrees}-${Me.TargetOfTarget.HeadingTo.Degrees}+375)%360]}<30,^^^,${If[${Math.Calc[(${Me.Heading.Degrees}-${Me.TargetOfTarget.HeadingTo.Degrees}+360)%360]}<180,<--,-->]}]} ${Int[${Me.TargetOfTarget.Distance}]},]}
TargetofTargetPct=3,720,21,255,000,000,${If[${Me.TargetOfTarget.ID},${If[${Me.TargetOfTarget.State.Equal[DEAD]},DEAD,${Me.TargetOfTarget.PctHPs}]},]}
TargetofTargetGauge=3,740,21,255,000,000,${If[${Me.TargetOfTarget.ID} && ${Me.TargetOfTarget.PctHPs}>1,${textgauge.Left[${Math.Calc[${Me.TargetOfTarget.PctHPs}].Int}]},]}

GroupLeader=3,3,91,000,255,000,${If[${Me.Grouped},Leader: ${Group.Leader},]}

GroupF2=3,3,101,000,255,000,${If[${Group.Members}>0,F2: ${If[${Group.Member[1].ID},${Group.Member[1].Class.ShortName} ${Group.Member[1].Level},NIZ]} ${Group.Member[1]},]}
GroupF3=3,3,131,000,255,000,${If[${Group.Members}>1,F3: ${If[${Group.Member[2].ID},${Group.Member[2].Class.ShortName} ${Group.Member[2].Level},NIZ]} ${Group.Member[2]},]}
GroupF4=3,3,161,000,255,000,${If[${Group.Members}>2,F4: ${If[${Group.Member[3].ID},${Group.Member[3].Class.ShortName} ${Group.Member[3].Level},NIZ]} ${Group.Member[3]},]}
GroupF5=3,3,191,000,255,000,${If[${Group.Members}>3,F5: ${If[${Group.Member[4].ID},${Group.Member[4].Class.ShortName} ${Group.Member[4].Level},NIZ]} ${Group.Member[4]},]}
GroupF6=3,3,221,000,255,000,${If[${Group.Members}>4,F6: ${If[${Group.Member[5].ID},${Group.Member[5].Class.ShortName} ${Group.Member[5].Level},NIZ]} ${Group.Member[5]},]}

GroupF2Pct=3,3,111,255,000,000,${If[${Group.Member[1].ID},${If[${Group.Member[1].State.Equal[DEAD]},DEAD,${Group.Member[1].PctHPs}]},]}
GroupF3Pct=3,3,141,255,000,000,${If[${Group.Member[2].ID},${If[${Group.Member[2].State.Equal[DEAD]},DEAD,${Group.Member[2].PctHPs}]},]}
GroupF4Pct=3,3,171,255,000,000,${If[${Group.Member[3].ID},${If[${Group.Member[3].State.Equal[DEAD]},DEAD,${Group.Member[3].PctHPs}]},]}
GroupF5Pct=3,3,201,255,000,000,${If[${Group.Member[4].ID},${If[${Group.Member[4].State.Equal[DEAD]},DEAD,${Group.Member[4].PctHPs}]},]}
GroupF6Pct=3,3,231,255,000,000,${If[${Group.Member[5].ID},${If[${Group.Member[5].State.Equal[DEAD]},DEAD,${Group.Member[5].PctHPs}]},]}

GroupF2Gauge=3,23,111,255,000,000,${If[${Group.Member[1].ID} && ${Group.Member[1].PctHPs}>1,${textgauge.Left[${Math.Calc[${Group.Member[1].PctHPs}*.6]}]},]}
GroupF3Gauge=3,23,141,255,000,000,${If[${Group.Member[2].ID} && ${Group.Member[1].PctHPs}>1,${textgauge.Left[${Math.Calc[${Group.Member[2].PctHPs}*.6]}]},]}
GroupF4Gauge=3,23,171,255,000,000,${If[${Group.Member[3].ID} && ${Group.Member[1].PctHPs}>1,${textgauge.Left[${Math.Calc[${Group.Member[3].PctHPs}*.6]}]},]}
GroupF5Gauge=3,23,201,255,000,000,${If[${Group.Member[4].ID} && ${Group.Member[1].PctHPs}>1,${textgauge.Left[${Math.Calc[${Group.Member[4].PctHPs}*.6]}]},]}
GroupF6Gauge=3,23,231,255,000,000,${If[${Group.Member[5].ID} && ${Group.Member[1].PctHPs}>1,${textgauge.Left[${Math.Calc[${Group.Member[5].PctHPs}*.6]}]},]}

GroupF2PetPct=3,3,121,255,255,000,${If[${Group.Member[1].Pet.ID},${Group.Member[1].Pet.PctHPs},]}
GroupF3PetPct=3,3,151,255,255,000,${If[${Group.Member[2].Pet.ID},${Group.Member[2].Pet.PctHPs},]}
GroupF4PetPct=3,3,181,255,255,000,${If[${Group.Member[3].Pet.ID},${Group.Member[3].Pet.PctHPs},]}
GroupF5PetPct=3,3,211,255,255,000,${If[${Group.Member[4].Pet.ID},${Group.Member[4].Pet.PctHPs},]}
GroupF6PetPct=3,3,241,255,255,000,${If[${Group.Member[5].Pet.ID},${Group.Member[5].Pet.PctHPs},]}

GroupF2PetGauge=3,23,121,255,255,000,${If[${Group.Member[1].Pet.ID},${textgauge.Left[${Math.Calc[${Group.Member[1].Pet.PctHPs}*.6]}]},]}
GroupF3PetGauge=3,23,151,255,255,000,${If[${Group.Member[2].Pet.ID},${textgauge.Left[${Math.Calc[${Group.Member[2].Pet.PctHPs}*.6]}]},]}
GroupF4PetGauge=3,23,181,255,255,000,${If[${Group.Member[3].Pet.ID},${textgauge.Left[${Math.Calc[${Group.Member[3].Pet.PctHPs}*.6]}]},]}
GroupF5PetGauge=3,23,211,255,255,000,${If[${Group.Member[4].Pet.ID},${textgauge.Left[${Math.Calc[${Group.Member[4].Pet.PctHPs}*.6]}]},]}
GroupF6PetGauge=3,23,241,255,255,000,${If[${Group.Member[5].Pet.ID},${textgauge.Left[${Math.Calc[${Group.Member[5].Pet.PctHPs}*.6]}]},]}

LotD=3,861,1,000,255,000,${If[${Me.AltAbility[Lesson of the Devoted].ID},LotD: ${If[${Me.AltAbilityReady[Lesson of the Devoted]},Ready,${Math.Calc[${Me.AltAbilityTimer[Lesson of the Devoted]}/60].Int}]},]}
Iotf=3,930,1,000,255,000,${If[${Me.AltAbility[Infusion of the Faithful].ID},IotF: ${If[${Me.AltAbilityReady[Infusion of the Faithful]},Ready,${Math.Calc[${Me.AltAbilityTimer[Infusion of the Faithful]}/60].Int}]},]}
Jstr=3,861,11,000,255,000,${If[${Me.AltAbility[Chaotic Jester].ID},Jstr: ${If[${Me.AltAbilityReady[Chaotic Jester]},Ready,${Math.Calc[${Me.AltAbilityTimer[Chaotic Jester]}/60].Int}]},]}
Rez=3,930,11,000,255,000,${If[${Me.AltAbility[Expedient Recovery].ID},Rez: ${If[${Me.AltAbilityReady[Expedient Recovery]},Ready,${Math.Calc[${Me.AltAbilityTimer[Expedient Recovery]}/60].Int}]},]}
Serv=3,861,21,000,255,000,${If[${Me.AltAbility[Steadfast Servant].ID},Serv: ${If[${Me.AltAbilityReady[Steadfast Servant]},Ready,${Math.Calc[${Me.AltAbilityTimer[Steadfast Servant]}/60].Int}]},]}
Heal=3,930,21,000,255,000,${If[${Me.AltAbility[Staunch Recovery].ID},Heal: ${If[${Me.AltAbilityReady[Staunch Recovery]},Ready,${Math.Calc[${Me.AltAbilityTimer[Staunch Recovery]}/60].Int}]},]}
Intns=3,861,31,000,255,000,${If[${Me.AltAbility[Intensity of the Resolute].ID},Intns: ${If[${Me.AltAbilityReady[Intensity of the Resolute]},Ready,${Math.Calc[${Me.AltAbilityTimer[Intensity of the Resolute]}/60].Int}]},]}
Gate=3,930,31,000,255,000,${If[${Me.AltAbility[Throne of Heroes].ID},Gate: ${If[${Me.AltAbilityReady[Throne of Heroes]},Ready,${Math.Calc[${Me.AltAbilityTimer[Throne of Heroes]}/60].Int}]},]}

Zone=3,990,1,000,255,000,${If[${SpawnCount[pc]}>1,Zone: ${Math.Calc[${SpawnCount[pc]}-1].Int},]}
Guild=3,1035,1,000,255,000,${If[${Me.Guild.NotEqual[NULL]},${If[${SpawnCount[guild]}>1,Guild: ${Math.Calc[${SpawnCount[guild]}-1].Int},]},]}
GM=3,1080,1,000,255,000,${If[${SpawnCount[gm]},GM: ${SpawnCount[gm]},]}

Tribute=3,1120,1,255,000,000,${If[${Me.TributeActive},Tribute ON,]}

Gem1=3,3,253,000,255,000,${If[${Me.Gem[1].ID},1: ${If[${Me.SpellReady[1]},RDY,TMR]} ${If[${Me.Gem[1].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[1].MyRange}>=${Target.Distance} || ${Me.Gem[1].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[1].Name},]}
Gem2=3,3,263,000,255,000,${If[${Me.Gem[2].ID},2: ${If[${Me.SpellReady[2]},RDY,TMR]} ${If[${Me.Gem[2].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[2].MyRange}>=${Target.Distance} || ${Me.Gem[2].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[2].Name},]}
Gem3=3,3,273,000,255,000,${If[${Me.Gem[3].ID},3: ${If[${Me.SpellReady[3]},RDY,TMR]} ${If[${Me.Gem[3].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[3].MyRange}>=${Target.Distance} || ${Me.Gem[3].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[3].Name},]}
Gem4=3,3,283,000,255,000,${If[${Me.Gem[4].ID},4: ${If[${Me.SpellReady[4]},RDY,TMR]} ${If[${Me.Gem[4].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[4].MyRange}>=${Target.Distance} || ${Me.Gem[4].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[4].Name},]}
Gem5=3,3,293,000,255,000,${If[${Me.Gem[5].ID},5: ${If[${Me.SpellReady[5]},RDY,TMR]} ${If[${Me.Gem[5].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[5].MyRange}>=${Target.Distance} || ${Me.Gem[5].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[5].Name},]}
Gem6=3,3,303,000,255,000,${If[${Me.Gem[6].ID},6: ${If[${Me.SpellReady[6]},RDY,TMR]} ${If[${Me.Gem[6].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[6].MyRange}>=${Target.Distance} || ${Me.Gem[6].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[6].Name},]}
Gem7=3,3,313,000,255,000,${If[${Me.Gem[7].ID},7: ${If[${Me.SpellReady[7]},RDY,TMR]} ${If[${Me.Gem[7].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[7].MyRange}>=${Target.Distance} || ${Me.Gem[7].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[7].Name},]}
Gem8=3,3,323,000,255,000,${If[${Me.Gem[8].ID},8: ${If[${Me.SpellReady[8]},RDY,TMR]} ${If[${Me.Gem[8].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[8].MyRange}>=${Target.Distance} || ${Me.Gem[8].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[8].Name},]}
Gem9=3,3,333,000,255,000,${If[${Me.Gem[9].ID},9: ${If[${Me.SpellReady[9]},RDY,TMR]} ${If[${Me.Gem[9].Mana}>${Me.CurrentMana},OOM,RDY]} ${If[${Me.Gem[9].MyRange}>=${Target.Distance} || ${Me.Gem[9].TargetType.Equal[Self]},RDY,OOR]} ${Me.Gem[9].Name},]}

Buff1=3,3,345,000,255,000,${If[${Me.Buff[1].ID},${If[${Me.Buff[1].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[1].Duration}>10,${Int[${Math.Calc[${Me.Buff[1].Duration}/10]}]}m,${Math.Calc[${Me.Buff[1].Duration}*6]}s]} ${Me.Buff[1].Name},]},]}
Buff2=3,3,355,000,255,000,${If[${Me.Buff[2].ID},${If[${Me.Buff[2].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[2].Duration}>10,${Int[${Math.Calc[${Me.Buff[2].Duration}/10]}]}m,${Math.Calc[${Me.Buff[2].Duration}*6]}s]} ${Me.Buff[2].Name},]},]}
Buff3=3,3,365,000,255,000,${If[${Me.Buff[3].ID},${If[${Me.Buff[3].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[3].Duration}>10,${Int[${Math.Calc[${Me.Buff[3].Duration}/10]}]}m,${Math.Calc[${Me.Buff[3].Duration}*6]}s]} ${Me.Buff[3].Name},]},]}
Buff4=3,3,375,000,255,000,${If[${Me.Buff[4].ID},${If[${Me.Buff[4].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[4].Duration}>10,${Int[${Math.Calc[${Me.Buff[4].Duration}/10]}]}m,${Math.Calc[${Me.Buff[4].Duration}*6]}s]} ${Me.Buff[4].Name},]},]}
Buff5=3,3,385,000,255,000,${If[${Me.Buff[5].ID},${If[${Me.Buff[5].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[5].Duration}>10,${Int[${Math.Calc[${Me.Buff[5].Duration}/10]}]}m,${Math.Calc[${Me.Buff[5].Duration}*6]}s]} ${Me.Buff[5].Name},]},]}
Buff6=3,3,395,000,255,000,${If[${Me.Buff[6].ID},${If[${Me.Buff[6].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[6].Duration}>10,${Int[${Math.Calc[${Me.Buff[6].Duration}/10]}]}m,${Math.Calc[${Me.Buff[6].Duration}*6]}s]} ${Me.Buff[6].Name},]},]}
Buff7=3,3,405,000,255,000,${If[${Me.Buff[7].ID},${If[${Me.Buff[7].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[7].Duration}>10,${Int[${Math.Calc[${Me.Buff[7].Duration}/10]}]}m,${Math.Calc[${Me.Buff[7].Duration}*6]}s]} ${Me.Buff[7].Name},]},]}
Buff8=3,3,415,000,255,000,${If[${Me.Buff[8].ID},${If[${Me.Buff[8].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[8].Duration}>10,${Int[${Math.Calc[${Me.Buff[8].Duration}/10]}]}m,${Math.Calc[${Me.Buff[8].Duration}*6]}s]} ${Me.Buff[8].Name},]},]}
Buff9=3,3,425,000,255,000,${If[${Me.Buff[9].ID},${If[${Me.Buff[9].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[9].Duration}>10,${Int[${Math.Calc[${Me.Buff[9].Duration}/10]}]}m,${Math.Calc[${Me.Buff[9].Duration}*6]}s]} ${Me.Buff[9].Name},]},]}
Buff10=3,3,435,000,255,000,${If[${Me.Buff[10].ID},${If[${Me.Buff[10].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[10].Duration}>10,${Int[${Math.Calc[${Me.Buff[10].Duration}/10]}]}m,${Math.Calc[${Me.Buff[10].Duration}*6]}s]} ${Me.Buff[10].Name},]},]}
Buff11=3,3,445,000,255,000,${If[${Me.Buff[11].ID},${If[${Me.Buff[11].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[11].Duration}>10,${Int[${Math.Calc[${Me.Buff[11].Duration}/10]}]}m,${Math.Calc[${Me.Buff[11].Duration}*6]}s]} ${Me.Buff[11].Name},]},]}
Buff12=3,3,455,000,255,000,${If[${Me.Buff[12].ID},${If[${Me.Buff[12].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[12].Duration}>10,${Int[${Math.Calc[${Me.Buff[12].Duration}/10]}]}m,${Math.Calc[${Me.Buff[12].Duration}*6]}s]} ${Me.Buff[12].Name},]},]}
Buff13=3,3,465,000,255,000,${If[${Me.Buff[13].ID},${If[${Me.Buff[13].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[13].Duration}>10,${Int[${Math.Calc[${Me.Buff[13].Duration}/10]}]}m,${Math.Calc[${Me.Buff[13].Duration}*6]}s]} ${Me.Buff[13].Name},]},]}
Buff14=3,3,475,000,255,000,${If[${Me.Buff[14].ID},${If[${Me.Buff[14].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[14].Duration}>10,${Int[${Math.Calc[${Me.Buff[14].Duration}/10]}]}m,${Math.Calc[${Me.Buff[14].Duration}*6]}s]} ${Me.Buff[14].Name},]},]}
Buff15=3,3,485,000,255,000,${If[${Me.Buff[15].ID},${If[${Me.Buff[15].SpellType.NotEqual[Detrimental]},${If[${Me.Buff[15].Duration}>10,${Int[${Math.Calc[${Me.Buff[15].Duration}/10]}]}m,${Math.Calc[${Me.Buff[15].Duration}*6]}s]} ${Me.Buff[15].Name},]},]}

Buff1DET=3,3,345,255,000,000,${If[${Me.Buff[1].ID},${If[${Me.Buff[1].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[1].Duration}>10,${Int[${Math.Calc[${Me.Buff[1].Duration}/10]}]}m,${Math.Calc[${Me.Buff[1].Duration}*6]}s]} ${Me.Buff[1].Name},]},]}
Buff2DET=3,3,355,255,000,000,${If[${Me.Buff[2].ID},${If[${Me.Buff[2].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[2].Duration}>10,${Int[${Math.Calc[${Me.Buff[2].Duration}/10]}]}m,${Math.Calc[${Me.Buff[2].Duration}*6]}s]} ${Me.Buff[2].Name},]},]}
Buff3DET=3,3,365,255,000,000,${If[${Me.Buff[3].ID},${If[${Me.Buff[3].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[3].Duration}>10,${Int[${Math.Calc[${Me.Buff[3].Duration}/10]}]}m,${Math.Calc[${Me.Buff[3].Duration}*6]}s]} ${Me.Buff[3].Name},]},]}
Buff4DET=3,3,375,255,000,000,${If[${Me.Buff[4].ID},${If[${Me.Buff[4].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[4].Duration}>10,${Int[${Math.Calc[${Me.Buff[4].Duration}/10]}]}m,${Math.Calc[${Me.Buff[4].Duration}*6]}s]} ${Me.Buff[4].Name},]},]}
Buff5DET=3,3,385,255,000,000,${If[${Me.Buff[5].ID},${If[${Me.Buff[5].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[5].Duration}>10,${Int[${Math.Calc[${Me.Buff[5].Duration}/10]}]}m,${Math.Calc[${Me.Buff[5].Duration}*6]}s]} ${Me.Buff[5].Name},]},]}
Buff6DET=3,3,395,255,000,000,${If[${Me.Buff[6].ID},${If[${Me.Buff[6].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[6].Duration}>10,${Int[${Math.Calc[${Me.Buff[6].Duration}/10]}]}m,${Math.Calc[${Me.Buff[6].Duration}*6]}s]} ${Me.Buff[6].Name},]},]}
Buff7DET=3,3,405,255,000,000,${If[${Me.Buff[7].ID},${If[${Me.Buff[7].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[7].Duration}>10,${Int[${Math.Calc[${Me.Buff[7].Duration}/10]}]}m,${Math.Calc[${Me.Buff[7].Duration}*6]}s]} ${Me.Buff[7].Name},]},]}
Buff8DET=3,3,415,255,000,000,${If[${Me.Buff[8].ID},${If[${Me.Buff[8].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[8].Duration}>10,${Int[${Math.Calc[${Me.Buff[8].Duration}/10]}]}m,${Math.Calc[${Me.Buff[8].Duration}*6]}s]} ${Me.Buff[8].Name},]},]}
Buff9DET=3,3,425,255,000,000,${If[${Me.Buff[9].ID},${If[${Me.Buff[9].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[9].Duration}>10,${Int[${Math.Calc[${Me.Buff[9].Duration}/10]}]}m,${Math.Calc[${Me.Buff[9].Duration}*6]}s]} ${Me.Buff[9].Name},]},]}
Buff10DET=3,3,435,255,000,000,${If[${Me.Buff[10].ID},${If[${Me.Buff[10].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[10].Duration}>10,${Int[${Math.Calc[${Me.Buff[10].Duration}/10]}]}m,${Math.Calc[${Me.Buff[10].Duration}*6]}s]} ${Me.Buff[10].Name},]},]}
Buff11DET=3,3,445,255,000,000,${If[${Me.Buff[11].ID},${If[${Me.Buff[11].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[11].Duration}>10,${Int[${Math.Calc[${Me.Buff[11].Duration}/10]}]}m,${Math.Calc[${Me.Buff[11].Duration}*6]}s]} ${Me.Buff[11].Name},]},]}
Buff12DET=3,3,455,255,000,000,${If[${Me.Buff[12].ID},${If[${Me.Buff[12].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[12].Duration}>10,${Int[${Math.Calc[${Me.Buff[12].Duration}/10]}]}m,${Math.Calc[${Me.Buff[12].Duration}*6]}s]} ${Me.Buff[12].Name},]},]}
Buff13DET=3,3,465,255,000,000,${If[${Me.Buff[13].ID},${If[${Me.Buff[13].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[13].Duration}>10,${Int[${Math.Calc[${Me.Buff[13].Duration}/10]}]}m,${Math.Calc[${Me.Buff[13].Duration}*6]}s]} ${Me.Buff[13].Name},]},]}
Buff14DET=3,3,475,255,000,000,${If[${Me.Buff[14].ID},${If[${Me.Buff[14].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[14].Duration}>10,${Int[${Math.Calc[${Me.Buff[14].Duration}/10]}]}m,${Math.Calc[${Me.Buff[14].Duration}*6]}s]} ${Me.Buff[14].Name},]},]}
Buff15DET=3,3,485,255,000,000,${If[${Me.Buff[15].ID},${If[${Me.Buff[15].SpellType.Equal[Detrimental]},DET ${If[${Me.Buff[15].Duration}>10,${Int[${Math.Calc[${Me.Buff[15].Duration}/10]}]}m,${Math.Calc[${Me.Buff[15].Duration}*6]}s]} ${Me.Buff[15].Name},]},]}

Song1=3,3,495,000,255,000,${If[${Me.Song[1].ID},${If[${Me.Song[1].SpellType.NotEqual[Detrimental]},${If[${Me.Song[1].Duration}>10,${Int[${Math.Calc[${Me.Song[1].Duration}/10]}]}m,${Math.Calc[${Me.Song[1].Duration}/6]}s]} ${Me.Song[1].Name},]},]}
Song2=3,3,505,000,255,000,${If[${Me.Song[2].ID},${If[${Me.Song[2].SpellType.NotEqual[Detrimental]},${If[${Me.Song[2].Duration}>10,${Int[${Math.Calc[${Me.Song[2].Duration}/10]}]}m,${Math.Calc[${Me.Song[2].Duration}/6]}s]} ${Me.Song[2].Name},]},]}
Song3=3,3,515,000,255,000,${If[${Me.Song[3].ID},${If[${Me.Song[3].SpellType.NotEqual[Detrimental]},${If[${Me.Song[3].Duration}>10,${Int[${Math.Calc[${Me.Song[3].Duration}/10]}]}m,${Math.Calc[${Me.Song[3].Duration}/6]}s]} ${Me.Song[3].Name},]},]}
Song4=3,3,525,000,255,000,${If[${Me.Song[4].ID},${If[${Me.Song[4].SpellType.NotEqual[Detrimental]},${If[${Me.Song[4].Duration}>10,${Int[${Math.Calc[${Me.Song[4].Duration}/10]}]}m,${Math.Calc[${Me.Song[4].Duration}/6]}s]} ${Me.Song[4].Name},]},]}
Song5=3,3,535,000,255,000,${If[${Me.Song[5].ID},${If[${Me.Song[5].SpellType.NotEqual[Detrimental]},${If[${Me.Song[5].Duration}>10,${Int[${Math.Calc[${Me.Song[5].Duration}/10]}]}m,${Math.Calc[${Me.Song[5].Duration}/6]}s]} ${Me.Song[5].Name},]},]}

Song1DET=3,3,495,255,000,000,${If[${Me.Song[1].ID},${If[${Me.Song[1].SpellType.Equal[Detrimental]},DET ${If[${Me.Song[1].Duration}>10,${Int[${Math.Calc[${Me.Song[1].Duration}/10]}]}m,${Math.Calc[${Me.Song[1].Duration}/6]}s]} ${Me.Song[1].Name},]},]}
Song2DET=3,3,505,255,000,000,${If[${Me.Song[2].ID},${If[${Me.Song[2].SpellType.Equal[Detrimental]},DET ${If[${Me.Song[2].Duration}>10,${Int[${Math.Calc[${Me.Song[2].Duration}/10]}]}m,${Math.Calc[${Me.Song[2].Duration}/6]}s]} ${Me.Song[2].Name},]},]}
Song3DET=3,3,515,255,000,000,${If[${Me.Song[3].ID},${If[${Me.Song[3].SpellType.Equal[Detrimental]},DET ${If[${Me.Song[3].Duration}>10,${Int[${Math.Calc[${Me.Song[3].Duration}/10]}]}m,${Math.Calc[${Me.Song[3].Duration}/6]}s]} ${Me.Song[3].Name},]},]}
Song4DET=3,3,525,255,000,000,${If[${Me.Song[4].ID},${If[${Me.Song[4].SpellType.Equal[Detrimental]},DET ${If[${Me.Song[4].Duration}>10,${Int[${Math.Calc[${Me.Song[4].Duration}/10]}]}m,${Math.Calc[${Me.Song[4].Duration}/6]}s]} ${Me.Song[4].Name},]},]}
Song5DET=3,3,535,255,000,000,${If[${Me.Song[5].ID},${If[${Me.Song[5].SpellType.Equal[Detrimental]},DET ${If[${Me.Song[5].Duration}>10,${Int[${Math.Calc[${Me.Song[5].Duration}/10]}]}m,${Math.Calc[${Me.Song[5].Duration}/6]}s]} ${Me.Song[5].Name},]},]}

jacensolo
a snow griffon
a snow griffon
Posts: 427
Joined: Wed Feb 14, 2007 8:51 am
Location: Right behind you

Post by jacensolo » Thu Aug 16, 2007 7:57 pm

Fixed to remove the use of a TLO I created to make the gauge string. Now, you have to declare ${textgauge} as a variable with the string to use for the gauges. It should be 60 characters long.

TypePun
a lesser mummy
a lesser mummy
Posts: 64
Joined: Mon Dec 18, 2006 4:51 pm
Location: San Francisco

Post by TypePun » Fri Aug 17, 2007 5:50 pm

I like it!

I was also thinking of writing a HUD to display the HP bar. I like your solution though of using a global string.

I'll incorporate some of your ideas and post mine next week. Although, I like most of my information in the center rather than off on the left.

The problem is that it is fixed to the size of my resolution. I played with modifying MQ2HUD to rescale the strings, but that introduces problems of its own. Namely, an element 150 pixels wide in 1600x1200 simply can't be scaled when the resolution changes to 800x600. Well, it can. But it will not render correctly.
(unsigned long) (void *) p;

jacensolo
a snow griffon
a snow griffon
Posts: 427
Joined: Wed Feb 14, 2007 8:51 am
Location: Right behind you

Post by jacensolo » Wed Aug 22, 2007 1:54 pm

If you're referring to the gauges being too big, changing the number used in the ${Math.Calc[]} will scale the gauges.

TypePun
a lesser mummy
a lesser mummy
Posts: 64
Joined: Mon Dec 18, 2006 4:51 pm
Location: San Francisco

Post by TypePun » Wed Aug 22, 2007 7:29 pm

No, I'm not referring specifically to the guages.

Consider an element designed for a resolution of 1600 x 1200.
It has a certain size and location.

Now, you want to render that element in 800 x 600. If you scale it by
1/2, will that work? Perhaps, if you are referring to only one element.

Try it with several elements arranged next to each other. You will see
that a mechanical rendering by 1/2 on your axes does not work.
(unsigned long) (void *) p;

User avatar
Night Hawk
a grimling bloodguard
a grimling bloodguard
Posts: 590
Joined: Fri Aug 13, 2004 4:56 pm

Post by Night Hawk » Wed Aug 22, 2007 10:05 pm

Positions can be changed to make it to "scale" but the fact that the text size is still the same, would make it not scale how you would really want it. I'm guessing that's what you mean.