Created: 11/01/2024, 12:05:06 AM Updated: 11/13/2024, 07:08:57 PM View Change History
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15@setvar! myTankBody 169
16
17
18
19@setvar! releaseAndKillTarget 0
20
21
22
23@setvar! miniHeal 1
24@setvar! greaterHeal 1
25@setvar! cureSpell 1
26
27
28
29@setvar! magicReflect 1
30@setvar! bless 0
31@setvar! armorReflect 1
32@setvar! protectionSpell 0
33@setvar! miniumManaToBuff 50
34
35
36
37@setvar! nobleSacrifice 1
38@setvar! holyLight 1
39
40
41
42@setvar! drinkStr 1
43@setvar! drinkAgility 0
44@setvar! drinkMagicResist 0
45@setvar! drinkHeal 1
46@setvar! drinkCure 1
47@setvar! drinkRefresh 1
48
49@setvar! strengthLowerThan 100
50@setvar! staminaLowerThan 80
51
52
53@setvar! healingPotCD 11000
54
55
56
57@setvar! lowDiff 20
58@setvar! medDiff 30
59@setvar! highDiff 50
60@setvar! extremeDiff 60
61@setvar! criticalDiff 75
62
63
64
65@setvar! myTamingTarget 0
66@setvar! targetReleased 0
67
68@setvar! holyPoints 0
69
70@setvar nobleCD 5000
71settimer nobleTimer nobleCD
72
73@setvar! maxwaittimeinms 650
74
75
76
77@setvar! autoHealMessageCD 4500
78settimer autoHealMessageTimer 0
79
80@setvar! guardMessageCD 5500
81settimer guardMessageTimer guardMessageCD
82
83
84
85@setvar! pouchMessageCD 5000
86settimer pouchMessageTimer pouchMessageCD
87
88@setvar! aidsMessageCD 4000
89settimer aidsMessageTimer aidsMessageCD
90
91@setvar! whiteMessageCD 3000
92settimer whiteMessageTimer whiteMessageCD
93
94@setvar! blueMessageCD 3000
95settimer blueMessageTimer blueMessageCD
96
97@setvar! blackMessageCD 2500
98settimer blackMessageTimer blackMessageCD
99
100@setvar! orangeMessageCD 2000
101settimer orangeMessageTimer orangeMessageCD
102
103@setvar! yellowMessageCD 1500
104settimer yellowMessageTimer yellowMessageCD
105
106@setvar! redMessageCD 1000
107settimer redMessageTimer redMessageCD
108
109
110
111@setvar! magicReflectCD 15000
112settimer magicReflectTimer 15000
113
114@setvar! armorReflectCD 15000
115settimer armorReflectTimer 15000
116
117@setvar! protectionCD 15000
118settimer protectionTimer 15000
119
120if nobleSacrifice = 1 or holyLight = 1
121 if findtype 'paladin spellbook' backpack
122 yell '[chivalryhotbar'
123 while not gumpexists 1387930325
124 yell '[chivalryhotbar'
125 waitforgump 1387930325 maxwaittimeinms
126 endwhile
127 endif
128endif
129
130hotkey 'set last target'
131
132while targetexists
133endwhile
134
135if not find lasttarget ground -1 -1 12
136 overhead 'No target nearby!' 34
137else
138 @setvar! myTamingTarget lasttarget
139
140 if findtype myTankBody ground -1 -1 12 as tanky
141 @setvar! myTankBody tanky
142
143 say 'all kill'
144 waitfortarget 1000
145 target myTamingTarget
146
147 warmode on
148 warmode off
149
150 wait 3333
151 say 'all follow me'
152 else
153 sysmsg "No tank found!" 34
154 stop
155 endif
156
157 while not dead
158
159 if findtype 'clean bandage%s%' backpack
160 if not bandaging
161 dclicktype 3617
162 waitfortarget 1000
163 target myTankBody
164 wait 200
165 endif
166 else
167 if timer aidsMessageTimer > aidsMessageCD
168 overhead "Out of bandages" 34
169 settimer aidsMessageTimer 0
170 endif
171 endif
172
173 if not dead myTamingTarget and find myTamingTarget ground -1 -1 12 and 0 = targetReleased
174 skill 'taming'
175 waitfortarget 1000
176 target myTamingTarget
177 else
178 overhead "Taming Finished!" 88
179 stop
180 endif
181
182 if noto myTamingTarget = "friend"
183 if 1 = releaseAndKillTarget
184 menu myTamingTarget 9
185 waitforgump 2426193729
186 gumpresponse 1
187 say 'all kill'
188 waitfortarget 1000
189 target myTamingTarget
190 wait 200
191 attack myTamingTarget
192 @setvar! targetReleased 1
193 else
194 overhead "Taming Finished!" 88
195 stop
196 endif
197 endif
198
199
200
201 while diffhits >= lowDiff or paralyzed or poisoned
202 if timer autoHealMessageTimer > autoHealMessageCD
203 overhead "* auto-healing *" 11
204 settimer autoHealMessageTimer 0
205 endif
206
207
208 if paralyzed
209 if findtype "pouch" backpack 38
210 yell "[pouch"
211 wait 200
212 else
213 if timer pouchMessageTimer > pouchMessageCD
214 overhead "Out of Pouches!" 34
215 settimer pouchMessageTimer 0
216 endif
217 endif
218 endif
219
220
221
222 if diffhits >= 1 and not bandaging
223 if skill 'healing' >= 50 or skill "veterinary" >= 50
224
225 if findtype 'veterinary supplies' backpack
226 dclicktype 25750
227 wait 200
228 elseif findtype 'clean bandage%s%' backpack
229
230 if targetexists
231 hotkey 'cancel current target'
232 endif
233 dclicktype 'clean bandage%s%'
234 waitfortarget maxwaittimeinms
235 target 'self'
236 wait 200
237 else
238 if timer aidsMessageTimer > aidsMessageCD
239 overhead "Out of bandages" 34
240 settimer aidsMessageTimer 0
241 endif
242 endif
243 endif
244 endif
245
246
247
248 if drinkStr = 1 and str < strengthLowerThan
249 if not findbuff "Strength"
250 if findtype "White Potion" self
251 dclicktype "White Potion"
252 wait 200
253 else
254 if timer whiteMessageTimer > whiteMessageCD
255 overhead "Out of str pots" 34
256 settimer whiteMessageTimer 0
257 endif
258 endif
259 endif
260 endif
261
262
263
264 if drinkAgility = 1
265 if not findbuff "Agility"
266 if findtype "Blue Potion" self
267 dclicktype "Blue Potion"
268 wait 200
269 else
270 if timer blueMessageTimer > blueMessageCD
271 overhead "Out of agility pots" 34
272 settimer blueMessageTimer 0
273 endif
274 endif
275 endif
276 endif
277
278
279
280 if drinkMagicResist = 1
281 if not findbuff "Magic Resist"
282 if findtype "Black Potion" self
283 dclicktype "Black Potion"
284 wait 200
285 else
286 if timer blackMessageTimer > blackMessageCD
287 overhead "Out of resist pots" 34
288 settimer blackMessageTimer 0
289 endif
290 endif
291 endif
292 endif
293
294
295
296 if 1 = drinkCure or 1 = cureSpell
297 while poisoned
298 if findtype "Orange Potion" self
299 dclicktype "Orange Potion"
300 wait 200
301 else
302 if timer orangeMessageTimer > orangeMessageCD
303 overhead "Out of cure pots" 34
304 settimer orangeMessageTimer 0
305 endif
306
307 if diffhits > highDiff or not findtype 3972 self or not findtype 3973 self
308 break
309 endif
310
311 if skill 'magery' >= 40 and mana >= 6 and 1 = cureSpell and not casting
312 cast 'cure'
313 wait 50
314 while not casting
315 if targetexists
316 hotkey 'cancel current target'
317 endif
318 cast 'cure'
319 wait 50
320 endwhile
321 while not targetexists and casting
322 endwhile
323 waitfortarget maxwaittimeinms
324 target 'self'
325 wait 200
326 else
327 break
328 endif
329 endif
330
331 endwhile
332 endif
333
334
335
336 if diffhits >= highDiff and 1 = drinkHeal
337 if findtype "Yellow Potion" self as hPot
338 getlabel hPot potLabel
339 if "next" in potLabel
340
341 else
342 @setvar! ch 0
343
344 if counttype 3852 self as c
345 @setvar! ch c
346 endif
347 clearsysmsg
348
349 dclicktype 3852
350 getlabel backpack xxx
351 wait 200
352
353 if ch != counttype 3852 self or insysmsg "potion satchel used"
354 cooldown "Heal Pot" healingPotCD
355 endif
356 endif
357 else
358 if timer yellowMessageTimer > yellowMessageCD
359 overhead "Out of heals pots" 34
360 settimer yellowMessageTimer 0
361 endif
362 endif
363 endif
364
365
366
367 if stam < staminaLowerThan and 1 = drinkRefresh
368 if findtype "Red Potion" self
369 dclicktype "Red Potion"
370 wait 200
371 else
372 if timer redMessageTimer > redMessageCD
373 overhead "Out of refresh pots" 34
374 settimer redMessageTimer 0
375 endif
376 endif
377 endif
378
379
380
381 if ingump "20/" 1387930325
382 @setvar! holyPoints 20
383 elseif ingump "19/" 1387930325
384 @setvar! holyPoints 19
385 elseif ingump "18/" 1387930325
386 @setvar! holyPoints 18
387 elseif ingump "17/" 1387930325
388 @setvar! holyPoints 17
389 elseif ingump "16/" 1387930325
390 @setvar! holyPoints 16
391 elseif ingump "15/" 1387930325
392 @setvar! holyPoints 15
393 elseif ingump "14/" 1387930325
394 @setvar! holyPoints 14
395 elseif ingump "13/" 1387930325
396 @setvar! holyPoints 13
397 elseif ingump "12/" 1387930325
398 @setvar! holyPoints 12
399 elseif ingump "11/" 1387930325
400 @setvar! holyPoints 11
401 elseif ingump "10/" 1387930325
402 @setvar! holyPoints 10
403 elseif ingump "9/" 1387930325
404 @setvar! holyPoints 9
405 elseif ingump "8/" 1387930325
406 @setvar! holyPoints 8
407 elseif ingump "7/" 1387930325
408 @setvar! holyPoints 7
409 elseif ingump "6/" 1387930325
410 @setvar! holyPoints 6
411 elseif ingump "5/" 1387930325
412 @setvar! holyPoints 5
413 elseif ingump "4/" 1387930325
414 @setvar! holyPoints 4
415 elseif ingump "3/" 1387930325
416 @setvar! holyPoints 3
417 elseif ingump "2/" 1387930325
418 @setvar! holyPoints 2
419 elseif ingump "1/" 1387930325
420 @setvar! holyPoints 1
421 else
422 @setvar holyPoints 0
423 endif
424
425 if skill 'chivalry' >= 95 and diffhits >= extremeDiff and 1 = holyLight and 4 < holyPoints and timer nobleTimer > nobleCD
426 if targetexists
427 hotkey 'cancel current target'
428 endif
429 clearsysmsg
430 yell '[holylight'
431 wait 200
432 if insysmsg "Holy symbols"
433 overhead "[> Holy Light <]" 55
434
435 endif
436 endif
437
438 if ingump "20/" 1387930325
439 @setvar! holyPoints 20
440 elseif ingump "19/" 1387930325
441 @setvar! holyPoints 19
442 elseif ingump "18/" 1387930325
443 @setvar! holyPoints 18
444 elseif ingump "17/" 1387930325
445 @setvar! holyPoints 17
446 elseif ingump "16/" 1387930325
447 @setvar! holyPoints 16
448 elseif ingump "15/" 1387930325
449 @setvar! holyPoints 15
450 elseif ingump "14/" 1387930325
451 @setvar! holyPoints 14
452 elseif ingump "13/" 1387930325
453 @setvar! holyPoints 13
454 elseif ingump "12/" 1387930325
455 @setvar! holyPoints 12
456 elseif ingump "11/" 1387930325
457 @setvar! holyPoints 11
458 elseif ingump "10/" 1387930325
459 @setvar! holyPoints 10
460 elseif ingump "9/" 1387930325
461 @setvar! holyPoints 9
462 elseif ingump "8/" 1387930325
463 @setvar! holyPoints 8
464 elseif ingump "7/" 1387930325
465 @setvar! holyPoints 7
466 elseif ingump "6/" 1387930325
467 @setvar! holyPoints 6
468 elseif ingump "5/" 1387930325
469 @setvar! holyPoints 5
470 elseif ingump "4/" 1387930325
471 @setvar! holyPoints 4
472 elseif ingump "3/" 1387930325
473 @setvar! holyPoints 3
474 elseif ingump "2/" 1387930325
475 @setvar! holyPoints 2
476 elseif ingump "1/" 1387930325
477 @setvar! holyPoints 1
478 else
479 @setvar holyPoints 0
480 endif
481
482 if skill 'chivalry' >= 80 and diffhits >= criticalDiff and 1 = nobleSacrifice and 3 < holyPoints
483 if targetexists
484 hotkey 'cancel current target'
485 endif
486 clearsysmsg
487 yell '[noblesacrifice'
488 wait 200
489 if targetexists
490 waitfortarget maxwaittimeinms
491 target 'self'
492 wait 200
493
494 if insysmsg "Holy symbols"
495 overhead "[> Noble Sacrifice <]" 55
496 settimer nobleTimer 0
497 endif
498 endif
499 endif
500
501
502
503 if skill 'magery' >= 40 and diffhits >= lowDiff and diffhits < medDiff and mana >= 4 and miniHeal = 1 and not casting
504 cast 'heal'
505 while not casting
506 if targetexists
507 hotkey 'cancel current target'
508 endif
509 cast 'heal'
510 endwhile
511
512 while not targetexists and casting
513 endwhile
514
515 waitfortarget maxwaittimeinms
516 target 'self'
517 wait 200
518
519 elseif skill 'magery' >= 60 and diffhits >= medDiff and diffhits <= highDiff mana >= 11 and greaterHeal = 1 and not casting
520 cast 'greater heal'
521 while not casting
522 if targetexists
523 hotkey 'cancel current target'
524 endif
525 cast 'greater heal'
526 endwhile
527
528 while not targetexists and casting
529
530
531
532 if 1 = drinkCure
533 while poisoned
534 if findtype "Orange Potion" self
535 dclicktype "Orange Potion"
536 wait 200
537 else
538 if timer orangeMessageTimer > orangeMessageCD
539 overhead "Out of cure pots" 34
540 settimer orangeMessageTimer 0
541 break
542 endif
543
544 endif
545 endwhile
546 endif
547
548
549
550 if diffhits >= highDiff and 1 = drinkHeal
551 if findtype "Yellow Potion" self as hPot
552 getlabel hPot potLabel
553 if "next" in potLabel
554
555 else
556 @setvar! ch 0
557
558 if counttype 3852 self as c
559 @setvar! ch c
560 endif
561 clearsysmsg
562
563 dclicktype 3852
564 getlabel backpack xxx
565 wait 200
566
567 if ch != counttype 3852 self or insysmsg "potion satchel used"
568 cooldown "Heal Pot" healingPotCD
569 endif
570 endif
571 else
572 if timer yellowMessageTimer > yellowMessageCD
573 overhead "Out of heals pots" 34
574 settimer yellowMessageTimer 0
575 endif
576 endif
577 endif
578
579 endwhile
580
581 waitfortarget maxwaittimeinms
582 target 'self'
583 wait 200
584
585 elseif skill 'magery' >= 40 and diffhits > highDiff and mana >= 4 and miniHeal = 1 and not casting
586 cast 'heal'
587 while not casting
588 if targetexists
589 hotkey 'cancel current target'
590 endif
591 cast 'heal'
592 endwhile
593
594 while not targetexists and casting
595 endwhile
596
597 waitfortarget maxwaittimeinms
598 target 'self'
599 wait 200
600
601 endif
602
603 endwhile
604
605
606
607 if magicReflect = 1 and skill 'magery' >= 70 and not findbuff "Magic Reflection" and mana >= miniumManaToBuff and diffhits < lowDiff
608 if timer magicReflectTimer > magicReflectCD
609 cast 'Magic Reflection'
610 while not casting and diffhits < lowDiff
611 getlabel backpack xxx
612 wait 200
613 if insysmsg "that spell will not" or insysmsg "that spell is already"
614 settimer magicReflectTimer 0
615 break
616 endif
617 if targetexists
618 hotkey 'cancel current target'
619 endif
620 cast 'Magic Reflection'
621 endwhile
622
623 while casting and diffhits < highDiff
624
625
626
627 if 1 = drinkCure
628 while poisoned
629 if findtype "Orange Potion" self
630 dclicktype "Orange Potion"
631 wait 200
632 else
633 if timer orangeMessageTimer > orangeMessageCD
634 overhead "Out of cure pots" 34
635 settimer orangeMessageTimer 0
636 break
637 endif
638
639 endif
640 endwhile
641 endif
642
643
644
645 if diffhits >= highDiff and 1 = drinkHeal
646 if findtype "Yellow Potion" self as hPot
647 getlabel hPot potLabel
648 if "next" in potLabel
649
650 else
651 @setvar! ch 0
652
653 if counttype 3852 self as c
654 @setvar! ch c
655 endif
656 clearsysmsg
657
658 dclicktype 3852
659 getlabel backpack xxx
660 wait 200
661
662 if ch != counttype 3852 self or insysmsg "potion satchel used"
663 cooldown "Heal Pot" healingPotCD
664 endif
665 endif
666 else
667 if timer yellowMessageTimer > yellowMessageCD
668 overhead "Out of heals pots" 34
669 settimer yellowMessageTimer 0
670 endif
671 endif
672 endif
673
674 endwhile
675 wait 200
676 endif
677 endif
678
679 if armorReflect = 1 and skill 'magery' >= 30 and not findbuff "Reactive Armor" and mana >= miniumManaToBuff and diffhits < lowDiff
680 if timer magicReflectTimer > magicReflectCD
681 cast 'Reactive Armor'
682 while not casting and diffhits < highDiff
683 getlabel backpack xxx
684 wait 200
685 if insysmsg "that spell will not" or insysmsg "that spell is already"
686 settimer armorReflectTimer 0
687 break
688 endif
689 if targetexists
690 hotkey 'cancel current target'
691 endif
692 cast 'Reactive Armor'
693 endwhile
694
695 while casting and diffhits < lowDiff
696 endwhile
697 wait 200
698 endif
699 endif
700
701 if protectionSpell = 1 and skill 'magery' >= 40 and not findbuff "Protection" and mana >= miniumManaToBuff and diffhits < lowDiff
702 cast 'Protection'
703 while not casting and diffhits < highDiff
704 if targetexists
705 hotkey 'cancel current target'
706 endif
707 cast 'Protection'
708 endwhile
709 while casting and diffhits < lowDiff
710 endwhile
711 wait 200
712 endif
713
714 if bless = 1 and skill 'magery' >= 50 and not findbuff "Cunning" and mana >= miniumManaToBuff and diffhits < lowDiff
715 sysmsg 'blessing..'
716 cast 'Bless'
717 while not casting and diffhits < highDiff
718 if targetexists
719 hotkey 'cancel current target'
720 endif
721 cast 'Bless'
722 wait 50
723 endwhile
724
725 while not targetexists and casting
726 endwhile
727
728 waitfortarget maxwaittimeinms
729 target 'self'
730 wait 200
731 endif
732
733
734 endwhile
735endif