
Originally Posted by
Yush Dragon
Hello,
I would like to request some assistance with learning SRL-6 and all the rest that's needed to get back into scripting again. I've read multiple tutorials in the OSR section but those won't help me to get back on track anymore since many things are updated.
As example:
Walking methods
Progress Reports
TPA's (and everything about it)
Just everything concerning Scripting
(I learn better from a teacher, than from any tutorial)
What I would like is someone to be like a coach-like teacher. Someone who would like to make a script with me so I could learn from it while doing so. =3
I hope someone would love to help me out.
Thanks in advance,
~ Yushy
Although I'm still relatively new, let me post my first script and break it down into the above areas. For the complete script in its entirety click this link or check it out in the moneymaking OSRS forum. I strongly encourage you to read mayors tutorial or coh3ns; then dissect and completely deconstruct others current scripts for great procedures and cool little tricks. If you still need help by all means send me a friend request/pm for questions and ill answer to the best of my abilities, best of luck Wire.
My current walking method is using reflection. For reflection walking open the reflection include folder and then find the folder called tools inside is a simba file called walking; everything should explain itself from there on out.
Simba Code:
procedure BankToSawMill;
begin
PickLogType;
WaitFindDTM(x, y, LogDTM, 500);
if FindDTM(LogDTM, X, Y, 549, 208, 735, 460) Then
begin
TurnRunOn;
R_WalkPath([Point(3254, 3424), Point(3263, 3428), Point(3277, 3430), Point(3283, 3438), Point(3286, 3450), Point(3294, 3460), Point(3296, 3473), Point(3303, 3483)]);
R_WalkPath([Point(3302, 3491)]);
//WriteLn('Logs are in the bag');
end else
WriteLn('No logs in bag');
FreeTheDTMs;
end;
I believe the progress report is rather straight forward; i encourage you to look into this tutorial for a paint progress report. I utilize both styles of progress reports, but have commented out the debug version.
Simba Code:
procedure ProgressReport(Running: boolean);
var
Trips, TotalPlanks, PlankProfitHigh, PlankProfitLow, PlanksPerHour, bgDefault: integer;
begin
BackGround := BitmapFromString(350, 100, 'BitMapStringfromEditor');
bgDefault := clOlive;
TotalPlanks := PlanksMade * 27;
PlankProfitHigh := PlanksMade * 27 * 310;
Trips := TotalTrips;
PlankProfitLow := PlanksMade * 27 * 185;
PlanksPerHour := Round((TotalPlanks * (3600.0 / (GetTimeRunning / 1000.0))));
if (running) then
bgDefault := clRed;
//WriteLn('==================================');
//WriteLn(' ');
//WriteLn('Wires Amazing Oak Planker');
//WriteLn('Time Running: ' + timerunning);
//WriteLn('Total amount of planks made ' + intToStr(TotalPlanks));
//WriteLn('Possible profit can be anywhere from ' + intToStr(PlankProfitLow) + ' to ' + intToStr(PlankProfitHigh));
//WriteLn('I think we are making ' + intToStr(PlanksPerHour) + ' planks an hour!');
//WriteLn(' ');
//WriteLn('==================================');
SMART_ClearCanvas;
//SMART_DrawBoxEx(false, true, IntToBox ( 2, 2, 320, 100), bgDefault);
SMART_DrawBitmap(false, BackGround, point(1,1));
Freebitmap (BackGround);
SMART_DrawTextEx(false, 10, 10, 'SmallChars07', ('Wires Amazing Oak Planker'), clWhite);
SMART_DrawTextEx(false, 200, 10, 'SmallChars07', ('Total trips:' + intToStr(Trips)), clWhite);
SMART_DrawTextEx(false, 210, 50, 'SmallChars07', ('Speices: ' + LogType + ',' + PlankType), clWhite);
SMART_DrawTextEx(false, 10, 30, 'SmallChars07', ('Time Running: ' + timerunning), clWhite);
SMART_DrawTextEx(false, 10, 50, 'SmallChars07', ('Total amount of planks made ' + intToStr(TotalPlanks)), clWhite);
SMART_DrawTextEx(false, 10, 70, 'SmallChars07', ('Possible profit can be anywhere from ' + intToStr(PlankProfitLow) + ' to ' + intToStr(PlankProfitHigh)), clWhite);
SMART_DrawTextEx(false, 10, 90, 'SmallChars07', ('We are making ' + intToStr(PlanksPerHour) + ' planks an hour!'), clWhite);
wait(500);
end;
Now onto the last specific "command?" you listed. TPAS are still new to me, but i have begun making a roof top agility script and have learn to use this method. This snip it has no fail safes but should explain from my personal notes while coding it what each line does. Please look into this tutorial and this one for a more in depth explanation of what is happening. Also be advised that for some reason my IsUpText is not working in this procedure.
Simba Code:
procedure VRoughWall;
var
RWallTPA, BWallTPA:TPointArray;
RWallATPA:T2DPointArray;
RWallBox:TBox;
tmpCTs, i, l, r, counter:Integer;
begin
tmpCTS := GetToleranceSpeed;
MakeCompass(315)
SetColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.48, 0.43);
FindColorsTolerance(RWallTPA, 2111560, MSX1, MSY1, MSX2, MSY2, 1)
L := High(RWallTPA) //Counts how many TP's are found
marktime(counter);
for i := 0 to L do
begin
wait(randomrange(60, 200));
WriteLn('FoundColorWALL');
RWallATPA := SplitTPAEx(RWallTPA, 5, 5); //Makes Arrays of TPAs
SortATPASize(RWallATPA, True); //Sorts the ATPAs by size
for i := 0 to high(RWallATPA) do
begin
WriteLn('TPA');
RWallBox := GetTPABounds(RWallATPA[i]); //Searches within a TPA from sorted ATPAs
SetColorSpeed2Modifiers(0.00, 0.23);
if findcolorstolerance(BWallTPA, 4672588, RWallBox.x1, RWallBox.y1, RWallBox.x2, RWallBox.y2, 5) then //Looks for color inside ATPAs
begin
r := random(length(BWallTPA));
writeln('trying to click');
mmouse(BWallTPA[r].x, BWallTPA[r].y, 5, 7); //changed from i to r
if WaitUpTextMulti(['Climb', 'lim', 'oug', 'Rough', 'all'], randomrange(200, 300)) then
begin
mouse(BWallTPA[r].x, BWallTPA[r].y, 2, 2, true);
WriteLn('Found Rough Wall');
end;
end;
end;
end;
SetColorToleranceSpeed(tmpCTS); //Returns base CTS
SetToleranceSpeed2Modifiers(0.02, 0.02); //Orginal CTS Mods
end;