SRL Archive - SRL Archives

type RSObject = record...


Wanted

2008-07-12 02:41:19

type
RSObject = record
Name, Description, Main_Option, Main_Use: string;
B: Byte;
Width, Height, DTM, Bitmap, Color, Picture, Price, Low_price, High_Price, I: LongInt;
MS, MM, MI, MC, P: TPoint;
B: array of Byte;
Widths, Heights, DTMs, Bitmaps, Colors, TIA: TIntegerArray;
MSs, MMs, MIs, MCs, TPA: TPointArray;
end;

Not exactly what I would add to the record personally, but you get the general idea (the jist)

What do you all think?

rkroxpunk

2008-07-12 02:46:38

I think it reminds me of rsbot :)

Wanted

2008-07-12 02:54:46

From: rkroxpunk
I think it reminds me of rsbot :)


Oh comon now, I've never seen rsbot and besides who cares lol.

I think it's a good/cool idea, it's proven VERY useful in just a small amount of time writing any script with runescape. It may need a little editing, but I think we are definitively going somewhere with this applied logic shit…

EvilChicken!

2008-07-12 03:31:00

I think it is a great idea, I like these.
What is the B byte for in third line after all the strings?

Santa_Clause

2008-07-12 03:39:42

Lowest and highest price change too much so it wouldn't work properly.

n3ss3s

2008-07-12 04:36:04

Rk, RSBot's name, but RSBot's RSObject isn't that huge :rolleyes:



IceFire, what are you going to do with that record?

Naum

2008-07-12 06:18:39

B : Array Of byte
Isn't that just
B : String;
?

Markus

2008-07-12 08:06:31

Nauman, not really. String is based on array of char, plus some other shit.

Santa_Clause

2008-07-12 08:27:03

From: NaumanAkhlaQ
B : Array Of byte
Isn't that just
B : String;
?


A byte is an integer up to 256…?

Wanted

2008-07-12 09:49:07

Oh yea that Byte Array needs to be a BA: array of Byte;

Yea bytes or small integers such as for do loops ect..

Like I said the Record needs to be edited, I'm just trying to underlay the general idea.

the scar noob

2008-07-12 12:18:56

From: Santa_Clause
A byte is an integer up to 256…?


Not exactly.
Byte: 0..255
Integer: -2147483648 .. 2147483648 > a number in range of 32 bits (a signed number)

>> Pascal Delphi

A byteis a number in range of 0..255;)

-Tsn.

Wanted

2008-07-12 19:07:37

From: the scar noob
Not exactly.

>> Pascal Delphi

A byteis a number in range of 0..255;)

-Tsn.


0 - 255 is 256 numbers (include 0), remember in an array it's +1? 255 + 1 = 256 ;)

From: n3ss3s
Rk, RSBot's name, but RSBot's RSObject isn't that huge :rolleyes:



IceFire, what are you going to do with that record?


Well the general idea is to just use it as variables and such, for example:

var
Log: RSObject;

  Log.MS := Point(MSCX, MSCY);
Log.Color := 586573;
Log.DTM := DTMFromString(....
Log.Bitmap := BitMapFromString(...

  FindColorSpiralTolerance(Log.MS.X, Log.MS.Y, Log.Color, MSX1, MSY1, MSX2, MSY2, Log.ColorTol);

  FindBitmap(Log.MS.X, Log.MS.Y, Log.Bitmap, ....

  Mouse(Log.MS.X, Log.MS.Y...
WalkTo(Log.MM);

just examples

SubiN

2008-07-12 19:21:49

great ideea =], wud help alot

Santa_Clause

2008-07-13 02:40:46

From: the scar noob
Not exactly.

>> Pascal Delphi

A byteis a number in range of 0..255;)

-Tsn.


An integer is a number :) I was talking from a mathematical point of view, not from a SCAR point of view.

the scar noob

2008-07-13 05:07:09

From: Santa_Clause
A byte is an integer up to 256…?


From: IceFire908
0 - 255 is 256 numbers (include 0), remember in an array it's +1? 255 + 1 = 256 ;)


In the words that santa said it, you can technically see that he says: "a byte is an integer up to 256", which isn't correct Ice.
Cause that means that a byte number ranges from the negative value of an integer until 256 => -2147483648 .. 256 which is incorrect:)

-Tsn.

JuKKa

2008-07-13 05:48:00

Program RSObject;
{.Include SRL/SRL.Scar}

Type
RSObject = Record
X, Y, Color, Tol, CTS: Integer;
Name: TStringArray;
Width, Height: Integer;
End;

Var
Man, Woman, WhiteKnight, BlackKnight, Guard: RSObject;

Procedure SetupRSObjects;
Begin
Guard.Color := 0;
Guard.Tol := 10;
Guard.CTS := 2;
Guard.Name := ['Guard', 'uar', 'ard', 'Gua'];
Guard.Width := 25;
Guard.Height := 50;
//--------------------\\
Man.Color := 0;
Man.Tol := 10;
Man.CTS := 2;
Man.Name := ['Man'];
Man.Width := 25;
Man.Height := 50;
//--------------------\\
Woman.Color := 0;
Woman.Tol := 10;
Woman.CTS := 2;
Woman.Name := ['Woman', 'Wom', 'oma', 'man'];
Woman.Width := 25;
Woman.Height := 50;
//--------------------\\
WhiteKnight.Color := 0;
WhiteKnight.Tol := 10;
WhiteKnight.CTS := 2;
WhiteKnight.Name := ['White', 'night', 'hit', 'ite'];
WhiteKnight.Width := 25;
WhiteKnight.Height := 50;
End;

Function FindRSObject(TObject: RSObject): Boolean;
Var
I, CTS: Integer;
TPA: TPointArray;
aTPA: T2DPointArray;
Begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(TObject.CTS);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, TObject.Color, MSX1, MSY1, MSX2, MSY2, TObject.Tol);
ColorToleranceSpeed(CTS);
aTPA := TPAtoATPAEx(TPA, TObject.Width, TObject.Height);
For I:= 0 To High(aTPA) Do
Begin
MiddleTPAEx(aTPA[I], TObject.X, TObject.Y);
MMouse(TObject.X, TObject.Y, 0, 0);
Wait(50+Random(25));
Result := IsUpTextMultiCustom(TObject.Name);
If(Result)Then Break;
End;
End;

Begin
SetupSRL;
FindRSObject(Guard);
End.

Something like this ;)?

n3ss3s

2008-07-13 07:27:24

Woman, eh?


Type
RSObject = Record
X, Y, Color, Tol, CTS: Integer;
Name: TStringArray;
Width, Height, Bust: Integer;
End;

EvilChicken!

2008-07-13 13:02:14

N3s, if you're thinking about cup-size, you've totally phajld. Like when my hair got stuck in the mixer (spinning thingy, right.)

From: n3ss3s
Woman, eh?


Type
RSObject = Record
X, Y, Color, Tol, CTS: Integer;
Name: TStringArray;
Width, Height: Integer;
Bust: Char;
End;


Yep, adding spam to spam.

Anyway, I have to underline that I think that this is a really good idea, exept for the color array in the record. They're dynamic, riiight?

So this may be a bit complicated, but if we had some sort of system ala SmartColors which would upload colors of objects to the internet which would be used by users using the same object finding procedures/systems, this would be really great.

Wizzup? has made this thread which is stating that SRL now has it's own Google Code account, plese check it out. (nt rly oftpic.)

So, what do you think about my idea? (As in, iz et possible?)

Dan Cardin

2008-07-13 13:41:54

afaik he means bust size, in inches, so not char :).

on a per script bases, i dont think this would be that helpful. if a bunch of objects were already done and you could include them into your script then i think it would be quite a nifty way of time saving.

Wanted

2008-07-13 14:25:19

From: the scar noob
In the words that santa said it, you can technically see that he says: "a byte is an integer up to 256", which isn't correct Ice.
Cause that means that a byte number ranges from the negative value of an integer until 256 => -2147483648 .. 256 which is incorrect:)

-Tsn.


Ha, true, but I never said "santa is right". No I said 0..255 is 256 numbers ;)

From: JuKKa
Program RSObject;
{.Include SRL/SRL.Scar}

Type
RSObject = Record
X, Y, Color, Tol, CTS: Integer;
Name: TStringArray;
Width, Height: Integer;
End;

Var
Man, Woman, WhiteKnight, BlackKnight, Guard: RSObject;

Procedure SetupRSObjects;
Begin
Guard.Color := 0;
Guard.Tol := 10;
Guard.CTS := 2;
Guard.Name := ['Guard', 'uar', 'ard', 'Gua'];
Guard.Width := 25;
Guard.Height := 50;
//--------------------\\
Man.Color := 0;
Man.Tol := 10;
Man.CTS := 2;
Man.Name := ['Man'];
Man.Width := 25;
Man.Height := 50;
//--------------------\\
Woman.Color := 0;
Woman.Tol := 10;
Woman.CTS := 2;
Woman.Name := ['Woman', 'Wom', 'oma', 'man'];
Woman.Width := 25;
Woman.Height := 50;
//--------------------\\
WhiteKnight.Color := 0;
WhiteKnight.Tol := 10;
WhiteKnight.CTS := 2;
WhiteKnight.Name := ['White', 'night', 'hit', 'ite'];
WhiteKnight.Width := 25;
WhiteKnight.Height := 50;
End;

Function FindRSObject(TObject: RSObject): Boolean;
Var
I, CTS: Integer;
TPA: TPointArray;
aTPA: T2DPointArray;
Begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(TObject.CTS);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, TObject.Color, MSX1, MSY1, MSX2, MSY2, TObject.Tol);
ColorToleranceSpeed(CTS);
aTPA := TPAtoATPAEx(TPA, TObject.Width, TObject.Height);
For I:= 0 To High(aTPA) Do
Begin
MiddleTPAEx(aTPA[I], TObject.X, TObject.Y);
MMouse(TObject.X, TObject.Y, 0, 0);
Wait(50+Random(25));
Result := IsUpTextMultiCustom(TObject.Name);
If(Result)Then Break;
End;
End;

Begin
SetupSRL;
FindRSObject(Guard);
End.

Something like this ;)?


Exactly!

Maybe even make function so that declaring takes less space for example

function DeclareRSObject(var NameRSObject: RSObject; Width, Height: LongInt);
begin
NameRSOBject.Width := Width;
NameRSObject.Height := Height;

DeclareRSObject(Woman, 54, 43);

From: EvilChicken!
N3s, if you're thinking about cup-size, you've totally phajld. Like when my hair got stuck in the mixer (spinning thingy, right.)



Yep, adding spam to spam.

Anyway, I have to underline that I think that this is a really good idea, exept for the color array in the record. They're dynamic, riiight?

So this may be a bit complicated, but if we had some sort of system ala SmartColors which would upload colors of objects to the internet which would be used by users using the same object finding procedures/systems, this would be really great.

Wizzup? has made this thread which is stating that SRL now has it's own Google Code account, plese check it out. (nt rly oftpic.)

So, what do you think about my idea? (As in, iz et possible?)


Sounds cool, I'll check it out.

From: Dan Cardin
afaik he means bust size, in inches, so not char :).

on a per script bases, i dont think this would be that helpful. if a bunch of objects were already done and you could include them into your script then i think it would be quite a nifty way of time saving.


Definitively.

Metagen

2008-07-13 15:15:54

Will you bitches stop argueing over who said a byte is what? :p we all know what a byte is.


the scar noob

2008-07-13 15:21:40

From: Metagen
Will you bitches stop argueing over who said a byte is what? :p we all know what a byte is.



LMAO!

-Tsn.

3Garrett3

2008-07-13 16:34:32

That would actually be a Bite not Byte.

Anyway. I agree with the pre-loaded chars idea, because it would save a ton of time.

Gu3st...

2008-07-13 17:51:18

uuh…. ppl talking about small ("Lil") bits here? :S

Claymore

2008-07-23 13:30:02

That souinds like a wicked idea… Do you guys plan on making this?

Smartzkid

2008-07-23 20:26:39

Object ID (for objectfinding via reflection)

n3ss3s

2008-07-24 05:50:05

Object ID (for objectfinding via reflection)


Maybe Object Type, since that's what we'll use for the finding…

Wanted

2008-07-24 11:31:11

From: n3ss3s
Maybe Object Type, since that's what we'll use for the finding…


Did you read my post at the other thread in the public section regarding Object Recognition?

Edit:

From: IceFire908
Anything in runescape that does not ever move (which includes most objects) does not need anything more than TileToMS.

However object finding can be useful for finding say - arrows on the ground dropped by your ranger or bones ect.. ect..

Bank booths/ doors/ all have a tile that you can use (For doors use the midpoint equation and use the tiles infront of and behind the door) on TileToMS with some MMouse with offset/ randomness/ uptext check ect. ect..

Very useful, I hope to see types and UIDS fully working soon.

Nice work.

-IceFire

NiCbaZ

2008-07-31 05:23:04

http://www.villavu.com/forum/showthread.php?t=32668?p=440646#post440646

win?

R0b0t1

2008-07-31 15:24:39

That record uses lots of memory…

You sure you need all of those things?

Wanted

2008-08-01 14:04:36

From: R0b0t1
That record uses lots of memory…

You sure you need all of those things?


Exactly why I think it's not such a good idea anymore.

R0b0t1

2008-08-01 20:23:51

Oh, technically, a Byte is an integer, but withing a range. So is a Word, Integer, QWord.


<3 mathematics.