Damn awesome tutorialI've bookmarked it. I'm sure I'll come back a lot to read it >.> Thanks Mayor
Damn awesome tutorialI've bookmarked it. I'm sure I'll come back a lot to read it >.> Thanks Mayor
"If, at someone, your wound still arouses pity,
stone this vile hand that strokes you,
spit on this lips that kiss you." (Augusto dos Anjos, translated from brazillian portuguese to english)
Very nice guide, nicely written and understandable. But I do have a little question. At the moment I'm trying to understand section 6 and I'm doing a pretty good job with that but I don't understand something very well.
What's the difference between this:
Simba Code:wait(randomRange(1000, 2000));
And this:
Simba Code:wait(gaussRangeInt(500, 750));
I already know what 'wait(randomRange(1000, 2000))' is. It waits a random amount of ms (in this case something between 1000 and 2000 ms. In your AIO guide you suddenly change it to 'wait(gaussRangeInt(500, 750))'. I hope you could answer my simple question, thank you in advance!
I forgot I had gauss waits in this tutotial. I should probably remove them as it might confuse people. Gauss is referring to a Gaussian (normal) distribution where the majority of the values lie close to the middle.
Basically:
randomRange(0, 1000) will have an equal chance of returning any value between 0 and 1000.
gaussRangeInt(0, 1000) will have more change of returning an integer around 500ish
Thank you for the quick reply, I understand it now. So there actually wouldn't be much difference between using randomRange and gaussRangeInt. I'll probably just use randomRange but it's good to know the other one too.
Last edited by Spaceblow; 08-05-2014 at 01:00 PM.
Is it possible to create a more accurate path with SPS ? I'm trying to run into a building, but it just doesn't work.
here's a printscreen of sps path generator : http://prntscr.com/49rbft ( green arrows are the places it walks to )
I tried more points, fewer points, but nothing seems to work.
I have found a script using banksymbol on the minimap.But that wouldn't work for the tanner.
Last edited by lanadekat; 08-05-2014 at 01:05 PM.
I have 3 questions:
#1 : Is it possible to somehow disable the console? I'm talking about the black window that pops up together with SMART when I press play.
#2 : At the end of your topic you can see your complete script. In the beginning of each procedure you use:
Simba Code:if not isLoggedIn() then
exit;
But why do you actually do that if you have this in the beginning of your main loop:
Simba Code:if not isLoggedIn() then
begin
players[currentPlayer].login();
exitSquealOfFortune();
mainScreen.setAngle(MS_ANGLE_HIGH);
minimap.setAngle(MM_DIRECTION_NORTH);
end;
Do you do that incase something goes wrong in the middle of a procedure? Like if your player stops running and logs out after a couple minutes? If so, why don't you use the beginning of your main loop for the beginning of every procedure? That would be max profit because instead of just exiting it logs in again to continue mining.
#3 : At the end of your main loop you can see this:
Simba Code:until(false);
What does it do?
I may sound stupid asking such questions but I want to understand as much as possible. I hope I'm welcome with questions like that in the future, thanks in advance!![]()
Yes. Just put this at the start of your main loop:
Simba Code:smartShowConsole := false;
It's just the way I structure my scripts. If your player logs out at any point in the mainloop, the rest of the procedures in the mainloop will exit instantly. Then once it's back at the top of the mainloop it will login.
Simba Code:repeat
if not isLoggedIn() then //then we arrive back up here, and log back in
begin
players[currentPlayer].login();
exitSquealOfFortune();
mainScreen.setAngle(MS_ANGLE_HIGH);
minimap.setAngle(MM_DIRECTION_NORTH);
end;
procedure1();
procedure2(); // e.g if I lag out here
procedure3(); //exit
procedure4(); //exit
procedure5(); //exit
procedure6(); //exit
until(false);
You are right in that you could copy and paste that login block into each procedure, but you end up with a whole bunch of code that is just repeating itself (imagine 50 + procedures). Your point about logging in to continue where it left off, it could do that depending on how you structure your mainLoop. Currently in this tutorial the mainloop is split into two halves based on if the inventory is full:
Simba Code:if tabBackpack.isFull() then
begin
teleToPortSarim();
findDepositBox();
depositClay();
end;
progressReport();
teleToClanCamp();
runToMine();
mineRocks();
So if it lagged out while mining rocks, once it logs back in it would tele to clan camp, run to mine, and then start mining. If I wanted it to start mining straight away (if player is already in mine) I would need to add another condition:
Simba Code:if tabBackpack.isFull() then
begin
teleToPortSarim();
findDepositBox();
depositClay();
end;
progressReport();
if isInMine() then
mineRocks()
else begin
teleToClanCamp();
runToMine();
end;
Then I would also need create a boolean function (isInMine) to tell if player is in mine (e.g., using SPS, or if it can see the mine minmap symbol, etc.). Basically, you can organise your mainloop depending on the state of your player (where your player is, what's in your inventory etc.)
until false just means it will repeat the loop forever.
Last edited by The Mayor; 08-08-2014 at 12:29 AM. Reason: Dat Spelling
That sure is a lot of points![]()
you could try sps.walkToPos(TPoint)
sps.walkToPos(point(100, 150));
The tanner symbol is outdated unfortunately. I updated the bank, lodestone, mining + a few others a couple of days ago. If you are really struggling with it I could fix the tanner symbol and get it pushed.
Starting this tutorial todaywill update my progress xD
Awesome guide, going through this now and making an edgeville gold smelter, after about 2-4 hrs I've got a working smelter. 10/10 Guide
I just did the same thing last night, I used this bad boy to write a clay to soft clay in about the same time-frame. I also did it in edgeville, I was wondering if you would want to swap scripts and learn a thing or two from each-other? Once I throw in some anti-ban, and a proggy i'm going to post mine to first script section to get some feedback.
How can I setup a failsafe? My script will sometimes miss a click :/
Thanks!
This is one of the best guides i have read in all my time being here <3 ( the last guide i read was by Yohojo when i first joined) but this guide is soo much more idk made sense in my head how everything worked.. and when it didn't @The Mayor helped me understand!
Current Rank Supreme Master First Class
Nice guide!![]()
wow, what an amazing guide, I can tell how much time and effort went in to that; thank you so much for sharing! I hope to start coding some bots and help fix some that are a little outdated, Thanks again Mr Mayor![]()
@
How did you manage to zoom out of your minimap @.@
Very nice tutorial!
I have problems walking with SPS, I think it might be because my map is big and have som blind/dead spots.
How can I use multiple maps instead of just one? And is there any best practices when using SPS?
There are currently 1 users browsing this thread. (0 members and 1 guests)