Results 1 to 6 of 6

Thread: Edgevil bank opener?

  1. #1
    Join Date
    Feb 2007
    Posts
    3,616
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default Edgevil bank opener?

    Does SRL have a way to open edgevil bank? I looked through the valid banks list and it wasn't on there (maybe I'm just blind), and I tried a different bank for OpenBank and it didn't work at edgevil.

    Am I going to have to make a bank opener for it myself or is there already one that I'm just not seeing?

    Thanks!
    ~JAD

  2. #2
    Join Date
    Mar 2007
    Posts
    3,042
    Mentioned
    1 Post(s)
    Quoted
    14 Post(s)

    Default

    OpenBankQuiet, OpenBankGlass, and OpenBankFast, all of which are used in OpenBank, seem to have the capabilities to open the bank in Edgeville.
    :-)

  3. #3
    Join Date
    Feb 2007
    Posts
    3,616
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Method View Post
    OpenBankQuiet, OpenBankGlass, and OpenBankFast, all of which are used in OpenBank seem to have the capabilities to open the bank in Edgeville.
    Yeah I tried eb on all those and it gave me an error message. Not giving me it anymore...

    But It has failed every single time at opening the bank (OB, OBQ, and OBF). "Unable to open bank...". I don't understand why it can't find the bank booth there.

  4. #4
    Join Date
    Mar 2007
    Posts
    4,810
    Mentioned
    3 Post(s)
    Quoted
    3 Post(s)

    Default

    My opinion would be to make your own, or 'FindObj' it.

  5. #5
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,553
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Add me to msn(The butterfly, I will you give me mine).
    Works 100%.

    Edit:
    This is all you need for the actual Bank-Opening.
    SCAR Code:
    function FindEdgeBank(var TempX, TempY:integer; MaxTime :integer):boolean;
    var
      TempTpa,Temp2Tpa,Temp1: TpointArray;
      Temp: T2DPointArray;
      CTS,Temp2X, Temp2Y, H, I, Timer:integer;
    begin
      Debug('Trying to find the Edgeville bank in '+IntToStr(MaxTime)+ ' ms.');
      MarkTime(Timer);
      CTS := GetColortoleranceSpeed;
      ColortoleranceSpeed(3);
      FindColorsSpiraltolerance(TempX, TempY, TempTPA, 3296088, MSX1 + 175, MSY1 + 125, MSX2 - 110, MSY2 - 110, 5);
      FindColorsSpiraltolerance(Temp2X, Temp2Y, Temp2TPA, 2768457, MSX1 + 175, MSY1 + 125, MSX2 - 110, MSY2 - 110, 5);
      Temp1:= CombineTPA(TempTPA,Temp2Tpa);
      Temp:= TPAtoATPAEx(Temp1, 40, 30);//Change the Bigness.
      SortATPASize(Temp, True);
      H:=High(Temp);
      for I := 0 to H do
      begin
        MiddleTPAEx(Temp[i], TempX, TempY);
        MMouse(TempX, TempY, 5, 5);
        Wait(50 + Random(50));
        Result:= IsUpText('ank');
        if (TimeFromMark(Timer) > MaxTime) then Break;
        if Result and not (TimeFromMark(Timer) > MaxTime) then Debug('Found Edgeville bank in '+IntToStr(TimeFromMark(Timer))+' ms.');
        if Result then
        begin
          GetMousePos(TempX, TempY);
          Break;
        end;
      end;
      ColortoleranceSpeed(CTS);
    end;

    procedure HBankScreen;
    var
      Timer: integer;
    begin
      if not LoggedIn then Exit;
      MarkTime(Timer);
      repeat
        Wait(50 + Random(25));
      until(BankScreen) or ((TimeFromMark(Timer) > 5000)) or (PinScreen);
      if PinScreen then InPin(Players[CurrentPlayer].Pin);
    end;

    procedure HOpenBank;
    var
      Timer, A, B :integer;
    begin
      if not LoggedIn then Exit;
      if BankScreen then Exit;
      MarkTime(Timer);
      repeat
        if FindEdgeBank(A, B, 5000) then
        begin
          Mouse(A, B, 0, 0, False);
          Wait(10 + Random(40));
          ChooseOptionMulti(['uickly', 'ooth']);
        end;
        HBankscreen;
      until(TimeFromMark(Timer) > (4 * 5 * 1000)+Random(500)) or BankScreen;
      if not Bankscreen then LogOut;
    end;

    Just some neat DTM Banking stuff, I could put Deposit and Withdraw together, but it works fine.
    If you add the DTM part you only need a Global variable DTM integer.
    SCAR Code:
    //Loads an DTM into the DTM variable,
    //when WDTM matches one of the strings below it will load that DTM into the DTM variable.
    procedure LDTM(WDTM:string);
    begin
      case lowercase(WDTM) of
      'to bank': DTM := LoadToBank;//DTMFromString('78DA639CCEC4C050CA80023CF83919FE03694' +
           //'620FE0F048CF3116A18A16AFEFC6142E1332E06F20B09A89907E4' +
           //'D711A1A60DBF1A0084AE12D0');
      'to well': DTM := LoadToWell; //DTMFromString('78DA63F46762603065400105F99A0CFF81342' +
           //'310FF0702C62AA09A5054357FFE30816946289FB10EC80F24A0A6' +
           //'12C88F23424D1A01358B81FC46543575DDF3184490D5AC02AA292' +
           //'1A06636504D3B01351B816A32F0AB0100A5481D51');
      'clay': DTM := DTMFromString('78DA637460606070634001F3DB22194480342' +
           '310FF0702460B20C385010D30229140DA0E48781150E30E245C09' +
           'A8F101124E04D480DCEB805F0D00927908CA');
      'soft clay': DTM := DTMFromString('78DA631465606070664001D901BC0C22409A1' +
           '188FF0301230790E1CE8006189148202D04247C09A8510012AE04' +
           'D42802093B026A7808AB0100856206FE');
      'bucket': DTM := DTMFromString('78DA637466626078C8800212BD25194480342' +
           '310FF0702462BA09A970C6880118904D24E40359F08A8F126C21C' +
           '2FA09AF704D45813560300E16B0C05');
      'bucket of water': DTM := DTMFromString('78DA637462626078C880026A6AE7308800694' +
           '620FE0F048C964035CF18D000231209A49D816A3E1150E30354F3' +
           '94801A2BA09AB704D47803D5BCC2AF060077E80CC7');
      else
        Debug('DTM: '+ WDTM +' doesn'+#39+'t exist.');
      end;
    end;

    function FDTM(WDTM:string; var AA, BB :integer; X1, Y1, X2, Y2:integer):boolean;
    begin
      LDTM(WDTM);
      Result := FindDTM(DTM, AA, BB, X1, Y1, X2, Y2);
      if Result then Debug(WDTM+' Found! at: '+inttostr(AA)+','+inttostr(BB)) else Debug(WDTM+' Not Found!');
      FreeDTM(DTM);
    end;

    function HWithdraw(WDTM:string; Amount:integer):boolean;
    var
      AA, BB :integer;
      XNeeded:boolean;
      Str:string;
    begin
      if not LoggedIn then Exit;
      if not BankScreen then Exit;
      Result := FDTM(WDTM, AA, BB, MSX1, MSY1, MSX2, MSY2);
      if Result then
      begin
        Debug('Found '+WDTM +' DTM, trying to withdraw it.');
        case Amount of
        0 :  XNeeded := false;
        1 :  XNeeded := false;
        2..4 : XNeeded := true;
        5 : XNeeded := false;
        6..9 : XNeeded := true;
        10 : XNeeded := false;
        end;
        if Amount > 10 then XNeeded := true;
        if Amount > 27 then XNeeded := false;
        If Amount = 1 then
        begin
          Mouse(AA, BB, 10, 10, True);
          Debug('Witdrawed '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
        if XNeeded then
        begin
          Mouse(AA, BB, 10, 10, false);
          if Chooseoption(IntToStr(Amount)) then Exit;
          ChooseOption('X');
          Wait(1000 + Random(500));
          TypeSend(InttoStr(Amount));
          if Result then Debug('Witdrawed '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
        if not XNeeded then
        begin
          if (Amount > 27) or (Amount < 1) then Str := 'All' else Str := InttoStr(Amount);
          Mouse(AA, BB, 10, 10, false);
          Result := ChooseOption(Str);
          if Result then Debug('Witdrawed '+InttoStr(Amount)+' '+WDTM) else Debug('Failed to withdraw '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
      end;
      Wait(150 + Random(100));
    end;


    function HDeposit(WDTM:string; Amount:integer):boolean;
    var
      AA, BB :integer;
      XNeeded:boolean;
      Str :string;
    begin
      if not LoggedIn then exit;
      if not BankScreen then exit;
      Result := FDTM(WDTM, AA, BB, MIX1, MIY1, MIX2, MIY2);
      if Result then
      begin
        Debug('Found '+WDTM +' DTM, trying to withdraw it.');
        case Amount of
        0 :  XNeeded := false;
        1 :  XNeeded := false;
        2..4 : XNeeded := true;
        5 : XNeeded := false;
        6..9 : XNeeded := true;
        10 : XNeeded := false;
        end;
        if Amount > 10 then XNeeded := true;
        if Amount > 27 then XNeeded := false;
        If Amount = 1 then
        begin
          Mouse(AA, BB, 10, 10, True);
          Debug('Deposited '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
        if XNeeded then
        begin
          Mouse(AA, BB, 10, 10, false);
          if Chooseoption(IntToStr(Amount)) then Exit;
          ChooseOption('X');
          Wait(1000 + Random(500));
          TypeSend(InttoStr(Amount));
          if Result then Debug('Witdrawed '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
        if not XNeeded then
        begin
          if (Amount > 27) or (Amount < 1) then Str := 'All' else Str := InttoStr(Amount);
          Mouse(AA, BB, 10, 10, false);
          Result := ChooseOption(Str);
          if Result then Debug('Deposited '+InttoStr(Amount)+' '+WDTM) else Debug('Failed to withdraw '+InttoStr(Amount)+' '+WDTM);
          Exit;
        end;
      end;
      Wait(150 + Random(100));
    end;

    You can use these too:
    SCAR Code:
    function CountItem(WDTM:String):Integer;
    begin
      GameTab(tab_Inv);
      LDTM(WDTM);
      Result := CountItemsIn('inv','dtm', DTM, []);
      if (Result > 0) then Debug(IntToStr(Result) + ' ' + WDTM + 's (Count)');
      FreeDTM(DTM);
    end;

    function CountItemStack(WDTM:String):Integer;
    var
      A, B :Integer;
    begin
      if FDTM(WDTM, A, B, MSX1, MSY1, MSX2, MSY2) then
      begin
        Result := GetAmount(A, B);
        Debug(IntToStr(Result)+ ' ' + WDTM + 's found(Stack)');
      end;
    end;
    ~Hermen

  6. #6
    Join Date
    Feb 2007
    Posts
    3,616
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    @Hermen, Thanks, but for the bank opening I think I'm just going to use OpenBankGlass.

    Thanks guys.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •