SRL Archive - First Scripts

Nature rcer without summoning old way.


jordi1104

2012-02-05 11:18:53

Well here it is then it is very buggy and might not even complete 1 trip becouse of the problems I have currently with objectdtm's in jungle I use trees to locate and well the problem with it is somehow some trees on the minimap are glitched sometimes like the way dtm's are.

Requirements : start at Jiminua and have noted pure essence and 2 coins per essence and 44 rcing.

Also I suggest to only look at the code right now and not use it yet becouse it has no antiban and failsafes and objectdtm is very buggy.

program Walkingnats;
{$DEFINE SMART}
{$i SRL\SRL.simba}
{$i ObjectDTM\ObjDTMInclude.simba}

var
x, y: Integer;
C: TBox;
Path: TStringArray;
I: Integer;

procedure DeclarePlayers; //logins player
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Member := False;
Players[0].Active := True;
end;

procedure Setup; //setups everything smart,declareplayers etc
begin
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
ClearDebug;
SetupSRL;
DeclarePlayers;
if not (LoggedIn) then
LoginPlayer;
FindNormalRandoms;
ObjDTM_Setup;
ObjDTM_Debug := True;
end;

procedure AntiBan; //Keeps you from getting banned
begin
if not LoggedIn then
Exit;
case Random(100) of
0..3:
begin
RandomMovement;
SetAngle(SRL_ANGLE_HIGH);
end;
4..7: PickUpMouse;
8..11: HoverSkill('RuneCrafting', False);
12..15: PickUpMouse;
16..19: RandomRClick;
20..23: ExamineInv;
end;
end;

function Pureess(var fx, fy: Integer): Boolean; //Uses pure essence on Jiminua
var
x, y, Pure: Integer;
begin
ClearDebug;
SetupSRL;
Pure := DTMFromString('mGQAAAHicY2RgYPBhYmC4DaRXzSpkYAPSjEDMAAAqEQLn');
MakeCompass('n');
SetAngle(SRL_ANGLE_HIGH);
if FindDTM(Pure, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 4, 4, True);
end;
FreeDTM(Pure);
end;

procedure ClickOnJiminua; //Clicks on Jiminua
var
x, y: integer;
begin
if FindObjTPA(x, y, 1781041, 3, - 1, 25, 25, 1,['iminua']) then
Mouse(x, y, 3, 3, true);
if not didredclick then
repeat
Pureess(x, y);
ClickOnJiminua
until (FindText(x, y, 'X', UpChars, MCX1, MCY1, MCX2, MCY2));
end;

procedure Unnote; //Goes to NpcChats and unnotes the essence
begin
FindNormalRandoms;
wait(randomRange(6000, 9000));
FindNPCChatText('X', ClickLeft);
wait(randomRange(2000, 3000));
TypeSend('26');
wait(randomRange(2000, 3000));
ClickContinue(True, True);
FindNPCChatText('It', ClickLeft);
wait(randomRange(2000, 3000));
ClickContinue(True, True);
end;

procedure WalkToAlter; //Walks to altar
begin
ObjDTM_Setup;
Path := ['112:49:6:1:7:103:103:1:7:111:107:1:7:102:117:1:7:136:97:1:7:141:83:1:7:111:128', '131:95:8:1:7:116:45:1:7:99:41:1:7:87:33:1:7:107:116:1:7:78:140:1:7:69:136:1:7:102:130:1:7:128:116', '126:99:8:1:7:78:103:1:7:57:103:1:7:66:32:1:7:90:120:1:7:74:119:1:7:53:117:1:7:107:120:1:7:50:28', '133:83:10:1:7:103:116:1:7:90:120:1:7:69:120:1:7:57:116:1:7:61:103:1:7:44:103:1:7:32:86:1:7:69:132:1:7:103:133:1:7:120:112', '118:118:6:1:7:95:116:1:7:70:112:1:7:65:129:1:7:53:116:1:7:99:133:1:7:86:137', '120:113:9:1:7:61:82:1:7:65:99:1:7:53:103:1:7:37:78:1:7:61:112:1:7:31:95:1:7:19:82:1:7:65:125:1:7:44:120', '103:128:9:1:7:134:75:1:7:129:87:1:7:27:69:1:7:23:82:1:7:27:95:1:7:69:117:1:7:56:121:1:7:69:129:1:7:112:104', '113:117:11:1:7:91:57:1:7:100:74:1:7:117:75:1:7:122:53:1:7:109:40:1:7:48:69:1:7:48:82:1:7:36:73:1:7:35:91:1:7:109:96:1:7:91:117', '116:122:16:1:7:79:61:1:7:96:66:1:7:108:70:1:7:105:49:1:7:88:40:1:7:70:40:1:7:83:100:1:7:82:113:1:7:70:95:1:7:61:82:1:7:117:83:1:7:125:96:1:7:134:83:1:7:126:75:1:7:52:108:1:7:60:125', '113:106:16:1:7:61:78:1:7:52:91:1:7:53:56:1:7:52:69:1:7:40:51:1:7:96:52:1:7:109:53:1:7:105:40:1:7:96:31:1:7:88:40:1:7:79:26:1:7:82:113:1:7:73:121:1:7:65:112:1:7:56:121:1:7:35:99', '80:133:13:1:7:112:101:1:7:103:118:1:7:126:88:1:7:130:71:1:7:122:58:1:7:52:86:1:7:60:104:1:7:43:95:1:7:35:86:1:7:79:26:1:7:66:26:1:7:56:122:1:7:47:112', '82:140:19:1:7:109:66:1:7:104:96:1:7:117:49:1:7:126:66:1:7:121:84:1:7:117:105:1:7:61:104:1:7:48:108:1:7:52:91:1:7:39:95:1:7:48:78:1:7:35:77:1:7:44:60:1:7:53:61:1:7:49:43:1:7:58:35:1:7:66:52:1:7:61:70:1:7:65:82', '105:123:8:1:7:66:44:1:7:53:48:1:7:58:31:1:7:45:35:1:7:121:75:1:7:72:23:1:7:109:36:1:7:122:45', '124:120:6:1:7:125:75:1:7:125:50:1:7:104:32:1:7:90:121:1:7:77:124:1:7:77:133', '102:110:12:1:7:104:45:1:7:88:32:1:7:53:78:1:7:57:99:1:7:65:107:1:7:40:82:1:7:40:90:1:7:44:103:1:7:48:115:1:7:52:124:1:7:35:115:1:7:23:102'];
begin
for I := 0 to 14 do
begin
ObjDTM_Walk(Path[i], 0, 100, 80, True);
end;
end;
end;

procedure enteraltar; //Clicks and enters altar
var
x, y: integer;
begin
wait(randomRange(2000, 3000));
if FindObjTPA(x, y, 5307817, 30, - 1, 25, 25, 1, ['nter', 'ysterious', 'unes']) then
Mouse(x, y, 3, 3, true);
if not didredclick then
repeat
enteraltar;
until (didredclick);
end;

procedure WalkToAltar; //Walks to nature altar
begin
wait(randomRange(5000, 9000));
ObjDTM_Setup;
Path := ['79:61:10:1:7:104:104:1:7:100:122:1:7:121:96:1:7:125:82:1:7:129:60:1:7:138:73:1:7:129:43:1:7:130:104:1:7:126:113:1:7:109:117'];
begin
for I := 0 to 0 do
begin
ObjDTM_Walk(Path[i], 0, 100, 80, True);
end;
end;
end;

procedure CraftRunes; //Craft runes
var
x, y: integer;
begin
FindNormalRandoms;
wait(randomRange(2000, 3000));
if FindObjTPA(x, y, 9080972, 2, - 1, 25, 25, 1, ['raft', 'une', 'ltar']) then
Mouse(x, y, 3, 3, true);
if not didredclick then
repeat
CraftRunes;
until (didredclick);
end;

procedure Walktoportal; //Walks to portal
begin
wait(randomRange(2000, 3000));
ObjDTM_Setup;
Path := ['76:98:8:1:7:125:56:1:7:125:64:1:7:125:79:1:7:136:79:1:7:132:91:1:7:120:98:1:7:116:111:1:7:100:118'];
begin
for I := 0 to 0 do
begin
ObjDTM_Walk(Path[i], 0, 100, 80, True);
end;
end;
end;

procedure Findportal; //Finds and clicks portal
var
x, y: integer;
begin
wait(randomRange(3000, 5000));
if FindObjTPA(x, y, 8433848, 10, - 1, 25, 25, 1, ['nter', 'ortal']) then
Mouse(x, y, 3, 3, true);
if not didredclick then
repeat
Findportal;
until (didredclick);
end;

procedure WalkBack; //Walks back to Jiminua
begin
wait(randomRange(3000, 5000));
ObjDTM_Setup;
Path := ['46:41:12:1:7:55:89:1:7:48:81:1:7:45:63:1:7:32:74:1:7:36:85:1:7:90:32:1:7:40:97:1:7:36:108:1:7:47:122:1:7:44:105:1:7:85:135:1:7:28:97', '77:31:10:1:7:113:59:1:7:128:71:1:7:113:36:1:7:36:105:1:7:43:112:1:7:59:112:1:7:55:124:1:7:74:124:1:7:85:120:1:7:93:128', '69:30:11:1:7:102:67:1:7:109:47:1:7:102:39:1:7:91:32:1:7:117:43:1:7:121:55:1:7:51:39:1:7:40:43:1:7:121:82:1:7:133:75:1:7:120:106', '89:26:18:1:7:66:70:1:7:63:90:1:7:55:78:1:7:27:78:1:7:43:82:1:7:51:93:1:7:39:66:1:7:51:66:1:7:63:58:1:7:67:43:1:7:59:27:1:7:113:39:1:7:105:55:1:7:121:55:1:7:118:71:1:7:113:90:1:7:101:82:1:7:113:117', '48:36:14:1:7:113:55:1:7:75:27:1:7:63:27:1:7:125:51:1:7:31:50:1:7:23:62:1:7:51:82:1:7:58:97:1:7:54:114:1:7:58:125:1:7:97:109:1:7:105:94:1:7:117:82:1:7:121:67', '42:42:15:1:7:98:70:1:7:109:70:1:7:90:59:1:7:82:48:1:7:70:43:1:7:56:39:1:7:39:58:1:7:47:70:1:7:58:74:1:7:58:86:1:7:67:94:1:7:58:105:1:7:39:97:1:7:85:125:1:7:70:125', '48:36:12:1:7:90:58:1:7:82:43:1:7:106:59:1:7:98:78:1:7:121:67:1:7:113:82:1:7:125:87:1:7:101:114:1:7:90:110:1:7:82:98:1:7:43:66:1:7:43:54', '54:36:10:1:7:118:86:1:7:125:102:1:7:78:110:1:7:66:118:1:7:66:102:1:7:78:98:1:7:42:94:1:7:38:78:1:7:34:66:1:7:39:54', '25:56:7:1:7:62:82:1:7:66:98:1:7:54:102:1:7:62:110:1:7:65:122:1:7:38:78:1:7:34:93', '24:63:8:1:7:98:102:1:7:82:106:1:7:94:119:1:7:81:122:1:7:69:110:1:7:49:110:1:7:37:106:1:7:41:94', '31:71:9:1:7:70:98:1:7:65:114:1:7:49:98:1:7:45:112:1:7:98:115:1:7:82:114:1:7:93:127:1:7:58:29:1:7:42:25', '49:109:7:1:7:87:30:1:7:99:38:1:7:115:42:1:7:106:111:1:7:102:125:1:7:69:131:1:7:77:135'];
begin
for I := 0 to 11 do
begin
ObjDTM_Walk(Path[i], 0, 100, 80, True);
end;
end;
end;

procedure MainLoop; //Procedures and functions wich have to be executed
begin
DeclarePlayers;
AntiBan;
Pureess(x, y);
ClickOnJiminua;
Unnote;
WalkToAlter;
enteraltar;
WalkToAltar;
CraftRunes;
Walktoportal;
FindPortal;
WalkBack;
end;

begin
Setup;
repeat
MainLoop;
until AllPlayersInactive;
end.

eXoTiK

2012-02-05 11:20:21

Really bad conventions. You should re-do it for formatting (space) and semicolons.

fre

2012-02-05 11:47:01

Is Abyss not faster?

jordi1104

2012-02-05 11:49:10

From: fre
Is Abyss not faster?


Probably but since I made this for a request and it only needs 44 rcing I chose this and abyss is very hard compared to this.

dweg

2012-02-05 14:55:50

why not sps walking? objectdtm is uber fail.
also, antiban chances are HORRIBLE. 6/1000? cmon now.

Scaper

2012-02-05 15:03:40

offfff horrid code seems like it ill get u banned very very fast no failsafes nadda

jordi1104

2012-02-05 15:10:38

Yeah this is very buggy and all like I sayd and I don't use sps becouse it is very glitchy in some areas.
The failsafes I will add temorrow.
Antiban's not mine so I will make one myself instead temorrow.
And I will try to make the code look fancier.

farmer jack

2012-02-05 15:22:51

Wow…. a little harsh guys for a first script don't you think?

In your antiban procedure it says case Random(1000) … try changing the 1000 to maybe just a tad lower :p

Also your going to actually have to call the antiban procedure in your main loop not just declare it. Currently until that's done I wouldn't recommend running it.. because no antiban well equals ban.

With SPS just make the points heaps close together because that way It won't get suck in areas.. hopefully :)

Anyway good effort!

jordi1104

2012-02-05 15:28:44

From: farmer jack
Wow…. a little harsh guys for a first script don't you think?

In your antiban procedure it says case Random(1000) … try changing the 1000 to maybe just a tad lower :p

Also your going to actually have to call the antiban procedure in your main loop not just declare it. Currently until that's done I wouldn't recommend running it.. because no antiban well equals ban.

With SPS just make the points heaps close together because that way It won't get suck in areas.. hopefully :)

Anyway good effort!


Thanks helpfull response I will do what you sayd and I will add that temorrow.
Pretty stupid of me I forget to put it into mainloop but well I guess I will add that too then.

Er1k

2012-02-05 20:23:02

From: dweg
why not sps walking? objectdtm is uber fail.
also, antiban chances are HORRIBLE. 6/1000? cmon now.


ODTM is not bad. In some cases I think it's even better than SPS :P

Brandon

2012-02-05 20:28:59

From: nosaj.421
ODTM is not bad. In some cases I think it's even better than SPS :P


If I'm correct, DTM's are made of const strings.. Thus they cannot be dynamically made at run time.. SPS can.. you can plug in points in a TPA during the runtime of the script.. whereas DTM's have to be made before compilation..

Thus SPS will always be better than ODTM's.. I have yet to see a case where ODTM's are better than SPS.. ODTM's rely purely on objects being there.. what if it's the alkharid desert or somewhere like an all Ice-place.. then your screwed because colours are all the same, the dtm's may match anything.. no objects in some parts of the desert..

Don't get me wrong.. they are good but will never beat SPS imo.

Oh well.. scripter's preference..

jordi1104

2012-02-06 08:18:21

Updated should be a bit better.
Zzyz helped me alot!

omegaangelz

2012-02-06 08:39:27

From: ggzz
If I'm correct, DTM's are made of const strings.. Thus they cannot be dynamically made at run time.. SPS can.. you can plug in points in a TPA during the runtime of the script.. whereas DTM's have to be made before compilation..

Thus SPS will always be better than ODTM's.. I have yet to see a case where ODTM's are better than SPS.. ODTM's rely purely on objects being there.. what if it's the alkharid desert or somewhere like an all Ice-place.. then your screwed because colours are all the same, the dtm's may match anything.. no objects in some parts of the desert..

Don't get me wrong.. they are good but will never beat SPS imo.

Oh well.. scripter's preference..


In the wilderness runite miner, ODTM's worked better than SPS :)

Markus

2012-02-06 08:47:25

From: ggzz
Thus SPS will always be better than ODTM's.. I have yet to see a case where ODTM's are better than SPS.. ODTM's rely purely on objects being there.. what if it's the alkharid desert or somewhere like an all Ice-place..
Don't get me wrong.. they are good but will never beat SPS imo.


In deserts, there's tons of cactusses and brown rocks. Those are perfect for object DTMs. Idk about SPS, but SPS even has trouble with the ess mine for me, it's easy to use and semi-accurate in certain areas, but has lots of trouble in others. Ice places are very monotone thus hard for SPS to get an accurate fix on.
And all of those complaining about 'dynamic at runtime', how many of you actually did that? It is barely used, merely a theoretical advantage.

Now get back ontopic please. There's a nice debate section for a SPS vs Obj DTM thread

laakerules

2012-02-06 09:55:42

Ehh, looks kinda scethcy bro. But may have a good future work on making more human like with maybe an auto talker or something. Uses verb, noun, and then plugs those into sentences. Or maybe make the anti-b better. Also i would totally recomend SPS path as i switched to SPS on my Ghouling Script and it works 100% better.

jordi1104

2012-02-06 10:07:39

From: laakerules
Ehh, looks kinda scethcy bro. But may have a good future work on making more human like with maybe an auto talker or something. Uses verb, noun, and then plugs those into sentences. Or maybe make the anti-b better. Also i would totally recomend SPS path as i switched to SPS on my Ghouling Script and it works 100% better.


What the hell more human like an autotalker what the?

laakerules

2012-02-06 10:09:39

Have you ever seen an auto talker. Its a thing where it types in phrases not normally used. Or uses quickchat to QC your RC level! :duh:

jordi1104

2012-02-06 10:10:33

From: laakerules
Have you ever seen an auto talker. Its a thing where it types in phrases not normally used. Or uses quickchat to QC your RC level! :duh:


I ment an autotalker most likely gets people banned it's the most common bot for a instant ban.
I woulden't add an autotalker to a rcer nobody ever talks while rcing.
I still have my permanent manual ban from it since mod mark doesn't likes them as much as you do.
Nobody uses this method anymore for rcing exept very few so you are safe to say you are chatting to yourself.
Will most likely add some more antiban.

laakerules

2012-02-06 10:47:13

Ahh ok. I dont know about the RC, all ive ever used a AutoTalker for was like inside banks doing things. A simple auto talker that QC your strength level. And for yaks on QC world! :)

But other than that good work itll be better in the future i hope.

Mat

2012-02-06 15:30:13

Nice to see so many new scripts :) On the note of abyss post 3? Its bloody hard :P
Mat
Nice script tho.
On the part about Walking Methods, I like SPS and DTM as SPS is quick and fast and DTM allows me to walk in places where SPS doesn't Support (Abyss)

asap1

2012-02-10 16:53:33

try using normal DTM walking it worked fine for me in the desert and you have NO standards at all you should fix that asap (no pun intended) if you are going to continue to script

http://villavu.com/forum/showthread.php?t=71077