// This line is necessary to select the proper window SetActiveWindow Shadowbane (* This program was made by an anonymous donor and modified by Rivkah SunSoar on the Mourning server and is designed to work with the MadSage Ultimate skin The original version works with the default skin and is at http://facerip.shackspace.com/ShadowbaneRollingMacro.mac Do not modify this intro but feel free to distribute this macro freely The number of times to run should be set to as many times you want this macro to run through a whole procedure, make sure that you have lots of money in the building and that upkeep is not the next day unless you think you have enough money to complete all the items and still have enough to pay upkeep The macro at first will seem complicated to you but in reality it is quite simple Make sure you set the time of how long the item takes It uses IsBlack commands to make sure the window is up making it a better macro and more timed then most already out To use the macro run at 1280x1024 Resolution and use the MadSage Ultimate skin You can get the MadSage Ultimate skin at http://www.anybrowser.org/shadowbane/MadSageUltimate.zip ***Make sure that all slots are empty and that your first vendor window is open ***Make sure that you are looking at something white, the snow, a banks wall, a sages hood just something that does not look grey or black To get MousePos goto your Shadowbane window and move your mouse where you want it to get the MousePos and then Alt + Tab over to AC Tools and push Ctrl + M (make sure before you started you had the cursor where you wanted the text to go) ***Use MousePos 595, 507 for scrolling down (will select next page) on the selection window where you select your items (note, you will need to modify this to work with MadSage) *) // Roll first vendor's items MousePos 654, 381 LeftClick Call RollOne Delay 1000 MousePos 651, 416 LeftClick Call RollOne Delay 1000 MousePos 653, 447 LeftClick Call RollOne Delay 1000 MousePos 647, 488 LeftClick Call RollOne Delay 1000 MousePos 657, 522 LeftClick Call RollOne Delay 1000 MousePos 656, 561 LeftClick Call RollOne Delay 1000 MousePos 660, 594 LeftClick Call RollOne // Done rolling first vendor MousePos 277, 491 // Open Second Vendor // Roll second vendor's items (change all the Call RollOne to RollTwo if you need a different item for this vendor) LeftClick Delay 15000 MousePos 654, 381 LeftClick Call RollOne Delay 1000 MousePos 651, 416 LeftClick Call RollOne Delay 1000 MousePos 653, 447 LeftClick Call RollOne Delay 1000 MousePos 647, 488 LeftClick Call RollOne Delay 1000 MousePos 657, 522 LeftClick Call RollOne Delay 1000 MousePos 656, 561 LeftClick Call RollOne Delay 1000 MousePos 660, 594 LeftClick Call RollOne // Done rolling second vendor MousePos 274, 526 //Open Third Vendor // Roll third vendor's items (change all the Call RollOne to RollTwo or RollThree if you need a different item for this vendor) LeftClick Delay 15000 MousePos 654, 381 LeftClick Call RollOne Delay 1000 MousePos 651, 416 LeftClick Call RollOne Delay 1000 MousePos 653, 447 LeftClick Call RollOne Delay 1000 MousePos 647, 488 LeftClick Call RollOne Delay 1000 MousePos 657, 522 LeftClick Call RollOne Delay 1000 MousePos 656, 561 LeftClick Call RollOne Delay 1000 MousePos 660, 594 LeftClick Call RollOne // Done rolling third vendor // Ok Done With Rolling setting default Window MousePos 277, 455 LeftClick Delay 15000 // Set Default Window Delay 450000 //wait 7.5mins THIS IS THE TIME THAT THE ITEM TAKES TO ROLL CHANGE TIMES ACCORDING TO THE ITEM THAT YOU ARE ROLLING // Complete the items on first vendor MousePos 660, 594 LeftClick Call Complete MousePos 656, 561 LeftClick Call Complete MousePos 657, 522 LeftClick Call Complete MousePos 647, 488 LeftClick Call Complete MousePos 653, 447 LeftClick Call Complete MousePos 651, 416 LeftClick Call Complete MousePos 654, 381 LeftClick Call Complete // Call CompleteFinal // Removed this because it didn't seem necessary with MadSage // Complete the items on second vendor MousePos 224, 499 // Open Second Vendor LeftClick Delay 15000 MousePos 660, 594 LeftClick Call Complete MousePos 656, 561 LeftClick Call Complete MousePos 657, 522 LeftClick Call Complete MousePos 647, 488 LeftClick Call Complete MousePos 653, 447 LeftClick Call Complete MousePos 651, 416 LeftClick Call Complete MousePos 654, 381 LeftClick Call Complete // Call CompleteFinal // Removed this because it didn't seem necessary with MadSage // Complete the items on third vendor MousePos 336, 531 //Open Third Vendor LeftClick Delay 15000 MousePos 660, 594 LeftClick Call Complete MousePos 656, 561 LeftClick Call Complete MousePos 657, 522 LeftClick Call Complete MousePos 647, 488 LeftClick Call Complete MousePos 653, 447 LeftClick Call Complete MousePos 651, 416 LeftClick Call Complete MousePos 654, 381 LeftClick Call Complete // Call CompleteFinal // Removed this because it didn't seem necessary with MadSage // Ok Done With Completing, opening the first vendor window MousePos 327, 458 LeftClick Delay 15000 // Set Default Window // Dont mess with Procedure Complete and Procedure CompleteFinal Procedure Complete Constants TestTwo = 0 End While $TestTwo = 0 IsBlack 743, 25 MousePos 691, 79 LeftClick Delay 1500 SetConst TestTwo = 1 End //End Isblack End //Is While SetConst TestTwo = 0 End // End Procedure // I disabled this entirely as I wasn't sure what purpose it served Procedure CompleteFinal Delay 1000 MousePos 664, 377 LeftClick Delay 1000 Constants TestFour = 0 End While $TestFour = 0 IsBlack 743, 25 MousePos 691, 79 LeftClick SetConst TestFour = 1 End //End Isblack End //Is While SetConst TestFour = 0 End // End Procedure // This is set to roll a gemstone ring by default Procedure RollOne Constants TestOne = 0 End While $TestOne = 0 IsBlack 427, 430 MousePos 479, 430 LeftClick SetConst TestOne = 2 End // end of IsBlack End //End of First While SetConst TestOne = 0 While $TestOne = 0 IsBlack 82, 562 //If the selection screen is up do: // Delete // on the following two lines if you need to goto the next page on selection window : // MousePos 578, 472 // Note: these coords have to be changed to the correct scrollbar position in MadSage // LeftClick // Ok, do not delete the //'s on the begging of this line and at the next MousePos you can use the cords of the item on the second page if you deleted the //'s of the top two lines // Also, if you need to go down even more pages on the item selection screen just copy and paste the above lines that you // deleted the //'s at the begging of and add a Delay 500 inbetween copies, as many differant copies you make that is how many pages the // selection screen will go down Delay 2000 //BEGIN MODIFING CODE TO SUIT DIFFERANT ITEM NEEDS MousePos 259, 383 // The MousePos of a gemstone ring on a non-neph sage, change MousePos if you need another item guide on how to do this is at the top //STOP MODIFING CODE HERE LeftClick Delay 1000 MousePos 56, 330 //select check LeftClick Delay 1000 SetConst TestOne = 2 End // End of IsBlack End // End of Second While SetConst TestOne = 0 End (* Use Procedure RollTwo if you have two differant types of items you need to roll on the second or third vendors of the building Example: RollOne rolls a Nephilim Sage RollTwo rolls a Human or other sage besides Nephilim RollOne rolls another Nephilim Sage P.S. Nephilim Sages have differant item locations on the selection screen because they can not roll class specific items like Khan Xhirs If you need to do this replace where it says above ^^ *) Procedure RollTwo Constants TestRTwo = 0 End While $TestRTwo = 0 IsBlack 427, 430 MousePos 479, 430 LeftClick SetConst TestRTwo = 2 End // end of IsBlack End //End of First While SetConst TestRTwo = 0 While $TestRTwo = 0 IsBlack 82, 562 //If the selection screen is up do: // Delete // on the following two lines if you need to goto the next page on selection window : // MousePos 578, 472 // Note: these coords have to be changed to the correct scrollbar position in MadSage // LeftClick // Ok, do not delete the //'s on the begging of this line and at the next MousePos you can use the cords of the item on the second page if you deleted the //'s of the top two lines // Also, if you need to go down even more pages on the item selection screen just copy and paste the above lines that you // deleted the //'s at the begging of and add a Delay 500 inbetween copies, as many differant copies you make that is how many pages the // selection screen will go down Delay 2000 //BEGIN MODIFING CODE TO SUIT DIFFERANT ITEM NEEDS MousePos 261, 360 // The MousePos of a gemstone ring on a neph sage //STOP MODIFING CODE HERE LeftClick Delay 1000 MousePos 56, 330 //select check LeftClick Delay 1000 SetConst TestRTwo = 2 End // End of IsBlack End // End of Second While SetConst TestRTwo = 0 End // Use this if you have a third type of item to roll Procedure RollThree Delay 1000 MousePos 760, 427 LeftClick Constants TestSeven = 0 End While $TestSeven = 0 IsBlack 433, 433 MousePos 437, 431 LeftClick SetConst TestSeven = 2 End // end of IsBlack End //End of First While SetConst TestSeven = 0 While $TestSeven = 0 IsBlack 473, 415 //If the selection screen is up do: // Delete // on the following two lines if you need to goto the next page on selection window : // MousePos 578, 472 // Note: these coords have to be changed to the correct scrollbar position in MadSage // LeftClick // Ok, do not delete the //'s on the begging of this line and at the next MousePos you can use the cords of the item on the second page if you deleted the //'s of the top two lines // Also, if you need to go down even more pages on the item selection screen just copy and paste the above lines that you // deleted the //'s at the begging of and add a Delay 500 inbetween copies, as many differant copies you make that is how many pages the // selection screen will go down Delay 2000 //BEGIN MODIFING CODE TO SUIT DIFFERANT ITEM NEEDS MousePos 261, 360 // The MousePos of a gemstone ring on a neph sage //STOP MODIFING CODE HERE LeftClick Delay 1000 MousePos 262, 534 //select check LeftClick Delay 1000 SetConst TestSeven = 2 End // End of IsBlack End // End of Second While SetConst TestSeven = 0 End