SRL Archive - S.M.A.R.T. Questions and Answers.

SMART wont start up


Petabanana

2008-02-29 23:59:46

Well SMART was working for a few days until earlier today it was running slow. I closed it and shut down scar. When i reopened scar, SMART didnt load. The scripts work fine but i redownloaded both the newest java and also scar v3.14. I tried opening SMART through a script designed just to open SMART and suceeded once, but the next time i tried it didnt work. Either it gets hung up waiting to open SMART, or the scar window disappears but the process is still running.

Also one more question. Unsigned vs. Signed clients? Is there a large difference to jagex?

Thanks

Iron Man

2008-03-01 04:25:06

Try this

Program New;
{.include SRL/SRL/Misc/SMART.scar}
{.include SRL/SRL.scar}

begin
SmartSetupEx(67, false, false);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;

Wait like 10- 30 seconds for it to load.

Signed gives you a tracking thing called random.dat, so if you auto on your autoer, then go onto your main on a different world or something like that, your main will get banned with your autoer if it gets caught. Unsigned doesn't give that tracking thing.

Petabanana

2008-03-01 10:49:44

Thanks i incorporated that into some of the scripts i use and it works perfectly.
also thanks for the advice on the signed and unsigned clients!

q3ick

2008-03-26 20:19:51

smart wont start up for me either, although i have everything inserted where it should.

Jamiee

2008-03-27 14:01:32

Failed when compiling
Line 40: [Error] (13435:4): period ('.') expected in script C:\Program Files\SCAR 3.14\Scripts\Curserscript.scar

Thats what error I get when I try to run this script.

Any soloutions?

HyperSecret

2008-03-27 14:09:08

lol what script are you using ^^? never seen or heard of 'curserscript' and a '.' expected on line 40? '.' is only expected on the final end of the mainloop.

Solution : POS script/out dated and get a different script that is up-to-date

Jamiee

2008-03-27 14:16:14

:P I changed the script name because I had so many versions of it. It's CursedYOU v1.5 by Cheetahnub.

And what does POS stand for :P As you can tell I'm quite new.

OH And in line 40 of the scripts is end;

(the end of smartsetup.)

mixster

2008-03-27 14:23:42

POS = Possible. For the SmartSetup bit, have you just got

begin
SmartSetup(blah);
etc.
end;
without 'procedure SetupSmart;' (or something similar to SetupSmart), as if you haven't got a procedure bit, then it's because it thinks it's the start of the main loop rather than a procedure.

Jamiee

2008-03-27 14:26:30

I've got this..

begin
SmartSetupEx(82, true, true);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;

HyperSecret

2008-03-27 14:29:24

POS := Piece of Shit

SmartSetupEx(127, false, false);
while not(SmartReady) do Wait(100);
SetTargetDC(SmartGetDC);

that is what i use…autoing on high detail (first false is for low detail) are u serious? also try to auto on unsigned (the 2nd false)

post the whole script in scar tags here and ill help you real quick

Jamiee

2008-03-27 14:33:18

//Script name:  CursedYOU  v1.5

//Author: Cheetahnub

//Thanks to: The Scar Noob (helped me a lot with the first versions)
// Spaztaz666

//Description: ¤Casts Confuse, Weaken, Curse and Crumble Undead.
// ¤Has VERY good Anti-ban features
// ¤Does Anti-randoms
// ¤Has good failsafes
// ¤Has SRL-stats
// ¤Prints proggies

//Instructions: Wear items with the lowest possible mage attack bonus(Full iron, d vambs, no ammy)
// and take your account(s) to a place where you can farshoot monsters such as the
// prison in port sarim.
// If the script doesn't cast any spells, try re-picking the pink color from the spell button.

//Changes from the last version:
// ¤Made the script compatible with scar 3.14 and srl rev 14
// ¤Added DisguiseSCAR
// ¤Added waits to some antibans



program CursedYOU;
{.include SRL/SRL/Misc/SMART.scar}
{.include srl/srl.scar}
{.include srl/srl/skill/magic.scar}


begin
SmartSetupEx(82, false, false);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;

var

//--Booleans--//
MonsterFound :boolean;
CameraAnglee :boolean;

//--Integers--//
xx, xy :integer;
z :integer;
w :integer;
i :integer;
Casted :integer;
TotalCasted :integer;
MonsterCount :integer;
MageLevel :integer;
Active :integer;
AntiRandomTime :integer;
AntiBanTime :integer;
ReportTime :integer;
SearchTries :integer;
Waited :integer;

//--Strings--//
Bar :string;

//---------EDIT THESE-------------//
const
MySRLId = 'Jamiee'; //Fill in your SRL-stats Id And Pass
MySRLPassword = '';

MonsterColor1 = 1386115; //Fill in the monster colors
MonsterColor2 = 1398196; //Fill in the monster colors
MonsterColor3 = 2043277; //Fill in the monster colors

MonsterName1 = 'tz'; //Fill in 3 parts of the monsters name(For example, now we´re shooting monks of zamorak)
MonsterName2 = '-k';
Monstername3 = 'ih';

Compass = 'W'; //Where do you want the compass to point? N=North, E=East, W=West, S=South
RunDirection = 'S'; //Where to run if atatcked? N=North, E=East, W=West, S=South
CameraAngle = 'up'; //What camera angle do you want to use? up or down

TimeToLook = 15; //How many seconds to look for a monster before stopping?
TimeToWait = 60; //How long breaks between each player in seconds? 180-360 RECOMMENDED if you use multiplayer. Use 0-60 if you're using 1 account.
SpeedOfMouse = 9; //The speed of the mouse
FightCaves = True; //Are we in the fight caves?(No randoms in fightcave = no need to look for them)
ShowMageLev = False; //Do you want to show your mage lev in the proggy? False = Less time spent to changing tabs to get the level

Spell = 'Curse'; //What spell do you want to use? Curse, Weaken, Confuse or Crumble Undead
CursePink = 15533737; //Re-pick this pink color from the spell buttons if the script doesn't work(The color is same in all of the f2p-curse spells and crumble)
DoAntiBan = 11000; //How many curses between antibans? 100-200 recommended
//--------------------------------//

//----------SETUP PLAYERS-------------//
procedure DeclarePlayers;
begin

HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'name';
Players[0].Pass := 'password';
Players[0].Nick := 'nick'; // 3-4 letters of username
Players[0].Active := True; // Is the player active?
Players[0].Integers[0] := 11000; //How many curses to do? (DO NOT run the script 24/7 in the fight caves even though it's possible!)

{Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := ''; // 3-4 letters of username
Players[1].Active := True; // Is the player active?
Players[1].Integers[0] := 1000; //How many curses to do?

Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := ''; // 3-4 letters of username
Players[2].Active := True; // Is the player active?
Players[2].Integers[0] := 1000; //How many curses to do? }

end;
//-------------- END OF SETUP ----------------//




//---------DOES IT RIGHTCLICK THE MONSTER?(ANTI-BAN)--------//
Function RightClick :boolean;
begin
z := Random(25)
if z >= 23 then Result := True else Result := False
end;
//------------------------------------------------//

//------------GETTING THE LEVEL----------------//
procedure GetLevel;
begin
GameTab(2);
MageLevel:=GetSkillInfo('Magic', false);
Wait(2345+random(3000))
end;
//------------------------------------------------//

//------------PROGRESS REPORT-------------------//
procedure Proggy;
begin
if ReportTime > 20+random(5+random(10)) then
begin
if (ShowMageLev) then GetLevel;
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ CursedYOU BY CHEETAHNUB ¤');
WriteLn(' ¤ REMEMBER TO POST THE PROGGIE ¤');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ Current player: ' + (Players[CurrentPlayer].name) + '');
WriteLn(' ¤ Ran for ' + (timerunning) + '');
WriteLn(' ¤ Spell: ' + (Spell) + '');
WriteLn(' ¤ Casted ' +IntToStr(TotalCasted)+ ' times');
WriteLn(' ¤ Casted ' +IntToStr(Casted)+ ' times on this character');
WriteLn(' ¤ ' +IntToStr(Players[CurrentPlayer].integers[0] - Casted)+ ' casts left on this character');
if (ShowMageLev) then WriteLn(' ¤ Your magic level is: ' +IntToStr(MageLevel)+ '');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
if MySRLId = '' then Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift');
ReportTime := 0;
end;
end;
//---------------------------------------------------------//

//----------------------MY SIG----------------------------//
procedure MySignature;
begin
Writeln(' _____ _ _ ___ ___ _______ _____ _ _ ___ _ _ _ _____ ')
Writeln(' | ___| | | | | | __| | __| |__ __| | _ | | | | | | \ | | | | | | | _ |')
Writeln(' | | | |_| | | |_ | |_ | | | |_| | | |_| | | |\ \ | | | | | | | |_| |')
Writeln(' | | | _ | | _| | _| | | | _ | | _ | | | \ \ | | | | | | | _ < ')
Writeln(' | |___ | | | | | |_ | |_ | | | | | | | | | | | | \ \| | | |__| | | |_| |')
Writeln(' |_____| |_| |_| |___| |___| |_| |_| |_| |_| |_| |_| \___| |______| |_____|')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
Writeln('- CursedYOU _')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
if MySRLId = '' then
begin
Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift')
TerminateScript;
end;
end;
//---------------------------------------------------//


//------------------------ANTIRANDOMZ--------------//
procedure AntiRandomz;
begin
if AntiRandomTime > 20+random(15) then
begin
AntiRandomTime := 0
if not(FightCaves) then FindInventoryRandoms;
end;
If FindFight then
begin
Writeln('Argh, darn fighting randoms, let´s hope we can run back :/')
RunAway(RunDirection,False,1,2500+random(3500));
FFlag(10);
wait(1000+random(2234));
end;
end;
//-------------------------------------------------//

//-------------------------ANTIBANZ-----------------//
procedure AntiBanz;
begin
if Antibantime > DoAntiBan+random(25) then
begin
Writeln('Doing some antiban :)');
AntiBanTime := 0
case(random(16)) of
0: begin
HoverSkill('Magic',false); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
1: begin
case(random(3)) of
0: Bar := 'volume'; //Changes the sound settings randomly,
1: Bar := 'effect'; //this is something new I think lol
2: Bar := 'area';
end;
SetBar(Bar, random(5));
Wait(random(500))
end;
2: HoverSkill('Magic', False); //Hovers magic
3: begin
HoverSkill('Magic', False); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
4: HoverSkill('Magic', False); //Hovers magic
5: RandomRClick; //boring
6: PickUpMouse; //boring
7: AlmostLogout; //boring
8: RandomMovement; //boring
9: begin
BoredHuman; //Normal BoredHuman + compass to the original setting
Wait(1000+random(500));
MakeCompass(Compass);
end;
10: begin
HoverSkill('Random', False);
case(random(2)) of //Hovers 2 or 3 skills,
0:HoverSkill('Random', False); //can´t get more random than this :D
end;
HoverSkill('Random', False);
end;
11: begin
HoverSkill('Strength', False);
case(random(2)) of //Hovers Melee skills
0:HoverSkill('Attack', False);
end;
HoverSkill('Hitpoints', False);
end;
12: begin
GameTab(1); //"Checks the cb level"
wait(1500+random(1564));
end;
13: begin
HoverSkill('Magic', False); //Hovers magic and Almost logs out
AlmostLogout;
end;
14: begin
HoverSkill('Random', False); //Hovers hovers a random skill + magic
HoverSkill('Magic', False);
end;
15: begin
GameTab(1); //"Checks the cb level" and hovers a random combat skill
case(random(7)) of
0:HoverSkill('Strength', False);
1:HoverSkill('Attack', False);
2:HoverSkill('Defence', False);
3:HoverSkill('Prayer', False);
4:HoverSkill('Hitpoints', False);
5:HoverSkill('Ranged', False);
7:HoverSkill('Magic', False);
end;
end;
16: begin
GameTab(Random(14)+1);
Wait(2000+random(2342));
end;
end;
Writeln('Stopped anti-banning');
end;
end;
//-----------------------------------------------//


//--------------COUNTS SPELLS FOR SRL STATS---------//
procedure CountSpells;
begin
case(Spell) of
'Curse': inc(ReportVars[3]);
'Weaken': inc(ReportVars[2]);
'Confuse': inc(ReportVars[1]);
'Crumble Undead': inc(ReportVars[4]);
end;
inc(ReportVars[0]);
end;
//------------------------------------------------------//


//------------CHECKS IF THERE ARE ENOUGH RUNES----------//
function GotRunes :boolean;
begin
GameTab(7);
case(Spell) of
'Curse': if (GetColor(666, 269) = CursePink) then Result := True;
'Weaken': if (GetColor(570, 258) = CursePink) then Result := True;
'Confuse': if (GetColor(618, 238) = CursePink) then Result := True;
'Crumble Undead': if (GetColor(594, 306) = CursePink) then Result := True;
end;
end;
//--------------------------------------------------//


procedure FindAndShoot;
begin
if SearchTries <= 4 then
begin
GameTab(7);
cast(Spell)
if FindObjCustom(xx, xy,[MonsterName1, MonsterName2, MonsterName3], [MonsterColor1, MonsterColor2, MonsterColor3], 15) then
begin
GetMousePos(xx, xy);
MMouse(xx+random(3)-random(5), xy+random(3)-random(5), 2, 2);
Wait(100+random(100))
case(RightClick) of
True: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, False);
ChooseOption('ast');
Wait(100+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
False: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, True);
Wait(250+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
Wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
end;
end;
end;
end;

//-----------THE CURSE PROCEDURE-----------------//
procedure Curse;
begin
if (not(LoggedIn)) then Exit;
repeat
if (not(LoggedIn)) then Exit;
MarkTime(MonsterCount)
MonsterFound := False;
GotRunes;
if (not(GotRunes)) then
begin
Writeln('You do´nt have enough runes...')
Writeln('Logging out :(')
Break;
end;
repeat
FindAndShoot;
until(MonsterFound) or (TimeFromMark(MonsterCount) >= (TimeToLook*1000))
if TimeFromMark(MonsterCount) >= TimeToLook*1000 then
begin
if SearchTries >= 4 then
begin
Writeln('Didn´t find any monsters! Did you set the colors right?')
Writeln('Logging out :(')
Break;
end else
begin
SearchTries := SearchTries + 1
Writeln('Didn´t find any monsters! The Monster might be respawning.')
Writeln('Waiting for 8-12 seconds, then looking again')
Writeln('Failed finding the monster '+IntToStr(SearchTries)+' times in a row')
repeat
Inc(w)
Wait(1000+random(500))
if not(FightCaves) then FindNonInventoryRandoms;
until(w >= 8)
w := 0
end;
end;
if not(FightCaves) then FindNonInventoryRandoms;
AntiRandomz;
AntiBanz;
SendSRLReport;
Proggy;
until(Casted >= Players[CurrentPlayer].Integers[0] + random(40));
end;
//--------------------------------------------//



//---------CHECKS FOR ACTIVE PLAYERS------------//

procedure ActiveLeft; // Thanks to Spaztaz666 for the idea
begin
for I := 0 To HowManyPlayers - 1 do
begin
if (Players[i].active = True) then inc(Active);
end;
If (Active = 0) then
begin
WriteLn('All Players done :)');
exit;
end;
WriteLn('' + IntToStr(Active) + ' Players Remaining.');
end;
//-------------------------------------------//


//--------PLAYER CHANGING----------------//
procedure ChangePlayer;
begin
Proggy;
Logout;
//BREAK STUFF?
Waited := 0
Writeln('Taking a short antiban break(5-'+IntToStr(TimeToWait+5)+' seconds)')
Wait(random(5000))
Repeat
Wait(5000)
Waited := Waited + 5
Writeln('Waited for '+IntToStr(Waited)+' seconds')
Until(Waited >= TimeToWait)
Writeln('Waited enough, let´s get back to cursing!')
//-----------
NextPlayer(False);
ActiveLeft;
if Active = 0 then Exit;
Wait(3000+random(1234));
MakeCompass(Compass);
SetAngle(CameraAnglee);
end;
//---------------------------------------------//

procedure DisguiseSCAR; //I stole this from HY's caverunner... Hope he won't be mad cos this is a state of the art procedure xD
begin
case Random(11) of
0: Disguise('Windows Live Messenger');
1: Disguise('AVG Free Edition - Control Center');
2: Disguise('RuneScape - the massive online adventure game by Jagex Ltd - Mozilla Firefox');
3: Disguise('Cannot find server - Microsoft Internet Explorer');
4: Disguise('Windows Live Messenger');
5: Disguise('Windows Media Player');
6: Disguise('mIRC');
7: Disguise('iTunes');
8: Disguise('Windows Live Messenger');
9: Disguise('untitled - Paint');
10: Disguise('Windows Live Messenger');
end;
end;

//-------------SETTING IT UP-------------//
procedure SetUp;
begin
ClearDebug;
MySignature;
ScriptID := '468';
SRLid := MySRLId;
SRLpassword := MySRLPassword;
MouseSpeed := SpeedOfMouse + random(2);
DisguiseSCAR;
DeclarePlayers;
ActivateClient;
Wait(5000);
LoginPlayer;
Wait(1000+random(3000));
case(CameraAngle) of
'up', 'Up', 'UP': CameraAnglee := True;
'down', 'Down', 'DOWN': CameraAnglee := False;
end;
SetAngle(CameraAnglee)
MakeCompass(Compass)
end;
//----------------------------------------//


//-------------MAIN LOOP-----------//
begin
SetUpSrl;
SetUp;
repeat
Casted := 0
Proggy;
Curse;
ChangePlayer;
Until(Active = 0)
end.
//----------------------------------//

mixster

2008-03-27 14:36:48

POS = Possibly seemed better suited to that. And I was right - you need to make it into a procedure or add it into the mainloop. Here it is setup as a procedure

//Script name: CursedYOU v1.5

//Author: Cheetahnub

//Thanks to: The Scar Noob (helped me a lot with the first versions)
// Spaztaz666

//Description: ¤Casts Confuse, Weaken, Curse and Crumble Undead.
// ¤Has VERY good Anti-ban features
// ¤Does Anti-randoms
// ¤Has good failsafes
// ¤Has SRL-stats
// ¤Prints proggies

//Instructions: Wear items with the lowest possible mage attack bonus(Full iron, d vambs, no ammy)
// and take your account(s) to a place where you can farshoot monsters such as the
// prison in port sarim.
// If the script doesn't cast any spells, try re-picking the pink color from the spell button.

//Changes from the last version:
// ¤Made the script compatible with scar 3.14 and srl rev 14
// ¤Added DisguiseSCAR
// ¤Added waits to some antibans



program CursedYOU;
{.include SRL/SRL/Misc/SMART.scar}
{.include srl/srl.scar}
{.include srl/srl/skill/magic.scar}

procedure SetupSmart; // added in this line - check the main loop for where it's called
begin
SmartSetupEx(82, false, false);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;

var

//--Booleans--//
MonsterFound :boolean;
CameraAnglee :boolean;

//--Integers--//
xx, xy :integer;
z :integer;
w :integer;
i :integer;
Casted :integer;
TotalCasted :integer;
MonsterCount :integer;
MageLevel :integer;
Active :integer;
AntiRandomTime :integer;
AntiBanTime :integer;
ReportTime :integer;
SearchTries :integer;
Waited :integer;

//--Strings--//
Bar :string;

//---------EDIT THESE-------------//
const
MySRLId = 'Jamiee'; //Fill in your SRL-stats Id And Pass
MySRLPassword = '';

MonsterColor1 = 1386115; //Fill in the monster colors
MonsterColor2 = 1398196; //Fill in the monster colors
MonsterColor3 = 2043277; //Fill in the monster colors

MonsterName1 = 'tz'; //Fill in 3 parts of the monsters name(For example, now we´re shooting monks of zamorak)
MonsterName2 = '-k';
Monstername3 = 'ih';

Compass = 'W'; //Where do you want the compass to point? N=North, E=East, W=West, S=South
RunDirection = 'S'; //Where to run if atatcked? N=North, E=East, W=West, S=South
CameraAngle = 'up'; //What camera angle do you want to use? up or down

TimeToLook = 15; //How many seconds to look for a monster before stopping?
TimeToWait = 60; //How long breaks between each player in seconds? 180-360 RECOMMENDED if you use multiplayer. Use 0-60 if you're using 1 account.
SpeedOfMouse = 9; //The speed of the mouse
FightCaves = True; //Are we in the fight caves?(No randoms in fightcave = no need to look for them)
ShowMageLev = False; //Do you want to show your mage lev in the proggy? False = Less time spent to changing tabs to get the level

Spell = 'Curse'; //What spell do you want to use? Curse, Weaken, Confuse or Crumble Undead
CursePink = 15533737; //Re-pick this pink color from the spell buttons if the script doesn't work(The color is same in all of the f2p-curse spells and crumble)
DoAntiBan = 11000; //How many curses between antibans? 100-200 recommended
//--------------------------------//

//----------SETUP PLAYERS-------------//
procedure DeclarePlayers;
begin

HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'name';
Players[0].Pass := 'password';
Players[0].Nick := 'nick'; // 3-4 letters of username
Players[0].Active := True; // Is the player active?
Players[0].Integers[0] := 11000; //How many curses to do? (DO NOT run the script 24/7 in the fight caves even though it's possible!)

{Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := ''; // 3-4 letters of username
Players[1].Active := True; // Is the player active?
Players[1].Integers[0] := 1000; //How many curses to do?

Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := ''; // 3-4 letters of username
Players[2].Active := True; // Is the player active?
Players[2].Integers[0] := 1000; //How many curses to do? }

end;
//-------------- END OF SETUP ----------------//




//---------DOES IT RIGHTCLICK THE MONSTER?(ANTI-BAN)--------//
Function RightClick :boolean;
begin
z := Random(25)
if z >= 23 then Result := True else Result := False
end;
//------------------------------------------------//

//------------GETTING THE LEVEL----------------//
procedure GetLevel;
begin
GameTab(2);
MageLevel:=GetSkillInfo('Magic', false);
Wait(2345+random(3000))
end;
//------------------------------------------------//

//------------PROGRESS REPORT-------------------//
procedure Proggy;
begin
if ReportTime > 20+random(5+random(10)) then
begin
if (ShowMageLev) then GetLevel;
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ CursedYOU BY CHEETAHNUB ¤');
WriteLn(' ¤ REMEMBER TO POST THE PROGGIE ¤');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ Current player: ' + (Players[CurrentPlayer].name) + '');
WriteLn(' ¤ Ran for ' + (timerunning) + '');
WriteLn(' ¤ Spell: ' + (Spell) + '');
WriteLn(' ¤ Casted ' +IntToStr(TotalCasted)+ ' times');
WriteLn(' ¤ Casted ' +IntToStr(Casted)+ ' times on this character');
WriteLn(' ¤ ' +IntToStr(Players[CurrentPlayer].integers[0] - Casted)+ ' casts left on this character');
if (ShowMageLev) then WriteLn(' ¤ Your magic level is: ' +IntToStr(MageLevel)+ '');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
if MySRLId = '' then Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift');
ReportTime := 0;
end;
end;
//---------------------------------------------------------//

//----------------------MY SIG----------------------------//
procedure MySignature;
begin
Writeln(' _____ _ _ ___ ___ _______ _____ _ _ ___ _ _ _ _____ ')
Writeln(' | ___| | | | | | __| | __| |__ __| | _ | | | | | | \ | | | | | | | _ |')
Writeln(' | | | |_| | | |_ | |_ | | | |_| | | |_| | | |\ \ | | | | | | | |_| |')
Writeln(' | | | _ | | _| | _| | | | _ | | _ | | | \ \ | | | | | | | _ < ')
Writeln(' | |___ | | | | | |_ | |_ | | | | | | | | | | | | \ \| | | |__| | | |_| |')
Writeln(' |_____| |_| |_| |___| |___| |_| |_| |_| |_| |_| |_| \___| |______| |_____|')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
Writeln('- CursedYOU _')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
if MySRLId = '' then
begin
Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift')
TerminateScript;
end;
end;
//---------------------------------------------------//


//------------------------ANTIRANDOMZ--------------//
procedure AntiRandomz;
begin
if AntiRandomTime > 20+random(15) then
begin
AntiRandomTime := 0
if not(FightCaves) then FindInventoryRandoms;
end;
If FindFight then
begin
Writeln('Argh, darn fighting randoms, let´s hope we can run back :/')
RunAway(RunDirection,False,1,2500+random(3500));
FFlag(10);
wait(1000+random(2234));
end;
end;
//-------------------------------------------------//

//-------------------------ANTIBANZ-----------------//
procedure AntiBanz;
begin
if Antibantime > DoAntiBan+random(25) then
begin
Writeln('Doing some antiban :)');
AntiBanTime := 0
case(random(16)) of
0: begin
HoverSkill('Magic',false); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
1: begin
case(random(3)) of
0: Bar := 'volume'; //Changes the sound settings randomly,
1: Bar := 'effect'; //this is something new I think lol
2: Bar := 'area';
end;
SetBar(Bar, random(5));
Wait(random(500))
end;
2: HoverSkill('Magic', False); //Hovers magic
3: begin
HoverSkill('Magic', False); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
4: HoverSkill('Magic', False); //Hovers magic
5: RandomRClick; //boring
6: PickUpMouse; //boring
7: AlmostLogout; //boring
8: RandomMovement; //boring
9: begin
BoredHuman; //Normal BoredHuman + compass to the original setting
Wait(1000+random(500));
MakeCompass(Compass);
end;
10: begin
HoverSkill('Random', False);
case(random(2)) of //Hovers 2 or 3 skills,
0:HoverSkill('Random', False); //can´t get more random than this :D
end;
HoverSkill('Random', False);
end;
11: begin
HoverSkill('Strength', False);
case(random(2)) of //Hovers Melee skills
0:HoverSkill('Attack', False);
end;
HoverSkill('Hitpoints', False);
end;
12: begin
GameTab(1); //"Checks the cb level"
wait(1500+random(1564));
end;
13: begin
HoverSkill('Magic', False); //Hovers magic and Almost logs out
AlmostLogout;
end;
14: begin
HoverSkill('Random', False); //Hovers hovers a random skill + magic
HoverSkill('Magic', False);
end;
15: begin
GameTab(1); //"Checks the cb level" and hovers a random combat skill
case(random(7)) of
0:HoverSkill('Strength', False);
1:HoverSkill('Attack', False);
2:HoverSkill('Defence', False);
3:HoverSkill('Prayer', False);
4:HoverSkill('Hitpoints', False);
5:HoverSkill('Ranged', False);
7:HoverSkill('Magic', False);
end;
end;
16: begin
GameTab(Random(14)+1);
Wait(2000+random(2342));
end;
end;
Writeln('Stopped anti-banning');
end;
end;
//-----------------------------------------------//


//--------------COUNTS SPELLS FOR SRL STATS---------//
procedure CountSpells;
begin
case(Spell) of
'Curse': inc(ReportVars[3]);
'Weaken': inc(ReportVars[2]);
'Confuse': inc(ReportVars[1]);
'Crumble Undead': inc(ReportVars[4]);
end;
inc(ReportVars[0]);
end;
//------------------------------------------------------//


//------------CHECKS IF THERE ARE ENOUGH RUNES----------//
function GotRunes :boolean;
begin
GameTab(7);
case(Spell) of
'Curse': if (GetColor(666, 269) = CursePink) then Result := True;
'Weaken': if (GetColor(570, 258) = CursePink) then Result := True;
'Confuse': if (GetColor(618, 238) = CursePink) then Result := True;
'Crumble Undead': if (GetColor(594, 306) = CursePink) then Result := True;
end;
end;
//--------------------------------------------------//


procedure FindAndShoot;
begin
if SearchTries <= 4 then
begin
GameTab(7);
cast(Spell)
if FindObjCustom(xx, xy,[MonsterName1, MonsterName2, MonsterName3], [MonsterColor1, MonsterColor2, MonsterColor3], 15) then
begin
GetMousePos(xx, xy);
MMouse(xx+random(3)-random(5), xy+random(3)-random(5), 2, 2);
Wait(100+random(100))
case(RightClick) of
True: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, False);
ChooseOption('ast');
Wait(100+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
False: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, True);
Wait(250+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
Wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
end;
end;
end;
end;

//-----------THE CURSE PROCEDURE-----------------//
procedure Curse;
begin
if (not(LoggedIn)) then Exit;
repeat
if (not(LoggedIn)) then Exit;
MarkTime(MonsterCount)
MonsterFound := False;
GotRunes;
if (not(GotRunes)) then
begin
Writeln('You do´nt have enough runes...')
Writeln('Logging out :(')
Break;
end;
repeat
FindAndShoot;
until(MonsterFound) or (TimeFromMark(MonsterCount) >= (TimeToLook*1000))
if TimeFromMark(MonsterCount) >= TimeToLook*1000 then
begin
if SearchTries >= 4 then
begin
Writeln('Didn´t find any monsters! Did you set the colors right?')
Writeln('Logging out :(')
Break;
end else
begin
SearchTries := SearchTries + 1
Writeln('Didn´t find any monsters! The Monster might be respawning.')
Writeln('Waiting for 8-12 seconds, then looking again')
Writeln('Failed finding the monster '+IntToStr(SearchTries)+' times in a row')
repeat
Inc(w)
Wait(1000+random(500))
if not(FightCaves) then FindNonInventoryRandoms;
until(w >= 8)
w := 0
end;
end;
if not(FightCaves) then FindNonInventoryRandoms;
AntiRandomz;
AntiBanz;
SendSRLReport;
Proggy;
until(Casted >= Players[CurrentPlayer].Integers[0] + random(40));
end;
//--------------------------------------------//



//---------CHECKS FOR ACTIVE PLAYERS------------//

procedure ActiveLeft; // Thanks to Spaztaz666 for the idea
begin
for I := 0 To HowManyPlayers - 1 do
begin
if (Players[i].active = True) then inc(Active);
end;
If (Active = 0) then
begin
WriteLn('All Players done :)');
exit;
end;
WriteLn('' + IntToStr(Active) + ' Players Remaining.');
end;
//-------------------------------------------//


//--------PLAYER CHANGING----------------//
procedure ChangePlayer;
begin
Proggy;
Logout;
//BREAK STUFF?
Waited := 0
Writeln('Taking a short antiban break(5-'+IntToStr(TimeToWait+5)+' seconds)')
Wait(random(5000))
Repeat
Wait(5000)
Waited := Waited + 5
Writeln('Waited for '+IntToStr(Waited)+' seconds')
Until(Waited >= TimeToWait)
Writeln('Waited enough, let´s get back to cursing!')
//-----------
NextPlayer(False);
ActiveLeft;
if Active = 0 then Exit;
Wait(3000+random(1234));
MakeCompass(Compass);
SetAngle(CameraAnglee);
end;
//---------------------------------------------//

procedure DisguiseSCAR; //I stole this from HY's caverunner... Hope he won't be mad cos this is a state of the art procedure xD
begin
case Random(11) of
0: Disguise('Windows Live Messenger');
1: Disguise('AVG Free Edition - Control Center');
2: Disguise('RuneScape - the massive online adventure game by Jagex Ltd - Mozilla Firefox');
3: Disguise('Cannot find server - Microsoft Internet Explorer');
4: Disguise('Windows Live Messenger');
5: Disguise('Windows Media Player');
6: Disguise('mIRC');
7: Disguise('iTunes');
8: Disguise('Windows Live Messenger');
9: Disguise('untitled - Paint');
10: Disguise('Windows Live Messenger');
end;
end;

//-------------SETTING IT UP-------------//
procedure SetUp;
begin
ClearDebug;
MySignature;
ScriptID := '468';
SRLid := MySRLId;
SRLpassword := MySRLPassword;
MouseSpeed := SpeedOfMouse + random(2);
DisguiseSCAR;
DeclarePlayers;
ActivateClient;
Wait(5000);
LoginPlayer;
Wait(1000+random(3000));
case(CameraAngle) of
'up', 'Up', 'UP': CameraAnglee := True;
'down', 'Down', 'DOWN': CameraAnglee := False;
end;
SetAngle(CameraAnglee)
MakeCompass(Compass)
end;
//----------------------------------------//


//-------------MAIN LOOP-----------//
begin
SetUpSrl;
SetUpSmart;
SetUp;
repeat
Casted := 0
Proggy;
Curse;
ChangePlayer;
Until(Active = 0)
end.
//----------------------------------//


Jamiee

2008-03-27 14:38:43

Thanks, I'll check it now.

EDIT: Still not working.. I don't get any errors but it says running script and nothing starts.

HyperSecret

2008-03-27 14:39:43

From: mixster05
POS = Possibly seemed better suited to that. And I was right - you need to make it into a procedure or add it into the mainloop. Here it is setup as a procedure

//Script name: CursedYOU v1.5

//Author: Cheetahnub

//Thanks to: The Scar Noob (helped me a lot with the first versions)
// Spaztaz666

//Description: ¤Casts Confuse, Weaken, Curse and Crumble Undead.
// ¤Has VERY good Anti-ban features
// ¤Does Anti-randoms
// ¤Has good failsafes
// ¤Has SRL-stats
// ¤Prints proggies

//Instructions: Wear items with the lowest possible mage attack bonus(Full iron, d vambs, no ammy)
// and take your account(s) to a place where you can farshoot monsters such as the
// prison in port sarim.
// If the script doesn't cast any spells, try re-picking the pink color from the spell button.

//Changes from the last version:
// ¤Made the script compatible with scar 3.14 and srl rev 14
// ¤Added DisguiseSCAR
// ¤Added waits to some antibans



program CursedYOU;
{.include SRL/SRL/Misc/SMART.scar}
{.include srl/srl.scar}
{.include srl/srl/skill/magic.scar}

procedure SetupSmart; // added in this line - check the main loop for where it's called
begin
SmartSetupEx(82, false, false);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;

var

//--Booleans--//
MonsterFound :boolean;
CameraAnglee :boolean;

//--Integers--//
xx, xy :integer;
z :integer;
w :integer;
i :integer;
Casted :integer;
TotalCasted :integer;
MonsterCount :integer;
MageLevel :integer;
Active :integer;
AntiRandomTime :integer;
AntiBanTime :integer;
ReportTime :integer;
SearchTries :integer;
Waited :integer;

//--Strings--//
Bar :string;

//---------EDIT THESE-------------//
const
MySRLId = 'Jamiee'; //Fill in your SRL-stats Id And Pass
MySRLPassword = '';

MonsterColor1 = 1386115; //Fill in the monster colors
MonsterColor2 = 1398196; //Fill in the monster colors
MonsterColor3 = 2043277; //Fill in the monster colors

MonsterName1 = 'tz'; //Fill in 3 parts of the monsters name(For example, now we´re shooting monks of zamorak)
MonsterName2 = '-k';
Monstername3 = 'ih';

Compass = 'W'; //Where do you want the compass to point? N=North, E=East, W=West, S=South
RunDirection = 'S'; //Where to run if atatcked? N=North, E=East, W=West, S=South
CameraAngle = 'up'; //What camera angle do you want to use? up or down

TimeToLook = 15; //How many seconds to look for a monster before stopping?
TimeToWait = 60; //How long breaks between each player in seconds? 180-360 RECOMMENDED if you use multiplayer. Use 0-60 if you're using 1 account.
SpeedOfMouse = 9; //The speed of the mouse
FightCaves = True; //Are we in the fight caves?(No randoms in fightcave = no need to look for them)
ShowMageLev = False; //Do you want to show your mage lev in the proggy? False = Less time spent to changing tabs to get the level

Spell = 'Curse'; //What spell do you want to use? Curse, Weaken, Confuse or Crumble Undead
CursePink = 15533737; //Re-pick this pink color from the spell buttons if the script doesn't work(The color is same in all of the f2p-curse spells and crumble)
DoAntiBan = 11000; //How many curses between antibans? 100-200 recommended
//--------------------------------//

//----------SETUP PLAYERS-------------//
procedure DeclarePlayers;
begin

HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'name';
Players[0].Pass := 'password';
Players[0].Nick := 'nick'; // 3-4 letters of username
Players[0].Active := True; // Is the player active?
Players[0].Integers[0] := 11000; //How many curses to do? (DO NOT run the script 24/7 in the fight caves even though it's possible!)

{Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := ''; // 3-4 letters of username
Players[1].Active := True; // Is the player active?
Players[1].Integers[0] := 1000; //How many curses to do?

Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := ''; // 3-4 letters of username
Players[2].Active := True; // Is the player active?
Players[2].Integers[0] := 1000; //How many curses to do? }

end;
//-------------- END OF SETUP ----------------//




//---------DOES IT RIGHTCLICK THE MONSTER?(ANTI-BAN)--------//
Function RightClick :boolean;
begin
z := Random(25)
if z >= 23 then Result := True else Result := False
end;
//------------------------------------------------//

//------------GETTING THE LEVEL----------------//
procedure GetLevel;
begin
GameTab(2);
MageLevel:=GetSkillInfo('Magic', false);
Wait(2345+random(3000))
end;
//------------------------------------------------//

//------------PROGRESS REPORT-------------------//
procedure Proggy;
begin
if ReportTime > 20+random(5+random(10)) then
begin
if (ShowMageLev) then GetLevel;
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ CursedYOU BY CHEETAHNUB ¤');
WriteLn(' ¤ REMEMBER TO POST THE PROGGIE ¤');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
WriteLn(' ¤ Current player: ' + (Players[CurrentPlayer].name) + '');
WriteLn(' ¤ Ran for ' + (timerunning) + '');
WriteLn(' ¤ Spell: ' + (Spell) + '');
WriteLn(' ¤ Casted ' +IntToStr(TotalCasted)+ ' times');
WriteLn(' ¤ Casted ' +IntToStr(Casted)+ ' times on this character');
WriteLn(' ¤ ' +IntToStr(Players[CurrentPlayer].integers[0] - Casted)+ ' casts left on this character');
if (ShowMageLev) then WriteLn(' ¤ Your magic level is: ' +IntToStr(MageLevel)+ '');
WriteLn(' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤');
if MySRLId = '' then Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift');
ReportTime := 0;
end;
end;
//---------------------------------------------------------//

//----------------------MY SIG----------------------------//
procedure MySignature;
begin
Writeln(' _____ _ _ ___ ___ _______ _____ _ _ ___ _ _ _ _____ ')
Writeln(' | ___| | | | | | __| | __| |__ __| | _ | | | | | | \ | | | | | | | _ |')
Writeln(' | | | |_| | | |_ | |_ | | | |_| | | |_| | | |\ \ | | | | | | | |_| |')
Writeln(' | | | _ | | _| | _| | | | _ | | _ | | | \ \ | | | | | | | _ < ')
Writeln(' | |___ | | | | | |_ | |_ | | | | | | | | | | | | \ \| | | |__| | | |_| |')
Writeln(' |_____| |_| |_| |___| |___| |_| |_| |_| |_| |_| |_| \___| |______| |_____|')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
Writeln('- CursedYOU _')
Writeln('-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._.-._')
if MySRLId = '' then
begin
Writeln('OMG LEECHER GO GET SRL STATS OMG!!!!!!!!!1111oneone+shift')
TerminateScript;
end;
end;
//---------------------------------------------------//


//------------------------ANTIRANDOMZ--------------//
procedure AntiRandomz;
begin
if AntiRandomTime > 20+random(15) then
begin
AntiRandomTime := 0
if not(FightCaves) then FindInventoryRandoms;
end;
If FindFight then
begin
Writeln('Argh, darn fighting randoms, let´s hope we can run back :/')
RunAway(RunDirection,False,1,2500+random(3500));
FFlag(10);
wait(1000+random(2234));
end;
end;
//-------------------------------------------------//

//-------------------------ANTIBANZ-----------------//
procedure AntiBanz;
begin
if Antibantime > DoAntiBan+random(25) then
begin
Writeln('Doing some antiban :)');
AntiBanTime := 0
case(random(16)) of
0: begin
HoverSkill('Magic',false); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
1: begin
case(random(3)) of
0: Bar := 'volume'; //Changes the sound settings randomly,
1: Bar := 'effect'; //this is something new I think lol
2: Bar := 'area';
end;
SetBar(Bar, random(5));
Wait(random(500))
end;
2: HoverSkill('Magic', False); //Hovers magic
3: begin
HoverSkill('Magic', False); //Hovers magic and changes gametab
GameTab(random(14)+1);
Wait(666+random(1666));
end;
4: HoverSkill('Magic', False); //Hovers magic
5: RandomRClick; //boring
6: PickUpMouse; //boring
7: AlmostLogout; //boring
8: RandomMovement; //boring
9: begin
BoredHuman; //Normal BoredHuman + compass to the original setting
Wait(1000+random(500));
MakeCompass(Compass);
end;
10: begin
HoverSkill('Random', False);
case(random(2)) of //Hovers 2 or 3 skills,
0:HoverSkill('Random', False); //can´t get more random than this :D
end;
HoverSkill('Random', False);
end;
11: begin
HoverSkill('Strength', False);
case(random(2)) of //Hovers Melee skills
0:HoverSkill('Attack', False);
end;
HoverSkill('Hitpoints', False);
end;
12: begin
GameTab(1); //"Checks the cb level"
wait(1500+random(1564));
end;
13: begin
HoverSkill('Magic', False); //Hovers magic and Almost logs out
AlmostLogout;
end;
14: begin
HoverSkill('Random', False); //Hovers hovers a random skill + magic
HoverSkill('Magic', False);
end;
15: begin
GameTab(1); //"Checks the cb level" and hovers a random combat skill
case(random(7)) of
0:HoverSkill('Strength', False);
1:HoverSkill('Attack', False);
2:HoverSkill('Defence', False);
3:HoverSkill('Prayer', False);
4:HoverSkill('Hitpoints', False);
5:HoverSkill('Ranged', False);
7:HoverSkill('Magic', False);
end;
end;
16: begin
GameTab(Random(14)+1);
Wait(2000+random(2342));
end;
end;
Writeln('Stopped anti-banning');
end;
end;
//-----------------------------------------------//


//--------------COUNTS SPELLS FOR SRL STATS---------//
procedure CountSpells;
begin
case(Spell) of
'Curse': inc(ReportVars[3]);
'Weaken': inc(ReportVars[2]);
'Confuse': inc(ReportVars[1]);
'Crumble Undead': inc(ReportVars[4]);
end;
inc(ReportVars[0]);
end;
//------------------------------------------------------//


//------------CHECKS IF THERE ARE ENOUGH RUNES----------//
function GotRunes :boolean;
begin
GameTab(7);
case(Spell) of
'Curse': if (GetColor(666, 269) = CursePink) then Result := True;
'Weaken': if (GetColor(570, 258) = CursePink) then Result := True;
'Confuse': if (GetColor(618, 238) = CursePink) then Result := True;
'Crumble Undead': if (GetColor(594, 306) = CursePink) then Result := True;
end;
end;
//--------------------------------------------------//


procedure FindAndShoot;
begin
if SearchTries <= 4 then
begin
GameTab(7);
cast(Spell)
if FindObjCustom(xx, xy,[MonsterName1, MonsterName2, MonsterName3], [MonsterColor1, MonsterColor2, MonsterColor3], 15) then
begin
GetMousePos(xx, xy);
MMouse(xx+random(3)-random(5), xy+random(3)-random(5), 2, 2);
Wait(100+random(100))
case(RightClick) of
True: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, False);
ChooseOption('ast');
Wait(100+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
False: begin
if IsUptext(MonsterName1) or IsUptext(MonsterName2) or IsUptext(MonsterName3) then
begin
GetMousePos(xx, xy);
Mouse(xx, xy, 1, 1, True);
Wait(250+random(250))
MonsterFound := True;
Inc(Casted)
Inc(TotalCasted)
Inc(AntiRandomTime)
Inc(AntiBanTime)
Inc(ReportTime)
if not(FightCaves) then FindNonInventoryRandoms;
Wait(200+random(200));
AntiRandomz;
CountSpells;
SearchTries := 0
end;
end;
end;
end;
end;
end;

//-----------THE CURSE PROCEDURE-----------------//
procedure Curse;
begin
if (not(LoggedIn)) then Exit;
repeat
if (not(LoggedIn)) then Exit;
MarkTime(MonsterCount)
MonsterFound := False;
GotRunes;
if (not(GotRunes)) then
begin
Writeln('You do´nt have enough runes...')
Writeln('Logging out :(')
Break;
end;
repeat
FindAndShoot;
until(MonsterFound) or (TimeFromMark(MonsterCount) >= (TimeToLook*1000))
if TimeFromMark(MonsterCount) >= TimeToLook*1000 then
begin
if SearchTries >= 4 then
begin
Writeln('Didn´t find any monsters! Did you set the colors right?')
Writeln('Logging out :(')
Break;
end else
begin
SearchTries := SearchTries + 1
Writeln('Didn´t find any monsters! The Monster might be respawning.')
Writeln('Waiting for 8-12 seconds, then looking again')
Writeln('Failed finding the monster '+IntToStr(SearchTries)+' times in a row')
repeat
Inc(w)
Wait(1000+random(500))
if not(FightCaves) then FindNonInventoryRandoms;
until(w >= 8)
w := 0
end;
end;
if not(FightCaves) then FindNonInventoryRandoms;
AntiRandomz;
AntiBanz;
SendSRLReport;
Proggy;
until(Casted >= Players[CurrentPlayer].Integers[0] + random(40));
end;
//--------------------------------------------//



//---------CHECKS FOR ACTIVE PLAYERS------------//

procedure ActiveLeft; // Thanks to Spaztaz666 for the idea
begin
for I := 0 To HowManyPlayers - 1 do
begin
if (Players[i].active = True) then inc(Active);
end;
If (Active = 0) then
begin
WriteLn('All Players done :)');
exit;
end;
WriteLn('' + IntToStr(Active) + ' Players Remaining.');
end;
//-------------------------------------------//


//--------PLAYER CHANGING----------------//
procedure ChangePlayer;
begin
Proggy;
Logout;
//BREAK STUFF?
Waited := 0
Writeln('Taking a short antiban break(5-'+IntToStr(TimeToWait+5)+' seconds)')
Wait(random(5000))
Repeat
Wait(5000)
Waited := Waited + 5
Writeln('Waited for '+IntToStr(Waited)+' seconds')
Until(Waited >= TimeToWait)
Writeln('Waited enough, let´s get back to cursing!')
//-----------
NextPlayer(False);
ActiveLeft;
if Active = 0 then Exit;
Wait(3000+random(1234));
MakeCompass(Compass);
SetAngle(CameraAnglee);
end;
//---------------------------------------------//

procedure DisguiseSCAR; //I stole this from HY's caverunner... Hope he won't be mad cos this is a state of the art procedure xD
begin
case Random(11) of
0: Disguise('Windows Live Messenger');
1: Disguise('AVG Free Edition - Control Center');
2: Disguise('RuneScape - the massive online adventure game by Jagex Ltd - Mozilla Firefox');
3: Disguise('Cannot find server - Microsoft Internet Explorer');
4: Disguise('Windows Live Messenger');
5: Disguise('Windows Media Player');
6: Disguise('mIRC');
7: Disguise('iTunes');
8: Disguise('Windows Live Messenger');
9: Disguise('untitled - Paint');
10: Disguise('Windows Live Messenger');
end;
end;

//-------------SETTING IT UP-------------//
procedure SetUp;
begin
ClearDebug;
MySignature;
ScriptID := '468';
SRLid := MySRLId;
SRLpassword := MySRLPassword;
MouseSpeed := SpeedOfMouse + random(2);
DisguiseSCAR;
DeclarePlayers;
ActivateClient;
Wait(5000);
LoginPlayer;
Wait(1000+random(3000));
case(CameraAngle) of
'up', 'Up', 'UP': CameraAnglee := True;
'down', 'Down', 'DOWN': CameraAnglee := False;
end;
SetAngle(CameraAnglee)
MakeCompass(Compass)
end;
//----------------------------------------//


//-------------MAIN LOOP-----------//
begin
SetUpSrl;
SetUpSmart;
SetUp;
repeat
Casted := 0
Proggy;
Curse;
ChangePlayer;
Until(Active = 0)
end.
//----------------------------------//



one things, SMART MUST MUST be called before SetupSRL; so your mainloop should be

begin
SetUpSmart;
SetUpSrl;
SetUp;
repeat
Casted := 0
Proggy;
Curse;
ChangePlayer;
Until(Active = 0)
end.

mixster

2008-03-27 14:44:27

It only has to be included first - I always setup SRL first and it works fine. Have you definately got the latest Java? Should be something like 1.6

Jamiee

2008-03-27 14:57:54

Yep, definetly got the latest Java.
This error now.
 Line 505: [Error] (13900:1): Unknown identifier 'SetUpSmart' in script C:\Program Files\SCAR 3.14\Scripts\Curserscript.scar