SRL Archive - Archive

TsterT - SRL Member Application


TsterT

2012-03-22 01:49:42

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


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
Java, VB.


Are you a member of any other communities?
Epicbot, Rarebot, Powerbot


Tell us about yourself…
From: TsterT
I've taken an interest on programming at a young age. Around 9 or 10 I believe. I started playing around with Visual Basics then, mainly because it was so easy to pick up on the basics. At 11 or 12, I picked up on Java. My brother was getting his degree in Computer Science at the time, and he was learning Java. He showed me some of his work, and I was making my own Java programs before I knew it. At the moment, I am creating apps for the Android Market and loving it. I heard of Simba through a friend, although I don't know his username, like most others after the Bot Nuke. I'm one who if given the opportunity to code, will take it. Simba was perfect for me. I could create my own scripts for a game I enjoy playing. I am currently 15. I browse these forums on a regular bases, reading the Scripting Tutorials when there are no other interesting threads going on. Although enjoying Runescape, and creating scripts for Simba, I also enjoy playing League of Legends, obviously while I'm botting. On top of that, I am pretty outgoing I'd say. I play soccer, and have been since I was 5 or so. Soccer, programming, and gaming are really my 3 main interests. I've made quite a big improvement in my scripting since my last application, mainly including CTS. It's getting a bit long now, I think I'll stop :P



Please show us one (or multiple) of your scripts.
program GreenDrags;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
{$i srl/srl/skill/fighting.simba}
{$i srl/srl/misc/paintsmart.simba}

Const
Version = 'v0.1 ';
scriptName = 'Green Dragon Killer';

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

with Players[0] do
begin
Name :=''; // Username
Pass :=''; // Password
Active := True;
Integers[0] := 50; //Eat at %
Integers[1] := 0; //0 = Lobsters, 1 = Sharks
Integers[2] := 10; //Amount of food to bring
Booleans[0] := True; //Rest
Arrays[0] := ['reen drag', 'ragon bone']; //Uptext to pick up
end;
end;

Var
playerLoc: String;
EatAt, dragCount, hideCount, boneCount: Integer;
DragColor, DragColor1, boneColor, hideColor: Integer;
food, lobDTM, sharkDTM, hideDTM, boneDTM, wallDTM, tabDTM: Integer;
Rest: Boolean;
foodUp, foodCount, StatPaint: String;
dragArea, bankArea, falArea: TIntegerArray;
PathToWall, PathToBank, PathToDrag: TPointArray;
ItemUptext: TStringArray;
aFound: Extended;

procedure PrintOnSmart;
var
mx, my, Pic, I, B, H, TPH, Numb : Integer;
TTP, TPA : TPointArray;
Canvas : TCanvas;
iBox : TBox;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(493, 115, 'meJzsvQdwXFd657tVU97aV96y' +
'tZqnkRVJMYNEzmjEDuhGA2h0NzrnnJAbOeeccwYBEswSKVIaiRqNZ' +
'kYTbI9nPN6xd2ftXXur/F7tul5wvecq13pdu/U87/+dA7Z6AJAiqU' +
'CNB6ivum7fvvf27Wbzd/7nO1+ITYiNPbIjO7IjO8ziU5OyyhWlrfW' +
'K9sbi5lqh2xaXnPB5XTwuKT61qNB7cbn+9lVlczhdo0ouK0mQFcYK' +
'MmIT43BAYmaqrDqg7G7RjfSYpofNM8O2+bFPbG7MOjdqmR11rkx5t' +
'hYcK1Ou9RnP1qJjbca2OG6dH7UvTdjmRhVt9aKgO9dtzfPYUjTKE4' +
'KM19KSXk1JfCU5/pWUuNfSE17PTDkuSD+Rk3kiN+tkniBRXSJrqNS' +
'NduMieMfy/vaixuo0g/p4Vtrr6cmvZyQfy0w5lpl6LCPlWHrKG1lp' +
'F4rEWRZ9cWOtqqfFMjNiX5x0rs641mZdq5+Yc3nasTRlX5igC/a1S' +
'2uDwoArpVxxXlxwXpwPixHlnRPmns3PPpMnOJOTdTo745QgHXYyK+' +
'1kRuobacnHUxKOJSccS4qnR9qOfz0x7tX42Ffjzr8Sd+GZ/06O7Mi' +
'O7KtpYHiGsgQMty1MGMb7FR2NArUijgH2c7DEuBSJsKSxuuX+7dob' +
'2+KAO6msOE4miTAclpiVJg9XAI/6sT7j1JBxYgDQts6O2ufHQUXb/' +
'Lh5aghmW5pwrEw7V6c9m3Ou9VnXxpx9ecq9NuPfnNf2d8jClQU+Z4' +
'7DnOuynsjOPJaRCvy+npr4SlL8S4mxLyVeeDn5wisp8a+lJ50tLCg' +
'MB3WjPdbFUfvypGN5Wj/eV9bdVNRQlapTHc9Mfz09Bacfz0x7Q5B+' +
'XiZO1SpLW8KagQ66h4Vx++IEBhfrHI0vbIghsy9NOldmHMtT2DaM9' +
'2mHuoBxVW+rsquppCUsb6jK9VjjiwvPFeSeE+bECHPOFuQ8gHkmMH' +
'4iI+V4atLx5ITXk+JeB7TjLwDdryfC4sgSgPELr8TGPPOfypEd2ZF' +
'9BY0zvLih2n95DSyCHlZ0NAlUpbGfC8bBcFFegcdWdX279ZtvWSaH' +
'MnTlcVLxhaz06MOSBOklTbXq3lagVTvcjXswTvSbJgYtU8P64R7Da' +
'K9pcgDSF1Lct73kubhA8nthzL0xC4Y7FscV7fUlzbWFNcE8ty3bbg' +
'LMYyRCiGpob3qEok5PfT0tCRunhTmiSq9xst88PQQR7lyf8V5ccK5' +
'O6Ua6Fe0NsvpQsqYMQv20MDe2VCawGWX1lSaMKdNDFkwQwOqFCbK5' +
'cQwxEOQwDDHYA3pzgBunhwwT/brRPnwKzWCHur9d1dem6mnFRKOss' +
'xFvIQ0H03WqWJnofGHBeRET5wU5kOWnBBmc5BDhTH5fgPzeM5Li9P' +
'QI40d2ZEd2qCXlZklCHufaXPVbV0wzw6retuLmuhydOi7pc8B4cl5' +
'2ns1onRru/PBecHtZM9CZolJcyM7cN0YkCTJKWsNQ41C85f0d+tFe' +
'w1iffqxf3dchqQoAgO7N+cpbWxU3toJX16HGzeDnwhiENMip6mqRV' +
'PkhxfGY67YW+B3iKh9E9YmcLLJcwamCnNgSWYKqJNdrL+9r0470YM' +
'ZhnhmGsPftLAV3V10rU9rhruKWusKagMBmyPXapHUVpslB6+yYfXE' +
'S0wEHk9+c4QC4bW6U6L04CbNipjAzYpoeMk3BBg2TA7g4hiHNINR4' +
'm7KnBWocsxsAvLStHp9R3lQjqfbjJjNN2kSFPK5Icl6cD4l+Njf7d' +
'HbGSej/9GSmyeM5yV8jWb7H8COMH9mRHdlBA6szFUXAjm97JXh10z' +
'g5VNreWFgdzFSXfSY1nhiXmJWeLi8Ew8saa+tvXAq/tQswFjfVJAj' +
'zYpPi9x2flJNZ3FKr7GrGIEIe8uFuw8RA+SAUcjOYrOxu9l1arry5' +
'5d9d8WwvYspgnh2xzI9CThsnB+WNNcKAGwwXhTx5HhvEdmG1P9/vu' +
'FBcGKsoSjGUg97ScCUQqu5r1w51Q+ebp4cxBEDbB6+shS6vOpenoJ' +
'yBcVm4QjPYCUQ7V6ZdqzPM1z1J6J4ZNU+RICdNPs+cKgsTuAhuUj/' +
'Wi2+PbLRXN9arJYB3lvfvuVMUHQ0E8PZ6MLy0ra6kta64uVZaFxKF' +
'3LkeG9R+ml6VWCqDMj+blw07k5tFGE9NPJYUB4C/fP7cSzFnfu/c6' +
'W+cOvH1Y68dT0l85j+YIzuyI/uqWXxqUlGV37U+77+05ttZ1Y32SG' +
'tDKeqyc9lZT3lNADwnM7OsONdqEPmcinC1a3K4+tI6YKjuaxMFPbE' +
'ZaQfPSs7PljdWl3U0guHlAx2As368v3ywS9XXCQIXN9foxno8Fxe8' +
'O0swKHNg1r48ZZ0fUXU3F9aE8v1OkFwYdOV6rPk+h7y5BtBWdDaWA' +
'J7tjaqeNhiEvXa42zg5AP4zhs8HdlcDl1f8FxddDzAub6gEnEF1J3' +
'OS2OfHyXMyPYKd5FGB/F6asi2MW+ZGIb8N432gN66pHWE23K0Z6sJ' +
'sgjlSWpU9zeRFYRiPttL2BtyeuNKLEUdgN6Yb1MnK4tgi8Tlh7pk8' +
'wSlBxuuJsa/Gxrx09vQ3Tp74+vHX/80rL//uSy++ePpkrEycbTd9j' +
'v/0FyQJMabkaMOeZ/6DPLIjO7IntfRCoXd72QeGX1pVdbfmOi0pak' +
'VCiSylrDg+LTnugGx+mMUlxidmpGaVyLJNWqHXKQ645bUhfUeTpbf' +
'DMT5knR7RDnUCrQBRYqEQY8e+01MlBcC4sqdVO9JrmBg0Tg0axiF0' +
'+zVD3dK6yqKGqpLWWv1oj3d7EWrcvTnnXJu2L41D9OIsiFth0C0Mu' +
'VU9LYaxXtPUILS6fZn81aapIaC1vL+zfKCTYmBogXLCvTHnv7xSef' +
'Ni9a3t0M5K6NKKc3FCO9Sl7m01jPZ61ma9mwvu9TlydzO3iXN5Gk+' +
'dazOAPyYCuIJlFhgfJufJaM8ewyHCcQUmwlXkSOEM37OyzibswZwC' +
'OzHpkNWFct2WdL06SVkcX1wYxxh+MisNYhsKHPL7xVMnXnjj2POvv' +
'frcyy89/+orv3f2VEKJNNdlgYb/7P/i55VJZ1azT/5QeOLPJQft5M' +
'/EeBVIf+a/zCM7siN7LEuMk1f4XBsL2uEeoBKMzXaYJdUBRWeTuq9' +
'dFvLmG7WCElmaKC9JkB6fsl+qAfIJ6SnJuYJ0qSi3XKnpaC5tCosC' +
'7pL6Kn1Xi62/y9jRom4M6/s7lV0t0KVFjdUkmB2mpDzBJxdJjEvOy' +
'RL5XXhH3XCPZqALGDfNDBunhnSjfZrBrsLakCxcAQULHWtbHHesTF' +
'kXxnQj3aAlrlnW1aTubVH3tVrmRqzzo5a5YcvssG1hjLT08iR4C/m' +
'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' +
'IhBVP9pTfWtn4Cffnfr3fwT5PfuLnwz9+HstH9zxbC0Yxvsh0XMc5' +
'liZKKFUlmnSYXRQtDdQcF0HYNVEDYDGqYYJ1fqmKivduD6gXRB0ZV' +
'l0zEGtx51QyAoxnFwopJ9Z1dxMkyahWAqonsnOPJme/EZK4nEgPTn' +
'hREYKNH+GQSOkjNHg3mojrz0VriisC1GaZH0li0iBFLfmcIxbdHvQ' +
'hhHGy3F9DnbuFSeGc3/4A4ZjSpLjNPHBhRw7lV7mpQ+KqeOzW1zhp' +
'dCaShqS9gjPCqcwb3l4r+tEU9Ve4wngna2E8gZwyi6McQ1P+mM4tD' +
'TWp/pmD8I/+tXHxPh+F/q04FPv9nM5N/bzxvijGf6pN/BVw/jxE8c' +
'jfO5lf49Q4yA2P5Jj/2iJ88uxuOQEkd1kX5yCDq+8dSmwuwERbp4e' +
'M44NWCcHzaO95uFew0Cnqr1B298efvPyzL/7yfyf//HQjz6sv73r3' +
'16yLY5phzrBE+ARIKJaqbVs9Y0i+urkVHmvqriJwjyKIRSbaktbwi' +
'VNNWWY+LeGS5prC6v95b2twd319m/f6//Rh2N/8qOxf/uj3h992HT' +
'/duXNbdfajGawA3I0XaeKY71vksrkKeVlAose12Txdc2spXInd6pQ' +
'QtDUEN433+vI89h4tjsQmmnSQpBjp5DFpdCthqgXJ49FpOz4gDPDU' +
'J5QTCmlp3MyT2VnnMkl3zjIzNZAAxIWV0lnBV10ESaSqWF9hSffZ4' +
'ca58V4idjkP1Gy8MJy8pCbtNhI06loZbNMTg0gpKLzjOEXCguS1aW' +
'5Lgu7sodaPGMEDNLXyIvNEtXZTZKxnSwBP8Qd9VDj5P1uqZU3U+UB' +
'Fr7OAmYYxkmNdwLjjU/xkzikrtTPxA8rcgjsH6xh9XQY38fJgx0oK' +
'Hj7Z2IYLghQn2vL+CTmvC1j3w0//rkH3/qzYHxftM+hDMeR3CLEfi' +
'KM47Pg/iMLE/j+D5YX4DXh+VvglnAMjsTTx6wh/PzXnweTI56QF77' +
'xwte+9jUeT8hfimzgGL7Bd/IjySV+/Dik+4svvXjuwrnIKc+Kcv/s' +
'LbNIYhjt8++uE8OvbPh2VoFx09igabTPMtZr6O/QQNq112t6W9s+u' +
'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' +
'VqxCv1saC8qTEUU6Rq2xLFMV52ITa3/WMGUlfK4LZA6U7lnGSAvwe' +
'fTcGtB49Pw6ofElStT+7jwmJRJWBwEPf/pW5gB0wzo9KY34xUEv7c' +
'vJJQkqoyzJkIGBgT8mVyu++vaPfvo3v/7FP/y3X/zD3//gr37541/' +
'91Q/+8pevfvMb+c6Czuc1Bv16u0VwD50IHjJGeWN9WO8zfCjF+1GK' +
'jwz+W7IKCnI+9R4HGsfFTZTfBg5pIk8A1G0eNSOZ81wYqVCEfI3lz' +
'vh0w5lOaX1eRyoRKBfUibA8GRIF3EN6DYbHCYfDjEBlOdYBoTFLQE' +
'Z7TKSJyWEl75if9t9C4xhX6bRoDnloYwmZfHcjcm41tLUcWFvAFhL' +
'Ls/COIpxwOOkoPYsgH9laNUUSe9X1rLFGtSoWTmFgYAAEk7Fv/Nnb' +
'3/lPP/v+X/7i+//5F19/5ydf+eH3b37ja9vXr0UrExK9duzR5oo+3' +
'uhJYqhyjHiqoL/KYR0QaPLnMFlFRI1QBnCN8jAwjhWRZmI2hXkmuE' +
'zpd/Pc9uhkOdOo2ZMJpctpj8emlzuLmxvN1ZVodUKfisrCfh5plDZ' +
'q1g3BpGDUjh7GycUBzOumToxq0uhZV87a23Xf6mJou+tf77iXMGWF' +
'NMWbQSbfXMIKfQytrIZI2wjPEtobUvlNrA5bFF4SVHcvtgyVnMDrO' +
'OjUptdwHr2JlYGB4UiQr02+/NUv3/jyF6++8ceXXr+5efXK1tUrq/' +
't7U0uLjlCAJ3qEAil3BIc/1g9cTZpUUmBEhcs5hbWcGB6nNH5WgWm' +
'H2NDNpKM0ThwU0YaLdtIBJgeGDBRynnRK7XaaQ8FSc6a1stzuLrdX' +
'V2ZXu9WFOU8+q4wFeW4b0ji2nNMSa3QTzUIUH5b2YxcJ7OY2bpjIm' +
'xtlWqQPOtw5N+UgACbHIPlON763Gb+wGT2/FtxcAgIHegcRTqMoQO' +
'lA3WjPsth0Lcxgm7xyFlstO8z4ICBnGYYMDAwHyNUqO9evrly8sHh' +
'+Z35nq72x2l7rZifLNo/rUchLuTdwR4W8M8Sc9pSQSxufkfVN/nNi' +
'fp9UeEYuRkFOja20hMlxjRK7/xAad1AfRYHTZotFFA6b0efNTE7W5' +
'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' +
'sHtFf96xzE/BSKcdCbK6ctZmdd+hBGV/w/W799s');
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
SMART_DrawBitmap(True, Pic, Point(4, 343));
SMART_DrawText(224, 359, UpCharsEx, ''+ IntToStr(dragCount)+ ' ', clWhite);
SMART_DrawText(233, 373, UpCharsEx, ''+ IntToStr(hideCount)+ ' ', clWhite);
SMART_DrawText(236, 387, UpCharsEx, ''+ IntToStr(boneCount)+ ' ', clWhite);
SMART_DrawText(279, 424, UpCharsEx, ''+ TimeRunning+ ' ', clWhite);
SMART_DrawText(10, 441, UpCharsEx, 'Status: '+ StatPaint, clWhite);
FreeBitmap(Pic);
end;

procedure AntiBan;
begin
case Random(250) of
1: RandomMovement;
2: Wait(RandomRange(5000, 7000));
3: BoredHuman;
4: begin GameTab(tab_Friends); Wait(RandomRange(1000, 2000)); GameTab(tab_Inv); end;
end;
end;

function CurStatus(Stat: String): Boolean;
begin
StatPaint := Stat;
Status(Stat);
PrintOnSmart;
end;

procedure SetupVars;
Var
i: Integer;
begin
CurStatus('Setting up');

SetLength(ItemUptext, Length(players[CurrentPlayer].Arrays[0]));
SetLength(dragArea, 3);
SetLength(bankArea, 3);
SetLength(falArea, 3);

SPS_Setup(RUNESCAPE_SURFACE, ['9_7', '9_6', '9_5']);

dragArea[0] := DTMFromString('mlwAAAHicY2dgYOhmYmBwAWI3IPaCslOAOAKIZYDyfkAcBMTFQJwAxFFALAbEEVFRDE6W+gzuDpYMtkaqDK525gxOdtYM9lbGDPxAeVyYEQ+GAgDQEQoP');
dragArea[1] := DTMFromString('mbQAAAHicY2VgYPjPysBwEIjPAfELID4BxBWMDAwpQBwJxBOAuBuI3R1tGMLCQxlcrHQZrPTVGNztzRj4gfpZ0TAjFgwGADQhCpY=');
dragArea[2] := DTMFromString('mggAAAHicY2NgYLjIysBwH4iPAPE/IP4PxM+BuISRgSEciFOAuACIQ4F4AhC7WOmCcVh4KIOLvRWYbaWvxsAPNIsVC2bEgSEAAI3xDIQ=');
bankArea[0] := DTMFromString('mlwAAAHicY2dgYFjBysCwGIjPAfELIL4FxPeAeDMQ6zIyMLgCsSkQuwFxARC3A3EDEIeGyTO015eD8e7tWxnCgzUZWrtmM/gFaTBwAc3FhRnxYCgAAMnDEX8=');
bankArea[1] := DTMFromString('mlwAAAHicY2dgYHjNysBwCYhXAPF6IH4CxDeB+DwQuzIyMMgCsSEQNwNxIxCXArExEG9et5ahvb6cITRMniEkQpuhtWs2Q7i/JliMC2guLsyIB0MBAN9HEYA=');
bankArea[2] := DTMFromString('mggAAAHicY2NgYDjAysCwF4iXAPFlIH4FxDeAuJCRgcEZiI2BWAaInYC4FIgXeHoyHD2wjyE0TJ6hvb6cYdG8uQzh/poMXECzsGFGHBgCABYoD0U=');
falArea[0] := DTMFromString('mggAAAHicY2NgYDjIysBwD4i3AvEOIL4GxDOB2I2RgSEXiGOA2AiINYA4C4ibqooYjh7Yx+DurMTg7a0KxovmzWXgApqFDTPiwBAAANhbDms=');
falArea[1] := DTMFromString('mggAAAHicY2NgYDjLysDQAcQHgPggEN8F4udAbM3IwOAGxF5APAGIs4FYDYhdXJQY2uvLGWpKchm8HaQZjh7Yx+DtrcrABTQLG2bEgSEAAL1gDhs=');
falArea[2] := DTMFromString('mlwAAAHicY2dgYFjMysCwHoi3APFZID4IxMeAeD8QpzIyMPgCsS0QWwJxHxCXAXEsEO/evpWhvb6cwclOg8HFRYnB016Zwc9LFSzGBTQXF2bEg6EAAFc+D/w=');

wallDTM := DTMFromString('mlwAAAHicY2dgYDgFxZeA+AoQ3wDiR0D8HIjrgLgAiLOBuAyKK4G4CIg9nSwY9HVVgFiTwc3BjEFHU4nB1EADLM4PlMeFGfFgKAAA0wgNzg==');
hideDTM := DTMFromString('mlwAAAHicY2dgYHBhYmDwAOIAIPZhgvAtgdgMiJ8B5W8A8SMgfgfEn6D0EyDmsOIEkkxYMSsDbsCIB0MBAMsxCKY=');
boneDTM := DTMFromString('mggAAAHicY2NgYNjFysCwBoh3APERKAaxfZkYGPyA2AWIvYA4HIgDgLi6rBSoiwkDA7VgBYw4MAQAACWXB9o=');
lobDTM := DTMFromString('mlwAAAHicY2dgYOhjheAuIJ4IxHOAeAoQNwCxFBMDgxYQiwGxMBALALEsEMsB8aIAcaBuJqyYnwE3YMSDoQAA3rgGAw==');
sharkDTM := DTMFromString('mggAAAHicY2NgYBBigABeIJaGYnEg5gFiKSDmB2JZIBYEYhYgntuQASSZMDA/A3bAiANDAADUVAJ+');
tabDTM := DTMFromString('mlwAAAHicY2dgYNjBysCwGoh3AfFxID4KZYPEHjEyMLwB4qtAfAeI3wHxeyB+AMSd8+YDdTNhxVwMuAEjHgwFAAV1DV8=');

EatAt := players[CurrentPlayer].Integers[0];
foodCount := IntToStr(players[CurrentPlayer].Integers[2]);
Rest := players[CurrentPlayer].Booleans[0];

case players[CurrentPlayer].Integers[1] of
0: begin food := lobDTM; foodUp := 'obster'; end;
1: begin food := sharkDTM; foodUp := 'hark'; end;
end;

DragColor := 5867135;
DragColor1 := 2247991;

for i := 0 to High(ItemUptext) do
ItemUptext[i] := players[CurrentPlayer].Arrays[0][i];

Writeln(Capitalize(players[CurrentPlayer].Name) + ' is eating at ' + IntToStr(EatAt) + '%.');
Writeln('Item Uptext: ' + ToStr(ItemUptext));
PathToDrag := [Point(3770, 2550),Point(3765, 2520),
Point(3764, 2480), Point(3761, 2453),
Point(3763, 2420), Point(3761, 2386),
Point(3761, 2356), Point(3766, 2316),
Point(3767, 2280), Point(3760, 2251),
Point(3752, 2229), Point(3740, 2189)];
PathToWall := [Point(3639, 3139), Point(3679, 3127),
Point(3702, 3097), Point(3702, 3050),
Point(3704, 3027), Point(3744, 2990),
Point(3775, 2972), Point(3790, 2943),
Point(3773, 2903), Point(3756, 2855),
Point(3742, 2817), Point(3735, 2776),
Point(3736, 2733), Point(3739, 2686),
Point(3752, 2641), Point(3763, 2593),
Point(3773, 2567)];
PathToBank := [Point(3684, 3128), Point(3646, 3137),
Point(3619, 3173)];
end;

procedure LoginProc;
begin
SMART_Server := 86;
SMART_Members := True;
SMART_Signed := True;
SetupSRL;
DeclarePlayers;
LoginPlayer;
ClearDebug;
SetupVars;
PrintOnSmart;
end;

function Proggy(Reason: String): Boolean;
begin
Writeln('[-------------------------------------------------]');
Writeln(Padr('[ Green Dragon Killer ' + Version + ' by TsterT', 45) + ' ]');
Writeln(Padr('[Dragons Killed: ' + IntToStr(dragCount), 50) + ']');
Writeln(Padr('[Hides Collected: ' + IntToStr(hideCount), 50) + ']');
Writeln(Padr('[Bones Killed: ' + IntToStr(boneCount), 50) + ']');
if not(Reason = '') then
Writeln(Padr('[Reason Stopped: ' + Reason, 50) + ']');
Writeln(Padr('[Time Running: ' + TimeRunning, 50) + ']');
Writeln('[-------------------------------------------------]');
if not(Reason = '') then
begin
Logout;
TerminateScript;
end;
end;

function CountInv: Boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CurStatus('Counting hides and bones');
FindDTMs(hideDTM, TPA, MIX1, MIY1, MIX2, MIY2);
ATPA := TPAToATPA(TPA, 15);

hideCount := hideCount + Length(ATPA);

FindDTMs(boneDTM, TPA, MIX1, MIY1, MIX2, MIY2);
ATPA := TPAToATPA(TPA, 15);

boneCount := boneCount + Length(ATPA);

Proggy('');
AntiBan;
PlayerLoc := 'FindDrag';
end;

function CheckLoc(PlayerPos: String): Boolean;
Var
x, y, i: Integer;
begin
Result := False;
CurStatus('Checking location');

case PlayerPos of
'Bank': begin
for i := 0 to High(bankArea) do
begin
if FindDTMRotated(bankArea[i], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Result := True;
Writeln('Found bank area');
end;
end;
end;
'Drag': begin
for i := 0 to High(dragArea) do
begin
if FindDTMRotated(dragArea[i], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Result := True;
Writeln('Found dragon area');
end;
end;
end;
'Var': begin
for i := 0 to High(falArea) do
begin
if FindDTMRotated(falArea[i], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Result := True;
Writeln('Found Falador area');
end;
end;
end;
end;
end;

function Lost: Boolean;
begin
CurStatus('Lost');
if CheckLoc('Bank') then
begin
PlayerLoc := 'AtBank';
Result := True;
end;
if CheckLoc('Drag') then
begin
PlayerLoc := 'FindDrag';
Result := True;
end;
if CheckLoc('Var') then
begin
PlayerLoc := 'ToBank';
Result := True;
end;

if not(Result) then
begin
Writeln('We seem to be lost, returning to town');
PlayerLoc := 'Return';
end;
end;

function DepositBankItem(DTM: Integer; Uptext: String): Boolean;
Var
x, y: Integer;
begin
if not(BankScreen) then
PlayerLoc := 'ToBank';

CurStatus('Despositing to bank');

repeat
if BankScreen then
begin
ExistsItemDTM(DTM, x, y);
MMouse(x, y, 3, 3);
Wait(RandomRange(30, 50));
ClickMouse2(False);
if not(OptionsExist(['Depostit-All'], false)) then
begin
ChooseOption('Deposit');
end else
ChooseOption('Deposit-All');
end;
until not(ExistsItemDTM(DTM, x, y));
end;

function WithdrawBankItem(DTM: Integer; Uptext, Amount: String): Boolean;
Var
x, y, i, fail: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
if not(BankScreen) then
PlayerLoc := 'ToBank';

CurStatus('Withdrawing from bank');

if BankScreen then
begin
repeat
FindDTMs(DTM, TPA, MSX1, MSY1, MSX2, MSY2);
until(FindDTMs(DTM, TPA, MSX1, MSY1, MSX2, MSY2) or (fail > 15));
ATPA := TPAToATPA(TPA, 15);

for i := 0 to High(ATPA) do
begin
MiddleTPA(ATPA[i]);
MMouse(x, y, 3, 3);
if WaitUptext(Uptext, 400) then
begin
ClickMouse2(False);
if OptionsExist([Uptext, Amount], false) then
begin
ChooseOption(Amount);
end else
begin
if OptionsExist([Uptext], false) then
begin
ChooseOption('Withdraw-X');
Wait(RandomRange(500, 750));
TypeSend(Amount);
end;
end;
end;
end;
end;
end;
function IntoWildy: Boolean;
Var
T, x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
MarkTime(T);
CurStatus('Searching Wildy Wall');

repeat
FindDTMs(wallDTM, TPA, MSX1, MSY1, MSX2, MSY2);
until((TimeFromMark(T) > 30000) or (FindDTMs(wallDTM, TPA, MSX1, MSY1, MSX2, MSY2)));
ATPA := TPAtoATPA(TPA, 15);

for i := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 3, 3);
if(WaitUptext('ildern', 400)) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, mouse_left);
PlayerLoc := 'ToDrag';
Break;
end;
end;
end;

function WalkSPS(Path: TPointArray): Boolean;
Var
T: Integer;
begin
MarkTime(T);
CurStatus('Walking');

SPS_WalkPath(Path);

if Path = PathToWall then
IntoWildy;
if Path = PathToBank then
PlayerLoc := 'AtBank';
if Path = PathToDrag then
PlayerLoc := 'FindDrag';

if (TimeFromMark(T) > 120000) then
proggy('Failed Walking');
end;

function Return: Boolean;
Var
x, y, fail: Integer;
begin
Result := False;
Status('Returning to town');

if ExistsItemDTM(tabDTM, x, y) then
begin
Mouse(x, y, 3, 3, mouse_left);
Wait(RandomRange(5000, 6000));
Result := True;
end else
Inc(fail);

if (fail > 15) then
proggy('Couldn''t find Tele Tabs');
end;

function Eat: Boolean;
Var
i: Integer;
begin
if HPPercent < EatAt then
begin
CurStatus('Eating');
GameTab(tab_Inv);
for i := 0 to 28 do
begin
if ExistsItem(i) then
begin
MMouseItem(i);
if WaitUptextMulti(['Eat', 'hark', 'obster'], 400) then
begin
MouseItem(i, mouse_right);
ChooseOption('Eat');
if not(ExistsItem(i)) then
if HPPercent > EatAt then
Break;
end;
end;
end;
end;
end;

function DoBanking: Boolean;
Var
T, x, y, i: Integer;
begin
Result := False;
MarkTime(T);
CurStatus('Opening Bank');
SetAngle(SRL_ANGLE_HIGH);

repeat
if not(CheckLoc('Bank')) then
begin
Inc(i);
Writeln('Failed to find Bank ' + IntToStr(i) + ' times.');
if i > 3 then
proggy('Failed to find bank');
Wait(RandomRange(750, 1250));
end else
OpenBankNPC;
until(CheckLoc('Bank') or (i > 3) or (TimeFromMark(T) > 60000) or (BankScreen));

repeat
if (BankScreen) then
begin
CurStatus('Banking');
OpenBankNPC;
Wait(RandomRange(1000, 2000));
if not InvEmpty then
begin
if ExistsItemDTM(hideDTM, x, y) then
DepositBankItem(hideDTM, 'dragonhide');
Wait(RandomRange(500, 750));
if ExistsItemDTM(boneDTM, x, y) then
DepositBankItem(boneDTM, 'bone');
Wait(RandomRange(500, 750));
WithdrawBankItem(food, foodUp, foodCount);
Wait(RandomRange(500, 750));
Result := True;
end;
end;
until((Result) or (TimeFromMark(T) > 60000));

if Result then
begin
CloseBank;
PlayerLoc := 'ToWall';
end;
end;

function Loot: Boolean;
Var
T, x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CurStatus('Looting');

if InFight then
Exit;

FindColorsSpiralTolerance(MSCX, MSCX, TPA, HideColor, MSX1, MSY1, MSX2, MSY2, 3);
FindColorsSpiralTolerance(MSCX, MSCX, TPA, BoneColor, MSX1, MSY1, MSX2, MSY2, 3);
if (Length(TPA) > 0) then
Exit;

ATPA := TPAToATPAEx(TPA, 15, 15);

for i := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 3, 3);
if WaitUptext('ick', 400) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, mouse_right);
if OptionsExist(['hide', 'one', 'bone', 'reen'], False) then
begin
ChooseOptionMulti(['hide', 'one', 'bone', 'gree']);
CountInv;
Break;
end;
end;
end;
end;

function FindDrag: Boolean;
Var
CTS, T, x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
MarkTime(T);
CurStatus('Searching Dragons');
SetAngle(SRL_ANGLE_HIGH);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.3, 1.4);
if not CheckLoc('Drag') then
PlayerLoc := 'Lost';
if InFight then
Exit;
repeat
FindColorsSpiralTolerance(MSCX, MSCX, TPA, DragColor, MSX1, MSY1, MSX2, MSY2, 3);
FindColorsSpiralTolerance(MSCX, MSCX, TPA, DragColor1, MSX1, MSY1, MSX2, MSY2, 3);
until(FindColorsSpiralTolerance(MSCX, MSCX, TPA, DragColor, MSX1, MSY1, MSX2, MSY2, 3) or (FindColorsSpiralTolerance(MSCX, MSCX, TPA, DragColor1, MSX1, MSY1, MSX2, MSY2, 3)) or (TimeFromMark(T) > 120000));
ColorToleranceSpeed(CTS);
ATPA := TPAtoATPAEx(TPA, 15, 15);

if Length(ATPA) <= 0 then
Exit;

for i := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 3, 3);
if WaitUptext('Walk here / 2 more options', 400) then
begin
GetMousePos(x, y);
Mouse(x ,y, 0, 0, mouse_right);
Wait(RandomRange(300, 400));
ChooseOption('ttck');
Wait(RandomRange(1000, 2000));
if not OthersInFight then
begin
Inc(dragCount);
if not(InFight) then
PlayerLoc := 'Pickup';
Break;
end else
Continue;
end;
end;


if (TimeFromMark(T) > 120000) then
proggy('Failed to find Dragons.');
end;

procedure NextStep;
begin
if not LoggedIn then
Exit;
case PlayerLoc of
'FindDrag': if not InFight then FindDrag;
'Pickup': Loot;
'AtBank': DoBanking;
'Return': Return;
'ToWall': WalkSPS(PathToWall);
'ToDrag': WalkSPS(PathToDrag);
'ToBank': WalkSPS(PathToBank);
'Lost': Lost;
end;
end;

begin
LoginProc;
PlayerLoc := 'AtBank';
repeat
NextStep;
Eat;
begin
PrintOnSmart;
Wait(1000);
end;
until(false);
end.

Harry

2012-03-22 02:41:13

Did S1N make this? (just a joke at the huge bitmap for proggy :p)

Just some issues I see:
- You use some static waits for chooseOptions and stuff. Add a bit of randomness on that stuff. Perhaps consider using waitOption.
- You have some infinite loops, in particular the two in function Loot are the most dangerous.
- You are are also doing these loops horribly inefficiently- you scan for the colors, then you scan AGAIN for no reason? Make some conditional such as found1 and found2, and result those to True if they worked, and use "unfil found1 or found2" or similar.
-Your standards are a bit funky in places, but not that bad.

How does this run? Would you please post a proggy? (This won't change anyone's votes really, just for my own personal idea of how longevity you can get this to run)

–
I am unsure what my actual vote would be based off just this script. I don't often vote yes. But you have been around for a bit and have a few other small scripts you whipped up, so I think you understand scripting good enough. I'd learn towards yes, but I won't vote yet, and I hope you address the issues above.

Sin

2012-03-22 07:09:53

From: Harry
Did S1N make this? (just a joke at the huge bitmap for proggy :p)

Just some issues I see:
- You use some static waits for chooseOptions and stuff. Add a bit of randomness on that stuff. Perhaps consider using waitOption.
- You have some infinite loops, in particular the two in function Loot are the most dangerous.
- You are are also doing these loops horribly inefficiently- you scan for the colors, then you scan AGAIN for no reason? Make some conditional such as found1 and found2, and result those to True if they worked, and use "unfil found1 or found2" or similar.
-Your standards are a bit funky in places, but not that bad.

How does this run? Would you please post a proggy? (This won't change anyone's votes really, just for my own personal idea of how longevity you can get this to run)

–
I am unsure what my actual vote would be based off just this script. I don't often vote yes. But you have been around for a bit and have a few other small scripts you whipped up, so I think you understand scripting good enough. I'd learn towards yes, but I won't vote yet, and I hope you address the issues above.


:c
Not sure if troll, or compliment…

'Toxin

2012-03-22 13:49:12

No from me, you're too new and I see some flawed logic in your code, will edit back once I have some more time later on today.

TsterT

2012-03-22 21:37:04

From: Harry
Did S1N make this? (just a joke at the huge bitmap for proggy :p)

Just some issues I see:
- You use some static waits for chooseOptions and stuff. Add a bit of randomness on that stuff. Perhaps consider using waitOption.
- You have some infinite loops, in particular the two in function Loot are the most dangerous.
- You are are also doing these loops horribly inefficiently- you scan for the colors, then you scan AGAIN for no reason? Make some conditional such as found1 and found2, and result those to True if they worked, and use "unfil found1 or found2" or similar.
-Your standards are a bit funky in places, but not that bad.

How does this run? Would you please post a proggy? (This won't change anyone's votes really, just for my own personal idea of how longevity you can get this to run)

–
I am unsure what my actual vote would be based off just this script. I don't often vote yes. But you have been around for a bit and have a few other small scripts you whipped up, so I think you understand scripting good enough. I'd learn towards yes, but I won't vote yet, and I hope you address the issues above.


I've tested each function and they all work, but I can't test for liability since my only member account at the moment has 1 def. I'm planning on running a test on that account either way, since they only hit me up to about 80 with a Anti-Dragon shield.

About the actual issues you brought up, no, S1N did not make this, I just thought it'd be cool to have a fancy paint, and someone last time mentioned my lack of bitmaps :P.

Static waits, that was just laziness to see if they'd work or not. I know they're not the best to use, and I wasn't planning on keeping them for release.

I don't really see where I'm scanning for colors after already scanning for them, but is there anything else I could do to improve their efficiency?

I try to keep them in each function just so I know what's being used in what function faster.

Thanks for the great response :).

Raskolnikov

2012-03-25 22:11:11

I'm leaning towards yes, but I can be swayed either way.

The only major problem I'm noticing is the yucky loops that are in here. I'll just paste some (all of these are very nitpicky though, so don't be deterred).


repeat
FindColorsSpiralTolerance(MSCX, MSCX, TPA, HideColor, MSX1, MSY1, MSX2, MSY2, 3);
FindColorsSpiralTolerance(MSCX, MSCX, TPA, BoneColor, MSX1, MSY1, MSX2, MSY2, 3);
until(FindColorsSpiralTolerance(MSCX, MSCX, TPA, HideColor, MSX1, MSY1, MSX2, MSY2, 3)) or (FindColorsSpiralTolerance(MSCX, MSCX, TPA, BoneColor, MSX1, MSY1, MSX2, MSY2, 3));

I really don't like this, because it could continue to search for this color whatever happens. And you search for it twice, like Harry said.

A better way to write this would have been:
FindColorsSpiralTolerance(MSCX, MSCX, TPA, HideColor, MSX1, MSY1, MSX2, MSY2, 3);
FindColorsSpiralTolerance(MSCX, MSCX, TPA, BoneColor, MSX1, MSY1, MSX2, MSY2, 3);
if not (Length(TPA) > 0) then Exit;

Or something like that. At least put a failsafe in there, so you're not searching for the color long after you're logged out or dead.

Another one:

repeat
if InFight then
Exit;
until (InFight);

This, in essence, is an endless loop. What if you were dead or logged out? This would just continue to run over and over again… But, if you are in a fight you exit anyways. I just don't understand the reasoning behind this piece of code…

Ultimately, I think these are just logic issues that will be weeded out over time.

Other than that, your standards are awesome, you show that you know what you're doing when it comes to coding. Just put in some failsafes and you'll be good.

Edit: I ended up voting yes because I think it's good enough.

TsterT

2012-03-26 09:08:08

I noticed the second mistake after posting this, fixed it right away. About the first issue, that never really crossed my mind. I've done it before, although sometimes I code without thinking too much. Bad habit ^^. Thanks for the vote though :). I'll update the script right now with the latest one.