SRL Archive - Archive

Siel - SRL Member Application


Wetish

2012-02-03 18:27:33

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


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?
No


What is your general programming knowledge?
Pascal. I took a few summer camps to learn C++ and Java but it never stuck.


Are you a member of any other communities?
I actively post on Mmoexchange, Mmogamemarket, Dubstepexchange, and Zybez.


Tell us about yourself…
From: Siel
Hello everyone! My name is John, I live in the United States, and I’m currently 15 years old. I enjoy many activities. Some of my favorites are Track, listening to music, scripting, playing video games, and just chilling with my friends. My favorite video games right now are Runescape, TF2, Skryim, and Tetris. I mainly listen to dubstep and dnb but occasionally listen to electro. I have a computer and an Xbox 360, however I rarely use my Xbox anymore because I have been spending a lot more time on Runescape. My greatest achievement so far in my life has to be building my own computer (I know I’m nerdy). With all this excitement in my life I still do have many problems. I suffer from chronic anxiety and depression. I currently take medications for both of them and visit a therapist often. However aside from all of this I plan to make my home here on the SRL forums.



Please show us one (or multiple) of your scripts.
This is my Karamja Fishing script. http://villavu.com/forum/showthread.php?p=914946#post914946
If you voted no during February 8-9 I would like to ask you to reconsider your vote. During that time I had an nonworking old version of this script posted. This was by accident and I have fixed it.

program KaramjaFisher;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
Const
SERVER = 0; // Enter "0" to pick a random server.
MEMBERS = False; // Set to True if using a RS-Members account. False if F2P.
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first chararacter)
SRLStats_User = ''; // Your SRL Stats ID (If you dont have one then just leave it as it is)
SRLStats_Password = ''; // Your SRL Stats Password (If you dont have one then just leave it as it is)
Version= '1.3';
procedure DeclarePlayers;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 20000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish
end;
end;
Var
SC, TC, LC, TTC, TSC, TLC, FC, L, XP, TP, A:Integer;
S: Array [0..5] of Integer;
D: Array [0..6] of Integer;
aFound: Extended;

procedure CheckUp;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
end;

procedure AntiBan;
begin
if not LoggedIn then Exit;
case Random(1000) of
0: begin
RandomMovement;
SetAngle(SRL_ANGLE_HIGH);
end;
1: PickUpMouse;
2: HoverSkill('Fishing', False);
3: SleepAndMoveMouse(5000 + Random(500));
4: RandomMovement;
5: PickUpMouse;
6: BoredHuman;
7: RandomRClick;
8: ExamineInv;
9..20:begin
MakeCompass( RandomRange( -360, 360));
Wait(100 + random(50));
end;
21..50: Wait( Random( 4500));
51..200: CheckUp;
end;
end;

function StilesColor: Integer;
var
TPA: TPointArray;
ATPA: Array of TPointArray;
TIA: TIntegerArray;
i, t, x, y : Integer;
begin
t := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(0.90, 1.90);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 2763564, MSX1, MSY1, MSX2, MSY2, 5);
ColorToleranceSpeed(t);
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPAEx(tpa, 50, 50);
SortATPASize(ATPA, True);
TIA := GetColors(TPA);
ClearSameIntegers(TIA);
for i := 0 to High(ATPA) do
Result := TIA[i];
end;
function Fishing: boolean;
var
pc, cc, timer: Integer;
begin
CheckUp;
MarkTime(timer);
pc := InvCount;
A := 0;
WriteLn('Waiting until fishing has stopped');
repeat
CheckUp;
Wait(200+ random(50));
FindNormalRandoms;
Antiban;
cc := InvCount;
if not (cc = pc) then
begin
MarkTime(Timer);
pc := cc;
end;
if (TimefromMark(Timer) > Players[CurrentPlayer].integers[3]) and (pc = cc) then
begin
Exit;
end;
until(InvCount = 28);
Result := True;
end;
function FindFish(Var x, y: Integer): boolean;
var
tpa: TPointArray;
atpa: T2DPointArray;
i : Integer;

begin
CheckUp;
Result := False;
FindColorsTolerance(tpa, 10984084, MSX1, MSY1, MSX2, MSY2, 6);
atpa := TPAToATPAEx(tpa, 10, 10);
for i := 0 to High(atpa) do
begin
FFlag(0);
Wait(200 + random(100));
MiddleTPAEx(atpa[i], x, y);
MMouse(x, y, 4, 4);
If WaitUpText('age', 1000)then
begin
Result := True;
WriteLn('Found a fishing spot');
GetMousePos(x, y);
Exit;
end else
Result := False;
end;
end;

function StartFishing:boolean;
var
x, y:Integer;
begin
CheckUp;
FFlag(0);
Result := False;
if A > 5 then
begin
WriteLn('Failed finding a fishing spot 5 times. Shutting down.');
Logout;
end;
if FindFish(x, y) then
begin
CheckUp;
ClickMouse2(False);
Mouse(x, y, 0, 0, false);
if (Players[0].Strings[0] = 'Cage') then
begin
if WaitOption('Cage', 600) then
WriteLn('Successfully started to fish');
Result := True;
Fishing;
end;
if (Players[0].Strings[0] = 'Harpoon') then
begin
if WaitOption('Harpoon', 600) then
WriteLn('Successfully started to fish');
Result := True;
Fishing;
end;
end else
WriteLn('Failed to fish. Trying again.');
Inc(A);
Exit;
end;


function FishCounter:boolean;
Var
SwordFishDTM, TunaDTM, LobsterDTM :Integer;
begin
SwordFishDTM := DTMFromString('mFQEAAHicnckxCoAwEETRSSQiQtBzpxIEQbRQBAuvGAs/JIWWceHt7LBe0malA9fLiR0LJoxYMefucJvEctdo4NFnHSJ/kRWGEFIp0LJLmR8+8wAIHQ3o');
TunaDTM := DTMFromString('m6wAAAHic42ZgYDjFxMBwAYgvA/FVID4DxEeA+AAQHwLio0wQNfuBWAmIZaG0BhCrArEWEKshyUkBsT4Qb6rbAzSdiSjMBSSJxYwkYCQAAIeoDNk=');
LobsterDTM := DTMFromString('mAAEAAHiclc0xDkBAFITht1uKdQPncBznopFQbEIUotEoFBQUoiBxG38hgm4n+SaZanwRKbVIiw4NaljkSJEgQ4EKsxLpMWDFgRM7NiyYbiPiKORFPwJjPvvPo10oR+9cvFITCA==');
begin
SC := CountItems('dtm', SwordFishDTM, [0]);
TC := CountItems('dtm', TunaDTM, [0]);
LC := CountItems('dtm', LobsterDTM, [0]);
TSC := TSC + SC;
TTC := TTC + TC;
TLC := TLC + LC;
FC := FC + SC + TC + LC;
stats_IncVariable('Tuna Caught', TC);
stats_IncVariable('Lobster Caught', LC);
stats_IncVariable('Swordfish Caught', SC);
FreeDTM(SwordFishDTM);
FreeDTM(TunaDTM);
FreeDTM(LobsterDTM);
Result := True;
end;
end;

Function ExchangeFish: boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CheckUp;
Wait(200 + random(100));
SetAngle(0);
MakeCompass('n');
FishCounter;
begin
Result := False;
FindColorsTolerance(TPA, StilesColor, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(300 + random(200));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
if WaitUpText('tiles', 600) then
begin
WriteLn('Found Stiles.');
Mouse(x, y, 0, 0, false);
If WaitOption('Exchange', 600) then
begin
Wait(1000 + random(300));
WriteLn('Exchanged Fish.');
Inc(L);
end;
Result := True;
Exit;
end;
end;
end;
end;

Procedure Report;
begin
XP:= (XP +(SC * 100) + (TC * 80) + (LC * 90));
TP:= (TP +(Players[CurrentPlayer].integers[0] * TC) + (Players[CurrentPlayer].integers[1] * SC) + (Players[CurrentPlayer].integers[2] * LC));
Stats_Commit;
WriteLn('================================');
WriteLn('Report');
WriteLn('Time Running: ' + TimeRunning);
WriteLn('Fish Caught: ' + IntToStr(FC));
WriteLn('Total XP Gained: ' + IntToStr(XP));
WriteLn('Profit: ' + IntToStr(TP));
WriteLn('Loads: ' + IntToStr(L));
WriteLn('================================');
end;

Procedure WalkToStiles;
var
StilesMiniMap, x, y: Integer;
myPath:TPointArray;
begin
CheckUp;
SetAngle(0);
WriteLn('Walking To Stiles...');
StilesMiniMap := DTMFromString('mFQEAAHic42VgYMhnYmBoB+K5QDwJiOuAOBKIA4DYF4gtgNgViP2BuA2IC4A4F6gvCIg9gNgaiKWAWB2ITYHYHogTgDgcZDYQZwGxOxD3TJnJcO5aLMPli9EMG5ebMTRGCDHURKkyNKaqMfS3aYPlD50MB9MgPGWJIYMcUB+pmJEMjAIAIoUe0w==');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3511, 3967), Point(3483, 3968), Point(3450, 3975), Point(3416, 3995), Point(3416, 3995), Point(3416, 3995), Point(3389, 4015), Point(3389, 4015), Point(3355, 4031), Point(3327, 4049), Point(3300, 4062), Point(3268, 4080), Point(3241, 4094)];
if SPS_WalkPath(myPath)then
begin
FFlag(0);
Wait(300 + random(200));
SetAngle(0);
CheckUp;
end else
WriteLn('Failed walking to Stiles. Shutting down.');
Logout;
end;


Procedure WalkToDock;
var
DockMiniMap, x, y: Integer;
myPath:TPointArray;
begin
CheckUp;
SetAngle(0);
WriteLn('Walking To Fishing Dock');
DockMiniMap := DTMFromString('mkwEAAHicrc4/C0FxGMXxcw1MpiuSTQySQZeE8u8q15+8Ci8Am+3ym5RksHi1fLueUVnuqU/PcJ7h+JLaaKEOX9/kUUIZAZZYY4sFOsiYLIrIoYoNpohQsK5ivezWMEcPM6wwti1NNJJPT9Gxmzi5vi6P11/uPNT9NtE1Hmm/C/R0oeLDQG/bkgYvRT/yAYOfIdQ=');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3240, 4096), Point(3260, 4085), Point(3282, 4069), Point(3282, 4069), Point(3294, 4056), Point(3314, 4042), Point(3342, 4028), Point(3342, 4028), Point(3376, 4018), Point(3398, 4012), Point(3426, 3998), Point(3455, 3989), Point(3479, 3982), Point(3501, 3973), Point(3516, 3967), Point(3526, 3955), Point(3527, 3938)];
if SPS_WalkPath(myPath)then
begin
FFlag(0);
Wait(300 + random(200));
SetAngle(0);
CheckUp;
end else
WriteLn('Failed walking to the Dock. Shutting down.');
Logout;
end;

Procedure Mainloop;
begin
CheckUp;
repeat
StartFishing;
Until(InvFull)
begin
WalkToStiles;
ExchangeFish;
Report;
WalkToDock;
end;
end;
begin
ClearDebug;
SetUpSrl;
ActivateClient;
DeclarePlayers;
LoginPlayer;
SetupSRLStats(721, SRLStats_User, SRLStats_Password);
SetAngle(0);
SetRun(True);
ToggleXPBar(True);
MouseSpeed := RandomRange(15, 25);
repeat
Mainloop;
until(false)
end.

program KaramjaFisher;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
Const
SERVER = 0; // Enter "0" to pick a random server.
MEMBERS = False; // Set to True if using a RS-Members account. False if F2P.
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first chararacter)
SRLStats_User = ''; // Your SRL Stats ID (If you dont have one then just leave it as it is)
SRLStats_Password = ''; // Your SRL Stats Password (If you dont have one then just leave it as it is)
Version= '1.3';
procedure DeclarePlayers;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 30000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish
end;
end;
Var
SC, TC, LC, TTC, TSC, TLC, FC, L, XP, TP :Integer;
S: Array [0..5] of Integer;
D: Array [0..6] of Integer;
aFound: Extended;

procedure CheckUp;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
end;

procedure AntiBan;
begin
if not LoggedIn then Exit;
case Random(1000) of
0: begin
RandomMovement;
SetAngle(SRL_ANGLE_HIGH);
end;
1: PickUpMouse;
2: HoverSkill('Fishing', False);
3: SleepAndMoveMouse(5000 + Random(500));
4: RandomMovement;
5: PickUpMouse;
6: BoredHuman;
7: RandomRClick;
8: ExamineInv;
9..20:begin
MakeCompass( RandomRange( -360, 360));
Wait(100 + random(50));
end;
21..50: Wait( Random( 4500));
51..200: CheckUp;
end;
end;

function StilesColor: Integer;
var
TPA: TPointArray;
ATPA: Array of TPointArray;
TIA: TIntegerArray;
i, t, x, y : Integer;
begin
t := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(0.90, 1.90);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 2763564, MSX1, MSY1, MSX2, MSY2, 5);
ColorToleranceSpeed(t);
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPAEx(tpa, 50, 50);
SortATPASize(ATPA, True);
TIA := GetColors(TPA);
ClearSameIntegers(TIA);
for i := 0 to High(ATPA) do
Result := TIA[i];
end;
function Fishing: boolean;
var
pc, cc, timer: Integer;
begin
CheckUp;
MarkTime(timer);
pc := InvCount;
WriteLn('Waiting until fishing has stopped');
repeat
Wait(200+ random(50));
FindNormalRandoms;
Antiban;
cc := InvCount;
if not (cc = pc) then
begin
MarkTime(Timer);
pc := cc;
end;
if (TimefromMark(Timer) > Players[CurrentPlayer].integers[3]) and (pc = cc) then
begin
Exit;
end;
until(InvCount = 28);
Result := True;
end;
function FindFish(Var x, y: Integer): boolean;
var
tpa: TPointArray;
atpa: T2DPointArray;
i : Integer;

begin
CheckUp;
Result := False;
FindColorsTolerance(tpa, 10984084, MSX1, MSY1, MSX2, MSY2, 6);
atpa := TPAToATPAEx(tpa, 10, 10);
for i := 0 to High(atpa) do
begin
FFlag(0);
Wait(200 + random(100));
MiddleTPAEx(atpa[i], x, y);
MMouse(x, y, 4, 4);
If WaitUpText('age', 1000)then
begin
Result := True;
WriteLn('Found a fishing spot');
GetMousePos(x, y);
Exit;
end else
Result := False;
end;
end;

Procedure StartFishing;
var
x, y:Integer;
begin
CheckUp;
FFlag(0);
If FindFish(x, y) then
begin
ClickMouse2(False);
Mouse(x, y, 0, 0, false);
WaitOption(Players[0].Strings[0], 600);
WriteLn('Successfully started to fish');
Fishing;
end;
end;

function FishCounter:boolean;
Var
SwordFishDTM, TunaDTM, LobsterDTM :Integer;
begin
SwordFishDTM := DTMFromString('mFQEAAHicnckxCoAwEETRSSQiQtBzpxIEQbRQBAuvGAs/JIWWceHt7LBe0malA9fLiR0LJoxYMefucJvEctdo4NFnHSJ/kRWGEFIp0LJLmR8+8wAIHQ3o');
TunaDTM := DTMFromString('m6wAAAHic42ZgYDjFxMBwAYgvA/FVID4DxEeA+AAQHwLio0wQNfuBWAmIZaG0BhCrArEWEKshyUkBsT4Qb6rbAzSdiSjMBSSJxYwkYCQAAIeoDNk=');
LobsterDTM := DTMFromString('mAAEAAHiclc0xDkBAFITht1uKdQPncBznopFQbEIUotEoFBQUoiBxG38hgm4n+SaZanwRKbVIiw4NaljkSJEgQ4EKsxLpMWDFgRM7NiyYbiPiKORFPwJjPvvPo10oR+9cvFITCA==');
begin
SC := CountItems('dtm', SwordFishDTM, [0]);
TC := CountItems('dtm', TunaDTM, [0]);
LC := CountItems('dtm', LobsterDTM, [0]);
TSC := TSC + SC;
TTC := TTC + TC;
TLC := TLC + LC;
FC := FC + SC + TC + LC;
stats_IncVariable('Tuna Caught', TC);
stats_IncVariable('Lobster Caught', LC);
stats_IncVariable('Swordfish Caught', SC);
FreeDTM(SwordFishDTM);
FreeDTM(TunaDTM);
FreeDTM(LobsterDTM);
Result := True;
end;
end;

Function ExchangeFish: boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CheckUp;
FFlag(0);
Wait(500 + random(200));
SetAngle(0);
MakeCompass('n');
FishCounter;
begin
Result := False;
FindColorsTolerance(TPA, StilesColor, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(300 + random(200));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
if WaitUpText('tiles', 600) then
begin
WriteLn('Found Stiles.');
Mouse(x, y, 0, 0, false);
If WaitOption('Exchange', 600) then
begin
Wait(1000 + random(300));
WriteLn('Exchanged Fish.');
Inc(L);
end;
Result := True;
Exit;
end;
end;
end;
end;

Procedure Report;
begin
XP:= (XP +(SC * 100) + (TC * 80) + (LC * 90));
TP:= (TP +(Players[CurrentPlayer].integers[0] * TC) + (Players[CurrentPlayer].integers[1] * SC) + (Players[CurrentPlayer].integers[2] * LC));
Stats_Commit;
WriteLn('================================');
WriteLn('Report');
WriteLn('Time Running: ' + TimeRunning);
WriteLn('Fish Caught: ' + IntToStr(FC));
WriteLn('Total XP Gained: ' + IntToStr(XP));
WriteLn('Profit: ' + IntToStr(TP));
WriteLn('Loads: ' + IntToStr(L));
WriteLn('================================');
end;

Procedure WalkToStiles;//This has been replaced with DTM walking
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Stiles...');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3511, 3967), Point(3483, 3968), Point(3450, 3975), Point(3416, 3995), Point(3416, 3995), Point(3416, 3995), Point(3389, 4015), Point(3389, 4015), Point(3355, 4031), Point(3327, 4049), Point(3300, 4062), Point(3268, 4080), Point(3241, 4094)];
SPS_WalkPath(myPath);
end;

Procedure WalkToDock; //This has been replaced with DTM walking
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Fishing Dock');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3240, 4096), Point(3260, 4085), Point(3282, 4069), Point(3282, 4069), Point(3294, 4056), Point(3314, 4042), Point(3342, 4028), Point(3342, 4028), Point(3376, 4018), Point(3398, 4012), Point(3426, 3998), Point(3455, 3989), Point(3479, 3982), Point(3501, 3973), Point(3516, 3967), Point(3526, 3955), Point(3527, 3938)];
SPS_WalkPath(myPath);
end;
Procedure Mainloop;
begin
CheckUp;
repeat
StartFishing;
Until(InvFull)
begin
WalkToStiles;
ExchangeFish;
Report;
WalkToDock;
end;
end;
begin
ClearDebug;
SetUpSrl;
ActivateClient;
DeclarePlayers;
LoginPlayer;
SetupSRLStats(721, SRLStats_User, SRLStats_Password);
SetAngle(0);
SetRun(True);
MouseSpeed := RandomRange(15, 25);
repeat
Mainloop;
until(false)
end.

If you vote no it would be greatly appreciated if you say why so I can improve for the future.

cycrosism

2012-02-03 18:29:57

Do you know any other methods of walking other than SPS?

Sin

2012-02-03 18:31:38

I say this alot, but you're still a bit new here.
Your script is decent, might not want to rely on Auto Colour too much, holding my vote for now.

Kyle Undefined

2012-02-03 18:32:14

Can you explain in depth what your StilesColor function does?

PatDuffy

2012-02-03 18:32:20

Standards, uses FindObj(which I hate) although does auto-color.

If you can explain your auto-color function through commenting it I might even consider not hitting No

E: Ninja'd by Kyle as usual

Wetish

2012-02-03 18:37:38

From: cycrosism
Do you know any other methods of walking other than SPS?

I can use DTM and I have tried Radial but it never really worked out.
Ill go through my stiles function and say what each step does.
or
Ill create a new procedure for finding Stiles since it seems you all strongly dislike AutoColor and FindObj. I agree though, it is not very stable.

PatDuffy

2012-02-03 18:42:27

I would prefer to see the current one commented before you change it

Wetish

2012-02-03 18:45:22

From: PatDuffy
I would prefer to see the current one commented before you change it

Ill do both. :D

Here is the ExchangeFish function with TPAs instead of FindObj. I'm not sure if you would want me to edit my original script or just post the new version here. Ill fix up the standards soon.
Function ExchangeFish: boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CheckUp;
FFlag(0);
Wait(500 + random(200));
SetAngle(0);
MakeCompass('n');
FishCounter;
begin
Result := False;
FindColorsTolerance(TPA, 3487032, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(300 + random(200));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
begin
if WaitUpText('tiles', 600) then
begin
WriteLn('Found Stiles.');
Mouse(x, y, 0, 0, false);
If WaitOption('Exchange', 600) then
begin
Wait(1000 + random(300));
ClickToContinue;
WriteLn('Exchanged Fish.');
Inc(L);
end;
Result := True;
Exit;
end;
end;
end;
end;
end;

Here is the AutoColor feature annotated. I think that this is was you request for me to do. If not then just tell me what you wanted.

function StilesColor: Integer;
var //Just standard variables used for TPAs
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
R, G, B: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed; //Declarea that tmpCTS is equal to GetColorToleranceSpeed;
ColorToleranceSpeed(2); //Sets the ColorToleranceSPped and inturn tmpCTS to 2
SetColorSpeed2Modifiers(0.00, 0.18); //Sets the ColorSpeed2Modifiers(hue and sat)

FindColorsSpiralTolerance(MSCX, MSCY, arP, 3487032, MSX1, MSY1, MSX2, MSY2, 9); //Finds the color 3487032 from the middle of the mainscreen spiraling out with a tolerance of 9
if (Length(arP) = 0) then //if the length of the TPA arP is 0 then...
begin
Writeln('Failed to find the color, no result.'); //States that the color was not found
ColorToleranceSpeed(tmpCTS); //Checks the ColorToleranceSpeed
SetColorSpeed2Modifiers(0.2, 0.2); //Changes hue and sat to allow for more colors
Exit;
end;

arC := GetColors(arP); // Declares that arC, a TIA, is equal to the colors of arP(The TPA)
ClearSameIntegers(arC); // Clears numbers listed more than one in the TIA
arL := High(arC); // Shows the highest integer of arC

for i := 0 to arL do // if i = 0 for arL then do
begin
ColorToRGB(arC[i], R, G, B); //States the R,G, and B values of the color

if (R >= 33) and (R <= 79) and (G >= 31) and (G <= 75) and (B >= 31) and (B <= 75) then //If the RGB values are equal to this then...
begin
ColorToXYZ(arC[i], X, Y, Z); //States the X, Y, and Z values of the color

if (X >= 1.42) and (X <= 6.85) and (Y >= 1.46) and (Y <= 7.03) and (Z >= 1.56) and (Z <= 7.49) then //If the XYZ values are equal to this then...
begin
Result := arC[i]; //States the result of arC to the ammount of i
Writeln('AutoColor = ' + IntToStr(arC[i])); //Writes the color found and the one that is being used
Break;
end;
end;
end;

ColorToleranceSpeed(tmpCTS); //Checks the ColorToleranceSpeed
SetColorSpeed2Modifiers(0.2, 0.2); //Sets the ColorSpeed2Modifiers(hue and sat)

if (i = arL + 1) then
Writeln('AutoColor failed in finding the color.'); //Writes that autocolor failed
end;

cycrosism

2012-02-04 01:24:27

I am feeling inclined to vote no just because you do not know any complex methods of walking, you only know SPS, and because your walking procedure has no fail safes either, just relies on SPS.

Ill check again later and hopefully there will be fail safes, because they are a must.

Wetish

2012-02-04 07:38:42

From: cycrosism
I am feeling inclined to vote no just because you do not know any complex methods of walking, you only know SPS, and because your walking procedure has no fail safes either, just relies on SPS.

Ill check again later and hopefully there will be fail safes, because they are a must.

Ill change it to DTM walking later today.

Updated script with DTM walking

program KaramjaFisher;
//{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
Const
SERVER = 0; // Enter "0" to pick a random server.
MEMBERS = False; // Set to True if using a RS-Members account. False if F2P.
SRLStats_Username = ''; // Your SRL Stats Username
SRLStats_Password = ''; // Your SRL Stats Password
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first chararacter)

Version= '1.0';
procedure DeclarePlayers;
var i:integer;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;
for i := 0 to NumbOfPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 30000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish

end;
end;
Var
SC, TC, LC, TTC, TSC, TLC, FC, L, XP, TP :Integer;
S: Array [0..5] of Integer;
D: Array [0..6] of Integer;
aFound: Extended;

procedure CheckUp;
begin
if not LoggedIn then Exit;
FindNormalRandoms;

end;

procedure AntiBan;
begin
if not LoggedIn then Exit;
case Random(1000) of
0: begin
RandomMovement;
SetAngle(SRL_ANGLE_HIGH);
end;
1: PickUpMouse;
2: HoverSkill('Fishing', False);
3: SleepAndMoveMouse(5000 + Random(500));
4: RandomMovement;
5: PickUpMouse;
6: BoredHuman;
7: RandomRClick;
8: ExamineInv;
9..20:begin
MakeCompass( RandomRange( -360, 360));
Wait(100 + random(50));
end;
21..50: Wait( Random( 4500));
51..200: CheckUp;
end;
end;

function StilesColor: Integer;
var //Just standard variables used for TPAs
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
R, G, B: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed; //Declarea that tmpCTS is equal to GetColorToleranceSpeed;
ColorToleranceSpeed(2); //Sets the ColorToleranceSPped and inturn tmpCTS to 2
SetColorSpeed2Modifiers(0.00, 0.18); //Sets the ColorSpeed2Modifiers(hue and sat)

FindColorsSpiralTolerance(MSCX, MSCY, arP, 3487032, MSX1, MSY1, MSX2, MSY2, 9); //Finds the color 3487032 from the middle of the mainscreen spiraling out with a tolerance of 9
if (Length(arP) = 0) then //if the length of the TPA arP is 0 then...
begin
Writeln('Failed to find the color, no result.'); //States that the color was not found
ColorToleranceSpeed(tmpCTS); //Checks the ColorToleranceSpeed
SetColorSpeed2Modifiers(0.2, 0.2); //Changes hue and sat to allow for more colors
Exit;
end;

arC := GetColors(arP); // Declares that arC, a TIA, is equal to the colors of arP(The TPA)
ClearSameIntegers(arC); // Clears numbers listed more than one in the TIA
arL := High(arC); // Shows the highest integer of arC

for i := 0 to arL do // if i = 0 for arL then do
begin
ColorToRGB(arC[i], R, G, B); //States the R,G, and B values of the color

if (R >= 33) and (R <= 79) and (G >= 31) and (G <= 75) and (B >= 31) and (B <= 75) then //If the RGB values are equal to this then...
begin
ColorToXYZ(arC[i], X, Y, Z); //States the X, Y, and Z values of the color

if (X >= 1.42) and (X <= 6.85) and (Y >= 1.46) and (Y <= 7.03) and (Z >= 1.56) and (Z <= 7.49) then //If the XYZ values are equal to this then...
begin
Result := arC[i]; //States the result of arC to the ammount of i
Writeln('AutoColor = ' + IntToStr(arC[i])); //Writes the color found and the one that is being used
Break;
end;
end;
end;

ColorToleranceSpeed(tmpCTS); //Checks the ColorToleranceSpeed
SetColorSpeed2Modifiers(0.2, 0.2); //Sets the ColorSpeed2Modifiers(hue and sat)

if (i = arL + 1) then
Writeln('AutoColor failed in finding the color.'); //Writes that autocolor failed
end;
procedure WalkToStiles;
Var x, y:Integer;
begin
S[0] := DTMFromString('mPwEAAHic42dgYHBkYmBwAWJPIPYH4iQgDobyQXJRQBwBFYuCqnEFYg8gLgbqTwTiGiAuAOIcII4F4kggDoPKpUHFg4A4EIh9gDgUiLvrHBny4k0Y2trsGTzyzMB4ZosHQ3upA1h8Sr0rQ12xNVi8tW8OHE+qc2HgB+onFzNSgNEAAOucHkU=');
S[1] := DTMFromString('mKgEAAHic42NgYLBkYmDwB2I/ILYH4iAoTgXiRCCOB+IoIE4H4lIoDgXiZKDeVCAOBOIgINYAYjMgVgNiPSD2B2JHIHYHYmcgtgLiGCCeXyvFoBomzDCxSIJhbYcMQ7yHAsPCemmG7glzGYpi1Rj6W/QZ/ArMGXpKHRjKks0YessdwXx+oF5yMCOZGBUAAC0gGVY=');
S[2] := DTMFromString('mVAEAAHicpcw/CwEBHIfxL2+ATbLcIFGWGy4LGXS5QeoMyr9cKVJEGe5uvlEhgywmZTHYDF6dx2Wy+tWnb/2GJy2pnpT62MBGFU24GGCPJXoYIcQUHjoIaCwwR+3TQwEm8jDQQAs2HAwx+/52R1N+WNI5yOr+cPV8dbU9XHQ9WfGOHUOWl4m11xXdoly8K7+oSVRWisY/En/6vTdnVB7S');
S[3] := DTMFromString('mFQEAAHic42VgYHBiYmBIB+IGIC4H4mwgDgViLyBOAGIHqHwYEJcBcREQVwL11QBxPBAXAHEqEKcDcTAQywBxMhDHALEbEDsCcRMQV7foMnT2zgXjlmJbBuVgYYa6dj0Gn1xzhnMn4hiKgfKt/YYMAUUaDIllmgxllR0M/EB9pGJGMjAKAAAaYBre');
S[4] := DTMFromString('mAAEAAHic42FgYLBiYmDwBuI8II6B0jOAuAWIE4HYEYjtgDgeiOuAOBuoxwWI3YDYF4jzgDgMiN2BWA+IdYDYC4iVgdgaiI8diGUoT9BmqGo2YCit1WPonGfB0NW3gKG+w5Chs8WAoTVUiiE/WIOhukyHwSVOgYEfqIcUzEgiRgYAh9AXRQ==');
S[5] := DTMFromString('mPwEAAHic42dgYPBgYmCIAOIMII4D4kwmiJgPENsDcTgQFwBxMxDPhNJFUPX5QP3ZQJwOxNFAHATFcUBsDMTaQCwHZdsAsTwQ2wKxAxCv2B3McOpqHMPFK3EMi9aZMSxbYMrQ1avDMHWlKUN+iApDZagwQ3WYMENupDJDbZ8OQ2OCJpjtXWLKwA/UTy5mpACjAQCi2R5F');

CheckUp;
if FindDTMRotated(S[0], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(S[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(S[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(S[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(S[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound)
end;
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
FreeDTM(S[0]);
FreeDTM(S[1]);
FreeDTM(S[2]);
FreeDTM(S[3]);
FreeDTM(S[4]);
FreeDTM(S[5]);
end;
end;
function Fishing: boolean;
var
PC, CC, Timer: Integer;
begin
CheckUp;
MarkTime(Timer);
PC := InvCount;
WriteLn('Waiting until fishing has stopped');
repeat
Wait(200+ random(50));
FindNormalRandoms;
Antiban;
CC := InvCount;
if not (CC = PC) then
begin
MarkTime(Timer);
PC := CC;
end;
if (TimefromMark(Timer) > Players[CurrentPlayer].integers[3]) and (PC = CC) then
begin
Exit;
end;
until(InvCount = 28);
Result := True;
end;
function FindFish(Var x, y: Integer): boolean;
var
TPA: TPointArray;
ATPA: T2DPointArray;
i : Integer;

begin
CheckUp;
Result := False;
FindColorsTolerance(TPA, 10984084, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(200 + random(100));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 4, 4);
If WaitUpText('age', 1000)then
begin
Result := True;
WriteLn('Found a fishing spot');
GetMousePos(x, y);
Exit;
end else
Result := False;
end;
end;
procedure WalkToDock;
Var x, y:Integer;
begin
D[0] := DTMFromString('m1gAAAHic42JgYJjCxMDQAMSZQBwFxEFAXAzFHUCcBsQZQGwBVCsJxMpArAPEdkBsCcROQOwLxKFAbA3Ey+ZYMlQGijNUhmsz1EbqMHQ1GTB0dRow9MwyZTh6NoFhyVY7BqUwUQZ+oFpiMCORGAEALsQTow==');
D[1] := DTMFromString('mwQAAAHic42RgYFjOxMDQDMQToHQSEE8G4mlAvBiI64E4HKguEohtgFgOiK2AWBOIE4DYEYhdgbhlmSXD9m3hDPnJGgz1oRIM5aFaDI0xugyHTsUz1HYZMOTHajDwA9URwoxEYDgAACuvEww=');
D[2] := DTMFromString('m6wAAAHic42ZgYJjOxMCwBIibgbgViEuBOBSIHYG4DIhTgTgZiu2A6kOAOACI7YHYDYiVgdgMiBWAWBaIbYBYD4hLOg0YOibMZ6hq12eoaNVnKGvWY6gPlWCoDZZgKC/TYkh0FGaoTtNhaIzRZeAHqicWM5KAkQAA454URg==');
D[3] := DTMFromString('mFQEAAHic42VgYJjFBMELgLgNiCcAcTUQpwBxFRAXAXE5EEcDcTgQFwKxGVBfGBD7AXEmEBcDcTQQRwKxJBCrAbE1ENsCsQcQewNxfLkWQ8eE+XBcWtPF0DXBiKGqXZ9h184Ihv4VVgz+pVoMeY26DFX1ugzJQHF+oD5SMSMZGAUAAIqmHJw=');
D[4] :=DTMFromString('mwQAAAHic42RgYJjNxMCQAMSpQFwNxIFAXArEU4G4FYgTgdgNqM4SiNWBWA2IHYE4A4qDgdgHiFd1yDEc2B/N0DFhPkNr7xyGPbsiGfqnmjAsbpZlSCnVYpC2E2TgB6ojhBmJwHAAAEYgE6o=');
D[5] := DTMFromString('m6wAAAHic42ZgYFjCxMCQD8RtQNwLxDOBuByIo4G4BojToHKxQBwBVJ8JxN5ArA7EalCsA8T+QOwCxAlAHAXEfe0uDHNqZRhWtMsxxHgoMXRMmA/HfUVSDBWt+gz51ToMkZXaDPxA9cRiRhIwEgAAc7IXPw==');
D[6] := DTMFromString('mFQEAAHic42VgYFjNxMDQCcR1QFwDxE1APAmIy4A4GohjgHgFEPcCcRoQlwCxDVCfHRBbAbErEGsBsSEQJwGxOhC7A3EoEAcDcQhUns/2OsPUBneGrnJnhsoMa4aOCfPBeOoUd4YYDyWGpS1yDF3NzgzNTfYME9qNGJq7ZzH8B+rjJxEzkoFRAABzxBz+');

CheckUp;
if FindDTMRotated(D[0], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(D[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(D[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(D[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
if FindDTMRotated(D[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound)
end;
if FindDTMRotated(D[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[6], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
FreeDTM(D[0]);
FreeDTM(D[1]);
FreeDTM(D[2]);
FreeDTM(D[3]);
FreeDTM(D[4]);
FreeDTM(D[5]);
FreeDTM(D[6]);

end;
end;

Procedure StartFishing;
var
x, y:Integer;
begin
CheckUp;
FFlag(0);
If FindFish(x, y) then
begin
ClickMouse2(False);
Mouse(x, y, 0, 0, false);
WaitOption(Players[CurrentPlayer].Strings[0], 600);
WriteLn('Successfully started to fish');
Fishing;
end;
end;

function FishCounter:boolean;
Var
SwordFishDTM, TunaDTM, LobsterDTM :Integer;
begin
SwordFishDTM := DTMFromString('mFQEAAHicnckxCoAwEETRSSQiQtBzpxIEQbRQBAuvGAs/JIWWceHt7LBe0malA9fLiR0LJoxYMefucJvEctdo4NFnHSJ/kRWGEFIp0LJLmR8+8wAIHQ3o');
TunaDTM := DTMFromString('m6wAAAHic42ZgYDjFxMBwAYgvA/FVID4DxEeA+AAQHwLio0wQNfuBWAmIZaG0BhCrArEWEKshyUkBsT4Qb6rbAzSdiSjMBSSJxYwkYCQAAIeoDNk=');
LobsterDTM := DTMFromString('mAAEAAHiclc0xDkBAFITht1uKdQPncBznopFQbEIUotEoFBQUoiBxG38hgm4n+SaZanwRKbVIiw4NaljkSJEgQ4EKsxLpMWDFgRM7NiyYbiPiKORFPwJjPvvPo10oR+9cvFITCA==');
SC := CountItems('dtm', SwordFishDTM, [0]);
TC := CountItems('dtm', TunaDTM, [0]);
LC := CountItems('dtm', LobsterDTM, [0]);
TSC := TSC + SC;
TTC := TTC + TC;
TLC := TLC + LC;
FC := FC + SC + TC + LC;
FreeDTM(SwordFishDTM);
FreeDTM(TunaDTM);
Result := True;
end;

Function ExchangeFish: boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CheckUp;
FFlag(0);
Wait(500 + random(200));
SetAngle(0);
MakeCompass('n');
FishCounter;
begin
Result := False;
FindColorsTolerance(TPA, 3487032, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(300 + random(200));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
begin
if WaitUpText('tiles', 600) then
begin
WriteLn('Found Stiles.');
Mouse(x, y, 0, 0, false);
If WaitOption('Exchange', 600) then
begin
Wait(1000 + random(300));
ClickToContinue;
WriteLn('Exchanged Fish.');
Inc(L);
end;
Result := True;
Exit;
end;
end;
end;
end;
end;
Procedure Report;
begin
XP:= (XP +(SC * 100) + (TC * 80) + (LC * 90));
TP:= (TP +(Players[CurrentPlayer].integers[0] * TC) + (Players[CurrentPlayer].integers[1] * SC) + (Players[CurrentPlayer].integers[2] * LC));
WriteLn('================================');
WriteLn('Report');
WriteLn('Time Running: ' + TimeRunning);
WriteLn('Fish Caught: ' + IntToStr(FC));
WriteLn('Total XP Gained: ' + IntToStr(XP));
WriteLn('Profit: ' + IntToStr(TP));
WriteLn('Loads: ' + IntToStr(L));
WriteLn('================================');

end;

Procedure WalkTotiles;
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Stiles...');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3511, 3967), Point(3483, 3968), Point(3450, 3975), Point(3416, 3995), Point(3416, 3995), Point(3416, 3995), Point(3389, 4015), Point(3389, 4015), Point(3355, 4031), Point(3327, 4049), Point(3300, 4062), Point(3268, 4080), Point(3241, 4094)];
SPS_WalkPath(myPath);
end;

Procedure WalkToock;
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Fishing Dock');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3240, 4096), Point(3260, 4085), Point(3282, 4069), Point(3282, 4069), Point(3294, 4056), Point(3314, 4042), Point(3342, 4028), Point(3342, 4028), Point(3376, 4018), Point(3398, 4012), Point(3426, 3998), Point(3455, 3989), Point(3479, 3982), Point(3501, 3973), Point(3516, 3967), Point(3526, 3955), Point(3527, 3938)];
SPS_WalkPath(myPath);

end;
Procedure Mainloop;
begin
CheckUp;
repeat
WalkToDock;
Exchangefish;
StartFishing;
Until(InvFull)
begin
WalkToStiles;
ExchangeFish;
Report;
WalkToDock;
end;
end;


begin
ClearDebug;
SetUpSrl;
ActivateClient;
DeclarePlayers;
LoginPlayer;
SetAngle(0);
SetRun(True);
MouseSpeed := RandomRange(15, 25);
repeat
Mainloop;
until(false)
end.

Daniel

2012-02-04 08:02:44

From: Siel
Ill change it to DTM walking later today.


Something else. Use DDTMs, RadialWalking, or better yet, even TPA walking. ;)

masterBB

2012-02-04 08:42:19

From: Siel
Ill do both. :D

…

Here is the AutoColor feature annotated. I think that this is was you request for me to do. If not then just tell me what you wanted.

code block


This is not entirely true, but I think it's a good attempt. Can't find a tutorial what it does, so won't blame you for writing wrong explanation. You won't score any points with it on my yes-no scale, but I would vote yes if you write your own sexy stiles finder.

Scaper

2012-02-04 08:42:30

Yes curently running the updated version of this script and its nice i like :)

ill update this post with a proggy later on

Wetish

2012-02-04 09:06:19

From: Daniel
Something else. Use DDTMs, RadialWalking, or better yet, even TPA walking. ;)

When I tried to use RadialWalking before I found it to unreliable and I did not enjoy coding it. I would be willing to use TPA walking but I can not find an updated tutorial. If you can find one I would greatly appreciate it.

From: masterBB
This is not entirely true, but I think it's a good attempt. Can't find a tutorial what it does, so won't blame you for writing wrong explanation. You won't score any points with it on my yes-no scale, but I would vote yes if you write your own sexy stiles finder.

Do you want me to create a function to find the color of stiles? I already updated my exchanging procedure to just use one color and tpas and it works well.

From: Scaper
Yes curently running the updated version of this script and its nice i like :)

ill update this post with a proggy later on


Thanks for the support. I cant wait to see your proggy. :smile:

masterBB

2012-02-04 09:12:34

Completely missed that, a big fat yes from me!

Wetish

2012-02-04 09:35:50

From: masterBB
Completely missed that, a big fat yes from me!


Thanks for the support :D

Scaper

2012-02-04 10:13:15

i stopped manualy to remove activateclient as it was casing problerms while on the internet
im re running getting swordies and tuna maybe add an option to drop tuna?

================================
Report
Time Running: 1 Hours, 44 Minutes and 5 Seconds
Fish Caught: 910
Total XP Gained: 32820
Profit: 133311
Loads: 14
================================

nice smooth script

Wetish

2012-02-04 10:18:05

From: Scaper
i stopped manualy to remove activateclient as it was casing problerms while on the internet
im re running getting swordies and tuna maybe add an option to drop tuna?

================================
Report
Time Running: 1 Hours, 44 Minutes and 5 Seconds
Fish Caught: 910
Total XP Gained: 32820
Profit: 133311
Loads: 14
================================

nice smooth script

I personally find it a waste of time and money to drop tuna but I could add that in the future.

WT-Fakawi

2012-02-04 10:24:19

Good enough for me.

Wetish

2012-02-04 10:28:38

From: WT-Fakawi
Good enough for me.

Thank you for the support. :D

Sin

2012-02-04 14:50:40

You should try to do different scripts, try a combat script and its a yes from me.

[XoL]

2012-02-04 14:54:28

I looked at your posts, and I must say I am impressed. You ask for help when you can't figure it out instead of quitting which is something I love to see!

I would like it if you were a bit more active, but other than that I like the scripts they work and they work well at that.

Yes.

Wetish

2012-02-04 15:01:51

From: Sin
You should try to do different scripts, try a combat script and its a yes from me.

What type of combat script would you like? Combat would be new to me since all of my other scripts have been skilling related. I have created simple powerchoppers and powerminers to learn from. I also have a unfinished ClayMiner that I was going to release but with the 2 other ones I put the project aside.

Hobbit

2012-02-04 15:02:14

Yes

Wetish

2012-02-04 15:02:54

From: R4nd0m
I looked at your posts, and I must say I am impressed. You ask for help when you can't figure it out instead of quitting which is something I love to see!

I would like it if you were a bit more active, but other than that I like the scripts they work and they work well at that.

Yes.


Thank you for the support. I will sure to try to post some money and integrate myself into this awesome community. :D


From: Hobbit
Yes

Those three letters mean a lot. Thank you Hobbit

Markus

2012-02-04 15:12:36

Voting no:
Autocolor is 100% ACA output, surprises me noone recognized that? You guys asleep? the variable names are exactly the same like arL, tmpCTS and the code also really looks ACA like. Remember the sticky of this board http://villavu.com/forum/showthread.php?t=42028
CRTL-F Logout; couldn't find any place where you log out in case of problems, so that's automatically no failsafes.
CRTL-F NextPlayer: you ask people to enter how many characters they are using, but you aren't even switching between them?
Nice that you copy/pasted the code from Demise's DTM tutorial (or a script of hers or whatever). Now use a for-loop.
Antiban: I've seen that one at least 5 times before, whose was it originally?
Also dodgy standars at times.

Wetish

2012-02-04 16:29:21

From: Markus
Voting no:
Autocolor is 100% ACA output, surprises me noone recognized that? You guys asleep? the variable names are exactly the same like arL, tmpCTS and the code also really looks ACA like. Remember the sticky of this board http://villavu.com/forum/showthread.php?t=42028
CRTL-F Logout; couldn't find any place where you log out in case of problems, so that's automatically no failsafes.
CRTL-F NextPlayer: you ask people to enter how many characters they are using, but you aren't even switching between them?
Nice that you copy/pasted the code from Demise's DTM tutorial (or a script of hers or whatever). Now use a for-loop.
Antiban: I've seen that one at least 5 times before, whose was it originally?
Also dodgy standars at times.

What is wrong about using ACA, People make programs so that you can use them not admire them? Anyway I decided to stick to one color.
If people want to use multiple players with this script then they are most likely using it to goldfarm so I left somethings out for it. Yes… I did use her tutorial for DTM walking. What is wrong with it? Do you want me to create a new walking procedure when there is one that works perfectly? And for antiban.. Well I merged antiban methods from other scripts into one that I liked. You may recognize some of the actions but they are in all scripts. Instead of telling me what I did wrong why dont your recommend me how to fix it so that you like it. I cant do anything with something you thing is wrong but I think is right. Thank you for your imput though. Ill try to change somethings to your liking.

Sin

2012-02-04 16:36:57

From: Siel
What is wrong about using ACA, People make programs so that you can use them not admire them? Anyway I decided to stick to one color.
If people want to use multiple players with this script then they are most likely using it to goldfarm so I left somethings out for it. Yes… I did use her tutorial for DTM walking. What is wrong with it? Do you want me to create a new walking procedure when there is one that works perfectly? And for antiban.. Well I merged antiban methods from other scripts into one that I liked. You may recognize some of the actions but they are in all scripts. Instead of telling me what I did wrong why dont your recommend me how to fix it so that you like it. I cant do anything with something you thing is wrong but I think is right. Thank you for your imput though. Ill try to change somethings to your liking.


What's wrong with ACA -
It's overused and NOT made by you.

Multiple Players-
Goldfarming with Swordfish/Lobsters? Lol gl with that.
Also, this is a private forum, you could've just added the multiple players in this version and not the public.

DTM's-
DTM's = easy as hell.
Try RadialWalking or even TPA walking.

Antiban -
Try to be genuine, we don't want to see something that every Tom Dick and Harry does. (No offense TomTuff, Harry and Kyle <– JK :D)


I don't like your attitude atm so it's a no from me.

Wetish

2012-02-04 16:43:52

From: Sin
What's wrong with ACA -
It's overused and NOT made by you.

Multiple Players-
Goldfarming with Swordfish/Lobsters? Lol gl with that.
Also, this is a private forum, you could've just added the multiple players in this version and not the public.

DTM's-
DTM's = easy as hell.
Try RadialWalking or even TPA walking.

Antiban -
Try to be genuine, we don't want to see something that every Tom Dick and Harry does. (No offense TomTuff, Harry and Kyle <– JK :D)


I don't like your attitude atm so it's a no from me.


You can not tell someones attitude with out talking with them from face to face. For all you know I could be extremely happy and excited right now about this. Ill add multiple players and Ill try to update walking again.

Markus

2012-02-04 16:44:26

From: Siel
What is wrong about using ACA, People make programs so that you can use them not admire them? Anyway I decided to stick to one color.


Nothing. But people voted yes because they thought it was advanced and written by you.

From: Siel

f people want to use multiple players with this script then they are most likely using it to goldfarm so I left somethings out for it

This might sound like a real stupid question, but why do you ask how many players you are using when you don't even care! Makes no sense at all.

Do you want me to create a new walking procedure when there is one that works perfectly?
Yes, might be more original as it saves you the hassle of pressing crtl-v 11 times and then changing 22 values.
Here is mine, it shortened your script by quite a lot of lines.


function WalkDTM(dtmArray : TIntegerArray) : boolean;
var
i, x, y : integer;
afound : extended;
begin
result := true;
for i := 0 to high(dtmArray)-1 do
begin
if FindDTMRotated(dtmArray[i], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[i+1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end else
begin
result := false;
exit;
end;
end;
end;

Sin

2012-02-04 16:48:55

From: Siel
You can not tell someones attitude with out talking with them from face to face. For all you know I could be extremely happy and excited right now about this. Ill add multiple players and Ill try to update walking again.


Not necessarily.
What's this guy's attitude -
FUCK you noobs, I know im the best scripter out here.
I fucking deserve SRL Member
Nobody's better than me.

I don't know him personally, but what can you tell about him?

Wetish

2012-02-04 16:54:28

From: Markus
Nothing. But people voted yes because they thought it was advanced and written by you.


This might sound like a real stupid question, but why do you ask how many players you are using when you don't even care! Makes no sense at all.

Yes, might be more original as it saves you the hassle of pressing crtl-v 11 times and then changing 22 values.
Here is mine, it shortened your script by quite a lot of lines.


function WalkDTM(dtmArray : TIntegerArray) : boolean;
var
i, x, y : integer;
afound : extended;
begin
result := true;
for i := 0 to high(dtmArray)-1 do
begin
if FindDTMRotated(dtmArray[i], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[i+1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end else
begin
result := false;
exit;
end;
end;
end;

I find it hard to believe that people have never seen ACA code and are not able to recognize it. I will remove it from the first post to make sure I do not miss direct anyone.

What makes you think that I dont care. I am creating a script for a community and I would want my hard work to be put for something I support and not something I despise.

I really like your walking procedure. I never thought about having a variable and adding 1 to it once it walked to a point so that it would walk to the next point. I would feel bad using something that you showed to to try to impress you with so I will have to pass on using it.

From: Sin
Not necessarily.
What's this guy's attitude -
FUCK you noobs, I know im the best scripter out here.
I fucking deserve SRL Member
Nobody's better than me.

I don't know him personally, but what can you tell about him?

I get your point. Ill try my best to keep a positive out look.:tongue:

Scaper

2012-02-04 18:36:45

quiet like this script still running im gunna run tghis with crash smart tonight

================================
Report
Time Running: 5 Hours, 33 Minutes and 33 Seconds
Fish Caught: 3053
Total XP Gained: 111870
Profit: 310750
Loads: 46
================================

think the counting fish is off tho i havnt caught that many lobs

Wetish

2012-02-04 19:11:04

From: Scaper
quiet like this script still running im gunna run tghis with crash smart tonight

================================
Report
Time Running: 5 Hours, 33 Minutes and 33 Seconds
Fish Caught: 3053
Total XP Gained: 111870
Profit: 310750
Loads: 46
================================

think the counting fish is off tho i havnt caught that many lobs

Hmm… It could be my DTM or something in the code. Just to make sure you have my newest version I uploaded it for you.

the scar noob

2012-02-04 19:34:10

Simple code, but appears to be effective (Scaper's post), leaning towards a yes :)
I see you're willing to learn..but I'd reccomend reading some more tuts though ;p

Anyways, good job so far :)

Scaper

2012-02-04 19:58:45

From: the scar noob
Simple code, but appears to be effective (Scaper's post), leaning towards a yes :)
I see you're willing to learn..but I'd reccomend reading some more tuts though ;p

Anyways, good job so far :)


Yea I went away and was thinking that I should posted with my post

"Simple but very effective"

:)

But anyway I want to go on and say standards are way off and as markus says ACA etc I still voted yes

Wetish

2012-02-04 20:05:39

From: Scaper
Yea I went away and was thinking that I should posted with my post

"Simple but very effective"

:)

But anyway I want to go on and say standards are way off and as markus says ACA etc I still voted yes

Thanks. It means alot. I really need to fix up the standards but I dont understand the official standards. When I read through the tutorial for it I understand it but when I try to implement it my mind goes blank and I dont know how to edit it.

Kyle Undefined

2012-02-04 20:32:29

Markus, that's why I asked him to explain the ACA code, I knew it came from there.

Siel, even though you explained the code just fine, I'd like to see you make your own ACA function. Still holding my vote.

Wetish

2012-02-04 20:34:52

It turns out I was looking at an outdated tutorial so thats why I didnt understand it that well. Here is the updated code with standards.


program KaramjaFisher;
//{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
Const
SERVER = 0; // Enter "0" to pick a random server.
MEMBERS = False; // Set to True if using a RS-Members account. False if F2P.
SRLStats_Username = ''; // Your SRL Stats Username
SRLStats_Password = ''; // Your SRL Stats Password
NumbOfPlayers= 3; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first chararacter)

Version= '1.0';
procedure DeclarePlayers;
var i:integer;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;
for i := 0 to NumbOfPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 30000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish

end;
with Players[1] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 30000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish

end;
with Players[3] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;
Players[0].Integers[0] := 506; //Price of SwordFish
Players[0].Integers[1] := 193; //Price of Tuna
Players[0].Integers[2] := 250; //Price of Lobster
Players[0].Integers[3] := 30000;//Time after a fish is caught to allow for more fish to be caught before finding a new fishing spot(1000 = 1 Second)
Players[0].Strings[0] := 'Cage';//'Cage' for lobsters and 'Harpoon' for Tuna/Swordfish

end;
end;
Var
SC, TC, LC, TTC, TSC, TLC, FC, L, XP, TP :Integer;
S: Array [0..5] of Integer;
D: Array [0..6] of Integer;
aFound: Extended;

procedure CheckUp;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
end;

procedure AntiBan;
begin
if not LoggedIn then Exit;
case Random(1000) of
0: begin
RandomMovement;
SetAngle(SRL_ANGLE_HIGH);
end;
1: PickUpMouse;
2: HoverSkill('Fishing', False);
3: SleepAndMoveMouse(5000 + Random(500));
4: RandomMovement;
5: PickUpMouse;
6: BoredHuman;
7: RandomRClick;
8: ExamineInv;
9..20:begin
MakeCompass( RandomRange( -360, 360));
Wait(100 + random(50));
end;
21..50: Wait( Random( 4500));
51..200: CheckUp;
end;
end;

procedure WalkTotiles;
Var x, y:Integer;
begin
S[0] := DTMFromString('mPwEAAHic42dgYHBkYmBwAWJPIPYH4iQgDobyQXJRQBwBFYuCqnEFYg8gLgbqTwTiGiAuAOIcII4F4kggDoPKpUHFg4A4EIh9gDgUiLvrHBny4k0Y2trsGTzyzMB4ZosHQ3upA1h8Sr0rQ12xNVi8tW8OHE+qc2HgB+onFzNSgNEAAOucHkU=');
S[1] := DTMFromString('mKgEAAHic42NgYLBkYmDwB2I/ILYH4iAoTgXiRCCOB+IoIE4H4lIoDgXiZKDeVCAOBOIgINYAYjMgVgNiPSD2B2JHIHYHYmcgtgLiGCCeXyvFoBomzDCxSIJhbYcMQ7yHAsPCemmG7glzGYpi1Rj6W/QZ/ArMGXpKHRjKks0YessdwXx+oF5yMCOZGBUAAC0gGVY=');
S[2] := DTMFromString('mVAEAAHicpcw/CwEBHIfxL2+ATbLcIFGWGy4LGXS5QeoMyr9cKVJEGe5uvlEhgywmZTHYDF6dx2Wy+tWnb/2GJy2pnpT62MBGFU24GGCPJXoYIcQUHjoIaCwwR+3TQwEm8jDQQAs2HAwx+/52R1N+WNI5yOr+cPV8dbU9XHQ9WfGOHUOWl4m11xXdoly8K7+oSVRWisY/En/6vTdnVB7S');
S[3] := DTMFromString('mFQEAAHic42VgYHBiYmBIB+IGIC4H4mwgDgViLyBOAGIHqHwYEJcBcREQVwL11QBxPBAXAHEqEKcDcTAQywBxMhDHALEbEDsCcRMQV7foMnT2zgXjlmJbBuVgYYa6dj0Gn1xzhnMn4hiKgfKt/YYMAUUaDIllmgxllR0M/EB9pGJGMjAKAAAaYBre');
S[4] := DTMFromString('mAAEAAHic42FgYLBiYmDwBuI8II6B0jOAuAWIE4HYEYjtgDgeiOuAOBuoxwWI3YDYF4jzgDgMiN2BWA+IdYDYC4iVgdgaiI8diGUoT9BmqGo2YCit1WPonGfB0NW3gKG+w5Chs8WAoTVUiiE/WIOhukyHwSVOgYEfqIcUzEgiRgYAh9AXRQ==');
S[5] := DTMFromString('mPwEAAHic42dgYPBgYmCIAOIMII4D4kwmiJgPENsDcTgQFwBxMxDPhNJFUPX5QP3ZQJwOxNFAHATFcUBsDMTaQCwHZdsAsTwQ2wKxAxCv2B3McOpqHMPFK3EMi9aZMSxbYMrQ1avDMHWlKUN+iApDZagwQ3WYMENupDJDbZ8OQ2OCJpjtXWLKwA/UTy5mpACjAQCi2R5F');

CheckUp;
if FindDTMRotated(S[0], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(S[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(S[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(S[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(S[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(S[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound)
end;

begin
Mouse(x, y, 3, 3, True);
FFlag(5);
FreeDTM(S[0]);
FreeDTM(S[1]);
FreeDTM(S[2]);
FreeDTM(S[3]);
FreeDTM(S[4]);
FreeDTM(S[5]);
end;
end;
function Fishing: boolean;
var
pc, cc, timer: Integer;
begin
CheckUp;
MarkTime(timer);
pc := InvCount;
WriteLn('Waiting until fishing has stopped');
repeat
Wait(200+ random(50));
FindNormalRandoms;
Antiban;
cc := InvCount;
if not (cc = pc) then
begin
MarkTime(Timer);
pc := c;
end;
if (TimefromMark(Timer) > Players[CurrentPlayer].integers[3]) and (pc = cc) then
begin
Exit;
end;
until(InvCount = 28);
Result := True;
end;
function FindFish(Var x, y: Integer): boolean;
var
tpa: TPointArray;
atpa: T2DPointArray;
i : Integer;

begin
CheckUp;
Result := False;
FindColorsTolerance(tpa, 10984084, MSX1, MSY1, MSX2, MSY2, 6);
atpa := TPAToATPAEx(tpa, 10, 10);
for i := 0 to High(atpa) do
begin
FFlag(0);
Wait(200 + random(100));
MiddleTPAEx(atpa[i], x, y);
MMouse(x, y, 4, 4);
If WaitUpText('age', 1000)then
begin
Result := True;
WriteLn('Found a fishing spot');
GetMousePos(x, y);
Exit;
end else
Result := False;
end;
end;
procedure WalkToock;
Var x, y:Integer;
begin
D[0] := DTMFromString('m1gAAAHic42JgYJjCxMDQAMSZQBwFxEFAXAzFHUCcBsQZQGwBVCsJxMpArAPEdkBsCcROQOwLxKFAbA3Ey+ZYMlQGijNUhmsz1EbqMHQ1GTB0dRow9MwyZTh6NoFhyVY7BqUwUQZ+oFpiMCORGAEALsQTow==');
D[1] := DTMFromString('mwQAAAHic42RgYFjOxMDQDMQToHQSEE8G4mlAvBiI64E4HKguEohtgFgOiK2AWBOIE4DYEYhdgbhlmSXD9m3hDPnJGgz1oRIM5aFaDI0xugyHTsUz1HYZMOTHajDwA9URwoxEYDgAACuvEww=');
D[2] := DTMFromString('m6wAAAHic42ZgYJjOxMCwBIibgbgViEuBOBSIHYG4DIhTgTgZiu2A6kOAOACI7YHYDYiVgdgMiBWAWBaIbYBYD4hLOg0YOibMZ6hq12eoaNVnKGvWY6gPlWCoDZZgKC/TYkh0FGaoTtNhaIzRZeAHqicWM5KAkQAA454URg==');
D[3] := DTMFromString('mFQEAAHic42VgYJjFBMELgLgNiCcAcTUQpwBxFRAXAXE5EEcDcTgQFwKxGVBfGBD7AXEmEBcDcTQQRwKxJBCrAbE1ENsCsQcQewNxfLkWQ8eE+XBcWtPF0DXBiKGqXZ9h184Ihv4VVgz+pVoMeY26DFX1ugzJQHF+oD5SMSMZGAUAAIqmHJw=');
D[4] :=DTMFromString('mwQAAAHic42RgYJjNxMCQAMSpQFwNxIFAXArEU4G4FYgTgdgNqM4SiNWBWA2IHYE4A4qDgdgHiFd1yDEc2B/N0DFhPkNr7xyGPbsiGfqnmjAsbpZlSCnVYpC2E2TgB6ojhBmJwHAAAEYgE6o=');
D[5] := DTMFromString('m6wAAAHic42ZgYFjCxMCQD8RtQNwLxDOBuByIo4G4BojToHKxQBwBVJ8JxN5ArA7EalCsA8T+QOwCxAlAHAXEfe0uDHNqZRhWtMsxxHgoMXRMmA/HfUVSDBWt+gz51ToMkZXaDPxA9cRiRhIwEgAAc7IXPw==');
D[6] := DTMFromString('mFQEAAHic42VgYFjNxMDQCcR1QFwDxE1APAmIy4A4GohjgHgFEPcCcRoQlwCxDVCfHRBbAbErEGsBsSEQJwGxOhC7A3EoEAcDcQhUns/2OsPUBneGrnJnhsoMa4aOCfPBeOoUd4YYDyWGpS1yDF3NzgzNTfYME9qNGJq7ZzH8B+rjJxEzkoFRAABzxBz+');

CheckUp;
if FindDTMRotated(D[0], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(D[1], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(D[2], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(D[3], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

if FindDTMRotated(D[4], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound)
end;

if FindDTMRotated(D[5], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 3, 3, True);
FFlag(5);
repeat
Wait(300 + Random(50));
Findnormalrandoms;
Antiban;
until FindDTMRotated(D[6], x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound);
end;

begin
Mouse(x, y, 3, 3, True);
FFlag(5);
FreeDTM(D[0]);
FreeDTM(D[1]);
FreeDTM(D[2]);
FreeDTM(D[3]);
FreeDTM(D[4]);
FreeDTM(D[5]);
FreeDTM(D[6]);
end;
end;

Procedure StartFishing;
var
x, y:Integer;
begin
CheckUp;
FFlag(0);
If FindFish(x, y) then
begin
ClickMouse2(False);
Mouse(x, y, 0, 0, false);
WaitOption(Players[CurrentPlayer].Strings[0], 600);
WriteLn('Successfully started to fish');
Fishing;
end;
end;

function FishCounter:boolean;
Var
SwordFishDTM, TunaDTM, LobsterDTM :Integer;
begin
SwordFishDTM := DTMFromString('mFQEAAHicnckxCoAwEETRSSQiQtBzpxIEQbRQBAuvGAs/JIWWceHt7LBe0malA9fLiR0LJoxYMefucJvEctdo4NFnHSJ/kRWGEFIp0LJLmR8+8wAIHQ3o');
TunaDTM := DTMFromString('m6wAAAHic42ZgYDjFxMBwAYgvA/FVID4DxEeA+AAQHwLio0wQNfuBWAmIZaG0BhCrArEWEKshyUkBsT4Qb6rbAzSdiSjMBSSJxYwkYCQAAIeoDNk=');
LobsterDTM := DTMFromString('mAAEAAHiclc0xDkBAFITht1uKdQPncBznopFQbEIUotEoFBQUoiBxG38hgm4n+SaZanwRKbVIiw4NaljkSJEgQ4EKsxLpMWDFgRM7NiyYbiPiKORFPwJjPvvPo10oR+9cvFITCA==');
begin
SC := CountItems('dtm', SwordFishDTM, [0]);
TC := CountItems('dtm', TunaDTM, [0]);
LC := CountItems('dtm', LobsterDTM, [0]);
TSC := TSC + SC;
TTC := TTC + TC;
TLC := TLC + LC;
FC := FC + SC + TC + LC;
FreeDTM(SwordFishDTM);
FreeDTM(TunaDTM);
Result := True;
end;
end;

Function ExchangeFish: boolean;
Var
x, y, i: Integer;
TPA: TPointArray;
ATPA: T2DPointArray;
begin
CheckUp;
FFlag(0);
Wait(500 + random(200));
SetAngle(0);
MakeCompass('n');
FishCounter;
begin
Result := False;
FindColorsTolerance(TPA, 3487032, MSX1, MSY1, MSX2, MSY2, 6);
ATPA := TPAToATPAEx(TPA, 10, 10);
for i := 0 to High(ATPA) do
begin
FFlag(0);
Wait(300 + random(200));
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
if WaitUpText('tiles', 600) then
begin
WriteLn('Found Stiles.');
Mouse(x, y, 0, 0, false);
If WaitOption('Exchange', 600) then
begin
Wait(1000 + random(300));
WriteLn('Exchanged Fish.');
Inc(L);
end;
Result := True;
Exit;
end;
end;
end;
end;

Procedure Report;
begin
XP:= (XP +(SC * 100) + (TC * 80) + (LC * 90));
TP:= (TP +(Players[CurrentPlayer].integers[0] * TC) + (Players[CurrentPlayer].integers[1] * SC) + (Players[CurrentPlayer].integers[2] * LC));
WriteLn('================================');
WriteLn('Report');
WriteLn('Time Running: ' + TimeRunning);
WriteLn('Fish Caught: ' + IntToStr(FC));
WriteLn('Total XP Gained: ' + IntToStr(XP));
WriteLn('Profit: ' + IntToStr(TP));
WriteLn('Loads: ' + IntToStr(L));
WriteLn('================================');
end;

Procedure WalkToStiles;//This has been replaced with DTM walking
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Stiles...');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3511, 3967), Point(3483, 3968), Point(3450, 3975), Point(3416, 3995), Point(3416, 3995), Point(3416, 3995), Point(3389, 4015), Point(3389, 4015), Point(3355, 4031), Point(3327, 4049), Point(3300, 4062), Point(3268, 4080), Point(3241, 4094)];
SPS_WalkPath(myPath);
end;

Procedure WalkToDock; //This has been replaced with DTM walking
var
myPath:TPointArray;
begin
CheckUp;
WriteLn('Walking To Fishing Dock');
SPS_Setup(RUNESCAPE_SURFACE,['8_9','8_10']);//SPS Areas
myPath := [Point(3240, 4096), Point(3260, 4085), Point(3282, 4069), Point(3282, 4069), Point(3294, 4056), Point(3314, 4042), Point(3342, 4028), Point(3342, 4028), Point(3376, 4018), Point(3398, 4012), Point(3426, 3998), Point(3455, 3989), Point(3479, 3982), Point(3501, 3973), Point(3516, 3967), Point(3526, 3955), Point(3527, 3938)];
SPS_WalkPath(myPath);
end;
Procedure Mainloop;
begin
CheckUp;
repeat
StartFishing;
Until(InvFull)
begin
WalkToStiles;
ExchangeFish;
Report;
WalkToDock;
end;
end;
begin
ClearDebug;
SetUpSrl;
ActivateClient;
DeclarePlayers;
LoginPlayer;
SetAngle(0);
SetRun(True);
MouseSpeed := RandomRange(15, 25);
repeat
Mainloop;
until(false)
end.

From: Kyle Undefined
Markus, that's why I asked him to explain the ACA code, I knew it came from there.

Siel, even though you explained the code just fine, I'd like to see you make your own ACA function. Still holding my vote.

Ill attempt to do that tomorrow. Its getting late and I need some sleep.

P1nky

2012-02-04 20:37:29

I'd like to change my vote to Yes. If a mod could, I'd appreciate it :)

Thanks and Siel, good job Mate.

Wetish

2012-02-04 20:58:17

From: P1nky
I'd like to change my vote to Yes. If a mod could, I'd appreciate it :)

Thanks and Siel, good job Mate.

Thanks for the support! I would like to ask why you voted no. It may help me improve my script. :staycool:

I have created my own StilesColorFinder.

function StilesColor: Integer;
var
TPA: TPointArray;
ATPA: Array of TPointArray;
TIA: TIntegerArray;
i, t, x, y : Integer;
begin
t := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(0.90, 1.90);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 2763564, MSX1, MSY1, MSX2, MSY2, 5);
ColorToleranceSpeed(t);
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPAEx(tpa, 50, 50);
SortATPASize(ATPA, True);
TIA := GetColors(TPA);
ClearSameIntegers(TIA);
for i := 0 to High(ATPA) do
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 3, 3);
Result := TIA[i];
end;

Kyle Undefined

2012-02-05 14:57:01

What CTS are you using in your function? 1/2/3?

masterBB

2012-02-05 15:03:12

I don't believe that function does what you think it does…

Wetish

2012-02-05 15:18:58

From: Kyle Undefined
What CTS are you using in your function? 1/2/3?

Im using 1.

Kyle Undefined

2012-02-05 15:21:24

Then you should be able to spot at least 2 errors in your function, what are they?

masterBB

2012-02-05 15:23:32

edit out

answered kyles question:P

Wetish

2012-02-05 15:24:32

From: Kyle Undefined
Then you should be able to spot at least 2 errors in your function, what are they?

It appears I lost your vote. I dont know the errors. At least I tried…
Could you at least tell me what they are for future reference.

masterBB

2012-02-05 15:31:39

I will
wait a minute ;)

The difference between cts_no, cts_0, cts_1, cts_2, cts_3 is the way they compare colors. Here is the source:

function ColorSame_ctsNo(ctsInfo: Pointer; C2: PRGB32): boolean;
var
C1: TCTSNoInfo;
begin
C1 := PCTSNoInfo(ctsInfo)^;
Result := (C1.B = C2^.B)
and (C1.G = C2^.G)
and (C1.R = C2^.R);
end;

function ColorSame_cts0(ctsInfo: Pointer; C2: PRGB32): boolean;

var
C1: TCTS0Info;
begin
C1 := PCTS0Info(ctsInfo)^;
Result := (Abs(C1.B - C2^.B) <= C1.Tol)
and (Abs(C1.G - C2^.G) <= C1.Tol)
and (Abs(C1.R - C2^.R) <= C1.Tol);
end;

function ColorSame_cts1(ctsInfo: Pointer; C2: PRGB32): boolean;

var
C1: TCTS1Info;
r,g,b: integer;
begin
C1 := PCTS1Info(ctsInfo)^;
b := C1.B - C2^.B;
g := C1.G - C2^.G;
r := C1.R - C2^.R;
Result := (b*b + g*g + r*r) <= C1.Tol;
end;

function ColorSame_cts2(ctsInfo: Pointer; C2: PRGB32): boolean;

var
r,g ,b: extended;
CMin, CMax,D : extended;
h,s,l : extended;
i: TCTS2Info;
begin
i := PCTS2Info(ctsInfo)^;

R := Percentage[C2^.r];
G := Percentage[C2^.g];
B := Percentage[C2^.b];

CMin := R;
CMax := R;
if G < Cmin then CMin := G;
if B < Cmin then CMin := B;
if G > Cmax then CMax := G;
if B > Cmax then CMax := B;
l := 0.5 * (Cmax + Cmin);
//The L-value is already calculated, lets see if the current point meats the requirements!
if abs(l*100 - i.L) > i.Tol then
exit(false);
if Cmax = Cmin then
begin
//S and H are both zero, lets check if it mathces the tol
if (i.H <= (i.hueMod)) and
(i.S <= (i.satMod)) then
exit(true)
else
exit(false);
end;
D := Cmax - Cmin;
if l < 0.5 then
s := D / (Cmax + Cmin)
else
s := D / (2 - Cmax - Cmin);
// We've Calculated the S, check match
if abs(S*100 - i.S) > i.satMod then
exit(false);
if R = Cmax then
h := (G - B) / D
else
if G = Cmax then
h := 2 + (B - R) / D
else
h := 4 + (R - G) / D;
h := h / 6;
if h < 0 then
h := h + 1;
//Finally lets test H2

h := h * 100;

if h > i.H then
Result := min(h - i.H, abs(h - (i.H + 100) )) <= i.hueMod
else
Result := min(i.H - h, abs(i.H - (h + 100) )) <= i.hueMod;
end;

function ColorSame_cts3(ctsInfo: Pointer; C2: PRGB32): boolean;

var
i: TCTS3Info;
r, g, b : extended;
x, y, z, L, A, bb: Extended;
begin
i := PCTS3Info(ctsInfo)^;
{ RGBToXYZ(C2^.R, C2^.G, C2^.B, X, Y, Z); }
{ XYZToCIELab(X, Y, Z, L, A, B); }
R := Percentage[C2^.r];
G := Percentage[C2^.g];
B := Percentage[C2^.b];
if r > 0.04045 then
r := Power( ( r + 0.055 ) / 1.055 , 2.4) * 100
else
r := r * 7.73993808;
if g > 0.04045 then
g := Power( ( g + 0.055 ) / 1.055 , 2.4) * 100
else
g := g * 7.73993808;
if b > 0.04045 then
b := Power( ( b + 0.055 ) / 1.055 , 2.4) * 100
else
b := b * 7.73993808;

y := (r * 0.2126 + g * 0.7152 + b * 0.0722)/100.000;
if ( Y > 0.008856 ) then
Y := Power(Y, 1.0/3.0)
else
Y := ( 7.787 * Y ) + ( 16.0 / 116.0 );

x := (r * 0.4124 + g * 0.3576 + b * 0.1805)/95.047;
if ( X > 0.008856 ) then
X := Power(X, 1.0/3.0)
else
X := ( 7.787 * X ) + ( 16.0 / 116.0 );

z := (r * 0.0193 + g * 0.1192 + b * 0.9505)/108.883;
if ( Z > 0.008856 ) then
Z := Power(Z, 1.0/3.0)
else
Z := ( 7.787 * Z ) + ( 16.0 / 116.0 );

l := (116.0 * Y ) - 16.0;
a := 500.0 * ( X - Y );
bb := 200.0 * ( Y - Z );

L := L - i.L;
A := A - i.A;
Bb := Bb - i.B;

Result := (L*L + A*A + bB*Bb) <= i.Tol;
end;

As you see, CTS 1 doesn't use hue and sat. That is wrong.

But can you find the mistake in the TPA, ATPA thing in the end, cause this function doesn't return a "autocolored" color.

Wetish

2012-02-05 15:36:39

From: masterBB
I will
wait a minute ;)

The difference between cts_no, cts_0, cts_1, cts_2, cts_3 is the way they compare colors. Here is the source:

function ColorSame_ctsNo(ctsInfo: Pointer; C2: PRGB32): boolean;
var
C1: TCTSNoInfo;
begin
C1 := PCTSNoInfo(ctsInfo)^;
Result := (C1.B = C2^.B)
and (C1.G = C2^.G)
and (C1.R = C2^.R);
end;

function ColorSame_cts0(ctsInfo: Pointer; C2: PRGB32): boolean;

var
C1: TCTS0Info;
begin
C1 := PCTS0Info(ctsInfo)^;
Result := (Abs(C1.B - C2^.B) <= C1.Tol)
and (Abs(C1.G - C2^.G) <= C1.Tol)
and (Abs(C1.R - C2^.R) <= C1.Tol);
end;

function ColorSame_cts1(ctsInfo: Pointer; C2: PRGB32): boolean;

var
C1: TCTS1Info;
r,g,b: integer;
begin
C1 := PCTS1Info(ctsInfo)^;
b := C1.B - C2^.B;
g := C1.G - C2^.G;
r := C1.R - C2^.R;
Result := (b*b + g*g + r*r) <= C1.Tol;
end;

function ColorSame_cts2(ctsInfo: Pointer; C2: PRGB32): boolean;

var
r,g ,b: extended;
CMin, CMax,D : extended;
h,s,l : extended;
i: TCTS2Info;
begin
i := PCTS2Info(ctsInfo)^;

R := Percentage[C2^.r];
G := Percentage[C2^.g];
B := Percentage[C2^.b];

CMin := R;
CMax := R;
if G < Cmin then CMin := G;
if B < Cmin then CMin := B;
if G > Cmax then CMax := G;
if B > Cmax then CMax := B;
l := 0.5 * (Cmax + Cmin);
//The L-value is already calculated, lets see if the current point meats the requirements!
if abs(l*100 - i.L) > i.Tol then
exit(false);
if Cmax = Cmin then
begin
//S and H are both zero, lets check if it mathces the tol
if (i.H <= (i.hueMod)) and
(i.S <= (i.satMod)) then
exit(true)
else
exit(false);
end;
D := Cmax - Cmin;
if l < 0.5 then
s := D / (Cmax + Cmin)
else
s := D / (2 - Cmax - Cmin);
// We've Calculated the S, check match
if abs(S*100 - i.S) > i.satMod then
exit(false);
if R = Cmax then
h := (G - B) / D
else
if G = Cmax then
h := 2 + (B - R) / D
else
h := 4 + (R - G) / D;
h := h / 6;
if h < 0 then
h := h + 1;
//Finally lets test H2

h := h * 100;

if h > i.H then
Result := min(h - i.H, abs(h - (i.H + 100) )) <= i.hueMod
else
Result := min(i.H - h, abs(i.H - (h + 100) )) <= i.hueMod;
end;

function ColorSame_cts3(ctsInfo: Pointer; C2: PRGB32): boolean;

var
i: TCTS3Info;
r, g, b : extended;
x, y, z, L, A, bb: Extended;
begin
i := PCTS3Info(ctsInfo)^;
{ RGBToXYZ(C2^.R, C2^.G, C2^.B, X, Y, Z); }
{ XYZToCIELab(X, Y, Z, L, A, B); }
R := Percentage[C2^.r];
G := Percentage[C2^.g];
B := Percentage[C2^.b];
if r > 0.04045 then
r := Power( ( r + 0.055 ) / 1.055 , 2.4) * 100
else
r := r * 7.73993808;
if g > 0.04045 then
g := Power( ( g + 0.055 ) / 1.055 , 2.4) * 100
else
g := g * 7.73993808;
if b > 0.04045 then
b := Power( ( b + 0.055 ) / 1.055 , 2.4) * 100
else
b := b * 7.73993808;

y := (r * 0.2126 + g * 0.7152 + b * 0.0722)/100.000;
if ( Y > 0.008856 ) then
Y := Power(Y, 1.0/3.0)
else
Y := ( 7.787 * Y ) + ( 16.0 / 116.0 );

x := (r * 0.4124 + g * 0.3576 + b * 0.1805)/95.047;
if ( X > 0.008856 ) then
X := Power(X, 1.0/3.0)
else
X := ( 7.787 * X ) + ( 16.0 / 116.0 );

z := (r * 0.0193 + g * 0.1192 + b * 0.9505)/108.883;
if ( Z > 0.008856 ) then
Z := Power(Z, 1.0/3.0)
else
Z := ( 7.787 * Z ) + ( 16.0 / 116.0 );

l := (116.0 * Y ) - 16.0;
a := 500.0 * ( X - Y );
bb := 200.0 * ( Y - Z );

L := L - i.L;
A := A - i.A;
Bb := Bb - i.B;

Result := (L*L + A*A + bB*Bb) <= i.Tol;
end;

As you see, CTS 1 doesn't use hue and sat. That is wrong.

But can you find the mistake in the TPA, ATPA thing in the end, cause this function doesn't return a "autocolored" color.

Oh. Ill need the change the end then.

Sin

2012-02-07 19:06:55

I'd like to change my vote to a Yes.
Siel will be a valuable addition to the SRL Member rank.

Kasi

2012-02-08 19:22:09

Yes, good enough for SRL members, please try to keep contributing and make room for improvement whenever you can :)

Wetish

2012-02-08 19:32:57

From: pur3b100d
Yes, good enough for SRL members, please try to keep contributing and make room for improvement whenever you can :)

Thanks for the Support! I plan on improving this current script and then changing it into a fishing guild shark/Lobster fisher to release to SRL Members.

DemiseScythe

2012-02-09 14:31:26

This one was almst all Yes, when did it go wrong? =/

Wetish

2012-02-09 14:35:29

From: DemiseScythe
This one was almst all Yes, when did it go wrong? =/

I made some mistakes with the auto color function and I accidently posted an old version of the script. Besides that nothing went wrong. I guess people just dont think I am good enough. Im still trying to obtain more votes for yes then no. All support and comments are helpful for my improving.

Scaper

2012-02-09 15:14:12

I think he should get a break and be allowed in tbh his attitude is perfect very eager learner too I offerd to help out on script add stats etc but he asked for some direction so he can be hands on and get em dirty him self.

I like the dude and I like the script been using it alot went from 92 to 96 <><

P1nky

2012-02-09 20:09:34

From: Sin
I'd like to change my vote to a Yes.
Siel will be a valuable addition to the SRL Member rank.


Seems like y'all worked it out…Glad y'all did it maturely.

Sin

2012-02-09 20:17:45

From: P1nky
Seems like y'all worked it out…Glad y'all did it maturely.


Yes, I initially did exchange a hand of friendship to Scaper, but like the twelve year old he is, he declined.

Anyways, Siel, best of luck :)

Hobbit

2012-02-09 20:52:39

From: Sin
I'd like to change my vote to a Yes.
Siel will be a valuable addition to the SRL Member rank.


Changed

kingarabian

2012-02-10 05:55:33

No because you've only been here for a short time. Srl-Members is not only about knowing how to script, but also for the dedication. Also, my 5 year old brother can use SPS/DTM's for walking. Learn something more sophisticated and demonstrate it in a script (RRW/DDTMs/Tpa-walking).

Good luck.

Wetish

2012-02-10 13:15:07

From: kingarabian
No because you've only been here for a short time. Srl-Members is not only about knowing how to script, but also for the dedication. Also, my 5 year old brother can use SPS/DTM's for walking. Learn something more sophisticated and demonstrate it in a script (RRW/DDTMs/Tpa-walking).

Good luck.


5 year olds do not have the coordination to successfully use a computer let alone
code a program. I have been working on tpa walking I will release it soon. Thank you for your thoughts none the less, all ideas help.

kingarabian

2012-02-10 13:18:59

From: Siel
5 year olds do not have the coordination to successfully use a computer let alone
code a program. I have been working on tpa walking I will release it soon. Thank you for your thoughts none the less, all ideas help.


I was exaggerating to get my point across, so excuse me :p.

footballjds

2012-02-10 13:29:12

Yes from me.
You took everyone's advice even though half of it was bogus jargin…
Don't walk the way someone else wants you to, walk the best way.(use your fav method and then fail safe it with 1 or 2 other methods!!!)

Also, Daniel, I wanna see your scripts with TPA walking…

EDIT: Siel, have you found a good TPA-walking tut?

Scaper

2012-02-10 14:33:31

From: Sin
Yes, I initially did exchange a hand of friendship to Scaper, but like the twelve year old he is, he declined.

Anyways, Siel, best of luck :)


I didnt decline nothing I simply stated the truth from my point of view and told you the tyruth I never fell out with you I dont have problem with you just your sttitude you have since you gained srl member

Wetish

2012-02-10 14:38:45

From: kingarabian
I was exaggerating to get my point across, so excuse me :p.

I understand but I prefer constructive criticism than constructive sarcasm. :closedeyes:

From: footballjds
Yes from me.
You took everyone's advice even though half of it was bogus jargin…
Don't walk the way someone else wants you to, walk the best way.(use your fav method and then fail safe it with 1 or 2 other methods!!!)

Also, Daniel, I wanna see your scripts with TPA walking…

EDIT: Siel, have you found a good TPA-walking tut?

I personally prefer SPS walking but TPA walking would be a great skill to have for future scripts. There are an abundance of great TPA Walking scripts in the tutorial sections so I should be covered. If I need help I will be sure to ask.

From: Scaper
I didnt decline nothing I simply stated the truth from my point of view and told you the tyruth I never fell out with you I dont have problem with you just your sttitude you have since you gained srl member

Please keep this as on topic as possible. I feel that this thread should be about improving and critiquing not arguing.

Scaper

2012-02-10 14:49:34

yea siel i undersdtand he just cant leave it he started again yday after i left it and said nothing anyway good luck man i think its gunan be close and you should be allowed in tbh

footballjds

2012-02-10 15:17:08

From: kingarabian
So you derepped me because I told you to show advanced walking? Bitchy attitude.


Unless he left his name you don't know that was from him and not me…

Wetish

2012-02-10 15:18:02

From: kingarabian
So you derepped me because I told you to show advanced walking? Beautiful attitude, I love the way you handle criticism.


I did not derep you…

kingarabian

2012-02-10 15:19:34

From: Siel
I did not derep you…


My fault. Sorry.

Kyle Undefined

2012-02-10 15:19:56

Can we please stay on topic here? Take your thoughts to PM if they don't pertain to the subject.

footballjds

2012-02-10 15:20:53

From: Kyle Undefined
Can we please stay on topic here? Take your thoughts to PM if they don't pertain to the subject.


Sorry? I just don't want to see Siel's name tarnished for a de-rep that he didn't give…

Wetish

2012-02-10 15:21:05

From: Kyle Undefined
Can we please stay on topic here? Take your thoughts to PM if they don't pertain to the subject.

Thank You Kyle

kingarabian

2012-02-10 15:22:34

From: footballjds
Like i said… king, you should relax slightly. De-rep isn't bad, saying your five yr old brother(or rather hinting) is better/as good as Siel is kinda childish… Whoever de-repped you(me) doesn't have a bitchy attitude and you shouldn't come at Siel…


You're taking my words out of context. In an exaggerating way I am saying that SPS/DTM walking is far to easy to do. In no way did I say my brother can script better than Siel or is better.

I don't care if you de-repped me. I thought it was Siel, my fault.

Kyle Undefined

2012-02-10 15:23:10

Football, your posts weren't on topic either, that could of been handled in a PM.

Siel, good luck, it looks like it will come down to an admins decision.

Edit: come on king…

kingarabian

2012-02-10 15:27:11

@Siel I'm sorry for putting my wrath upon you. You clearly show scripting ability. It's just that it used to be more of a challenge to get Srl-Members. I dunno maybe times changed, and maybe I haven't moved on. But I was also furious that we let a user named Farmer Jack get into Srl-Members using a script that was almost a rip off from Flights and no one noticed/cared.

Sorry Kyle just tryna explain my grounds.

footballjds

2012-02-10 15:27:50

From: Kyle Undefined
Football, your posts weren't on topic either, that could of been handled in a PM.

Siel, good luck, it looks like it will come down to an admins decision.

Edit: come on king…


Sorry. :(

Good luck Siel, and I believe you'll get in.

Kyle, this post is off-topic. VERY far off topic, but I'm still going to post it.
Then I'm leaving this thread till it's closed…

If I see the potential of someone not being accepted to SRL members because of something I DID I will post and clear it up EVERY TIME. I don't see why you have a problem with this. I know you gotta act like a mod, but please. I'm sure you can see the reason I posted… It's not right for someone to assume who de-repped them and then say they have a bitchy attitude. I know for a fact who de-repped him


EDIT: King, i agree with you about farmer jack!

Hobbit

2012-02-23 12:39:50

In!

Welcome :)