Group: Members
Posts: 82
Joined: 29-February 08
Member No.: 576,597
I thought I would post my Scar script here so other Scar enthusiast might possibly get some ideas or learn something. I did not post it for people people to actually use it. This script was written specifically for my character and a specific location and type of ore. It wont work for anyone else. Anywho this script has made me millions. I turn it on when I go to sleep, wake up and i have about 30000 ore in my house chest, and while I'm at work I log on from time to time to stock the sellrooms. I make about 400,000-750,000 kamas a day depending on how quickly it sells.
CODE
program Iron Miner;
var x, y, Mark, Count: integer;
function Error : boolean; begin if(Count > 1000)then result:= true end;
function Error2 : boolean; begin if(Count > 3000)then result:= true end;
function In_Invo : boolean; begin if(FindColor(x, y, 10009022, 666, 540, 668, 542))then result:= true end;
function Overloaded : boolean; begin if(FindColor(x, y, 193, 441, 681, 480, 704))then result:= true end;
function Iron_Selected : boolean; begin if(FindColor(x, y, 8816262, 394, 448, 394, 448))then result:= true end;
function In_Combat : boolean; begin if(FindColor(x, y, 26367, 881, 553, 883, 555))then result:= true end;
function My_Turn : boolean; begin if(FindColor(x, y, Your Color Here!, 171, 164, 173, 166))then result:= true end;
function Fight_Over : Boolean; begin if(FindColorTolerance(x, y, 25087, 752, 439, 800, 510, 15))then result:= true end;
function Iron_a1 : boolean; begin if(FindColor(x, y, 10726318, 205, 215, 249, 302))then result:= true end;
function Iron_b1 : boolean; begin if(FindColor(x, y, 10726318, 251, 213, 281, 320))then result:= true end;
function Iron_c1 : boolean; begin if(FindColor(x, y, 10726318, 283, 226, 315, 336))then result:= true end;
function Iron_d1 : boolean; begin if(FindColor(x, y, 10726318, 636, 138, 679, 219))then result:= true end;
function Iron_e1 : boolean; begin if(FindColor(x, y, 10726318, 701, 95, 748, 205))then result:= true end;
function Iron_a2 : boolean; begin if(FindColor(x, y, 10726318, 232, 340, 290, 421))then result:= true end;
function Iron_b2 : boolean; begin if(FindColor(x, y, 10726318, 395, 254, 452, 367))then result:= true end;
function Iron_c2 : boolean; begin if(FindColor(x, y, 10726318, 531, 213, 591, 304))then result:= true end;
function Iron_d2 : boolean; begin if(FindColor(x, y, 10726318, 602, 181, 646, 272))then result:= true end;
function Iron_e2 : boolean; begin if(FindColor(x, y, 10726318, 636, 171, 684, 253))then result:= true end;
function Iron_a3 : boolean; begin if(FindColor(x, y, 10726318, 423, 170, 485, 259))then result:= true end;
function Iron_a4 : boolean; begin if(FindColor(x, y, 10726318, 714, 241, 743, 347))then result:= true end;
function Iron_b4 : boolean; begin if(FindColor(x, y, 10726318, 429, 165, 481, 256))then result:= true end;
function Iron_c4 : boolean; begin if(FindColor(x, y, 10726318, 468, 147, 513, 239))then result:= true end;
function Iron_d4 : boolean; begin if(FindColor(x, y, 10726318, 513, 140, 548, 256))then result:= true end;
function Iron_e4 : boolean; begin if(FindColor(x, y, 10726318, 556, 150, 584, 272))then result:= true end;
function Iron_a5 : boolean; begin if(FindColor(x, y, 10726318, 466, 182, 516, 268))then result:= true end;
function Iron_b5 : boolean; begin if(FindColor(x, y, 10726318, 498, 168, 545, 256))then result:= true end;
function Iron_c5 : boolean; begin if(FindColor(x, y, 10726318, 528, 163, 570, 251))then result:= true end;
function Iron_d5 : boolean; begin if(FindColor(x, y, 10726318, 636, 168, 663, 277))then result:= true end;
function Iron_e5 : boolean; begin if(FindColor(x, y, 10726318, 677, 183, 705, 292))then result:= true end;
function Iron_a6 : boolean; begin if(FindColor(x, y, 10726318, 708, 246, 742, 346))then result:= true end;
function Iron_b6 : boolean; begin if(FindColor(x, y, 10726318, 437, 165, 478, 254))then result:= true end;
function Iron_c6 : boolean; begin if(FindColor(x, y, 10726318, 471, 148, 511, 237))then result:= true end;
function Iron_d6 : boolean; begin if(FindColor(x, y, 10726318, 512, 146, 547, 253))then result:= true end;
function Ore_Available : boolean; begin if(FindColor(x, y, 10923438, 54, 49, 970, 582))then result:= true end;
function Player_Close : boolean; begin if(FindColor(x, y, Your Color Here!, x-60, y-60, x+60, y+60))then result:= true end;
function Switching_Cave_Maps : boolean; begin if(FindColor(x, y, 0, 549, 373, 551, 373))then result:= true end;
procedure Leave1; begin if(FindColor(x, y, 772351, 759, 305, 793, 335)) or (FindColor(x, y, 426380, 759, 305, 793, 335)) or (FindColor(x, y, 2402506, 759, 305, 793, 335)) or (FindColor(x, y, 40172, 759, 305, 793, 335)) or (FindColor(x, y, 1085345, 759, 305, 793, 335)) or (FindColor(x, y, 43509, 759, 305, 793, 335)) or (FindColor(x, y, 35811, 759, 305, 793, 335)) or (FindColor(x, y, 1678005, 759, 305, 793, 335)) or (FindColor(x, y, 1620454, 759, 305, 793, 335)) or (FindColor(x, y, 34487, 759, 305, 793, 335))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave2; begin if(FindColor(x, y, 772351, 790, 219, 828, 248)) or (FindColor(x, y, 426380, 790, 219, 828, 248)) or (FindColor(x, y, 2402506, 790, 219, 828, 248)) or (FindColor(x, y, 40172, 790, 219, 828, 248)) or (FindColor(x, y, 1085345, 790, 219, 828, 248)) or (FindColor(x, y, 43509, 790, 219, 828, 248)) or (FindColor(x, y, 35811, 790, 219, 828, 248)) or (FindColor(x, y, 1678005, 790, 219, 828, 248)) or (FindColor(x, y, 1620454, 790, 219, 828, 248)) or (FindColor(x, y, 34487, 790, 219, 828, 248))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave3; begin if(FindColor(x, y, 772351, 329, 289, 366, 311)) or (FindColor(x, y, 426380, 329, 289, 366, 311)) or (FindColor(x, y, 2402506, 329, 289, 366, 311)) or (FindColor(x, y, 40172, 329, 289, 366, 311)) or (FindColor(x, y, 1085345, 329, 289, 366, 311)) or (FindColor(x, y, 43509, 329, 289, 366, 311)) or (FindColor(x, y, 35811, 329, 289, 366, 311)) or (FindColor(x, y, 1678005, 329, 289, 366, 311)) or (FindColor(x, y, 1620454, 329, 289, 366, 311)) or (FindColor(x, y, 34487, 329, 289, 366, 311))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave4; begin if(FindColor(x, y, 772351, 659, 288, 697, 312)) or (FindColor(x, y, 426380, 659, 288, 697, 312)) or (FindColor(x, y, 2402506, 659, 288, 697, 312)) or (FindColor(x, y, 40172, 659, 288, 697, 312)) or (FindColor(x, y, 1085345, 659, 288, 697, 312)) or (FindColor(x, y, 43509, 659, 288, 697, 312)) or (FindColor(x, y, 35811, 659, 288, 697, 312)) or (FindColor(x, y, 1678005, 659, 288, 697, 312)) or (FindColor(x, y, 1620454, 659, 288, 697, 312)) or (FindColor(x, y, 34487, 659, 288, 697, 312))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave5; begin if(FindColor(x, y, 772351, 328, 456, 366, 479)) or (FindColor(x, y, 426380, 328, 456, 366, 479)) or (FindColor(x, y, 2402506, 328, 456, 366, 479)) or (FindColor(x, y, 40172, 328, 456, 366, 479)) or (FindColor(x, y, 1085345, 328, 456, 366, 479)) or (FindColor(x, y, 43509, 328, 456, 366, 479)) or (FindColor(x, y, 35811, 328, 456, 366, 479)) or (FindColor(x, y, 1678005, 328, 456, 366, 479)) or (FindColor(x, y, 1620454, 328, 456, 366, 479)) or (FindColor(x, y, 34487, 328, 456, 366, 479))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave4_2nd; begin if(FindColor(x, y, 772351, 330, 289, 367, 309)) or (FindColor(x, y, 426380, 330, 289, 367, 309)) or (FindColor(x, y, 2402506, 330, 289, 367, 309)) or (FindColor(x, y, 40172, 330, 289, 367, 309)) or (FindColor(x, y, 1085345, 330, 289, 367, 309)) or (FindColor(x, y, 43509, 330, 289, 367, 309)) or (FindColor(x, y, 35811, 330, 289, 367, 309)) or (FindColor(x, y, 1678005, 330, 289, 367, 309)) or (FindColor(x, y, 1620454, 330, 289, 367, 309)) or (FindColor(x, y, 34487, 330, 289, 367, 309))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave6; begin if(FindColor(x, y, 772351, 661, 456, 695, 480)) or (FindColor(x, y, 426380, 661, 456, 695, 480)) or (FindColor(x, y, 2402506, 661, 456, 695, 480)) or (FindColor(x, y, 40172, 661, 456, 695, 480)) or (FindColor(x, y, 1085345, 661, 456, 695, 480)) or (FindColor(x, y, 43509, 661, 456, 695, 480)) or (FindColor(x, y, 35811, 661, 456, 695, 480)) or (FindColor(x, y, 1678005, 661, 456, 695, 480)) or (FindColor(x, y, 1620454, 661, 456, 695, 480)) or (FindColor(x, y, 34487, 661, 456, 695, 480))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave4_3rd; begin if(FindColor(x, y, 772351, 660, 457, 698, 479)) or (FindColor(x, y, 426380, 660, 457, 698, 479)) or (FindColor(x, y, 2402506, 660, 457, 698, 479)) or (FindColor(x, y, 40172, 660, 457, 698, 479)) or (FindColor(x, y, 1085345, 660, 457, 698, 479)) or (FindColor(x, y, 43509, 660, 457, 698, 479)) or (FindColor(x, y, 35811, 660, 457, 698, 479)) or (FindColor(x, y, 1678005, 660, 457, 698, 479)) or (FindColor(x, y, 1620454, 660, 457, 698, 479)) or (FindColor(x, y, 34487, 660, 457, 698, 479))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave3_2nd; begin if(FindColor(x, y, 772351, 327, 455, 367, 481)) or (FindColor(x, y, 426380, 327, 455, 367, 481)) or (FindColor(x, y, 2402506, 327, 455, 367, 481)) or (FindColor(x, y, 40172, 327, 455, 367, 481)) or (FindColor(x, y, 1085345, 327, 455, 367, 481)) or (FindColor(x, y, 43509, 327, 455, 367, 481)) or (FindColor(x, y, 35811, 327, 455, 367, 481)) or (FindColor(x, y, 1678005, 327, 455, 367, 481)) or (FindColor(x, y, 1620454, 327, 455, 367, 481)) or (FindColor(x, y, 34487, 327, 455, 367, 481))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Leave2_2nd; begin if(FindColor(x, y, 772351, 296, 372, 334, 396)) or (FindColor(x, y, 426380, 296, 372, 334, 396)) or (FindColor(x, y, 2402506, 296, 372, 334, 396)) or (FindColor(x, y, 40172, 296, 372, 334, 396)) or (FindColor(x, y, 1085345, 296, 372, 334, 396)) or (FindColor(x, y, 43509, 296, 372, 334, 396)) or (FindColor(x, y, 35811, 296, 372, 334, 396)) or (FindColor(x, y, 1678005, 296, 372, 334, 396)) or (FindColor(x, y, 1620454, 296, 372, 334, 396)) or (FindColor(x, y, 34487, 296, 372, 334, 396))then begin Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); repeat Wait(1); Count:= Count + 1; until(Switching_Cave_Maps) or (Error2); repeat Wait(1); until(Switching_Cave_Maps = false); end; end;
procedure Mine_a1; begin if(Iron_a1)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_b1; begin if(Iron_b1)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_c1; begin if(Iron_c1)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_d1; begin if(Iron_d1)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_e1; begin if(Iron_e1)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_a2; begin if(Iron_a2)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_b2; begin if(Iron_b2)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_c2; begin if(Iron_c2)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_d2; begin if(Iron_d2)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_e2; begin if(Iron_e2)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3600+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_a3; begin if(Iron_a3)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_a4; begin if(Iron_a4)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_b4; begin if(Iron_b4)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_c4; begin if(Iron_c4)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_d4; begin if(Iron_d4)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_e4; begin if(Iron_e4)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_a5; begin if(Iron_a5)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_b5; begin if(Iron_b5)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_c5; begin if(Iron_c5)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_d5; begin if(Iron_d5)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_e5; begin if(Iron_e5)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_a6; begin if(Iron_a6)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_b6; begin if(Iron_b6)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_c6; begin if(Iron_c6)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
procedure Mine_d6; begin if(Iron_d6)then begin MoveMouseSmooth(x-4, y+10); Wait(100+random(200)); if(Ore_Available = false)then begin Mark:= Mark + 1; end else begin Mark:= 0; Count:= 0; MoveMouseSmooth(x, y); Wait(100+random(200)); HoldMouse(x, y, true); Wait(20+random(50)); ReleaseMouse(x, y, true); Wait(100+random(200)); MoveMouseSmooth(x+27, y+38); Wait(100+random(200)); HoldMouse(x+27, y+38, true); Wait(20+random(50)); ReleaseMouse(x+27, y+38, true); MoveMouseSmooth(100, 100); repeat Wait(1); Count:= Count + 1; until(Player_Close) or (Error); begin Wait(3400+random(500)); //Mining Speed +1000 end; end; end; end;
function Full : boolean; begin if(FindColor(x, y, 39168, 394, 683, 396, 685))then result:= true end;
function Switching_Maps : boolean; begin if(FindColor(x, y, 0, 809, 536, 811, 536))then result:= true end;
function House_Selection : boolean; begin if(FindColor(x, y, 10338249, 660, 291, 662, 293))then result:= true end;
function Join : boolean; begin if(FindColor(x, y, 25087, 651, 342, 653, 344))then result:= true end;
function In_Chest : boolean; begin if(FindColor(x, y, 16777215, 732, 164, 734, 166))then result:= true end;
function Iron : boolean; begin if(FindColor(x, y, 8816262, 733, 244, 937, 528))then result:= true end;
function Bag : boolean; begin if(FindColor(x, y, 4096930, 733, 244, 937, 528))then result:= true end;
begin repeat repeat repeat Mine_a1; Fight; Bank; until(Iron_a1 = false) or (Mark = 1) repeat Mine_b1; Fight; Bank; until(Iron_b1 = false) or (Mark = 1) repeat Mine_c1; Fight; Bank; until(Iron_c1 = false) or (Mark = 1) repeat Mine_d1; Fight; Bank; until(Iron_d1 = false) or (Mark = 1) repeat Mine_e1; Fight; Bank; until(Iron_e1 = false) or (Mark = 1) until(Iron_a1 = false) and (Iron_b1 = false) and (Iron_c1 = false) and (Iron_d1 = false) and (Iron_e1 = false) or (Mark = 1) Leave1; repeat repeat Mine_a2; Fight; Bank; until(Iron_a2 = false) or (Mark = 1) repeat Mine_b2; Fight; Bank; until(Iron_b2 = false) or (Mark = 1) repeat Mine_c2; Fight; Bank; until(Iron_c2 = false) or (Mark = 1) repeat Mine_d2; Fight; Bank; until(Iron_d2 = false) or (Mark = 1) repeat Mine_e2; Fight; Bank; until(Iron_e2 = false) or (Mark = 1) until(Iron_a2 = false) and (Iron_b2 = false) and (Iron_c2 = false) and (Iron_d2 = false) and (Iron_e2 = false) or (Mark = 1) Leave2; repeat repeat Mine_a3; Fight; Bank; until(Iron_a3 = false) or (Mark = 1) until(Iron_a3 = false) Leave3; repeat repeat Mine_a4; Fight; Bank; until(Iron_a4 = false) or (Mark = 1) repeat Mine_b4; Fight; Bank; until(Iron_b4 = false) or (Mark = 1) repeat Mine_c4; Fight; Bank; until(Iron_c4 = false) or (Mark = 1) repeat Mine_d4; Fight; Bank; until(Iron_d4 = false) or (Mark = 1) repeat Mine_e4; Fight; Bank; until(Iron_e4 = false) or (Mark = 1) until(Iron_a4 = false) and (Iron_b4 = false) and (Iron_c4 = false) and (Iron_d4 = false) and (Iron_e4 = false) or (Mark = 1) Leave4; repeat repeat Mine_a5; Fight; Bank; until(Iron_a5 = false) or (Mark = 1) repeat Mine_b5; Fight; Bank; until(Iron_b5 = false) or (Mark = 1) repeat Mine_c5; Fight; Bank; until(Iron_c5 = false) or (Mark = 1) repeat Mine_d5; Fight; Bank; until(Iron_d5 = false) or (Mark = 1) repeat Mine_e5; Fight; Bank; until(Iron_e5 = false) or (Mark = 1) until(Iron_a5 = false) and (Iron_b5 = false) and (Iron_c5 = false) and (Iron_d5 = false) and (Iron_e5 = false) or (Mark = 1) Leave5; repeat repeat Mine_a4; Fight; Bank; until(Iron_a4 = false) or (Mark = 1) repeat Mine_b4; Fight; Bank; until(Iron_b4 = false) or (Mark = 1) repeat Mine_c4; Fight; Bank; until(Iron_c4 = false) or (Mark = 1) repeat Mine_d4; Fight; Bank; until(Iron_d4 = false) or (Mark = 1) repeat Mine_e4; Fight; Bank; until(Iron_e4 = false) or (Mark = 1) until(Iron_a4 = false) and (Iron_b4 = false) and (Iron_c4 = false) and (Iron_d4 = false) and (Iron_e4 = false) or (Mark = 1) Leave4_2nd; repeat repeat Mine_a6; Fight; Bank; until(Iron_a6 = false) or (Mark = 1) repeat Mine_b4; Fight; Bank; until(Iron_b6 = false) or (Mark = 1) repeat Mine_c4; Fight; Bank; until(Iron_c6 = false) or (Mark = 1) repeat Mine_d4; Fight; Bank; until(Iron_d6 = false) or (Mark = 1) until(Iron_a4 = false) and (Iron_b4 = false) and (Iron_c4 = false) and (Iron_d4 = false) or (Mark = 1) Leave6; repeat repeat Mine_a4; Fight; Bank; until(Iron_a4 = false) or (Mark = 1) repeat Mine_b4; Fight; Bank; until(Iron_b4 = false) or (Mark = 1) repeat Mine_c4; Fight; Bank; until(Iron_c4 = false) or (Mark = 1) repeat Mine_d4; Fight; Bank; until(Iron_d4 = false) or (Mark = 1) repeat Mine_e4; Fight; Bank; until(Iron_e4 = false) or (Mark = 1) until(Iron_a4 = false) and (Iron_b4 = false) and (Iron_c4 = false) and (Iron_d4 = false) and (Iron_e4 = false) or (Mark = 1) Leave4_3rd; repeat repeat Mine_a3; Fight; Bank; until(Iron_a3 = false) or (Mark = 1) until(Iron_a3 = false) Leave3_2nd; repeat repeat Mine_a2; Fight; Bank; until(Iron_a2 = false) or (Mark = 1) repeat Mine_b2; Fight; Bank; until(Iron_b2 = false) or (Mark = 1) repeat Mine_c2; Fight; Bank; until(Iron_c2 = false) or (Mark = 1) repeat Mine_d2; Fight; Bank; until(Iron_d2 = false) or (Mark = 1) repeat Mine_e2; Fight; Bank; until(Iron_e2 = false) or (Mark = 1) until(Iron_a2 = false) and (Iron_b2 = false) and (Iron_c2 = false) and (Iron_d2 = false) and (Iron_e2 = false) or (Mark = 1) Leave2_2nd until(false) end.
I realize this wont make sense to most of you but for those of you who can understand it i hope it gives you some useful ideas you perhaps haven't thought of.
I will be making some videos that i will post on some useful scar procedures.
Group: Elite Members
Posts: 183
Joined: 26-April 09
Member No.: 893,649
Suezo random is a good thing, cause if not random then u soon will be banned for botting :) but if you want for your script to search for a wheat near your current location then make thouse changes in your script:
1. search your character current position: if(findcolor(player_x,player_y,player,xx,yy,xxx,yyy)) when player_x, player_y will be the coordinates where scar finds your character. player - color of your character xx,yy,xxx,yyy - coordinates of your scar client
2. area_x:= player_x + 100; area_y:= player_y + 100: area_xx:= player_x - 100; area_yy:= player_y - 100; here you change 100 for your desired nuber. it tells scar to search for wheat in your desired area near your character.
3. if(findcolor(x,y,wheat,area_x,area_y,area_xx,area_yy)) here you search for wheat in your desired area near your current location
good luck and may u never be catched for botting
Sage-Naruto the script you see is for reference purposes only, you may take some nice ideas from it to make your own one. you just have to learn how to program with scar, this site has some tutorials to help you understand it, believe me after learning this you will make your farmer script for yourself, if not, there still are some nice scripts in this site even for non elite members that works fine.
Group: Members
Posts: 5
Joined: 13-May 09
Member No.: 905,592
QUOTE(margreg @ May 14 2009, 06:19 PM)
Suezo random is a good thing, cause if not random then u soon will be banned for botting :) but if you want for your script to search for a wheat near your current location then make thouse changes in your script:
1. search your character current position: if(findcolor(player_x,player_y,player,xx,yy,xxx,yyy)) when player_x, player_y will be the coordinates where scar finds your character. player - color of your character xx,yy,xxx,yyy - coordinates of your scar client
2. area_x:= player_x + 100; area_y:= player_y + 100: area_xx:= player_x - 100; area_yy:= player_y - 100; here you change 100 for your desired nuber. it tells scar to search for wheat in your desired area near your character.
3. if(findcolor(x,y,wheat,area_x,area_y,area_xx,area_yy)) here you search for wheat in your desired area near your current location
good luck and may u never be catched for botting
Sage-Naruto the script you see is for reference purposes only, you may take some nice ideas from it to make your own one. you just have to learn how to program with scar, this site has some tutorials to help you understand it, believe me after learning this you will make your farmer script for yourself, if not, there still are some nice scripts in this site even for non elite members that works fine.
thanks for the reply margreg but i'm just wondering how i'll get busted if i added this to the script, because i've seen bots in astrub field in rushu that had this onto their script and they been there for a while now :(
Group: Elite Members
Posts: 183
Joined: 26-April 09
Member No.: 893,649
its a matter of time they be banned. random however helps a lot, it prevents for ankama anti-bot fishing program catching you. it is not 100% cover, but it helps.
Group: Members
Posts: 1
Joined: 4-December 08
Member No.: 787,547
I tried your miner bot but it didint work. There reads: "Failed when compiling Line 1: [Error] (1:14): Semicolon (';') expected in script C:\Users\dofus\deskop\bot.scar
Group: Members
Posts: 82
Joined: 29-February 08
Member No.: 576,597
I posted this merely as a reference so people can get ideas from. It's not meant to work for everyone.
I have created a script recently that will work for everyone and will not require any of the script to be edited (colors etc...) The script when released will work just like the bots seen running around Incarnam . I will release several others later that incorporate this script and its fighting procedures, the does prof.
Group: Elite Members
Posts: 318
Joined: 22-June 09
From: Deep in my Coding Cave. But don't feel bad! After all, it's on the darkside, and we have cookies!
Member No.: 934,937
just got a few great ideas for banking from this. Though I must say the process n8t3d0g used to customly 'wait' on screens is quite interesting, I may use that form for some of my scripts. Looks very clean and extremely effective =)
--------------------
SCAR Coder
DofusBaseV1 [||||||||||]
Want to make progress bars like me?
CODE
use this base one as an example! [[color="#00FF00"]|[/color][color="#FF0000"]|||||||||[/color]]
Group: Members
Posts: 34
Joined: 8-May 08
Member No.: 633,031
QUOTE(n8t3d0gg @ Jul 8 2009, 03:28 PM)
I posted this merely as a reference so people can get ideas from. It's not meant to work for everyone.
I have created a script recently that will work for everyone and will not require any of the script to be edited (colors etc...) The script when released will work just like the bots seen running around Incarnam . I will release several others later that incorporate this script and its fighting procedures, the does prof.
Group: Members
Posts: 1
Joined: 11-August 09
Member No.: 975,173
QUOTE(Sage-Naruto @ May 14 2009, 12:43 AM)
I still don't get it ,what do i do with the scripts ,just coppy and paste?I'm just a newbie ,help me plz?
He said that script only works on him... he just posted it to yopu get an idea how to do it... i don't understand anything from scripts i would like to cheat dofus but is too hard... and anyway i don't have an house xD so i couldn't get all that ore..
Group: Elite Members
Posts: 318
Joined: 22-June 09
From: Deep in my Coding Cave. But don't feel bad! After all, it's on the darkside, and we have cookies!
Member No.: 934,937
QUOTE(Boostman @ Aug 13 2009, 12:52 PM)
He said that script only works on him... he just posted it to yopu get an idea how to do it... i don't understand anything from scripts i would like to cheat dofus but is too hard... and anyway i don't have an house xD so i couldn't get all that ore..
It's pretty simple to learn SCAR google around for SCAR tutorials and the like. Deal without the auto-storage of bots and just let them max inventory and bank it yourself then repeat until you get what you want to sell
--------------------
SCAR Coder
DofusBaseV1 [||||||||||]
Want to make progress bars like me?
CODE
use this base one as an example! [[color="#00FF00"]|[/color][color="#FF0000"]|||||||||[/color]]
Group: Elite Members
Posts: 318
Joined: 22-June 09
From: Deep in my Coding Cave. But don't feel bad! After all, it's on the darkside, and we have cookies!
Member No.: 934,937
can anyone explain some of these, like what they are targeting, how they are doing the process, and what they do in the script... I'm a little lost on them...
CODE
function In_Invo : boolean; begin //no idea if(FindColor(x, y, 10009022, 666, 540, 668, 542))then result:= true end;
function Overloaded : boolean; begin // no idea if(FindColor(x, y, 193, 441, 681, 480, 704))then result:= true end;
function Iron_Selected : boolean; begin // no idea if(FindColor(x, y, 8816262, 394, 448, 394, 448))then result:= true end;
function In_Combat : boolean; begin //ready button? if(FindColor(x, y, 26367, 881, 553, 883, 555))then result:= true end;
function My_Turn : boolean; begin //trageting the slide-in player image? if(FindColor(x, y, Your Color Here!, 171, 164, 173, 166))then result:= true end;
function Iron_a1 : boolean; begin // this and all the iron_(letter/number) i don't get if(FindColor(x, y, 10726318, 205, 215, 249, 302))then result:= true end;
function Ore_Available : boolean; begin // wats this mean, and it's usage? if(FindColor(x, y, 10923438, 54, 49, 970, 582))then result:= true end;
function Player_Close : boolean; begin // I don't quite get this one, checking if player is near the ore? or what? if(FindColor(x, y, Your Color Here!, x-60, y-60, x+60, y+60))then result:= true end;
function Switching_Cave_Maps : boolean; begin // How do you check for changing maps, there's lots of black in mines. if(FindColor(x, y, 0, 549, 373, 551, 373))then result:= true end;
//how do the leave procedures operate?
function Full : boolean; begin // no idea if(FindColor(x, y, 39168, 394, 683, 396, 685))then result:= true end;
function Switching_Maps : boolean; begin // no idea if(FindColor(x, y, 0, 809, 536, 811, 536))then result:= true end;
function House_Selection : boolean; begin //no idea if(FindColor(x, y, 10338249, 660, 291, 662, 293))then result:= true end;
function Join : boolean; begin //is this anti-trade/group/challenge? if(FindColor(x, y, 25087, 651, 342, 653, 344))then result:= true end;
function In_Chest : boolean; begin //What color are you checking for here, i understand the usage if(FindColor(x, y, 16777215, 732, 164, 734, 166))then result:= true end;
function Iron : boolean; begin // is this (is iron selected?) or something? if(FindColor(x, y, 8816262, 733, 244, 937, 528))then result:= true end;
function Bag : boolean; begin // no idea if(FindColor(x, y, 4096930, 733, 244, 937, 528))then result:= true end;
//lines 1617 to 1623 are doing exactly what now? //I understand basically everything else and I just need to figure out these parts.
--------------------
SCAR Coder
DofusBaseV1 [||||||||||]
Want to make progress bars like me?
CODE
use this base one as an example! [[color="#00FF00"]|[/color][color="#FF0000"]|||||||||[/color]]
Group: Members
Posts: 82
Joined: 29-February 08
Member No.: 576,597
function In_Invo : boolean; begin //no idea if(FindColor(x, y, 10009022, 666, 540, 668, 542))then result:= true end;
This just looks for a color in my inventory so when i am putting the ore in my house chest it doesnt get messed up by lag.
function Overloaded : boolean; begin // no idea if(FindColor(x, y, 193, 441, 681, 480, 704))then result:= true end;
This checks the chat for the red "overloaded" text, if it finds it i discard 1 bag of ore.
function Iron_Selected : boolean; begin // no idea if(FindColor(x, y, 8816262, 394, 448, 394, 448))then result:= true end;
When you click on ore to mine it a little box pops up. This just checks for the little box.
function In_Combat : boolean; begin //ready button? if(FindColor(x, y, 26367, 881, 553, 883, 555))then result:= true end;
Yup, checks for ready button to determine if im in combat.
function My_Turn : boolean; begin //trageting the slide-in player image? if(FindColor(x, y, Your Color Here!, 171, 164, 173, 166))then result:= true end;
Yes, it looks for a specific color to my character on the slide in player image.
function Iron_a1 : boolean; begin // this and all the iron_(letter/number) i don't get if(FindColor(x, y, 10726318, 205, 215, 249, 302))then result:= true end;
This was the most time consuming part, each one is for a specific vein. It just looks for the color of the iron on the wall to see if it is there or not.
function Ore_Available : boolean; begin // wats this mean, and it's usage? if(FindColor(x, y, 10923438, 54, 49, 970, 582))then result:= true end;
When you move your mouse over a tree, ore, or anything that can be selected it highlights that item. This checks to see if the item highlights when my mouse moves over it. If it does not highlight, someone else is mining it already and i skip it.
function Player_Close : boolean; begin // I don't quite get this one, checking if player is near the ore? or what? if(FindColor(x, y, Your Color Here!, x-60, y-60, x+60, y+60))then result:= true end;
Yes this checks to see if my player is near the ore. Its so when i click on some ore to mine it, it waits for me to get close then starts a wait time (the amount of time it takes me to mine).
function Switching_Cave_Maps : boolean; begin // How do you check for changing maps, there's lots of black in mines. if(FindColor(x, y, 0, 549, 373, 551, 373))then result:= true end;
This checks for a spot that all the rooms in the mines share. In non of the rooms does the color black appear here. Its used in the leave procedures ill explain next.
To switch rooms or maps, i first search for the yellow color of the waypoint for that map (they are all specific to each waypoint it searches a small box around it). Then it clicks on that yellow spot. This is basically so if someone happened to be standing there, it doesnt click on him and get stuck. Ill continue more about switching maps...
function Full : boolean; begin // no idea if(FindColor(x, y, 39168, 394, 683, 396, 685))then result:= true end;
This like overloaded, checks the chat for green text telling me i'm full.
function Switching_Maps : boolean; begin // no idea if(FindColor(x, y, 0, 809, 536, 811, 536))then result:= true end;
So when you switch maps in dofus, it goes black for a second then opens the new map. To get the timing perfect i have the program click on the waypoint, then wait until it sees the black screen, then i have it wait until it does not see the black screen. This makes the timing perfect.
function House_Selection : boolean; begin //no idea if(FindColor(x, y, 10338249, 660, 291, 662, 293))then result:= true end;
lol im not actually using this anymore, but i use to use guild house potions to get to my house so it would select mine from the guild house list, now i just use house potions.
function Join : boolean; begin //is this anti-trade/group/challenge? if(FindColor(x, y, 25087, 651, 342, 653, 344))then result:= true end;
Umm yea i think this is the anti trade exchange etc function, but i just make sure i go /away now so im not using this.
function In_Chest : boolean; begin //What color are you checking for here, i understand the usage if(FindColor(x, y, 16777215, 732, 164, 734, 166))then result:= true end;
The color is just the background greyish color i believe.
function Iron : boolean; begin // is this (is iron selected?) or something? if(FindColor(x, y, 8816262, 733, 244, 937, 528))then result:= true end;
This is just looking at the iron in my inventory when im putting it in my chest. Its to make sure it loads fully before it clicks on it to put it in there (lag is a pain in the butt).
function Bag : boolean; begin // no idea if(FindColor(x, y, 4096930, 733, 244, 937, 528))then result:= true end;
Same as Iron, just looking for the bags of iron to put into my chest.
Group: Members
Posts: 14
Joined: 15-January 09
Member No.: 816,221
Hey, im new to scar but previous experience in c++ programming - not much very basic copy paste y'know i like your miner / fighter bot.
If you changed the combat to your characters spells and added a line to click on say cracklers like a wheat/miner bot does, kept the movement part would this work in terms of fighter bot or am i missing something ? at college atm so cant make one and test it
Also your moving scripts you use co-ords to move from room to room i thought dofus constantly changed there co-ords ofc im probably wrong. is that simply a case of copying the movement script parts but changing the co-ords to the ones shown on bottom of scar specifically on the next map icon ? if so does that makes it possible to move circular or linear fighting certain mobs when used together ?
Same with the auto bank, if your farming outside astrub for example can u used the movement scripts to go to bank, bank wheat etc and go back to the weat and repeat ? if so what is the " if wheat 677 pods=true goto bank" procedure line to end and start to go to bank ? i couldnt quite pick it out reading your script (didnt take much time looking in detail due to lecturer coming round class )
After reading some totorials and trialing some scripts at home in my own time i can understand the ideas and some underlying facters of your script. when im done at college im going to try make a fighting bot for my eca lvl 9 to test out the locate and move script posted after including your script to fight and pass turn etc to see if i can get it to work.