SRL Archive - Archive

blumblebee - SRL Member Application Form


Blumblebee

2008-08-28 17:17:29

<!– BEGIN TEMPLATE: formanswers –>
blumblebee - SRL Member Application Form
blumblebee

What is the meaning to life?
You only got One, Might as well make the best of it.


Where you Referred to SRL? If yes, by whom?
no


Programming Knowledge
ActionScript 2.0

Other Communitys
none

How Long have You Played Runescape
4+ years

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

I'm 16 years old, I'm a quick learner, and recently I've taken to scar. I have read almost every thread in tutorial Island (except the SAT's XD), and have written a couple of scripts in the last month or so. I would appreciate feedback and this is really just to see how I stand at becoming a member. Thank you for your time and effort,
-Blumblebee

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

{--------------------------------------------------------------------------------}
{ _ _ _ _ _ }
{ | | | | | | | | | | }
{ | |___ | | _ _ _____ | |___ | | ___ | |___ ___ ___ }
{ | | || || | || || | || || |_|| | || |_|| |_| }
{ |_____||_||___||_|_|_||_____||_||___||_____||___||___| }
{ Presents }
{--------------------------------------------------------------------------------}
{ the
__ _ ___ _ _ ____ ____ __ _______ ____ ____
/ \ | | / _| | |__| | | _| | | / \ |__ __| / \ | |
/ __ \ | | | / | __ | | |_ | | / __ \ | | | | | |
/ / \ \ | |____ | \_ | | | | | __| | |\ \ / / \ \ | | | | | |\ \
/_/ \_\ |______| \___| |_| |_| |_____||_| \_\ /_/ \_\ |_| \____/ |_| \_\
___________________________________________________________________________________
___________________________________________________________________________________

This is a High/Low Alch Script, Please post proggies on thread, and all Feedback is appreciated.
------------------------
Please Report Any Bugs/Suggestions That You May Have
----------------------------------------------------
Version 0.01
-----------
Scar 3.15b
----------
SRL Rev # 23
------------
Special Thanks: Griff721, Narcle
--------------- }
program BlumblebeesAlcherator;
{.include SRL/SRL/Misc/Smart.scar}
{.include srl/srl.scar}
{.include srl/srl/skill/magic.scar}
{---------------------------------}
var
X, Y, GainedLvl, NatDTM, FireDTM, StaffDTM, NotedDTM, Alch, Done, Total: Integer;
{-------------------------------------------------------------------------}
const
AlchsPerPlayer = 25; // Amounts of loads per player before switching.

TotalAlchs =1000; //How many time you wish to Alch until script ends

spell = 'High Level Alchemy'; // set to High Level Alchemy or Low Level Alchemy

World = 81;// World you want to smart to load

mySRLID = '';// Your SRL ID
mySRLpassword = '';// Your SRL Pass


procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Strings[1] := 'Staff';//Staff 0r Rune
Players[0].Active := True;

{Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := '';
Players[1].Strings[1] := 'Staff';
Players[1].Active := True;

Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Strings[1] := 'Staff';
Players[2].Active := True;}
end;
{
|---------------------------------|
|---------------------------------|
| Don't Touch Anything Below This |
|---------------------------------|
| Unless you Know What your Doing |
|---------------------------------|
|---------------------------------|
}

//---------------\\
{--My Signature--}
//---------------\\

procedure Signature;
begin
Disguise('Alcherator');
cleardebug;
writeln(' __ _ ___ _ _ ____ ____ __ _______ ____ ____');
writeln(' / \ | | / _| | |__| | | _| | | / \ |__ __| / \ | |');
writeln(' / __ \ | | | / | __ | | |_ | | / __ \ | | | | | |');
writeln(' / / \ \ | |____ | \_ | | | | | __| | |\ \ / / \ \ | | | | | |\ \');
writeln('/_/ \_\ |______| \___| |_| |_| |_____||_| \_\ /_/ \_\ |_| \____/ |_| \_\');
writeln('-----------------------------------------------------------------------------------');
wait(4000);
cleardebug;
writeln(' Thank you for Choosing Blumblebees Alcherator');
writeln('----------------------------------------------');
writeln('Please Post All Proggies and Bugs');
writeln('---------------------------------');
end;

//-------------------------------\\
{--Loads All the DTM's in Script--}
//--------------------------------\\

procedure LoadDTM;
begin
NatDTM := DTMFromString('78DA631463606000612420D029CAA00CA419A' +
'17C462920C1CE80061851D5A8020909026AC481841201359C404218B' +
'F1A0007A5024B');
FireDTM := DTMFromString('78DA631461606010674001CB9545189481342' +
'394CF280A245819D00023AA1A4520214C400D485E81801A903D22F8D' +
'500001BB70261');
StaffDTM := DTMFromString('78DA6394606060E06040018F0C64189481342' +
'394CF0852C3CC80061851D54803094E026A4480043B013552408215B' +
'F1A003AFE0285');
NotedDTM := DTMFromString('78DA6314616060006114C0C8F01F4C42798A4' +
'08203538D24B21A7920A144400D2B909027A0860D48B0E1570300136' +
'70235');
end;

//------------------\\
{--Progress Report--}
//-------------------\\

procedure PReport;
begin
writeln('');
writeln('');
writeln('|--------------------------------------------');
writeln('|Thank you for Choosing Blumblebees Alcherator');
writeln('|---------------------------------------------');
writeln('|Script Ran For ' + TimeRunning);
writeln('|Gained ' + IntToStr(GainedLvl) + ' Level(s)');
writeln('|Preformed ' + IntToStr(Total) + ' High Alchs');
writeln('|--------------------------------------------');
end;

//-------------------------------------\\
{--Terminates Script When Finished--}
//--------------------------------------\\

procedure ScriptTerminate;
begin
Disguise('Script Finished');
PReport;
TerminateScript;
end;

//---------------------------------------------------------\\
{--Original Set Up of Script, Sets Up Smart and Your SRLID--}
//----------------------------------------------------------\\

procedure StartUp1;
begin
SetupSRL;
SRLID := mySRLID;
SRLPassword := mySRLPassword;
SmartSetupEx(World, True, True, False);
SetTargetDC(SmartGetDC);
end;

//------------------------------\\
{--Set Up 2, Sets up the player--}
//-------------------------------\\

procedure StartUp2;
begin
DeclarePlayers;
if not (LoggedIn) then
begin
LogInPlayer;
end;
if LoggedIn then
begin
SetAngle(True);
Wait(400 + Random(655));
Players[CurrentPlayer].integers[1] := GetSkillInfo('magic', False);
writeln('');
writeln('Players magic level is ' + IntToStr(Players[CurrentPlayer].integers[1]));
writeln('');
writeln('Performing Alchs ' + IntToStr(AlchsPerPlayer) + ' Times per Player');
writeln('');
Alch := 0;
end;
end;

//--------------------------------------------------\\
{--AntiBan, Used to make script look more human like--}
//----------------------------------------------------\\

Procedure AntiBan;
begin
if(not(LoggedIn))then
Exit;
case Random(55) of
0:begin
Status('AntiBan');
BoredHuman;
wait(250 + random(500));
end;
1:begin
Status('AntiBan');
HoverSkill('Magic', false);
wait(1500+Random(432));
GameTab(4);
end;
2:begin
Status('AntiBan');
RandomRClick;
wait(200 + random(500));
end;
3:begin
Status('AntiBan');
GameTab(1 + Random(12));
Wait(300 + Random(500));
GameTab(4);
end;
4:begin
Status('AntiBan');
PickUpMouse;
Wait(200 + Random(200));
end;
5:begin
Status('AntiBan');
RandomMovement;
SetAngle(true);
end;
end;
end;

//----------------------------------------\\
{--Changes Camera Position Every So Often--}
//-----------------------------------------\\

procedure RotateCamera;
begin
if(not(LoggedIn))then
Exit;
case Random(40) of
0:Begin
MakeCompass('N');
Wait(100+random(5));
end;
1:Begin
MakeCompass('S');
Wait(100+random(5));
end;
3:Begin
MakeCompass('E');
wait(100+random(5));
end;
4:Begin
MakeCompass('W');
wait(100+random(5));
end;
end;
end;

//----------------\\
{--Finds Randoms--}
//----------------\\

procedure FindRandoms;
begin
if (not (LoggedIn)) then
Exit;
FindNormalRandoms;
if (FindFight) then
begin
RunTo('E', True)
FFlag(0);
Wait(1000 + random(500));
if FindSymbol(x, y, 'fish') then
mouse(x, y + 15, 6, 6, true);
end;
end;

//---------------------------\\
{--Finds A Gained Magic Level--}
//----------------------------\\

function FindGainedLevel: boolean;
begin
if not LoggedIn then Exit;
if ClickContinue(False,False) then
begin
if FindNPCChatText('lations', Nothing) then
begin
writeln('');
writeln('We gained a level!');
Inc(GainedLvl);
ClickContinue(True,True);
Result := True;
Exit;
end;
end;
end;

//-------------------------------------\\
{--Finds Nature Runes In Your Inventory--}
//--------------------------------------\\

function FindNat: boolean;
begin
NatDTM := DTMFromString('78DA631463606000612420D029CAA00CA419A' +
'17C462920C1CE80061851D5A8020909026AC481841201359C404218B' +
'F1A0007A5024B');
wait(500 + random(200));
GameTab(4);
wait(500 + random (500));
if FindDTM(NatDTM, X, Y, MIX1, MIY1, MIX2, MIY2) then
begin
FreeDTM(NatDTM);
writeln('');
Writeln('Found Nature Runes');
result := true;
end else
begin
writeln('');
writeln('Couldnt Find Nat DTM');
ScriptTerminate;
end;
end;

//------------------------------------------------------------------------\\
{--Finds Source Of Fire For Casting Spell, Looks For either Runes or Staff--}
//-------------------------------------------------------------------------\\

function FindFire: Boolean;
begin
FireDTM := DTMFromString('78DA631461606010674001CB9545189481342' +
'394CF280A245819D00023AA1A4520214C400D485E81801A903D22F8D' +
'500001BB70261');
StaffDTM := DTMFromString('78DA6394606060E06040018F0C64189481342' +
'394CF0852C3CC80061851D54803094E026A4480043B013552408215B' +
'F1A003AFE0285');
wait(500 + random(200));
if (Players[CurrentPlayer].Strings[1] = 'Staff') then
GameTab(5);
if FindDTM(StaffDTM, x, y, 573, 320, 603, 320) then
begin
Result := True;
FreeDTM(StaffDTM);
writeln('');
Writeln('Found Fire Staff');
end;
if not (Result) then
begin
if (Players[CurrentPlayer].Strings[1] = 'Rune') then
GameTab(4);
if FindDTM(FireDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
result := True;
FreeDTM(FireDTM);
writeln('');
Writeln('Found Fire Runes');
end;
end;
if not (Result) then
begin
Writeln('Could Not find Fire Source');
ScriptTerminate;
end;
end;

//-----------------------------------------------------------\\
{--Condenses all of the AntiBan Procedures Into One Procedure--}
//------------------------------------------------------------\\
procedure PreformAntiBan;
begin
FindGainedLevel;
AntiBan;
RotateCamera;
FindRandoms;
end;

//---------------------------------------------------------\\
{--Finds Spell, Then Finds Item , Then Preforms Cast it On--}
//----------------------------------------------------------\\
function CastIt: Boolean;
begin
NotedDTM := DTMFromString('78DA639464606010614001FE062A0C3A8C0C0' +
'C8C503EA31A90E040557362470F03482B5C8D0A90504055736AF7445' +
'435DC40420E55CD8605E5A86A7881041BAA9A85937351D4000026690' +
'9A4');
wait(200 + random(200));
repeat
if not(LoggedIn) then Exit;
If(FindNormalRandoms) or (InvFull) then Exit;
LoginPlayer;
PreformAntiBan;
GameTab(7);
Cast(spell);
wait(1000 + random(500));
If FindDTM(NotedDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 4, 3, false);
Wait(500 + Random(100));
ChooseOption('ast');
FindGainedLevel;
PreformAntiBan;
result := True;
inc(Alch);
inc(Done);
inc(Total);
Wait(1000 + Random(100));
end else
begin
FreeDTM(NotedDTM);
writeln('');
writeln('Couldnt Find Note DTM');
writeln('Either we have run out of things to Alch, Or We ve encountered an error');
ScriptTerminate;
end;
until(Alch >= AlchsPerPlayer);
end;

procedure FindRequirements;
begin
FindNat;
FindFire;
end;

//-----------------------------------------------\\
{--MainLoop, Where all procedures are Called Upon--}
//------------------------------------------------\\

procedure MainLoop;
begin
StartUp1;
Signature;
StartUp2;
repeat
FindRequirements;
repeat
CastIt;
If (Alch >= AlchsPerPlayer) then
PReport;
Disguise('Completed ' + IntToStr(Alch) + ' High Alchs');
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(false);
If Not LoggedIn Then
Begin
NextPlayer(false);
StartUp2;
end;
until(done >= AlchsPerPlayer);
begin
NextPlayer(True);
StartUp2;
end;
until(Done >= TotalAlchs);
end;

//---------------------------------\\
//----------Main Execution----------\\
//-----------------------------------\\

begin
mainloop;
end.

——————————————————
<!– END TEMPLATE: formanswers –>

Claymore

2008-08-28 17:23:15

Looks ok, i don't see anything wrong with it. Holding Vote.

Hugolord

2008-08-28 17:25:53

er.. Too simple, try making something a bit more complex like something with walking involved and many more failsafes etc..

no from me.

Scaper

2008-08-28 18:06:45

i promised a yes if you came back with you're own work and you have so im a YES

it is a bit simple but looks nice a neat etc

sirlaughsalot

2008-08-28 18:44:51

Meh too simple, you do use the things you know well, but possibly do something else with it that involves walking ect… i dont know… Maybe have it where it runs into the PC boat? or something along those lines, it doesnt have to have a lot of complicated walking or anything but at least something, or an autoresponder…

P1nky

2008-08-28 19:14:53

tooo simple sorry again no

next time hopefully :p

boberman

2008-08-28 23:17:31

no from me. Too simple and too complex for the simple task that it is.

Couple of things. You are way too trusting of the user. The string spell := 'High Level Alchemy' could be screwed up in so many ways.
For example. What if they just said 'High lvl alch'; or 'High'; Both would fail completely. Where it is the option between using high or low level alching a boolean would be better there true for high false for low. Or better yet, determine their mage level and use the appropriate alch as there is no reason to make the user decide.

You have a "LoadDTM" Function that really shouldn't be there. If you ever want to add banking or anything else that depends on a loop then you will either create a memory leak, or duplicate the DTM creation (It looks like you duplicated in many places) At very least you should make a separate "FreeDTMs" function and call that at the end of your script or something rather then Freeing and loading in all sorts of random places.

All in all, the script is somewhat useless. Why would you want to just alch all the stuff in your inventory and then quit? It is like having a bone burier that only buries one inventory filled with bones at a time. At very least this script needs some sort of banking so that it can grab lots of stuff to alch.

Method

2008-08-28 23:24:59

I voted no. I'd like to see some more advanced features in a script, including walking, banking, and successful multiplayer. This script just doesn't have it.

Blumblebee

2008-08-28 23:36:32

Thank you for the feedback, and I realize this script is not extremly advanced, and @boberman, when you high alch you do not need to bank as you can high alch noted items, which is what my script alchs, therefor you can alch anywhere from one to thousands of notes, without banking. my next script will be more advanced, and i hope that it will stand a better chance, thanks
-Blumblebee

nielsie95

2008-08-31 08:02:20

It seems like you're not getting in, sorry.
You may try again in one month, good luck :)
Closed.