1. This is absolutely great work. Do you have Discord or something? Would love to combine this with some sort of ML model.

2. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
@halfbreed9 It only works for 1 client, haven't bothered to add more as I use it only for my main for boring and simple tasks. Mostly I look how game world is made, that's quite fun.
Added now new interface scraper. Removed old one. New method might be difficult to find with AOB, but with pointer, it goes straight to it.
Now try to fix that BankOpen() bool.

3. Registered User
Join Date
Feb 2012
Posts
10
Mentioned
0 Post(s)
Quoted
7 Post(s)
Originally Posted by alar82
@halfbreed9 It only works for 1 client, haven't bothered to add more as I use it only for my main for boring and simple tasks. Mostly I look how game world is made, that's quite fun.
Added now new interface scraper. Removed old one. New method might be difficult to find with AOB, but with pointer, it goes straight to it.
Now try to fix that BankOpen() bool.
Hey - would love to help contribute to this. Have tried spinning it up locally - getting an error clicking an obj from FindAobj: Did not find varps:659

Happy to extend Sin's comments above - do you have discord? I'm a software engineer by day, admittedly haven't done alot with Simba but always happy to learn a new technology.

EDIT: Ignore my issue above.

However point still stands, RS3 community is really lacking in presence for botters - would be really happy to contribute and try to push it further.
Last edited by St Semajian; 05-13-2020 at 04:15 PM.

4. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Dno... I like to keep it all to myself. Making it perfect and proper would lure lots of people here and it would paint huge red target onto it,... no thank you

But about FindAobj it works as FindNPC thing. Use AO debug to find thing to click. Things like portable fletchers are Active Objects.

Use
Code:
if (not CheckPAnim(120)) then begin /code/ end;
to check if players is animating. Number there is how many times to check vs 25 milliseconds. Some animations have huge caps between them.

Use
Code:
if (InveFull()) then begin /code/ end;
to check if inventory is full or not.

Use
Code:
if (InveItemcount(item1)<3) then begin /code/ end;
to count items in inventory, item1 is ID.

Use
Code:
if (InveFreecount()<9) then begin /code/ end;
to check how many spots are free.

Use
Code:
ClickInv(item1,0);
to click item in inventory. Warning there is no check if inventory is actually open. So yea some fail safes should be added.

5. Registered User
Join Date
Feb 2012
Posts
10
Mentioned
0 Post(s)
Quoted
7 Post(s)
Originally Posted by alar82
Dno... I like to keep it all to myself. Making it perfect and proper would lure lots of people here and it would paint huge red target onto it,... no thank you

But about FindAobj it works as FindNPC thing. Use AO debug to find thing to click. Things like portable fletchers are Active Objects.

Use
Code:
if (not CheckPAnim(120)) then begin /code/ end;
to check if players is animating. Number there is how many times to check vs 25 milliseconds. Some animations have huge caps between them.

Use
Code:
if (InveFull()) then begin /code/ end;
to check if inventory is full or not.

Use
Code:
if (InveItemcount(item1)<3) then begin /code/ end;
to count items in inventory, item1 is ID.

Use
Code:
if (InveFreecount()<9) then begin /code/ end;
to check how many spots are free.

Use
Code:
ClickInv(item1,0);
to click item in inventory. Warning there is no check if inventory is actually open. So yea some fail safes should be added.
Yep got it working in the end was use error.
That's a shame but I understand. Would you at least consider exposing a few more functions as getters to have a little more logic?

6. Registered User
Join Date
May 2018
Posts
3
Mentioned
0 Post(s)
Quoted
0 Post(s)
Can this be used with other programs other than Simba, like AHK or AutoIt?

7. Registered User
Join Date
Feb 2012
Posts
10
Mentioned
0 Post(s)
Quoted
7 Post(s)
Looks like latest game update has broken the sidetext functionality - Is there anything we can provide in the action string parameter that returns immediately? I.E instead of "Mine"? Right now a workaround is to use MouseClick() after the object find - but by the looks of it the FindAObj is trying (3?) times to find the sidetext before closing the statement so it jumps a little before clicking

8. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Quick fix applied.
Edit:
It tries few times before giving up, at slightly different pixels to find a match at sidetext.
As for skipping sidetext check, I could add a keyword like " "=space to skip match checking.

9. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Anyone know what bot those cursed energy bots use? I tried asking them but nothin, herders didn't wanto spill anything either.

10. Registered User
Join Date
Dec 2013
Posts
4
Mentioned
0 Post(s)
Quoted
2 Post(s)
It's not just 1 person it's two actually. I know both of them. How did you go about getting the GameObjects ? Trees mining rocks bank stalls etc?

11. Registered User
Join Date
Feb 2017
Posts
5
Mentioned
0 Post(s)
Quoted
2 Post(s)
Originally Posted by alar82
Anyone know what bot those cursed energy bots use? I tried asking them but nothin, herders didn't wanto spill anything either.
Hey, I am working on programming Herblore Habitat for my RSPS and I am in need of the actual spawns list of invisible jadinkos within the area. Your tool shows them on the minimap, but doesn't give the ID or location elsewhere or any way of looping over the list.

I would pay you for the simple source code just to retrieve a list of NPCs and their IDs/Positions that are being updated (whether or not they are being rendered or hidden via varbits).

12. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Originally Posted by titandino
Hey, I am working on programming Herblore Habitat for my RSPS and I am in need of the actual spawns list of invisible jadinkos within the area. Your tool shows them on the minimap, but doesn't give the ID or location elsewhere or any way of looping over the list.

I would pay you for the simple source code just to retrieve a list of NPCs and their IDs/Positions that are being updated (whether or not they are being rendered or hidden via varbits).
Had a look, yes there are invisible npcs. Can't add them to 3d world debug, they don't have clickbox. Added some more debug options to npc minimap, NPCInfoMap1 switches between name and id. Nothing is simple
Currently using it to watch seren spirit spawn. Clicking npcs is odd, needs rework. Found also booleans for inventory closed and open states.

13. Registered User
Join Date
Feb 2017
Posts
5
Mentioned
0 Post(s)
Quoted
2 Post(s)
Originally Posted by alar82
Had a look, yes there are invisible npcs. Can't add them to 3d world debug, they don't have clickbox. Added some more debug options to npc minimap, NPCInfoMap1 switches between name and id. Nothing is simple
Currently using it to watch seren spirit spawn. Clicking npcs is odd, needs rework. Found also booleans for inventory closed and open states.
Yeah when I said simple, I meant even a stripped simple CLI program that only reads NPCs and nothing else.

14. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
At tit nah.
At halfbreed9 all are on tiles. Players are on tiles, npcs are, objects are.

15. Very cool stuff, I checked it out. You should definitely expand the include so it could be used for multiple instances, seems primarily based for PvM. Would like to see some interaction options with players, options to click on tiles instead of on the minimap (TileWalk?). Keep it up!

16. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Well player interaction would be possible if someone had time to code it.
Code:
CheckInvOpen();
- to check if inventory is open or closed.
Code:
OpenInv();
- to check if inventory is open and if not then try to open it with menu icon. Menu icon must be in front and not in slider menus. Slider menus are like labyrinth, I don't have no time and brainpower to dissect them.

Code:
program Test;
{$loadlib MemoryError} begin wait(199); SetupRSReading(True,0); wait(100+random(1099)); repeat wait(5000+random(1099)); Writeln(CheckInvOpen()); OpenInv(); //Writeln(BankOpen()); //Writeln('Coordinates: ',GetPCoords()); //Writeln('Floor: ',GetPFloorLv()); //Writeln('HP: ',GetHP()); until(false) end. Edit: Crash Fixes. Now can open inventory tab if it is on wrong one. Edit: Added area loot window debug. Edit: Today investigating camera I has discovered that camera is on tile. That z goes to small numbers if camera is moved close to ground. That is funny, like it would be psychical camera. I was looking for viewport stuff. Like osrs has. Trough power of openosrs: Code: OverlayUtil.renderTextLocation( graphics, new Point(client.getCanvasWidth() / 11, 20), "x " + String.valueOf(client.getCameraX()), Color.WHITE); Osrs: Dosent look similar numbers, maybe it would have diffrent values if I could directly read raw values of hooks. But maybe I am reading wrong spot from rs3 17. SRL Junior Member Join Date Jul 2009 Posts 27 Mentioned 0 Post(s) Quoted 9 Post(s) Would love to be able to use this in a python bot I'm working on... For now I'm just using OpenCV to detect objects (doesn't work too well for npcs tho). I also tried machine learning but it is too resource intensive. Could you share source maybe on junior forums so it's not just out for the public? I would be willing to contribute and we could all learn a lot from it. I did some messing around with cheat engine and was able to get the coordinates and figure out some of the inventory stuff but beyond that I'm lost at how to find the npc objects and their values... 18. Registered User Join Date Jun 2020 Posts 3 Mentioned 0 Post(s) Quoted 1 Post(s) Hey, great stuff you have been doing!, already made use of your dll and it seems great!, atm im making my own, but having trouble finding viewMatrix for runescape 3, could u give me a hand or a tip?? thanks!! 19. SRL Junior Member Join Date Jul 2009 Posts 150 Mentioned 5 Post(s) Quoted 66 Post(s) @mkmk4 Yes putting it all together from cheatengine hex is a difficult. @userNote If you get that viewmatrix working please loan it It would help a lot. Added Code: GetAllNPCs; gets all npc into Simba. For v1400 of Simba. Older gives access error. https://github.com/ollydev/Simba/releases Code: program Test; {$loadlib MemoryError}

var
i,hi: Integer;
store: Array of AllObjects;
begin
wait(199);
wait(100+random(1099));
repeat
wait(5000+random(1099));
//Writeln(GetAllNPCs(99));
store:=GetAllNPCs;
hi := High(store);

for i := 0 to hi do
begin
writeln(
"Name:",store[i].Name,
". Hitpoints:",store[i].Life,
". ID:",store[i].Id,
". X:",store[i].TileX,
". Y:",store[i].TileY,
". Z:",store[i].TileZ
);
end;

until(false)
end.
Little test script for it.
Also discovered that if I move my plugins vector arrays from headers to cpp-s it gets much faster. Probably something to do with CPUs L2/L3 cashe.

20. Registered User
Join Date
Jun 2020
Posts
3
Mentioned
0 Post(s)
Quoted
1 Post(s)
hey yeah, found the viewmatrix, but i cant send links here :P nor images, so how am i about to send it?

21. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Originally Posted by userNote
hey yeah, found the viewmatrix, but i cant send links here :P nor images, so how am i about to send it?
Paste code here or github. OR https://postimages.org/
Uploaded new plug into github btw.

22. Registered User
Join Date
Jun 2020
Posts
3
Mentioned
0 Post(s)
Quoted
1 Post(s)
Hey sorry for the late reply, well I didn't write the code yet, been busy with other stuff, as I mentioned earlier, I can't send links here nor write code ( the forum don't allow me to post any links or image and so on, cause I'm new here ) don't u have any contact info like discord or anything similar ( villavu requires me to have 10+ posts )

23. SRL Junior Member
Join Date
Jul 2009
Posts
150
Mentioned
5 Post(s)
Quoted
66 Post(s)
Nah no discord. Found another crash cause.
Edit: Found more and fixed them hopefully.
Edit2: Found out that pixels for AllObjects were wrongfully copy pasted.
@Lucidity I has my doubts. Someday?