Advertisement
Maespark

GoldPanning Book1

Jun 17th, 2020 (edited)
960
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 8.73 KB | None | 0 0
  1. ///////////////////////////////////////////////////////////////////////////////
  2. //Macro Name: GoldPanning Book1
  3. //Macro Author: Maelune
  4. //Macro Purpose: Pan an entire runebook worth of marked spots while remembering
  5. //               while rune the player was previously on in the case that the
  6. //               player is interrupted for some reason or another.
  7. //
  8. //Macro Requirements:1. One full runebook of marked gold nugget locations
  9. //                   2. The X, Y, and Z coordinates for each rune, in order.
  10. //                   3. A gold pan, ideally with a lot of charges.
  11. //
  12. //Macro Instructions: 1. Create a new macro and name it "GPBook1". Copy and
  13. //                       paste the script from here into this macro and hit
  14. //                       "Save".
  15. //                    2. Replace Serial ID of the runebook1 alias at the start
  16. //                       of the script
  17. //                    3. Replace the GPX1, GPY1, and GPZ1 values so that the
  18. //                       first value in GPX1, GPY1, and GPZ1 are accurate for
  19. //                       the first rune in your runebook. Do the same for the
  20. //                       following runes and their coordinates.
  21. //                    4. Setup trash functionality
  22. //                    5. Setup additional books if desired
  23. //                    6. Save it!
  24. //                    7. Play macro
  25. //
  26. //Macro Recommendations: 1. Gold Pan Storage Key
  27. //                       2. Treasure Hunter's Storage Key
  28. //                       3. Jeweler's Key
  29. //                       4. Safe Trash 4 Tokens Backpack (for shoes)
  30. //                       5. 200 Fishing Skill (never fail panning attempt)
  31. //
  32. //Macro Notes: >You do not need the luck stat to be an effective panner.
  33. //              Luck only impacts the rate at which you get gems and MiBs.
  34. //             >You should take some time to set up the trash handling function
  35. //              of this macro noted down below. You will need to do something
  36. //              to deal with the MiBs, Large Gems, Nuggets, and shoes. How
  37. //              you choose to deal with them is up to you!
  38. //             >You might also consider adding an if statement with audio cue
  39. //              directly before the waitfortarget command after using the gold
  40. //              pan.
  41. //
  42. //              >If your macro hangs up while trying to recall, locate the
  43. //              indicated line below and adjust the pause upwards. Depending
  44. //              on your latency and the server itself, this number will be
  45. //              somewhere between 150 and 1000!
  46. //
  47. //Macro Disclaimer: UOEvo has a no-AFK rule for gold panning. If you want to
  48. //                  avoid getting banned or jailed, don't walk away from this
  49. //                  macro while it's running.
  50. //
  51. //If you need help setting this macro up, DM me through Discord
  52. //@Maelune#4720. Please read through all of the comments in this script before
  53. //seeking my assistence!
  54. //////////////////////////////////////////////////////////////////////////////
  55. clearjournal
  56. if not findalias 'runebook1'
  57.   //set this to the serial of you runebook
  58.   setalias 'runebook1' 0x4ca14944
  59. endif
  60. //Declare lists for runes, X, Y, and Z coords.
  61. if not listexists 'GPRunes1'
  62.   createlist 'GPRunes1'
  63. endif
  64. if not listexists 'GPX1'
  65.   createlist 'GPX1'
  66. endif
  67. if not listexists 'GPY1'
  68.   createlist 'GPY1'
  69. endif
  70. if not listexists 'GPZ1'
  71.   createlist 'GPZ1'
  72. endif
  73. //Initialize lists. Values in GPRunes1 should not require changing.
  74. if list 'GPRunes1' < 1
  75.   pushlist 'GPRunes1' 7 //Rune #1
  76.   pushlist 'GPRunes1' 13 //Rune #2
  77.   pushlist 'GPRunes1' 19 //Rune #3
  78.   pushlist 'GPRunes1' 25 //Rune #4
  79.   pushlist 'GPRunes1' 31 //Rune #5
  80.   pushlist 'GPRunes1' 37 //Rune #6
  81.   pushlist 'GPRunes1' 43 //Rune #7
  82.   pushlist 'GPRunes1' 49 //Rune #8
  83.   pushlist 'GPRunes1' 55 //Rune #9
  84.   pushlist 'GPRunes1' 61 //Rune #10
  85.   pushlist 'GPRunes1' 67 //Rune #11
  86.   pushlist 'GPRunes1' 73 //Rune #12
  87.   pushlist 'GPRunes1' 79 //Rune #13
  88.   pushlist 'GPRunes1' 85 //Rune #14
  89.   pushlist 'GPRunes1' 91 //Rune #15
  90.   pushlist 'GPRunes1' 97 //Rune #16
  91. endif
  92. if list 'GPX1' < 1
  93.   pushlist 'GPX1' 452 //X coord of rune #1
  94.   pushlist 'GPX1' 473 //X coord of rune #2
  95.   pushlist 'GPX1' 282 //X coord of rune #3
  96.   pushlist 'GPX1' 454 //X coord of rune #4
  97.   pushlist 'GPX1' 312 //X coord of rune #5
  98.   pushlist 'GPX1' 375 //X coord of rune #6
  99.   pushlist 'GPX1' 438 //X coord of rune #7
  100.   pushlist 'GPX1' 491 //X coord of rune #8
  101.   pushlist 'GPX1' 554 //X coord of rune #9
  102.   pushlist 'GPX1' 617 //X coord of rune #10
  103.   pushlist 'GPX1' 675 //X coord of rune #11
  104.   pushlist 'GPX1' 739 //X coord of rune #12
  105.   pushlist 'GPX1' 794 //X coord of rune #13
  106.   pushlist 'GPX1' 813 //X coord of rune #14
  107.   pushlist 'GPX1' 874 //X coord of rune #15
  108.   pushlist 'GPX1' 937 //X coord of rune #16
  109. endif
  110. if list 'GPY1' < 1
  111.   pushlist 'GPY1' 277 //Y coord of rune #1
  112.   pushlist 'GPY1' 305 //Y coord of rune #2
  113.   pushlist 'GPY1' 345 //Y coord of rune #3
  114.   pushlist 'GPY1' 259 //Y coord of rune #4
  115.   pushlist 'GPY1' 314 //Y coord of rune #5
  116.   pushlist 'GPY1' 371 //Y coord of rune #6
  117.   pushlist 'GPY1' 432 //Y coord of rune #7
  118.   pushlist 'GPY1' 494 //Y coord of rune #8
  119.   pushlist 'GPY1' 555 //Y coord of rune #9
  120.   pushlist 'GPY1' 617 //Y coord of rune #10
  121.   pushlist 'GPY1' 673 //Y coord of rune #11
  122.   pushlist 'GPY1' 738 //Y coord of rune #12
  123.   pushlist 'GPY1' 799 //Y coord of rune #13
  124.   pushlist 'GPY1' 813 //Y coord of rune #14
  125.   pushlist 'GPY1' 874 //Y coord of rune #15
  126.   pushlist 'GPY1' 932 //Y coord of rune #16
  127. endif
  128. if list 'GPZ1' < 1
  129.   pushlist 'GPZ1' -5 //Z coord of rune #1
  130.   pushlist 'GPZ1' -5 //Z coord of rune #2
  131.   pushlist 'GPZ1' -5 //Z coord of rune #3
  132.   pushlist 'GPZ1' -5 //Z coord of rune #4
  133.   pushlist 'GPZ1' -5 //Z coord of rune #5
  134.   pushlist 'GPZ1' -5 //Z coord of rune #6
  135.   pushlist 'GPZ1' -5 //Z coord of rune #7
  136.   pushlist 'GPZ1' -5 //Z coord of rune #8
  137.   pushlist 'GPZ1' -5 //Z coord of rune #9
  138.   pushlist 'GPZ1' -5 //Z coord of rune #10
  139.   pushlist 'GPZ1' -5 //Z coord of rune #11
  140.   pushlist 'GPZ1' -5 //Z coord of rune #12
  141.   pushlist 'GPZ1' -5 //Z coord of rune #13
  142.   pushlist 'GPZ1' -5 //Z coord of rune #14
  143.   pushlist 'GPZ1' -5 //Z coord of rune #15
  144.   pushlist 'GPZ1' -5 //Z coord of rune #16
  145. endif
  146. for 0 to GPRunes1
  147.   //Sacred Journey
  148.   useobject runebook1
  149.   pause 150 //This is the line to change if your script is hanging up!
  150.   if @injournal "time to recharge"
  151.     pause 6000
  152.     useobject runebook1
  153.   endif
  154.   waitforgump 0x554b87f3 15000
  155.   replygump 0x554b87f3 GPRunes1[0]
  156.   pause 2000
  157.   clearjournal
  158.   //Panning begins
  159.   while not @injournal "to be any nuggets"
  160.     while not @findtype 0x9d7 '0' 'backpack'
  161.     endwhile
  162.     usetype 0x9d7 '0' 'backpack'
  163.     waitfortarget 15000
  164.     //uncomment following lines to read out current target tile.
  165.     //headmsg GPX1[0]
  166.     //headmsg GPY1[0]
  167.     //headmsg GPZ1[0]
  168.     targettile GPX1[0] GPY1[0] GPZ1[0]
  169.     pause 150
  170.     while not @findtype 0x9d8 '0' 'backpack'
  171.       //if statement catches if you failed your panning.
  172.       //@200, this should never run.
  173.       if @injournal 'but fail to find any'
  174.         usetype 0x9d7 '0' 'backpack'
  175.         waitfortarget 15000
  176.         targettile GPX1[0] GPY1[0] GPZ1[0]
  177.         pause 150
  178.         clearjournal
  179.       endif
  180.       //If statement to handle being overweighted
  181.       //The following number should be max weight -50
  182.       if weight > 520
  183.         ////////////////////////////////////////////////////////
  184.         //This section is for what you want your macro to do when you
  185.         //become overweight. You should have something to handle
  186.         //MiBs, footwear, nuggets, and large gems. Below is an example
  187.         //of how to use an organizer properly so that it doesn't interfere
  188.         //with the rest of the macro - the 'while organizing' will form
  189.         //a dynamic pause while the organizer is running. For any additional
  190.         //methods you add for weight control, make sure you take into
  191.         //consideration how long the operation will take!
  192.         ////////////////////////////////////////////////////////
  193.         organizer 'GPOrganizer' //Setup Organizers in the Agents tab of UOS
  194.         while organizing
  195.         endwhile
  196.       endif
  197.       //If statement handles if spot is empty
  198.       if @injournal "to be any nuggets"
  199.         break
  200.       endif
  201.       //If statement pauses script while world is saving
  202.       if @injournal "world is saving"
  203.         while not @injournal "save complete"
  204.         endwhile
  205.         clearjournal
  206.       endif
  207.     endwhile
  208.     usetype 0x9d8 '0' 'backpack'
  209.   endwhile
  210.   //progressing script to the next rune
  211.   poplist 'GPRunes1' 'front'
  212.   poplist 'GPX1' 'front'
  213.   poplist 'GPY1' 'front'
  214.   poplist 'GPZ1' 'front'
  215. endfor
  216. //playmacro 'GPBook2' //Uncomment this line to add a 2nd book.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement