• Log in or sign up for an account here: https://www.sythe.org/login

AutoArson By: Crapkiler :D

crapkiller

Forum Addict
Joined
Jul 19, 2006
Sythe Gold
0
Messages
426
Yay! Well, heres how it works... Start the script in lumbridge general store with maybe 10k and a tinderbox. It buys oak logs from the store(when i was making this there was 115k oak logs in store lol). It then moves a lil north and lights the logs in a line. Then it comes back and buys more etc. There is 1 little problem that im wondering about. When it lights the logs it lights the 2nd log and then last up. Always. Do you think that this is too detectable? im sure i could figure out something...

Anyway, I also have a question about the antiban stuff. [QUESTION] For the antiban procedures such as BoredEvery(); and other procedures that do things every couple mins, When you call these procedures, do they just run in the backround while the rest of your script runs? Like, If i did BoredEvery(2 + random(5)); that would do boredhuman every 2 + a random number out of 5 mins, even if my script was doing other things? Like would it stop my script from functioning for a second to to the BoredHuman? [/QUESTION]

Now, on to the script!

Instructions:
1)Fill in the few colors at the top of the script.
2)Fill in the player info.
3)Drag the crosshair to the rs window
4)Hit run and make sure it finds the shop owner/assistant with no problems
5)I hope it works for you I got about 5 runs. Then i stopped it.

Well, Here it is...

Code:
{.Script Info:
# ScriptName  = AutoArson
# Author      = Crapkiller
# Description = Buys and lights oak logs in Lumby general store
# Version     = 1.0
# Date        = 4/19/07
# Comments    = If you have any problems with the script such as the
script gets stuck please post where your player got lost so I can try
to fix the problem, Thanks!
/Script Info}

program AutoArson;

{.include SRL\SRL.scar}
const
  ManColor = 5465467; //The color of the shop owner/ assistant
  LogColor = 3166571; // The color of the logs in your inventory

var
  Loads, Xp, LogsBurnt, BmpLevel, BmpStore, DtmLog, DtmTind, Ax, Ay: integer;

procedure DeclarePlayers;
begin
  HowManyPlayers := 3;
  NumberOfPlayers(HowManyPlayers);
  CurrentPlayer := 0;

  Players[0].Name := '';
  Players[0].Pass := '';
  Players[0].Nick := ''; //3 - 4 letters of YOUR username, example: zima
  Players[0].Active := True;
  Players[0].Integer1 := 100; //Amount of loads

  Players[1].Name := '';
  Players[1].Pass := '';
  Players[1].Nick := ''; //3 - 4 letters of YOUR username, example: zima
  Players[1].Active := True;
  Players[1].Integer1 := 100; //Amount of loads

  Players[2].Name := '';
  Players[2].Pass := '';
  Players[2].Nick := ''; //3 - 4 letters of YOUR username, example: zima
  Players[2].Active := True;
  Players[2].Integer1 := 100; //Amount of loads
end;

procedure LoadBmpsnDtms;
begin
  BmpStore := BitmapFromString(37, 13, 'z78DAD5964B0E83300C05AF1' +
    '4EAA8827D9BFB1FA9126C123DC61894209A8517D60BF2F817F26C' +
    '5FB35CD95296792AB5CD6FFBD8ABB172AB835D72B2DCD902575A0' +
    'F3136FEC7D329D7763616F5A8FEA1745411ED4650FE0B5D881166' +
    '93BAB48352628E2B23D5D14D429D5CD79134C4A8D136DF142EFC6' +
    '680CEDF1E91CE244DDC5F73119DEFBF365FF7D0C57B1273027D88' +
    'B7EEA4936DE34FC44E4EA052C475F0EE8777C5E98C852BE8CF1D6' +
    'D09DADB07FAD5629E5DA5FF6A24F7E0DCF57A8946FCAD9D8D6704' +
    'D7683A8D10FC3FA9816B37');
  DtmLog := DTMFromString('78DA638C64646060006104280C3366E0828AF' +
    'E0702C628208B13550D4C0F4C94D107C8E22042CD1F06FC6A9280' +
    'AC9F04D4A40259ACF8ED020058FE0939');
  DtmTind := DTMFromString('78DA630C656460F8CF8002129D3819B880345' +
    '086E13F1030860059DC8CA88A18189148201D0764311250130F64' +
    'FD62C0AFC613C86227608E0BA69BB19AF393809A1820EB037E350' +
    '00B890C61');
  BmpLevel := BitmapFromString(33, 9, 'z78DACD53410AC03008FB5237' +
    '18B44785FDFF4B1BF4E270865819AC871CA48D898DAA728E5D0DB' +
    '6FBF4A622DA8542C7F0823C8FAB537AEA2E306785A7EEC2699875' +
    '8B4C47AC618D73CD7B5DF31737C33406894A6B1872F42DCB90FE8' +
    'BD9C5F6325E1EAF5CC698C9643533A98B7248ED85A944FB827F04' +
    '4FB83293D005BCE337919AA14B17DE6E4AF37FD0A61A3A65F0025' +
    '4F3A48C');
end;

procedure Signature;
begin
  Writeln('Script Made by:                 ');
  Writeln('_________                       ');
  Writeln('\_   ___ \____________  ______  ');
  Writeln('/    \  \/\_  __ \__  \ \____ \ ');
  Writeln('\     \____|  | \// __ \|  |_> >');
  Writeln(' \______  /|__|  (____  /   __/ ');
  Writeln('        \/            \/|__|    ');
end;


procedure AntiBanz;
var
  Ban: Integer;
begin
  if (not (LoggedIn)) then
  begin
    NextPlayer(False);
    Exit;
  end;

  Ban := Random(200);
  case Ban of
    1: HoverSkill('FireMaking', False);
    2: HoverSkill('Random', False);
    3: RandomRClickEvery(1 + Random(10));
    4: PickUpMouse;
    5: LeaveScreenEvery(3 + Random(7));
    6: TypeSend('Man firemaking is boooooooooring');
    7: RandomChatEvery(8 + Random(6));
    8: DoEmote(1 + Random(20));
    9: Typesend('=/ Sigh, this is booring');
    10: Typesend('*Sigh*');
    11: HoverEvery(3 + Random(5), 'Firemaking');
    12: AlmostLogout;
    13: ExamineObj('Oak logs', LogColor, 10);
  end;
end;


procedure AntiRandoms;
begin
  FindTalk;
  if (FindFight = True) then
  begin
    RunAwayDirection('N');
    Wait(20000 + Random(10000));
    RunBack;
  end;
  FindLamp('Firemaking');
  FindNormalRandoms;
  AntiBanz;
end;

procedure Buy;
begin
  Ax := 0;
  Ay := 0;
  FindObj3(x, y, 'Shop', ManColor, 5);
  Mouse(x, y, 3, 3, False);
  Wait(200 + random(200));
  ClickOption('Trade', 1);
  Ax := 0;
  repeat
    Wait(500);
    Ax := Ax + 1;
    if (Ax >= 40) then
    begin
      Ax := 0;
      FindObj3(x, y, 'Shop', ManColor, 5);
      Mouse(x, y, 3, 3, False);
      Wait(200 + random(200));
      ClickOption('Trade', 1);
    end;

  until (FindBitmap(BmpStore, x, y));
  repeat
    FindDTM(DtmLog, x, y, Ax + 1, Ay + 1, 511, 335);
    MMouse(x, y, 3, 3);
    Wait(300 + random(200));
    if (not (IsUpText('Oak'))) then
    begin
      GetMousePos(Ax, Ay);
      if (Ay = 338) then Ay := 0; Ax := 0;
    end;
  until (IsUpText('Oak'));
  Mouse(x, y, 3, 3, False);
  Wait(100 + random(100));
  ClickOption('Buy 10', 1);
  Mouse(x, y, 3, 3, False);
  Wait(100 + random(100));
  ClickOption('Buy 10', 1);
  Mouse(x, y, 3, 3, False);
  Wait(100 + random(100));
  ClickOption('Buy 10', 1);
  Wait(200 + random(100));
  Mouse(487, 40, 5, 5, True);
end;

procedure MakeAFire;
begin
  FindDTM(DtmLog, x, y, 562, 208, 731, 459);
  Mouse(x, y, 3, 3, True);
  FindDTM(DtmTind, x, y, 562, 208, 731, 459);
  Mouse(x, y, 3, 3, True);
end;


procedure Light;
begin
  SetRun(True);
  if (not (FindSymbol(x, y, 'Furnace'))) then
  begin
    RadialRoadWalk(FindRoadColor, 0, 90, 50, 3, 3);
    AntiRandoms;
    FindSymbol(x, y, 'Furnace');
    Mouse(x - 5 - random(5), y, 3, 3, True);
    Flag;
    AntiRandoms;
  end;
  if (FindSymbol(x, y, 'Furnace')) then
  begin
    Mouse(x - 5 - random(5), y, 3, 3, True);
    Flag;
  end;
  GameTab(4);
  repeat
    MakeAFire;
    AntiRandoms;
    Wait(500);
    if (InChatMulti('can', 'ere', 'here')) then
    begin
      MakeCompass('N');
      if (FindSymbol(x, y, 'Furnace')) then
      begin
        Mouse(MSCX, MSCY - 40, 3, 3, True);
        Flag;
        MakeAFire;
        AntiRandoms;
      end;
      if (not (FindSymbol(x, y, 'Furnace'))) then
      begin
        Mouse(MSCX, MSCY + 40, 3, 3, True);
        Flag;
        MakeAFire;
        AntiRandoms;
      end;

    end;
    if (InChatMulti('int', 'eres', 'ting')) then
    begin
      MakeAFire;
      AntiRandoms;
    end;
    repeat
      Wait(500);
      AntiRandoms;
    until (FindBitmap(BmpLevel, x, y) or InChatMulti('cat', 'ch', 'es'));
  until (CountItemColor(LogColor) = 0);
end;

procedure Walk2Store;
begin
  if (not (FindSymbol(x, y, 'Store'))) then
  begin
    Ax := 0;
    repeat
      KeyDown(VK_Left);
      Wait(100 + Random(100));
      KeyUp(VK_Left);
      AntiRandoms;
      Ax := Ax + 1;
      if (Ax = 10) then
      begin
        MakeCompass('N');
        Mouse(MMCX + 40, MMCY, 20, 20, True);
        Flag;
        Ax := 0;
      end;
    until (FindSymbol(x, y, 'Store'));
  end;
  Mouse(x, y, 3, 3, True);
  Flag;
  PerfectNorth;
end;

procedure ProggyReport;
begin
  LogsBurnt := Loads * 26;
  Xp := LogsBurnt * 60;
  Writeln('~~~~~~~~~~Crapkillers AutoArson~~~~~~~~~~');
  Writeln('Worked for ' + TimeRunning);
  Writeln('Burnt ' + IntToStr(LogsBurnt) + ' logs');
  Writeln('Gained about ' + IntToStr(Xp) + ' xp');
  SRLRandomsReport;
end;


begin
  SetupSRL;
  DeclarePlayers;
  NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
  Signature;
  ActivateClient;
  Wait(3000);
  LoginPlayer;
  PerfectNorth;
  LoadBmpsnDtms;
  SetChat('hide', 1);
  SetChat('off', 2);
  SetChat('off', 3);
  repeat
    repeat
      AntiBanz;
      MakeCompass('N');
      Buy;
      AntiBanz;
      MakeCompass('N');
      Light;
      AntiBanz;
      MakeCompass('N');
      Walk2store;
      Loads := Loads + 1;
      if (not (LoggedIn)) then
      begin
        Writeln(Players[CurrentPlayer].Name + ' is lost, switching to next player...');
        NextPlayer(False);
        Loads := 0;
      end;
      if (WeAreDead) then NextPlayer(False);
      ProggyReport;
    until (Loads >= Players[CurrentPlayer].Integer1);
    Writeln(Players[CurrentPlayer].Name + ' has finished their loads, switching to next player...');
    NextPlayer(True);
  until (False);
end.

If you come across any problems please post them here. And if you can maybe post a progress report.
 
Two Factor Authentication User
Christmas 2015
Lawrence
Supporting Business
I was thinking how you could make it to buy willows?
 
I was thinking how you could make it to buy willows?

dude it just finds the color of willow logs and clicks to buy them it's common sense. Also very original script i might try it out l8rter, and if it works i'll post a prog report.
 
bob2004 dont be mean :O i have no idea how to make it get willows instead either, i change the colour and name but it still buys oak, so please if you think its not so hard post a willow version ;]
 
well dude..there arent always oaks or whatever in the bank...thats a variable that could completely mess up the script...

Yea, can be solved by just checking if there are (HINT: IsUpText for example??), good work!!
 
Back
Top