Advertisement
SilvertigerL_C

TC Profile

Dec 9th, 2017
389
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 125.92 KB | None | 0 0
  1. <!DOCTYPE profile>
  2. <profile>
  3. <data name="CommandPrefix">0x0</data>
  4. <data name="UseObjectsQueue">True</data>
  5. <data name="ShowCorpseNames">False</data>
  6. <data name="ShowCreatureNames">False</data>
  7. <data name="OpenCorpses">True</data>
  8. <data name="OpenCorpsesRange">0x2</data>
  9. <data name="ShowMobileHits">False</data>
  10. <data name="PositionInTitle">False</data>
  11. <data name="ForceResolution">False</data>
  12. <data name="GameWindowWidth">0x320</data>
  13. <data name="GameWindowHeight">0x258</data>
  14. <data name="FilterLight">True</data>
  15. <data name="FilterMusic">False</data>
  16. <data name="FilterBardsMusic">False</data>
  17. <data name="FilterSound">False</data>
  18. <data name="FilterWeather">False</data>
  19. <data name="FilterSeason">False</data>
  20. <data name="FixedSeason">0x0</data>
  21. <data name="FilterDeath">False</data>
  22. <data name="FilterRepeatedMessages">False</data>
  23. <data name="FilterOthersSpeechColor">False</data>
  24. <data name="FilterSnoopingMessages">False</data>
  25. <data name="FilterTradeWindow">False</data>
  26. <data name="FilterRewardGump">False</data>
  27. <data name="HandsBeforePotions">False</data>
  28. <data name="HandsBeforeCasting">False</data>
  29. <data name="SmartTarget">0x0</data>
  30. <data name="SmartTargetRange">False</data>
  31. <data name="SmartTargetRangeValue">0xc</data>
  32. <data name="HighlightCurrentTarget">False</data>
  33. <data name="BlockInvalidHeal">False</data>
  34. <data name="ActionDelay">0x226</data>
  35. <data name="UseObjectsLimit">0x5</data>
  36. <data name="TargetShare">0x0</data>
  37. <data name="MountSerial">0xffffffff</data>
  38. <data name="BladeSerial">0xffffffff</data>
  39. <data name="BoneCutter">False</data>
  40. <data name="AutoMount">False</data>
  41. <data name="AutoBandage">False</data>
  42. <data name="AutoBandageTarget">0x0</data>
  43. <data name="AutoBandageScale">False</data>
  44. <data name="AutoBandageCount">False</data>
  45. <data name="AutoBandageStart">False</data>
  46. <data name="AutoBandageStartValue">0x5f</data>
  47. <data name="AutoBandageDelay">0x9c4</data>
  48. <data name="AutoBandageFormula">False</data>
  49. <data name="AutoBandageHidden">False</data>
  50. <data name="OpenDoors">True</data>
  51. <data name="UseDoors">False</data>
  52. <data name="SpellsColor">False</data>
  53. <data name="SpellsMode">0x2</data>
  54. <data name="SpellsTargetShare">0x0</data>
  55. <data name="OpenDoorsMode">0x0</data>
  56. <data name="OpenCorpsesMode">0x3</data>
  57. <data name="ShowMobileFlags">False</data>
  58. <data name="StateHighlightMode">0x0</data>
  59. <data name="StaticFields">False</data>
  60. <data name="CountStealthSteps">False</data>
  61. <data name="FriendsListOnly">False</data>
  62. <data name="FriendsParty">False</data>
  63. <data name="MoveConflictingItems">False</data>
  64. <data name="CustomCaption">True</data>
  65. <data name="CustomCaptionMode">0x1</data>
  66. <data name="CustomCaptionText">UO - $name $statusbar - $hits/$mana/$stam</data>
  67. <data name="WarnCounters">True</data>
  68. <data name="WarnCountersValue">0x5</data>
  69. <data name="HighlightReagents">True</data>
  70. <data name="DisplayCountersName">False</data>
  71. <data name="CaptionUseNotoHue">True</data>
  72. <data name="CaptionUseNotoHue">True</data>
  73. <data name="DisplayCountersImage">True</data>
  74. <data name="FilterKarmaMessages">False</data>
  75. <data name="FilterFameMessages">False</data>
  76. <data name="PreventDismount">False</data>
  77. <data name="PreventAttackFriends">False</data>
  78. <data name="AutoSearchContainers">False</data>
  79. <data name="AutoAcceptParty">False</data>
  80. <data name="StaticFieldsMode">0x0</data>
  81. <counters/>
  82. <scavenger enabled="False"/>
  83. <autosearchexemptions/>
  84. <objects>
  85. <obj name="30no">0xa2d3b</obj>
  86. <obj name="axe">0x4064227f</obj>
  87. <obj name="beetle">0x1bc49d</obj>
  88. <obj name="boards">0x40a770a2</obj>
  89. <obj name="bow">0x40097d4f</obj>
  90. <obj name="carpentry quest giver">0x103</obj>
  91. <obj name="fletcherdropoff">0x40324389</obj>
  92. <obj name="fletcherrunebook">0x43981306</obj>
  93. <obj name="fletching quest giver">0x114</obj>
  94. <obj name="found">0xa21</obj>
  95. <obj name="homelumber">0x43981306</obj>
  96. <obj name="move">0x403786c2</obj>
  97. <obj name="pole">0x436a516d</obj>
  98. <obj name="trash">0x43bdcd99</obj>
  99. <obj name="trash barrel">0x40053f97</obj>
  100. <obj name="trash can">0x4005c42d</obj>
  101. <obj name="trashbarrel">0x4005c42d</obj>
  102. <obj name="trashbarrelluna">0x4000b9c0</obj>
  103. <obj name="trashbarreltc">0x4000b9c0</obj>
  104. <obj name="treebookone">0x43980dca</obj>
  105. <obj name="treebooktwo">0x439809f8</obj>
  106. </objects>
  107. <hotkeys>
  108. <hotkey key="0x441" pass="False" param="Mining" action="macro.play"/>
  109. <hotkey key="0x220" pass="False" param="make last" action="macro.play"/>
  110. <hotkey key="0x85a" pass="False" param="Smelt item" action="macro.play"/>
  111. <hotkey key="0x7b" pass="False" param="GetBod" action="macro.play"/>
  112. <hotkey key="0x84d" pass="False" param="Fletch and Saw" action="macro.play"/>
  113. <hotkey key="0xc20" pass="False" action="macros.stop"/>
  114. <hotkey key="0x857" pass="False" action="spells.miniheal.self"/>
  115. <hotkey key="0xdd" pass="False" action="hotkeys"/>
  116. </hotkeys>
  117. <macros>
  118. <macro loop="True" interrupt="True" name="Carpentry Training">if not @listexists 'carpjunk';createlist 'carpjunk';pushlist 'carpjunk' 0x9aa;pushlist 'carpjunk' 0xe3f;pushlist 'carpjunk' 0x14f0;pushlist 'carpjunk' 0x14f0 // DEED! WATCH OUT!;pushlist 'carpjunk' 0xb4a;pushlist 'carpjunk' 0xe89;pushlist 'carpjunk' 0x13f8;endif;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 23;endwhile;while @counttype 0x1034 0 'backpack' &lt; 2;usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 51;waitforgump 0x38920abd 15000;endwhile;if not @findobject 'trash';headmsg 'Select your trash barrel';promptalias 'trash';endif;if not @findobject 'restock';headmsg 'Select the container with your boards';promptalias 'restock';useobject 'restock';endif;if @counttype 0x1bd7 0x0 'backpack' &lt; 20;movetype 0x1bd7 'restock' 'backpack' 0 0 0 0x0 150;pause 1000;endif;if @counttype 0x1bf2 0x0 'backpack' &lt; 20;movetype 0x1bf2 'restock' 'backpack' 0 0 0 0x0 100;pause 1000;endif;if skill 'carpentry' &lt; 30;headmsg 'Buy more skill!';stop;elseif skill 'carpentry' &lt; 40;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 15;waitforgump 0x38920abd 15000;replygump 0x38920abd 2;waitforgump 0x38920abd 2000;endif;elseif skill 'carpentry' &lt; 50;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 15;waitforgump 0x38920abd 15000;replygump 0x38920abd 16;waitforgump 0x38920abd 2000;endif;elseif skill 'carpentry' &lt; 70;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 43;waitforgump 0x38920abd 15000;replygump 0x38920abd 128;waitforgump 0x38920abd 15000;endif;elseif skill 'carpentry' &lt; 75;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 72;waitforgump 0x38920abd 2000;endif;elseif skill 'carpentry' &lt; 90;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 22;waitforgump 0x38920abd 15000;replygump 0x38920abd 9;waitforgump 0x38920abd 2000;endif;elseif skill 'carpentry' &lt; 100;if usetype 0x1034 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 22;waitforgump 0x38920abd 15000;replygump 0x38920abd 16;waitforgump 0x38920abd 2000;endif;else;headmsg 'Carpentry completed!';stop;endif;if contents 'backpack' > 115 or diffweight &lt; 20;for 0 to carpjunk;while @movetype carpjunk[] 'backpack' 'trash';endwhile;endfor;endif;</macro>
  119. <macro loop="True" interrupt="False" name="Mining">//1. need 2 full runebooks marked 1 tile south of the mineable locations;//2. macro assumes you have tinkering and spot at dropoff location to restock ingots;//3. Organizer agent 'Ore' needs to be configured from your backpack to dropoff container and have the 4 ore graphics and 6 mining gems;//4. pauses after recalls are set to 2000 for 0Faster Casting. Change to 1750 for 1FC and 1500 for 2FC;if not @findobject 'IngotsSource';useobject 'HomeOre';waitforgump 0x554b87f3 5000;replygump 0x554b87f3 5;pause 2000;if not @findobject 'IngotsSource';promptalias 'IngotsSource';endif;endif;if not @findobject 'OreBookOne';promptalias 'OreBookOne';endif;if not @findobject 'OreBookTwo';promptalias 'OreBookTwo';endif;if not @findobject 'HomeOre';promptalias 'HomeOre';endif;if not listexists 'OreBook';createlist 'OreBook';pushlist 'OreBook' 'OreBookOne';pushlist 'OreBook' 'OreBookTwo';endif;if not listexists 'Runes';createlist 'Runes';pushlist 'Runes' 5;pushlist 'Runes' 11;pushlist 'Runes' 17;pushlist 'Runes' 23;pushlist 'Runes' 29;pushlist 'Runes' 35;pushlist 'Runes' 41;pushlist 'Runes' 47;pushlist 'Runes' 53;pushlist 'Runes' 59;pushlist 'Runes' 65;pushlist 'Runes' 71;pushlist 'Runes' 77;pushlist 'Runes' 83;pushlist 'Runes' 89;pushlist 'Runes' 95;endif;For 0 to 'OreBook';For 0 to 'Runes';pause 500;clearjournal;pause 500;useobject OreBook[];waitforgump 0x554b87f3 5000;replygump 0x554b87f3 Runes[];//tells you which rune you are on, see runelist above;sysmsg 'Rune' 33;sysmsg Runes[] 33;pause 2000;while not @injournal 'no metal here';if mana &lt; 10;undress 'Mining Gloves';pause 2000;useskill 'meditation';pause 20000;dress 'Mining Gloves';pause 500;endif //use pickaxe to northern tile until specified weight is reached;pause 300;usetype 0xe86;waitfortarget 1000;targettileoffset 0 -1 0;// once weight is reached go home, if getting overweight, lower it;if @injournal 'mine there';clearjournal;playmacro 'Mining';endif;if weight > 405;useobject 'HomeOre';waitforgump 0x554b87f3 5000;replygump 0x554b87f3 5;pause 2000;// organizer to put up ore;organizer 'Ore';while organizing;endwhile;// get ingots if low;if counttype 0x1bf2 0 'backpack' &lt; 20;useobject 'IngotsSource';pause 1000;movetype 0x1bf2 'IngotsSource' 'backpack' (0 0 0) 0 40;pause 1000;endif;// kits;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 23;endwhile;//pickaxes;while @counttype 0xe86 0 'backpack' &lt; 3;usetype! 0x1eb8;waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 114;endwhile;//recall back to where you were;useobject OreBook[];waitforgump 0x554b87f3 5000;replygump 0x554b87f3 Runes[];pause 2000;endif;endwhile;endfor;//recall home so ingot container is found;pause 1000;useobject 'HomeOre';waitforgump 0x554b87f3 5000;replygump 0x554b87f3 5;pause 2000;endfor;</macro>
  120. <macro loop="True" interrupt="True" name="make last">replygump 0x38920abd 21;waitforgump 0x38920abd 15000;pause 500;</macro>
  121. <macro loop="False" interrupt="True" name="Smelt item">replygump 0x38920abd 14;waitfortarget 15000;</macro>
  122. <macro loop="True" interrupt="True" name="Lumberjacking">//1. need 2 full runebooks marked 1 tile south and same elevation of the choppable tree;//2. Organizer agent 'Boards' needs to be configured from your backpack to dropoff container with boards and 5 specials on it;//3. pauses after recalls are set to 2000 for 0fc. Change to 1750 for 1fc and 1500 for 2fc;@setalias 'beetle''0xea9ea';if not mounted 'self';useobject 'beetle';pause 500;endif;if not @findobject 'TreeBookOne';promptalias 'TreeBookOne';endif;if not @findobject 'TreeBookTwo';promptalias 'TreeBookTwo';endif;if not @findobject 'HomeLumber';promptalias 'HomeLumber';endif;if not listexists 'TreeBook';createlist 'TreeBook';pushlist 'TreeBook' 'TreeBookOne';pushlist 'TreeBook' 'TreeBookTwo';endif;if not listexists 'Runes';createlist 'Runes';pushlist 'Runes' 5;pushlist 'Runes' 11;pushlist 'Runes' 17;pushlist 'Runes' 23;pushlist 'Runes' 29;pushlist 'Runes' 35;pushlist 'Runes' 41;pushlist 'Runes' 47;pushlist 'Runes' 53;pushlist 'Runes' 59;pushlist 'Runes' 65;pushlist 'Runes' 71;pushlist 'Runes' 77;pushlist 'Runes' 83;pushlist 'Runes' 89;pushlist 'Runes' 95;endif;For 0 to 'TreeBook';For 0 to 'Runes';pause 500;clearjournal;pause 500;useobject TreeBook[];waitforgump 0x554b87f3 5000;replygump 0x554b87f3 Runes[];//tells you which rune you are on, see runelist above;sysmsg 'Rune' 33;sysmsg Runes[] 33;pause 2000;//equips axe if it's not SC;if not @findobject 'lefthand';//change type to your axe;if findtype 0xf45 0 'backpack';setalias 'axe' 'found';equipitem 'axe' 2;endif;endif;while not @injournal 'enough wood here';pause 300;//chop logs to boards;if @findtype 0x1bdd 'any' 'backpack';useobject 'LeftHand';waitfortarget 1000;target! 'found';else;//chop trees;useobject 'LeftHand';waitfortarget 1000;targettileoffset 0 -1 0;endif;// Change this if your getting overweight, Subtract 25 from your max weight.;if weight > 449;//make remaining logs boards;while @findtype 0x1bdd 'any' 'backpack';useobject 'LeftHand';waitfortarget 1000;target! 'found';pause 500;endwhile;//recall home;useobject 'HomeLumber';waitforgump 0x554b87f3 5000;replygump 0x554b87f3 5;pause 2000;//unload;organizer 'Boards';while organizing;pause 500;endwhile;//go back to where you were;useobject TreeBook[];waitforgump 0x554b87f3 5000;replygump 0x554b87f3 Runes[];pause 2000;//re-equip axe if needed;if not @findobject 'lefthand';equipitem 'axe' 2;pause 1000;endif;endif;if @injournal 'use an axe';break;endif;endwhile;endfor;endfor;//unload;organizer 'Boards';while organizing;pause 500;if counttype 0x1bd7 0 'FletcherDropoff' >= 30000;playmacro 'Fletch and Saw';endif;endwhile;</macro>
  123. <macro loop="True" interrupt="False" name="training">setalias 'boards' 0x40a770a2;if @counttype 0x1bd7 'any' 'backpack' &lt; 20;movetype 0x1bd7 'boards''backpack' 0 0 0 'any' 300;endif;setalias 'trashbarrel' 0x4005c42d;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 23;waitforgump 0x38920abd 15000;endwhile;while @counttype 0x1022 0 'backpack' &lt; 2;usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 142;waitforgump 0x38920abd 15000;endwhile;if skill 'bowcraft' == 100;stop;endif;usetype '0x1022' 'any' 'backpack' '2';if not findtype '0x1022' '0' 'backpack' 'any' '2';headmsg 'No Fletching Tools Found';endif;if skill 'bowcraft' &lt; 30;headmsg 'Buy More Skill';endif;if skill 'bowcraft' &lt; 60;usetype '0x1022' 'any' 'backpack' '2';replygump 0x38920abd 15;waitforgump 0x38920abd 15000;replygump 0x38920abd 2;waitforgump 0x38920abd 15000;endif;if @findtype 0x13b2;movetype 0x13b2 'backpack''trashbarrel';endif;if skill 'bowcraft' &lt; 80;usetype '0x1022' 'any' 'backpack' '2';replygump 0x38920abd 15;waitforgump 0x38920abd 15000;replygump 0x38920abd 9;waitforgump 0x38920abd 15000;if @findtype 0xf50;movetype 0xf50 'backpack''trashbarrel';endif;endif;if skill 'bowcraft' >= 80;usetype '0x1022' 'any' 'backpack' '2';replygump 0x38920abd 15;waitforgump 0x38920abd 15000;replygump 0x38920abd 16;waitforgump 0x38920abd 15000;if @findtype 0x13fd;movetype 0x13fd 'backpack''trashbarrel';endif;endif;</macro>
  124. <macro loop="False" interrupt="True" name="Fishing Bottle">//Author: Lopsang;while diffhits > 30 and not dead;autotargetself;bigheal;pause 1500;endwhile;pause 4000;getenemy 'gray' 'criminal' 'closest';while @findobject 'enemy';if @inrange 'enemy' 10;@autotargetenemy;attack 'enemy';endif;endwhile;if not @findobject 'bow';promptalias 'bow';endif;if not @findobject 'lefthand';equipitem 'bow' 2;endif;pause 4000;if dead;playsound 'error.wav';else;playsound 'alert.wav';endif;</macro>
  125. <macro loop="True" interrupt="True" name="Fishing Start">//Author: Lopsang;if not @listexists 'xaxis';@createlist 'xaxis';@pushlist 'xaxis' 3;@pushlist 'xaxis' -3;endif;if not @listexists 'yaxis';@createlist 'yaxis';@pushlist 'yaxis' 3;@pushlist 'yaxis' -3;endif;if not @listexists 'fishjunk';@createlist 'fishjunk';@pushlist 'fishjunk''0x170d';@pushlist 'fishjunk''0x1711';@pushlist 'fishjunk''0x170b';@pushlist 'fishjunk''0x170f';@pushlist 'fishjunk''0xdd6';endif;if not listexists 'fish';createlist 'fish';@pushlist 'fish' '0x9ce';@pushlist 'fish'' 0x9cf';@pushlist 'fish' '0x9cc';@pushlist 'fish' '0x9cd';endif;while dead;playsound 'error.wav';pause 8000;endwhile;if not @findobject 'bow';promptalias 'bow';endif;if not @findobject 'lefthand';equipitem 'bow' 2;endif;if not @findobject 'pole' and @findtype 0xdbf 0x0 'self';setalias 'pole' 'found';endif;for 0 to 'xaxis';for 0 to 'yaxis';while not @injournal 'biting' 'system';while dead;playsound 'error.wav';pause 8000;endwhile;@canceltarget;@useobject 'pole';waitfortarget 2000;targettileoffset! 'xaxis[]' 'yaxis[]' 0;pause 500;if not @injournal 'biting' 'system';pause 7750;endif;if @injournal 'pull a bottle' 'system';clearjournal;playmacro 'Fishing Bottle';endif;if @injournal 'mess' 'system';clearjournal;@usetype! 0xdd6;pause 1000;@usetype! 0xdd6;pause 1000;endif;if @injournal 'closer' 'system';clearjournal;resync;endif;//fishing cleanup;if weight >= maxweight;for 0 to 'fish';while @findtype fish[] 'any' 'backpack';usetype! 0xf52;waitfortarget 1000;target! 'found';pause 600;endwhile;while @findtype 0xdd6 'any' 'backpack';@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170f 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170b 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170f 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found';'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x1711 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170d 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);pause 100;endwhile;endfor;// adds to fishsteak pile on floor;if @findtype 0x97a 'any' 'ground' 'any' 2;movetype 0x97a 'backpack' 'found';pause 600;else;//starts fishsteak pile on floor if doesnt exist;movetypeoffset 0x97a 'backpack' 'ground';pause 600;endif;endif;//end fishing cleanup;while diffhits > 30 and not dead;autotargetself;bigheal;pause 1500;if not @findobject 'lefthand';equipitem 'bow' 2;endif;endwhile;getenemy 'gray' 'criminal' 'closest';if @inrange 'enemy' 10;@autotargetenemy;attack 'enemy';endif;endwhile;clearjournal;endfor;clearjournal;endfor;msg 'forward';pause 4000;msg 'stop';</macro>
  126. <macro loop="True" interrupt="True" name="Fletching Quests">@setalias 'FletcherDropoff' '0x40324389';@setalias 'beetle''0x1bc49d';@setalias 'FletcherRunebook' '0x43981306';//^^^set these 3 to yours;@removelist 'woodhue';@removelist 'magechiv';@removelist 'magechiv2';@removelist 'bond';@createlist 'woodhue';@createlist 'magechiv';@createlist 'magechiv2';@createlist 'bond';//plain=0, oak=2010, ash=1191 | mage=5,11 chiv = 7,13 | bond = 10, unbond = 9;@pushlist 'woodhue' 0;@pushlist 'magechiv' 5;@pushlist 'magechiv2' 11;@pushlist 'bond' 10;//1. Character needs Fletching and Tinkering, a Fletching Bonus talisman saves resources;//2. FletcherDropoff container needs bolts, ingots, boards in it;//3. FletcherRunebook needs 1st rune to be Dropoff location and 2nd rune near Heartwood entrance;//4. Start in Heartwood with a beetle full of only boards. Have crafted tinker tools, 40 ingots, and 200 bolts in your pack or start at your Dropoff location to restock these items;//5. Have meat in your pack to feed beetle, 1 meat used per hour;//6. If multiple stacks of boards at your dropoff, script will begin encountering errors when one of the stacks drop below 1600, combine them before this happens;@setalias 'Fletching Quest Giver' 0x114;@setalias 'Trash Barrel'0x40053f97;if not listexists 'Talismans';@createlist 'Talismans';@pushlist 'Talismans' 0x2f58;@pushlist 'Talismans' 0x2f59;@pushlist 'Talismans' 0x2f5a;@pushlist 'Talismans' 0x2f5b;endif;if not listexists 'Slayers';@createlist 'Slayers';@pushlist 'Slayers' 'Ice Slayer';@pushlist 'Slayers' 'Flame Slayer';@pushlist 'Slayers' 'Vermin Slayer';@pushlist 'Slayers' 'Mage Slayer';@pushlist 'Slayers' 'Bird Slayer';endif;if not listexists 'Killers';@createlist 'Killers';@pushlist 'Killers' 'Yamandon Killer';@pushlist 'Killers' 'Lich Killer';@pushlist 'Killers' 'Lich Lord Killer';@pushlist 'Killers' 'Dread Spider Killer';@pushlist 'Killers' 'Ice Fiend Killer';@pushlist 'Killers' 'Eagle Killer';endif;if not listexists 'Protection';@createlist 'Protection';@pushlist 'Protection' 'Yamandon Protection';@pushlist 'Protection' 'Lich Protection';@pushlist 'Protection' 'Lich Lord Protection';@pushlist 'Protection' 'Dread Spider Protection';//@pushlist 'Protection' 'Giant Black Widow Protection';@pushlist 'Protection' 'Silver Serpent Protection';@pushlist 'Protection' 'Eagle Protection';endif;if not listexists 'Jewelry';@createlist 'Jewelry';@pushlist 'Jewelry' 0x108a;@pushlist 'Jewelry' 0x1f09;@pushlist 'Jewelry' 0x1086;@pushlist 'Jewelry' 0x1f06;endif;if not timerexists 'feedPet';createtimer 'feedPet';endif;//stop if you lack skills;if skill 'Tinkering' &lt; 45;sysmsg 'You need 50+ tinkering to run this macro effectively.' 34;stop;elseif skill 'Bowcraft' &lt; 90;sysmsg 'You need at least 90 (preferrably 100) bowcrafting to run this macro. You will also want a Fletching bonus talisman' 34;stop;endif;//stop macro if you forgot to restock bolts or ingots or have no tinker tools;if counttype 0x1bf2 0 'backpack' == 0 and not @inrange 'FletcherDropoff' 2;sysmsg 'Restock ingots before starting!' 33;stop;endif;if counttype 0x1bfb 0 'backpack' == 0 and counttype 0x1bfb 1258 'backpack' == 0;if not @inrange 'FletcherDropoff' 2;sysmsg 'Restock bolts before starting!' 33;stop;endif;endif;if @counttype 0x1eb8 0 'backpack' == 0;sysmsg 'Get crafted tinker tools (0x1eb8) before starting!' 33;stop;endif;// make tinker tools;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 3000;replygump 0x38920abd 8;waitforgump 0x38920abd 3000;replygump 0x38920abd 23;endwhile;// make plain fletcher kits;while @counttype 0x1022 0 'backpack' &lt; 3;usetype! 0x1eb8;waitforgump 0x38920abd 3000;replygump 0x38920abd 8;waitforgump 0x38920abd 3000;replygump 0x38920abd 142;endwhile;for 0 to 'magechiv';for 0 to 'magechiv2';for 0 to 'bond';for 0 to 'woodhue';//if starting macro from Dropoff location, then go through that same process as above to restock and navigate to Heartwood;if @inrange 'FletcherDropoff' 2;//open containers;useobject 'self';pause 1000;useobject 'FletcherDropoff';pause 1000;waitforcontext 'beetle' bond[] 15000;pause 1000;//unload jewels;while counttype 0x108a 'any' 'backpack' > 0;movetype 0x108a 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f09 'any' 'backpack' > 0;movetype 0x1f09 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f06 'any' 'backpack' > 0;movetype 0x1f06 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1086 'any' 'backpack' > 0;movetype 0x1086 'backpack' 'FletcherDropoff';pause 500;endwhile;//unload kits;while counttype 0x1022 1191 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1191 1;pause 500;endwhile;while counttype 0x1022 2010 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 2010 1;pause 500;endwhile;while counttype 0x1022 1192 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1192 1;pause 500;endwhile;while counttype 0x1022 1193 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1193 1;pause 500;endwhile;//unload talismans;while counttype 0x2f58 0 'backpack' > 0;movetype 0x2f58 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f59 0 'backpack' > 0;movetype 0x2f59 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5a 0 'backpack' > 0;movetype 0x2f5a 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5b 0 'backpack' > 0;movetype 0x2f5b 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;//get more bolts;if counttype 0x1bfb 0 'backpack' &lt; 130;if counttype 0x1bfb 0 'FletcherDropoff' &lt; 200;sysmsg 'Out of Bolts!' 33;useobject 'beetle';stop;endif;movetype 0x1bfb 'FletcherDropoff' 'backpack' (0 0 0) 0 200;pause 1000;endif;// get ingots if low;if counttype 0x1bf2 0 'backpack' &lt; 20;if counttype 0x1bf2 0 'FletcherDropoff' &lt; 40;sysmsg 'Out of Ingots!' 33;useobject 'beetle';stop;endif;movetype 0x1bf2 'FletcherDropoff' 'backpack' (0 0 0) 0 40;pause 1000;endif;//get boards on beetle and self;//first make sure beetle is empty, sometimes UOS won't pull 200 boards and you end up with odd number left behind;if counttype 0x1bd7 'any' 'beetle' > 0;while counttype 0x1bd7 'any' 'beetle' > 1599;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1600;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 499;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 500;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 99;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 100;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 24;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 25;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 4;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 5;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 0;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1;pause 500;endwhile;endif;//stop if FletcherDropoff is out of boards;pause 1000;useobject 'FletcherDropoff';pause 1000;if counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;sysmsg 'Out of Boards!' 33;useobject 'beetle';@playmacro 'Lumberjacking';while counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;pause 20000;endwhile;endif;//fill beetle with boards;if mounted 'self';pause 550;useobject 'self';pause 1000;waitforcontext 'beetle' bond[] 15000;endif;movetype 0x1bd7 'FletcherDropoff' 'beetle' (0 0 0) woodhue[] 1600;pause 1000;//move boards to your pack based on how low your pack is;//max weight minus 350;if weight &lt; 175;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 350;pause 1000;//max weight minus 300;elseif weight &lt; 225;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 300;pause 1000;//max weight minus 250;elseif weight &lt; 275;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 250;pause 1000;//max weight minus 200;elseif weight &lt; 325;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 200;pause 1000;//max weight minus 150;elseif weight &lt; 375;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 150;pause 1000;//max weight minus 100;elseif weight &lt; 425;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 100;pause 1000;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 1;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 1;pause 1000;endif;//set fletching kits to correct wood type;if @findtype 0x1bd7 0 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 6;waitforgump 0x38920abd 1000;pause 550;//warn if other color boards or bows in pack;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;elseif @findtype 0x1bd7 2010 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 13;waitforgump 0x38920abd 1000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 0 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 0 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 0 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 0 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 0 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;elseif @findtype 0x1bd7 1191 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 2000;@replygump 0x38920abd 7;waitforgump 0x38920abd 2000;@replygump 0x38920abd 20;waitforgump 0x38920abd 2000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 0 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 0 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 0 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 0 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 0 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;endif;//mount beetle and recall back to heartwood;pause 1000;useobject 'beetle';pause 2000;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv2[];pause 2000;//if the rune is blocked, pause 2 min to give time for NPCs to move, this prevents the character from running across the world from your dropoff;if injournal 'blocked' 'system';sysmsg 'Rune blocked, trying again in 2 minutes' 33;pause 120000;clearjournal;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv2[];pause 2000;//if it's still blocked, stop macro;if injournal 'blocked' 'system';sysmsg 'Rune still blocked, stopping macro' 33;clearjournal;stop;endif;endif;//navigate to heartwood entrance;while y != 992 and y > 400;for 2;if y > 992;walk 'north';endif;pause 250;if y &lt; 992;walk 'south';endif;pause 250;endfor;endwhile;if x > 535 and x &lt; 1000;while x > 535 and x &lt; 1000;run 'west';pause 100;endwhile;endif;if x &lt; 537;while x &lt; 537;run 'east';pause 100;endwhile;endif;//navigate through heartwood to quest area;while y &lt; 377;run 'southeast';endwhile;pause 500;while y > 378;walk 'north';pause 500;endwhile;while y &lt; 378;walk 'south';pause 500;endwhile;while x &lt; 7037;run 'east';endwhile;//dismount;pause 500;useobject 'self';pause 700;useobject 'Trash Barrel';pause 700;waitforcontext 'beetle' bond[] 3000;pause 700;if counttype 0x1bd7 woodhue[] 'backpack' &lt; 150;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 2000;endif;//restock boards from beetle;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 150;if counttype 0x1bd7 woodhue[] 'beetle' > 199;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 2000;//if beetle empty, leave heartwood;else;msg 'Celine is the Queen of Demise!' 33;useobject 'beetle';pause 1000;msg 'Long live the Queen!' 33;while x > 7028;run 'west';endwhile;pause 300;while y > 342;run "Northwest";pause 100;endwhile;while x &lt; 6987;walk 'east';pause 150;endwhile;while x > 6987;walk 'west';pause 150;endwhile;while y != 338 and y &lt; 600;for 5;if y > 338 and y &lt; 600;walk 'north';pause 250;endif;if y &lt; 338 and y &lt; 600;walk 'south';pause 250;endif;endfor;endwhile;while x > 1000;while y > 338 and y &lt; 600;turn 'north';walk 'north';pause 250;endwhile;while y &lt; 338 and y &lt; 600;turn 'south';walk 'south';pause 250;endwhile;run 'west';endwhile;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;//recall home;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv[];pause 2000;endif;elseif @inrange 'Trash Barrel' 2;//dismount if not when macro started;if mounted;useobject 'self';pause 1000;waitforcontext 'beetle' bond[] 15000;pause 1000;useobject 'Trash Barrel';pause 1000;endif;// Hourly feed pet;if timer 'feedPet' >= 3600000;feed 'beetle' 'Meat' 'any' 1;pause 500;if injournal 'happier';settimer 'feedPet' 0;sysmsg 'Pet Fed' 33;clearjournal;else;sysmsg 'Out of Meat!' 33;useobject 'beetle';clearjournal;stop;endif;endif;//get a quest;@useobject 'Fletching Quest Giver';waitforgump 0x19bc4061 2000;//SimpleBow;if @ingump 0x19bc4061 'crafted in the human style';replygump 0x19bc4061 1;pause 550;while counttype 0x13b2 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 2;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13b2 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x13b2 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//SimpleBow already in progress;elseif @ingump 0xa8b319c6 'debt if you bring me bows';while counttype 0x13b2 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 2;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13b2 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x13b2 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious I;elseif @ingump 0x19bc4061 'such an instrument for me?';replygump 0x19bc4061 1;pause 550;while counttype 0xf50 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 9;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0xf50 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0xf50 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious I already in progress;elseif @ingump 0xa8b319c6 'debt if you bring me crossbows';while counttype 0xf50 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 9;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0xf50 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0xf50 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious 2;elseif @ingump 0x19bc4061 'remarkable instrument of war';replygump 0x19bc4061 1;pause 550;while counttype 0x13fd 'any' 'backpack' &lt; 8;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 16;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13fd 0x4ea 'backpack' != 8 and timer 'toggletimeout' &lt; 5000;@targettype 0x13fd woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious 2 already in progress;elseif @ingump 0xa8b319c6 'debt if you bring me heavy crossbows';while counttype 0x13fd 'any' 'backpack' &lt; 8;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 16;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13fd 0x4ea 'backpack' != 8 and timer 'toggletimeout' &lt; 5000;@targettype 0x13fd woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious 3;elseif @ingump 0x19bc4061 'remarkable human ingenuity';replygump 0x19bc4061 1;pause 550;while counttype 0x26c3 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 30;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x26c3 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x26c3 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//Ingenious 3 already in progress;elseif @ingump 0xa8b319c6 'debt if you bring me repeating crossbows';while counttype 0x26c3 'any' 'backpack' &lt; 10;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 5000;replygump 0x38920abd 15;waitforgump 0x38920abd 5000;replygump 0x38920abd 30;waitforgump 0x38920abd 5000;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x26c3 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x26c3 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//LethalDart;elseif @ingump 0x19bc4061 'deadly crossbow bolt';if @findtype 0x1bfb 'any' 'backpack' 10;replygump 0x19bc4061 1;pause 550;pause 300;if color 'found' == 0;waitforcontext 'self' 4 5000;waitfortarget 5000;Target! 'found';waitfortarget 5000;endif;endif;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//LethalDart in progress;elseif @ingump 0xa8b319c6 'debt if you bring me crossbow bolts';if @findtype 0x1bfb 'any' 'backpack' 10;pause 300;if color 'found' == 0;waitforcontext 'self' 4 5000;waitfortarget 5000;Target! 'found';waitfortarget 5000;endif;endif;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 3000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;pause 1000;//quest done except for talking to quest giver again;elseif @ingump 0xdf31ecf8 'My thanks';replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;//refuse Harp quest so not obscuring screen;elseif @ingump 0x19bc4061 'melodious of music';replygump 0x19bc4061 2;waitforgump 0xa8b319c6 3000;replygump 0xa8b319c6 3;endif;// Handle reward bags;while @findtype 0xe75 'any' 'backpack';pause 550;@setalias 'trash' 'found';@useobject! 'trash';pause 550;// fletcher Runics;while @findtype 0x1022 'any' 'trash';@moveitem! 'found' 'backpack';pause 1000;if color 'found' == 2010;//uncomment this next line to throw Oak kits on the ground;moveitemoffset 'found' 'ground' (0 2 0);pause 550;elseif color 'found' == 1191;//uncomment this next line to throw Ash kits on the ground;//moveitemoffset 'found' 'ground' (0 2 0);pause 550;elseif color 'found' == 1192;msg 'Nice, a Yew kit' 33;elseif color 'found' == 1193;msg 'Woohoo! Heartwood!' 63;endif;ignoreobject 'found';endwhile;// Talismans;for 0 to 'Talismans';while @findtype Talismans[] 0 'trash';waitforproperties 'found' 15000;//crafting bonus and exceptional bonus talismans;if @property 'Tinkering Exceptional Bonus' 'found' >= 20 and @property 'Tinkering Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Alchemy Bonus' 'found' >= 29 or @property 'Fletching Bonus' 'found' >= 29;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Fletching Exceptional Bonus' 'found' >= 20 and @property 'Fletching Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Tailoring Exceptional Bonus' 'found' >= 20 and @property 'Tailoring Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Carpentry Exceptional Bonus' 'found' >= 20 and @property 'Carpentry Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Inscription Bonus' 'found' >= 29 or @property 'Cooking Bonus' 'found' >= 29;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Blacksmithing Exceptional Bonus' 'found' >= 20 and @property 'Blacksmithing Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;endif;//get slayers;for 0 to 'Slayers';if @property Slayers[] 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get killers;for 0 to 'Killers';if @property Killers[] 'found' >= 90;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get protections;for 0 to 'Protection';if @property Protection[] 'found' >= 50;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;ignoreobject 'found';endwhile;endfor;//Jewels;for 0 to 'Jewelry';while @findtype Jewelry[] 0 'trash';waitforproperties 'found' 15000;//EP DI jewels;if @property 'Enhance Potions' 'found' >= 15 and @property 'Damage Increase' 'found' >= 15;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Faster Cast Recovery' 'found' == 3;@moveitem! 'found' 'backpack';pause 1000;break;endif;//save 1/2 and 1/1;if @property 'Faster Cast Recovery' 'found' > 0 and @property 'Faster Casting' 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;//hci and dci jewels, other usable hci dci jewels will be captured by above;if @property 'Defense chance increase' 'found' >= 10 and @property 'Hit chance increase' 'found' >= 5;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Hit chance increase' 'found' >= 12;@moveitem! 'found' 'backpack';pause 1000;break;endif;ignoreobject 'found';endwhile;endfor;clearignorelist;@moveitem! 'trash' 'Trash Barrel';pause 550;endwhile;else;// if you're not at Trash Barrel or FletcherDropoff, then stop;sysmsg 'You need to be next to the Trash Barrel or your FletcherDropoff container when starting this macro' 33;stop;endif;endfor;endfor;endfor;endfor;</macro>
  127. <macro loop="True" interrupt="True" name="blah">moveitem 0x401aa1c0 'bank' 34 125 0;pause 600;moveitem (serial) (destination) [(x y z)] [amount];</macro>
  128. <macro loop="True" interrupt="True" name="trash fishjunk">while @findtype 0xdd6 'any' 'backpack';@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170f 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170b 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170f 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found';'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x1711 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);endwhile;while @findtype 0x170d 'any' 'backpack';pause 100;@moveitemoffset 'found' 'ground' (-2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (2 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 -1 0);pause 100;@moveitemoffset 'found' 'ground' (0 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -1 0);pause 100;@moveitemoffset 'found' 'ground' (-1 1 0);pause 100;@moveitemoffset 'found' 'ground' (-2 1 0);pause 100;@moveitemoffset 'found' 'ground' (2 1 0);pause 100;@moveitemoffset 'found' 'ground' (1 2 0);pause 100;@moveitemoffset 'found' 'ground' (1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 2 0);pause 100;@moveitemoffset 'found' 'ground' (-1 -2 0);pause 100;@moveitemoffset 'found' 'ground' (-2 -1 0);pause 100;@moveitemoffset 'found' 'ground' (2 -1 0);pause 100;endwhile;if not @listexists 'fishjunk';@createlist 'fishjunk';@pushlist 'fishjunk''0x170d';@pushlist 'fishjunk''0x1711';@pushlist 'fishjunk''0x170b';@pushlist 'fishjunk''0x170f';@pushlist 'fishjunk''0xdd6';endif;for 0 to 'fishjunk';while @findtype fishjunk[] 'any' 'backpack';movetypeoffset 'fishjunk' 'backpack' 'ground';endwhile;endfor;</macro>
  129. <macro loop="False" interrupt="True" name="GetBod">waitforcontext 'self' 1 15000;waitforcontext 0x4104b 1 15000;waitforgump 0x9bade6ea 3000;replygump 0x9bade6ea 1;pause 1500;waitforcontext 0x4102e 1 15000;waitforgump 0x9bade6ea 3000;replygump 0x9bade6ea 1;pause 1500;while @findtype 0x2259 'any' 'backpack';waitforproperties 'found' 2000;if @property 'BS' 'found';//msg a;setalias 'BS' 'found';ignoreobject 'found';else;setalias 'Tailor' 'found';ignoreobject 'found';endif;endwhile;while @findtype 0x2258 1102 'backpack';@moveitem 'found' 'BS';endwhile;while @findtype 0x2258 1155 'backpack';@moveitem 'found' 'Tailor';endwhile;if not hidden 'self';useskill 'hiding';endif;pause 1500;clearignorelist;logoutbutton;</macro>
  130. <macro loop="True" interrupt="True" name="Carpentry Quest">@setalias 'FletcherDropoff' '0x40324389';@setalias 'beetle''0x1bc49d';@setalias 'FletcherRunebook' '0x43981306';//^^^set these 3 to yours;@removelist 'woodhue';@removelist 'magechiv';@removelist 'magechiv2';@removelist 'bond';@createlist 'woodhue';@createlist 'magechiv';@createlist 'magechiv2';@createlist 'bond';if not listexists 'Carpentry Recipes';@createlist 'Carpentry Recipes';@pushlist 'Carpentry Recipes' 'Bramble Coat';@pushlist 'Carpentry Recipes' 'Ironwood Crown';@pushlist 'Carpentry Recipes' 'Phantom Staff';@pushlist 'Carpentry Recipes' 'Acid Proof Rope';endif;//plain=0, oak=2010, ash=1191 | mage=5,11 chiv = 7,13 | bond = 10, unbond = 9;@pushlist 'woodhue' 0;@pushlist 'magechiv' 5;@pushlist 'magechiv2' 11;@pushlist 'bond' 10;//1. Character needs Carpentry and Tinkering, a Carpentry Bonus talisman saves resources;//2. FletcherDropoff container needs bolts, ingots, boards in it;//3. FletcherRunebook needs 1st rune to be Dropoff location and 2nd rune near Heartwood entrance;//4. Start in Heartwood with a beetle full of only boards. Have crafted tinker tools, 40 ingots, and 200 bolts in your pack or start at your Dropoff location to restock these items;//5. Have meat in your pack to feed beetle, 1 meat used per hour;//6. If multiple stacks of boards at your dropoff, script will begin encountering errors when one of the stacks drop below 1600, combine them before this happens;@setalias 'Carpentry Quest Giver' 0xdf;@setalias 'Trash Barrel'' 0x402124a0';if not listexists 'Talismans';@createlist 'Talismans';@pushlist 'Talismans' 0x2f58;@pushlist 'Talismans' 0x2f59;@pushlist 'Talismans' 0x2f5a;@pushlist 'Talismans' 0x2f5b;endif;if not listexists 'Slayers';@createlist 'Slayers';@pushlist 'Slayers' 'Ice Slayer';@pushlist 'Slayers' 'Flame Slayer';@pushlist 'Slayers' 'Vermin Slayer';@pushlist 'Slayers' 'Mage Slayer';@pushlist 'Slayers' 'Bird Slayer';endif;if not listexists 'Killers';@createlist 'Killers';@pushlist 'Killers' 'Yamandon Killer';@pushlist 'Killers' 'Lich Killer';@pushlist 'Killers' 'Lich Lord Killer';@pushlist 'Killers' 'Dread Spider Killer';@pushlist 'Killers' 'Ice Fiend Killer';@pushlist 'Killers' 'Eagle Killer';endif;if not listexists 'Protection';@createlist 'Protection';@pushlist 'Protection' 'Yamandon Protection';@pushlist 'Protection' 'Lich Protection';@pushlist 'Protection' 'Lich Lord Protection';@pushlist 'Protection' 'Dread Spider Protection';//@pushlist 'Protection' 'Giant Black Widow Protection';@pushlist 'Protection' 'Silver Serpent Protection';@pushlist 'Protection' 'Eagle Protection';endif;if not listexists 'Jewelry';@createlist 'Jewelry';@pushlist 'Jewelry' 0x108a;@pushlist 'Jewelry' 0x1f09;@pushlist 'Jewelry' 0x1086;@pushlist 'Jewelry' 0x1f06;endif;if not timerexists 'feedPet';createtimer 'feedPet';endif;//stop if you lack skills;if skill 'Tinkering' &lt; 45;sysmsg 'You need 50+ tinkering to run this macro effectively.' 34;stop;elseif skill 'Carpentry' &lt; 100;sysmsg 'You need at least 100 bowcrafting to run this macro. You will also want a Carpentry bonus talisman' 34;stop;endif;//stop macro if you forgot to restock bolts or ingots or have no tinker tools;if counttype 0x1bf2 0 'backpack' == 0 and not @inrange 'FletcherDropoff' 2;sysmsg 'Restock ingots before starting!' 33;stop;endif;//Check for crafted tinker tools;if @counttype 0x1eb8 0 'backpack' == 0;sysmsg 'Get crafted tinker tools (0x1eb8) before starting!' 33;stop;endif;// make tinker tools;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 3000;replygump 0x38920abd 8;waitforgump 0x38920abd 3000;replygump 0x38920abd 23;endwhile;// make plain carpentry saws;while @counttype 0x1034 0 'backpack' &lt; 3;usetype! 0x1eb8;waitforgump 0x38920abd 3000;replygump 0x38920abd 8;waitforgump 0x38920abd 3000;replygump 0x38920abd 51;endwhile;for 0 to 'magechiv';for 0 to 'magechiv2';for 0 to 'bond';for 0 to 'woodhue';//if starting macro from Dropoff location, then go through that same process as above to restock and navigate to Heartwood;if @inrange 'FletcherDropoff' 2;//open containers;useobject 'self';pause 1000;useobject 'FletcherDropoff';pause 1000;waitforcontext 'beetle' bond[] 15000;pause 1000;//unload jewels;while counttype 0x108a 'any' 'backpack' > 0;movetype 0x108a 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f09 'any' 'backpack' > 0;movetype 0x1f09 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f06 'any' 'backpack' > 0;movetype 0x1f06 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1086 'any' 'backpack' > 0;movetype 0x1086 'backpack' 'FletcherDropoff';pause 500;endwhile;//unload kits;while counttype 0x1028 1191 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1191 1;pause 500;endwhile;while counttype 0x1028 2010 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 2010 1;pause 500;endwhile;while counttype 0x1028 1192 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1192 1;pause 500;endwhile;while counttype 0x1028 1193 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1193 1;pause 500;endwhile;//unload talismans;while counttype 0x2f58 0 'backpack' > 0;movetype 0x2f58 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f59 0 'backpack' > 0;movetype 0x2f59 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5a 0 'backpack' > 0;movetype 0x2f5a 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5b 0 'backpack' > 0;movetype 0x2f5b 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;// get ingots if low;if counttype 0x1bf2 0 'backpack' &lt; 20;if counttype 0x1bf2 0 'FletcherDropoff' &lt; 40;sysmsg 'Out of Ingots!' 33;useobject 'beetle';stop;endif;movetype 0x1bf2 'FletcherDropoff' 'backpack' (0 0 0) 0 40;pause 1000;endif;//get boards on beetle and self;//first make sure beetle is empty, sometimes UOS won't pull 200 boards and you end up with odd number left behind;if counttype 0x1bd7 'any' 'beetle' > 0;while counttype 0x1bd7 'any' 'beetle' > 1599;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1600;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 499;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 500;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 99;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 100;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 24;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 25;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 4;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 5;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 0;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1;pause 500;endwhile;endif;//stop if FletcherDropoff is out of boards;pause 1000;useobject 'FletcherDropoff';pause 1000;if counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;sysmsg 'Out of Boards!' 33;useobject 'beetle';@playmacro 'Lumberjacking';while counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;pause 20000;endwhile;endif;//fill beetle with boards;if mounted 'self';pause 550;useobject 'self';pause 1000;waitforcontext 'beetle' bond[] 15000;endif;movetype 0x1bd7 'FletcherDropoff' 'beetle' (0 0 0) woodhue[] 1600;pause 1000;//move boards to your pack based on how low your pack is;//max weight minus 350;if weight &lt; 175;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 350;pause 1000;//max weight minus 300;elseif weight &lt; 225;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 300;pause 1000;//max weight minus 250;elseif weight &lt; 275;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 250;pause 1000;//max weight minus 200;elseif weight &lt; 325;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 200;pause 1000;//max weight minus 150;elseif weight &lt; 375;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 150;pause 1000;//max weight minus 100;elseif weight &lt; 425;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 100;pause 1000;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 1;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 1;pause 1000;endif;//set saws to correct wood type;if @findtype 0x1bd7 0 'backpack';pause 550;usetype! 0x1034;waitforgump 0x38920abd 1000;replygump 0x38920abd 7;waitforgump 0x38920abd 1000;replygump 0x38920abd 6;pause 550;//warn if other color boards or bows in pack;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;elseif @findtype 0x1bd7 2010 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 13;waitforgump 0x38920abd 1000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 0 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 0 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 0 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 0 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 0 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;elseif @findtype 0x1bd7 1191 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 2000;@replygump 0x38920abd 7;waitforgump 0x38920abd 2000;@replygump 0x38920abd 20;waitforgump 0x38920abd 2000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 0 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 0 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 0 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 0 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 0 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;endif;//mount beetle and recall back to heartwood;pause 1000;useobject 'beetle';pause 2000;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv2[];pause 2000;//if the rune is blocked, pause 2 min to give time for NPCs to move, this prevents the character from running across the world from your dropoff;if injournal 'blocked' 'system';sysmsg 'Rune blocked, trying again in 2 minutes' 33;pause 120000;clearjournal;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv2[];pause 2000;//if it's still blocked, stop macro;if injournal 'blocked' 'system';sysmsg 'Rune still blocked, stopping macro' 33;clearjournal;stop;endif;endif;//navigate to heartwood entrance;while y != 992 and y > 400;for 2;if y > 992;walk 'north';endif;pause 250;if y &lt; 992;walk 'south';endif;pause 250;endfor;endwhile;if x > 535 and x &lt; 1000;while x > 535 and x &lt; 1000;run 'west';pause 100;endwhile;endif;if x &lt; 537;while x &lt; 537;run 'east';pause 100;endwhile;endif;//navigate through heartwood to carpetry area;while y &lt; 377;run 'southeast';endwhile;pause 500;while y &lt; 377;run 'southeast';endwhile;pause 500;while x > 7023 and x &lt; 7025;walk 'west';pause 500;endwhile;pause 500;while y > 378 and y &lt; 393;run 'south';endwhile;pause 500;while x > 7022 and x &lt; 7027;walk 'east';pause 500;endwhile;pause 500;while y > 392 and y &lt; 408;run 'south';endwhile;pause 500;while x > 7026 and x &lt; 7030;walk 'east';pause 500;endwhile;pause 500;while y > 407 and y &lt; 413;run 'south';endwhile;//dismount;useobject 'self';pause 700;useobject 'Trash Barrel';pause 700;waitforcontext 'beetle' bond[] 3000;pause 700;if counttype 0x1bd7 woodhue[] 'backpack' &lt; 100;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 2000;endif;//restock boards from beetle;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 150;if counttype 0x1bd7 woodhue[] 'beetle' > 199;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 2000;//if beetle empty, leave heartwood;else;msg 'Celene is the Queen of Demise!' 33;useobject 'beetle';pause 1000;msg 'Long live the Queen!' 33;while x > 7025 and x &lt; 7032;run 'northwest';endwhile;pause 500;while y &lt; 410 and y > 388;walk 'Northeast';endwhile;pause 500;while x > 7030;walk 'Northwest';endwhile;pause 300;while x > 7026;walk 'west';endwhile;pause 300;while y > 340;run "Northwest";pause 100;endwhile;while x > 6985 and x &lt; 6991;walk 'west';pause 150;endwhile;while y > 338 and y &lt; 342;walk 'north';pause 250;endwhile;for 5;if y >= 338 and x > 6982;walk 'east';pause 250;endif;endfor;pause 2000;useobject 'FletcherRunebook';waitforgump 0x554b87f3 15000;replygump 0x554b87f3 []magechiv;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;//recall home;useobject 'FletcherRunebook';waitforgump 0x554b87f3 30000;replygump 0x554b87f3 magechiv[];pause 2000;endif;elseif @inrange 'Trash Barrel' 2;//dismount if not when macro started;if mounted;useobject 'self';pause 1000;waitforcontext 'beetle' bond[] 15000;pause 1000;useobject 'Trash Barrel';pause 1000;endif;// Hourly feed pet;if timer 'feedPet' >= 3600000;feed 'beetle' 'Meat' 'any' 1;pause 500;if injournal 'happier';settimer 'feedPet' 0;sysmsg 'Pet Fed' 33;clearjournal;else;sysmsg 'Out of Meat!' 33;useobject 'beetle';clearjournal;stop;endif;endif;if @findtype 0x1bd7 0 'backpack' 90;// Craft quest items;while @counttype 0xb5e 0 'backpack' &lt; 10;if usetype! 0x1034;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 2;waitforgump 0x38920abd 15000;else;sysmsg 'Out of saws!' 25;stop;endif;pause 1000;endwhile;@useobject! 'Carpentry Quest Giver';waitforgump 0x19bc4061 5000;if @ingump 0x19bc4061 "special stool";replygump 0x19bc4061 1;waitforcontext 'self' 4 1500;waitfortarget 800;pause 1000;elseif @ingump 0xa8b319c6 'debt if you bring me foot';// Mark items until quest is completed;while @counttype 0xb5e 0x4ea 'backpack' != 10;@targettype 0xb5e 0;pause 800;endwhile;@canceltarget;@useobject! 'Carpentry Quest Giver';waitforgump 0xdf31ecf8 5000;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 5000;replygump 0x96626c6e 1;pause 800;elseif @ingump 0x19bc4061 'crystal lattice seekers';replygump 0x19bc4061 2;waitforgump 0xa8b319c6 3000;replygump 0xa8b319c6 3;pause 1000;elseif @ingump 0x19bc4061 'crop of evil';replygump 0x19bc4061 2;waitforgump 0xa8b319c6 3000;replygump 0xa8b319c6 3;pause 1000;elseif @ingump 0x19bc4061 'piles of granite';replygump 0x19bc4061 2;waitforgump 0xa8b319c6 3000;replygump 0xa8b319c6 3;pause 2000;// Handle reward bags;endif;while @findtype 0xe75 'any' 'backpack';pause 550;@setalias 'trash' 'found';@useobject! 'trash';pause 550;// Runics;while @findtype 0x1028 'any' 'trash';@moveitem! 'found' 'backpack';pause 1000;if color 'found' == 2010;//uncomment this next line to throw Oak saws on the ground;moveitemoffset 'found' 'ground' (0 2 0);pause 550;elseif color 'found' == 1191;//uncomment this next line to throw Ash saws on the ground;moveitemoffset 'found' 'ground' (0 2 0);pause 550;elseif color 'found' == 1192;msg 'Nice, a Yew saw' 33;elseif color 'found' == 1193;msg 'Woohoo! Heartwood!' 63;endif;ignoreobject 'found';endwhile;// Carpentry Recipes;while @findtype 0x2831 0 'trash';waitforproperties 'found' 5000;for 0 to 'Carpentry Recipes';if @property 'Carpentry Recipes[]' 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;ignoreobject 'found';endwhile;// Talismans;for 0 to 'Talismans';while @findtype Talismans[] 0 'trash';waitforproperties 'found' 15000;//crafting bonus and exceptional bonus talismans;if @property 'Tinkering Exceptional Bonus' 'found' >= 20 and @property 'Tinkering Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Alchemy Bonus' 'found' >= 29 or @property 'Fletching Bonus' 'found' >= 29;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Fletching Exceptional Bonus' 'found' >= 20 and @property 'Fletching Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Tailoring Exceptional Bonus' 'found' >= 20 and @property 'Tailoring Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Carpentry Exceptional Bonus' 'found' >= 20 and @property 'Carpentry Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Inscription Bonus' 'found' >= 29 or @property 'Cooking Bonus' 'found' >= 29;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Blacksmithing Exceptional Bonus' 'found' >= 20 and @property 'Blacksmithing Bonus' 'found' >= 20;@moveitem! 'found' 'backpack';pause 1000;break;endif;//get slayers;for 0 to 'Slayers';if @property Slayers[] 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get killers;for 0 to 'Killers';if @property Killers[] 'found' >= 90;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get protections;for 0 to 'Protection';if @property Protection[] 'found' >= 50;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;ignoreobject 'found';endwhile;endfor;//Jewels;for 0 to 'Jewelry';while @findtype Jewelry[] 0 'trash';waitforproperties 'found' 15000;//EP DI jewels;if @property 'Enhance Potions' 'found' >= 15 and @property 'Damage Increase' 'found' >= 15;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Faster Cast Recovery' 'found' == 3;@moveitem! 'found' 'backpack';pause 1000;break;endif;//save 1/2 and 1/1;if @property 'Faster Cast Recovery' 'found' > 0 and @property 'Faster Casting' 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;//hci and dci jewels, other usable hci dci jewels will be captured by above;if @property 'Defense chance increase' 'found' >= 10 and @property 'Hit chance increase' 'found' >= 5;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Hit chance increase' 'found' >= 12;@moveitem! 'found' 'backpack';pause 1000;break;endif;ignoreobject 'found';endwhile;endfor;clearignorelist;@moveitem! 'trash' 'Trash Barrel';pause 550;endwhile;else;// if you're not at Trash Barrel or FletcherDropoff, then stop;sysmsg 'You need to be next to the Trash Barrel or your FletcherDropoff container when starting this macro' 33;stop;endif;endif;endfor;endfor;endfor;endfor;</macro>
  131. <macro loop="False" interrupt="True" name="Tinker Training">if not @listexists 'tinkjunk';createlist 'tinkjunk';pushlist 'tinkjunk' 0xf9f // SCISSORS! WATCH OUT!;pushlist 'tinkjunk' 0xf9d;pushlist 'tinkjunk' 0xfbb;pushlist 'tinkjunk' 0x14fc;pushlist 'tinkjunk' 0x1849;endif;if @counttype 0x1eb8 'any' 'backpack' &lt; 2;if usetype 0x1eb8;waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 23;waitforgump 0x38920abd 15000;endif;endif;if not @findobject 'trash';headmsg 'Select your trash barrel';promptalias 'trash';endif;if skill 'tinkering' &lt; 30;headmsg 'Buy more tinkering skill!';stop;elseif skill 'tinkering' &lt; 40;if usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 2;waitforgump 0x38920abd 2000;endif;elseif skill 'tinkering' &lt; 65;if usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 44;waitforgump 0x38920abd 2000;endif;elseif skill 'tinkering' &lt; 75;if usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 86;waitforgump 0x38920abd 2000;endif;elseif skill 'tinkering' &lt; 94;if usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 8;waitforgump 0x38920abd 15000;replygump 0x38920abd 121;waitforgump 0x38920abd 2000;endif;elseif skill 'tinkering' &lt; 100;if usetype 0x1eb8 0x0 'backpack';waitforgump 0x38920abd 15000;replygump 0x38920abd 29;waitforgump 0x38920abd 15000;replygump 0x38920abd 51;waitforgump 0x38920abd 2000;endif;else;headmsg 'Tinkering complete!';stop;endif;if contents 'backpack' > 115 or diffweight &lt; 20;for 0 to 'tinkjunk';while @movetype tinkjunk[] 'backpack' 'trash';endwhile;endfor;endif;</macro>
  132. <macro loop="True" interrupt="True" name="Fletch and Saw">@setalias 'FletcherDropoff' 0x40324389;@setalias 'beetle' 0x1bc49d;@setalias 'FletcherRunebook' 0x43981306;@removelist 'woodhue';@removelist 'magechiv';@removelist 'magechiv2';@removelist 'bond';@createlist 'woodhue';@createlist 'magechiv';@createlist 'magechiv2';@createlist 'bond';//plain=0, oak=2010, ash=1191 | mage=5,11 chiv = 7,13 | bond = 10, unbond = 9;@pushlist 'woodhue' 0;@pushlist 'magechiv' 5;@pushlist 'magechiv2' 11;@pushlist 'bond' 10;//1. Character needs Fletching, Carpentry and Tinkering, a Fletching Bonus talisman saves resources;//2. FletcherDropoff container needs bolts, ingots, boards in it;//3. FletcherRunebook needs 1st rune to be Dropoff location and 2nd rune near Heartwood entrance;//4. Start in Heartwood with a beetle full of only boards. Have crafted tinker tools, 40 ingots, and 200 bolts in your pack or start at your Dropoff location to restock these items;//5. The macro tries to feed your beetle meat every 2 hours. If you have magery it will create the food for you.;//6. If multiple stacks of boards at your dropoff, script will begin encountering errors when one of the stacks drop below 1600, combine them before this happens;@setalias 'Fletching Quest Giver' 0x114;@setalias 'Trash Barrel' 0x40053f97;@setalias 'Carpentry Quest Giver' 0x103;if not listexists 'Talismans';@createlist 'Talismans';@pushlist 'Talismans' 0x2f58;@pushlist 'Talismans' 0x2f59;@pushlist 'Talismans' 0x2f5a;@pushlist 'Talismans' 0x2f5b;endif;if not listexists 'Slayers';@createlist 'Slayers';//@pushlist 'Slayers' 'Ice Slayer';//@pushlist 'Slayers' 'Flame Slayer';//@pushlist 'Slayers' 'Vermin Slayer';//@pushlist 'Slayers' 'Mage Slayer';//@pushlist 'Slayers' 'Bird Slayer';endif;if not listexists 'Killers';@createlist 'Killers';//@pushlist 'Killers' 'Yamandon Killer';@pushlist 'Killers' 'Lich Killer';@pushlist 'Killers' 'Lich Lord Killer';@pushlist 'Killers' 'Dread Spider Killer';//@pushlist 'Killers' 'Giant Black Widow Killer';@pushlist 'Killers' 'Eagle Killer';endif;if not listexists 'Protection';@createlist 'Protection';//@pushlist 'Protection' 'Yamandon Protection';//@pushlist 'Protection' 'Lich Protection';//@pushlist 'Protection' 'Lich Lord Protection';//@pushlist 'Protection' 'Dread Spider Protection';//@pushlist 'Protection' 'Giant Black Widow Protection';//@pushlist 'Protection' 'Silver Serpent Protection';//@pushlist 'Protection' 'Eagle Protection';endif;if not listexists 'Jewelry';@createlist 'Jewelry';@pushlist 'Jewelry' 0x108a;@pushlist 'Jewelry' 0x1f09;@pushlist 'Jewelry' 0x1086;@pushlist 'Jewelry' 0x1f06;endif;if not timerexists 'feedPet';createtimer 'feedPet';endif;if not timerexists 'Carpentry';createtimer 'Carpentry';endif;if not timerexists 'carptry';createtimer 'carptry';endif;if not timerexists 'toggletimeout';createtimer 'toggletimeout';endif;//stop if you lack skills;if skill 'Carpentry' &lt; 30 or skill 'Tinkering' &lt; 45;sysmsg 'You need 36 Carpentry and 50+ tinkering to run this macro effectively.' 34;stop;elseif skill 'Bowcraft' &lt; 90;sysmsg 'You need at least 90 (preferrably 100) bowcrafting to run this macro. You will also want a Fletching bonus talisman' 34;stop;endif;//stop macro if you forgot to restock bolts or ingots or have no tinker tools;if counttype 0x1bf2 0 'backpack' == 0 and not @inrange 'FletcherDropoff' 2;sysmsg 'Restock ingots before starting!' 33;stop;endif;if counttype 0x1bfb 0 'backpack' == 0 and counttype 0x1bfb 1258 'backpack' == 0;if not @inrange 'FletcherDropoff' 2;sysmsg 'Restock bolts before starting!' 33;stop;endif;endif;if @counttype 0x1eb8 0 'backpack' == 0;sysmsg 'Get crafted tinker tools before starting!' 33;stop;endif;// make tinker tools;if @counttype 0x1eb8 0 'backpack' &lt; 2 and not @inrange 'FletcherDropoff' 2;pause 550;while @counttype 0x1eb8 0 'backpack' &lt; 2;usetype! 0x1eb8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 23;endwhile;endif;//make saws;if @counttype 0x1034 0 'backpack' &lt; 3 and not @inrange 'FletcherDropoff' 2;while @counttype 0x1034 0 'backpack' &lt; 3;pause 550;usetype! 0x1eb8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 51;waitforgump 0x38920abd 2000;endwhile;endif;// make plain fletcher kits;if @counttype 0x1022 0 'backpack' &lt; 3 and not @inrange 'FletcherDropoff' 2;while @counttype 0x1022 0 'backpack' &lt; 3;pause 550;usetype! 0x1eb8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 142;endwhile;endif;for 0 to 'magechiv';for 0 to 'magechiv2';for 0 to 'bond';for 0 to 'woodhue';if @findtype 0xe75 'any' 'backpack' and not @inrange 'FletcherDropoff' 2;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;// Handle reward bags;while @findtype 0xe75 'any' 'backpack';pause 550;@setalias 'trash' 'found';@useobject! 'trash';pause 550;// fletcher Runics;while @findtype 0x1022 'any' 'trash';@moveitem! 'found' 'backpack';pause 1000;if color 'found' == 2010;//uncomment this next line to throw Oak kits in the trash;@moveitem! 'found' 'Trash Barrel';pause 550;elseif color 'found' == 1191;//uncomment this next line to throw Ash kits in the trash;@moveitem! 'found' 'Trash Barrel';pause 550;elseif color 'found' == 1192;sysmsg 'Nice, a Yew kit' 33;elseif color 'found' == 1193;sysmsg 'Woohoo! Heartwood!' 63;endif;ignoreobject 'found';endwhile;//runic saws;while @findtype 0x1028 'any' 'trash';@moveitem! 'found' 'backpack';pause 1000;if color 'found' == 2010;//uncomment this next line to throw Oak saws in the trash;@moveitem! 'found' 'Trash Barrel';pause 550;elseif color 'found' == 1191;//uncomment this next line to throw Ash saws in the trash;//@moveitem! 'found' 'Trash Barrel';pause 550;elseif color 'found' == 1192;sysmsg 'Nice, a Yew saw' 33;elseif color 'found' == 1193;for 10;sysmsg 'Woohoo! Heartwood!' 63;endfor;endif;ignoreobject 'found';endwhile;// Talismans;for 0 to 'Talismans';while @findtype Talismans[] 0 'trash';waitforproperties 'found' 15000;//crafting bonus and exceptional bonus talismans;if @property 'Tinkering Exceptional Bonus' 'found' >= 23 and @property 'Tinkering Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Alchemy Bonus' 'found' >= 23 or @property 'Fletching Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Fletching Exceptional Bonus' 'found' >= 23 and @property 'Fletching Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Tailoring Exceptional Bonus' 'found' >= 23 and @property 'Tailoring Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Carpentry Exceptional Bonus' 'found' >= 23 and @property 'Carpentry Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Inscription Bonus' 'found' >= 30 or @property 'Cooking Bonus' 'found' >= 30;@moveitem! 'found' 'backpack';pause 1000;break;elseif @property 'Blacksmithing Exceptional Bonus' 'found' >= 23 and @property 'Blacksmithing Bonus' 'found' >= 23;@moveitem! 'found' 'backpack';pause 1000;break;endif;//get slayers;for 0 to 'Slayers';if @property Slayers[] 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get killers;for 0 to 'Killers';if @property Killers[] 'found' >= 90;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;//get protections;for 0 to 'Protection';if @property Protection[] 'found' >= 59;@moveitem! 'found' 'backpack';pause 1000;break;endif;endfor;ignoreobject 'found';endwhile;endfor;//Jewels;for 0 to 'Jewelry';while @findtype Jewelry[] 0 'trash';waitforproperties 'found' 15000;//EP DI jewels;if @property 'Enhance Potions' 'found' >= 15 and @property 'Damage Increase' 'found' >= 15;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Faster Cast Recovery' 'found' == 3;@moveitem! 'found' 'backpack';pause 1000;break;endif;//save 1/2 and 1/1;if @property 'Faster Cast Recovery' 'found' > 0 and @property 'Faster Casting' 'found';@moveitem! 'found' 'backpack';pause 1000;break;endif;//hci and dci jewels, other usable hci dci jewels will be captured by above;if @property 'Defense chance increase' 'found' >= 10 and @property 'Hit chance increase' 'found' >= 5;@moveitem! 'found' 'backpack';pause 1000;break;endif;if @property 'Hit chance increase' 'found' >= 10 and @property 'Defense chance increase' 'found' >= 5;@moveitem! 'found' 'backpack';pause 1000;break;endif;ignoreobject 'found';endwhile;endfor;//clear the ignore list so it doesn't skip items at dropoff;clearignorelist;if @inrange 'Trash Barrel' 2;@moveitem! 'trash' 'Trash Barrel';pause 550;else;@unsetalias 'dump';while @findtype 0xe75 'any' 'ground' 1 2 and not @findalias 'dump';waitforproperties 'found' 5000;if @property 'items' 'found' &lt; 115;@setalias 'dump' 'found';else;@ignoreobject 'found';endif;endwhile;if @findalias 'dump';@moveitem 'trash' 'dump';pause 550;else;moveitemoffset 'trash' 'ground' [(0 1 0)];pause 550;endif;endwhile;endif;elseif @inrange 'FletcherDropoff' 2;//open containers;useobject 'self';pause 1000;useobject 'FletcherDropoff';pause 1000;waitforcontext 'beetle' bond[] 15000;pause 1000;//unload jewels;while counttype 0x108a 'any' 'backpack' > 0;movetype 0x108a 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f09 'any' 'backpack' > 0;movetype 0x1f09 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1f06 'any' 'backpack' > 0;movetype 0x1f06 'backpack' 'FletcherDropoff';pause 500;endwhile;while counttype 0x1086 'any' 'backpack' > 0;movetype 0x1086 'backpack' 'FletcherDropoff';pause 500;endwhile;//unload saws;while counttype 0x1028 1191 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1191 1;pause 500;endwhile;while counttype 0x1028 2010 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 2010 1;pause 500;endwhile;while counttype 0x1028 1192 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1192 1;pause 500;endwhile;while counttype 0x1028 1193 'backpack' > 0;movetype 0x1028 'backpack' 'FletcherDropoff' (0 0 0) 1193 1;pause 500;endwhile;//unload talismans;while counttype 0x2f58 0 'backpack' > 0;movetype 0x2f58 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f59 0 'backpack' > 0;movetype 0x2f59 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5a 0 'backpack' > 0;movetype 0x2f5a 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;while counttype 0x2f5b 0 'backpack' > 0;movetype 0x2f5b 'backpack' 'FletcherDropoff' (0 0 0) 0 1;pause 500;endwhile;//unload kits;while counttype 0x1022 1191 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1191 1;pause 500;endwhile;while counttype 0x1022 2010 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 2010 1;pause 500;endwhile;while counttype 0x1022 1192 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1192 1;pause 500;endwhile;while counttype 0x1022 1193 'backpack' > 0;movetype 0x1022 'backpack' 'FletcherDropoff' (0 0 0) 1193 1;pause 500;endwhile;//get more bolts;if counttype 0x1bfb 0 'backpack' &lt; 130;if counttype 0x1bfb 0 'FletcherDropoff' &lt; 200;sysmsg 'Out of Bolts!' 33;useobject 'beetle';stop;endif;movetype 0x1bfb 'FletcherDropoff' 'backpack' (0 0 0) 0 200;pause 1000;endif;// get ingots if low;if counttype 0x1bf2 0 'backpack' &lt; 20;if counttype 0x1bf2 0 'FletcherDropoff' &lt; 40;sysmsg 'Out of Ingots!' 33;useobject 'beetle';stop;endif;movetype 0x1bf2 'FletcherDropoff' 'backpack' (0 0 0) 0 40;pause 1000;endif;//get boards on beetle and self;//first make sure beetle is empty, sometimes UOS won't pull 200 boards and you end up with odd number left behind;if counttype 0x1bd7 'any' 'beetle' > 0;while counttype 0x1bd7 'any' 'beetle' > 1599;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1600;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 499;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 500;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 99;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 100;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 24;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 25;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 4;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 5;pause 500;endwhile;while counttype 0x1bd7 'any' 'beetle' > 0;movetype 0x1bd7 'beetle' 'FletcherDropoff' [(0 0 0)] 'any' 1;pause 500;endwhile;endif;//stop if FletcherDropoff is out of boards;if counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;sysmsg 'Out of Boards!' 33;useobject 'beetle';@playmacro 'Lumberjacking';while counttype 0x1bd7 woodhue[] 'FletcherDropoff' &lt; 1900;pause 20000;endwhile;endif;//fill beetle with boards;if mounted 'self';pause 550;useobject 'self';pause 1000;waitforcontext 'beetle' bond[] 15000;endif;movetype 0x1bd7 'FletcherDropoff' 'beetle' (0 0 0) woodhue[] 1600;pause 1000;//move boards to your pack based on how low your pack is;//max weight minus 350;if weight &lt; 175;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 350;pause 1000;//max weight minus 300;elseif weight &lt; 225;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 300;pause 1000;//max weight minus 250;elseif weight &lt; 275;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 250;pause 1000;//max weight minus 200;elseif weight &lt; 325;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 200;pause 1000;//max weight minus 150;elseif weight &lt; 375;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 150;pause 1000;//max weight minus 100;elseif weight &lt; 425;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 100;pause 1000;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 1;movetype 0x1bd7 'FletcherDropoff' 'backpack' (0 0 0) woodhue[] 1;pause 1000;endif;//set fletching kits and saws to correct wood type;if @findtype 0x1bd7 0 'backpack';pause 550;usetype! 0x1022;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 6;waitforgump 0x38920abd 1000;pause 550;usetype! 0x1034;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 6;waitforgump 0x38920abd 1000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;elseif @findtype 0x1bd7 2010 'backpack';if skill 'Carpentry' &lt; 65;sysmsg 'You need 65 Carpentry to craft with Oak' 33;stop;else;pause 550;usetype! 0x1022;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 13;waitforgump 0x38920abd 1000;pause 550;usetype! 0x1034;waitforgump 0x38920abd 1000;@replygump 0x38920abd 7;waitforgump 0x38920abd 1000;@replygump 0x38920abd 13;waitforgump 0x38920abd 1000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 0 'backpack' or @findtype 0x1bd7 1191 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 0 'backpack' or @findtype 0x13b2 1191 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 0 'backpack' or @findtype 0xf50 1191 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 0 'backpack' or @findtype 0x13fd 1191 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 0 'backpack' or @findtype 0x26c3 1191 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;endif;elseif @findtype 0x1bd7 1191 'backpack';if skill 'Carpentry' &lt; 80;sysmsg 'You need 80 Carpentry to craft with Ash' 33;stop;else;pause 550;usetype! 0x1022;waitforgump 0x38920abd 2000;@replygump 0x38920abd 7;waitforgump 0x38920abd 2000;@replygump 0x38920abd 20;waitforgump 0x38920abd 2000;pause 550;usetype! 0x1034;waitforgump 0x38920abd 2000;@replygump 0x38920abd 7;waitforgump 0x38920abd 2000;@replygump 0x38920abd 20;waitforgump 0x38920abd 2000;pause 550;//warn if other color boards, bows, stools in place;if @findtype 0x1bd7 2010 'backpack' or @findtype 0x1bd7 0 'backpack';sysmsg 'You have two types of boards in your pack. Fix before starting macro.' 34;stop;endif;if @findtype 0x13b2 2010 'backpack' or @findtype 0x13b2 0 'backpack';sysmsg 'Delete the different hued bows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0xf50 2010 'backpack' or @findtype 0xf50 0 'backpack';sysmsg 'Delete the different hued crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x13fd 2010 'backpack' or @findtype 0x13fd 0 'backpack';sysmsg 'Delete the different hued heavy crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;if @findtype 0x26c3 2010 'backpack' or @findtype 0x26c3 0 'backpack';sysmsg 'Delete the different hued repeating crossbows from the wood type you are trying to use before starting macro.' 34;stop;endif;endif;endif;//mount beetle and recall back to heartwood;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;useobject 'beetle';pause 2000;@unsetalias 'restockyes';useobject 'FletcherRunebook';waitforgump 0x554b87f3 15000;@replygump 0x554b87f3 magechiv2[];pause 2000;//if the rune is blocked, pause 2 min to give time for NPCs to move, this prevents the character from running across the world from your dropoff;if @injournal 'blocked' 'system';sysmsg 'Rune blocked, trying again in 2 minutes' 33;pause 120000;@clearjournal;useobject 'FletcherRunebook';waitforgump 0x554b87f3 15000;@replygump 0x554b87f3 magechiv2[];pause 2000;//if it's still blocked, stop macro;if @injournal 'blocked' 'system';sysmsg 'Rune still blocked, stopping macro' 33;@clearjournal;stop;endif;endif;//navigate to heartwood entrance;while y != 992 and y > 400;for 2;if y > 992;walk 'north';endif;pause 250;if y &lt; 992;walk 'south';endif;pause 250;endfor;endwhile;if x > 535 and x &lt; 1000;while x > 535 and x &lt; 1000;run 'west';pause 100;endwhile;endif;if x &lt; 537;while x &lt; 537;run 'east';pause 100;endwhile;endif;//navigate through heartwood to quest area;while y &lt; 372;run 'southeast';//crafting while running southeast;if @findalias 'bowquesting' and not @findalias 'bowsdone';if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';pause 550;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;endif;if @gumpexists 0x38920abd;if @ingump 0x38920abd 'Faerie Fire';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' &lt; 10;@replygump 0x38920abd 2;elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' &lt; 10;@replygump 0x38920abd 9;elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' &lt; 8;@replygump 0x38920abd 16;elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' &lt; 10;@replygump 0x38920abd 30;elseif not @findalias 'bowsdone' and @findalias 'bowquesting';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' > 7;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;pause 550;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10 and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;if x > 7026;pause 550;endif;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endif;endwhile;while y &lt; 377;run 'southwest';endwhile;pause 250;for 10;while y &lt; 378;walk 'south';pause 300;endwhile;while y > 378;walk 'north';pause 300;endwhile;endfor;if timer 'Carpentry' > 30000;while x > 7000;run 'west';endwhile;else;while x &lt; 7036;run 'east';endwhile;endif;elseif @findalias 'restockyes' and counttype 0x1bd7 woodhue[] 'backpack' &lt; 10;//leave heartwood;if not mounted 'self';useobject 'beetle';pause 1000;endif;while x &lt; 7024;run 'east';endwhile;while x > 7028;run 'west';endwhile;pause 300;while y > 343;run "Northwest";endwhile;while x &lt; 6989;walk 'east';pause 150;endwhile;while x > 6989;walk 'west';pause 150;endwhile;while y != 338 and y &lt; 600;for 10;if y > 338 and y &lt; 600;walk 'north';pause 250;endif;if y &lt; 338 and y &lt; 600;walk 'south';pause 250;endif;if x > 6989;turn 'west';walk 'west';elseif x &lt; 6989;turn 'east';walk 'east';endif;endfor;endwhile;while x > 1000;while y > 338 and y &lt; 600;turn 'north';walk 'north';pause 250;endwhile;while y &lt; 338 and y &lt; 600;turn 'south';walk 'south';pause 250;endwhile;run 'west';endwhile;//recall home;if @injournal 'world will save';while not @injournal 'world save complete';endwhile;@clearjournal;endif;useobject 'FletcherRunebook';waitforgump 0x554b87f3 15000;@replygump 0x554b87f3 magechiv[];pause 2000;while y == 994;endwhile;elseif counttype 0x1bd7 woodhue[] 'backpack' &lt; 10;//get 200 boards from beetle;if mounted 'self';pause 550;useobject 'self';pause 1000;endif;waitforcontext 'beetle' bond[] 15000;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 1000;if counttype 0x1bd7 woodhue[] 'beetle' &lt; 200;@setalias 'restockyes' 'self';endif;useobject 'beetle';pause 1000;elseif @inrange 'Trash Barrel' 2;//wipe aliases if it thinks you're on two quests;if @findalias 'simplebow' and @findalias 'ingenious1';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';elseif @findalias 'simplebow' and @findalias 'ingenious2';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';elseif @findalias 'simplebow' and @findalias 'ingenious3';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';elseif @findalias 'ingenious1' and @findalias 'ingenious2';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';elseif @findalias 'ingenious1' and @findalias 'ingenious3';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';elseif @findalias 'ingenious2' and @findalias 'ingenious3';@unsetalias 'bowquesting';@unsetalias 'simplebow';@unsetalias 'ingenious1';@unsetalias 'ingenious2';@unsetalias 'ingenious3';@unsetalias 'bowsdone';endif;// Bihourly feed pet;if timer 'feedPet' >= 7200000;if mounted 'self';pause 550;useobject 'self';pause 1000;endif;feed 'beetle' 'Meat' 'any' 1;pause 500;if @injournal 'happier';settimer 'feedPet' 0;sysmsg 'Pet Fed' 33;@clearjournal;else;sysmsg 'Out of Meat!' 33;//make meat and trash rest;if skill 'magery' > 50;for 25;cast 'create food';pause 300;endfor;while counttype 0x9eb 0 'backpack' > 0;movetype 0x9eb 'backpack' 'Trash Barrel';endwhile;while counttype 0x9d1 0 'backpack' > 0;movetype 0x9d1 'backpack' 'Trash Barrel';endwhile;while counttype 0x9d0 0 'backpack' > 0;movetype 0x9d0 'backpack' 'Trash Barrel';endwhile;while counttype 0x9d2 0 'backpack' > 0;movetype 0x9d2 'backpack' 'Trash Barrel';endwhile;while counttype 0x97d 0 'backpack' > 0;movetype 0x97d 'backpack' 'Trash Barrel';endwhile;while counttype 0x97b 0 'backpack' > 0;movetype 0x97b 'backpack' 'Trash Barrel';endwhile;else;stop;endif;endif;pause 550;useobject 'beetle';pause 1000;endif;//get a quest if not on one;if not findalias 'bowquesting';@useobject 'Fletching Quest Giver';waitforgump 0x19bc4061 1000;if @ingump 0x19bc4061 'crafted in the human style' or @ingump 0xa8b319c6 'debt if you bring me bows';if @gumpexists 0x19bc4061;@replygump 0x19bc4061 1;endif;@setalias 'simplebow' 'self';@setalias 'bowquesting' 'self';pause 550;elseif @ingump 0x19bc4061 'such an instrument for me?' or @ingump 0xa8b319c6 'debt if you bring me crossbows';if @gumpexists 0x19bc4061;@replygump 0x19bc4061 1;endif;@setalias 'ingenious1' 'self';@setalias 'bowquesting' 'self';pause 550;elseif @ingump 0x19bc4061 'remarkable instrument of war' or @ingump 0xa8b319c6 'debt if you bring me heavy crossbows';if @gumpexists 0x19bc4061;@replygump 0x19bc4061 1;endif;@setalias 'ingenious2' 'self';@setalias 'bowquesting' 'self';pause 550;elseif @ingump 0x19bc4061 'remarkable human ingenuity' or @ingump 0xa8b319c6 'debt if you bring me repeating crossbows';if @gumpexists 0x19bc4061;@replygump 0x19bc4061 1;endif;@setalias 'ingenious3' 'self';@setalias 'bowquesting' 'self';pause 550;elseif @ingump 0x19bc4061 'deadly crossbow bolt' or @ingump 0xa8b319c6 'debt if you bring me crossbow bolts';if @findtype 0x1bfb 'any' 'backpack' 10;@replygump 0x19bc4061 1;pause 550;if color 'found' == 0;waitforcontext 'self' 4 5000;waitfortarget 5000;Target! 'found';waitfortarget 5000;endif;endif;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 5000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 15000;@replygump 0x96626c6e 1;elseif @ingump 0xdf31ecf8 'My thanks';replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 3000;replygump 0x96626c6e 1;elseif @gumpexists 0x96626c6e;replygump 0x96626c6e 1;elseif @ingump 0x19bc4061 'melodious of muisc';@replygump 0x19bc4061 2;waitforgump 0xa8b319c6 15000;@replygump 0xa8b319c6 3;endif;endif;//trigger to go check stool quest every 30 seconds;if timer 'Carpentry' > 146000;setalias 'checkcarp' 'self';sysmsg '150' 34;elseif timer 'Carpentry' > 118000 and not @findalias '120no';setalias 'checkcarp' 'self';sysmsg '120' 34;elseif timer 'Carpentry' > 88000 and not @findalias '90no';setalias 'checkcarp' 'self';sysmsg '90' 34;elseif timer 'Carpentry' > 58000 and not @findalias '60no';setalias 'checkcarp' 'self';sysmsg '60' 34;elseif timer 'Carpentry' > 28000 and not @findalias '30no';setalias 'checkcarp' 'self';sysmsg '30' 34;endif;if @gumpexists 0xa8b319c6;@replygump 0xa8b319c6 3;endif;//complete quests if you have enough bows crafted;if counttype 0x13b2 'any' 'backpack' > 9 and @findalias 'simplebow';waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13b2 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x13b2 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 2000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 2000;@replygump 0x96626c6e 1;@unsetalias 'simplebow';@unsetalias 'bowquesting';@unsetalias 'bowsdone';pause 1000;elseif counttype 0xf50 'any' 'backpack' > 9 and @findalias 'ingenious1';waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0xf50 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0xf50 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 2000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 2000;@replygump 0x96626c6e 1;@unsetalias 'ingenious1';@unsetalias 'bowquesting';@unsetalias 'bowsdone';pause 1000;elseif counttype 0x13fd 'any' 'backpack' > 7 and @findalias 'ingenious2';waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x13fd 0x4ea 'backpack' != 8 and timer 'toggletimeout' &lt; 5000;@targettype 0x13fd woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 2000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 2000;@replygump 0x96626c6e 1;@unsetalias 'ingenious2';@unsetalias 'bowquesting';@unsetalias 'bowsdone';pause 1000;elseif counttype 0x26c3 'any' 'backpack' > 9 and @findalias 'ingenious3';waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0x26c3 0x4ea 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0x26c3 woodhue[];pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Fletching Quest Giver';waitforgump 0xdf31ecf8 2000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 2000;@replygump 0x96626c6e 1;@unsetalias 'ingenious3';@unsetalias 'bowquesting';@unsetalias 'bowsdone';pause 1000;//if you have trigger to go check carpentry, run west;elseif @findalias 'checkcarp' and timer 'Carpentry' > 25000;while @findtype '0x1bd7' woodhue[] 'ground' 30 2 and counttype '0x1bd7' woodhue[] 'backpack' &lt; 190;moveitem 'found' 'backpack';pause 550;endwhile;if counttype 0x1bd7 woodhue[] 'backpack' &lt; 50 and not @findalias 'restockyes';//get 200 boards from beetle;if mounted 'self';pause 550;useobject 'self';pause 1000;endif;waitforcontext 'beetle' bond[] 15000;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 1000;if counttype 0x1bd7 woodhue[] 'beetle' &lt; 200;@setalias 'restockyes' 'self';endif;useobject 'beetle';pause 1000;endif;if @gumpexists 0x19bc4061;@replygump 0x19bc4061 2;waitforgump 0xa8b319c6 1000;@replygump 0xa8b319c6 3;endif;while maxweight &lt; weight;movetypeoffset 0x1bd7 'backpack' 'ground' [(0 2 0)] woodhue[] 30;pause 550;endwhile;while x > 7000;run 'west';//craft while running west;if @findalias 'bowquesting' and not @findalias 'bowsdone';if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';pause 550;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;endif;if @gumpexists 0x38920abd;if @ingump 0x38920abd 'Faerie Fire';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' &lt; 10;@replygump 0x38920abd 2;elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' &lt; 10;@replygump 0x38920abd 9;elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' &lt; 8;@replygump 0x38920abd 16;elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' &lt; 10;@replygump 0x38920abd 30;elseif not @findalias 'bowsdone' and @findalias 'bowquesting';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' > 7;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;if x > 7026;pause 550;endif;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10 and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;if x > 7026;pause 550;endif;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endif;endwhile;else //at fletcher and not time for carp, craft bows;if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' &lt; 10;if not @gumpexists 0x38920abd;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;endif;if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;@replygump 0x38920abd 2;waitforgump 0x38920abd 2000;elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' &lt; 10;if not @gumpexists 0x38920abd;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;endif;if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;@replygump 0x38920abd 9;waitforgump 0x38920abd 2000;elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' &lt; 8;if not @gumpexists 0x38920abd;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;endif;if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;@replygump 0x38920abd 16;waitforgump 0x38920abd 2000;elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' &lt; 10;if not @gumpexists 0x38920abd;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;endif;if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;@replygump 0x38920abd 30;waitforgump 0x38920abd 2000;elseif counttype 0xb5e 'any' 'backpack' &lt; 10 and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;waitforgump 0x38920abd 2000;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;pause 550;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endif;elseif @inrange 'Carpentry Quest Giver ' 10;if timer 'Carpentry' > 30000;settimer 'carptry' 0;@unsetalias 'checkcarp';usetype 0x1022 0 'backpack';//try to get footstools for 5 seconds;while timer 'carptry' &lt; 5000 and not @ingump 0x19bc4061 'foot stools';if @gumpexists 0xa8b319c6;settimer 'carptry' 5500;endif;@useobject 'Carpentry Quest Giver';//craft while trying quest;if @gumpexists 0xdf31ecf8;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 5000;replygump 0x96626c6e 1;endif;if @findalias 'bowquesting' and not @findalias 'bowsdone';if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';pause 550;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;endif;if @gumpexists 0x38920abd;if @ingump 0x38920abd 'Faerie Fire';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' &lt; 10;@replygump 0x38920abd 2;elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' &lt; 10;@replygump 0x38920abd 9;elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' &lt; 8;@replygump 0x38920abd 16;elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' &lt; 10;@replygump 0x38920abd 30;elseif not @findalias 'bowsdone' and @findalias 'bowquesting';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' > 7;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;waitforgump 0x38920abd 2000;pause 550;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10 and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;pause 550;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endif;endwhile;if timer 'Carpentry' > 150000 and not @gumpexists 0xa8b319c6;while not @ingump 0x19bc4061 'foot stools' and not @ingump 0xdf31ecf8 'my thanks';@useobject 'Carpentry Quest Giver';if timer 'carptry' > 20000;break;endif;endwhile;endif;if @gumpexists 0xdf31ecf8;replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 5000;replygump 0x96626c6e 1;elseif @gumpexists 0x96626c6e;replygump 0x96626c6e 1;endif;if @gumpexists 0xa8b319c6 or @ingump 0x19bc4061 'just for weary toes';if @gumpexists 0x19bc4061 and @ingump 0x19bc4061 'just for weary toes';@replygump 0x19bc4061 1;endif;if not @findalias 'restockyes';while @counttype 0xb5e 'any' 'backpack' &lt; 10;//get 200 boards from beetle if needed;while counttype 0x1bd7 woodhue[] 'backpack' &lt; 10 and not @findalias 'restockyes';if mounted 'self';pause 550;useobject 'self';pause 1000;endif;waitforcontext 'beetle' bond[] 15000;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 1000;if counttype 0x1bd7 woodhue[] 'beetle' &lt; 200;@setalias 'restockyes' 'self';endif;useobject 'beetle';pause 1000;endwhile;if @gumpexists 0x38920abd and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;waitforgump 0x38920abd 2000;else;waitforgump 0x38920abd 2000;pause 550;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endwhile;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0xb5e 1258 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0xb5e 0;@targettype 0xb5e 2010;@targettype 0xb5e 1191;pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Carpentry Quest Giver';waitforgump 0xdf31ecf8 5000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 5000;@replygump 0x96626c6e 1;pause 300;settimer 'Carpentry' 0;@unsetalias '30no';@unsetalias '60no';@unsetalias '90no';@unsetalias '120no';else //if not enough boards then craft til you're out;while @counttype 0x1bd7 woodhue[] 'backpack' > 9 and @counttype 0xb5e 'any' 'backpack' &lt; 10;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;@replygump 0x38920abd 2;waitforgump 0x38920abd 2000;endwhile;if @counttype 0xb5e 'any' 'backpack' > 9;waitforcontext 'self' 4 5000;waitfortarget 5000;settimer 'toggletimeout' 0;while @counttype 0xb5e 1258 'backpack' != 10 and timer 'toggletimeout' &lt; 5000;@targettype 0xb5e 0;@targettype 0xb5e 2010;@targettype 0xb5e 1191;pause 150;endwhile;@canceltarget;pause 500;@useobject! 'Carpentry Quest Giver';waitforgump 0xdf31ecf8 5000;@replygump 0xdf31ecf8 4;waitforgump 0x96626c6e 5000;@replygump 0x96626c6e 1;pause 300;settimer 'Carpentry' 0;@unsetalias '30no';@unsetalias '60no';@unsetalias '90no';@unsetalias '120no';endif;endif;else //if no quest yet, mark that time as no;if timer 'Carpentry' > 120000;setalias '120no' 'self';@setalias '90no' 'self';@setalias '60no' 'self';@setalias '30no' 'self';elseif timer 'Carpentry' > 90000;setalias '90no' 'self';@setalias '60no' 'self';@setalias '30no' 'self';elseif timer 'Carpentry' > 60000;setalias '60no' 'self';@setalias '30no' 'self';elseif timer 'Carpentry' > 30000;setalias '30no' 'self';endif;endif;endif;if @gumpexists 0x19bc4061;@replygump 0x19bc4061 2;waitforgump 0xa8b319c6 1000;@replygump 0xa8b319c6 3;endif;while @findtype '0x1bd7' woodhue[] 'ground' 30 2 and counttype '0x1bd7' woodhue[] 'backpack' &lt; 190;moveitem 'found' 'backpack';pause 550;endwhile;if counttype 0x1bd7 woodhue[] 'backpack' &lt; 50 and not @findalias 'restockyes';//get 200 boards from beetle;if mounted 'self';pause 550;useobject 'self';pause 1000;endif;waitforcontext 'beetle' bond[] 15000;movetype 0x1bd7 'beetle' 'backpack' [(0 0 0)] woodhue[] 200;pause 1000;if counttype 0x1bd7 woodhue[] 'beetle' &lt; 200;@setalias 'restockyes' 'self';endif;useobject 'beetle';pause 1000;endif;//if dont need to restock, run east to fletcher and craft while doing it;while maxweight &lt; weight;movetypeoffset 0x1bd7 'backpack' 'ground' [(0 1 0)] woodhue[] 30;pause 550;endwhile;while x &lt; 7036;run 'east';if @findalias 'bowquesting' and not @findalias 'bowsdone';if @gumpexists 0x38920abd and not @ingump 0x38920abd 'Faerie Fire';pause 550;usetype 0x1022 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 15;waitforgump 0x38920abd 2000;endif;endif;if @gumpexists 0x38920abd;if @ingump 0x38920abd 'Faerie Fire';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' &lt; 10;@replygump 0x38920abd 2;elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' &lt; 10;@replygump 0x38920abd 9;elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' &lt; 8;@replygump 0x38920abd 16;elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' &lt; 10;@replygump 0x38920abd 30;elseif not @findalias 'bowsdone' and @findalias 'bowquesting';if @findalias 'simplebow' and counttype 0x13b2 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious1' and counttype 0xf50 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious2' and counttype 0x13fd 'any' 'backpack' > 7;@setalias 'bowsdone' 'self';elseif @findalias 'ingenious3' and counttype 0x26c3 'any' 'backpack' > 9;@setalias 'bowsdone' 'self';endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;if x &lt; 7013;pause 550;endif;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;elseif counttype 0xb5e 'any' 'backpack' &lt; 10 and @ingump 0x38920abd 'Magincia-style';@replygump 0x38920abd 2;elseif counttype 0xb5e 'any' 'backpack' &lt; 10;if x &lt; 7013;pause 550;endif;usetype 0x1034 0 'backpack';waitforgump 0x38920abd 2000;@replygump 0x38920abd 8;waitforgump 0x38920abd 2000;endif;endif;endwhile;elseif y == 378;while x > 7000;run 'west';endwhile;else;sysmsg 'You need to be near dropoff, carpentry area or fletching trash when starting this macro' 34;stop;endif;endfor;endfor;endfor;endfor;</macro>
  133. <macro loop="True" interrupt="True" name="make weapon">setalias 'trashbarrelluna' 0x4000b9c0;usetype 0x13e3 'any''backpack';replygump 0x38920abd 21;waitforgump 0x38920abd 15000;while @findtype 0x2d33 'any' 'backpack';waitforproperties 'found' 2500;@unsetalias 'move';// Check item properties;if @property 'demon slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';elseif @property 'undead slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';elseif @property 'elemental slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';elseif @property 'arachnid slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';elseif @property 'repond slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';elseif @property 'reptile slayer' 'found' and @property 'hit mana leech''found' >= 30;@setalias 'move' 'found';endif;// Move the item;if @findalias 'move';moveitem 'found' 'bank';pause 800;else if findalias 'found';moveitem 'found' 'trashbarrelluna';pause 800;endif;ignoreobject 'found';endwhile;</macro>
  134. <macro loop="False" interrupt="True" name="make armor"></macro>
  135. <macro loop="False" interrupt="True" name="Reset All Aliases">//If you are having trouble with mis-set aliases, play this macro to unset all aliases on this profile.;unsetalias 'Allchemy Restock Container';unsetalias 'Allchemy Completed Container';unsetalias 'BODS_Blacksmith_NPC';unsetalias 'BODS_Completed_BS_Bods_Book';unsetalias 'BODS_New_BS_Bods_Book';unsetalias 'BODS_Trash_New_Items';unsetalias 'BODS_Tailor_NPC';unsetalias 'BODS_Completed_Bods_Book';unsetalias 'BODS_New_Bods_Book';unsetalias 'BODS_Storage_New_Cloth';unsetalias 'Bola Restock Container';unsetalias 'Bola Completed Container';unsetalias 'Leather Container';unsetalias 'Enchanted Restock Container';unsetalias 'Enchanted Completed Container';unsetalias 'Reg Container';unsetalias 'spellbook';unsetalias 'TreeBookOne';unsetalias 'TreeBookTwo';unsetalias 'HomeLumber';clearlist 'TreeBook';clearlist 'Runes';unsetalias 'IngotsSource';unsetalias 'OreBookOne';unsetalias 'OreBookTwo';unsetalias 'OreBookThree';unsetalias 'HomeOre';clearlist 'OreBook';clearlist 'Talismans';clearlist 'Skills';clearlist 'Jewelry';clearlist 'Jewelspurposes';unsetalias 'Fletching Quest Giver';unsetalias 'Restock';unsetalias 'Reward Box';unsetalias 'Trash Barrel';clearlist 'Carpentry Recipes';unsetalias 'Carpentry Quest Giver';clearlist 'Tinkering Recipes';unsetalias 'Tinkering Recipes';unsetalias 'OretoSmeltSource';unsetalias 'Forge';</macro>
  136. <macro loop="True" interrupt="True" name="bs armor">setalias 'trashbarrelluna' 0x4000b9c0;usetype 0x13e3 'any''backpack';replygump 0x38920abd 21;waitforgump 0x38920abd 15000;while @findtype 0x277d 'any' 'backpack';waitforproperties 'found' 2500;@unsetalias 'move';// Check item properties;if property 'self repair''found';@setalias 'move''found';elseif property 'lower reagent cost''found';@setalias 'move''found';elseif property 'stamina regeneration' 'found';@setalias 'move''found';elseif property 'hit point regeneration''found';@setalias 'move''found';elseif property 'mana regeneration''found';@setalias 'move''found';elseif property 'night sight''found';@setalias 'move''found';elseif property 'reflect physical damage''found';@setalias 'move''found';endif;// Move the item;if @findalias 'move';moveitem 'found' 'trashbarrelluna';pause 800;else if findalias 'found';moveitem 'found' 'bank';pause 800;endif;ignoreobject 'found';endwhile;</macro>
  137. <macro loop="True" interrupt="True" name="Free Necro Book">cast "Wraith Form";</macro>
  138. <macro loop="False" interrupt="True" name="Begging">useskill 'Begging';if @findtype 0x190 'any' 'ground' 'any' 2 or @findtype 0x191 'any' 'ground' 'any' 2;pause 100;@target 'found';elseif @findtype 0x25d 'any' 'ground' 'any' 2 or @findtype 0x25e 'any' 'ground' 'any' 2;pause 100;@target 'found';endif;</macro>
  139. <macro loop="True" interrupt="True" name="poison pet">cast "Poison";waitfortarget 15000;target! 0x931a5;pause 2000;</macro>
  140. <macro loop="False" interrupt="True" name="Attack Grave Digger">//==============================================================================;//Author: Madu;//Macro de alerta halloween;@getenemy 'grey' 'enemy' 'murderer';if not listexists 'names';createlist 'names';pushlist 'names' 'Peinsluth';pushlist 'names' 'skeleton';pushlist 'names' 'Clawser';pushlist 'names' 'rotting corpse';pushlist 'names' 'Araneam';pushlist 'names' 'Flea';pushlist 'names' 'A Pumpkin Lord';pushlist 'names' 'A Customed orc champion';pushlist 'names' 'Jack the Ripper';pushlist 'names' 'Franquistang';pushlist 'names' 'The guardian';pushlist 'names' 'Gravedigger';pushlist 'names' 'Uncle Fester';pushlist 'names' 'britomartis';pushlist 'names' 'Vampire Bat';endif;if @findobject 'enemy';for 0 to names;if @property names[] 'enemy';attack 'enemy';// messagebox 'BOSS' 'BOSS';//playsound 'mario.wav';// guildmsg 'Boss UP';pause 3000;endif;endfor;endif;</macro>
  141. </macros>
  142. <autoloot>
  143. <enabled>False</enabled>
  144. <container>0xffffffff</container>
  145. <guards>False</guards>
  146. </autoloot>
  147. <organizer>
  148. <group stack="True" complete="True" loop="True" source="0x425f6fbe" name="Ore" target="0x41bdb0a5">
  149. <item amount="0x0" graphic="0x19b9"/>
  150. <item amount="0x0" graphic="0x19ba"/>
  151. <item amount="0x0" graphic="0x19b7"/>
  152. <item amount="0x0" graphic="0x19b8"/>
  153. <item amount="0x0" graphic="0x3194"/>
  154. <item amount="0x0" graphic="0x3195"/>
  155. <item amount="0x0" graphic="0x3197"/>
  156. <item amount="0x0" graphic="0x3198"/>
  157. <item amount="0x0" graphic="0x3192"/>
  158. <item amount="0x0" graphic="0x3193"/>
  159. </group>
  160. <group stack="True" complete="True" loop="True" source="0x40324389" name="Boards" target="0x41bdb0a5">
  161. <item amount="0x0" graphic="0x1bd7"/>
  162. <item amount="0x0" graphic="0x3199"/>
  163. <item amount="0x0" graphic="0x318f"/>
  164. <item amount="0x0" graphic="0x3191"/>
  165. <item amount="0x0" graphic="0x2f5f"/>
  166. <item amount="0x0" graphic="0x3190"/>
  167. </group>
  168. </organizer>
  169. <spellgrid>
  170. <grid enabled="False" name="Magery/UOF" x="579" y="619" locked="True"/>
  171. <grid enabled="False" name="Necroweavermage" x="532" y="510" locked="True"/>
  172. <grid enabled="False" name="bushwarrior" x="50" y="50" locked="True"/>
  173. <grid enabled="False" name="create food" x="573" y="642" locked="True"/>
  174. </spellgrid>
  175. <vendors>
  176. <buystate enabled="False" list=""/>
  177. <sellstate enabled="False" list=""/>
  178. </vendors>
  179. <dresslist name="Mining Gloves" container="0x0">
  180. <item layer="7">0x429205a3</item>
  181. </dresslist>
  182. </profile>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement