NxTitle
2007-07-07 09:57:50
Please Cancel This.
<!– BEGIN TEMPLATE: formanswers –>
Nontitle - SRL Member Application Form
Nontitle
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
PHP, C++, Python
Other Communitys
Sythe.org, Moparisthebest.com
How Long have You Played Runescape
more than 4 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
My actual name is Keith Morrow, I'm 15 (turning 16 in less than a month) and I have been using Scar for more than a year now. When I first got into runescape cheating, I started out at RuneCMS. When that went down, I went to Sythe.org and Kaitnieks.com. It wasn't until after RuneCMS closed that I found out about Scar. For a while I had been learning how to script with Pascal/Scar, although I had never attempted to make an autospammer/autobuyer or any easy scripts. That was probably a bad idea, because I had many more problems with code and slowed down my learning process. The first actual program I had made was an autofighter, where you would input a colour and it would click on it whenever it found an instance. It used the healthbar above your character to figure out when you had stopped fighting. I never released it, though.
When ScarScape came out, I was very excited and I started a script to mine silver and bank it in Al Kharid. I was almost finished, but when SS stopped working, I just gave up on both the script and runescape cheating. About a month ago from now, though, I found out about SRL, and that gave me some hope. I re-made the script and it now works very well. I am very happy with it. I am still working on it, but it has definitely gone farther than my last attempt.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Things such as Fighting AntiRandoms haven't been implemented yet, but here is my progress on this script so far:
——————————————————
<!– END TEMPLATE: formanswers –>
<!– BEGIN TEMPLATE: formanswers –>
Nontitle - SRL Member Application Form
Nontitle
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
PHP, C++, Python
Other Communitys
Sythe.org, Moparisthebest.com
How Long have You Played Runescape
more than 4 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
My actual name is Keith Morrow, I'm 15 (turning 16 in less than a month) and I have been using Scar for more than a year now. When I first got into runescape cheating, I started out at RuneCMS. When that went down, I went to Sythe.org and Kaitnieks.com. It wasn't until after RuneCMS closed that I found out about Scar. For a while I had been learning how to script with Pascal/Scar, although I had never attempted to make an autospammer/autobuyer or any easy scripts. That was probably a bad idea, because I had many more problems with code and slowed down my learning process. The first actual program I had made was an autofighter, where you would input a colour and it would click on it whenever it found an instance. It used the healthbar above your character to figure out when you had stopped fighting. I never released it, though.
When ScarScape came out, I was very excited and I started a script to mine silver and bank it in Al Kharid. I was almost finished, but when SS stopped working, I just gave up on both the script and runescape cheating. About a month ago from now, though, I found out about SRL, and that gave me some hope. I re-made the script and it now works very well. I am very happy with it. I am still working on it, but it has definitely gone farther than my last attempt.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Things such as Fighting AntiRandoms haven't been implemented yet, but here is my progress on this script so far:
program AlKhSilverCrafter;
// Al Kharid Silver Crafter
// Version 0.85
var
Verbose, LogOutOnError, Error : Boolean;
Rounds, MaxRounds, FindColourX, FindColourY, CharsNPC, Mask, Mask2, ItemCount, Collected, i, j, k, none : Integer;
box : TBox;
{.include srl/srl.scar}
{.include srl/srl/skill/mining.scar}
procedure Configure;
begin
Verbose := false; // Shows More Information Than Needed - Mainly For Developers
LogOutOnError := false; // Log Out Of Runescape If Error Occurs
MaxRounds := 4; // How Many Rounds To Perform Before Exiting
HowManyPlayers := 1; // How Many Players You Will Use For This Script
NumberOfPlayers(HowManyPlayers); // No Config Needed On This
CurrentPlayer := 0; // Player To Begin With
Players[0].Name := 'Username'; // Your Runescape Username
Players[0].Pass := 'Password'; // Your Runescape Password
Players[0].Nick := 'ernam'; // 3 To 6 Letters From The Middle Of Your Username
Players[0].Loc := 'FirstRun'; // Beginning Position Use The Last LOC From The Debug Box
Players[0].Active := true; // Whether To Use This Character At All
end;
// That is all you need to do. The script will do the rest.
procedure FindRandoms;
begin
FindNormalRandoms;
end;
procedure CheckStuff;
begin
FindRandoms;
if (not (Loggedin)) then LoginPlayer;
end;
procedure ShowReport;
begin
writeln('');
writeln('---Report---');
writeln('Rounds: ' + IntToStr(Rounds));
writeln('Collected: ' + IntToStr(Collected));
writeln('Extra Items: ' + IntToStr(ItemCount));
writeln('Mining Lvl: ' + IntToStr(Players[CurrentPlayer].Level[15]));
writeln('Smithing Lvl: ' + IntToStr(Players[CurrentPlayer].Level[16]));
writeln('Crafting Lvl: ' + IntToStr(Players[CurrentPlayer].Level[12]));
if (Error) then
begin
writeln('Exiting script due to error.');
if (LogOutOnError) then writeln('Also logging out.');
end;
writeln('---Report---');
writeln('');
end;
procedure FirstRun;
begin
writeln('Starting Script on ' + Players[CurrentPlayer].Name + ' For First Time...');
CheckStuff;
if (InvCount > 1) then
begin
writeln('ERROR: More Than 1 Item in Inventory. Closing...');
exit;
end;
if (InvCount < 1) then
begin
writeln('ERROR: Less Than 1 Item in Inventory. Closing...');
exit;
end;
if (InvCount = 1) then
begin
Players[CurrentPlayer].Loc := 'GoToMine';
if (Verbose) then writeln('Good. Only One Item In Inventory. Setting LOC to "GoToMine".');
end;
end;
procedure GoToMine;
begin
CheckStuff;
CheckStuff;
if (Verbose) then writeln('Journeying to Mining Site...');
RandomRClick;
MakeCompass('e');
MakeCompass('n');
if (FindColorTolerance(FindColourX, FindColourY, 2844164, 670, 44, 730, 107, 70)) then
begin
if (Verbose) then writeln('Found Cactus! Now we can start.');
MMouse(FindColourX, FindColourY, 1, 1);
Sleep(1000);
if (Verbose) then writeln('Cactus (mf)');
Mouse(FindColourX, FindColourY - 23, 5, 5, true);
if (Verbose) then writeln('Cactus (sm)');
SleepAndMoveMouse(5000 + Random(250));
Flag;
end else
begin
writeln('ERROR: I can''t find out where I am. Exiting...');
if (Verbose) then writeln('Couldn''t find cactus beside the bank.');
Error := true;
exit;
end;
if (Verbose) then writeln('Move Ahead 1 (mf)');
Mouse(652, 19, 5, 5, true);
if (Verbose) then writeln('Move Ahead 1 (sm)');
SleepAndMoveMouse(5000 + Random(250));
Flag;
if (Verbose) then writeln('Move Ahead 2 (mf)');
Mouse(650, 10, 5, 5, true);
if (Verbose) then writeln('Move Ahead 2 (sm)');
SleepAndMoveMouse(5000 + Random(250));
Flag;
if (FindColorTolerance(FindColourX, FindColourY, 3577729, 589, 6, 643, 157, 20)) then
begin
if (Verbose) then writeln('Found Grass (mf)');
Mouse(713, 76, 5, 5, true);
if (Verbose) then writeln('Found Grass (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
if (Verbose) then writeln('MouseFlag-4');
Mouse(646, 11, 5, 5, true);
if (Verbose) then writeln('SleepAndMoveMouse-4');
SleepAndMoveMouse(5000);
Flag;
if (FindColorTolerance(FindColourX, FindColourY, 3577729, 589, 6, 643, 157, 20)) then
begin
if (Verbose) then writeln('Still Found Grass (mf)');
Mouse(717, 86, 5, 5, true);
if (Verbose) then writeln('Still Found Grass (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
if (Verbose) then writeln('MouseFlag-5');
Mouse(646, 11, 5, 5, true);
if (Verbose) then writeln('SleepAndMoveMouse-5');
SleepAndMoveMouse(5000);
Flag;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 2970237, 563, 3, 720, 90, 20)) then
begin
if (Verbose) then writeln('Found Rocks (mf)');
Mouse(FindColourX, FindColourY, 5, 5, true);
if (Verbose) then writeln('Found Rocks (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Rocks (mf)');
Mouse(649, 54, 5, 5, true);
if (Verbose) then writeln('Looking For Rocks (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 8093052, 600, 10, 705, 90, 22)) then
begin
if (Verbose) then writeln('Found Mining (mf)');
Mouse(FindColourX, FindColourY, 2, 2, true);
if (Verbose) then writeln('Found Mining (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Mining (mf)');
Mouse(649, 54, 5, 5, true);
if (Verbose) then writeln('Looking For Mining (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 2970237, 563, 3, 720, 90, 20)) then
begin
if (Verbose) then writeln('Found Rocks 2 (mf)');
Mouse(FindColourX - 15, FindColourY, 5, 5, true);
if (Verbose) then writeln('Found Rocks 2 (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Rocks 2 (mf)');
Mouse(649, 54, 5, 5, true);
if (Verbose) then writeln('Looking For Rocks 2 (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
if (Verbose) then writeln('Doing Final Catchup...');
if (Verbose) then writeln('Catchup (mf)');
Mouse(648, 68, 5, 5, true);
if (Verbose) then writeln('Catchup (sm)');
SleepAndMoveMouse(5000);
Flag;
Players[CurrentPlayer].Loc := 'GetMySilver';
if (Verbose) then writeln('Success! We reached the Silver! Setting LOC to "GetMySilver".');
if (not (Verbose)) then writeln('Success! We Reached the Mine!');
end;
procedure GetMySilver;
begin
SetupSRLMining;
CheckStuff;
FindPickHeadColor;
writeln('Looking For Silver...');
MakeCompass('n');
MakeCompass('e');
HighestAngle;
while (not (InvFull)) do
begin
CheckStuff;
if (FindColorSkipBoxTolerance(FindColourX, FindColourY, 10921649, 65, 100, 426, 292, 20, box)) then
begin
MoveMouseSmooth(FindColourX, FindColourY);
Sleep(50);
if (copy(GetUpText, 0, 10) = 'Mine Rocks') then
begin
if (Verbose) then writeln('Found Silver.');
ClickMouse(FindColourX, FindColourY, true);
if (FindGas(FindColourX, FindColourY)) then
begin
Mouse(650, 65, 10, 10, true);
while (k < 30) do
begin
SleepAndMoveMouse(500 + random(50));
CheckStuff;
k := k + 1;
end;
end;
SleepAndMoveMouse(2000 + random(100));
j := 0;
while (j < 12) do
begin
if (GetBlackChatMessage = 'You swing your pick at the rock.') or (GetBlackChatMessage = 'You manage to mine some silver.') then
begin
if (Verbose) then writeln('Mining...');
GameTab(5);
SleepAndMoveMouse(200 + random(50));
if (FindBitmapMaskTolerance(Mask, none, none, 574, 286, 612, 324, 150, 0)) then FindPick;
i := 0;
while (i < 12) do
begin
if (FindGas(FindColourX, FindColourY - 7)) then
begin
Mouse(650, 65, 10, 10, true);
while (k < 30) do
begin
SleepAndMoveMouse(100 + random(50));
CheckStuff;
k := k + 1;
end;
end;
if (GetBlackChatMessage = 'You manage to mine some silver.') then
begin
if (Verbose) then writeln('You Mined the Silver.');
j := 12;
break;
end;
CheckStuff;
if (FindGas(FindColourX, FindColourY)) then
begin
Mouse(650, 65, 10, 10, true);
while (k < 30) do
begin
SleepAndMoveMouse(500 + random(50));
CheckStuff;
k := k + 1;
end;
end;
SleepAndMoveMouse(500 + random(50));
i := i + 1;
end;
break;
end;
CheckStuff;
j := j + 1;
SleepAndMoveMouse(500 + random(50));
end;
end;
end;
SleepAndMoveMouse(50 + random(50));
end;
if (Verbose) then writeln('All done. Setting LOC to "GoToFurnace".');
if (not (Verbose)) then writeln('Our Inventory is full now. Let''s go to the furnace.');
Players[CurrentPlayer].Loc := 'GoToFurnace';
end;
procedure GoToFurnace;
begin
CheckStuff;
SetRun(true);
if (Verbose) then writeln('Journeying To Furnace...');
MakeCompass('w');
MakeCompass('n');
i := 0;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 8093052, 617, 98, 702, 163, 20)) then
begin
if (Verbose) then writeln('Found Mining (mf)');
Mouse(FindColourX, FindColourY, 5, 5, true);
if (Verbose) then writeln('Found Mining (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Mining (mf)');
Mouse(668, 109, 5, 5, true);
if (Verbose) then writeln('Looking For Mining (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
if (i > 3) then break;
i := i + 1;
end;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 1458526, 627, 122, 673, 152, 23)) then
begin
if (Verbose) then writeln('Found Rocks (mf)');
Mouse(FindColourX, FindColourY, 5, 5, true);
if (Verbose) then writeln('Found Rocks (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Rocks (mf)');
Mouse(657, 101, 5, 5, true);
if (Verbose) then writeln('Looking For Rocks (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
if (Verbose) then writeln('Moving Down (mf)');
Mouse(657, 151, 5, 5, true);
if (Verbose) then writeln('Moving Down (sm)');
SleepAndMoveMouse(5000);
Flag;
if (Verbose) then writeln('Moving Down (mf)');
Mouse(657, 151, 5, 5, true);
if (Verbose) then writeln('Moving Down (sm)');
SleepAndMoveMouse(5000);
Flag;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 12161149, 566, 110, 710, 161, 25)) then
begin
if (Verbose) then writeln('Found Water (mf)');
Mouse(FindColourX, FindColourY, 5, 5, true);
if (Verbose) then writeln('Found Water (sm)');
SleepAndMoveMouse(5000);
Flag;
break;
end else
begin
if (Verbose) then writeln('Looking For Water (mf)');
Mouse(648, 151, 5, 5, true);
if (Verbose) then writeln('Looking For Water (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
CheckStuff;
if (Verbose) then writeln('Moving Down (mf)');
Mouse(657, 151, 5, 5, true);
if (Verbose) then writeln('Moving Down (sm)');
SleepAndMoveMouse(7500);
Flag;
CheckStuff;
if (Verbose) then writeln('Moving Down (mf)');
Mouse(632, 151, 5, 5, true);
if (Verbose) then writeln('Moving Down (sm)');
SleepAndMoveMouse(5000);
Flag;
if (Verbose) then writeln('Almost there...');
while (true) do
begin
CheckStuff;
//if (FindColorTolerance(FindColourX, FindColourY, 125939, 608, 59, 692, 115, 50)) then
if (FindBitmapMaskTolerance(Mask2, FindColourX, FindColourY, 593, 63, 659, 93, 150, 80)) then
begin
if (Verbose) then writeln('Moving To Furnace Room (mf)');
Mouse(FindColourX, FindColourY, 5, 5, true);
if (Verbose) then writeln('Moving To Furnace Room (sm)');
SleepAndMoveMouse(5000);
Flag;
if (Verbose) then writeln('If all went well, We are now at the furnace. changing LOC to "SmeltMySilver".');
if (not (Verbose)) then writeln('We are here! Let''s make some silver bars now!');
Players[CurrentPlayer].Loc := 'SmeltMySilver';
break;
end else
begin
if (Verbose) then writeln('Looking for Furnace Room (mf)');
Mouse(643, 98, 2, 2, true);
if (Verbose) then writeln('Looking for Furnace Room (sm)');
SleepAndMoveMouse(5000);
Flag;
end;
end;
end;
procedure SmeltMySilver;
begin
CheckStuff;
if (Verbose) then writeln('Beginning my smithing!!');
MakeCompass('e');
MakeCompass('w');
LowestAngle;
while (true) do
begin
CheckStuff;
if (FindColorTolerance(FindColourX, FindColourY, 595535, 155, 5, 431, 336, 12)) then
begin
MMouse(FindColourX, FindColourY, 0, 0);
if (copy(GetUpText, 0, 13) = 'Smelt Furnace') then
begin
if (Verbose) then writeln('Found the furnace. We''ll click on it now.');
Mouse(FindColourX, FindColoury, 5, 5, true);
SleepAndMoveMouse(1250);
Mouse(203, 403, 5, 5, false);
Sleep(750);
MMouse(206, 472, 5, 0);
Sleep(40);
Mouse(206, 472, 5, 0, true);
SleepAndMoveMouse(1500);
hitkeys(true);
if (Verbose) then writeln('We will now wait until there is no more ore.');
while (true) do
begin
CheckStuff;
if (GetBlackChatMessage = 'You have run out of silver ore to smelt.') then
begin
if (Verbose) then writeln('There is no more ore.');
break;
end;
SleepAndMoveMouse(1000);
end;
if (Verbose) then writeln('Congrats! All went well. Setting LOC to "SilverHolyize".');
if (not (Verbose)) then writeln('We are done making silver bars. Let''s make holy symbols now.');
Players[CurrentPlayer].Loc := 'SilverHolyize';
break;
end;
end;
end;
end;
procedure SilverHolyize;
begin
CheckStuff;
LowestAngle;
MakeCompass('s');
MakeCompass('w');
if (Verbose) then writeln('Transforming into Saradomin Symbols now!!!');
while (true) do
begin
if (FindColorTolerance(FindColourX, FindColourY, 595535, 155, 5, 431, 336, 12)) then
begin
if (Verbose) then writeln('Found the furnace, now we will do our job.');
UseItem(28);
MMouse(FindColourX, FindColourY, 5, 5);
Sleep(100);
Mouse(FindColourX, FindColourY - 15, 5, 5, true);
SleepAndMoveMouse(3000);
MMouse(92, 76, 5, 5);
Sleep(750);
Mouse(92, 76, 5, 5, false);
Sleep(500);
MMouse(65, 152, 1, 1);
Sleep(100);
Mouse(65, 152, 1, 1, true);
Sleep(750);
hitkeys(true);
if (Verbose) then writeln('Now we wait until we run out of silver bars.');
while (true) do
begin
if (GetBlackChatMessage = 'You have run out of silver bars.') then
begin
if (Verbose) then writeln('We have don''t have anymore silver bars.');
break;
end;
SleepAndMoveMouse(500);
end;
end else
begin
writeln('ERROR: Couldn''t find the furnace. Exiting...');
exit;
end;
if (Verbose) then writeln('All Symbols have been made! Changing LOC to "BankJog".');
if (not (Verbose)) then writeln('We have finished making symbols. Time to go to the bank.');
Players[CurrentPlayer].Loc := 'BankJog';
break;
end;
end;
procedure BankJog;
begin
CheckStuff;
HighestAngle;
MakeCompass('n');
SetRun(true);
if (Verbose) then writeln('Moving to bank now...');
Mouse(648, 147, 5, 5, true);
SleepAndMoveMouse(2000);
Flag;
if (Verbose) then writeln('Looking for Bank Emblem...');
while (true) do
begin
if (FindColorTolerance(FindColourX, FindColourY, 4706274, 627, 75, 661, 118, 20)) then
begin
if (Verbose) then writeln('Found it!');
Mouse(FindColourX - 8, FindColourY, 2, 2, true);
SleepAndMoveMouse(1000);
Flag;
break;
end;
SleepAndMoveMouse(1000);
end;
if (Verbose) then writeln('Arrived at bank. Setting LOC to "StoreInBank".');
if (not (Verbose)) then writeln('We are here. We''re going to store our collectings now.');
Players[CurrentPlayer].Loc := 'StoreInBank';
end;
procedure StoreInBank;
begin
CheckStuff;
if (Verbose) then writeln('Let''s store our silver in the bank now.');
MakeCompass('w');
LowestAngle;
OpenBankQuiet('akb');
SleepAndMoveMouse(2000);
Mouse(710, 444, 5, 5, false);
Sleep(100);
Mouse(710, 444, 2, 2, true);
SleepAndMoveMouse(2000);
CloseBank;
if (InvCount > 1) then
begin
writeln('There is still something left in your inventory.');
ItemCount := ItemCount + 1;
end;
if (Verbose) then writeln('Completely Done Now! Going back to LOC "GoToMine"...');
if (not (Verbose)) then writeln('We have completely finished a round! Let''s do another...');
Players[CurrentPlayer].Loc := 'GoToMine';
end;
procedure MyBitmaps;
begin
Mask := BitmapFromString(36, 36, 'z78DAEDD8C10900200C04C196' +
'AC22FD97E45710443F428ED90E86FB84544992FE3596F24419BA7' +
'111571711572F51AA8B888BC852962272FB59CA5296E222E27A75' +
'A57E96AA79A9AE5D57928E4DF36DFB22');
Mask2 := BitmapFromString(11, 10, 'z78DA3330000137B28001865' +
'E03A2012ED34805A3260C4E13280100D8688F59');
end;
begin
CharsNPC := LoadChars2(AppPath + 'Fonts\CharsNPC\');
box := IntToBox(224, 135, 290, 207); // Box needed when mining to block your character
SetupSRL; // Initialize SRL
Configure; // Run Configuration at beginning
MyBitmaps;
GetAllLevels; // Just for reports
ShowReport;
while (true) do
begin
if (Players[0].Loc = 'FirstRun') then FirstRun;
if (Players[0].Loc = 'GoToMine') then GoToMine;
if (Players[0].Loc = 'GetMySilver') then GetMySilver;
if (Players[0].Loc = 'GoToFurnace') then GoToFurnace;
if (Players[0].Loc = 'SmeltMySilver') then SmeltMySilver;
if (Players[0].Loc = 'SilverHolyize') then SilverHolyize;
if (Players[0].Loc = 'BankJog') then BankJog;
if (Players[0].Loc = 'StoreInBank') then StoreInBank;
Collected := Collected + (27 - ItemCount);
if (not (Error)) then Rounds := Rounds + 1;
GetAllLevels;
ShowReport;
if (MaxRounds > Rounds) then exit;
if (Error) then
begin
if (LogOutOnError) then Logout;
exit;
end;
end;
end.
{.Script Info:
# ScriptName = Al Kharid SilverCrafter
# Author = Nontitle
# Description =
# Version = 0.85
# Date = June 30, 2007
# Comments =
/Script Info}
——————————————————
<!– END TEMPLATE: formanswers –>