SRL Archive - RS3 Outdated / Broken Scripts

[SRL 4] Mat's Chaos Boner


mat_de_b

2007-08-28 12:27:13

v1.0 Should be quite stable but in need of further testing so we'll see I thought I would post it before I went out, so good luck :D


Run at the chaos altar in the wilderness
Picks up bones and buries them

USE SCSS + SRL 4 + SCAR DIVI 3.11


Features:
Logs out if it finds another player and switches world
Finds the Closest bone
Checks for antirandoms and fights
Checks to see if your in the right place
Attempted Multiplayer

To do
Make sure the Multiplayer works
Increase the bone finding precision


RunDirection := 'n' // Direction to run away from Fight
HowMany := 112; // How many bones to bury per person
BonesColor := 13355985; // color of the bone


Please leave feedback

wear all ded

2007-09-01 01:34:57

w00t first post?

gerauchert

2007-09-01 01:40:01

looks like a pretty solid script

keep up the good work ;)

mat_de_b

2007-09-01 10:45:08

Thanks

Harry

2007-09-01 10:47:23

Hmmm… how about hving it bone in the edgy dungeons?

mat_de_b

2007-09-01 11:49:50

where by the giants?

NxTitle

2007-09-02 09:52:30

Wow, looks like a very good script, very solid.

Although, I read the title differently, which probably isn't a good thing… :p

ShowerThoughts

2007-09-02 09:59:59

omg w00t
dude look at this its not working but..
i made this with chris a month ago

ehm i am kotsz that was the first thought of my username i fild in the wrong box :duh:

lol this one is 2 times bigger but not working:( ..
////////////////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
////////////////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k k k k k k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k k kk kk ooo tttttttttt k k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kk kk o o tt ssssssss k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kk kk o o tt s zzzzzzzzz k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kkkk o o tt s zz k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kk kk o o tt sssss zz k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kk kk o o tt s zz k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k kk kk o o tt s zz k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k k kk kk o o tt ssssssss zzzzzzzzz k k\\\\\\\\\\\\\\\\\\\\\\
////////////////////////k k k ooo k k k\\\\\\\\\\\\\\\\\\\\\\
//////////////////////// PRAYER LEVELER V.1 \\\\\\\\\\\\\\\\\\\\\\
////////////////////////////////////////////////// \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
/////////////////////////////////////////////////instructions\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ /////////////////////
////////////////////////1.fill in setup lines 39-46 and drag the croshair on runescape\\\\\\\\\\\\\\\\\\\\\\
////////////////////////2.use normal runescape client on low detail. \\\\\\\\\\\\\\\\\\\\\\
////////////////////////3.use runescape on v-bright \\\\\\\\\\\\\\\\\\\\\\
////////////////////////4.start logged in or out \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// credits to itschris917 \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// THIS SCRIPT IS MADE TO GET BONES AND BURY BONES FROM THE \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// GROUND AT THE CHAOSALTAR IN LEVEL 13 IN THE WILDY \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// DONT TRY TO USE THIS SCRIPT ON OTHER PLACES \\\\\\\\\\\\\\\\\\\\\\
//////////////////////// PLS POST BUGS/PROGGY,S ON MY THREAD \\\\\\\\\\\\\\\\\\\\\\
///////////////////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
///////////////////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\




program KotszPrayerLeveler;
{.include SRL/SRL.scar}
{.include SRL/SRL/misc/trade.scar}
{.include SRL/SRL/Misc/Wilderness.scar}
{.include SRL/SRL\Misc/worldswitcher.scar}
{.include SRL/SRL\extended/xantiban.scar}
{.include SRL/SRL\extended/xautotalk.scar}
//setup
const


NumberOfUsers = 1; // = player [NUMBER] + 1 =? fill the ? in here
StartingPlayer = 0;//Player to start
HowMuchAntiBan= 5;//(recommend)let this.lesser number is lesser antiban 1-5 (choice of numbers)
Red = 241;//Color of the red dot on MM.
MaxLoadTime = 10;//Maximum time in minutes per load.

Var
StartPlayer, Loads, NormalRandomsTime, FastRandomsTime, FindTalkTime, MyMark, FallyBuildingColor, buried : integer;
Var
Bone, BonePickup :integer;
Var
xp :extended;


Procedure DeclarePlayers;
Begin
StartPlayer := StartingPlayer;
NumberOfPlayers( NumberOfUsers );
CurrentPlayer := StartPlayer;

Players[0].Name :='username';
Players[0].Pass :='password';
Players[0].Nick :='nickname';
Players[0].Loc :='chaosaltar';
Players[0].Integer1 := 2;//Number of loads you want to do.
Players[0].Active:=True;

Writeln( IntToStr ( NumberOfUsers ) + ' Players' );
End;





Procedure ChangeLocation(Location:string);
begin
Players[CurrentPlayer].Loc := location;
end;
///big change world function made by me and chris

function SelectWorld1(Which: String; RandomWorld:Boolean): Boolean;
var
i, z, worldclick: Integer;
begin
For z:= 0 to 5 do
begin
SetupWorldSwitcher;
if not WelcomeToRuneScape then
begin
Result := False;
Exit
end;
ClickWorldSwitchButton;
OrderBy('type', 'up');
Wait(1000);
GetWorldRecord;
// ReadOutRecord;
if Which = 'members' then
for i := 5 to 65 -1 do
begin
Case RandomWorld Of
True : Begin
Mouse(Worlds[i+Random(59)].X, Worlds[i+Random(59)].Y, 0, 0, True);
Result := True;
MarkTime(worldclick);
Repeat
Wait(100);
Until(WelcomeToRunescape) OR (TimeFromMark(worldclick) >= 60000);
Exit;
End;

False : Begin
Mouse(Worlds[i].X, Worlds[i].Y, 0, 0, True);
Result := True;
MarkTime(worldclick);
Repeat
Wait(100);
Until(WelcomeToRunescape) OR (TimeFromMark(worldclick) >= 60000);
Exit;
End;
End;
End;

if Which = 'free' then
OrderBy('type','down')
for i := 5 to 74 -1 do
begin
Case RandomWorld Of
True : Begin
Mouse(Worlds[i+Random(68)].X, Worlds[i+Random(68)].Y, 0, 0, True);
Result := True;
MarkTime(worldclick);
Repeat
Wait(100);
Until(WelcomeToRunescape) OR (TimeFromMark(worldclick) >= 60000);
Exit;
End;

False : Begin
Mouse(Worlds[i].X, Worlds[i].Y, 0, 0, True);
Result := True;
MarkTime(worldclick);
Repeat
Wait(100);
Until(WelcomeToRunescape) OR (TimeFromMark(worldclick) >= 60000);
Exit;
End;
End;
End;
End;

FreeNumbers;
end;



Procedure ChangeWorld;
Begin
If OtherPlayerFound(x, y)Then
Begin
SetupWorldSwitcher;
RunTo('S', False)
LogOut;
ClickWorldSwitchButton;
SelectWorld1('free', True);
End;

End;

//end

//credits to itschris917
Function AngleCompass(Angle:integer):Boolean;
Var
Ax, Ay, AMark:Integer;
Begin
MarkTime(AMark);

Ax:= Round( 6 * Sin (Angle * Pi / 180))+ 566;
Ay:= Round(-6 * Cos (Angle * Pi / 180))+ 20;

KeyDown(VK_Left);

repeat
Wait(10+random(5));
If(FindColor(x, y, 723587, Ax, Ay, Ax, Ay))then
Begin
Result:=true;
break;
End;
Until(TimeFromMark(AMark) > 10000);
KeyUp(VK_Left);
End;

//---------------------------------------------------------------------\\
Procedure DoomCompass;
Var
CurrentAngle:integer;
begin
CurrentAngle:=FindCompassAngle;
Case Random(10) Of
0: begin
SendArrowWait(1, 250+Random(50));
SendArrowWait(2, 100+Random(30));
end;

1 : begin
SendArrowWait(3, 1500+Random(150));
end;

2 : begin
SendArrowWait(2, 500+Random(250));
SendArrowWait(1, 2000+Random(500));
end;
3 : SendArrowWait(1, 3000+Random(400));

4 : SendArrowSilentWait( ((Random(2) * 2) + 1), 1000 + Random(200));

5 : SendArrowSilentWait( ((Random(2) * 2) + 1), 200 + Random(200));

6 : SendArrowSilentWait( ((Random(2) * 2)), 200 + Random(200));

7 : SendArrowSilentWait( ((Random(2) * 2) + 1), 20 + Random(20));

8 : SendArrowSilentWait( ((Random(2) * 2)), 20 + Random(20));

9 : SendArrowSilentWait( ((Random(2) * 2)), 1000 + Random(200));

end;
AngleCompass(CurrentAngle);
HighestAngle;
end;



//does what it says
procedure AntiBannage;
begin
Case Random(15) Of

1 : DoomCompass;
2 : PolyGlotTalk;
3 : begin
GameTab(1+Random(12));
Wait(2000+Random(400));
GameTab(4);
end;
4 : RandomRClick;
5 : PickUpMouse;
6 : MouseBox(MSX1,MMY1,MMX2,MMY2,5);
7 : HoverSkill('Prayer', False);
8 : PolyGlotTalk;
9 : LeaveScreenEvery(5 + Random(5));
10 : HoverEvery(15 + Random(5), 'random');
end;
end;


{is what the name says:P}

procedure KotszSignature;
begin
ClearDebug;



Writeln('//// kk kk ooo tttttttttt \\\\')
Writeln('//// kk kk o o tt ssssssss \\\\')
Writeln('//// kk kk o o tt s zzzzzzzzz \\\\')
Writeln('//// kkkk o o tt s zz \\\\')
Writeln('//// kk kk o o tt sssss zz \\\\')
Writeln('//// kk kk o o tt s zz \\\\')
Writeln('//// kk kk o o tt s zz \\\\')
Writeln('//// kk kk o o tt ssssssss zzzzzzzzz \\\\')
Writeln('//// ooo and credits to chris \\\\')

end;
//does what the name says:P\\
procedure KotszProggy;
begin
cleardebug;
Writeln(' THANKS FOR USING MY KOTSZ PRAYER LEVELER!! ');
Writeln(' Please remember to post proggies/bugs ');
Writeln('////////////////////report\\\\\\\\\\\\\\\\\\\\\\\\');
Writeln('//Worked For : ' + ScriptTime2(2) );
Writeln('//Did ' + IntToStr(Loads) + ' Loads ');
Writeln('//'+inttostr(players[currentplayer].integer2 - 1)+ ' bones buried ');
Writeln('//' + Floattostr(Xp)+ 'xp gained ' );

SRLRandomsReport;
end;


{function findfast randoms credits to WT-Fawaki }

Function FindFastRandoms: Boolean;
var
i: Integer;
begin
findnormalrandoms;
for i:=1 to 10 do
begin
case I of
1: If FindDead then
Result := True;
2: If FindMod then
Result := True;
3: If FindMime then
Result := True;
4: If FindMaze then
Result := True;
5: If FindQuiz then
Result := True;
6: If FindDemon then
Result := True;
7: if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
8 : If RC Then Result := True;

9: If FindTalk Then Result := True;

10: If HandleTrade Then Result := True;
End;
Wait(1);
end;
end;


{Credits to Wizzup}

Function ScanMiniMap(iFrom, iTo, Distance: Integer): Integer;

Var
I, iX,iY: Integer;
Begin
For I := iFrom To ITo Do
Begin
iX := Round(Distance * Sin(I * Pi / 180)) + 648;
iY := Round(-Distance * Cos(I * Pi / 180)) + 80;
If GetColor(iX, iY) = 0 Then
Begin
Result := Result + 1;
End;
End;
End;


{credits to wizzup}

Function FindNormalRandomsTimeEx: Boolean;

Var
TempTime, Time1, Time2: LongInt;

Begin
TempTime := GetSystemTime;
If TempTime - NormalRandomsTime > 6000 Then
Begin
NormalRandomsTime := GetSystemTime;
Time1 := GetSystemTime;
Result := FindNormalRandoms;
Time2 := GetSystemTime;
Status('Calling FNRandoms; Took '+IntToStr(Time2-Time1)+'.');
Exit;
End;

If TempTime - FastRandomsTime > 2000 Then
Begin
FastRandomsTime := GetSystemTime;
Time1 := GetSystemTime;
Result := FindFastRandoms;
Time2 := GetSystemTime;
Status('Calling FFRandoms; Took '+IntToStr(Time2-Time1)+'.');
Exit;
End;

If TempTime - FindTalkTime > 500 Then
Begin
FindTalkTime := GetSystemTime;
Time1 := GetSystemTime;
Result := FindTalk;
Time2 := GetSystemTime;
Status('Calling FT; Took '+IntToStr(Time2-Time1)+'.');
Exit;
End;
End;



procedure LoadDTM; //The name of the procedure.
begin
Bone := DTMFromString('78DA63F4646660C862644006678E1E613002D' +
'220D1FF40C0E88CA906220B2381B42B504D1101352140353904D4' +
'F801D5A4E057030056770A2F');

end;





{procedure BuryBones bury the bones }


procedure BuryBones;
var
BonesBuriedResetEveryLoad : Integer;
begin

Repeat
If Not LoggedIn Then Break;
FindFastRandoms;

If(Random(25) <= 15)then
AntiBannage;
FindNormalRandomsTimeEx;
if(FindDTM(Bone, x, y,MIX1, MIY1, MIX2, MIY2 ))then
Begin
ChangeWorld;
mouse(x,y,1,1,true);
Buried:=Buried + 1;
players[currentPlayer].integer2 := buried;
BonesBuriedResetEveryLoad := BonesBuriedResetEveryLoad +1;
xp:=xp + 4.5;

end
else
Writeln('Cant find Bones in inventory..');
Until(Not(FindDTM(Bone, x, y, MIX1, MIY1, MIX2, MIY2)));
if BonesBuriedResetEveryLoad = 28 then
begin
Loads := Loads+1;
BonesBuriedResetEveryLoad := 0;
kotszProggy;
ChangeWorld;
end;
end;

{a function made by me and chris}
function DotOnMM:Boolean;
Begin
Result := FindColorSpiralTolerance(x, y, Red, MMX1, MMY1, MMX2, MMY2, 5);
End;


{procedure GetBones to get bones from the ground }

procedure GetBones;
Var
BoneColor : Integer;
ix, iY, I, Tol : Integer;
FoundBone : Boolean;
begin
MarkTime(BonePickup);
BoneColor:= 12106178;
Repeat
if(not(LoggedIn))then
Exit;

Begin
MarkTime(myMark);
FindFastRandoms;
Tol := 0;
Repeat
Tol := Tol + 1;
If FindColorSpiralTolerance(iX, iY, BoneColor, MSX1, MSY1, MSX2, MSY2, Tol) Then

Begin
ChangeWorld;
Writeln('Found the bone with color: '+inttostr(BoneColor));
MMouse(iX, iY, 2, 2);
If IsUpText('ake')Then
FoundBone := True;;
End;

Until(Tol > 9) OR (FoundBone);

If (FoundBone) Then
Begin
Case Random(2) Of
0 : Begin
ChangeWorld;
Mouse(iX, iY, 1, 1, True);
Flag;
if(InvFull) then
Begin
writeln('inventory is full');
BuryBones;
End;
End;

1 : Begin
ChangeWorld;
Mouse(iX, iY, 1, 1, False);
Wait(100+random(200));
ChooseOption(x, y, 'Take');
While FlagPresent Do
FindFastRandoms;
If(Random(25) <= 15)then
Begin
AntiBannage;
End;
if(InvFull) then
Begin
writeln('inventory is full');
BuryBones;
End;
End;
End;
End;
End;

If(TimeFromMark(myMark) >= 5000)then
If DotOnMM AND Not InvFull AND (foundbone=false) then
Begin
ChangeWorld;
Mouse(x, y, 1, 1, True);
Flag;
GetBones;
End
Else
Writeln('inventory is full');
BuryBones;
Until(InvFull) OR (TimeFromMark(BonePickup) >= MaxLoadTime * 1000);
End;





{procedure setupclient does wat the names says }
procedure SetUpClient;
begin
wait(500+random(500));
SetupSrl;
declareplayers;
ActivateClient;

end;

{MainLoop}


begin
KotszSignature;
wait(3000)
SetUpClient;
LoadDTM;
LoginPlayer;
HighestAngle;
MakeCompass('N');
Repeat
If not LoggedIn Or WeAreDead then break
FindFastRandoms;
FindNormalRandoms;
GetBones;
BuryBones;
kotszProggy;
if(Loads >= Players[CurrentPlayer].Integer1)then
begin
LogOut;
NextPlayer(True);

end;

Until(False);
end.

gothicly2

2007-09-02 12:05:00

looks cool!

the scar noob

2007-09-02 12:06:19

You're a new member, i see you already understand some things, great!
Keep it up!

wheatthinz

2007-09-04 01:39:23

boner… heh heh heh…..

mat_de_b

2007-09-04 05:31:09

no way you got it…. ;)

jas0npc

2007-09-04 07:10:57

Looks a great scipt but didnt work 4 me, will try later when got more time.

mat_de_b

2007-09-04 07:51:16

what went wrong?

sowbener

2007-09-09 06:38:56

it does work for me

mat_de_b

2007-09-09 10:14:50

progress report?

Timothegreat

2007-09-09 14:21:48

lol i have had a script kinda like this and i used it in the wild too, i have never posted it though :rolleyes:

richk1693

2007-09-16 20:27:52

I hate to say it but I cant stop giggling at the name boner.

TheGhostofChristmasPast

2007-10-01 15:31:26

outdated. line 68 is broken even tho there is no identidied changefphandle for me

mat_de_b

2007-10-02 13:22:44

isnt change fp handle a plugin?

mynameisjoe

2007-10-15 20:58:19

From: richk1693
I hate to say it but I cant stop giggling at the name boner.


Amen!. :bart:

I find bone buriers useful scripts, but with the Leo event.. it's just too much for me.

spikehead818

2007-10-20 10:02:19

i get
Failed when compiling
Line 68: [Error] (68:1): Unknown identifier 'ChangeFPHandle' in script C:\Program Files\SCAR 3.12\includes\srl\srl\misc\SCSS.scar

n3ss3s

2007-10-20 10:07:55

umm maybe use {.include SRL/SRL/Misc/Wilderness.scar} ??

:D

Chung

2007-11-18 17:54:27

I tried it out, something weird happened…It was running fine but when it was switching worlds after it found a group players it couldn't click on a world for some reason. Just spazzed out everywhere. O_O

rpg811

2007-11-23 20:04:34

I'm sry if this is spamming ur thread or anything, but i LOVE your siggy… its funny lol

bgxsaer

2007-11-30 16:23:22

One question over all the spam, does this actually work? Ty.