Log in

View Full Version : Adding Progress Report Help?



KeepBotting
01-17-2012, 10:18 PM
Hello SRL-ians.
This is my script.
How can I add a progress report into this?

I want it to tell the user how many logs they have chopped,
and how much XP they have gained.

I'm also not entirely sure that my breaking procedure works either, maybe a few pointers on that as well? :p

Thanks.





program kbPowerChopper;
{$DEFINE SMART}
{$i srl/srl.simba}

const
{-----Breaking Settings-----}
TakeBreaks = True; //Take breaks? True for yes, False for no.
HowOften = 90; //How often to break in minutes.
HowOftenRandom = 30; //Added randomness to how often you break.
HowLong = 20; //How long to break for in minutes.
HowLongRandom = 8; //Added randomness in break length.
{---------------------------}
{---SMART Setup Constants---}
WORLD = 0;// Set a world, if you'd like. Leave 0 to choose a random world.
MEMBERS = False;// Are you Members or Free-To-Play? False for F2P, True for P2P.
SIGNED = True; // True if running a single account, false otherwise.
{---------------------------}
{--------Script Info--------} //DON'T CHANGE
Author = 'KeepBotting';
Name = 'kbFirstScript';
Version = '0.9';
{---------------------------} //DON'T CHANGE

Var
BreakOften, BreakLength, BreakTimes: Integer; //This sets up the variables for the BreakCheck procedure.

procedure DeclarePlayers; //This declares the players to be used in the script.
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'waveevaw'; //Your Runescape username
Players[0].Pass := 'waving'; //Your Runescape password
Players[0].Nick := 'Wave'; //3 or 4 lowercase letters from your Runescape username. Used as a Nickname.
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

procedure SetupScript; //This is almost purely cosmetic, it lets you know what procedures/functions are being activated when the script starts.
begin;
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
WriteLn('Welcome to kbPowerChopper by kbScripts and KeepBotting!');
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
WriteLn('Initilizing DeclarePlayers procedure...');
WriteLn('Initilizing LoginPlayer procedure...');
WriteLn('Initilizing ChopTree procedure...');
WriteLn('Initilizing AntiBan procedure...');
WriteLn('Initilizing BreakCheck procedure...');
WriteLn('All procedures initilized successfully! Happy botting!');
end;

procedure AntiBan; //This keeps the banhammah from striking.
begin
if(not(LoggedIn))then
Exit;
FindNormalRandoms;
case Random(8) of
0:
begin
WriteLn('AntiBan chosen: Hover Skill.');
HoverSkill('Woodcutting', false); //This hovers your mouse over the Woodcutting skill.
wait(2453+Random(432));
end;
1: PickUpMouse; //This moves the mouse in a jerky, human-like motion.
2:
begin
WriteLn('AntiBan chosen: Move Compass.');
MakeCompass('N'); //This fiddles around with the Compass. Aligns the Compass North, then South, then North again.
wait(100+random(133));
MakeCompass('S');
wait(50+random(133));
MakeCompass('N');
FindNormalRandoms;
end;
end;
end;

procedure AntiRandoms; //This is currently broken (as Reflection does not work) but it would solve randoms if it worked.
begin
{$IfDef Reflection}
R_FindRandoms;
{$EndIf}
FindNormalRandoms;
end;

procedure ProgressReport; //This handles your proggies. DO NOT CHANGE.
begin
WriteLn('Time for a progress report!');
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
WriteLn('kbPowerChopper by kbScripts and KeepBotting, Version 0.9');
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
end;

procedure ChopTree; //This chops your trees.
var x, y: integer;
begin
repeat
FindNormalRandoms;
WriteLn('ChopTree procedure activated! Finding tree.');
if FindObj(x, y, 'hop', 3490639, 35) then //This finds the object, records the X and Y values, and tells the script to find the option "Chop".
begin
WriteLn('Tree found! Clicking option.');
Mouse(x, y, 0, 0, false);
ChooseOption('hop'); //This tells the script to right-click on the object and select "Chop".
end;
repeat //This is a repeat function. It repeats the steps above.
wait(400+random(250));
AntiBan;
Until not IsUpText('ree') or (InvFull); //This is an Until function. It stops the repeat function if the tree has been chopped or your inventory is full.
until(InvFull); //This tells the script to stop completely once your inventory is full.
end;

begin
Smart_Server := WORLD; //This sets up the SMART Minimizing Autoing Resource Thing.
Smart_Members := MEMBERS;
Smart_Signed := SIGNED;
Smart_SuperDetail := False;
SetupSRL; //This sets up SRL.

SetupScript;
DeclarePlayers; //This runs your DeclarePlayers procedure, making sure that the script has a player to run.
LoginPlayer; //This logs in your player.
repeat //This is the start of the main loop.
ChopTree; //Chops your trees.
AntiBan; //Runs your AntiBans.
BreakCheck; //Handles the breaks. Feel free to delete this line and this line ONLY if you do not want breaks.


//Notice that AntiRandoms isn't in here. It would be useless to include because Reflection is currently broken.


until AllPlayersInactive; //This stops the script completely once your player has failed. e.g. Gotten into a random event, died (unlikely) or failed to find a tree.
end.

NexPB
01-17-2012, 10:35 PM
You can use an integer to store the count of the logs and than multiply the logs with the experience you would get from 1 log.

Also srl can solve some randoms with color :p

kevin33
01-17-2012, 10:41 PM
You left your user and pass in the script. PM me for a new one.

Kyle Undefined
01-17-2012, 10:50 PM
Just PM him the new pass.

KeepBotting
01-17-2012, 10:52 PM
You left your user and pass in the script. PM me for a new one.Somebody call FailBlog! XD

EDIT: Nah, it's fine. I have too many dummy accounts anyways, need to get rid of some.

KeepBotting
01-17-2012, 10:54 PM
You can use an integer to store the count of the logs and than multiply the logs with the experience you would get from 1 log.

Also srl can solve some randoms with color :p
Indeed, but how do I get the script to recognize that I have chopped a log?
I have a complicated way of learning, sorry. I have ZERO knowledge of the Pascal language, but I can script decently.

kevin33
01-17-2012, 11:15 PM
I pmed you the new pass :)

KeepBotting
01-17-2012, 11:15 PM
I pmed you the new pass :)Thanks lol.

KeepBotting
01-18-2012, 09:49 PM
Bump pl0x?

NexPB
01-18-2012, 09:55 PM
Bump pl0x?
For the xp you can also use the method GetXPBarTotal: it wil return the total xp u have in your xp bar (it must be open can be done by this ToggleXPBar(true); ). And get the amount when you start the script and the current like CurrentXp - StartXp something like that

KeepBotting
01-18-2012, 09:59 PM
For the xp you can also use the method GetXPBarTotal: it wil return the total xp u have in your xp bar (it must be open can be done by this ToggleXPBar(true); ). And get the amount when you start the script and the current like CurrentXp - StartXp something like thatThanks! Let me try that.
EDIT: GetXPBarTotal: Just returns a blank line. Is is a colon or a semi-colon at the end?

John
01-18-2012, 11:24 PM
Thanks! Let me try that.
EDIT: GetXPBarTotal: Just returns a blank line. Is is a colon or a semi-colon at the end?
try both see what works.