SRL Archive - Archive

thechineseman - SRL Member Application Form


TheChineseMan

2008-05-18 05:54:24

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

What is the meaning to life?


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


Programming Knowledge
no

Other Communitys
no

How Long have You Played Runescape
3 years

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

hey guys

in my school my friends and me started to stop playing runescape and then one of my friends told me
"wouldn't it be cool if we could macro?"
well i got intrested when he said that and after i came home i started to go on google until i came across SCAR… when i first installed it i was like how did this work? how do i make it macro? well then i saw the start up screen and i clicked on SRL homepage and was introduced to SRL.

i joined here about 6 months ago (cant remember very well) and i started to look at some scripts and posts by people and thought to myself "i wanna be a scripter and a SRL member!" so i then started to make this script with some help from people (Credited in script).

while i was making this script i had many problems like walking and object finding but i read alot of tuts like radialwalking, standards and DTMs. But i also had help with begins and ends until i finally got the hang of it and started to fix the errors on my own and finally i bring you my script.

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

program thechinesesmelter;
{.include SRL/SRL/Misc/Smart.scar}
{.include srl/srl.scar}

{//////// // // //////// //////// // // ///////// //// // /////// ////// ////////
// // // // /// // // // // // // // /// //
// //////// //////// // //////// // // // // /////// /////// ////////
// // // // /// // // // // // // // /// //
// // // //////// /////// // // ///////// // //// /////// ////// ////////
---------------------------------------------------------------------------------------------------------

/////// \\/// \\// /////// // ///////// //////// //////// /////// //////
/// \\ // \\ // // // // // // // // //
/////// \\ // \\ // /////// // // //////// // /////// //////
/// \\ // \\ // // // // // // // ////
/////// \\ //\\ // /////// /////// // //////// // /////// // //
-----------------------------------------------------------------------------------------------


/////////////////////////////////////////////////////////////////////////////////////////////////
///////ok to anyone who is rading this i only have 2 rules if you want to use this script: //////
///////1)you have to credit me if you want to use any functions and when you use it /////////////
///////2)i want u to have fun and rep me if you like this script thx! ///////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////


How to use it
------------------
/////////////////////////////////////////////////////////////////////////////////////////////////
//////// 1)Setup you Smart World
//////// 2)Setup the Declareplayers procedure that is between lines 65-82 /////////////////////
//////// 3)Make sure you start in fally west bank /////////////////////
//////// 4)Ores in the top half of bank so that it is easier for the script/////////////////////
//////// 5)Enjoy!!!!!!!!!!!!!!!!! /////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////

Features in this Script
-------------------------
/////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////// 1)Antiban /////////////////
//////////////////////// 2)AntiRandoms /////////////////
//////////////////////// 3)Dtms for the items /////////////////
//////////////////////// 4)RadialWalk /////////////////
//////////////////////// 5)Smart /////////////////
//////////////////////// 6)Multiplayer /////////////////
//////////////////////// 7)Can do all bars /////////////////
//////////////////////// 8)proggie! /////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////

You Need
-----------
Scar 3.15
SRL rev 16

Special thanks to:
1)NaumanAklaQ for helping me make my very first basic script of this(only does steel bar)
2)Pvh cus he helped me fix annoying errors
3)FreakyMonkey for fixing an error no one could
4)ZephyrsFury for fixing some errors also
Thx guys u rock! }




var
BankersDTM,FurnaceDTM,IronDTM, CoalDTM, CopperDTM, TinDTM, MithDTM, AddyDTM, SilverDTM, GoldDTM,
BarDTM, x,y : Integer; Loads : Integer;

const
SmartWorld = 107; //your smart world


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

Players[0].Name := ''; //username
Players[0].Pass := ''; //password
Players[0].Nick := ''; //3-4 letters from your username
Players[0].Strings[0] := '' //type of bars eg Steel, Iron, Bronze, Adamantite
Players[0].Active := true;

{Players[1].Name := ''; //username
Players[1].Pass := ''; //password
Players[1].Nick := ''; //3-4 letters from your username
Players[1].Strings[0] := '' //type of bars eg Steel, Iron, Bronze, Adamantite
Players[1].Active := true;}
end;

procedure antiban;
begin
case random(100) of //do a random number so it won't always perform the antiban
0,5,10: RandomRClick;
1,6,8: BoredHuman;
2,7,9: HoverSkill('smithing', False);
4,12,14: hoverSkill('mining', false);
16,17,18,19: Gametab(randomrange(5,7));
20,21,22,23: Gametab(randomrange(8,9));
24,25,26,27: Gametab(13);
8,9,10,11,12: HoverSkill('random',False);
end;
end;

procedure AntiRandoms;
begin
if not LoggedIn then Exit;
FindNormalRandoms; // find random events
if FindFight then RunTo('N',True); // if a fight is found, run to the north and run far (will run back automatically)
end;

procedure DTMforitems;

begin
BankersDTM :=DTMFromString('78DA639CC6C8C0B094010C182114C39F3F4C7' +
'0FE7F20609C8D5F0D989E44849A3EC26A008F2810DA');

BarDTM := DTMFromString('78DA63FCC3C4C0E0C7C8800C2A0B0B194E006' +
'990E87F20606461666008475503918591409A19A8C68B809A6F40' +
'BB7C09A879CF44D8AEDF403531F8D500000FEC0C17');

CoalDTM := DTMFromString('78DA639CCDC0C090CD80022C2DD519F881342' +
'310FF0702C6E540460A031A604422817437904827A0A60F481413' +
'50331348541050B3044814E15703004FE40AE1');

IronDTM := DTMFromString('78DA63DCC2C8C0C00AC448C04B4F99811F488' +
'344FF0301E32146280F19302291407A0590F59F01BF9A5540160F' +
'0173F60059BC04D46C00B284F1AB01000EF40A27');


CopperDTM := DTMFromString('78DA630C606660C86564400667CB4C18B8803' +
'448F43F1030C602D5A4A3AA81C8C248201D08549344408D03504D' +
'0E0135DE40353504D44401D594E25703002D660A1D');

TinDTM := DTMFromString('78DA63AC626660C8636440061D75750C5C401' +
'A24FA1F0818DB816A3250D54064612490AE06AA4922A0261BA826' +
'8B809A22A09A0A026A9A816ACAF0AB0100B1040B20');

MithDTM := DTMFromString('78DA63AC606660E8636440069E9E590C5C401' +
'A24FA1F08185B806A7A50D540646124902E04AA6926A0260DA866' +
'220135F940357308A8A905AA99815F0D009E480B4D');

AddyDTM := DTMFromString('78DA63BCC0C4C0F0930105F827FB337001694' +
'620FE0F048CB7806A3E30A001462412481F04AAF94240CD21A01A' +
'4646FC6AAE13A1E61450CD1BFC7601001F660DC0');

SilverDTM := DTMFromString('78DA632C676660D8C2C8800CD6ACD9CEC005A' +
'441A2FF8180B105A8660DAA1A882C8C04D2854035CB09A84903AA' +
'D94C404D0950CD41026A1A806AB6E3570300D4B70D37');

GoldDTM := DTMFromString('78DA635CC8CCC0B085910119DCDE22CBC005A' +
'441A2FF8180711D50CD3A543510591809A4E700D52C23A0662250' +
'CD26026A6603D51CC4AF060019040C67');

furnaceDTM:=DTMFromString('78DA6374656460B8CC80029E01B1081003651' +
'8FE03012348CD393435AF5F338841D5800058CD75026A5CF0DB05' +
'56E34E580D00B38F1216');
end;

procedure withdrawores;
var
p : integer;
begin
if not LoggedIn then Exit;
SetAngle(True);
repeat
OpenBankFast('feb');
p := p + 1;
Until ((BankScreen) Or (p > 5))
if BankScreen then
Deposit(1, 28, True);
fixbank;
begin
case LowerCase(Players[CurrentPlayer].Strings[0]) of
'steel':
begin
If FindDtm(IronDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('9');
wait(1000+Random(2000));
WriteLn('we have withdraw the iron ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the iron ores!!');
logout;
end;

If FindDtm(CoalDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('18');
wait(1000+Random(2000));
CloseBank;
MakeCompass('N');
FTWait(2+Random(3));
WriteLn('we have withdraw the ores!!');
end else
begin
WriteLn('we have failed to withdraw the ores...');
end;
end;

'iron':
begin
If FindDtm(IronDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('28');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the iron ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the iron ores!!');
nextplayer(false);
end;
end;

'bronze':
begin
If FindDtm(TinDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('14');
wait(1000+Random(2000));
WriteLn('we have withdraw the tin ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the tin ores!!');
nextplayer(false);
end;

If FindDtm(CopperDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('14');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the copper ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the copper ores!!');
nextplayer(false);
end;
end;

'silver':
begin
If FindDtm(SilverDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('28');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the silver ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the silver ores!!');
nextplayer(false);
end;
end;

'gold':
begin
If FindDtm(GoldDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('28');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the gold ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the gold ores!!');
nextplayer(false);
end;
end;

'mithril':
begin
If FindDtm(MithDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('4');
wait(1000+Random(2000));
WriteLn('we have withdraw the mith ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the mith ores!!');
end;


If FindDtm(CoalDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('20');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the coal ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the coal ores!!');
nextplayer(false);
end;
end;


'adamantite':
begin
If FindDtm(AddyDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('3');
wait(1000+Random(2000));
WriteLn('we have withdraw the addy ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the addy ores!!');
nextplayer(false);
end;

begin
If FindDtm(CoalDTM, x, y, MSX1, MSY1, MSX2, MSY2) Then
Begin
wait(1000+Random(2000));
Mouse(x, y, 5, 5, False);
ChooseOption('X');
wait(1500+Random(2000));
TypeSend('18');
wait(1000+Random(2000));
closebank;
WriteLn('we have withdraw the coal ore ores!!');
end else
begin
WriteLn('we have failed to withdraw the coal ores!!');
nextplayer(false);
end;
end;
end;
end;
end;
end;

procedure checkores;
begin
case LowerCase(Players[CurrentPlayer].Strings[0]) of
'steel':
begin
If FindDtm(IronDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the iron ore');
end else
begin
withdrawores;
end;

begin
If FindDtm(CoalDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the coal ore');
end else
begin
withdrawores;
end;
end;
end;

'iron':
begin
If FindDtm(IronDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the iron ore');
end else
begin
withdrawores;
end;
end;

'bronze':
begin
If FindDtm(TinDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the Tin ore');
end else
begin
withdrawores;
end;

begin
If FindDtm(CopperDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the copper ore');
end else
begin
withdrawores;
end;
end;
end;

'silver':
begin
If FindDtm(SilverDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the Silver ore');
end else
begin
withdrawores;
end;
end;

'gold':
begin
If FindDtm(GoldDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the gold ore');
end else
begin
withdrawores;
end;
end;

'mithril':
begin
If FindDtm(MithDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the iron ore');
end else
begin
withdrawores;
end;

begin
If FindDtm(CoalDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the coal ore');
end else
begin
withdrawores;
end;
end;
end;

'adamantite':
begin
If FindDtm(AddyDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the iron ore');
end else
begin
withdrawores;
end;

begin
If FindDtm(CoalDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the iron ore');
end else
begin
withdrawores;
end;
end;
end;
end;
end;
procedure banktofurnace;
var
xs,sy:integer;
ang:extended;
begin
if (FindSymbol(xs, sy, 'bank')) then
begin
if not(loggedIn) then exit;
if not(RadialWalk(FindFallyRoadColor,70,20,60,1,1)) then
RadialWalk(FindFallyRoadColor,50,1,60,1,1);
if not(RadialWalk(FindFallyRoadColor,100,90,65,1,1)) then
RadialWalk(FindFallyRoadColor,120,80,60,1,1);
SymbolAccuracy := 0.8;
if FindSymbol(xs, sy, 'furnace') then
begin
Mouse(xs, sy, 5, 5, True);
Writeln('we have found the furnace!!!!');
end else
begin
RadialRoadWalk(findfallyRoadColor, 279, 244, 30, 1, 1);
if FindSymbol(xs, sy, 'furnace') then
Mouse(xs, sy, 5, 5, True);
if (FindObjTPA(X, Y, 1121670, 15, 3, 5, 5, 1, ['melt', 'nace'])) then
Mouse(x,y,5,5,true) else
begin
if findDTMrotated(furnaceDTM,x,y,mmcx,mmy1,mmx2,mmy2,-1.3,1.3,0.05,ang) then
begin
Mouse(xs, sy, 5, 5, True);
end else
Writeln('omg we messed up we cant find the furnace!!!!!!');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;
end;


procedure furnacetobank;
var
xs,sy:integer;

begin
if not(loggedIn) then exit;
if (FindSymbol(xs, sy, 'furnace')) then
begin
Writeln('done the smelting now going back to bank');
if RadialroadWalk(FindFallyRoadColor,320,300,60,1,1) then
begin
RadialRoadWalk(findfallyRoadColor, 240, 260, 55, 1, 1);
end;
SymbolAccuracy := 0.8;
if DTMrotated(bankersDTM,x,y,mmx1,mmy1,mmx2,mmy2) then
begin
findnormalrandoms;
SymbolAccuracy := 0.8;
Mouse(xs, sy, 5, 5, True);
Writeln('Found the bank');
end else
begin
RadialRoadWalk(findfallyRoadColor, 257, 276, 56, 1, 1);
if DTMrotated(bankersDTM,x,y,mmx1,mmy1,mmx2,mmy2) then
Mouse(xs, sy, 5, 5, True) else
begin
If FindDtm(BankersDTM, x, y, MMX1, MMY1, MMX2, MMY2) Then
begin
Mouse(xs, sy, 5, 5, True)
end else
Writeln('could not find the bank in 2 tries logging out!!!');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;
end;


procedure OpenFurnace;
var
x, y, Mark:Integer;
begin
MarkTime(Mark);
repeat
if (not (LoggedIn)) then Break;
if (FindColorTolerance(x, y, 1914018, MSX1, MSY1, MSX2, MSY2, 20)) then
begin
MMouse(x, y, 2, 2)
if (IsUpText('mel')) then
begin
Mouse(x + Random(15), y, 2, 2, True);
wait((1500) + Random(1500));
end;
end;
until ((FindColorTolerance(x, y, 7368825, 33, 368, 33, 368, 20)) or (TimeFromMark(Mark) > (15000)));
FindNormalRandoms;
antiban;
end;

Procedure smeltbars;
begin
if(not(LoggedIn))then Exit;
writeln('going to choose the bars now');
begin
case LowerCase(Players[CurrentPlayer].Strings[0]) of

'bronze':
begin
if(FindColorSpiralTolerance(x,y,2243147,32,397,67,426,10))then
begin
mouse(x,y,5,5,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('14');
wait(600+random(300));
writeln('yay we made the bronze bars!!');
wait(35000+random(300));
end else
begin
writeln('crap we didnt make bronze bars logging out now');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'steel':
begin
if(FindColorSpiralTolerance(x,y,8750479,237,397,278,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('9');
wait(600+random(300));
writeln('yay we made the Steel bars!!');
wait(27000+random(300));
end else
begin
writeln('crap we didnt make Steel bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'iron':
begin
if(FindColorSpiralTolerance(x,y,3223861,131,397,181,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('28');
wait(600+random(300));
writeln('yay we made the iron bars!!');
wait(85000+random(300));
end else
begin
writeln('crap we didnt make iron bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'silver':
begin
if(FindColorSpiralTolerance(x,y,9734537,188,397,225,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('28');
wait(600+random(300));
writeln('yay we made the silver bars!!');
wait(85000+random(300));
end else
begin
writeln('crap we didnt make silver bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'gold':
begin
if(FindColorSpiralTolerance(x,y,1413297,291,397,327,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('28');
wait(600+random(300));
writeln('yay we made the gold bars!!');
wait(85000+random(300));
end else
begin
writeln('crap we didnt make gold bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'mithril':
begin
if(FindColorSpiralTolerance(x,y,5979709,343,397,383,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('4');
wait(600+random(300));
writeln('yay we made the gold bars!!');
wait(11000+random(300));
end else
begin
writeln('crap we didnt make gold bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;

'adamantite':
begin
if(FindColorSpiralTolerance(x,y,4214847,394,397,431,426,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(1000+random(500));
Typesend('3');
wait(600+random(300));
writeln('yay we made the gold bars!!');
wait(9000+random(300));
end else
begin
writeln('crap we didnt make gold bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;
end;
end;

procedure checkbar;
begin
begin
If FindDtm(BarDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('bar check and we have the bar');
end else
begin
smeltbars;
end;
end;
end;



procedure bankbars;
Begin
if (not(Loggedin)) then exit;
OpenBankFast('feb');
If BankScreen Then
begin
Deposit(1, 28, True);
Loads := Loads + 1
end;
end;

procedure proggie;
begin
Writeln('[-----The chinese smelter-----] ');
WriteLn('[-----Ran for ' + TimeRunning + '-----] ');
Writeln('[-----Loads done:' + IntToStr(Loads) +' ');
Writeln('-----The chinese smelter----- ');
Writeln(' Made by thechineseman!!!! ');
end;


procedure mainloop;

Begin
smartSetupex(smartworld, False, True);
While Not (SmartReady) Do
Wait(100);
SetTargetDC(SmartGetDC);
If Not (LoggedIn) Then
While Not (SmartGetColor(386, 249) = 65535) Do
Wait(100);
SetupSRL;
ActivateClient;
declareplayers;
DTMforItems;
loginplayer;
repeat
repeat
withdrawores;
checkores;
banktofurnace;
openfurnace;
SmeltBars;
checkbar;
furnacetobank;
bankbars;
proggie;
until (not LoggedIn);
NextPlayer(Players[CurrentPlayer].Active);
until False;
end;

procedure fancydrawings;

begin
cleardebug;
WriteLn('The chinesesmelter is made by the thechineseman who loves to eat noodles:)');
WriteLn(' //////// // // //////// //// // /\ ');
WriteLn(' /// // // // //// // //\\ ');
WriteLn(' /// // // // // // // // \\ ');
WriteLn(' /// ////////// // // // // // \\ ');
WriteLn(' /// // // // // // // /////\\\\\ ');
WriteLn(' //// // // // // //// // \\ ');
WriteLn(' //////// // // //////// // // // \\ ');
WriteLn(' is the best country in the world!!!!!!!!!!!!!!! ');
disguise('Why China Is The Best');
end;


begin
Fancydrawings;
mainloop;
end.

this is another script that i made it is a eye or newt buyer
program Eyenewtbuyer;
{.include SRL/SRL/Misc/Smart.scar}
{.include srl/srl.scar}

{/////////////////////////////////////////////////////////////////////////////////////////////////
///////ok to anyone who is rading this i only have 2 rules if you want to use this script: //////
///////1)you have to credit me if you want to use any functions and when you use it /////////////
///////2)i want u to have fun and rep me if you like this script thx! ///////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////


How use it
------------------
///////////////////////////////////////////////////////////////////////////////////////////////////
//////// 1)Setup you Smart World /////////////////////
//////// 2)Setup the Declareplayers procedure that is between lines /////////////////////
//////// 3)Make sure you start fally west bank furthest bankbooth to the west/////////////////////
//////// 4)Ores in the top half of bank so that it is easier for the script /////////////////////
//////// 5)Enjoy!!!!!!!!!!!!!!!!! /////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////

Features this Script includes
-------------------------------
/////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////// 1)Antiban /////////////////
//////////////////////// 2)AntiRandoms /////////////////
//////////////////////// 3)Dtms for the items /////////////////
//////////////////////// 4)RadialWalk /////////////////
//////////////////////// 5)Smart /////////////////
//////////////////////// 6)Multiplayer /////////////////
//////////////////////// 7)Can do all bars /////////////////
//////////////////////// 8)proggie! /////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////

You Need
-----------
/////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////// Scar 3.15 //////////////////////////////
/////////////////////////////////////////// SRL rev 16 //////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////}



var
bankDTM, cashDTM, eyeDTM,SmallcashDTM,starDTM,screenDTM, x,y : Integer; Loads : Integer;

const
Smartworld = 107; //your smart world


procedure declarePlayers;
begin
HowManyPlayers := 2;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'chinaman575'; //username
Players[0].Pass := 'melaka'; //password
Players[0].Nick := 'man5'; //3-4 letters from your username
Players[0].pin := ''; //your bank pin
Players[0].Active := true; //are you using this player?

Players[1].Name := 'chinaman576'; //username
Players[1].Pass := '22842833'; //password
Players[1].Nick := 'man5'; //3-4 letters from your username
Players[1].pin := ''
Players[1].Active := true;
end;

procedure antiban;
begin
case random(100) of //do a random number so it won't always perform the antiban
0,5,10: RandomRClick;
1,6,8: BoredHuman;
2,7,9: HoverSkill('smithing', False);
4,12,14: hoverSkill('mining', false);
16,17,18,19: Gametab(randomrange(5,7));
20,21,22,23: Gametab(randomrange(8,9));
24,25,26,27: Gametab(13);
8,9,10,11,12: HoverSkill('random',False);
5,15,24,25,26: DoEmote(400 + Random(90));
end;
end;

procedure AntiRandoms;
begin
if not LoggedIn then Exit;
FindNormalRandoms; // find random events
if FindFight then RunTo('N',True); // if a fight is found, run to the north and run far (will run back automatically)
end;

procedure DTMforstuff;
begin
CashDTM := DTMFromString('78DA63DCC0C8C0E004C448606A9530032B900' +
'689FE0702C603986A20B23012482F06B2EC09A8590B64F9115073' +
'8008354B812C0FFC6A00919E0B0D');

EyeDTM := DTMFromString('78DA634C646260F8CF8002444544185881342' +
'310FF0702C674A09A7F0C6880118904D2B140357F09A88903AA61' +
'65C4AF26950835F14035BFF1DB050060940AA4');

BankDTM := DTMFromString('78DA63BCC8CCC0B09101051CDC3B9F4187918' +
'1018818FE0301E359A09A1D103916A89A3F7F9818F819206A4080' +
'F12650CD6E026A1E02D5EC21A006E49E9DF8D50000223D1656');

SmallcashDTM := DTMFromString('78DA639CC1CCC0B0839101194CA91062E007D' +
'220D1FF40C0B804A86637AA1A882C8C04D253806A3613503301A8' +
'E6200135738950D30B54B30BBF1A009FD90D3F');

starDTM := DTMFromString('78DA63DCC0C8C0F01B885140030317900489F' +
'E0702C62DD8D53040D580E9CD40D63F026AD611A1662D117681DC' +
'FC13BF1A00F3C61127');

screenDTM := DTMFromString('78DA633CC3C4C0A0C2C8800C3C1D4C1844803' +
'448F43F10306E666660C86640038C48249006A999C5885FCD7946' +
'E2D410B2EB10D0CD59F8D50000DE9E0C18');
end;

procedure Running;
var
Colour: string;
begin
if (GetMMLevels('run', Colour) > 30) then
SetRun(True);
end;

procedure findstarmenu;
var
ex, ey :integer;
begin
if (not LoggedIn) then exit;
repeat
if (not LoggedIn) then break;
ChooseOption('X');
until FindDTM(starDTM, ex, ey, MCX1, MCY1, MCX2, MCY2);
Wait(500+random(100));
end;

procedure cashgetting;
var
xe:integer;
begin
if not LoggedIn then Exit;
SetAngle(True);
repeat
OpenBankFast('feb');
xe := xe + 1;
Until ((BankScreen) Or (xe > 5) or (PinScreen));

if pinscreen then
InPin(Players[CurrentPlayer].pin);

if bankscreen then
depositall;
fixbank;
begin
if (FindDTM(CashDTM, x, y, msx1,msy1,msx2,msy2)) then
begin
mouse(x,y,3,3,false);
wait(600+random(300));
findstarmenu;
TypeSend('84')
writeln('Got the money from bank!');
antiban;
findnormalrandoms;
closebank;
end else
begin
writeln('Could not find any money in you need to sell the newts!');
Players[CurrentPlayer].Active := False; // Set your player to false!!
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;

procedure cashcheck;
begin
if not LoggedIn then Exit;
wait(600+random(300));
GameTab(4)
if (FindDTM(SmallcashDTM, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
writeln('ok we have the cash when we did the cash check');
exit;
end else
writeln('didnt have the cash when we did the cash check ganna do it again');
cashgetting;
cashcheck;
end;

procedure walktoshop1;
begin
if not RadialRoadWalk(findfallyRoadColor, 189, 210, 70, 1, 1) then
if not RadialRoadWalk(findwaterColor, 200, 220, 70, 1, 1) then
if RadialRoadWalk(findfallyRoadColor, 184, 205, 70, 1, 1) then
begin
writeln('walked to point 1');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findwaterColor, 189, 207, 70, 1, 1);
end;
end;

procedure walktoshop2;
begin
if RadialRoadWalk(findfallyRoadColor, 177, 199, 70, 1, 1) then
begin
writeln('walked to point 2');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findfallyRoadColor, 180, 200, 70, 1, 1);
end;
end;

procedure walktoshop3;
begin
if RadialRoadWalk(findRoadColor, 162, 190, 70, 1, 1) then
begin
writeln('walked to point 3');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 162, 184, 70, 1, 1);
end;
end;

procedure walktoshop4;
begin
if RadialRoadWalk(findRoadColor, 165, 194, 70, 1, 1) then
begin
writeln('walked to point 4');
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 178, 211, 70, 1, 1);
end;
end;

procedure walktoshop5;
begin
if RadialRoadWalk(findRoadColor, 107, 135, 70, 1, 1) then
begin
writeln('walked to point 5');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 102, 126, 60, 1, 1);
end;
end;

procedure walktoshop6;
begin
if RadialRoadWalk(findRoadColor, 177, 200, 60, 1, 1) then
begin
writeln('walked to point 6');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 179, 204, 60, 1, 1);
end;
end;

procedure walktoshop7;
begin
if RadialRoadWalk(findRoadColor, 93, 114, 70, 1, 1) then
begin
writeln('walked to point 7');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 102, 122, 70, 1, 1);
end;
end;

procedure walktoshop8;
begin
if RadialRoadWalk(findRoadColor, 194, 218, 70, 1, 1) then
begin
writeln('walked to point 8');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 170, 191, 70, 1, 1);
end;
end;

procedure walktoshop9;
begin
if RadialRoadWalk(findRoadColor, 281, 259, 50, 1, 1) then
begin
writeln('walked to point 9');
exit;
end else
begin
writeln('dam cannot find the road trying again');
RadialRoadWalk(findRoadColor, 296, 252, 70, 1, 1);
end;
end;

procedure walktoshop;
var
sx,sy:integer;
begin
if not LoggedIn then Exit;
begin
walktoshop1;
walktoshop2;
walktoshop3;
walktoshop4;
walktoshop5;
walktoshop6;
if (FindSymbol(sx, sy, 'magic shop')) then
begin
mouse(sx,sy,1,1,true);
FFlag(0);
antiban;
end else
begin
if not (FindSymbol(sx, sy, 'magic shop')) then
begin
walktoshop7;
if (FindSymbol(sx, sy, 'magic shop')) then
begin
mouse(sx,sy,1,1,true);
FFlag(0);
antiban;
end else
begin
writeln('Could not find the magic shop ganna try something');
walktoshop8;
if (FindSymbol(sx, sy, 'magic shop')) then
begin
mouse(sx,sy,1,1,true);
writeln('ok we found the shop on second try');
antiban;
findnormalrandoms;
if not (FindSymbol(sx, sy, 'magic shop')) then
begin
walktoshop9;
if (FindSymbol(sx, sy, 'magic shop')) then
begin
mouse(sx,sy,1,1,true);
writeln('ok we found the shop on third try');
antiban;
end else
writeln('omg we cant find the shop logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;
end;
end;
end;
end;

function FindObjCustom2(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tolerance: Integer): Boolean;
var
a, b, c, i, x1, y1, x2, y2: Integer;
Start: Boolean;
begin
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorSpiralTolerance(cx, cy, color[b], MSX1, MSY1, MSX2, MSY2, Tolerance)) then
begin
Start := True;
Break;
end;
end;
if(Start)then
begin
x1 := 245;
y1 := 165;
x2 := 277;
y2 := 185;
repeat
if not(LoggedIn)then break;
a := a + 1;
if (a = 1) then
c := c + 1
else if (a = 3) then
c := c + 1;
for i := 1 to c do
begin
if (a = 1) then
begin
x1 := x1 + 30;
x2 := x2 + 30;
end else
if (a = 2) then
begin
y1 := y1 - 20;
y2 := y2 - 20;
end else
if (a = 3) then
begin
x1 := x1 - 30;
x2 := x2 - 30;
end else
if (a = 4) then
begin
y1 := y1 + 20;
y2 := y2 + 20;
end;
if (x1 = 485) and (x2 = 517) then
x2 := x2 - 2;
if (y1 = 325) and (y2 = 345) then
y2 := y2 - 7;
if (x2 > 515) then
Break;
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorTolerance(cx, cy, Color[b], x1, y1, x2, y2, tolerance)) then
begin
MMouse(cx, cy, 3, 3);
Wait(5+Random(10));
if (IsUpTextMultiCustom(Text)) then
begin
Result := True;
Exit;
end;
end;
end;
end;
if (a = 4) then
a := 0;
until (x2 > 515) or (Result = True);
end;
end;

procedure tradebetty;

begin
if not LoggedIn then Exit;
wait(2000+random(300));
if FindObjCustom2(x, y, ['etty'], [1250069, 4676202, 6229087],30) then
begin
mouse(x,y,1,1,false);
wait(300+random(300));
chooseoption('Trade')
writeln('we have traded betty!');
end else
begin
writeln('we cant find betty and is logging out');
Players[CurrentPlayer].Active := False; // Set your player to false!!
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!;
end;
end;

procedure buynewt;
begin
if not LoggedIn then Exit;
if (FindDTM(screenDTM, x, y, msx1,msy1,msx2,msy2)) then
begin
if (FindDTM(EyeDTM, x, y, msx1,msy1,msx2,msy2)) then
begin
writeln('we have found the eye of newt buying now');
mouse(x,y,1,1,false);
wait(300+random(300));
findstarmenu;
wait(600+random(300));
typesend('123')
Writeln('we have bought the eyes! walking back now');
if not (FindDTM(ScreenDTM, x, y, msx1,msy1,msx2,msy2)) then
begin
writeln('We cant find the eye of newt trying again');
tradebetty;
buynewt;
end else
begin
Players[CurrentPlayer].Active := False; // Set your player to false!!
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;
end;

procedure checknewt;
begin
wait(1000+random(300));
GameTab(4)
if (FindDTM(EyeDTM, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
writeln('ok we have the eye when we did the eye check');
exit;
end else
writeln('didnt have the eye when we did the eye check ganna do it again');
tradebetty;
buynewt;
end;

procedure walkback1;
begin
if not RadialRoadWalk(findRoadColor, 67, 31, 60, 1, 1) then
if RadialRoadWalk(findRoadColor, 75, 45, 70, 1, 1) then
begin
writeln('We have walked back to point 1');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 75, 57, 55, 1, 1);
end;
end;

procedure walkback2;
begin
if RadialRoadWalk(findRoadColor, 329, 311, 70, 1, 1) then
begin
writeln('We have walked back to point 2');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 345, 315, 70, 1, 1);
end;
end;

procedure walkback3;
begin
if RadialRoadWalk(findRoadColor, 312, 286, 60, 1, 1) then
begin
writeln('We have walked back to point 3');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 316, 294, 60, 1, 1);
end;
end;

procedure walkback4;
begin
if RadialRoadWalk(findRoadColor, 359, 329, 70, 1, 1) then
begin
writeln('We have walked back to point 4');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 355, 324, 70, 1, 1);
end;
end;

procedure walkback5;
begin
if not RadialRoadWalk(findRoadColor, 359, 331, 70, 1, 1) then
if RadialRoadWalk(RoadColor, 62, 42, 70, 1, 1) then
begin
writeln('We have walked back to point 5');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 359, 341, 70, 1, 1);
end;
end;

procedure walkback6;
begin
if RadialRoadWalk(findRoadColor, 350, 370, 70, 1, 1) then
begin
writeln('We have walked back to point 6');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findRoadColor, 5, 34, 70, 1, 1);
end;
end;

procedure walkback7;
begin
if not RadialRoadWalk(findfallyRoadColor, 356, 370, 70, 1, 1) then
if not RadialRoadWalk(findfallyRoadColor, 356, 380, 70, 1, 1) then
if not RadialRoadWalk(findRoadColor, 35, 15, 70, 1, 1) then
begin
writeln('We have walked back to point 7');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findfallyRoadColor, 356, 370, 70, 1, 1);
end;
end;

procedure walkback8;
begin
if not RadialRoadWalk(findfallyRoadColor, 4, 15, 70, 1, 1) then
begin
writeln('We have walked back to point 8');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findfallyRoadColor, 21, 8, 70, 1, 1);
end;
end;

procedure walkback9;
begin
if RadialRoadWalk(findfallyRoadColor, 357, 370, 70, 1, 1) then
begin
writeln('We have walked back to point 9');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findfallyRoadColor, 358, 375, 70, 1, 1);
end;
end;

procedure walkback10;
begin
if RadialRoadWalk(findfallyRoadColor, 358, 375, 70, 1, 1) then
begin
writeln('We have walked back to point 10');
exit;
end else
begin
writeln('cannot walk back trying again');
RadialRoadWalk(findfallyRoadColor, 358, 375, 70, 1, 1);
end;
end;

procedure walkback;
var
sx,sy:integer;
begin
if not LoggedIn then Exit;
begin
walkback1;
walkback2;
walkback3;
walkback4;
walkback5;
walkback6;
walkback7;
walkback8;
if DTMRotated(BankDTM, sx, sy, mmx1,mmy1,mmx2,mmy2) then
begin
Mouse(sx, sy, 5, 5, True);
writeln('we have found the bankers!!!!!!!');
end else
begin
writeln('we havent found the bankers ganna try again...');
walkback9;
if DTMRotated(BankDTM, sx, sy, mmx1,mmy1,mmx2,mmy2) then
begin
Mouse(sx, sy, 5, 5, True);
writeln('we have found the bankers!!!!!!!');
end else
writeln('cant find the bankers logging out...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
end;

procedure bankall;
var
xe:integer;
begin
if not LoggedIn then Exit;
repeat
OpenBankFast('feb');
xe := xe + 1;
Until ((BankScreen) Or (xe > 5) or (PinScreen));

if pinscreen then
InPin(Players[CurrentPlayer].pin);

if bankscreen then
depositall;
Loads := Loads + 1
end;

procedure proggie;
begin
Writeln(' ///////////Eye killer//////////// ');
WriteLn('///////////////////////////////// Ran for ' + TimeRunning + ' ///////////////////////////////// ');
Writeln('///////////////////////////////// Loads done:' + IntToStr(Loads) +' ///////////////////////// ');
Writeln(' ///////////Eye killer//////////// ');
Writeln(' Made by thechineseman ');
end;


procedure mainloop;

Begin
smartSetupex(smartworld, False, True);
While Not (SmartReady) Do
Wait(100);
SetTargetDC(SmartGetDC);
If Not (LoggedIn) Then
While Not (SmartGetColor(386, 249) = 65535) Do
Wait(100);
SetupSRL;
DTMforstuff;
ActivateClient;
Declareplayers;
loginplayer;
repeat
repeat
running;
cashgetting;
Cashcheck;
walktoshop;
tradebetty;
buynewt;
checknewt;
running;
walkback;
bankall;
proggie;
until (not LoggedIn);
NextPlayer(Players[CurrentPlayer].Active);
until False;
end;



procedure startup;
begin
cleardebug;
WriteLn('The eye of newt buyer is made by the thechineseman who loves to eat noodles:)');
WriteLn(' //////// // // //////// //// // /\ ');
WriteLn(' /// // // // //// // //\\ ');
WriteLn(' /// // // // // // // // \\ ');
WriteLn(' /// ////////// // // // // // \\ ');
WriteLn(' /// // // // // // // /////\\\\\ ');
WriteLn(' //// // // // // //// // \\ ');
WriteLn(' //////// // // //////// // // // \\ ');
WriteLn(' is the best country in the world!!!!!!!!!!!!!!! ');
disguise('Why China Is The Best');
end;
begin
startup;
mainloop;
end.
——————————————————
<!– END TEMPLATE: formanswers –>

PvH

2008-05-18 06:07:38

good to see you made the script done:)
it looks nice,
some things can be shorter, for example:

Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!

can also be done with

nextplayer(false);
try adding some more failsafes
for example in the banking
have a variable:
tries:integer;

banking procedure:

repeat
OpenBankFast('feb');
Tries := Tries + 1;
Until ((BankScreen) Or (Tries > 5) or (PinScreen));

try adding loads for players etc.
try working on your standards, as you saw, with fixed standards its easier to fix errors;)

overal..
good work:)
I am not going to vote, since I just came into srl members and I am stil learning how to vote and things.
But I wish you good luck;)

P.s.
w00t.. I'm in credits:D

ShowerThoughts

2008-05-18 06:10:52

PVH good to see you making good comment :D, Better then me :p

I admit i never read those scripts through but sometimes i do..
i won't vote this time.

Shuttleu

2008-05-18 06:48:38

well done its quite a good script
for this

Deposit(1, 28, True);
you could replace it with

depositall
and for here

'silver':
begin
wait(800+random(500));
if(FindColorSpiralTolerance(x,y,9734537,199,430,246,462,10)) then
begin
mouse(x,y,1,1,false);
ChooseOption('X');
wait(800+random(500));
Typesend('28');
wait(600+random(300));
writeln('yay we made the silver bars!!');
wait(50000+random(300));
end else
begin
writeln('crap we didnt make silver bars logging out now...');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
end;
end;
you only give it one chance to find the bar
if someone had a laggy computer (which mine is sometimes) then it might not find it
give it 3 chances to find the color before it logs out

also you have got all the DTM's loaded at the begining so that they are loaded all the way through the script

so it will be something like this

procedure WhichDTM(DTM: string);
begin
if not(LoggedIn) then Exit;
case DTM of

'bar':
begin
BarDTM := DTMFromString('78DA63FCC3C4C0E0C7C8800C2A0B0B194E006' +
'990E87F20606461666008475503918591409A19A8C68B809A6F40' +
'BB7C09A879CF44D8AEDF403531F8D500000FEC0C17');
end;

'coal':
begin
CoalDTM := DTMFromString('78DA639CCDC0C090CD80022C2DD519F881342' +
'310FF0702C6E540460A031A604422817437904827A0A60F481413' +
'50331348541050B3044814E15703004FE40AE1');
end;

'iron':
begin
IronDTM := DTMFromString('78DA63DCC2C8C0C00AC448C04B4F99811F488' +
'344FF0301E32146280F19302291407A0590F59F01BF9A5540160F' +
'0173F60059BC04D46C00B284F1AB01000EF40A27');
end;

'copper':
begin
CopperDTM := DTMFromString('78DA630C606660C86564400667CB4C18B8803' +
'448F43F1030C602D5A4A3AA81C8C248201D08549344408D03504D' +
'0E0135DE40353504D44401D594E25703002D660A1D');
end;

'tin':
begin
TinDTM := DTMFromString('78DA63AC626660C8636440061D75750C5C401' +
'A24FA1F0818DB816A3250D54064612490AE06AA4922A0261BA826' +
'8B809A22A09A0A026A9A816ACAF0AB0100B1040B20');
end;

'mith':
begin
MithDTM := DTMFromString('78DA63AC606660E8636440069E9E590C5C401' +
'A24FA1F08185B806A7A50D540646124902E04AA6926A0260DA866' +
'220135F940357308A8A905AA99815F0D009E480B4D');
end;

'addy':
begin
AddyDTM := DTMFromString('78DA63BCC0C4C0F0930105F827FB337001694' +
'620FE0F048CB7806A3E30A001462412481F04AAF94240CD21A01A' +
'4646FC6AAE13A1E61450CD1BFC7601001F660DC0');
end;

'silver':
begin
SilverDTM := DTMFromString('78DA632C676660D8C2C8800CD6ACD9CEC005A' +
'441A2FF8180B105A8660DAA1A882C8C04D2854035CB09A84903AA' +
'D94C404D0950CD41026A1A806AB6E3570300D4B70D37');
end;

'gold':
begin
GoldDTM := DTMFromString('78DA635CC8CCC0B085910119DCDE22CBC005A' +
'441A2FF8180711D50CD3A543510591809A4E700D52C23A0662250' +
'CD26026A6603D51CC4AF060019040C67');
end;
end;
end;
then just before you use the DTM just put

whichDTM('whichever dtm you want to use');
then once you have finished using the DTM put

Freedtm('whichever DTM you used');
that will make your script use up less memory (plus i made that methood and i used it)

other than that its good

well done

im going to vote yes

~shut

TheChineseMan

2008-05-18 08:04:03

ok made the script better by adding depositall and changed the walking abit

Pure1993

2008-05-18 08:07:13

I don't know, it is very basic… also, barely any failsafes, if i didn't fail to see them. Also, the antiban system is quite basic too, nothing spectacular… Don't get me wrong, I think it is a nice script, especially if it works well (haven't tried it yet), but I am not sure if this is member quallity… holding vote for now…

TheChineseMan

2008-05-18 10:18:38

added a checkore procedure incase it didnt withdraw the ores

Macrosoft

2008-05-18 10:46:14

withdrawores could be shortened considerably if you make a function:

Withdrawore(Ore: Dtm; OreName:string; Amount: string)

then when you do the "we have failed to withdraw the ores" thing, you write

writeln('we have failed to withdraw the' + Orename + 'ores');

Script looks a little basic, but good enough in my opinion, yes

Runescapian321

2008-05-18 11:43:02

IMO it's a bit too basic. All it mainly is is clicking DTMs/colors and some walking. You seem to have a pretty good knowledge of cases and failsafes… I dunno, I'll hold my vote for now.

EDIT: And yeah, quite a few parts of the script could be shortened.

Harry

2008-05-18 12:28:39

I am on the line.


begin
If FindDtm(GoldDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('ore check and we have the gold ore');
end else
begin
withdrawores;
end;
end;
You do NOT need a begin - end for one line. Just use WriteLn('stuff') else OtherStuff.

Also, when you remove ores from the bank, if you lag, it will type the numbers into public chat = you don't withdrawal ore. Don't do that :D Make a DTM of the Enter Amount: thing, or use a if GetColor on it.

Holding vote.

TheChineseMan

2008-05-19 10:46:01

ok guys ive added another script that i just finished hope you like it!

Pure1993

2008-05-19 10:54:14

I'm sorry, but I did a little background check of your posts and threads, and I must say, they didn't convince me at all. sorry. I'll vote no. Good luck.

Runescapian321

2008-05-19 15:42:34

Sorry, I'll have to vote no. The Newt buyer is no better than the first script. Like I said before - all it is is Radialwalks and DTM/Color item finding along with some decent cases. Like Pure, I just looked at your posts, and there's not much to sway my opinion.

Macrosoft

2008-05-19 15:43:33

I still think he seems very dedicated and willing to learn. Very few people write a completely new script during their application time.

TheChineseMan

2008-05-20 08:13:35

yea macrosoft you are rite im really dedicated but my script seems to basic… do you guys have any ideas on what types of things i should add to make my script look better?

Nava2

2008-05-21 19:48:52

Well some errors: (Nothing is meant to be rude, sorry if any is.)

        writeln('yay we made the Steel bars!!');
wait(27000+random(300));

You need to write a better procedure to check that you smelted all the bars. Going for 27s without checking randoms or antiban is a bad thing; asking for a ban. Also, try using some grammar, capitals etc. Also, adding a random 300 to a 27s wait makes no difference you need to add a few seconds more or less, but again its slow.

You declare a bunch of ore dtms and other ones, why don't you declare bar dtms? Also, you need to write a procedure to only declare certain DTMs. That way there is no chance of lag based on too many files. It also make it easier to free the DTMs.

        Writeln('omg we messed up we cant find the furnace!!!!!!');
Players[CurrentPlayer].Active := False; // Set your player to false!!
Players[CurrentPlayer].Loc := 'Walking to there';
LogOut; // Log him out!!
Exit; // Exit the procedure, so it wont continue!!
This seems like someone wrote the procedure for you, explaining and oyu just copied and pasted. How about some credit? or AT LEAST delete the comments

if RadialroadWalk(FindFallyRoadColor,320,300,60,1,1) then
begin
RadialRoadWalk(findfallyRoadColor, 240, 260, 55, 1, 1);
end;

Would this even work? All that this function would do it Find the Fally Road color and click. Then Click Again. So if it doesn't find it the function continues? You need to have a failsafe saying that its lost from there and it cannot find its way to the bank. Also, you should only have to FindFallyRoadColor once. After that, it shouldn't matter. You can just use FallyRoadColor. That way you save ms as well.

procedure checkbar;
begin
begin
If FindDtm(BarDTM, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
WriteLn('bar check and we have the bar');
end else
begin
smeltbars;
end;
end;
end;


You should make sure that the player is on a gametab here. Its a quick function GameTab(4) and it makes sure that the function works. Also, you should change it so all that it does is looks for the bars, maybe make it return a boolean saying if it found them or not? Because if there was a mess up and all of a sudden you are smelting nothing… what now?

procedure bankbars;
Begin
if (not(Loggedin)) then exit;
OpenBankFast('feb');
If BankScreen Then
begin
Deposit(1, 28, True);
Loads := Loads + 1
end;
end;

You can use DepositAll here, unless you are going to implement some variable so that it doesn't deposit all. Also, a much bigger issue; you don't support PINS! Many people have pins on their accounts and you have forgotten to write that into your procedure. The pin procedure is this:

By the way, feel free to use that without crediting.
if PinScreen and (not (Players[CurrentPlayer].Pin = '0000')) then
InPin(Players[CurrentPlayer].Pin);

procedure proggie;
begin
Writeln('[-----The chinese smelter-----] ');
WriteLn('[-----Ran for ' + TimeRunning + '-----] ');
Writeln('[-----Loads done:' + IntToStr(Loads) +' ');
Writeln('-----The chinese smelter----- ');
Writeln(' Made by thechineseman!!!! ');
end;

Not an error, but why do you have all these spaces? They serve no purpose but make the script wider. Try using the Padr command if you want to make cool reports. :)

  repeat
repeat
withdrawores;
checkores;
banktofurnace;
openfurnace;
SmeltBars;
checkbar;
furnacetobank;
bankbars;
proggie;
until (not LoggedIn);
NextPlayer(Players[CurrentPlayer].Active);
until False;

Ugh, make better failsafes. Until(False) is not an acceptable end because it is infinite, as well, until (not LoggedIn) means that it will go until not logged in, no other failsafes. You need to include more; a basic timer would do the trick.

Also, check your standards. If a name of a function is multiple words, separate them with capitals. I know its hard to change now, but for the future. Finally, make sure you call your randoms command MUCH MORE. Randoms occur… RANDOMLY :). They need to be checked very consistantly every few seconds.

Finally, I finish my critique. (Only took about 40 minutes :rolleyes:)

Well, hope you can learn from what I wrote. I am sorry, but its a no from me.

I do believe you are active enough and we will be seeing you soon though. :D

Nava2

nielsie95

2008-05-23 09:48:22

I'm sorry, you're not getting in this time.
You may try again in two weeks, good luck.
Closed.