Simple Nuke Macro Request Please

Have a macro idea but not sure where to start? Ask here.

Moderator: MacroQuest Developers

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Simple Nuke Macro Request Please

Post by Chocolate_Rain » Thu Mar 06, 2008 5:47 pm

Could Somone Make me a Simple macro that would cast spell Gelidin Comet untill out of mana then Med till 100% and begin again?

vladd
a ghoul
a ghoul
Posts: 122
Joined: Mon Oct 10, 2005 3:27 pm
Contact:

Post by vladd » Thu Mar 06, 2008 6:51 pm

check the completed macro section I know I seen plenty spell trainers there

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Post by Chocolate_Rain » Thu Mar 06, 2008 7:33 pm

not spell trainer i wanna let wizzie bot nuke on named while i focus on heals

User avatar
fearless
Not a Psychic
Posts: 2684
Joined: Wed Mar 10, 2004 3:52 pm

Post by fearless » Thu Mar 06, 2008 8:22 pm

And continuously casting a spell is different from continuously casting a spell . . . how?
Reading . . . it's not just for me.

[url=http://www.catb.org/~esr/faqs/smart-questions.html]How To Ask Questions The Smart Way[/url]
[quote="Ccomp5950"]Fearless showed me the light, you too shall learn.[/quote]

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Post by Chocolate_Rain » Thu Mar 06, 2008 10:00 pm

spell trainer stops onces your skill is at limit

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 Mar 06, 2008 10:01 pm

Thats why your comp has a backspace key...

fdx90
a lesser mummy
a lesser mummy
Posts: 63
Joined: Sun Jul 31, 2005 6:39 pm

Delete Button 4tw!

Post by fdx90 » Thu Mar 06, 2008 10:15 pm

Image

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Post by Chocolate_Rain » Fri Mar 07, 2008 12:04 am

Please dont be rude just help i asked in vip and they said this would be best place

nytemyst
a grimling bloodguard
a grimling bloodguard
Posts: 578
Joined: Mon Oct 25, 2004 2:29 pm
Location: florida

Post by nytemyst » Fri Mar 07, 2008 12:09 am

You're not asking for help you're asking someone to do the work for you. Two people already gave you the information you need. If you at least make an attempt at trying to do something your self, then people will be more inclined to help you.

Olain
a snow griffon
a snow griffon
Posts: 477
Joined: Sun May 15, 2005 12:45 am

Post by Olain » Fri Mar 07, 2008 12:18 am

download a spell trainer, set max skill lvl in the macro to 400 and it will continue to cast till your oom and med.

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Post by Chocolate_Rain » Fri Mar 07, 2008 12:34 am

i tried and it trys casting other things

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

Post by jacensolo » Fri Mar 07, 2008 12:40 am

Ok... step by step here. What code did you with?

What did you change? (post your modded code).

I am very willing to spend some time helping people get past errors or learn to code macros, but I don't give handouts. I'll show the same effort to fix the problem that you do.

Chocolate_Rain
a lesser mummy
a lesser mummy
Posts: 76
Joined: Thu Mar 06, 2008 3:01 pm

Post by Chocolate_Rain » Fri Mar 07, 2008 1:19 am

#Event SkillUp "You have become better at #1#! (#2#)"
Sub Main
/declare i int local 0
/declare c int local 0
/declare MaxSkill int local 0

/declare SpellSkill[5] string local
/varset SpellSkill[1] Abjuration
/varset SpellSkill[2] Alteration
/varset SpellSkill[3] Conjuration
/varset SpellSkill[4] Divination
/varset SpellSkill[5] Evocation

/varcalc MaxSkill ${Me.Level}*5+5
/if (${MaxSkill} > 405) /varset MaxSkill 235

/for i 1 to ${SpellSkill.Size}
/for c 1 to 8
/if (${Me.Gem[${c}].Skill.Equal[${SpellSkill[${i}]}]}) /goto :Check
/next c
/echo [${Time.Time24}] No ${SpellSkill[${i}]} spells memorized, continuing...
/next i

:Check
/if (${Me.Skill[${SpellSkill[${i}]}]} >= ${MaxSkill}) {
/echo [${Time.Time24}] Your ${SpellSkill[${i}]} skill is already at it's current maximum: ${Me.Skill[${SpellSkill[${i}]}]}...
} else {
/echo [${Time.Time24}] Casting ${Me.Gem[${c}].Name} to skill up ${SpellSkill[${i}]}.
/echo [${Time.Time24}] Current skill in ${SpellSkill[${i}]}: ${Me.Skill[${SpellSkill[${i}]}]}.
:Cast
/doevents
/if ((${Me.Gem[${c}].TargetType.Equal[Single]} || ${Me.Gem[${c}].TargetType.Equal[Targeted AE]}) && !${Target.ID}) /target myself
/if (${Me.AFK}) /afk
/if (${Me.CurrentMana} <= ${Me.Gem[${c}].Mana}) {
/call MedBreak
}
/if (${Me.PctHPs} < 20) {
/call HealBreak
}
/if (${Me.SpellReady[${c}]}) {
/if (!${Me.Standing}) /stand
/cast ${c}
/delay ${Math.Calc[${Me.Gem[${c}].MyCastTime}*10+10].Int} (!${Me.Casting.ID})
/if (${Me.Standing}) /sit
}
:Cursor
/if (${Cursor.ID}) {
/autoinventory
/goto :Cursor
}
/if (${Me.Skill[${SpellSkill[${i}]}]} < ${MaxSkill}) /goto :Cast
}
/next i
/echo [${Time.Time24}] Done..
/call MedBreak
/endmacro
/return

Sub MedBreak
/if (!${Me.AFK}) /afk
:Loop
/if (${Me.Standing}) /sit
/delay 6s
/if (${Me.CurrentMana} < ${Me.MaxMana}) /goto :Loop
/return

Sub HealBreak
/if (!${Me.AFK}) /afk
:Loop
/if (${Me.Standing}) /sit
/delay 6s
/if (${Me.CurrentHPs} < ${Me.MaxHPs}) /goto :Loop
/return

Sub Event_SkillUp(str Line, string TheSkill, int Amount)
/echo [${Time.Time24}] ${TheSkill} increased - ${Amount}...
/return

7rip
decaying skeleton
decaying skeleton
Posts: 4
Joined: Sun Jan 28, 2007 2:01 pm

Post by 7rip » Fri Mar 07, 2008 1:47 am

There are a number of ways to do it but the fast & dirty version would be to manipulate the MaxSkill.

I'd do:

Code: Select all

/if (${MaxSkill} > [color=red][b]1[/color][/b]) /varset MaxSkill [color=red][b]500[/color][/b] 
All that does is tell it that if the maximum skill for your level is greater than 1 then set the MaxSkill variable to 500. When the skill check sees that your less than the maximum skill level (500) it'll pass you through.

Blitter
a hill giant
a hill giant
Posts: 151
Joined: Sat Dec 29, 2007 11:07 pm
Location: Sky

Post by Blitter » Fri Mar 07, 2008 5:20 pm

Code: Select all

#Include spell_routines.inc 

#event Summoned "You have been summoned#*#"

Sub Main(int NukeAt)

/declare summon bool outer 0
:loop  
/doevents
/if (${Me.Sitting}==FALSE) /sit
/if (${Target.Distance}>120}) /keypress esc 
| i changed this line for targeting, you might need to play with it
/if (${Target.ID}==FALSE && ${Bool[${NearestSpawn[1,NPC radius 60 zradius 30].ID}}) /squelch /tar NPC radius 60 zradius 30
/delay 10 
/if (${Target.PctHPs}<${NukeAt}) /call NukeMob
/goto :loop


/endmacro

Sub NukeMob
:loop2 
 /if (${Target.PctHPs}<4) /return
 /if (${Me.PctMana}<10) /return
| nuke 1
 /call cast "Rimelure" gem3 3s
 /delay 6s
| nuke 2
 /call cast "Cold Snap Rk. II" gem4 2s
 /delay 3s
 /goto :loop2
/return

Sub Event_Summoned
  /echo omg summoned, waiting 20s
  /delay 20s
/return
Have a play with this code, you can change the names of the nukes around it will rotate between the 2..you might need to play with the /delays (agro...) and you need to call it with a variable so
/mac nukemacro 80
will start nuking when a nearby mob is below 80pct health.
NB: i did change the targeting line (from my original) but it looks good to me.