SRL Archive - Archive

naumanakhlaq - SRL Member Application Form


Naum

2007-10-25 06:13:18

naumanakhlaq (The Greatest Scripter On Earth :p) - SRL Member Application Form

What is the meaning to life?
If I told You that would be telling…. :p


Where you Referred to SRL? If yes, by whom?
yes
By my inner conscience

Programming Knowledge
SCAR, Pascal a lil bit of Html

Other Communitys
Moparisthebest, Sythe,scar-scripts I could go on and on!

How Long have You Played Runescape
About 10 months when i started to script

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

I've been scripting through about Eight or Nine months I knew a little bit before I joined here.I'm applying (Yet Again) with another script. I have a look at the includes once every day if im stuck. And look through other peoples scripts.If im not sure about 0.001% of the time then YakMan Helps me.


->{Nauman}<-
:cartman:

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

{.Script Info:
# ScriptName = PwrMiner
# Author = ->(Nauman)<-
# Description = Mines The Selected Ore then DROPS!! IT.
# Version = 0.1 BETA
# Date = 23rd October 2007
# Comments = Use this well!
# Instructions= 1.Have Your Axe Weilded
2.Stand Next to the Ore you want to PwrMine.
3.Fill Out the form 48-89.
4.Specify The Window Press Play
5.Enjoi!
/Script Info}
{ ------------------------------------------------------------------
| /-------------\ /--------- |
| / \ / \ |
| / \ / \ |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| |________| | |______ | | |
| / / / / |
| / / / / |
| / / / / SCRIPT |
| / / UPER / /_____ |
| / / |/ |/ | |
| / / | | | |
| / / | | | |
| / / | | | |
| / /________ \ / |
| | | | \ / |
| | | | \------------/ |
| | | | |
| | | | Version Info: |
| \ / Version 0.0001 Test <- Just a Test Ver|
| \ / Version 0.001<-- Current Version |
| \ / Updates! |
| \---------/ Version 0.1<-- Should Be Banking Soon! |
------------------------------------------------------------------
}

program PowerMiner;
{.include srl/srl.scar}
{.include srl/srl/skill/mining.scar}

var
Oremask, AxeMask, LoadsB, fx, fy: integer;
OresMined, DeathsAvoided, x, y: integer;
BrokenPickAxe, PickAxeHandle: integer;
Mark: integer;
AxeLost: Boolean;
Axe: string;

const
What_To_Mine = 'Tin'; //What rock to mine Choose between:Clay,Copper,Tin,Iron,Silver//
{ Note: This is powerminer it will drop the ore not bank it}
Loads = 1; // How many Loads or inventoryfull's to drop!!!

What_To_Disguise_Scar_As = 'Deezer | Music on demand, f...'; //you got it :)

//-----------------------------------------------------------------------//
//---> Version Number No touching //
//-----------------------------------------------------------------------//

VersionNumber = '0.1 BETA'; // dont touch!

//----------------------------------------------------------------------------//
//---> Setup Players //
//----------------------------------------------------------------------------//

procedure DeclarePlayers;
begin
GetApplication.MINIMIZE;
Disguise(What_To_Disguise_Scar_As);

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

Players[0].Name := 'krotno7';
Players[0].Pass := 'brotno53x';
Players[0].Nick := 'otno'; //3 Lowercase Letters of your username//
Players[0].Active := True; //player active?

Players[1].Name := 'lolpie';
Players[1].Pass := 'applepie';
Players[1].Nick := 'olpi'; //3 Lowercase Letters of your username//
Players[1].Active := True;

Players[2].Name := 'saiigd';
Players[2].Pass := 'waii';
Players[2].Nick := 'aai'; //3 Lowercase(aai not AAI)<-- Letters of your username//
Players[2].Active := True;

end;

//------------------------------------------------------//
//---> Load DTM's + Bitmap's! //
//------------------------------------------------------//

procedure LoadVars;
begin

OreMask := BitmapFromString(11, 11, 'z78DA73730301033070436' +
'2238B60024C35B84CC0A5923C13F0BB937813F0EB22DE04CC5022' +
'CF04CADD404CC890EA0BFCE2F85D4E4C6A212FF470998FCC0600F' +
'B599CC1');

AxeMask := DTMFromString('78DA63BCCFC0C010CAC8800A1819FE8349068' +
'6FF40C0F800C888C554832081F47520114D40CD2320114940CD33' +
'20114F40CD2B20914040CD25C2EE01001A130DB2');

BrokenPickAxe := BitmapFromString(37, 36,
'z78DAED97C11580200CC556EA14EE3F1213D4E7A32DF697E4EAC5' +
'180A680600A0CAE330C36BEF699F0AEFF4B7AB789319765E47753' +
'BC5F59935779D7798EF5F20B7751FBB887BD6AA38E995DBEBA463' +
'7C6FAC98E8BFAA29DE246FF0A21AD5A88657FC0CA51AD5A846B58' +
'81DD514FFB567786137CFD100CA58F61718BB');

end;

//----------------------------------------------------------------------------//
//---> Find Fast Randoms!!!! //
//----------------------------------------------------------------------------//

function FindFastRandoms: Boolean; //By Wt-Fakawi
var
i: Integer;
begin
for i := 1 to 12 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
9: begin
if FindFight then
begin
RunTo('N', False);
Wait(5000 + random(3000));
Runback;
DeathsAvoided := DeathsAvoided + 1;
end;
end;
10: if FindTalk then
Result := True;
11: if ClickToContinue then
Result := True;
end;
end;
end;

//--------------------------------------------------------------------//
//---> Broken Pic Checker //
//--------------------------------------------------------------------//

procedure Check;
begin
if FindBitmap(BrokenPickAxe, x, y) then
begin
mouse(x, y, 2, 3, false)
ChooseOption('Drop')
Writeln('Gas Got us Terminating Script!')
LogOut;
TerminateScript;
end;
end;

//------------------------------------------------------------------------//
//---> Pic Axe Handle Checker //
//------------------------------------------------------------------------//

function PickChecker: boolean;
begin
PickAxeHandle := BitmapFromString(37, 36,
'z78DAEDD8B10940211044C196AE0AFB2FC954102E5E9679A1D15F' +
'C69F382349CAED3CF5EDDA4FACCB5FD77D33A9F9D7A851A3468D5' +
'AFEAEEE75D4A851A3466DFFFED675D4A851A366DDBFA5F59D5C69' +
'5DF233F830');
if (not (FindBitmap(PickAxeHandle, x, y))) then
begin;
AxeLost := False;
Exit;
if FindBitmap(PickAxeHandle, x, y) then
begin
AxeLost := True;
FindPick;
end;
end;
end;


//------------------------------------------------------------------------//
//---> NAuto Responder! //
//------------------------------------------------------------------------//

procedure NAutoRespond;
begin // _!_!_!_
if FindChatText('Mining lvl') then //Auto Responder by me!!! |*_* |
SayCurrentLevels('Mining'); // |""" |
if FindChatText('lol') then // | " |
begin // -----
case Random(7) of
1: TypeSend('^-^')
2: TypeSend('Lawl')
3: TypeSend('l0l')
4: TypeSend('Hehe')
5: TypeSend('Whats it is this time? :P')
6: TypeSend('Yawn!')
7: TypeSend('red:scroll:##########.......~~~~~~~~')
end;
if FindChatText(Players[CurrentPlayer].Nick) then
begin
case Random(3) of
1: TypeSend('!!!');
2: TypeSend('Sorry No english');
3: TypeSend('From English Not me no');
end;
end;
end;
end;
//------------------------------------------------------------------------//
//---> My Ubber Sigggy! //
//------------------------------------------------------------------------//

procedure sig;
begin;
cleardebug;
writeln(' ######## ######### Super ')
wait(750)
writeln(' # # Script ')
writeln(' # # ')
wait(750)
writeln(' # # # # # # # # # B ')
wait(750)
writeln(' # # Y ')
wait(750)
writeln(' # # ->[Nauman]<- ')
wait(750)
writeln('##### ### ######## Yakman rulz !! ')
wait(1000)
end;

//----------------------------------------------------------------------//
//---> Get Axe Head //
//----------------------------------------------------------------------//

procedure GetAxeHead; // Adapted from my Yew Script
begin;
if (findDTM(AxeMask, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin;
Mmouse(x, y, 2 - Random(2), 2)
if isuptext('Wield') then
writeln('Found An Axe!!')
mouse(x, y, 0, 0, true)
Axe := 'Present'
end;
if (not (findDTM(AxeMask, x, y, MIX1, MIY1, MIX2, MIY2))) then
begin
Axe := 'Absent';
writeln('Axe Absent')
end;
end;

//----------------------------------------------------------------------------//
//---> AntiBan //
//----------------------------------------------------------------------------//

procedure AntiBan;
begin
case Random(30) of
0: gametab(1 + Random(5))
1: HoverSkill('Random', false);
5: Mmouse(882 + Random(100), 323 + Random(122), 100 - Random(99 + 1), 999 - Random(198));
9: HoverSkill('Mining', false);
19: BoredHuman;
25: RandomMovement;
30: RandomRClick;
27: PerfectNorth;
end;
end;

//----------------------------------------------------------------------------//
//--->Waiting.. //
//----------------------------------------------------------------------------//

procedure WaitWhileMining;
begin
MarkTime(mark)
repeat
NAutoRespond;
FindFastRandoms;
PickChecker
Check;
if GasFound(fx, fy) then
begin
RunTo('E', False)
wait(7000 + Random(3000))
writeln('We avoided Gas!!! :P')
RunBack;
end;
NAutoRespond;
AntiBan;
until (FindBlackChatMessage('You manage to mine some'))
if TimeFromMark(mark) > 30000 then
Exit;
end;

//-------------------------------------------------------------------//
//---> Setup Procedure //
//-------------------------------------------------------------------//

procedure Setup;
begin
if (not (LoggedIn)) then LoginPlayer;
begin
SetRun(True);
GameTab(4);
SetChat('on', 1);
SetChat('off', 2);
wait(234 + Random(1000));
GetAxeHead;
wait(2 + Random(3));
MakeCompass('N');
end;
end;

//-------------------------------------------------------------------//
//---> Mining Procedure //
//-------------------------------------------------------------------//

procedure Mining;
begin;
HighestAngle;
if What_To_Mine = 'Clay' then
repeat
if FindObjOre(x, y, 'Mine', 6989253, 5, 2) then
mmouse(x, y, 2, 2)
if IsUpTextMulti('min', 'ne', 'rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invfull)
if What_To_Mine = 'Copper' then
repeat
if FindObjOre(x, y, 'Rock', 2902115, 5, 2) then
mmouse(x, y, 0, 2)
if IsUpTextMulti('Min', 'ne', 'Rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invfull)
if What_To_Mine = 'Tin' then
repeat
if FindObj(x, y, 'Rock', 8026756, 2) then
mmouse(x, y, 0, 2)
if IsUpTextMulti('min', 'ne', 'rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invcount = 28)
if What_To_Mine = 'Iron' then
repeat
if FindObjOre(x, y, 'Mine', 610943, 5, 2) then
mmouse(x, y, 0, 2)
if IsUpTextMulti('min', 'ne', 'rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invfull)
if What_To_Mine = 'Silver' then
repeat
if FindObjOre(x, y, 'Mine', 10724528, 5, 2) then
mmouse(x, y, 0, 2)
if IsUpTextMulti('min', 'ne', 'rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invfull)
end;

//-------------------------------------------------------------------//
//--->Dropping... //
//-------------------------------------------------------------------//

procedure DropOres;
begin
if not (loggedin) then NextPlayer(True);
if (invcount = 28) then
begin
MmouseItem(28)
if isuptext('Use') then
begin
DropToPosition(1, 28)
LoadsB := LoadsB + 1;
end;
end;
end;

//-------------------------------------------------------------------//
//---> My Proggie //
//-------------------------------------------------------------------//

procedure Proggie;
var
PActive: string;
begin
SRLRandomsReport;
if Players[CurrentPlayer].Active then PActive := 'True' else PActive := 'False';
Writeln('//=============== Auto PwrMiner ================\\');
Writeln('\\======== -' + VersionNumber + '- Progress Report ========//');
Writeln('/==========================================\');
Writeln('| Worked for ' + TimeRunning); //|
Writeln('| Mined ' + IntToStr(OresMined) + (' Ore$. |'));
Writeln('| Load Dropped ' + IntToStr(LoadsB) + (' Yay! |'));
writeln('| DeathsAvoided ' + IntToStr(Deathsavoided) + (' times.|'));
Writeln('\==========================================/');
end;

//----------------------------------------------------------------------------//
//---> The magical Main Loop //
//----------------------------------------------------------------------------//
begin
SetupSRL;
Sig;
DeclarePlayers;
LoadVars;
Setup;
Proggie;
repeat
Mining;
DropOres;
Proggie;
until (LoadsB = Loads);
if LoadsB = Loads then
begin;
Writeln('Loads Done and Dusted')
NextPLayer(true);
end;
if LoadsB = Loads then
begin;
writeln('Script is done Last Round!')
Nextplayer(True);
end;
end.

{--------Main Loop Ends----------}
{-Script Ends Here :(-}

——————————————————
<!– END TEMPLATE: formanswers –> (Fun doesn't end here!)

n3ss3s

2007-10-25 06:18:33

I've been waiting for you ;)

Looks good, one thing about your main loop - you need to add one more repeat, because at the moment, your script will mine, drop, do proggy and then change player and the script stops. So make one more loops there. (setup must be included in that outer loop)

Naum

2007-10-25 06:25:02

Wow that was fast! No I did that because 1 of the 3 player is bound to get modaut.Any way thx for posting :p

->{Nauman}<-

Santa_Clause

2007-10-25 06:50:42

Hmm…tough decision.

There's alot of responding. You don't know cases. Your mining procedure isn't too reliable.

In your pick-checking function there's no Result…so what's the point of making it a function? Holding vote for now.

Naum

2007-10-25 06:53:40

Ok i used the axelost as a boolean i could have used result aswell if i wanted.. :s

->{Nauman}<-

P.S why do ppl hold their votes if i cant edit the script?

Santa_Clause

2007-10-25 06:54:51

I might decide not to vote, since I'm not sure.

Naum

2007-10-25 06:57:39

Ok kl with that :p

I know you want to….

->{Nauman}<-

JuKKa

2007-10-25 07:11:41

You have alot to learn. Take out ur user/pass if they're correct. Didnt bother to check.

Sorry…

Naum

2007-10-25 07:25:05

Ok i just took my user luckely its not h4ck3d.


->{Nauman}<-

MasterKill

2007-10-25 07:50:00

1. wrong failsave:
procedure WaitWhileMining;
begin
MarkTime(mark)
repeat
NAutoRespond;
FindFastRandoms;
PickChecker
Check;
if GasFound(fx, fy) then
begin
RunTo('E', False)
wait(7000 + Random(3000))
writeln('We avoided Gas!!! :P')
RunBack;
end;
NAutoRespond;
AntiBan;
until (FindBlackChatMessage('You manage to mine some'))
if TimeFromMark(mark) > 30000 then Exit; // shouldent that be in the loop???
end;

2. You should case's in your Procedure Mining;
case what_to_mine of
'clay': begin
end;
'iron': begin
end;
end;

3. it's dropping evrything in your iventory (if it's working). so if some-one can't wield his pickaxe, but can use it, then the pickaxe will be droped to!

4. two times next player?
  if LoadsB = Loads then
begin;
Writeln('Loads Done and Dusted')
NextPLayer(true);
end;
if LoadsB = Loads then
begin;
writeln('Script is done Last Round!')
Nextplayer(True);
end;

5. why terminate if 1 player is hitted by a gas? and not next player?
procedure Check;
begin
if FindBitmap(BrokenPickAxe, x, y) then
begin
mouse(x, y, 2, 3, false)
ChooseOption('Drop')
Writeln('Gas Got us Terminating Script!')
LogOut;
TerminateScript; // NextPlayer(False);
end;
end;




sorry but this is not good enough to be an srl member in my opinion. But i have to say, you made a very good start. we just want to see a lil more.

see you back after 30 days?

gl scripting/botting

btw, you should get your pass out. fagex is watching us >.<

Naum

2007-10-25 08:55:00

You made a very good start

man ive applied like 3 times before. Who cares ill just apply again in 1 month.

BobboHobbo

2007-10-25 08:56:35

Mmm, im voting no, the script doesnt surprise me. Its really basic in my eyes, unless cuz its 11pm, But Santa_Clause suprises me ;P

Naum

2007-10-25 08:59:42

How. Because he said it was ok?

Naum

2007-10-25 09:15:07

it's dropping evrything in your iventory (if it's working). so if some-one can't wield his pickaxe, but can use it, then the pickaxe will be droped to!


Masterkill thats to stop th3 n00b5.

->{Nauman}<-

MasterKill

2007-10-25 10:30:56

From: naumanakhlaq
Masterkill thats to stop th3 n00b5.

->{Nauman}<-


maybe it drops the rune pickaxe of a pure ranger? :rolleyes: then you should do something like:

Procedure NoobieLvl;
var
CombatLvl: Integer;
begin
CombatLvl := GetCombatLevel;
If (CombatLvl < 20) then
begin
writeLn('allways auto 20+ nuubie!');
TerminateScript;
end;
end;

SRL GetCombatlevel is a lil buggy though.

gl on next aply

Naum

2007-10-25 10:33:57

:p

Naum

2007-10-25 11:36:49

Damn I'd be over the moon if one person voted for me..(im not bribing you)

HellBoyz

2007-10-25 22:18:52

Try your best luck and take other script or SRL member script like wizzup ess miner or nielsie tutisle runner as a reference and that will help you alot plus some other tutorial written by these ppl

Boreas
JAD
Nielsie
BobboHobbo
Yohojo
Zephy

RAM

2007-10-26 01:34:36

From: naumanakhlaq
Damn I'd be over the moon if one person voted for me..(im not bribing you)


Ok, you are showing great improvement…so off to the moon you go….but only if you promise to lay off the leet speak ;)

Best Regards,

~RAM

tylanbo

2007-10-26 02:04:31


procedure Check;
begin
if FindBitmap(BrokenPickAxe, x, y) then
begin
mouse(x, y, 2, 3, false)
ChooseOption('Drop')
Writeln('Gas Got us Terminating Script!')
LogOut;
TerminateScript;
end;
end;

Well that seems kind of dull, just throwing in the towel because you hit a minor snag. Why drop the pick? You can always get it fixed. What if they had a rune pick? Why don't you specify the location it should search in so that it doesn't search the whole screen for something that will only be in the inventory area? Little things like this that are simple add up and eventually you got a pretty laggy script on your hands. That is never good.

On your pickaxe handle checker you got it loading the bitmap every time you run the procedure. That's fine, sort of, but if you do it that way you should release the picture so that it is not in memory. If you keep it the way it is it will keep reloading the same value into the variable and just lag down your script.


//------------------------------------------------------------------------//
//---> NAuto Responder! //
//------------------------------------------------------------------------//

procedure NAutoRespond;
begin // _!_!_!_
if FindChatText('Mining lvl') then //Auto Responder by me!!! |*_* |
SayCurrentLevels('Mining'); // |""" |
if FindChatText('lol') then // | " |
begin // -----
case Random(7) of
1: TypeSend('^-^')
2: TypeSend('Lawl')
3: TypeSend('l0l')
4: TypeSend('Hehe')
5: TypeSend('Whats it is this time? :P')
6: TypeSend('Yawn!')
7: TypeSend('red:scroll:##########.......~~~~~~~~')
end;
if FindChatText(Players[CurrentPlayer].Nick) then
begin
case Random(3) of
1: TypeSend('!!!');
2: TypeSend('Sorry No english');
3: TypeSend('From English Not me no');
end;
end;
end;
end;

NAutoRespond? More like NAutoBan. Those responses will get you reported faster than being quiet. Also how can you 'english not me no' if you said 'what it is this time? =P' on the other responder? Wow, that would bring attention to you and they would be scrutinizing you a lot more than if you were quiet.


repeat
if FindObj(x, y, 'Rock', 8026756, 2) then
mmouse(x, y, 0, 2)
if IsUpTextMulti('min', 'ne', 'rocks') then
wait(100 + Random(300))
mouse(x, y, 0, 2, true)
WaitWhileMining;
OresMined := OresMined + 1;
until (invcount = 28)

Well you could have just put InvFull like you did with everything else, but you had to be a rebel didn't you.


I'm leaning towards a no, but will reserve my vote until I am reviewing your application when I have energy to do so. My srl application had several errors, although I did dynamically update the script during the application process, but it served a purpose and was written sensibly. I also wrote quite a few of my own procedures instead of just using SRL methods all the time. Try showing your scripting knowledge by writing some of your own methods, if we know you can do it then you are able to be a member, assuming the method performs a useful task.

Naum

2007-10-26 05:01:35

Ok i used my auto responder to speak like a lithuanian. I think i should put in more Random cases so it doesn't reply all the tme. Oh and Ram thx i am over the moon :P. And hellbb88 thx for the list ill cheak it out now :)

->{Nauman}<-

Negaal

2007-10-27 07:17:13

shhh, im 100% sure it messes up… when it it finds 1 chat text more than 1 time, it will reply more than 1 time aswell, looks litle wierd?
and man your missing cases… theres lotsa great tutorials… read them..
and…
procedure WaitWhileMining;
begin
MarkTime(mark)
repeat
NAutoRespond;
FindFastRandoms;
PickChecker
Check;
if GasFound(fx, fy) then
begin
RunTo('E', False)
wait(7000 + Random(3000))
writeln('We avoided Gas!!! :P')
RunBack;
end;
NAutoRespond;
AntiBan;
until (FindBlackChatMessage('You manage to mine some'))
if TimeFromMark(mark) > 30000 then
Exit;
end;
it waits until finds that text?, maybe some1 else takes ore from you? you never will see it then… you think it will exit from procedure after 30 secs? NOOO, it doesnt
if TimeFromMark(mark) > MAX_TIME_PER_1_ORE then Break;

you need to add this before until… and mark value needs reseting before "repeat" or after "until"

you got too much to learn sorry, NO


also i don't want that my pickaxe is droped…

the scar noob

2007-10-27 08:02:18

I have to agree with masterkill and negal, I also posted something at the thread of this script, you can read it over here.
There are rather lot things that makes the script not working, go check it out and read through the script carefully:)

Try not making these mistakes anymore, thus show me a script that doesn't includes them next month;)

-Tsn.

Naum

2007-10-27 11:17:16

Ok thanks.

->{Nauman}<-

Naum

2007-10-28 07:12:38

Wow 2 people voted for me thats a personal best :p


->{Nauman}<-

Naum

2007-11-04 08:19:51

Ok Can some one close this now plz :rolleyes:

->{Nauman}<-

RAM

2007-11-04 18:34:56

From: naumanakhlaq
Ok Can some one close this now plz :rolleyes:

->{Nauman}<-


KK, Maybe we see how much you have improved in a month :)