Page 1 of 2 12 LastLast
Results 1 to 25 of 26

Thread: radial walking and fflag?

  1. #1
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default radial walking and fflag?

    ok how will i be able to add a radial walking procedure to my karamja fisher that walks from the dock to the store and back again?

    and how will i add failsafes instead of using time to do it...?

    They are sisters...
    Runescape Classic

  2. #2
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Use Yakmans Radialroadwalk aid.

    Radial road walk doesnt need failsafes.

    Radial road walk procedure=
    function RadialRoadWalk(TheColor: Integer; StartRadial, EndRadial: Integer; Radius: Integer; Xmod, Ymod: Integer): Boolean;
    By: WT-Fakawi & Wizzup?
    Description:
    Walks TheColor from StartRadial to EndRadial for Radius Distance
    Valid Arguments:
    TheColor:= RoadColor. RoadColor will be dynamically updated.
    StartRadial/EndRadial := Any number between 0-1440. 0=N,90=E,180=S,270=W. DO NOT USE NUMBERS UNDER 0 or ABOVE 1440
    Radius:= Distance from the centre of minimap, i.e. how far away the mouse clicks. Use numbers 20-72
    XMod, YMod := deviation from MouseFindFlag. -2 to 2.

    RadialWalking Aid=
    SCAR Code:
    program RadialWalkerAid;
    {
    RADIAL WALKER AID by YAKMAN


    This is a utility which helps people use Radial Walk.


    There are Four Functions of this script.

    The first function shows the Radial and Radius of a point
    when you move the mouse over the MiniMap. It will also show the Radial
    with 360 added, so it can be used for walking upwards.

    For Example, when you move the mouse above the center, it will show
    a radial of 0 and a radius of around 40.


    The second function Draws the Path which RadialWalk takes when you input
    the StartRadial, EndRadial, Radius and press the 'Show Path' Button

    For Example, if you put StartRadial=90 EndRadial=180 and Radius=50
    it will draw a arc in the lower right 50 pixels from the center
    moving inwards until it reaches the center.



    Both these Functions can have their color changed using the DropDown
    Menu, the choises are Red, Blue and Green.

    Pressing the 'Clear Box' button will remove all the marks and leave
    an empty minimap.

    The first Function can be Disabled by UnChecking the 'Drawing Radial'
    checkbox.


    The thrid function is used by clicking the 'Capture From Client' button
    it copys the area from the RS Minimap and displays it on the form.
    This can be used now with the first and second functions.

    The fourth function is activated by checking the Dynamic Capture
    checkbox, it means that the script will capture the client minimap
    repeatedly, the frame rate is decided by the drop-down menu
    labeled 'DCapture Frame Rate'.



    Enjoy!
      Yakman.


    Before i released this, i sent it to a few people
    they all found it VERY useful and a good piece of work

    (it also looks really cool when you make it draw the path)

    'omg that is soooooooooo
     cooooooooooooooool'
                   Sumilion


    'wow, thats great!'
                   Freddy1990


    'WOWAWAWEWA'
                   WT-Fakawi

    }


    const
     DebugAll = False; //If you really want to see the script working


    //Nothing Below needs to be edited
    var
     bmpBlank_Map:integer;
     working:boolean;
                   //this global boolean shows if radial path is begin drawn
    var
     bmpCapture:integer;
     Capture:TCanvas;
     Captured:boolean;
     FoundRS:boolean;
     
    var
     i,StartRadial,EndRadial,Color,Radius:integer;
            //radial path drawing globals
    var
      frmDesign : TForm;
      Label1 : TLabel; //form variables
      Label2 : TLabel;
      Label3 : TLabel;
      Label4 : TLabel;
      Label5 : TLabel;
      Label6 : TLabel;
      Label7 : TLabel;
      Label8 : TLabel;
      Label9 : TLabel;
      Label10 : TLabel;
      Button1 : TButton;
      Button2 : TButton;
      ComboBox1 : TComboBox;
      ComboBox2 : TComboBox;
      CheckBox2 : TCheckBox;
      CheckBox1 : TCheckBox;
      Button3 : TButton;
      Button4 : TButton;
      Button5 : TButton;
      Edit1 : TEdit;
      Edit2 : TEdit;
      Edit3 : TEdit;
      Timer2 : TTimer;
      Timer3 : TTimer;


    //constants, dont change these unless RS updates
    const
     FormX = 190; //where to copy to the form
     FormY = 100;
     
    const
     ClientX = 573; //where to copy from the clint
     ClientY = 3;

    const
     Height = 150;  //dimentions
     Width  = 157;

    const
     CenterX = 266;  //center of the form image
     CenterY = 179;


    procedure ClearMap;
    begin
    if(captured)then
     SafeCopyCanvas(capture,frmDesign.canvas,0,0,Width,Height,FormX,FormY,FormX+Width,FormY+Height)
    else
     SafeCopyCanvas(getbitmapcanvas(bmpBlank_Map),frmDesign.canvas,0,0,Width,Height,FormX,FormY,FormX+Width,FormY+Height);
    end;

    procedure DrawBlankMap(sender:TObject);
    begin
    frmDesign.RePaint;
    end;

    function Distance(x1, y1, x2, y2: Integer): Integer;
      // By PPLSUQBAWLZ edit BenLand100
    begin
      Result := Round(Sqrt(Sqr(x1 - x2) + Sqr(y1 - y2)));
    end;

    function FindRadial(x,y,radius:integer):integer;
    var x1,y1,r:integer;  //this finds the radial at your mouse by
    begin            //checking every radial of the radius and seeing if your
    if(working)then exit;        //mouse is close to there
    for r:=0 to 360 do
     begin
     x1:=  Round(Radius*Sin(r * pi / 180))+CenterX;
     y1:= Round(-Radius*Cos(r * pi / 180))+CenterY;
     if(DebugAll)then
      frmDesign.Canvas.Pixels[x1,y1] := 16777215;
     if(Distance(x1,y1,x,y)<=1)then
      begin
      result:=r;
      exit;
      end
     end
    writeln('Failed to get radial');
    end;

    procedure DrawRadial(x,y,Thecolor:integer);
    var Radius,Radial:integer;
    begin
    if(working)then exit;
    Radius := Distance(CenterX,CenterY,x,y);
    Radial := FindRadial(x,y,Radius);
    if(not DebugAll)then
     ClearMap;
    frmDesign.Canvas.Pen.Color := TheColor;
    frmDesign.Canvas.MoveTo(CenterX,CenterY);
    frmDesign.Canvas.LineTo(x,y);
    Label1.Caption := 'Radial   = '+inttostr(Radial);
    Label2.Caption := 'Radius  = '+inttostr(Radius);
    Label10.Caption := 'Radial2 = '+inttostr(Radial+360);
    end;

    procedure SafeDrawRadial(x,y,color:integer);
    var t:TVariantArray;
    begin
    t:= [x,y,color];
    ThreadSafeCall('DrawRadial',t);
    end;
           //event called when the mouse if moved
    procedure MouseMove(Sender:TObject;Shirt:TShiftState;x,y:integer);
    var fillcolor:integer;
    begin
    if(working)then exit;
    if(DebugAll)then
     writeln('Mouse Move Event - Mouse at '+inttostr(x)+','+inttostr(y));
    if(not CheckBox1.Checked)then exit;
    if(not ((x>FormX)and(x<FormX+Width-6)and(y>FormY)and(y<FormY+Height)))then exit;
     case ComboBox1.Text of
      'Red':fillcolor:=255;
      'Blue':fillcolor:=16711680;
      'Green':fillcolor:=65280;
     end
    SafeDrawRadial(x,y,fillcolor);
    end;
     //event called by Timer3
    procedure DrawRadialStep(sender:TObject);
    var x1,y1:integer;
    begin  //draws on step of the radial path, then changes global variables
    Working:=true;     //for the next time it is called
     case ComboBox1.Text of
      'Red':color:=255;
      'Blue':color:=16711680;
      'Green':color:=65280;
     end
    x1:= Round(Radius * Sin(i*pi/180))+CenterX;
    y1:= Round(Radius * Cos(i*pi/180))+CenterY;
    frmDesign.Canvas.Pixels[x1,y1]:=Color;
    if(DebugAll)then
     writeln('x1 = '+inttostr(x1)+' y1='+inttostr(y1));
     
    if(i=EndRadial)then
     begin
     i:=StartRadial;
     Radius:=Radius-4;
     end
    if(Radius<=1)then
     begin
     Timer3.Enabled := False;
     working:=false;
     Button3.Caption:='Show Path';
     exit;
     end
    if(StartRadial < EndRadial)then
     i:=i+1
    else
     i:=i-1;
    if(DebugAll)then
     writeln('i='+inttostr(i)+' radius='+inttostr(radius)+' sr='+inttostr(startradial)+' er='+inttostr(endradial));
    end;
        //called by pressing Button3
    procedure OnRadialPath(Sender:TObject);
    begin
    if(not Working)then
     begin
      try
       StartRadial:=StrToInt(Edit1.text);
       EndRadial:=StrToInt(Edit2.Text);
       Radius:=StrToInt(Edit3.text);
      except
       edit1.text:='0';
       edit2.text:='0';
       edit3.text:='0';
       if(DebugAll)then
        writeln('Numbers Only!');
      end
     ClearMap;
     if(Radius > 80)then exit;
     StartRadial:= StartRadial + 180;
     EndRadial:= EndRadial + 180;//all this because SCAR's sin uses radians
     StartRadial := 360 - StartRadial;
     EndRadial := 360 - EndRadial;
      case ComboBox1.Text of
       'Red':color:=255;
       'Blue':color:=16711680;
       'Green':color:=65280;
      end
     i:=StartRadial
     Timer3.Enabled:=True;
     Button3.Caption:='Stop';
     end
    else
     begin
     Timer3.Enabled:= False;
     Button3.Caption:='Show Path';
     working:=false;
     end
    end;
      //called by clicking the mouse
    procedure MouseDown(Sender:TObject;Button:TMouseButton;Shift:TShiftState;X,Y:Integer);
    begin
    if(working)then exit;
    if(not ((x>FormX)and(x<FormX+Width-6)and(y>FormY)and(y<FormY+Height)))then exit;
    CheckBox1.Checked:=not CheckBox1.Checked;
    end;  //simply freezes the radial display

    procedure Paint(Sender:TObject);
    begin
    ClearMap;
    end;

    procedure PrintProc(sender:TObject);
    var sRadial,eRadial,Radius:integer;
    begin
    if(working)then exit;
     try
      sRadial:=StrToInt(Edit1.Text);
      eRadial:=StrToInt(Edit2.Text);
      Radius:=StrToInt(Edit3.Text);
     except
      edit1.text:='0';
      edit2.text:='0';
      edit3.text:='0';
      if(DebugAll)then
       writeln('Numbers Only!');
     end
    writeln('');
    writeln('RadialWalk( {TheColor} , '+inttostr(sRadial)+', '+inttostr(eRadial)+', '+inttostr(Radius)+', {Xmod}, {Ymod});');
    writeln('RadialRoadWalk(RoadColor, '+inttostr(sRadial)+', '+inttostr(eRadial)+', '+inttostr(Radius)+', {Xmod}, {Ymod});');
    writeln('');
    end;

    procedure FindClient;
    begin   //finds the RS window by size
    if(working)then exit;
    if(FindWindowBySize(766,504))then
     label8.caption:='RS Handle = '+Inttostr(GetClientWindowHandle)
    else
     label8.caption:='RS Handle = 0';
    end;

    procedure CaptureFromClient;
    begin
     try //frees an older bitmap if it exists
      FreeBitmap(bmpCapture);
     except
      //there was no older bitmap to free
     end
    bmpCapture:=BitmapFromString(Width,Height,'');
    Capture:=GetBitmapCanvas(bmpCapture);
    if(not FoundRS)then
     FindClient
    if(Label8.Caption = 'RS Handle = 0')then
     exit;
     try
      SafeCopyCanvas(GetClientCanvas,Capture,ClientX,ClientY,ClientX+Width,ClientY+height,0,0,Width,Height);
      SafeCopyCanvas(Capture,frmDesign.canvas,0,0,Width,Height,FormX,FormY,FormX+Width,FormY+Height);
     except
      CheckBox2.Checked:=false;
     end
    Captured:=true;
    end;
      //called by pressing button
    procedure ClientCapture(sender:TObject);
    begin
    CaptureFromClient;
    end;
        //called by Timer2
    procedure DynamicCapture(sender:TObject);
    begin
    if(working)then exit;
    CaptureFromClient;
    end;
            //called by changing CheckBox2
    procedure StartDCapture(sender:TObject);
    begin
    if(working)then exit;
    if(CheckBox2.Checked)then
     begin
     Timer2.Interval:= StrToInt(ComboBox2.Text);
     Timer2.Enabled:= True;
     end
    else
     begin
     Timer2.Enabled:= False;
     end
    end;
         //called by pressing button
    procedure FindRS(sender:TObject);
    begin
    if(working)then exit;
    FindClient;
    end;

    procedure Form;
    begin  //constructs the form
    frmDesign.Left := 353;
    frmDesign.Top := 115;
    frmDesign.BorderIcons := [biSystemMenu, biMinimize];
    frmDesign.BorderStyle := bsSingle;
    frmDesign.Caption := 'Radial Walking Aid - Yakman';
    frmDesign.ClientHeight := 412;
    frmDesign.ClientWidth := 525;
    frmDesign.Color := clBtnFace;
    frmDesign.Font.Color := clWindowText;
    frmDesign.Font.Height := -11;
    frmDesign.Font.Name := 'MS Sans Serif';
    frmDesign.Font.Style := [];
    frmDesign.PixelsPerInch := 96;
    frmDesign.OnMouseMove:= @MouseMove;
    frmDesign.OnPaint:= @Paint;
    frmDesign.OnMouseDown:=@MouseDown;
    Label1 := TLabel.Create(frmDesign);
    Label1.Parent := frmDesign;
    Label1.Left := 24;
    Label1.Top := 40;
    Label1.Width := 48;
    Label1.Height := 13;
    Label1.Caption := 'Radial   = ';
    Label2 := TLabel.Create(frmDesign);
    Label2.Parent := frmDesign;
    Label2.Left := 24;
    Label2.Top := 88;
    Label2.Width := 48;
    Label2.Height := 13;
    Label2.Caption := 'Radius  = ';
    Label3 := TLabel.Create(frmDesign);
    Label3.Parent := frmDesign;
    Label3.Left := 64;
    Label3.Top := 256;
    Label3.Width := 55;
    Label3.Height := 13;
    Label3.Caption := 'Start Radial';
    Label4 := TLabel.Create(frmDesign);
    Label4.Parent := frmDesign;
    Label4.Left := 64;
    Label4.Top := 288;
    Label4.Width := 52;
    Label4.Height := 13;
    Label4.Caption := 'End Radial';
    Label5 := TLabel.Create(frmDesign);
    Label5.Parent := frmDesign;
    Label5.Left := 64;
    Label5.Top := 320;
    Label5.Width := 33;
    Label5.Height := 13;
    Label5.Caption := 'Radius';
    Label6 := TLabel.Create(frmDesign);
    Label6.Parent := frmDesign;
    Label6.Left := 192;
    Label6.Top := 16;
    Label6.Width := 265;
    Label6.Height := 13;
    Label6.Caption := 'Move Your Mouse Over the MiniMap To Display Radials';
    Label7 := TLabel.Create(frmDesign);
    Label7.Parent := frmDesign;
    Label7.Left := 168;
    Label7.Top := 40;
    Label7.Width := 332;
    Label7.Height := 13;
    Label7.Caption :=
    'Input '#39'StartRadial'#39' '#39'EndRadial'#39' and '#39'Radius'#39' to Display RadialWa' +
    'lk Path';
    Label8 := TLabel.Create(frmDesign);
    Label8.Parent := frmDesign;
    Label8.Left := 376;
    Label8.Top := 168;
    Label8.Width := 64;
    Label8.Height := 13;
    Label8.Caption := 'RS Handle = 0';
    Label9 := TLabel.Create(frmDesign);
    Label9.Parent := frmDesign;
    Label9.Left := 376;
    Label9.Top := 240;
    Label9.Width := 103;
    Label9.Height := 13;
    Label9.Caption := 'DCapture Frame Rate';
    Label10 := TLabel.Create(frmDesign);
    Label10.Parent := frmDesign;
    Label10.Left := 24;
    Label10.Top := 64;
    Label10.Width := 48;
    Label10.Height := 13;
    Label10.Caption := 'Radial2 = ';
    Button1 := TButton.Create(frmDesign);
    Button1.Parent := frmDesign;
    Button1.Left := 16;
    Button1.Top := 344;
    Button1.Width := 100;
    Button1.Height := 25;
    Button1.Caption := 'Print Procedure';
    Button1.TabOrder := 15;
    Button1.OnClick:= @PrintProc;
    Button1.OnMouseDown:=@MouseDown;
    Button2 := TButton.Create(frmDesign);
    Button2.Parent := frmDesign;
    Button2.Left := 16;
    Button2.Top := 112;
    Button2.Width := 118;
    Button2.Height := 25;
    Button2.Caption := 'Clear Map';
    Button2.TabOrder := 8;
    Button2.OnClick := @DrawBlankMap;
    Button2.OnMouseDown:=@MouseDown;
    Button3 := TButton.Create(frmDesign);
    Button3.Parent := frmDesign;
    Button3.Left := 16;
    Button3.Top := 208;
    Button3.Width := 75;
    Button3.Height := 25;
    Button3.Caption := 'Show Path';
    Button3.TabOrder := 11;
    Button3.OnClick:= @OnRadialPath;
    Button3.OnMouseDown:=@MouseDown;
    Button4 := TButton.Create(frmDesign);
    Button4.Parent := frmDesign;
    Button4.Left := 376;
    Button4.Top := 104;
    Button4.Width := 106;
    Button4.Height := 25;
    Button4.Caption := 'Capture From Client';
    Button4.TabOrder := 16;
    Button4.OnClick := @ClientCapture;
    Button5 := TButton.Create(frmDesign);
    Button5.Parent := frmDesign;
    Button5.Left := 376;
    Button5.Top := 136;
    Button5.Width := 75;
    Button5.Height := 25;
    Button5.Caption := 'Find RS';
    Button5.TabOrder := 17;
    Button5.OnClick := @FindRS;
    ComboBox1 := TComboBox.Create(frmDesign);
    ComboBox1.Parent := frmDesign;
    ComboBox1.Left := 16;
    ComboBox1.Top := 144;
    ComboBox1.Width := 118;
    ComboBox1.Height := 21;
    ComboBox1.ItemHeight := 13;
    ComboBox1.TabOrder := 9;
    ComboBox1.Text := 'Red';
    ComboBox1.Items.Add('Red');
    ComboBox1.Items.Add('Blue');
    ComboBox1.Items.Add('Green');
    CheckBox1 := TCheckBox.Create(frmDesign);
    CheckBox1.Parent := frmDesign;
    CheckBox1.Left := 16;
    CheckBox1.Top := 176;
    CheckBox1.Width := 97;
    CheckBox1.Height := 17;
    CheckBox1.Caption := 'Drawing Radial';
    CheckBox1.TabOrder := 10;
    CheckBox1.Checked:=True;
    CheckBox1.OnMouseDown:=@MouseDown;
    Edit1 := TEdit.Create(frmDesign);
    Edit1.Parent := frmDesign;
    Edit1.Left := 16;
    Edit1.Top := 248;
    Edit1.Width := 39;
    Edit1.Height := 21;
    Edit1.TabOrder := 12;
    Edit1.Text := '0';
    Edit1.OnMouseDown:=@MouseDown;
    Edit2 := TEdit.Create(frmDesign);
    Edit2.Parent := frmDesign;
    Edit2.Left := 16;
    Edit2.Top := 280;
    Edit2.Width := 39;
    Edit2.Height := 21;
    Edit2.TabOrder := 13;
    Edit2.Text := '0';
    Edit2.OnMouseDown:=@MouseDown;
    Edit3 := TEdit.Create(frmDesign);
    Edit3.Parent := frmDesign;
    Edit3.Left := 16;
    Edit3.Top := 312;
    Edit3.Width := 39;
    Edit3.Height := 21;
    Edit3.TabOrder := 14;
    Edit3.Text := '0';
    Edit3.OnMouseDown:=@MouseDown;
    CheckBox2 := TCheckBox.Create(frmDesign);
    CheckBox2.Parent := frmDesign;
    CheckBox2.Left := 376;
    CheckBox2.Top := 264;
    CheckBox2.Width := 111;
    CheckBox2.Height := 17;
    CheckBox2.Caption := 'Dynamic Capture';
    CheckBox2.TabOrder := 18;
    CheckBox2.OnClick := @StartDCapture;
    ComboBox2 := TComboBox.Create(frmDesign);
    ComboBox2.Parent := frmDesign;
    ComboBox2.Left := 376;
    ComboBox2.Top := 216;
    ComboBox2.Width := 87;
    ComboBox2.Height := 21;
    ComboBox2.ItemHeight := 13;
    ComboBox2.TabOrder := 19;
    ComboBox2.Text := '500';
    ComboBox2.Items.Add('10');
    ComboBox2.Items.Add('100');
    ComboBox2.Items.Add('250');
    ComboBox2.Items.Add('500');
    ComboBox2.Items.Add('1000');
    Timer3 := TTimer.Create(frmDesign);
    Timer3.Interval:=2;
    Timer3.Enabled:=False;
    Timer3.OnTimer := @DrawRadialStep;
    Timer2 := TTimer.Create(frmDesign);
    Timer2.Interval := 10;
    Timer2.Enabled:= False;
    Timer2.OnTimer := @DynamicCapture;
    frmDesign.ShowModal;
    end;

    procedure SafeForm;
    var T:TVariantArray;
    begin
    ThreadSafeCall('Form',t);
    end;

    procedure LoadBMP;
    begin   //loads the bitmap of the blank map
    Writeln('Loading Bitmap');
    bmpBlank_Map:= BitmapFromString(150, 157, 'z78DAED9D5B72E3380' +
           'C45B7644B7627F399EE71F6BFA4F184991AA620C0972F49B6CE4D' +
           '15BBCB71FCA078744110944E27D4AAE9FE73BE79EDE53CFF9E2F9' +
           '78FCB3C7FA4F6D7E93A5FAEA94D8FDCFFF77139A547E257EBD5A6' +
           'F74AEFEB7DAAEFF6EBF33FF88ED9F3D36BC6EDB7CED90F42CDF47' +
           'D8FE7445CC65D3ECE53AB3032DFE6EBF436A255DEDD3295F398DA' +
           'F4B8F20AB6FD41224285F228FBE120D96FC75136DDA6F7E9DCB98' +
           'DDD3CFB5ED649D36F3DD263AF4428F6B8F87CAEB85B1A99F9281D' +
           '4ED3602AF39EB15EEFF9BE8DCC714614CFECECD9BE3D86DC801AF' +
           'BDBF891AE6CC6F35CCB23E390399D327E729ABA91158EEAD1B923' +
           'B76DFE16F63CA6CF25199FAFCDDD8F2C8A33C7691A8DA67DC1DCA' +
           'FCC633C77F6A84CBF65C4BEB6D3D9FC7C3171764C7672AE27A352' +
           'EE2BBB2EA3B8243C3E7146C564D4F3B5B08568B3304A3C0271C53' +
           'D2F9FB5ECB1B0AB3CF4F6338E81EF3CA493A973E9935BFAB9D82B' +
           '05675CA810C85A6FD5837EDEDBFCCEB610F7042E196672BC9663B' +
           '44FFA6C6C534A1FBDBA319561A46AD9E4D86DA5F80CA9578571EC' +
           '769DE77132AB38E3B68AAB9E14D7BB9F6A3F4F7FE8C9A7F147214' +
           '6B5A30212C7D157CA5D222E6FE9C9D770C678CE4815DCE8C813EE' +
           'E0B1348783EA549A5D813B7874D71CA97F1B401F7E874A49CC6B0' +
           '0E83D853EAF7209FA9042A25DB162B6A8CCFB98EBA175E68CEC61' +
           'D4E9833BD4374655D6198F469F579D0B7D680489790D7F7EFE3F2' +
           '689D6FB2C77D087D6CFDB1C615DC35694411F5A9FC76356C1D9C8' +
           '13E2D0C62486D1A91DB1CF3EFBA38613ED93446FF78D77C5E3679' +
           'FF7411FDA278971A58D2571FF2BFE4AD6859180F6C6A34E627EE5' +
           '0DE843683489F13EE2FDF0087DE838247AD1E9563C421F223ADD8' +
           'A446F8F030CA2D72051894B151247F0087D88B8B4D4137B91E8ED' +
           'F2833E744C37B4F76A1CC760BCC716FA106E386E8618EFB1853E7' +
           '41C12BDBA9AF88AFD2D0C421F420A89364BD3BEA6AFD307830812' +
           'FB56B8C5B501D087507CCF85D80DE3578EF717137F22E4B9E1C2E' +
           'EA7C29D17F1AE46E8434871C385EB471937ACA30F0611D2DD5027' +
           '31DECB8F0322D4EE865EBE34BE93110E88D06837D419843E84BAC' +
           'D0D85963508847A91A873E76550A10FA196B8D4C69CD6EF3C0671' +
           '4084DA4954E67D5ED614FA10EAC6604662CC20512842A323D278B' +
           '502FA101AED861E83382042EBB861CC20F42134DA0DE399200C22' +
           '343C22352B14F36DBE4E6F3088D06806136B3F484C0E789BDEA73' +
           '30C22347C56F8C59ABDBE13F421B441444A2E14A1ADDC30231106' +
           '11DA1B83AF74DF6D849E85411C10A1F549643D02A1BD3148148AD' +
           '0FA1169CE203D83100C22744C06894211DA8ABEADEE5C8FD031D5' +
           'EB4E4C08A1760647DFA71E21A43398F6122284466BE15AF730881' +
           '00C2204833088100C22048308A18D18A44E06A175E45DEF170611' +
           '5A93C1DC0D611021184475FA34A24F6010C1208AE9F3188444184' +
           '46B3A200C22B41F06894811DA6A2668EFC4048308C12042476690' +
           '8A3584C6C9BBEB2E756B08ADE3801E6B6466105A3F0A854184601' +
           '0211884418460102118844184B662305EA9874484C63168EFC38B' +
           '1B22B455146AEFFF0283088D7640EB7DDE239088500B7D0A6B44A' +
           '4086D1585C6B5A33088D0B60C52BF8D503B83CA4A443C4F844484' +
           'EAE471E431881B22B4A603DA7DBBB82142A3E9F376CD7B6EE8E55' +
           '4E9678474063D9A2C83FA3A3E2422E4D16789D3E9531864B502A1' +
           '98C19C91710C4222421E7DA50CFEFAF7DFAB47A217D9C220428A0' +
           '3C6572FD419C40D116A71C01606E3CC0C3B0D11F4792CE85168DE' +
           'B6BB2124A263D2D7E2800A838A1B129722E2CFD25CA865D092185' +
           '7DAC020C201952CA81285D6B9217129823E657FAEEE803A83B11B' +
           'E289E808F42973C05207F4188C49543E21CE889E973B7D6CEBF53' +
           '075242A73C385FBFC7E5CE6F923B5F8237A1679A357CFC0D445A1' +
           'E3E2522255F42CDEA78FDEBA3D11ED0CD65D237121E3FA756E214' +
           '645FB8939ADDFE96BE523E86B7743EFACE2BD2624A23DB85E3C3E' +
           'EB1CB085BEBA2C8DB277D87B7D723868FD1C8B1D8DA5A37A9C038' +
           'E2031FEEEF088D6CC6D2A5E309ABE9675C311242A3C32BA904E5F' +
           '6995662FFADA992A7D7E7B745ADA3FF0885A5C6F5CE4595C11EAA' +
           'C8028B1E2084FD43F3924A2D8F574F719419FE229DFF4E5AB8A32' +
           '8FBDA2D37855B1944478C4F5EAE853AE43581A79BA5C6494D9F78' +
           'D49CC5FB96FC6A674B6C89C11FA7A9DB747D0A7C49C2E7D86C1F5' +
           '3DD173C63A12E1F1C8AEE7D1178FBAE1DEA730E890E839633B897' +
           '11CDE9EDD82C7D7E0AE3DA3AE8CB496ACCB03EE74FA0A3D51A931' +
           '506ABFF51835FF24FA7900125F23DA54467E4BCC599775A99CF7D' +
           '5B5328FE348D4D75BC9E1BCD2CA425D5DC738FA56E5AED91F4B49' +
           '8CDFDDEDE7C26819129F6B65C1CBEA2BDC2963AC037755F4299FB' +
           '965CED8CB07751EF39E6175E395722C5E9CD93266EA48EC36D72B' +
           '1CF9EE73BA92D8DEA6CF39DFE6EBF4C6EAC62BAD2CA463DAE41A6' +
           '1DBD7F50A22BADBF43E9D5BE2E7D82587E76F07AF6E40CD56D52C' +
           'A52B0B7DE7500BF56C8523B320BF91180C496CF17DFD0E17A35DB' +
           'E65750382D69FF129B9CD113326AF9AB4657EE4FDF68EDCE7E9CF' +
           '0F061D12E37D8BDE3A8EB743B9A0C6661889FAE781C4D1F4D5AD2' +
           'C8C733DEB7DD2081776D95BFAF236265127CEE3A8C315A5BA92D8' +
           'B29B0CB246D0D79E6969A97C5672B0FA75D5625E2C7D0F487478A' +
           'CCBE2B6EC1DB60CA6197A2F1EBDD58DF4489E0D80449DBEEF63E4' +
           'F46AAF99CEC278902BBB5AF6F729D5200A77A5248E26AEB4EA35F' +
           '57C5F1EE3F782C402FA1C22FA723782BE762AEBE87BC0A3701F99' +
           'BEDFB794C411AB1BDE718744893EA7DF7A1DA998BE11E350D925A' +
           '438E0E9FCFF8F446218EBAE4962D37E904EF1AA65F0C824DA7EC8' +
           'B9E836BFABDA67B72683968B5EF4E50CE6FF5776E0AED91BF9517' +
           '0336385C4D96F9D8F317B563F1A89F6BBDB9EF1FAB0804AE708AE' +
           '3FD2F45DC096C19CBBF4E37965FC4CD70DC3D9E2881E28C8A086A' +
           'B1BF1DC59791C0647F464BCAE17673BD79C03E62BEC0A7DF179DE' +
           '6330FE5B2F361BE7897DAB6ABDF841F144EF158ECC60AF9EECB53' +
           '767387D4EEC5DEA65317DF92B3C7081C2558C6ED7FA96CF8A719E' +
           'B3B40221BE1BE371E88B57A2F555ECD2DCA6B7D231EEFE0E0BDFC' +
           'B3860CE60BCBA679F1FFFE8F183BE76AF5CA3A6E03E5042364CC9' +
           'E49456EB1D33222D3D6B3DE8E1C26B352CAC1A779A272AF4C5599' +
           '105FA0630A8CC89BCE7B45F0BCE9D0B1766C6FA56E1C26053857F' +
           '556ED35BEB6FB9E692429F1745AFC36069654ECC6CCB7572E273E' +
           '9B8AB5DE90CBE2089665ED381C1AE47ADAE0AB1B4CAC58D7CF2B9' +
           '5B57061708CA5E39F665C53D4B6B6F1E1CDF86DDFD31890F465DD' +
           '8CFAFBA0E68E7444A5FB5645DF45D7B2DE3CA1BBDF959A857141A' +
           '3318D36719D4D7281557553CF741CD924C65E9EE8C7847583C8B7' +
           'C76EEEAFAA1EE6CA91C17AF26A76E5CC5EBE996C1F6285462C4AB' +
           '1DCD18F422E4D21A805E6DE93E32650D515F3BF646D77391F8A07' +
           'A36FFD60229A56B7FA57ED7DE2AAB031E836E145AC59DCEA0F77C' +
           'BD5E6E1D1E0BA8D4F74157ED037DAEFB9C96EE39AACB36EBB54C2' +
           '346859E0F89E7C275AB81C5635E6650A91BD75F6DE1338CA67270' +
           '066FCFD169E9CEEB7115BCDD2873C6CC0235664C7A642D9C51DB1' +
           '9D4C77618857A9FB060D7B0C2E3D773BCBAC4E11EDACCE03EF705' +
           '7B47B02F83A38FD48F516146B5C25D4C5F3CC24B6BD22A633FD90' +
           '1F55D54F17C5377B1CA33A4F0EE7A26415FC3DA8F1B4AE71FF92A' +
           '915275AE3DBE8559C4D2F1A070E7D1E73960A91B3E9A7F9D7F9FA' +
           'F52FBF7743D7F9CFE3ABD9FDEF2769AEE64DEAEF76335FFB16DFA' +
           '6D6A17FEF6EB35DD36FD6DFE19BE1EB94CF7A8EED3B6F97B3D686' +
           'FD3C77479D066CF5F78C7DFF77FAFF6FBFE9AEEFF5E539B3F9EFE' +
           '6A7E9FA7E9AFBCB59FCD3E27B5DE2BD4B5CAFBA67754BEDDF777F' +
           'CEA9307C745E8ED85D68C016524A43176BEDE47FA7FAF138E376F' +
           '6C2B237CE16FBF3E6D7A77AF4DCFFC07272E4F07');
    writeln('Bitmap Loaded');
    end;

    procedure SetSelfWindowState(State:TWindowState);
    begin
    GetSelf.WindowState :=State;
    end;   //sets the SCAR main form window state

    procedure SafeSetSelfWindowState(State:TWindowState);
    var t:TVariantArray;
    begin
    t:= [state];
    ThreadSafeCall('SetSelfWindowState',t);
    end;

    begin
    ClearDebug;
    writeln('Successfully compiled');
    LoadBMP;
    if(not DebugAll)then
     SafeSetSelfWindowState(wsMinimized);
    frmDesign:= CreateForm; //this is already thread safe
    SafeForm;
    SafeSetSelfWindowState(wsNormal);
    FreeBitmap(bmpBlank_Map);
     try
      FreeBitmap(bmpCapture);
     except
     end
    end.

  3. #3
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    junkj i already tried that....

    the script has trouble walking since there are no roadcolors from the karamja dock to the karamja general store...

    thats what im having trouble with and the main reason my script will not work...

    They are sisters...
    Runescape Classic

  4. #4
    Join Date
    Dec 2006
    Posts
    2,244
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    try using finding symbols procedures il find a tut ina min

  5. #5
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by rudeboialex View Post
    try using finding symbols procedures il find a tut ina min
    guys im talking about being on the island...

    there are very little options as to what to do...

    there is only 2 symbols i can use (fishing and store)

    theres no roadcolor since there isnt any road

    thats why its so difficult...
    i guess its harder that it looks huh?

    They are sisters...
    Runescape Classic

  6. #6
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    I dont think you put it right

    Get the color of the mini map grass.

    Then Capture the client and click where you want to walk on the mini map.

    Then copy it down on the radialroadwalk function and put
    roadcolorchecker;

    My thing never fails.(exept for finding the bank minimap symbol covered by NPC's )

  7. #7
    Join Date
    Dec 2006
    Posts
    2,244
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by legendaryhero90 View Post
    guys im talking about being on the island...

    there are very little options as to what to do...

    there is only 2 symbols i can use (fishing and store)

    theres no roadcolor since there isnt any road

    thats why its so difficult...
    i guess its harder that it looks huh?

    O yh soz well im stuck loli think u could ask a really advanced radialwalk person to do one for u because u can do the dock road color

  8. #8
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Be intuitive, use everything you can (symbols, various landmarks) to navigate. Split the walking up into sections, with each section starting and ending at a landmark. That way, it's a whole lot easier to debug if the script starts to get lost, because you only have a small procedure to fix, instead of a behemoth piece of code that you have to trace though.

    My recommendation: walk along the water for as far as you can, until you come to a road to walk on
    Interested in C# and Electrical Engineering? This might interest you.

  9. #9
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    No I got it!!!

    use,

    procedure RunWhere(RunDirection: String; RunFar: Boolean);
    By: Mutant Squirrle
    Description:
    Runs to direction.
    Last edited by Mr. Doctor; 10-11-2012 at 09:40 PM.

  10. #10
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    That's usually used for running from randoms, isn't it?
    Interested in C# and Electrical Engineering? This might interest you.

  11. #11
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    No,
    runawaydirection('N') is.

  12. #12
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by Smartzkid View Post
    Be intuitive, use everything you can (symbols, various landmarks) to navigate. Split the walking up into sections, with each section starting and ending at a landmark. That way, it's a whole lot easier to debug if the script starts to get lost, because you only have a small procedure to fix, instead of a behemoth piece of code that you have to trace though.

    My recommendation: walk along the water for as far as you can, until you come to a road to walk on

    my idea exactly!
    but there are problems since there it has to walk on 1 color...
    i was thinking... is there a way to add tolerence to this?
    if so.... how?


    procedure RunWhere(RunDirection: String; RunFar: Boolean);
    By: Mutant Squirrle
    Description:
    Runs to direction.
    @junkj: i used that in the past and it gets you BANNED or it doesnt work at all most of the time since it just keeps going and going and going. its easy to get lost with that .

    besides that 1 direction only... the general store is southeast... 2 directions

    They are sisters...
    Runescape Classic

  13. #13
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    have the script just go one direction until it gets past the palm trees, then look for colors and find the store?
    Interested in C# and Electrical Engineering? This might interest you.

  14. #14
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by Smartzkid View Post
    have the script just go one direction until it gets past the palm trees, then look for colors and find the store?
    ok... but what about the fflag? how will i use that?

    what is the "distance" and what does it measure in?

    They are sisters...
    Runescape Classic

  15. #15
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Just can you give me the script so like i can hook it up?
    I promise i will try everything i can to walk.

  16. #16
    Join Date
    Oct 2006
    Location
    Ontario,Canada
    Posts
    1,718
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    for fflag it measures in pixles. so fflag(5) will wait till you are 5 pixles away from the flag. looking at a map now. ill see if i can find a good way to walk.

    this is the way i see it.
    • have the user color pick the the color of the tree.(green or brown part)
    • script autocolor the dirt road
    • walk(radialwalk) along the dirt road till it finds the opening
    • radial walk or linear walk(if its not outdated) with the tree color to the dock
    • fish
    • radial walk or linear walk(if its not outdated) with the tree color to the opening
    • radialwalk the dirt color until it finds the bridge

  17. #17
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by Junkj View Post
    Just can you give me the script so like i can hook it up?
    I promise i will try everything i can to walk.
    yeah sure but dont leak since its not ready yet...

    @XXcanadamanXX : thanks for that but im walking to the gen store and not to the other dock but yeah thanks for that anywayz...

    ill try to use everyone of your guys suggestions thx

    They are sisters...
    Runescape Classic

  18. #18
    Join Date
    Feb 2007
    Posts
    9
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Seince radialroadwalk only clicks in one direction based on color you could possibly use the constant stream of ppl to walk.... or you could just use the trees untill you get to the fence and have it use findbitmap to find the opening in the fence (that is if it shows up on the minimap) other then that you can just have it click in one direction until it gets out of the sandy beach and near the buildings... well i hope i represented some sort of viable solution :-)

  19. #19
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by Caesar View Post
    Seince radialroadwalk only clicks in one direction based on color you could possibly use the constant stream of ppl to walk.... or you could just use the trees untill you get to the fence and have it use findbitmap to find the opening in the fence (that is if it shows up on the minimap) other then that you can just have it click in one direction until it gets out of the sandy beach and near the buildings... well i hope i represented some sort of viable solution :-)
    to be honest.... no....

    but thanks for responding

    They are sisters...
    Runescape Classic

  20. #20
    Join Date
    Jan 2007
    Posts
    834
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Ok so you want it to walk to the genral store and back to the docks?

  21. #21
    Join Date
    Oct 2006
    Location
    Ontario,Canada
    Posts
    1,718
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    i thought you said you were going to bank? but to go from dock to store use the trees to walk.

  22. #22
    Join Date
    Mar 2006
    Posts
    3,051
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    Don't be afraid to use blind clicks!

    Just pick a spot on the minimap in that general direction and add a bunch of randomness to it. Do this once or twice until you get to somewhere that you can use as a waypoint, like a road or a symbol.

  23. #23
    Join Date
    Sep 2006
    Location
    West U.S.
    Posts
    2,172
    Mentioned
    0 Post(s)
    Quoted
    6 Post(s)

    Default

    Quote Originally Posted by XcanadamanX View Post
    i thought you said you were going to bank? but to go from dock to store use the trees to walk.
    if i cant walk from the docks to the store... i cant even hope of walking to the bank!

    take it one step at a time i say...

    @xxcanadaxx: how do i use the trees to walk? they all look the same. wouldnt scar click on the same tree over and over???

    @tarajunky: what the heck is that? coordinate clicking or MMouse? i'll consider MMouse but NOT coordinate

    They are sisters...
    Runescape Classic

  24. #24
    Join Date
    Mar 2006
    Posts
    3,051
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    Coordinate clicking is not usually a good idea, but think of it like this...

    You could click a certain coordinate away from the fishing symbol, which moves around. That way your 'coordinate click' looks totally random.

    And if you add a lot of randomness to it, like Mouse(x,y,10,10,true) it's not going to be detectable.

    If you're only doing it once to move up the screen until you can find another waypoint it's really not a big deal.

  25. #25
    Join Date
    Dec 2006
    Posts
    354
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    just make sure you dont do something like Mouse(x,y,1,1,true) because it'll be more detectable obviously since it's clicking around the same area each time.
    Thick As Blood

Page 1 of 2 12 LastLast

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Radial walking aid?
    By Dumpin in forum News and General
    Replies: 4
    Last Post: 10-28-2007, 10:06 PM
  2. Need Help On Radial Walking
    By willie.long in forum OSR Help
    Replies: 7
    Last Post: 09-05-2007, 02:16 AM

Posting Permissions

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