Back to "animaltaming" skill

Easy Animal Taming by dilvid

Description: Run the script and just walk close to the target, it will attempt to tame and then release the creature

1# Breakdown of mobs:
2# min 30 skill
3    # a mongbat
4    # a giant rat
5# min 40 skill
6    # a guar
7    # a wolf
8# min 50 skill
9    # a familiar
10    # a giant frog
11    # a primordial whelp
12    # a colossal frog
13    # a giant bat
14    # a monitor hatchling
15# min 55 skill
16    # a corpse eater
17# min 60 skill 
18    # a primordial
19    # a cave bear
20# min 75 skill 
21    # a drake whelp
22    # a chameleon
23
24###########################
25####Only Adjust These######
26###########################    
27@setvar! haveTankPet 1
28
29###########################
30#####Leave these alone#####
31###########################
32@setvar! isTaming 0
33@setvar! isHealing 0
34@setvar! tankPet 0
35@setvar! tamingCooldownInterval 15000
36@setvar! healTankTimerInterval 10000
37@setvar! messageInterval 1000
38@setvar! globalMessageInterval 5000
39@setvar! commandInterval 2550
40@setvar! tamingTarget 0
41@setvar! requiresAttackTrick 1
42
43###########################
44########Messages###########
45###########################
46@setvar! tooFarAwayMessageSeen 0
47@setvar! cannotSeeTargetMessageSeen 0
48@setvar! tamingStartedMessageSeen 0
49@setvar! tamingFailedMessageSeen 0
50@setvar! tamingTargetDeadMessageSeen 0
51@setvar! tamingCooldownMessageSeen 0
52@setvar! tamingSuccessReleaseMesssageSeen 0
53###########################
54#####Script Starting#######
55###########################
56
57clearignore
58clearsysmsg
59
60if not timerexists tamingCooldown
61    createtimer tamingCooldown
62endif
63
64if not timerexists messageTimer
65    createtimer messageTimer
66endif
67
68if not timerexists globalMessageTimer
69    createtimer globalMessageTimer
70endif
71
72if not timerexists commandTimer
73    createtimer commandTimer
74endif
75
76if not timerexists healTankTimer and haveTankPet = 1
77    createtimer healTankTimer
78endif
79
80if skill "Animal Taming" < 50
81    overhead "Go train to 50 skill" 88
82    stop
83endif
84
85if haveTankPet = 1
86    if followers > 0 and haveTankPet = 1
87        sysmsg "Select your tank pet"
88        @setvar! 'tankPet'
89    endif
90    
91    if tankPet = 0
92        sysmsg "You need to tame a pet to use as a tank"
93        stop
94    endif
95endif
96
97while 1 = 1
98    if timer 'globalMessageTimer' > globalMessageInterval
99        @setvar! tooFarAwayMessageSeen 0
100        @setvar! cannotSeeTargetMessageSeen 0
101        @setvar! tamingStartedMessageSeen 0
102        @setvar! tamingFailedMessageSeen 0
103        @setvar! tamingTargetDeadMessageSeen 0
104        @setvar! tamingCooldownMessageSeen 0
105        @setvar! tamingSuccessReleaseMesssageSeen 0
106        
107        settimer globalMessageTimer 0
108    endif
109
110    if timer 'healTankTimer' > healTankTimerInterval
111        if find tankPet ground -1 -1 2
112            if not bandaging and findtype "clean bandage%s%" backpack as bandages
113                dclick bandages
114                waitfortarget 200
115                target tankPet
116                settimer healTankTimer 0
117                if targetexists 
118                    hotkey "Cancel current target"
119                endif
120            endif
121        endif      
122    endif
123    
124    if followers = 0 and haveTankPet = 1
125        overhead "Your tank pet has died, get another!"
126        break
127    endif
128    
129    if tamingTarget = 0
130        if skill "Animal Taming" < 60
131            while findtype "a mongbat|a giant rat|a guar|a wolf|a familiar|a giant frog|a primordial whelp|a colossal frog|a giant bat|a monitor hatchling" ground -1 -1 2 as foundTarget
132                getlabel foundTarget desc
133                if "released" in desc or "tame" in desc or "bonded" in desc
134                    // ignore them
135                    @ignore foundTarget
136                else
137                    @setvar! tamingTarget foundTarget
138                    overhead "Taming Target!" 98 foundTarget
139                    break
140                endif
141            endwhile
142        elseif skill "Animal Taming" < 75
143            while findtype "a primordial|a cave bear|a corpse eater|a familiar|a guar|a wolf|a giant frog|a primordial whelp|a colossal frog|a giant bat|a monitor hatchling" ground -1 -1 2 as foundTarget
144                getlabel foundTarget desc
145                if "released" in desc or "tame" in desc or "bonded" in desc
146                    // ignore them
147                    @ignore foundTarget
148                else
149                    @setvar! tamingTarget foundTarget
150                    overhead "Taming Target!" 98 foundTarget
151                    break
152                endif
153            endwhile
154        elseif skill "Animal Taming" >= 75
155            while findtype "a corpse eater|a primordial|a cave bear|a drake whelp|a chameleon" ground -1 -1 2 as foundTarget
156                getlabel foundTarget desc
157                if "released" in desc or "tame" in desc or "bonded" in desc
158                    // ignore them
159                    @ignore foundTarget
160                else
161                    @setvar! tamingTarget foundTarget
162                    overhead "Taming Target!" 98 foundTarget
163                    break
164                endif
165            endwhile
166        endif
167    else
168        if isTaming = 0
169            if not find tamingTarget ground -1 -1 2
170                if tooFarAwayMessageSeen = 0
171                    sysmsg "You are too far away, move closer!"
172                    @setvar tooFarAwayMessageSeen 1
173                endif
174            else
175                if not cooldown 'skill'
176                    if haveTankPet = 1 and followers > 0 and requiresAttackTrick = 1
177                        say "all kill"
178                        waitfortarget 
179                        target tamingTarget
180                        settimer commandTimer 0
181                        while timer commandTimer < commandInterval
182                        endwhile
183                        say "all follow me"
184                        wait 1000
185                        warmode off
186                        @setvar! requiresAttackTrick 0
187                    endif
188
189                    if not dead tamingTarget
190                        useskill "Taming"
191                        waitfortarget 
192                        target tamingTarget
193                        settimer tamingCooldown 0
194                        
195                        if insysmsg "That is too far away."
196                             if tooFarAwayMessageSeen = 0
197                                sysmsg "You are too far away, move closer!"
198                                @setvar tooFarAwayMessageSeen 1
199                            endif
200                            @setvar! isTaming 0
201                        elseif insysmsg "Target cannot be seen."
202                            if cannotSeeTargetMessageSeen = 0
203                                sysmsg "You cannot see that target, move closer!"
204                                @setvar cannotSeeTargetMessageSeen 1
205                            endif
206                            @setvar! isTaming 0
207                        else
208                            if tamingStartedMessageSeen = 0
209                                sysmsg "Taming started, stay close!!"
210                                @setvar tamingStartedMessageSeen 1
211                            endif
212                            @setvar! isTaming 1
213                            settimer tamingPause 0
214                        endif
215                    else
216                         if tamingTargetDeadMessageSeen = 0
217                            sysmsg "Your target is not alive, pick a live one!"
218                            @setvar tamingTargetDeadMessageSeen 1
219                        endif
220                        @ignore tamingTarget
221                        @setvar! tamingTarget 0
222                    endif
223                else
224                     if tamingCooldownMessageSeen = 0
225                        sysmsg "Waiting for taming cooldown!"
226                        @setvar tamingCooldownMessageSeen 1
227                    endif
228                endif
229            endif
230        else
231            if timer tamingCooldown > tamingCooldownInterval
232                getlabel tamingTarget desc
233                if "tame" in desc
234                    if tamingSuccessReleaseMesssageSeen = 0
235                    sysmsg "Taming successful, releasing..."
236                        @setvar tamingSuccessReleaseMesssageSeen 1
237                    endif
238                    while not gumpexists 2426193729
239                        menu tamingTarget 9
240                    wait 200
241                    endwhile
242                    while gumpexists 2426193729
243                        gumpresponse 1 2426193729
244                        wait 200
245                    endwhile
246                    @setvar! tamingTarget 0
247                    @setvar! isTaming 0
248                    @setvar! requiresAttackTrick 1
249                else
250                    if tamingFailedMessageSeen = 0
251                        sysmsg "Taming failed, retrying..."
252                        @setvar tamingFailedMessageSeen 1
253                    endif
254                    @setvar! isTaming 0
255                endif
256                settimer tamingCooldown 0
257            endif
258        endif    
259    endif
260endwhile