SRL Archive - Archive

waddo - SRL Member Application Form


Waddo

2008-07-06 13:05:29

<!– BEGIN TEMPLATE: formanswers –>
waddo - SRL Member Application Form
waddo

What is the meaning to life?


Where you Referred to SRL? If yes, by whom?



Programming Knowledge
VB, Pascal, SCAR, Delphi, HTML

Other Communitys


How Long have You Played Runescape
15 months

Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.

3rd entry I really want to get in this time most of you will already know that my scripting ability's are up to standard, but to to show I'm going to include 2 scripts.

And also a link to my tutorial.

My grammar is bad we know that so lets forget about that and not bring that up.

Can you post if you vote so i can see who has voted and also if you say no tell me why.

——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted

My auto miner.
this does not need that many failsafes as it uses edgeroadwalk which is almost perfect
it has more faisafes tan you see at first it has a whole failsafe procedure "lost"
{.Script Info:
# ScriptName = Waddos Varrock East Miner
# Author = Waddo
# Version = 4.05
# Comments = Mines and banks or drops Iron or Copper.
# Features = Working Pickaxe replacer.
# Known bugs = Sometimes gets lost at bank, Sometimes walks past mine
# Instructions = Setup chars in mine or varrock east bank with
a pick equiped or in inventory, set up spare picks in
bank the best pick (that you want to use) first.
Run Script and fill out Srl Player Form.
/Script Info}


program automin3r;
//{.include SRL/SRL/Misc/Smart.scar}
{.include srl/srl.scar}
{.include SRL/SRL/skill/mining.scar}
{.include srl/srl/misc/users.scar}

var
tinvents, troc, activen:integer;
invents,brokepick,pick,paws:integer;
roc, i, abt, atm:integer;
x, y, ran, vroadcolor, orec:integer;
oredtm, crdtmtol, crdtmarea, Pw1DtmArea:integer;//dtm's

const
//ore colours
copper=3692667;
iron=2832990;

procedure mainloop; forward;
procedure tobank; forward;
procedure tomine; forward;

procedure DeclarePlayers;
begin
SRLPlayerForm(True, ['bank','multiplayer'], ['Loads', 'Time Between Clicks','minutes to sleep'], ['Ore Type', 'srl ID', 'srl pass'], []);
end;

procedure srlstuff;
begin
ReportVars[0] := ReportVars[0]+ CountItemsDtm('inv', oredtm);;
ReportVars[1] := reportvars[1]+ 1;
srlrandomsreport;
end;


//findedges,edgeroadwalk, edgeroadwalkex idea by waddo created by nielsie95

function FindTPAEdges(P: TPointArray): TPointArray;
var
b: array of array of Boolean;
i, x, y, l, c: Integer;
Box: TBox;
begin
SetLength(Result, 0);
l := Length(p);
Box := GetTPABounds(p);
x := (Box.x2 - Box.x1) + 3;
y := (Box.y2 - Box.y1) + 3;
SetLength(b, x);
for i := 0 to x -1 do
SetLength(b[i], y);
for i := 0 to l -1 do
b[p[i].x +1 - Box.x1][p[i].y +1 - Box.y1] := True;
SetLength(Result, l);
c := 0;
for i := 0 to l -1 do
for x := -1 to 1 do
for y := -1 to 1 do
try
if not b[p[i].x + 1 + x - Box.x1][p[i].y + 1 + y - Box.y1] then
begin
Result[c] := p[i];
Inc(c);
x := 2;
Break;
end;
except end;
SetLength(Result, c);
end;

procedure QuickSortExtendedTPA(var A: TExtendedArray; var B: TPointArray; iLo, iHi: Integer) ;
var
Lo, Hi: Integer;
P: TPoint;
T, M: Extended;
begin
Lo := iLo;
Hi := iHi;
M := A[(Lo + Hi) shr 1];
repeat
while (A[Lo] < M) do Inc(Lo);
while (A[Hi] > M) do Dec(Hi);
if (Lo <= Hi) then
begin
T := A[Lo];
P := B[Lo];
A[Lo] := A[Hi];
B[Lo] := B[Hi];
A[Hi] := T;
B[Hi] := P;
Inc(Lo);
Dec(Hi);
end;
until (Lo > Hi);
if (Hi > iLo) then QuickSortExtendedTPA(A, B, iLo, Hi);
if (Lo < iHi) then QuickSortExtendedTPA(A, B, Lo, iHi);
end;

procedure freport;
begin
cleardebug;
writeln ('script has worked for ' + timerunning);
writeln ('you have mined '+inttostr(troc)+' ores');
if (Players[CurrentPlayer].booleans[0])then
begin
writeln ('you have banked ' +inttostr(tinvents)+ ' loads');
end else
writeln ('you have dropped ' +inttostr(tinvents)+ ' loads');
end;

procedure scriptterminate;
begin
logout;
freport;
freedtm(oredtm);
freedtm(brokepick);
freedtm(pick);
end;

function EdgeRoadWalkEx(var rx, ry: Integer; Color, Tolerance, Degree: Integer; SameRoad: Boolean): Boolean;
var
p, c: TPointArray;
q, z: T2DPointArray;
i, ii, l, ll, Dist, cc, ec: Integer;
d: TExtendedArray;
begin
FindColorsTolerance(p, Color, MMX1, MMY1, MMX2, MMY2, Tolerance);
Degree := Degree mod 360;
q := SplitTPAEx(p, 2, 2);
SetLength(p, Length(q));
ll := 0;
for ii := 0 to High(q) do
begin
if (Length(q[ii]) < 200) then Continue;
c := FindTPAEdges(q[ii]);
l := Length(c);
//DebugTPA(c);
//Wait(3000);
cc := 0;
ec := 0;
for i := 0 to l -1 do
begin
Dist := Distance(MMCX, MMCY, c[i].x, c[i].y);
//WriteLn(IntTostr(Dist));
if (Dist < 4) then
Inc(cc);
if (Dist < 65) then


c[i] := Point(-1, -1)
else
Inc(ec);
end;
//WriteLn(IntToStr(ec)+', '+IntToStr(cc));
if (ec > 5) and (((cc > 5) and SameRoad) or (not SameRoad)) then
begin
z := SplitTPAEx(c, 3, 3);
for ec := 0 to High(z) do
if (Length(z[ec]) > 6) and (z[ec][0].x > -1) then
begin
SetLength(p, ll + 1);
p[ll] := MiddleTPA(z[ec]);
Inc(ll);
end;
end;
end;
if (ll = 0) then Exit;
if (ll > 1) then
begin
SetLength(p, ll);
SetLength(d, ll);
for i := 0 to ll -1 do
begin
d[i] := Degrees(ArcTan2(p[i].y - MMCY, p[i].x - MMCX) + 1.570796);
while (d[i] < 0.0) do
d[i] := d[i] + 360.0;
d[i] := MinE(Abs(Degree - d[i]), MinE(Abs((Degree + 360) - d[i]), Abs(Degree - (d[i] + 360))));
end;
QuickSortExtendedTPA(d, p, 0, ll -1);
end;
rx := p[0].x;
ry := p[0].y;
SetLength(d, 1);
d[0] := Degrees(ArcTan2(ry - MMCY, rx - MMCX) + 1.570796);
while (d[0] < 0.0) do
d[0] := d[0] + 360.0;
Result := (MinE(Abs(Degree - d[0]), MinE(Abs((Degree + 360) - d[0]), Abs(Degree - (d[0] + 360)))) < 30.0);
end;

function EdgeRoadWalk(Color, Degree: Integer; SameRoad: Boolean; xMod, yMod: Integer): Boolean;
var
x, y: Integer;
begin
if EdgeRoadWalkEx(x, y, Color, 0, Degree, SameRoad) then
begin
MFNF(x, y, xMod, yMod);
wait(100);
FFlag(10);
Result := True;
end;
end;



function Setpw1DDTM: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
Pw1DtmArea:=1;
begin
dtmMainPoint.x := 861;
dtmMainPoint.y := 255;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := vroadcolor;
dtmMainPoint.Tolerance := 0;

dtmSubPoints[0].x := 861;
dtmSubPoints[0].y := 255;
dtmSubPoints[0].AreaSize := Pw1DtmArea;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := vroadcolor;
dtmSubPoints[0].Tolerance := 0;

dtmSubPoints[1].x := 871;
dtmSubPoints[1].y := 242;
dtmSubPoints[1].AreaSize := Pw1DtmArea;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := vroadcolor;
dtmSubPoints[1].Tolerance := 0;

dtmSubPoints[2].x := 869;
dtmSubPoints[2].y := 267;
dtmSubPoints[2].AreaSize := Pw1DtmArea;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := vroadcolor;
dtmSubPoints[2].Tolerance := 0;

dtmSubPoints[3].x := 883;
dtmSubPoints[3].y := 280;
dtmSubPoints[3].AreaSize := Pw1DtmArea;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := vroadcolor;
dtmSubPoints[3].Tolerance := 0;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
end;

function SetcrDDTM: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
CrDtmArea:=1;
CrDtmTol:=30;

dtmMainPoint.x := 1126;
dtmMainPoint.y := 278;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := vroadcolor;
dtmMainPoint.Tolerance := 0;

dtmSubPoints[0].x := 1126;
dtmSubPoints[0].y := 278;
dtmSubPoints[0].AreaSize := CrDTMArea;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := VRoadColor;
dtmSubPoints[0].Tolerance := 0;

dtmSubPoints[1].x := 1107;
dtmSubPoints[1].y := 275;
dtmSubPoints[1].AreaSize := CrDTMArea;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := VRoadColor;
dtmSubPoints[1].Tolerance := CrDTMTol;

dtmSubPoints[2].x := 1131;
dtmSubPoints[2].y := 265;
dtmSubPoints[2].AreaSize := CrDtmArea;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := vroadcolor;
dtmSubPoints[2].Tolerance := 0;

dtmSubPoints[3].x := 1128;
dtmSubPoints[3].y := 286;
dtmSubPoints[3].AreaSize := CrDtmArea;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := vroadcolor;
dtmSubPoints[3].Tolerance := 0;

dtmSubPoints[4].x := 1135;
dtmSubPoints[4].y := 278;
dtmSubPoints[4].AreaSize := CrDtmArea;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5074298;
dtmSubPoints[4].Tolerance := 25;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure loaddtms;
begin
oredtm := DTMFromString('78DA63CC636260D065644006F7EACC19FE036' +
'990E87F20602C01AA5142550391859140BA02A8C698809A78A01A' +
'53026AE2806AB408A8C904AAB1C2AF06009ACB0A4D');

brokepick := DTMFromString('78DA630C60646078C680020C95D8187480C24' +
'0C4F01F08188381ACC70C6880118904D23140D64B026AE280AC57' +
'04D4440059AF09A8F103B2DE1150E30664FD25A0C607C87A41408' +
'D2B90F504BF1A00E7310FBE');

pick := DTMFromString('78DA635464646078C980022CD4D8197480C24' +
'0C4F01F08181580ACA70C6880118904D2EA40D62B026A7481AC8F' +
'04D4C801595F08A81103398E11BF1A2920EB3301732481ACD704D' +
'4480059CFF1AB0100450F0D2A');
end;

procedure getorecolour;
begin
case lowercase(Players[CurrentPlayer].Strings[0]) of
'copper' : orec:= copper;

'iron' : orec:= iron;
end;
end;

procedure report;
begin
cleardebug;
writeln ('script has worked for ' + timerunning);
writeln ('you have mined '+inttostr(roc)+' ores');
if (Players[CurrentPlayer].booleans[0])then
begin
writeln ('you have banked ' +inttostr(invents)+ ' loads');
end else
writeln ('you have dropped ' +inttostr(invents)+ ' loads');
end;



function ispickbroke:boolean;
begin
gametab(4);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
result:=true;
end else
gametab(5);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
result:=true;
end;

procedure replacepick;
var
attempts:integer;
begin
tobank;
begin //
repeat
if FindBank('veb') then
begin
wait(1000+random(100));
srlstuff;
Deposit(3, 28, true);
closebank;
attempts:=attempts+1;
end;
until ((CountItemsDtm('inv', oredtm)=0)or(attempts>=5))
if attempts<5 then
exit;
if (not(invfull)) then
begin
gametab(5);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
mouse(x,y,2,2,true);
end;
if FindBank('veb') then
begin
wait(1000+random(100));
Deposit(1, 28, true);
if finddtm(pick,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
mmouse(x, y, 3, 3);
wait(1000+random(500));
if isuptext('ick') then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, false);
if ChooseOption('1') then
closebank;
end;
end;
end;
end;
tomine;
end;

Function findrock (var TempX, TempY:Integer):Boolean;
Var
TempTpa: TpointArray;
Temp: T2DPointArray;
H, CTS, I:Integer;
Begin
If Not LoggedIn Then Exit;
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
FindColorsSpiralTolerance(TempX, TempY, TempTPA, orec,MSX1, MSY1, MSX2-100, MSY2-100, 10);
Temp:= TPAtoATPAEx(TempTPA, 25, 25);
SortATPASize(Temp, True);
H:=High(Temp);
For I := 0 To H Do
Begin
MiddleTPAEx(Temp[i], TempX, TempY);
MMouse(TempX, TempY, 3, 3);
wait(50);
Result:=IsUpText('ine');
If Result Then Break;
End;
ColorToleranceSpeed(CTS);
End;

procedure playerinfo;
begin
if not loggedin then exit;
invents:=0;
getorecolour;
paws:=(players[currentplayer].Integers[1]*1000);
roc:=roc+CountItemsDtm('inv', oredtm);
troc:=roc;
vroadcolor:=findvarrockroadcolor;
end;

function activeplayers:boolean;
var
activep:integer;
begin
for activep:= 0 to high(howmanyplayers) do
if players[activep].active then
activen:=activen-1;
Result := Activen <= 0;
end;


procedure nextp;
begin
nextPlayer(false);
if activeplayers then scriptterminate;
playerinfo;
report;
mainloop;
end;

procedure lost;
begin
x:=MSCX
y:=MSCY
if findcolorspiral(x,y,VRoadColor,MMX1,MMY1,MMX2,MMY2) then
mouse(x,y,2,2,true);
if findsymbol(x,y,'training dummy') then
begin
mouse(x,y+50,3,3,true);
wait(1000);
fflag(0);
makecompass('5');
tomine;
end;
if findsymbol(x,y,'clothes shop') then
begin
mouse(x+40,y,3,3,true);
wait(1000);
fflag(0);
mouse(655, 150,6,6,true);
wait(1000+random(100));
fflag(1);
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(100);
fflag(0);
end else
repeat
radialwalk(vroadcolor, 180, 200, 30, 2, 2);
wait(1000+random(100));
fflag(0);
Pw1DtmArea:=Pw1DtmArea+1;
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(1000+random(100));
fflag(0);
exit;
end;
atm:=atm+1;
until atm>=10;
atm:=0;
if findsymbol(x, y, 'mining spot') then
begin
mouse(x, y-15, 2, 2, true);
writeln('we got lost but we are ok now =]');
exit;
end else
begin
writeln('we facked up Im sorry');
nextp;
end;
end;
end;

procedure setup;
begin
declareplayers;
{smartSetup('mn3', False, True);
While Not (SmartReady) Do
Wait(100);
SetTargetDC(SmartGetDC);
If Not (LoggedIn) Then
While Not (SmartGetColor(386, 249) = 65535) Do
Wait(100); }
setupsrl;
SetupMining;
loaddtms;
activen:=howmanyplayers-1;
writeln(inttostr(activen));
end;

procedure startup;
begin
if (not(loggedin))then
begin
loginplayer;
end;
cleardebug;
wait(10)
writeln('varrock miner created by waddo')
ActivateClient;
makecompass('N');
roc:=0;
report;
end;

Procedure FindFightEx;
Begin
If(FindFight) then
Begin
Writeln('Our player is being attacked!')
Writeln('Lets run away!')
Begin
WriteLn('Running....')
RunAway('E', False, 1, 8000+Random(3000))
WriteLn('Successfully ran away from fight!')
end;
end;
end;

Procedure AntiRandoms;
var
i : Integer;
Begin
if (not(loggedin)) then exit;
for i := 0 to 3 do
begin
FindFightEx;
FindNonInventoryRandoms;
wait(1);
end;
end;

procedure mine2;
var
mark:integer;
begin
if not findrock(x,y) then
begin
if findsymbol(x, y, 'mining spot') then
mouse(x, y-5-random(5), 2, 2, true);
end else
begin
mmouse(x, y, 3, 3);
if gascheck(x,y) then mine2;
if isuptext('ine') then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, false);
if ChooseOption('ine') then
begin
fflag(0);
marktime(mark);
repeat
antirandoms;
wait(100);
until ((FindBlackChatMessage('to mine some') or (TimeFromMark(mark) >= paws+random(2000))));
if FindBlackChatMessage('to mine some') then
begin
inc(roc);
inc(troc);
end;
end;
end;
end;
end;

procedure runwait;
begin
RunTo('E', false);
Wait(10000 + random(2840));
RunTo('W', false);
end;

procedure drop;
begin
srlstuff;
gametab(4);
srlstuff;
for i := 2 to 28 do
begin
DropItem(i);
wait(100+random(10))
end;
ran:= Random(3);
case ran of
0:typesend('iron dropped here');

1:typesend('droping iron here');

2:typesend('droped ore');
end;
inc(invents);
inc(tinvents);
end;

procedure usebank;
var
attempts:integer;
begin
repeat
if FindBank('veb') then
begin
wait(1000+random(100));
srlstuff;
Deposit(3, 28, true);
closebank;
inc(attempts);
end;
until ((CountItemsDtm('inv', oredtm)=0)or(attempts>=5))
if attempts<5 then
begin
inc(invents);
inc(tinvents);
report;
end;
attempts:=0;
end;
//
procedure tobank;
var
i:integer;
begin
for i:=0 to 8 do
begin
writeln(inttostr(i));
case i of
0: begin
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
mouse(x, y, 3, 3, true);
wait(1000+random(100));
fflag(0);
end else
repeat
Pw1DtmArea:=Pw1DtmArea+1;
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y-55, 3, 3, true);
wait(1000+random(100));
fflag(0);
exit;
end;
atm:=atm+1;
until atm=10;
atm:=0;
freedtm(setpw1ddtm);
end;

2: if not EdgeRoadWalk(vroadcolor, 0, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 10, false, 0, 1);

3: if not EdgeRoadWalk(vroadcolor, 0, True, 0, 0) then
EdgeRoadWalk(vroadcolor, 0, false, 0, 0);

4: if not EdgeRoadWalk(vroadcolor, 0, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 0, false, 0, 1);

6: begin
if dtmrotated(setcrddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
mouse(x, y, 3, 3, true);
wait(1000+random(100));
fflag(0);
atm:=0;
end else
repeat
radialwalk(vroadcolor,280,410,40,5,5);
wait(1000+random(100));
fflag(0);
crDtmArea:=crDtmArea+1;
crDtmtol:=crDtmtol+3;
if dtmrotated(setcrddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(1000+random(100));
fflag(0);
exit;
end;
atm:=atm+1;
wait(100);
until atm=15;
atm:=0;
freedtm(setcrddtm);
end;
7: if not EdgeRoadWalk(vroadcolor, 270, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 270, false, 0, 1);

8:if not EdgeRoadWalk(vroadcolor, 270, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 270, false, 0, 1);
end;
end;
end;

procedure tomine;
var
x, y,i:integer;
begin
for i:=0 to 7 do
begin
writeln(inttostr(i));
case i of
0: linearwalk(vroadcolor, 0, 40, 2,2);
1: EdgeRoadWalk(vroadcolor, 90, True, 0, 1);
2: begin
if dtmrotated(setcrddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
wait(2000); //
mouse(x, y, 3, 3, true);
wait(2000+random(100));
fflag(0);
atm:=0;
end else
repeat
mouse(504, 164,50,70,true);
wait(1000);
fflag(1);
crDtmArea:=crDtmArea+1;
crDtmtol:=crDtmtol+3;
if dtmrotated(setcrddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(2000+random(100));
fflag(0);
exit;
end;
atm:=atm+1;
until atm=10;
atm:=0;
freedtm(setcrddtm);
end;
3: if not EdgeRoadWalk(vroadcolor, 180, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 180, false, 0, 1);
4: if not EdgeRoadWalk(vroadcolor, 180, True, 0, 1) then
if not EdgeRoadWalk(vroadcolor, 180, false, 0, 1) then
if findsymbol(x,y,'Quest') then
radialroadwalk(vroadcolor,180,260,572,5,5);
5: if not EdgeRoadWalk(vroadcolor, 180, True, 0, 1) then
EdgeRoadWalk(vroadcolor, 180, false, 0, 1);
6: begin
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(100);
fflag(0);
end else
repeat
radialwalk(vroadcolor, 200, 270, 20, 2, 2);
wait(100);
fflag(0);
Pw1DtmArea:=Pw1DtmArea+1;
if dtmrotated(setpw1ddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
atm:=0;
mouse(x, y, 3, 3, true);
wait(1000+random(100));
fflag(0);
exit;
end;
atm:=atm+1;
until atm>=10;
atm:=0;
freedtm(setpw1ddtm);
end;
7: if findsymbol(x, y, 'mining spot') then
begin
mouse(x, y-15, 2, 2, true);
wait(1000+random(100));
fflag(0);
writeln('ores banked back at mining spot');
end else
writeln('we facked up on the way to mining spot');
end;
end;
end;

procedure droporbank;
begin
if invfull then
if Players[currentplayer].Booleans[0] then
Begin
tobank;
usebank;
tomine;
end else
drop;
end;

procedure antiban;
var
noban: Integer;
Begin
If Not (LoggedIn) Then Exit;
noban := Random(25);
Case noban Of
0, 9, 17, 23: PickUpMouse;
1, 13, 16: RandomRclick;
2, 10, 18, 22, 24: randomMovement;
4, 12, 19: AlmostLogout;
5, 11, 8: ChooseOption('cancel');
6, 15, 21: MMouse(Random(MSX2), Random(MSY2), 0, 0);
7, 14, 3: HoverSkill('woodcutting', false);
end;
abt:=0;
end;

procedure checks;//checks you are not under attack and performs antibans
var
a:integer;
begin
if not loggedin then exit;
wait(100);
for a:=0 to 10 do
case a of
1:lost;

2:findfightex;

3:antirandoms;

4:if abt>=8 then antiban;

5:if abt=4+random(2) then if (ispickbroke) then replacepick;

6:findpick;

7:makecompass('N');

8:setangle(true);

9:mousespeed:=7+random(8);

10:droporbank;
end;
abt:=abt+1;
end;

procedure srlstats;
begin
ScriptID := '800';
if ((players[currentplayer].strings[1] = '')or (players[currentplayer].strings[1] = ''))then
begin
writeln('DONT leech!');
writeln('go to [url]http://stats.srl-forums.com[/url] and create an account');
end else
begin
SRLID := players[currentplayer].strings[1];
SRLPassword := players[currentplayer].strings[2];
end;
end;



procedure mainloop;
begin
playerinfo;
Repeat
if not loggedin then loginplayer;
If (Not (LoggedIn)) then
Begin
writeln('Not logged in, next player!');
NextP;
mainloop;
end;
if (invents = Players[CurrentPlayer].Integers[0]) then
if (players[currentplayer].Booleans[1]=false) then
sleep((players[currentplayer].integers[2]*60000)+random(120000))
else
begin
invents:=0;
nextplayer(true);
report;
mainloop;
end;
checks;
mine2;
report;
Until false;
end;

begin
setup;
startup;
playerinfo;
srlstats;
mainloop;
end.


S.MA.R.T. Tools

Allows you to type/rotate cam in SMART with out unblocking works on RS but apparently crashes scar if used in smart but the main thing is that it has a ability to work i haven't actually been able to debug
as i dont have the use of SMART atm
but it theory it should work.

program smarttools;
{.include srl/srl.scar}
var
frmDesign : TForm;
TextBox : TEdit;
SendButton : TButton;
colorselect : TListBox;
EffectSelect : TListBox;
CancelButton : TButton;
ClockBut : TButton;
ACBut : TButton;
Cmbbox : TComboBox;
DirGo : TButton;
UpButton : TButton;
DownButton : TButton;
OkButton : TBitBtn;
CancelButton2 : TBitBtn;
GroupBox1 : TGroupBox;
DegGo : TButton;
degs : TEdit;
PageControl: TPageControl;
Page1, Page2: TtabSheet;
Colour : String;
Effect :string;

{*******************************************************************************
Procedure Send(sender: TObject);
By: Waddo
Description: Part of S.M.A.R.T Talk, Sends the message
*******************************************************************************}

Procedure Send(sender: TObject);
begin
frmDesign.Caption:= frmDesign.Caption + '.';
frmDesign.ModalResult:= mrOk;
Wait(2000);
if ColorSelect.Items[ColorSelect.ItemIndex]<>'No Colour' then
Colour:=ColorSelect.Items[ColorSelect.ItemIndex]+':';
if EffectSelect.Items[EffectSelect.ItemIndex]<>'No Effect' then
Effect:=EffectSelect.Items[EffectSelect.ItemIndex]+':';
activateclient;
wait(10);
typesend(Colour+Effect+TextBox.Text);
end;

{*******************************************************************************
Procedure Cancel(sender: TObject);
By: Waddo
Description: Part of S.M.A.R.T Talk,
performed when SmartTalk form is canceled
*******************************************************************************}

Procedure Cancel(sender: TObject);
begin
Writeln('S.M.A.R.T Tools Canceled');
frmDesign.Caption:= frmDesign.Caption + '.';
FindWindowBySize(766,504);
activateclient;
frmDesign.ModalResult:= mrCancel;
end;

Procedure Cancel2(sender: TObject);
begin
Writeln('S.M.A.R.T Tools Canceled');
frmDesign.Caption:= frmDesign.Caption + '.';
FindWindowBySize(766,504);
activateclient;
frmDesign.ModalResult:= mrCancel;
end;

Procedure CamDir(sender: TObject);
begin
activateclient;
wait(200);
Makecompass(left(Cmbbox.Items[Cmbbox.ItemIndex],1));
writeln(Cmbbox.Items[Cmbbox.ItemIndex]);
frmDesign.Caption:= frmDesign.Caption + '.';
frmDesign.ModalResult:= mrOk;
end;

procedure RotCamC(sender: TObject);
begin
activateclient;
wait(200);
keydown(vk_left);
wait(200+random(20));
keyup(vk_left);
GetApplication
FindWindowTitlePart('talk',false);
activateclient;
FindWindowBySize(766,504);
end;

procedure RotCamAC(sender: TObject);
begin
activateclient;
wait(200);
keydown(vk_right);
wait(200+random(20));
keyup(vk_right);
GetApplication
FindWindowTitlePart('talk',false);
activateclient;
FindWindowBySize(766,504);
end;

procedure CamUp(sender: TObject);
begin
activateclient;
wait(200);
keydown(vk_up);
wait(200+random(20));
keyup(vk_up);
GetApplication
FindWindowTitlePart('talk',false);
activateclient;
FindWindowBySize(766,504);
end;

procedure CamDown(sender: TObject);
begin
activateclient;
wait(200);
keydown(vk_down);
wait(200+random(20));
keyup(vk_down);
GetApplication
FindWindowTitlePart('talk',false);
activateclient;
FindWindowBySize(766,504);
end;

procedure CamDeg(sender: TObject);
begin
activateclient;
wait(200);
MakeCompass(inttostr(strtoint(degs.Text)+180));
frmDesign.ModalResult:= mrOk;
end;


{*******************************************************************************
Procedure InitForm;
By: Waddo
Description: S.M.A.R.T Talks Form
*******************************************************************************}

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 372;
frmDesign.Top := 128;
frmDesign.Width := 369;
frmDesign.Height := 185;
frmDesign.Caption := 'S.M.A.R.T Talk By Waddo';
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.Visible := false;
frmDesign.PixelsPerInch := 96;

TextBox := TEdit.Create(frmDesign);
TextBox.Parent := frmDesign;
TextBox.Left := 14;
TextBox.Top := 9;
TextBox.Width := 259;
TextBox.Height := 21;
TextBox.tabOrder := 0;

SendButton := TButton.Create(frmDesign);
SendButton.OnClick:= @Send;
SendButton.Parent := frmDesign;
SendButton.Left := 280;
SendButton.Top := 8;
SendButton.Width := 57;
SendButton.Height := 49;
SendButton.Caption := 'Send';
SendButton.tabOrder := 1;

colorselect := TListBox.Create(frmDesign);
colorselect.Parent := frmDesign;
colorselect.Left := 14;
colorselect.Top := 40;
colorselect.Width := 129;
colorselect.Height := 73;
colorselect.ItemHeight := 13;
colorselect.Items.Add('No Colour');
colorselect.Items.Add('Red');
colorselect.Items.Add('Green');
colorselect.Items.Add('White');
colorselect.Items.Add('Cyan');
colorselect.Items.Add('Purple');
colorselect.tabOrder := 10;

EffectSelect := TListBox.Create(frmDesign);
EffectSelect.Parent := frmDesign;
EffectSelect.Left := 152;
EffectSelect.Top := 40;
EffectSelect.Width := 121;
EffectSelect.Height := 73;
EffectSelect.ItemHeight := 13;
EffectSelect.Items.Add('No Effect');
EffectSelect.Items.Add('Flash1');
EffectSelect.Items.Add('Flash2');
EffectSelect.Items.Add('Flash3');
EffectSelect.Items.Add('Scroll');
EffectSelect.Items.Add('Shake');
EffectSelect.Items.Add('Wave');
EffectSelect.Items.Add('Wave2');
EffectSelect.Items.Add('Slide');
EffectSelect.Items.Add('Glow1');
EffectSelect.Items.Add('Glow2');
EffectSelect.Items.Add('Glow3');
EffectSelect.tabOrder := 11;

CancelButton := TButton.Create(frmDesign);
CancelButton.OnClick:= @Cancel;
CancelButton.Parent := frmDesign;
CancelButton.Left := 280;
CancelButton.Top := 64;
CancelButton.Width := 57;
CancelButton.Height := 49;
CancelButton.Caption := 'Cancel';
CancelButton.tabOrder := 12;

PageControl := TPageControl.Create(frmDesign);
PageControl.Parent := frmDesign;
PageControl.Align := alClient;

ClockBut := TButton.Create(frmDesign);
ClockBut.OnClick:= @RotCamC;
ClockBut.Parent := frmDesign;
ClockBut.Left := 150;
ClockBut.Top := 41;
ClockBut.Width := 97;
ClockBut.Height := 33;
ClockBut.Caption := 'Clockwise -->';
ClockBut.TabOrder := 0;

ACBut := TButton.Create(frmDesign);
ACBut.OnClick:= @RotCamAC;
ACBut.Parent := frmDesign;
ACBut.Left := 6;
ACBut.Top := 41;
ACBut.Width := 97;
ACBut.Height := 33;
ACBut.Caption := '<-- Anti Clockwise';
ACBut.TabOrder := 1;

Cmbbox := TComboBox.Create(frmDesign);
Cmbbox.Parent := frmDesign;
Cmbbox.Left := 232;
Cmbbox.Top := 17;
Cmbbox.Width := 63;
Cmbbox.Height := 21;
Cmbbox.ItemHeight := 13;
Cmbbox.ItemIndex := 0;
Cmbbox.TabOrder := 2;
Cmbbox.Text := 'North';
Cmbbox.Items.Add('North');
Cmbbox.Items.Add('East');
Cmbbox.Items.Add('South');
Cmbbox.Items.Add('West');

DirGo := TButton.Create(frmDesign);
DirGo.OnClick:= @CamDir;
DirGo.Parent := frmDesign;
DirGo.Left := 304;
DirGo.Top := 16;
DirGo.Width := 33;
DirGo.Height := 24;
DirGo.Caption := 'Go';
DirGo.TabOrder := 3;

UpButton := TButton.Create(frmDesign);
UpButton.OnClick:= @CamUp;
UpButton.Parent := frmDesign;
UpButton.Left := 102;
UpButton.Top := 9;
UpButton.Width := 49;
UpButton.Height := 33;
UpButton.Caption := 'UP';
UpButton.TabOrder := 4;

DownButton := TButton.Create(frmDesign);
DownButton.OnClick:= @CamDown;
DownButton.Parent := frmDesign;
DownButton.Left := 102;
DownButton.Top := 73;
DownButton.Width := 49;
DownButton.Height := 33;
DownButton.Caption := 'Down';
DownButton.TabOrder := 5;

OkButton := TBitBtn.Create(frmDesign);
OkButton.Parent := frmDesign;
OkButton.Left := 102;
OkButton.Top := 41;
OkButton.Width := 49;
OkButton.Height := 33;
OkButton.TabOrder := 6;
OkButton.Kind := bkOK;

CancelButton2 := TBitBtn.Create(frmDesign);
CancelButton2.OnClick:= @Cancel2;
CancelButton2.Parent := frmDesign;
CancelButton2.Left := 56;
CancelButton2.Top := 105;
CancelButton2.Width := 153;
CancelButton2.Height := 17;
CancelButton2.TabOrder := 7;
CancelButton2.Kind := bkCancel;

GroupBox1 := TGroupBox.Create(frmDesign);
GroupBox1.Parent := frmDesign;
GroupBox1.Left := 240;
GroupBox1.Top := 81;
GroupBox1.Width := 105;
GroupBox1.Height := 41;
GroupBox1.Caption := 'degrees';
GroupBox1.TabOrder := 8;

DegGo := TButton.Create(GroupBox1);
DegGo.OnClick := @CamDeg;
DegGo.Parent := GroupBox1;
DegGo.Left := 64;
DegGo.Top := 12;
DegGo.Width := 33;
DegGo.Height := 24;
DegGo.Caption := 'Go';
DegGo.TabOrder := 0;

degs := TEdit.Create(GroupBox1);
degs.Parent := GroupBox1;
degs.Left := 8;
degs.Top := 13;
degs.Width := 49;
degs.Height := 20;
degs.TabOrder := 1;


Page1 := TTabSheet.Create(frmDesign);
Page1.Caption := 'S.M.A.R.T. Talk';
Page1.PageControl := PageControl;
Page2 := TTabSheet.Create(frmDesign);
Page2.Caption := 'Rotate Cam';
Page2.PageControl := PageControl;

CancelButton.Parent := Page1;
EffectSelect.Parent := Page1;
colorselect.Parent := Page1;
SendButton.Parent := Page1;
TextBox.Parent := Page1;

degs.Parent := GroupBox1;
DegGo.Parent := GroupBox1;
GroupBox1.Parent := Page2;
CancelButton2.Parent := Page2;
OkButton.Parent := Page2;
DownButton.Parent := Page2;
UpButton.Parent := Page2;
DirGo.Parent := Page2;
Cmbbox.Parent := Page2;
ACBut.Parent := Page2;
ClockBut.Parent := Page2;
end;

Procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('InitForm', v);
end;

Procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;

Procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;

{*******************************************************************************
Procedure SmartTalk;
By: Waddo
Description: S.M.A.R.T Talk, enables a user to talk in runescape,
with out pausing there script or unblocking S.M.A.R.T.
To use put SmartTalk somewhere in your main loop that will be caled often,
then hold down Ctrl+1 until the window appears.
*******************************************************************************}

Procedure SmartTools;
begin
if ((isfunctionkeydown(1))and(IsKeyDown('1'))) then
begin
SafeInitForm;
SafeShowFormModal;
end;
end;

begin
repeat
smarttools;
wait(100);
until false;
end.

My SCAR tutorial

if you don't remember i didn't get in last time because of spamming but since my last application i have written a few tutorials and haven't spammed as far as I know and I have had no infraction's (I've had 1 warning but that was given to me as a misunderstanding and RM will confirm that)

——————————————————
<!– END TEMPLATE: formanswers –>

GoF

2008-07-06 13:18:34


Yes…

Waddo

2008-07-06 13:21:53

:eek:about the dude hu is he and :spot: about the yes =]

PvH

2008-07-06 13:26:58

This is definitelly a yes from me:)
I have always liked you at the forums, and you got some good scripting skills:)
I hope you get it this time:D
Though there are some useless empty lines, and some useless begins/ends.
For example, here:
    if (players[currentplayer].Booleans[1]=false) then
begin
sleep((players[currentplayer].integers[2]*60000)+random(120000));
end;

This could've been:
    if (players[currentplayer].Booleans[1]=false) then        sleep((players[currentplayer].integers[2]*60000)+random(120000));

Good job waddo;)

PvH

skilld u

2008-07-06 13:36:11

:eek:



yes!

Waddo

2008-07-06 13:36:21

is useless really bad

id rather write the best script in the world with no standards use less lines and loads of crap than an auto talker that don't work but is neat looking =]

but I've fixed anyway

Edit: C'mon lets keep on 100% =]

PvH

2008-07-06 13:39:20

Well,
I agree with out waddo,
But standards are also needed, and you know why;)
And yes, keeping it on 100% would be awsome^^

PvH

richk1693

2008-07-06 13:44:26

Yes, and GoF that picture is terrifying.

Waddo

2008-07-06 14:07:44

lol what would we do if it turned out it was a pic of Gof and he topped himself cos he felt so hurt at our comments =]

Who will ruin my 100%, if some one does everyone should scowl at them

Twisted

2008-07-06 14:19:49

Yes!

[S]paz

2008-07-06 14:22:04

yes from me

~Spaz

[-jesus-]

2008-07-06 14:36:15

Si.

nielsie95

2008-07-06 15:07:29

function ispickbroke:boolean;
begin
gametab(4);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
result:=true;
end else
gametab(5);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
result:=true;
end;

I think you need an extra begin/end here. Cause you always(!) will check for dtm brokepick twice.

x:=MSCX
y:=MSCY
if findcolorspiral(x,y,VRoadColor,MMX1,MMY1,MMX2,MMY2) then

I think you mean x := MMCX and y := MMCY here (I know you asked me this afternoon, but I thought you were talking about mainscreen).

  if findsymbol(x,y,'training dummy') then
begin
mouse(x,y+50,3,3,true);
wait(1000);
fflag(0);
makecompass('5');
tomine;
end;

This is in your lost procedure, the tomine doesn't exit from this procedure, so it checks further even if it would be at the mine.

Procedure AntiRandoms;
var
i : Integer;
Begin
if (not(loggedin)) then exit;
for i := 0 to 3 do
FindNormalRandoms;
FindFightEx;
FindNonInventoryRandoms;
wait(1)
end;

Extra begin/end? I also think FindNonInventoryRandoms contains everything FindNormalRandoms has.


  repeat
if FindBank('veb') then
begin
wait(1000+random(100));
srlstuff;
Deposit(3, 28, true);
closebank;
inc(attempts);
end;
until ((CountItemsDtm('inv', oredtm)=0)or(attempts>=5))

Maybe it's better to deposit everything while the bank is open? Not open/close every time?

         if dtmrotated(setcrddtm, x, y, mmx1, mmy1, mmx2, mmy2) then
begin
wait(2000); //
mouse(x, y, 3, 3, true);
wait(2000+random(100));
fflag(0);
atm:=0;
end else

This here is a memory leak. You need to free all your DTM's, but you load the DTM directly into the function here, so you can't free it anymore.

Your scripting needs a bit more work (some loose ends here and there), but I like your attitude, so you get my vote.

Waddo

2008-07-06 15:50:47

didn't know that ddtm's needed freeing thanks for that

there is a reason I deposit like that i have forgotten why but it took me about 2 hours to get it to work

thanks about the randoms

the lost procedure doesn't matter it doesn't exit it is useful for it to continue running incase it is still lost after wards thre in an order for the most effctiveness thats why the big one that walks all the way from the bank is at the start then if it gets lost doing that there a chance it can still recover

thanksbout findcolorspiral ill fix that

are you sure i need an extra begin end in find broke pick

Scaper

2008-07-06 16:03:51

From: twistedvip50
Yes!


Twisted you should wait 2 weeks after getting in b4 voting i made that mistake here read this

http://www.villavu.com/forum/showthread.php?t=24420

[ontopic]Waddo Yes from me i have seen you around alot and actualy like some of you're work etc ;)[/ontopic]

Waddo

2008-07-06 16:09:04

Rolf I cant read that link yet but I will be able to soon

i have 9 votes 100% yes (paz hasnt voted yet he has said yes i think he forgot =])

P1nky

2008-07-06 16:21:32

yes you were close last time i think you deserve it now.

keep it up :P

Scaper

2008-07-06 16:42:21

From: waddo
Rolf I cant read that link yet but I will be able to soon

i have 9 votes 100% yes (paz hasnt voted yet he has said yes i think he forgot =])


no it isnt for you to read lol it is for twistedvip50 he just became a member im jus pointing him to rewad the stick at the top of the appliance threads

Waddo

2008-07-06 16:46:10

yes i know im just saying i cant read it anyway but i will be able to

Scaper

2008-07-06 16:52:52

dont count you hopes too high yet it could turn the other way [hope no tho] looking good tho up to know gl man hope you get it and pleaed to see you stopped the spamming :D

Waddo

2008-07-06 18:22:33

i wanna get in asap cos i need bout 3 hours cos i wanna read back awhile in all the threads =]

TheGuyWhoGotOn

2008-07-06 18:46:43

Try to also work on capitalizing your words for example:


procedure nextp;

begin
nextPlayer(false);
if activeplayers then scriptterminate;
playerinfo;
report;
mainloop;
end;

Would look better (in my opinion) like this:


procedure NextP;
begin
NextPlayer(false);
if ActivePlayers then ScriptTerminate;
PlayerInfo;
Report;
MainLoop;
end;

BTW, yes

Waddo

2008-07-06 19:03:41

im no good with punctuation i have to physicaly do it its not an auto matic thing i was never taught how to my english teacher did my puctuation in my english cousewokr =]

TheGuyWhoGotOn

2008-07-06 19:12:12

From: waddo
im no good with punctuation i have to physicaly do it its not an auto matic thing i was never taught how to my english teacher did my puctuation in my english cousewokr =]


I never used to capitalize my words in SCAR scripts but people find it easier to read my scripts if I did so I worked hard and got good at it. You may be able to as well.

Waddo

2008-07-07 11:22:17

i do try sometimes but when i try to do that i have to concentrate really hard and then i cant concentrate on scripting logic as much you can see where i try capital letters i know it looks a lot neater thats why i try sometimes

im not getting many vote things any more am i where everyone gone =]

P1nky

2008-07-07 13:09:11

d/w pretty sure your in :)

Waddo

2008-07-07 13:11:23

yer me 2 =] but i still best not get cocky =]

Jackrawl

2008-07-07 14:12:10

These are one of the few applications that aren't worth voting on due to a guaranteed yes.

GJ Waddo.

However, I did find some weird coding and inefficiencies.
 try
if not b[p[i].x + 1 + x - Box.x1][p[i].y + 1 + y - Box.y1] then
begin
Result[c] := p[i];
Inc(c);
x := 2;
Break;
end;
except end;
Try and except are for runtime errors.
procedure getorecolour;
begin
case lowercase(Players[CurrentPlayer].Strings[0]) of
'copper' : orec:= copper;

'iron' : orec:= iron;
end;
end;
Generally a difference of opinion, but I would use a boolean and an integer returning function. Actually, I wouldn't give this its own name, since it's as small as it is…
function GetOreColor(Coppr:boolean):integer;
var
copper, tin:integer;
begin
if Coppr then Result:=Copper else Result := Tin;
end;
function ispickbroke:boolean;
begin
gametab(4);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
result:=true;
end else
gametab(5);
if finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2) then
result:=true;
end;
No good. Would be faster just to write in
function ispickbroke:boolean;
var
I, x, y:integer;
begin
I:=4;
while not Result do
begin
GameTab(I);
I:=I+1;
result := finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2);
if Result then Break;
end;
end;
…Looks hard*
function activeplayers:boolean;
var
activep:integer;
begin
for activep:= 0 to howmanyplayers-1 do
if players[activep].active then
begin
activen:=activen-1;
end;
if activen<=0 then
result:=true;
end;
Could be shortened to
function activeplayers:boolean;
var
activep:integer;
begin
for activep:= 0 to high(howmanyplayers) do
if players[activep].active then
activen:=activen-1;
Result := Activen <= 0;
end;
Calling terminatescript in scriptterminate is pointless.

program new;
procedure scriptterminate;
begin
writeln('a');
end;
begin
terminatescript;
end.

Waddo

2008-07-07 14:43:15

try
if not b[p[i].x + 1 + x - Box.x1][p[i].y + 1 + y - Box.y1] then
begin
Result[c] := p[i];
Inc(c);
x := 2;
Break;
end;
except end;


ouch you just questioned nielsies scripting =] that is nielsies function =]




function ispickbroke:boolean;
var
I, x, y:integer;
begin
I:=4;
while not Result do
begin
GameTab(I);
I:=I+1;
result := finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2);
if Result then Break;
end;
end;

erm wel if you pick wasnt broke that would be a never ending loop

the pother 2 have valid pionts

Jackrawl

2008-07-07 14:44:24

From: waddo
try
if not b[p.x + 1 + x - Box.x1][p.y + 1 + y - Box.y1] then
begin
Result[c] := p;
Inc©;
x := 2;
Break;
end;
except end;


ouch you just questioned nielsies scripting =] that is nielsies function =]


Shouldn't matter, I've never seen a crash with a TPA.

Second part
eww, that is bad. Lets pretend I was testing you.
function IsPickBroke:boolean;
var
I:integer;
begin
for I := 4 to 5 do
begin
GameTab(I);
result := finddtm(brokepick,x,y,MIX1,MIY1,MIX2,MIY2);
if Result then Break;
end;
end;
Sorry, I tried playing some runescape earlier today. I'm still braindead from it.

Waddo

2008-07-07 14:50:26

who said no ??????

nielsie95

2008-07-07 14:50:37

It's for out of range errors.


program New;
var
i: Integer;
a: array[1..2] of Integer;
begin
try
for i := 0 to 3 do
a[i] := 3;
except
end;
WriteLn('through first');
for i := 0 to 3 do
a[i] := 3;
end.

Scaper

2008-07-07 15:10:10

lookin good still there's always 1 who has to vote no lol

Waddo

2008-07-07 15:27:26

it was always going to happen but I wish I knew who it was

Runescapian321

2008-07-07 15:27:38

IMO someone thinks they're funny and votes no on every app that has a chance of going 100% :p. In the short time I've been here, I've yet to see a 100%.

Btw I voted yes ;)

Waddo

2008-07-07 15:35:59

i hope i get admin or mod or sumit so i can view logs and find out i think there should be a rule against it its using the responsibility irisponsibly

3Garrett3

2008-07-07 17:16:15

Or maybe they didn't think you deserve to get in.

Maybe you are really immature, and you can't handle not getting 100%. If you aren't mature, you dont deserve to be an SRL member. Just from what I have seen, your scripting is good, but I look for personality too.

I am most likely going to vote no. You have spammed before, you are immature, you feel a need to know. It is not needed to post here at all, we could all just vote and leave it at that.

On the plus. You can script. You are active, although some of your posts I personally consider spam.

+'s
Scripting
Activity

-'s
Getting on my nerves already
History of Spamming
Immature

Now.. +2 -3. In my books, thats -1. That would be a no from me then.

Waddo

2008-07-07 17:27:25

fine i dont mind more noes it was just the first
however i dont really mind you dont like me, and no i dont really liek your atitude this is not because im immature or because i you said no but because you have not read my app which clearly states
From: Waddo
if you don't remember i didn't get in last time because of spamming but since my last application i have written a few tutorials and haven't spammed as far as I know and I have had no infraction's (I've had 1 warning but that was given to me as a misunderstanding and RM will confirm that)


also i do not know what ive done to warrant that barrage of insults upon my character
eg gets on my nerves already where is the need for that

From: 3garett3
you feel a need to know
yes and that is why i am a scripter i like to know how and why things do what they do thats why i can script

if you cant stop living in the past then you are immature.

i dont mind you saying no that doesnt bother me its ot going to stop me getting in. if im immature in your eyes so be it.

this is my personality f you have a problem with it then its your problem everyone else is fine with me.

Harry

2008-07-07 18:07:16

Nein.

You act all nice to me on PM, etc, then you made a post in the "Who Are You ? Who ? Who ?" section
From: waddo
this isnt really spam this ithe introductions place this is his introduction

hi and welcome have fun learn to script

and dont get hy'ed

which is useless spam, then you PM me and are like
From: waddo
hey how you doing i knew you would get back i argued for you ;-] gld your here

.. =X That's not the qualities I want in an SRL Member.

So I didn't even bother to look at the script, you have too many qualities that are not good for an SRL Member to have, and you spam a lot. If you say I spam, at least my spam uses proper spelling, grammer, caps, etc.. Sorry.

Waddo

2008-07-07 18:15:39

Hy as i have pointed out my spelling and grammar is not my fault

and if you read the post that said about you getting back in

i said yes I faught for you but i did have the odd dig cos i felt like an outcast and that id missed stuff cos im rather new

and replacing the word ban with hy isn't eithen a dig really

and its not spam it was defending him all he was doing was saying hi and he got flamed is that the introduction people want … no

Edit: This is something i really want ive put effort into this and im not gunna say ill change as i dont beleive i have done anything wrong and its impossible to please everyone
ive also already said my spamming has stopped and has been for a while
what i did in the past cant be changed hy from what i understand youve had a lot of chances and you get one more yet you wont eithen forget about the past. dont you think i deserve it. i want to get in and if i dont this time i dont know if ill apply again i dont want to have to put together my application to have it thrown back at me, thats not to say i will quit but that ill just carry on as normal andjust hpe that oneday i just might get auto membered.

the scar noob

2008-07-07 19:34:46

From: waddo
…… hy from what i understand youve had a lot of chances and you get one more yet you wont eithen forget about the past.


Yea! rofl:p

From: waddo
dont you think i deserve it. i want to get in and if i dont this time i dont know if ill apply again i dont want to have to put together my application to have it thrown back at me, thats not to say i will quit but that ill just carry on as normal andjust hpe that oneday i just might get auto membered.


Now, that's the wrong attitude imo..

-Tsn.

3Garrett3

2008-07-07 20:37:45

From: waddo
fine i dont mind more noes it was just the first
however i dont really mind you dont like me, and no i dont really liek your atitude this is not because im immature or because i you said no but because you have not read my app which clearly states

also i do not know what ive done to warrant that barrage of insults upon my character
eg gets on my nerves already where is the need for that

yes and that is why i am a scripter i like to know how and why things do what they do thats why i can script

if you cant stop living in the past then you are immature.


i dont mind you saying no that doesnt bother me its ot going to stop me getting in. if im immature in your eyes so be it.

this is my personality f you have a problem with it then its your problem everyone else is fine with me.


Well. Just about the bold part first. I can stop living in the past. I'm not living in the past now. It just gives me more details about your personality, which I just happen to judge when I vote for people.

From: Hy71194
Nein.

You act all nice to me on PM, etc, then you made a post in the "Who Are You ? Who ? Who ?" section
which is useless spam, then you PM me and are like
.. =X That's not the qualities I want in an SRL Member.

So I didn't even bother to look at the script, you have too many qualities that are not good for an SRL Member to have, and you spam a lot. If you say I spam, at least my spam uses proper spelling, grammer, caps, etc.. Sorry.


Exactly. Except the ranting. ;). I think this is another reason not to let you in. If you are going to talk behind people's back, why should we trust you?

From: waddo
Hy as i have pointed out my spelling and grammar is not my fault

and if you read the post that said about you getting back in

i said yes I faught for you but i did have the odd dig cos i felt like an outcast and that id missed stuff cos im rather new

and replacing the word ban with hy isn't eithen a dig really

and its not spam it was defending him all he was doing was saying hi and he got flamed is that the introduction people want … no

Edit: This is something i really want ive put effort into this and im not gunna say ill change as i dont beleive i have done anything wrong and its impossible to please everyone
ive also already said my spamming has stopped and has been for a while
what i did in the past cant be changed hy from what i understand youve had a lot of chances and you get one more yet you wont eithen forget about the past. dont you think i deserve it. i want to get in and if i dont this time i dont know if ill apply again i dont want to have to put together my application to have it thrown back at me, thats not to say i will quit but that ill just carry on as normal andjust hpe that oneday i just might get auto membered.


About the part that says "My grammer isn't my fault"

I garuantee (sp?) that it is. You can take the time to learn proper grammer. I am a slow typer, because I always go back to check my grammer and spellling. It takes the effort, but it's worth it in the end.

P1nky

2008-07-07 21:15:20

yall taking this to a whole new level…

*give him a break* he tried so hard with this script, he really wants srl members thats all. nothing wrong with that.

3Garrett3

2008-07-07 21:30:35

Ya. Nothing wrong with wanting it. Doesn't mean he is going to get it for sure just because he wants it though.

Naum

2008-07-08 02:55:24

Definately Not!

J/k My Vote you got drop it like its hot! .

Waddo

2008-07-08 06:16:14

Ty pinky

garett I have ADHD and dyslexia (and a shit keyboard(which is on a laptop so its not as if i can replace it easily)) and i was never taught punctuation and grammar that's why it is so bad, most of what I've learnt I've picked up from books. I've had no extra help as i didn't find out i was dyslexic until last year. And i was not talking behind his back, if you read the thread that wizzup made about hy getting perm ban every one was saying deserves it all the way through I said he should get one last chance, i also replaced the word banned with hy'ed that's hardly being nasty to him and talking behind his back. my spamming is the past the fact that i have stopped shows that i am not immature and can change the fact that you cant see that makes you immature and makes you living in the past. Ty Nauman.

Also what does (sp?) mean.

BobboHobbo

2008-07-08 06:25:48

Ive noticed the things that are yours are with lowercase. and what is not has capitals and etc..

And alot of the finding procedures are not yours? the ones in capitals and lowercase? Im voting no :P soz.

Waddo

2008-07-08 06:39:17

what that is my script =[ the only thing not mine is nielsies edge road walk find tpaedges and edgeroadwalkex

everythink else is mine just cos i tried putting caps in and had lapses in concentration doesnt make it mine

but its your opinion imo trying is a good thing=[ oh well

and what finding procedures if your talking about findrock that is mine it is very similar to hempies as he taught me and i only know tha one way to do them 90% of that is mine =[

Edit: QuickSortExtendedTPA is also nielsies

3Garrett3

2008-07-08 09:23:10

Sp? Means I'm not sure of the spelling. I just figured I could explain that. No more arguing.

Harry

2008-07-08 11:38:37

From: waddo
Hy as i have pointed out my spelling and grammar is not my fault

and if you read the post that said about you getting back in

i said yes I faught for you but i did have the odd dig cos i felt like an outcast and that id missed stuff cos im rather new

and replacing the word ban with hy isn't eithen a dig really

and its not spam it was defending him all he was doing was saying hi and he got flamed is that the introduction people want … no

Edit: This is something i really want ive put effort into this and im not gunna say ill change as i dont beleive i have done anything wrong and its impossible to please everyone
ive also already said my spamming has stopped and has been for a while
what i did in the past cant be changed hy from what i understand youve had a lot of chances and you get one more yet you wont eithen forget about the past. dont you think i deserve it. i want to get in and if i dont this time i dont know if ill apply again i dont want to have to put together my application to have it thrown back at me, thats not to say i will quit but that ill just carry on as normal andjust hpe that oneday i just might get auto membered.


How is the spelling and grammar not your fault? That is the reason why they invented the shift key, and spell check.

Uhm, and I didn't even bother to read the rest of your message, your spelling and grammar sucks too much for me to read it without my head exploding, to be honest.

Bye, last post on this thread ;) Sorry for the hijacking…

the scar noob

2008-07-08 11:47:37

From: Hy71194
How is the spelling and grammar not your fault? That is the reason why they invented the shift key, and spell check.

Uhm, and I didn't even bother to read the rest of your message, your spelling and grammar sucks too much for me to read it without my head exploding, to be honest.

Bye, last post on this thread ;) Sorry for the hijacking…


Dude, can you be more meany??? Please show some respect all of you!! If a mod/admin doesn't comes over here to stop it, someone else will..

-Tsn.

P1nky

2008-07-08 12:35:12

ima just report the thread and they can take care of it…
harry thats kinda harsh…
but waddo just Capalize first letter :) in the script not your posts lol

Waddo

2008-07-08 13:06:52

Hy i know realise why you have caused so much problems
and P1NKY i often capitalise first letter =] not every time but I have done in most of my recent posts.

Hobbit

2008-07-08 14:41:25

From: waddo
i hope i get admin or mod or sumit so i can view logs and find out i think there should be a rule against it its using the responsibility irisponsibly


I was the first one to vote no.

And how is it using irresponsibly when we feel against you being accepted into SRL Members? And don't say cause I didn't post a reason, because quite frankly, I don't need to post my reasons. I rarely vote on Members applications to begin with, and when i do, I feel strong that the person should or should not get in.

And if you and Hy don't stop acting like my 4 year old nephew and stop bitching at eachother incessantly, you both will be in trouble, so stop now while you're both ahead. I'm getting pretty tired of all the shit that is happening right now. And if people don't start to smarten up they are going to have a hard fall.

LAST WARNING

Waddo

2008-07-08 14:43:32

Ok hobbit as you have said im fine with that i thought it was just some person who had done it to ruin the 100% if it was an honest vote I dont mind.

nielsie95

2008-07-08 14:49:21

From: Runescapian
IMO someone thinks they're funny and votes no on every app that has a chance of going 100% :p. In the short time I've been here, I've yet to see a 100%.

Btw I voted yes ;)


From: waddo
i hope i get admin or mod or sumit so i can view logs and find out i think there should be a rule against it its using the responsibility irisponsibly


From: Hobbit
I was the first one to vote no.

And how is it using irresponsibly when we feel against you being accepted into SRL Members? And don't say cause I didn't post a reason, because quite frankly, I don't need to post my reasons. I rarely vote on Members applications to begin with, and when i do, I feel strong that the person should or should not get in.


Hobbit, I think he was talking about the situation above him.

Hobbit

2008-07-08 15:05:26

From: nielsie95
Hobbit, I think he was talking about the situation above him.


Well there was 1 no for awhile… that was mine… then Waddo said "Who voted no??" Then runescapian said the thing about just one person voting no to ruin 100%. So then waddo made the comment on checking the logs.

Waddo

2008-07-08 15:10:08

Yes hobbit as I said in my application that if you say no could you say why and how I could improve, that's why I thought it was someone voting no to ruin the streak and wanted to keep hidden.
And that is the reason I was unhappy.
Could you tell me how I can improve to gain you approval?
I would appreciate that Ty.

Hobbit

2008-07-08 15:25:10

Your script is great. There is no doubt about that. IMO you just need to work on some maturity issues. And knowing when to not say anything and just walk away. I just don't think you are ready for SRL Members yet.

I have nothing against you, I just don't think you are ready.

Waddo

2008-07-08 15:35:20

Ok I respect you feelings and opinions and am not going to argue with you as i know that you are right, I do find it hard to walk away in my defence however I do feel that there are members that are far more immature than me. Is there any possibility that (if at the end of this application the people who decide overall say no) I can become a member temporarily and if you still don't think I'm good enough take it away from me.

3Garrett3

2008-07-08 15:40:24

I have never heard of that. And I surely wouldn't agree to that. Not that my oppinion matters much.

Hobbit

2008-07-08 15:40:40

From: waddo
however I do feel that there are members that are far more immature than me.


I didn't argue that because it is completely and wholly true. There are some A LOT more immature then you. But they didn't start out that way, they were mature, then the "status" or SRL Member went to their head and made them insane.

Runescapian321

2008-07-08 15:52:58

From: Hobbit
Well there was 1 no for awhile… that was mine… then Waddo said "Who voted no??" Then runescapian said the thing about just one person voting no to ruin 100%. So then waddo made the comment on checking the logs.


Meh, I just guessed that someone voted no for the fun of it since nobody had said they voted no and there weren't too many negative things pointed out about waddo at the time. And I also remembered how a while ago, maybe 1-2 months, people thought the 1 no vote was a glitch, but then a mod/admin (forget who) said they could see who voted no. Around that time, there had been a bunch of people who truly deserved to get in but still had just 1 no vote, leading me to believe that someone was messing around.

Sorry :redface:

EDIT: Amazing how a vote or two can turn a whole app around. It was, what, 10-1? Now 12-6.

MylesMadness

2008-07-08 16:02:14

No. Members isn't purely on good at scripting, which you are, but more on your attitude. You say if you fail you'll stop, you'll just give up. That is not a members attitude. You are on my nerves as well.

Waddo

2008-07-08 16:09:41

no Myles i did not say i would give up i said that i don't think i will apply again, my reason being i like it here and i don't like my apps getting rejected i didn't say i would give up just not apply again if i apply a 4th time then there's more chance of quitting so i may not reply a 4th time and just stay content how I am of course I would apply again but only if I knew 100% i would get in and no be rejected. I'm just not very good at explaining things

P1nky

2008-07-08 16:20:01

From: waddo
Ok I respect you feelings and opinions and am not going to argue with you as i know that you are right, I do find it hard to walk away in my defence however I do feel that there are members that are far more immature than me. Is there any possibility that (if at the end of this application the people who decide overall say no) I can become a member temporarily and if you still don't think I'm good enough take it away from me.


nah a member stays a member :) unless you cheated or some wierd braniac reason, unless you want to become a srl junior member :p:p

MylesMadness

2008-07-08 17:33:01

From: waddo
no Myles i did not say i would give up i said that i don't think i will apply again, my reason being i like it here and i don't like my apps getting rejected i didn't say i would give up just not apply again if i apply a 4th time then there's more chance of quitting so i may not reply a 4th time and just stay content how I am of course I would apply again but only if I knew 100% i would get in and no be rejected. I'm just not very good at explaining things
Not applying again would count as giving up :rolleyes:

R0b0t1

2008-07-08 17:41:39

I give you a break of my KitKat bar.

Waddo

2008-07-08 18:00:18

Yay chocolate is good.
Ty R0b0t =]

But what does every one think of smart tools?

Pure1993

2008-07-08 18:04:26

Alright, let's see…

1) Really nice script for a non-member, keep it up.
2) High Activity (which really doesn't count at all in your case, high acitivity is good, but spam is bad, so I'll just ignore that point).
3) Bad english, but heck, if I was going to complain about that (myself only having lived 3 years in America, and that was a year ago, thus my english is getting worse), I would have to demote myself back to Junior member, so I will also ignore that point….
4) Immaturity has been named. Well, for my part, I believe immaturity is something that will come (hopefully), and it can't be forced onto someone, but it would be a shame to lose a good scripter just because of something that will only take a little time (relative speaking) to develope.
Just a hint to some people: I almost never had dealings with people on whose apps I voted. So, while you yourself aren't going to be affected, many others might be, and that in a positiv manner…
Ah well, not tryng to make a prayer out of this.
You have my vote though :)

Edit: excuse my exceptionally bad spelling on this post please, wrote this in a hurry.

Waddo

2008-07-08 18:11:46

Ty is there a reason I have never seen you before?

3Garrett3

2008-07-08 18:44:31

From: waddo
Ty is there a reason I have never seen you before?


Because his activity is only 2%.

skilld u

2008-07-08 20:23:19

Waddo is very trustworthy. Earlier today he helped me transfer over 200k in items(5 rune plates plus some other junk). He used one of my accounts and I used the other. :D

Yes if I haven't already voted.

nielsie95

2008-07-09 06:30:04

Welcome, sir.