SRL Archive - Archive

metalanca - SRL Member Application


MetalancA

2009-04-20 05:05:44

How Long have You Played Runescape?
4 Year(s)


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
SCAR


Are you a member of any other communities?
Sythe.org and Thegrandexchange.com.


Tell us about yourself…
From: metalanca
My name's Alan, and I'm 15 years old (16 in May). I like playing guitar, hanging out with friends, and scripting SCAR among other things. I love dogs, I'm quite the sweet tooth, and I'm almost abnormally tall (6'4"). I like learning new things, and I always enjoy a challenge.

When I first saw SRL i was intrigued. The thought of an entire community of friendly Runescape cheaters was unprecedented to me. I started autoing when I first joined the forums and have never looked back.

I have always been interested in scripting, but until recently have not had the time to learn it and create a script. When I completed high school (I attended a "work at your own pace" school, and graduated a few years early :)) I finally had the time to pursue these interests, and I started getting into scripting.

Without further ramblings, here is my script. I put a lot of hard work into it, and I'm very proud of it.



Please give show us one of your scripts.
{=============================================================================}
{ }
{ _________________________________________________ }
{ |Name: DhideTanner | }
{ |Writer: Metalanca | }
{ |Category: Crafting | }
{ |Description: Tans dragonhide at Al Kaharid | }
{ |Version: 1.0 | }
{ |SCAR: 3.15 Divi by Freddy1990 | }
{ |________________________________________________ | }
{ }
{=============================================================================}
{ Instructions }
{=============================================================================}
{ 1. Use he Runescape Client, Low Detail, Very Bright, Window Maximized. }
{ 2. Setup lines ' ' to ' ' including your runescape username and password. }
{ 3. Fill out your SRL STATS username and password. }
{ 4. Run the script logged out, It will log your character in. }
{ 5. Make sure you are in the Al-Kaharid bank. }
{ 6. IMPORTANT! Make sure you have your money in the very first slot in your }
{ bank AND have your Dhides in your second slot }
{ 7. Run with no money in your inventory }
{=============================================================================}

program DhideTanner;
{.include SRL/SRL.scar}

var
x, y, numbertanned : integer;
const
directionToRun='E';
yourSRLID=''; //Your SRL ID
yourSRLPW=''; //Your SRL Password



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

Players[0].Name := ''; //Your runescape username
Players[0].Nick := ''; //3-4 letters from your username
Players[0].Pass := ''; //Your runescape password
Players[0].Pin := ''; // Dun worry, you wont get haxed :)
Players[0].Strings[0] := 'akb'; //LEAVE THIS!! This tells the script that you are in Al Kaharid bank
Players[0].Strings[1] := 'green dragonhide'; //What kind of hides are you tanning? enter either: cowhide, green dragonhide, red dragonhide, blue, or black.
Players[0].Strings[2] := 'Internet Explorer'; //What SCAR disguises itself as
Players[0].Active := True;
{
Players[1].Name := ''; //Same thing applys here
Players[1].Pass := '';
Players[1].Nick := '';
Players[0].Pin := '';
Players[1].Strings[0] := 'akb';
Players[1].Strings[1] := 'black dragonhide';
Players[1].Active := True; }

MouseSpeed := 15;
end;


var coins, opx, opy : integer;



Procedure MyAntiban; forward;

Procedure AntiRandoms;
begin
Findnormalrandoms;
end;

procedure CheckMoney; //Procedure Checkmoney, withdraws 50k from your runescape bank.
begin
Coins := DTMFromString('78DA6394626060906440011F8FC8826946289' +
'F5113484831A001465435202DEA04D4F0000971026AF881843201' +
'353240829B801A0D2021825F0D0082760359');
if not LoggedIn then Exit;
if not findcolortolerance(x, y, 2149368, msx1, msy1, msx2, msy2, 20) then
begin
if not OpenBank(Players[CurrentPlayer].Strings[0], true, true) = true then
begin
exit;
writeln('could not find coins');
closebank;
logout;
exit;
end;
wait(200+random(500));
if (pinscreen) then
InPin(Players[CurrentPlayer].Pin);
wait(1000+random(250));
mousebox(41, 101, 63, 115, 2); //withdraw is broken atm D:
chooseoption('raw-X');
wait(500+random(250));
typesend('50000');
wait(500+random(500));
Antirandoms;
end;
exit;
end;



procedure Withdrawhides;
var x, y, green, black, blue, red, cow : integer;
begin
Green := DTMFromString('78DA6394646060E06040019C1EDC609A11CA6' +
'754C454039385AB9106126204D4F0010951026AD880041F01359C' +
'408205BF1A00B659012D');
Black:= DTMFromString('78DA63E4656060E06740015AEAEA609A11CA6' +
'7140112F20C688011558D0C901021A0461848B012500392E726A0' +
'861348C8E0570300CAFD0156');
Blue:= DTMFromString('78DA6314636060E06440015CBC41609A11CA6' +
'7940112920C688011558D3C90E025A00664170B0135207901026A' +
'B88184347E3500C349014F');
Red:= DTMFromString('78DA631465606010624001BE025C609A11CA6' +
'7140312F20C688011558D02909020A0461648B01350C347841A4E' +
'C2760100D33C0167');
Cow := DTMFromString('78DA6314616060106240013BD7AF03D38C503' +
'EA31890506440038CA86AE48184180135207976026A3880042F01' +
'35DC40420EBF1A00184C0315');
if not LoggedIn then Exit;
if (Players[CurrentPlayer].Strings[1]= 'green dragonhide') then
begin
if not bankscreen = true then
if OpenBank(Players[CurrentPlayer].Strings[0], true, true) then
if not bankscreen = true then
begin
wait(2000+random(500));
end;
if not finddtm(green, x, y, msx1, msy1, msx2, msy2) then
if not findcolortolerance(x, y, 806410, msx1, msy1, msx2, msy2, 10) then
begin
writeln('could not find green dragonhide DTM');
closebank;
logout;
exit;
end;
mmouse(x, y, 0, 0);
if IsUpTextMultiCustom(['een', 'ragon']) then
mouse(x, y, 1, 1, false);
chooseoption('All');
end;
if (Players[CurrentPlayer].Strings[1]= 'black dragonhide') then
begin
if not bankscreen = true then
if OpenBank(Players[CurrentPlayer].Strings[0], true, true) then
if not bankscreen = true then
begin
wait(2000+random(500));
end;
if not finddtm(black, x, y, msx1, msy1, msx2, msy2) then
if not findcolortolerance(x, y, 2500137, msx1, msy1, msx2, msy2, 10) then
begin
writeln('could not find black dragonhide DTM');
closebank;
logout;
exit;
end;
mmouse(x, y, 0, 0);
if IsUpTextMultiCustom(['lack', 'ragon']) then
mouse(x, y, 1, 1, false);
chooseoption('All');
end;
if (Players[CurrentPlayer].Strings[1]= 'blue dragonhide') then
begin
if not bankscreen = true then
if OpenBank(Players[CurrentPlayer].Strings[0], true, true) then
if not bankscreen = true then
begin
wait(2000+random(500));
end;
if not finddtm(blue, x, y, msx1, msy1, msx2, msy2) then
if not findcolortolerance(x, y, 6229515, msx1, msy1, msx2, msy2, 10) then
begin
writeln('could not find blue dragonhide DTM');
closebank;
logout;
exit;
end;
mmouse(x, y, 0, 0);
if IsUpTextMultiCustom(['lue', 'ragon']) then
mouse(x, y, 1, 1, false);
chooseoption('All');
end;
if (Players[CurrentPlayer].Strings[1]= 'red dragonhide') then
begin
if not bankscreen = true then
if OpenBank(Players[CurrentPlayer].Strings[0], true, true) then
if not bankscreen = true then
begin
wait(2000+random(500));
end;
if not finddtm(red, x, y, msx1, msy1, msx2, msy2) then
if not findcolortolerance(x, y, 593996, msx1, msy1, msx2, msy2, 10) then
begin
writeln('could not find red dragonhide DTM');
closebank;
logout;
exit;
end;
mmouse(x, y, 0, 0);
if IsUpTextMultiCustom(['ed', 'ragon']) then
mouse(x, y, 1, 1, false);
chooseoption('All');
end;
if (Players[CurrentPlayer].Strings[1]= 'cowhide') then
begin
if not bankscreen = true then
if OpenBank(Players[CurrentPlayer].Strings[0], true, true) then
if not bankscreen = true then
begin
wait(2000+random(500));
end;
if not finddtm(cow, x, y, msx1, msy1, msx2, msy2) then
if not findcolortolerance(x, y,12106177, msx1, msy1, msx2, msy2, 10) then
begin
writeln('could not find cowhide DTM');
closebank;
logout;
exit;
end;
mmouse(x, y, 0, 0);
if IsUpTextMultiCustom(['ow', 'ide']) then
mouse(x, y, 1, 1, false);
chooseoption('All');
end;
end;





Procedure Siggy;
begin
cleardebug;
writeln('----- ___ _____ ___ -----');
writeln('----- /\ /\ | | /\ | /\ |\ | / /\ -----');
writeln('----- / \ / \ |___ | /__\ | /__\ | \ | | /__\ -----');
writeln('----- / \ / \ | | / \ | / \ | \ | | / \ -----');
writeln('----- / \/ \ |___ | / \ |____ / \ | \| \ ___ / \ -----');
writeln('----- -----');
writeln('----- -----');
wait(1000);
cleardebug;
writeln(' ____ ____ ');
writeln(' | \ | \ ');
writeln(' |____/ |____/ ');
writeln(' | | ');
writeln(' |roudly |resents ');
wait(1000);
Cleardebug;
writeln('DhideTanner DhideTanner DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner DhideTanner DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner DhideTanner DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner DhideTanner DhideTanner DhideTanner ');
writeln(' DhideTanner ');
wait(2000);
cleardebug;
end;



Procedure MyAntiban; //some antiban. Feel free to add some more, you can never have too much antiban heh heh.
begin
case Random(30) of
1: RandomRClick;
2: RandomRClick;
3: PickUpMouse;
4: RandomMovement;
5: BoredHuman;
6: SleepAndMoveMouse(500+random(3000));
7: MouseSpeed := MouseSpeed + Random(5) - Random(5);
8: RandomMovement;
9:
begin
GameTab(2+Random(6));
wait(10+random(400));
Wait(100+Random(6000));
GameTab(4);
end;
10: HoverSkill('random',False);


11: begin
if IsUpText('ptions') then
begin
GetMousePos(opx,opy);
Mouse(opx,opy,0,0,False);
wait(500+random(1500));
ChooseOption('xamine')
end;
end;
end;
end;

function Clicktan: boolean;
var x, y, i : integer;
begin
if not LoggedIn then Exit;
SymbolAccuracy:= 0.5;
i:= 0;
repeat
if not findsymbol(x, y, 'tanner') then
begin
i:= i + 1;
SymbolAccuracy:= SymbolAccuracy - 0.05;
end;
mouse(x,y, 4, 4, true);
myantiban;
Fflag(0);
wait(1000+random(500));
result:= true;
until (i = 5) or findsymbol(x, y, 'tanner');
if (i > 5) then
begin
writeln('could not find tannery symbol');
exit;
end;
end;

function Clickcook: boolean;
var x, y, i : integer;
begin
if not LoggedIn then Exit;
SymbolAccuracy:= 0.5;
i:= 0;
repeat
if not findsymbol(x, y, 'cook') then
begin
i:= i + 1;
SymbolAccuracy:= SymbolAccuracy - 0.05;
end;
mouse(x,y, 4, 4, true);
myantiban;
Fflag(25+random(5));
wait(1000+random(500));
result:= true;
until (i = 5) or findsymbol(x, y, 'cook');
if (i > 5) then
begin
writeln('could not find Cooking symbol');
exit;
end;
end;
function Clickkebab: boolean;
var x, y, i : integer;
begin
repeat
if not findsymbol(x, y, 'kebab shop') then
begin
i:= i + 1;
SymbolAccuracy:= SymbolAccuracy - 0.05;
end;
mouse(x,y, 4, 4, true);
myantiban;
Fflag(15+random(5));
wait(1000+random(500));
result:= true;
until (i = 5) or findsymbol(x, y, 'kebab shop');
if (i > 5) then
begin
writeln('could not find Kebab shop');
exit;
end;
end;

function LoadTanDTM(WalkNumber: Integer): Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array[0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
if not LoggedIn then Exit;
case WalkNumber of
1: begin
dtmMainPoint.x := 886;
dtmMainPoint.y := 212;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 2447743;
dtmMainPoint.Tolerance := 5;

dtmSubPoints[0].x := 886;
dtmSubPoints[0].y := 212;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 2447743;
dtmSubPoints[0].Tolerance := 5;

dtmSubPoints[1].x := 886;
dtmSubPoints[1].y := 219;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 65793;
dtmSubPoints[1].Tolerance := 5;

dtmSubPoints[2].x := 893;
dtmSubPoints[2].y := 212;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 65793;
dtmSubPoints[2].Tolerance := 5;

dtmSubPoints[3].x := 888;
dtmSubPoints[3].y := 205;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 65793;
dtmSubPoints[3].Tolerance := 5;

dtmSubPoints[4].x := 879;
dtmSubPoints[4].y := 213;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 65793;
dtmSubPoints[4].Tolerance := 5;

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

function FindTannery: Boolean;
var
WalkDTM: integer;
begin
if not LoggedIn then Exit;
WalkDTM := LoadTanDTM(1);
if FindDTM(WalkDTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(X, Y, 5, 5, True);
myantiban;
FFlag(0);
writeln('found tannery using DDTMs');
Result := True;
end else
begin
Result := False;
FreeDTM(WalkDTM);
if not (Result) then
writeln('could not find tannery using DDTMs');
exit;
end;
end;

function LoadKebabDTM(WalkNumber: Integer): Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array[0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
if not LoggedIn then Exit;
case WalkNumber of
1: begin
dtmMainPoint.x := 904;
dtmMainPoint.y := 200;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65867;
dtmMainPoint.Tolerance := 5;

dtmSubPoints[0].x := 904;
dtmSubPoints[0].y := 200;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65867;
dtmSubPoints[0].Tolerance := 5;

dtmSubPoints[1].x := 904;
dtmSubPoints[1].y := 207;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 65793;
dtmSubPoints[1].Tolerance := 5;

dtmSubPoints[2].x := 911;
dtmSubPoints[2].y := 202;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 65793;
dtmSubPoints[2].Tolerance := 5;

dtmSubPoints[3].x := 908;
dtmSubPoints[3].y := 194;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 65793;
dtmSubPoints[3].Tolerance := 5;

dtmSubPoints[4].x := 899;
dtmSubPoints[4].y := 195;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 65793;
dtmSubPoints[4].Tolerance := 5;

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

function FindKebab: Boolean;
var
WalkDTM: integer;
begin
if not LoggedIn then Exit;
WalkDTM := LoadKebabDTM(1);
if FindDTM(WalkDTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(X, Y, 5, 5, True);
myantiban;
FFlag(8);
writeln('found the kebab symbol using DDTMs');
Result := True;
end else
begin
Result := False;
FreeDTM(WalkDTM);
if not (Result) then
begin
writeln('could not find the kebab symbol using DDTMs');
logout;
exit;
end;
end;
end;

procedure Walktokebabshop;
begin
if not LoggedIn then Exit;
setrun(true);
if not clickcook then
if not clickkebab then
if not findkebab then
begin
writeln('could not find cook or kebab shop symbols using DDTMS or symbols');
logout;
exit;
end;
end;

procedure Walktotan;
begin
if not loggedin then exit;
if not clicktan then
if not findtannery then
begin
writeln('could not find tannery symbol using DDTms or symbols');
logout;
exit;
end;
end;

procedure Walkback;
begin
if not LoggedIn then Exit;
if not clickkebab then
begin
writeln('could not find walking symbols');
logout;
exit;
end;
end;





procedure FindTheBank;
var
bx, by, AKBank : Integer;
WhichAngle: Extended;
begin
if not LoggedIn then Exit;
AKBank := DTMFromString('78DA636C606260F06140019D9D710CFF81342' +
'310FF0702C652A01A37881C1354CD9F3F4C0C5C5035200056E345' +
'841A3FFC6A002A3B0F97');
if not FindDtmRotated(AKBank, bx, by, MMX1, MMY1, MMX2, MMY2, Radians(-30), Radians(30), 0.05, WhichAngle) then
begin
wait(2000+random(500));
end;
if not FindDtmRotated(AKBank, bx, by, MMX1, MMY1, MMX2, MMY2, Radians(-30), Radians(30), 0.05, WhichAngle) then
begin
writeln('could not find the bank DTM');
logout;
exit;
end;
Mouse(bx, by, 0, 0, True);
FFlag(0);
end;

procedure DepositHides;
begin
if not LoggedIn then Exit;
if not OpenBank(Players[CurrentPlayer].Strings[0], true, true) = true then
begin
writeln('could not find bank');
logout;
exit;
end;
mousebox(610, 222, 631, 236, 2); //I made this because there was a bug in the withdraw/deposit function in bank.scar
chooseoption('All');
numbertanned := numbertanned+27;
end;



procedure FindEllis;
var
MyTPA : TPointArray;
x, y, i, H : Integer;
ATPA : T2DPointArray;
begin
if(not(LoggedIn))then Exit;
begin
FindColorsSpiralTolerance(MSCX, MSCY,MyTPA, 5471971, MSx1, MSy1, MSx2, MSy2, 5);
ATPA := TPAtoATPA(MyTPA, 4);
if Length(MyTPA) = 0 then
FindColorsTolerance(MyTPA, 53403829, MSX1, MSY1, MSX2, MSY2, 10);
ATPA := TPAtoATPA(MyTPA, 4);
if Length(MyTPA) = 0 then
FindColorsTolerance(MyTPA, 4285361, MSX1, MSY1, MSX2, MSY2, 10);
ATPA := TPAtoATPA(MyTPA, 4);
if Length(MyTPA) = 0 then
FindColorsTolerance(MyTPA, 5208538, MSX1, MSY1, MSX2, MSY2, 10);
ATPA := TPAtoATPA(MyTPA, 4);
if Length(MyTPA) = 0 then
begin
if not findtannery then
clicktan;
wait(5000+random(300));
FindColorsTolerance(MyTPA, 4812743, MSX1, MSY1, MSX2, MSY2, 10);
ATPA := TPAtoATPA(MyTPA, 4);
end;
if Length(MyTPA) = 0 then
begin
writeln('could not find Ellis');
logout;
exit;
end;
H := High(ATPA);
For I := 0 To H Do
begin
MiddleTPAEx(ATPA[i], X, Y);
MMouse(X, Y, 3, 3);
if (IsUpTextMultiCustom(['Elli', 'llis'])) then
Mouse(x, y, 0, 0, False);
ChooseOption('rade');
end;
end;
end;





procedure TanHides;// this will find the tanner and trade him
var
x, y : integer;
begin
if not LoggedIn then Exit;
if (Players[CurrentPlayer].Strings[1]= 'black dragonhide') then
begin
wait(2000+random(500));
if not findcolortolerance(x, y, 2829102, MSX1, MSY1, MSX2, MSY2, 5) then
begin
wait(2000+random(500));
end;
if not findcolortolerance(x, y, 2829102, MSX1, MSY1, MSX2, MSY2, 10) then
begin
writeln('Could not find the tanning screen.');
logout;
exit;
end;
MouseBox(394, 213, 454, 262, 2);
chooseoption('All');
end else
if (Players[CurrentPlayer].Strings[1]= 'cowhide') then
begin
wait(2000+random(500));
if not findcolortolerance(x, y, 11185078, MSX1, MSY1, MSX2, MSY2, 5) then
begin
wait(2000+random(500));
end;
if not findcolortolerance(x, y, 11185078, MSX1, MSY1, MSX2, MSY2, 10) then
begin
writeln('Could not find the tanning screen.');
logout;
exit;
end;
MouseBox(171, 85, 229, 132, 2);
chooseoption('All');
end else
if (Players[CurrentPlayer].Strings[1]= 'green dragonhide') then
begin
wait(2000+random(500));
if not findcolortolerance(x, y, 806153, MSX1, MSY1, MSX2, MSY2, 5) then
begin
wait(2000+random(500));
end;
if not findcolortolerance(x, y, 806153, MSX1, MSY1, MSX2, MSY2, 10) then
begin
writeln('Could not find the tanning screen.');
logout;
exit;
end;
MouseBox(57, 212, 117, 265, 2);
chooseoption('All');
end else
if (Players[CurrentPlayer].Strings[1]= 'blue dragonhide') then
begin
wait(2000+random(500));
if not findcolortolerance(x, y, 6557708, MSX1, MSY1, MSX2, MSY2, 5) then
begin
wait(2000+random(500));
end;
if not findcolortolerance(x, y, 6557708, MSX1, MSY1, MSX2, MSY2, 10) then
begin
writeln('Could not find the tanning screen.');
logout;
exit;
end;
mouseBox(171, 214, 230, 263, 2);
chooseoption('All');
end else
if (Players[CurrentPlayer].Strings[1]= 'red dragonhide') then
begin
wait(2000+random(500));
if not findcolortolerance(x, y, 593997, MSX1, MSY1, MSX2, MSY2, 5) then
begin
wait(2000+random(500));
end;
if not findcolortolerance(x, y, 593997, MSX1, MSY1, MSX2, MSY2, 10) then
begin
writeln('Could not find the tanning screen.');
logout;
exit;
end;
MouseBox(228, 211, 343, 260, 2);
chooseoption('All');
end else
begin
writeln('Could not tan dhides. Next player.');
logout;
exit;
end;
exit;
end;


Procedure MyProggy;
begin
cleardebug;
writeln(' Dhide Tanner by Metalanca ');
writeln('=========================================');
writeln('| Worked for: ' +(TimeRunning)+ '');
writeln('| Hides tanned: ' +inttostr(numbertanned)+ '');
writeln('| Tanning: ' +(Players[CurrentPlayer].Strings[1])+ ' ');
end;



{MAIN LOOP}


begin
SetupSRL;
Siggy;
declarePlayers;
Activateclient;
if not (loggedin) then loginplayer;
Disguise(Players[CurrentPlayer].Strings[2]);
Setangle(true);
repeat
repeat
Checkmoney;
WithdrawHides;
walktokebabshop;
Walktotan;
Antirandoms;
FindEllis;
Tanhides;
Antirandoms;
walkback;
FindTheBank;
DepositHides;
MyProggy;
until(not loggedin);
nextPlayer(Players[CurrentPlayer].Active);
until False;
end.

Harry

2009-04-20 05:09:34

until(not loggedin);

Eeek! A possible infinite loop!

Also, your standards are off in some places.

It looks nice though for the most part (I did not scan it deeply, just skimmed through the code a bit), do you have an any proggies?

I do not usually vote, so I will not make an exception this time. Good luck.

Nava2

2009-04-20 06:24:56

No, you have several DDTM calls but they all only call one DDTM yet you have a case!

Messy standards for example:
if this then
if that then
if nothing then

Your DDTMs aren't dynamic at all, and were done purely using Nielsie's DDTM maker. Sorry. Its a no.

Better luck next time, champ.

Blumblebee

2009-04-20 10:10:55

Hmmm, Lots of the procedures (ex. your Loading of DDTM's) looked exactly copied out of a tutorial, as your loading makes no sense. Why would you have a case statement for one ddtm, then a whole new procedure with a whole new case statement for one more?

Coding is really inefficent, lots of…sigh I just read Nava2's post, kinda what I was typing :(

so sorry, this time its a no. You have a good grasp of scar and srl, but your just not there yet. I'm sure if you dont get in this time, you'll be in next time for sure. Good luck.

Wizzup?

2009-04-20 14:12:43

Yes. Big script, looks nice over all. There are cases where you could work on the general logics, or check out TPA finding a bit more, but it generally looks nice!

3Garrett3

2009-04-20 23:37:40

I'm going to disagree with Wizzy.. again. And go with no. Sorry. You have some parts that just make no sense, and like said above, some look directly copied from tuts, so I'm going to have to say no and tell you to wait until you know the stuff well enough.

Naike

2009-04-20 23:49:06

Yes.

Rather do a big script with many flaws then a small one without anything.

He tried putting as much "advanced" stuff in there, some failed but without it he would
have gotten more Yes's?.

lordsaturn

2009-04-21 09:11:19

Is AntiRandoms even needed? You only call one function inside it.
if not OpenBank(Players[CurrentPlayer].Strings[0], true, true) = true then
begin
exit;
writeln('could not find coins');
You exit as soon as you enter the statement, you will never writeln.

WithdrawHides could be condensed ALOT, simply with a color variable and a couple coordinates and perhaps a case statement. Same with TanHides. And you never free any 5 of your DTMS!!!

Antiban is fine, though is it necessary to forward it?

The result in ClickTan is always true, and you never restore SymbolAccuracy to its original value. I'm pretty sure this function could throw an access violation aswell, if SymbolAccuracy gets to be less than 0.
Same in ClickCook/Kebab..

Your DDTMs aren't dynamic, all values are static. Why not use a string?

More memory leaks in FindTannery, FindKebab, and FindTheBank.

FindEllis looks good, though keep in mind FindColorsTolerance returns a boolean, and can be used in such manner
if not FindColorsTolerance(MyTPA, 53403829, MSX1, MSY1, MSX2, MSY2, 10) then
DoSomething;
Will return false if no colors are found.
Also your for loop wont work properly, I think you forgot a begin after
if (IsUpTextMultiCustom(['Elli', 'llis'])) then

Haven't seen you much around the forums, so I'm going to be neutral on your attitude. But I'm not a fan of sloppy code.

No. :(

MetalancA

2009-04-23 08:58:06

From: lordsaturn
Is AntiRandoms even needed? You only call one function inside it.
if not OpenBank(Players[CurrentPlayer].Strings[0], true, true) = true then
begin
exit;
writeln('could not find coins');
You exit as soon as you enter the statement, you will never writeln.

WithdrawHides could be condensed ALOT, simply with a color variable and a couple coordinates and perhaps a case statement. Same with TanHides. And you never free any 5 of your DTMS!!!

Antiban is fine, though is it necessary to forward it?

The result in ClickTan is always true, and you never restore SymbolAccuracy to its original value. I'm pretty sure this function could throw an access violation aswell, if SymbolAccuracy gets to be less than 0.
Same in ClickCook/Kebab..

Your DDTMs aren't dynamic, all values are static. Why not use a string?

More memory leaks in FindTannery, FindKebab, and FindTheBank.

FindEllis looks good, though keep in mind FindColorsTolerance returns a boolean, and can be used in such manner
if not FindColorsTolerance(MyTPA, 53403829, MSX1, MSY1, MSX2, MSY2, 10) then
DoSomething;
Will return false if no colors are found.
Also your for loop wont work properly, I think you forgot a begin after
if (IsUpTextMultiCustom(['Elli', 'llis'])) then

Haven't seen you much around the forums, so I'm going to be neutral on your attitude. But I'm not a fan of sloppy code.

No. :(


I understand; There were some sloppy errors that I should have seen, such as the exit; before writeln, the 5 DTM's I didn't free (lol) and the symbols. I appriciate the constructive criticism though, I'll be sure to double check for those problems in the future :redface:

EDIT:
From: N1ke!
Yes.

Rather do a big script with many flaws then a small one without anything.

He tried putting as much "advanced" stuff in there, some failed but without it he would
have gotten more Yes's?.



So if I made a script that was relatively simple compared to this one, I would have gotten more Yes's? I'm kind of confused as to what you're trying to say :confused:

ShowerThoughts

2009-04-23 10:24:42

I have to say, no; good luck with fixing your script up! Need any help PM me! ;)

Hobbit

2009-05-05 08:57:03

5 - Yes
8 - No

Sorry but you didn't make it

Please stick around and read some tutorials and take what people have suggested to improve on your script then apply in one month.