UOS - Animal Taming

Share your guides, how-tos, FAQs, and so forth. This is not for support -- post questions in General Discussion.
Haswell
Posts: 44

UOS - Animal Taming

Post by Haswell »

Check the "Loop" option.
Configure the amount of skill you want at the beginning.

Important:
- UOS does not have a path find function so I've made a sort of "unstuck heuristic" in order to better reach the pet and avoid being stuck to an unreachable pet;
- Releasing a pet also depends on your animal lore skill, do not lock that skill at 0, I recommend locking it around 50 points;
- Keep in mind the server rules wont allow you to train animal taming while AFK, watch your macro.

Code: Select all

// Author: Di
// Description: find, chase and tame nearby pets accordingly to skill level
// v2.1: pet release and tamed detection improvements
// v2.0: improved pets list and created unstuck pathfind heuristic
// Configure skill limit      ▼
if skill! 'animal taming' >= 100
  setskill 'animal taming' 'locked'
  stop
endif
@createlist 'pets'
@clearlist 'pets'
if skill 'animal taming' < 60
  // Eagle
  pushlist 'pets' 0x5
  // Goat
  pushlist 'pets' 0xd1
  // Pig
  pushlist 'pets' 0xcb
  pushlist 'pets' 0x122
  // Hind
  pushlist 'pets' 0xed
  // Timber wolf
  pushlist 'pets' 0xe1
  // Llama
  pushlist 'pets' 0xdc
  // Horse
  pushlist 'pets' 0xcc
  pushlist 'pets' 0xe2
  pushlist 'pets' 0xe4
  pushlist 'pets' 0xc8
  pushlist 'pets' 0x3e9f
  pushlist 'pets' 0x3ea0
  pushlist 'pets' 0x3ea1
  pushlist 'pets' 0x3ea2
  // Cow
  pushlist 'pets' 0xe7
  pushlist 'pets' 0xd8
  // Bear
  pushlist 'pets' 0xa7
  pushlist 'pets' 0xd3
  // Cougar
  pushlist 'pets' 0x3f
elseif skill 'animal taming' < 75
  // Grizzly Bear
  pushlist 'pets' 0xd4
  // Grey Wolf
  pushlist 'pets' 0x1b
  pushlist 'pets' 0x19
  // Snow Leopard
  pushlist 'pets' 0x41
  pushlist 'pets' 0x40
  // Walrus
  pushlist 'pets' 0xdd
  // Polar Bear
  pushlist 'pets' 0xd5
  // Great Hart
  pushlist 'pets' 0xea
elseif skill 'animal taming' < 95.1
  // Gaman
  pushlist 'pets' 0xf8
  // Bull
  pushlist 'pets' 0xe8
  pushlist 'pets' 0xe9
  // Great Hart
  pushlist 'pets' 0xea
  // White Wolf
  pushlist 'pets' 0x25
  pushlist 'pets' 0x22
  // Snow Leopard
  pushlist 'pets' 0x41
  pushlist 'pets' 0x40
  // Ridgeback
  pushlist 'pets' 0xbb
else
  // Bull
  pushlist 'pets' 0xe8
  pushlist 'pets' 0xe9
  // Unicorn
  pushlist 'pets' 0x7a
  // Ki-rin
  pushlist 'pets' 0x84
endif
if not listexists 'errors'
  createlist 'errors'
  pushlist 'errors' 'too many owners'
  pushlist 'errors' 'only be tamed by'
  pushlist 'errors' 'no chance of taming'
  pushlist 'errors' 'looks tame already'
  //pushlist 'errors' 'clear path to the animal'
  pushlist 'errors' 'cannot be seen'
endif
@createlist 'unstuck'
if list 'unstuck' == 0
  pushlist 'unstuck' 'east'
  pushlist 'unstuck' 'west'
  pushlist 'unstuck' 'south'
  pushlist 'unstuck' 'north'
endif
// Search
if not @findobject 'pet'
  for 0 to 'pets'
    if @findtype 'pets[]' 'any' 'ground'
      @settimer 'stuck' 0
      @setalias 'pet' 'found'
      break
    endif
  endfor
else
  // Pathfind
  @settimer 'pathfind' 0
  while @findobject 'pet' and not @inrange 'pet' 2
    if dead
      break
    elseif @timer 'pathfind' >= 5000
      // Diverge
      if direction == 0
        @poplist 'unstuck' 'north'
      elseif direction == 2
        @poplist 'unstuck' 'east'
      elseif direction == 4
        @poplist 'unstuck' 'south'
      elseif direction == 6
        @poplist 'unstuck' 'west'
      endif
      // Unstuck
      if list 'unstuck' != 0
        for 5
          run 'unstuck[0]'
          pause 100
        endfor
        poplist 'unstuck' 'front'
      endif
      break
    elseif @x 'pet' > x 'self' and @y 'pet' > y 'self'
      run 'southeast'
    elseif @x 'pet' < x 'self' and @y 'pet' > y 'self'
      run 'southwest'
    elseif @x 'pet' > x 'self' and @y 'pet' < y 'self'
      run 'northeast'
    elseif @x 'pet' < x 'self' and @y 'pet' < y 'self'
      run 'northwest'
    elseif @x 'pet' > x 'self' and @y 'pet' == y 'self'
      run 'east'
    elseif @x 'pet' < x 'self' and @y 'pet' == y 'self'
      run 'west'
    elseif @x 'pet' == x 'self' and @y 'pet' > y 'self'
      run 'south'
    elseif @x 'pet' == x 'self' and @y 'pet' < y 'self'
      run 'north'
    endif
    pause 100
  endwhile
  if @inrange 'pet' 2
    // Tame
    clearjournal
    useskill 'animal taming'
    waitfortarget 1000
    target! 'pet'
    // Handle
    if @property '(tame)' 'pet'
      for 5
        if @gumpexists 0x909cc741 or not @findobject 'pet'
          break
        elseif dead or followers == 0
          break
        elseif @name 'pet' != 'trashpet'
          rename 'pet' 'trashpet'
        else
          msg 'trashpet release'
        endif
        pause 500
      endfor
      replygump 0x909cc741 2
      sysmsg 'Success: tamed and released!' 88
      ignoreobject 'pet'
      @unsetalias 'pet'
    else
      @settimer 'stuck' 0
      for 0 to 'errors'
        if @injournal 'errors[]' 'system'
          sysmsg 'Ignore: error message!' 25
          ignoreobject 'pet'
          @unsetalias 'pet'
          break
        endif
      endfor
    endif
  elseif @timer 'stuck' >= 20000
    sysmsg 'Ignore: stuck timeout!' 25
    ignoreobject 'pet'
    @unsetalias 'pet'
  endif
endif
Last edited by Haswell on December 30th, 2020, 10:24 pm, edited 2 times in total.
Girion
Posts: 33

Re: UOS - Animal Taming

Post by Girion »

Well done ! Thanks for that.
Enoch
Posts: 7

Re: UOS - Animal Taming

Post by Enoch »

Thx haswell, I'll give it a try when I get off work
User avatar
Kush Tailored
Posts: 335

Re: UOS - Animal Taming

Post by Kush Tailored »

Like always... using your stuff. You may not be MB, but you're damn close buddy.
Discord: Kain#3638
Ajani likes this.
Top
TheUnknown0617
Posts: 1985

Re: UOS - Animal Taming

Post by TheUnknown0617 »

hey mate, i know nothing about scrits but under the 75 skill point section i added ridgebacks and when i press play it doesnt do anything? i typed everything exactly like the other pets so im not sure what im doing wrong
'It isn't just my guild ... It's a group of friends guild"
-Centurian


Vendor!! https://www.uogdemise.com/community/vie ... =8&t=26620

Discord - outsider#7479
Haswell
Posts: 44

Re: UOS - Animal Taming

Post by Haswell »

TheUnknown0617 wrote:hey mate, i know nothing about scrits but under the 75 skill point section i added ridgebacks and when i press play it doesnt do anything? i typed everything exactly like the other pets so im not sure what im doing wrong
hi, it is possible that you've inserted the wrong graphic or location
ridgeback's min taming skill is 83.1 so the best location for it would be between 75 and 95.1 (below the < 95.1 section)

ps: I've edited the macro and added it for you, take a look
TheUnknown0617
Posts: 1985

Re: UOS - Animal Taming

Post by TheUnknown0617 »

Haswell wrote:
TheUnknown0617 wrote:hey mate, i know nothing about scrits but under the 75 skill point section i added ridgebacks and when i press play it doesnt do anything? i typed everything exactly like the other pets so im not sure what im doing wrong
hi, it is possible that you've inserted the wrong graphic or location
ridgeback's min taming skill is 83.1 so the best location for it would be between 75 and 95.1 (below the < 95.1 section)

ps: I've edited the macro and added it for you, take a look
works perfect now, thanx mate
'It isn't just my guild ... It's a group of friends guild"
-Centurian


Vendor!! https://www.uogdemise.com/community/vie ... =8&t=26620

Discord - outsider#7479
TheUnknown0617
Posts: 1985

Re: UOS - Animal Taming

Post by TheUnknown0617 »

Haswell wrote:
TheUnknown0617 wrote:hey mate, i know nothing about scrits but under the 75 skill point section i added ridgebacks and when i press play it doesnt do anything? i typed everything exactly like the other pets so im not sure what im doing wrong
hi, it is possible that you've inserted the wrong graphic or location
ridgeback's min taming skill is 83.1 so the best location for it would be between 75 and 95.1 (below the < 95.1 section)

ps: I've edited the macro and added it for you, take a look
i went to do kyrins last night and it keep taming the ones ive already tamed..?
'It isn't just my guild ... It's a group of friends guild"
-Centurian


Vendor!! https://www.uogdemise.com/community/vie ... =8&t=26620

Discord - outsider#7479
User avatar
LemonHead
Posts: 34
Contact:

Re: UOS - Animal Taming

Post by LemonHead »

This is a fantastic macro. Thanks, Haswell!

I added this bit of code in line 111, so you don't have to re-tame a beast to ignore it (saves you some time when there's dozens of them roaming around)

Code: Select all

if name 'pet' == 'trashpet'
	ignoreobject 'pet'
	@unsetalias 'pet'
	pause 500
	replay
endif
Of course it works best if you customize your "trashpet" alias.
Image
Grifo
Posts: 1585

Re: UOS - Animal Taming

Post by Grifo »

Kush Tailored wrote:Like always... using your stuff. You may not be MB, but you're damn close buddy.
LOL!

PERDOAI, SENHOR, ELES NÃO SABEM O QUE DIZEM.
User avatar
Silent Shadow
Posts: 334

Re: UOS - Animal Taming

Post by Silent Shadow »

guys pls help me to add line to attack released pet
who could help me?
WTB Ring 50 EP HCI DCI (up to 20kk)
User avatar
april0395
Posts: 726

Re: UOS - Animal Taming

Post by april0395 »

Haswell wrote:Check the "Loop" option.
Configure the amount of skill you want at the beginning.

Important:
- UOS does not have a path find function so I've made a sort of "unstuck heuristic" in order to better reach the pet and avoid being stuck to an unreachable pet;
- Releasing a pet also depends on your animal lore skill, do not lock that skill at 0, I recommend locking it around 50 points;
- Keep in mind the server rules wont allow you to train animal taming while AFK, watch your macro.

Code: Select all

// Author: Di
// Description: find, chase and tame nearby pets accordingly to skill level
// v2.1: pet release and tamed detection improvements
// v2.0: improved pets list and created unstuck pathfind heuristic
// Configure skill limit      ▼
if skill! 'animal taming' >= 100
  setskill 'animal taming' 'locked'
  stop
endif
@createlist 'pets'
@clearlist 'pets'
if skill 'animal taming' < 60
  // Eagle
  pushlist 'pets' 0x5
  // Goat
  pushlist 'pets' 0xd1
  // Pig
  pushlist 'pets' 0xcb
  pushlist 'pets' 0x122
  // Hind
  pushlist 'pets' 0xed
  // Timber wolf
  pushlist 'pets' 0xe1
  // Llama
  pushlist 'pets' 0xdc
  // Horse
  pushlist 'pets' 0xcc
  pushlist 'pets' 0xe2
  pushlist 'pets' 0xe4
  pushlist 'pets' 0xc8
  pushlist 'pets' 0x3e9f
  pushlist 'pets' 0x3ea0
  pushlist 'pets' 0x3ea1
  pushlist 'pets' 0x3ea2
  // Cow
  pushlist 'pets' 0xe7
  pushlist 'pets' 0xd8
  // Bear
  pushlist 'pets' 0xa7
  pushlist 'pets' 0xd3
  // Cougar
  pushlist 'pets' 0x3f
elseif skill 'animal taming' < 75
  // Grizzly Bear
  pushlist 'pets' 0xd4
  // Grey Wolf
  pushlist 'pets' 0x1b
  pushlist 'pets' 0x19
  // Snow Leopard
  pushlist 'pets' 0x41
  pushlist 'pets' 0x40
  // Walrus
  pushlist 'pets' 0xdd
  // Polar Bear
  pushlist 'pets' 0xd5
  // Great Hart
  pushlist 'pets' 0xea
elseif skill 'animal taming' < 95.1
  // Gaman
  pushlist 'pets' 0xf8
  // Bull
  pushlist 'pets' 0xe8
  pushlist 'pets' 0xe9
  // Great Hart
  pushlist 'pets' 0xea
  // White Wolf
  pushlist 'pets' 0x25
  pushlist 'pets' 0x22
  // Snow Leopard
  pushlist 'pets' 0x41
  pushlist 'pets' 0x40
  // Ridgeback
  pushlist 'pets' 0xbb
else
  // Bull
  pushlist 'pets' 0xe8
  pushlist 'pets' 0xe9
  // Unicorn
  pushlist 'pets' 0x7a
  // Ki-rin
  pushlist 'pets' 0x84
endif
if not listexists 'errors'
  createlist 'errors'
  pushlist 'errors' 'too many owners'
  pushlist 'errors' 'only be tamed by'
  pushlist 'errors' 'no chance of taming'
  pushlist 'errors' 'looks tame already'
  //pushlist 'errors' 'clear path to the animal'
  pushlist 'errors' 'cannot be seen'
endif
@createlist 'unstuck'
if list 'unstuck' == 0
  pushlist 'unstuck' 'east'
  pushlist 'unstuck' 'west'
  pushlist 'unstuck' 'south'
  pushlist 'unstuck' 'north'
endif
// Search
if not @findobject 'pet'
  for 0 to 'pets'
    if @findtype 'pets[]' 'any' 'ground'
      @settimer 'stuck' 0
      @setalias 'pet' 'found'
      break
    endif
  endfor
else
  // Pathfind
  @settimer 'pathfind' 0
  while @findobject 'pet' and not @inrange 'pet' 2
    if dead
      break
    elseif @timer 'pathfind' >= 5000
      // Diverge
      if direction == 0
        @poplist 'unstuck' 'north'
      elseif direction == 2
        @poplist 'unstuck' 'east'
      elseif direction == 4
        @poplist 'unstuck' 'south'
      elseif direction == 6
        @poplist 'unstuck' 'west'
      endif
      // Unstuck
      if list 'unstuck' != 0
        for 5
          run 'unstuck[0]'
          pause 100
        endfor
        poplist 'unstuck' 'front'
      endif
      break
    elseif @x 'pet' > x 'self' and @y 'pet' > y 'self'
      run 'southeast'
    elseif @x 'pet' < x 'self' and @y 'pet' > y 'self'
      run 'southwest'
    elseif @x 'pet' > x 'self' and @y 'pet' < y 'self'
      run 'northeast'
    elseif @x 'pet' < x 'self' and @y 'pet' < y 'self'
      run 'northwest'
    elseif @x 'pet' > x 'self' and @y 'pet' == y 'self'
      run 'east'
    elseif @x 'pet' < x 'self' and @y 'pet' == y 'self'
      run 'west'
    elseif @x 'pet' == x 'self' and @y 'pet' > y 'self'
      run 'south'
    elseif @x 'pet' == x 'self' and @y 'pet' < y 'self'
      run 'north'
    endif
    pause 100
  endwhile
  if @inrange 'pet' 2
    // Tame
    clearjournal
    useskill 'animal taming'
    waitfortarget 1000
    target! 'pet'
    // Handle
    if @property '(tame)' 'pet'
      for 5
        if @gumpexists 0x909cc741 or not @findobject 'pet'
          break
        elseif dead or followers == 0
          break
        elseif @name 'pet' != 'trashpet'
          rename 'pet' 'trashpet'
        else
          msg 'trashpet release'
        endif
        pause 500
      endfor
      replygump 0x909cc741 2
      sysmsg 'Success: tamed and released!' 88
      ignoreobject 'pet'
      @unsetalias 'pet'
    else
      @settimer 'stuck' 0
      for 0 to 'errors'
        if @injournal 'errors[]'
          sysmsg 'Ignore: error message!' 25
          ignoreobject 'pet'
          @unsetalias 'pet'
          break
        endif
      endfor
    endif
  elseif @timer 'stuck' >= 20000
    sysmsg 'Ignore: stuck timeout!' 25
    ignoreobject 'pet'
    @unsetalias 'pet'
  endif
endif
I've run into a problem with the UOSteam taming macro. I've got my animal lore locked at 0 so I'll gain better in taming, but I don't have enough lore to use the 'xx release' command. It will only work through single click and context menu.. anyone know a fix for this? I know how to use the context menu and release a pet based on a serial, but not from a pushlist of grapic types. :/
Made In Quebec wrote:Some people's pleasure are sticking vegetables up their asses. While it's not my personal cup of tea, they can do as they please, since it's their asshole's and not mine, and I will not judge them.
ZigZag likes this.
Top
aemneuspeed
Posts: 48

Re: UOS - Animal Taming

Post by aemneuspeed »

april0395 wrote: I've run into a problem with the UOSteam taming macro. I've got my animal lore locked at 0 so I'll gain better in taming, but I don't have enough lore to use the 'xx release' command. It will only work through single click and context menu.. anyone know a fix for this? I know how to use the context menu and release a pet based on a serial, but not from a pushlist of grapic types. :/

You could replace the line where it says

Code: Select all

 msg 'trashpet release' 
to this:

Code: Select all

  waitforcontext 'trashpet' 8 2000
		 waitforgump 0x909cc741 1000
		 
You might have to tame an animal and then record the part where you manually choose the context menu / release option to make sure you have the correct number in the list but that should fix the issue for it. (i can test when I get home)
***ORIGINAL SIGNATURE***
User avatar
april0395
Posts: 726

Re: UOS - Animal Taming

Post by april0395 »

I had tried something similar and couldn't get it to work. I ended up just manually releasing until I got to 105 taming. lol
Made In Quebec wrote:Some people's pleasure are sticking vegetables up their asses. While it's not my personal cup of tea, they can do as they please, since it's their asshole's and not mine, and I will not judge them.
aemneuspeed
Posts: 48

Re: UOS - Animal Taming

Post by aemneuspeed »

april0395 wrote:I had tried something similar and couldn't get it to work. I ended up just manually releasing until I got to 105 taming. lol
haha that works :D
***ORIGINAL SIGNATURE***
april0395 likes this.
Top
Post Reply