Welcome to TRiBot Forums

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Z3D

Getting Back into Scripting [Progress Log] [AIO Bot?]

31 posts in this topic

Little Intro

Jesus christ it's been a long time since I've been on this site, I was here 2 years ago under another username with a completely different goal. The last time I was here I was in it for the money, specifically enough to buy a new pc :D Well after earning £1,000 through making private scripts and a few premium I kind of just left, with no notice, I just dissapeared. 

Honestly didn't think I'd miss this shit as much I did so here I am, just finished my first year of university studying Computer Science and about to go into my second. I first started programming here but I never felt like I did it properly or completed anything of value. So here I am to change that, with a possible end goal of completing an AIO bot, capable of doing any skill, lets see how it goes :P And ofc it's going to be free and open source, cause I like people telling me my code is shit.

 

Progress Log Bit

So where to start... I think I might go for a cheeky little check list for each major section. So if I have a section for each skill and within that I will have smaller objectives. So what skill shall I start with? My account is pretty shit but one skill it does have 99 is Woodcutting, let's have some fun with an AIO Woodcutter first (This is something I've done before) :)

 Steal my Source Code here!

Start

 
  • Before I do anything I need to setup my IDE, and play around with the API. God I've missed IntelliJ!
  • Also need to buy membership and all that fun stuff :P
  • Just set everything up, got an account, IntelliJ sorted, now to play around with the API [14/09/16]

 

AIO Woodcutter

 

So I'm going to be sensible here and start with a plan of attack. I have a few ideas of how I could make this truly AIO but let's start simple with core woodcutting mechanics and error prevention. 

  • GUI
    • Tree to chop (Dropdown or Manual Input?)
    • Bank or drop?
    • If banking, loot nests?
    • If dropping, loot valuable seeds from nests?
    • Light logs? (Consider tinderbox being kept)
    • Have user choose zones to chop or have them create their own? 
    • Eat food at bank if low health? Wizards in Draynor
    • Ask to always use best axe in bank 
  • Core Mechanics 
    • Chop Tree(s)
    • Pick up nests (Only if banking?), maybe loot nests if not banking and keep valuable seeds?
    • Drop inventory (Not axe)
    • Set a zone you have to stay in
  • Banking
    • Locate nearest bank, or have user decide where to bank
    • Deposit logs & nests (Not axe)
    • If you can use a higher level axe in your bank, use that (Check Attack Level to wield)
    • Return to Woodcutting spot
  • Failsafes
    • Log out if no axe found on person and banking is not enabled
    • If banking is enabled and no axe, return to bank and look for axe
    • If lost, log out. Wrong floor? Too far from bank and Woodcutting spot
    • Return to area if traveled too far (Following regular trees for example)
    • Eat food at bank if low health?

I'll probably add stuff to this but this is enough to work on right now.

I will highlight the stuff I've completed in BOLD and if you want to look at the source as I go progress, check it out here https://github.com/TriBotZ3D/scripts

16/09/16: Currently working on making banking as smooth a possible, will probably reuse the code so I want to make sure it's the best it can be. Not yet on GithHub

18/09/16: Given up on my dynamic banking idea, but banking has been implemented. Pretty much done for the script, just going to test and play around with it. Next job is GUI.

18/09/16: Bot is running smoothly as we speak. Now to figure out how the hell you create a GUI in intelliJ, I'm used to NetBeans but that's awkward af. Lets aim for launch by the end of today/ early tomorrow

18/09/16: Fucking IntelliJ man. I've never used its GUI building stuff before and I now remember why! Back to good old NetBeans it is! :D Script will be out by tomorrow at some point :) Also need to update GitHub at some point

19/09/16: FOR FUCKS SAKE!! Thought I'd finished my GUI last night, just started linking it to my script when I realise I don't have an input box for the fucking type of tree you want to cut!! Script should still be done by the end of the day >.>

19/09/16: New GUI preview, now just to link it up.

 2f3c11b0f70419ba8269e88ab7f11716.png

19/09/16: Just published the final version, now on to mining? Maybe.

 

AIO Miner

 

20/09/16: So I've decided on my next script. If any of you have looked at the source code of my Woodcutter you might be thinking, could you not just change the tree's to rocks and the axes to pickaxes. And the answer to that is yes. That is exactly what I'm going to do :D Basically copy all the code from above and rename a few things. If I don't spend the entire day playing COD or League it should be done either tomorrow or late today. 

21/09/16: So yesterday was extremely unproductive. I was just playing around with the woodcutter, making sure it was working well. Also created 2 new F2P accounts to test my scripts, their currently ~70 woodcutting so that's not going too badly. Going to now work this mining scripts. I liked the bullet points like last time (they made everything look kind of fancy :D) so let's do that again :) 

  • GUI
    • Rock to mine (Input ID's)
      • Allow for multiple ID's to be inputted
      • Prioritise by order inputted
    • Bank or drop?
    • Define bank and mining zones
    • Ask to always use best pickaxe in bank 
    • World hop
  • Core Mechanics
    • Mine rocks 
      • Different types of rocks at once
      • Prioritise by order inputted
    • Drop Ores
      • Not pickaxe
      • Also drop gems
    • Stay within specified area
      • User defined
    • Hop worlds if no ores found (For run mining)
  • Banking
    • Have user decide where to bank
    • Deposit ore (Not pickaxe)
    • If you can use a higher level pickaxe in your bank, use that (Check Attack Level to wield)
    • Return to mining spot
  • Failsafes
    • Log out if no pickaxe found on person and banking is not enabled
    • If banking is enabled and no pickaxe, return to bank and look for pickaxe
    • If lost, log out. Wrong floor? Too far from bank and mining spot
    • Return to area if traveled too far
    • Eat food at bank if low health?

 So basically what I'm doing is copying my woodcutting code but changing some things around, the main difference will be mining the rocks. With woodcutting the trees have names so it's for the user to specify what tree they want. With mining you have to work with ID's, this is fine but I'm unsure if there are multiple IDs for the same type of rock and since I can't be asked to find out I'm just going to allow the user to input as many ID's as they wish. Lets see how this goes. 

Still 21/09/16: Just finished throwing together the GUI, came up with a new feature to hop worlds if no rocks found. I believe this is my best GUI yet! It's elegance is unparalleled, it achieves a certain uniqueness while still feeling familiar to those who've used my other script. Without further ado. BAM!

c1a263005167befac506ecd45ce9e815.png 

22/09/16: I think I may have finished it :o Just going to get a few of my acc's to test for a day. That was easier than I thought. 

22/09/16: Finished. Removed the hop worlds thing because I don't really need that. Combat is up next :)  

 

Combat

So this one might take a little longer, obviously going to reuse my GUI, cause that's how I roll :cool:  I might do one of my plan of attack things but I'm not really feeling it atm. Might just start from scratch and see what happens....

27/09/16: Well it's been a little since I've updated this. I've been busy moving into Uni and sorting all that shit out, but I should be back to this soon. Little update regarding the combat, I really couldn't be bothered making an AIO combat script because my end goal with this is to just have a script that will start your account off, through leveling up some skills. 

So basically what I'm doing is making the end goal atm. Taking bits from my AIO Miner and WCer and throwing them together. 

Edited by Z3D
Updated
2 people like this

Share this post


Link to post
Share on other sites

good luck, ban rates are way way higher than when you were here last and wouldn't recommend scripting using your main account if you care about it getting banned or not

 

Share this post


Link to post
Share on other sites
Just now, godspower33 said:

good luck, ban rates are way way higher than when you were here last and wouldn't recommend scripting using your main account if you care about it getting banned or not

 

Thanks for the heads up, I'm sure I can find some old testing accounts :)

Share this post


Link to post
Share on other sites

Working on TUS, which is an AIO AIO script.

Starting in just Lumbridge now, handling everything that can be done in Lumbridge, I've decided to go this route:

 

Goal - Objective set by human (get 30 str, make 1 mil, etc)

Strategy is executed and reads the goals. It generates an array of tasks with a priority tied to each task. The idea for equal priority tasks is to execute the one the user is currently closest to.

Tasks are things such as "kill 50 cows", "chop 50 trees", etc. They're actions that contain sub-tasks. They also have options to specify. For example, killing cows would also ask about a loot table and quantity to kill. This information is determined by the Strategy, if one goal is make 1 mil gold and get 60 str, 60 att, 60 def, it'd obviously want to loot valuable goods for the mob that it is currently killing. There's an argument to be made about inefficiencies, but at the same time, it'd be much less bot-like to bank if you're trying to earn gold. Arguments can be made, so both options are there.

Subtask are actions required for the task itself, such as "Walk to X" or "Attack X". They are added to an arraylist and looped through with an activate condition.

ActionListeners are nearly identical to subtasks, and I haven't quite figured out if I wanted to drop this or not. I was planning on handling things like gates and other actions that are required. Just if something happens, the script should ALWAYS act this way.

 

As I said, I was starting in Lumbridge. I've actually created a xMind file containing literally everything you can do in Lumbridge, from the quests that can be started there to each section of trees that can be chopped. I also started writing my own walking method, which is focused on the internal routes within Lumbridge. I was planning on using something similar to OSPF (Dijkstra algr) and defining each town as it's own autonomous system. This way, the system doesn't have to worry about internal nodes in Lumbridge while calculating walking in say Varrock. The only routes it'd have to take into account would be Varrock routes and the paths that connect Lumbridge and Varrock.

Share this post


Link to post
Share on other sites
9 hours ago, bluefirecorp said:

Working on TUS, which is an AIO AIO script.

Starting in just Lumbridge now, handling everything that can be done in Lumbridge, I've decided to go this route:

 

Goal - Objective set by human (get 30 str, make 1 mil, etc)

Strategy is executed and reads the goals. It generates an array of tasks with a priority tied to each task. The idea for equal priority tasks is to execute the one the user is currently closest to.

Tasks are things such as "kill 50 cows", "chop 50 trees", etc. They're actions that contain sub-tasks. They also have options to specify. For example, killing cows would also ask about a loot table and quantity to kill. This information is determined by the Strategy, if one goal is make 1 mil gold and get 60 str, 60 att, 60 def, it'd obviously want to loot valuable goods for the mob that it is currently killing. There's an argument to be made about inefficiencies, but at the same time, it'd be much less bot-like to bank if you're trying to earn gold. Arguments can be made, so both options are there.

Subtask are actions required for the task itself, such as "Walk to X" or "Attack X". They are added to an arraylist and looped through with an activate condition.

ActionListeners are nearly identical to subtasks, and I haven't quite figured out if I wanted to drop this or not. I was planning on handling things like gates and other actions that are required. Just if something happens, the script should ALWAYS act this way.

 

As I said, I was starting in Lumbridge. I've actually created a xMind file containing literally everything you can do in Lumbridge, from the quests that can be started there to each section of trees that can be chopped. I also started writing my own walking method, which is focused on the internal routes within Lumbridge. I was planning on using something similar to OSPF (Dijkstra algr) and defining each town as it's own autonomous system. This way, the system doesn't have to worry about internal nodes in Lumbridge while calculating walking in say Varrock. The only routes it'd have to take into account would be Varrock routes and the paths that connect Lumbridge and Varrock.

Thats actually sick! :D Really like the xMind way of planning too, I was kind of proud of my bullet points :P I like your walking idea, I haven't personally done a lot with the A* stuff so I don't know what that can and can't handle. I'll probably play around with that first then it that doesn't work well I'll try some other methods.

I'm going for a much more long term approach by slowly creating a variety of AIO scripts, like mining might be next after woodcutting and then once I've got them all sorted out I'll link them together. What I was thinking is running it without a complicated GUI, because of the possibilities I'd like the user to almost input commands themselves. So like a simple command would be, "MINE IRON 30" which might mine iron to level 30, then maybe add locations or something. But that's in the future :D 

First thing I need to do is get a flawless AIO Woodcutter, which for the record should be done by the end of the day :) Have you got a progress thread I can follow at all? That'd be fun to see how you go about things :D But good luck to you man!

Share this post


Link to post
Share on other sites
1 hour ago, Z3D said:

Really like the xMind way of planning too, I was kind of proud of my bullet points :P

xMind is great for mapping out ideas. It also is helpful for tracking progress.

1 hour ago, Z3D said:

I like your walking idea, I haven't personally done a lot with the A* stuff so I don't know what that can and can't handle. I'll probably play around with that first then it that doesn't work well I'll try some other methods.

I was afraid of optimization here. With as large as the script was going to be, there were going to be dozens of nodes per town (this way, all buildings could be entered, and all locations could be transversed). I didn't like the idea of using A* just because with that many nodes in total, calculating a path among that many nodes would kill any CPU...

1 hour ago, Z3D said:

I'm going for a much more long term approach by slowly creating a variety of AIO scripts, like mining might be next after woodcutting and then once I've got them all sorted out I'll link them together.

This was my original approach on Nexus, and it nearly worked, except I spent more time in game walking from location to location to test the script and gather new data than actually spending playing the game. By doing each skill in each location, I can expand to a new town and just add another entry to my enum for each skill. Also, I'm not paying for membership for something like this (yet). I was sticking F2P until I finished the entire F2P game. Expanding to P2P after I can tell the script to automatically create an account and complete every single F2P quest (including dragon slayer), and do anything in any town. The idea of doing P2P is just too much right this second... too many skills. It does mean, I'll have to go back to Lumbridge and recode quite a bit, but by that time, my code would need to be rewritten anyway =P

1 hour ago, Z3D said:

What I was thinking is running it without a complicated GUI, because of the possibilities I'd like the user to almost input commands themselves. So like a simple command would be, "MINE IRON 30" which might mine iron to level 30, then maybe add locations or something. But that's in the future :D 

I was thinking a web tool for mine. Generate script start argument using a fancy webtool or even using an API of sorts (enter your API token and the script detects the character any anything you've configured with your logon). Users would be able to track their account progress online using their logon information. I'm pretty anti-gui, just due to the fact it's a pain in the ass to launch 50 accounts and having to set information in each GUI. Just think, running a client starter with a single script option for every account and all the accounts knowing what to do cause you already entered the data once. Also, this gives me the ability to track data externally. I'm planning on mining data left and right. Sure, it's an invasion of privacy, but if you don't like it, don't use my script.

1 hour ago, Z3D said:

First thing I need to do is get a flawless AIO Woodcutter, which for the record should be done by the end of the day :)

Good luck. Flawless AIO scripts aren't exactly easy once you consider the shear amount of variables involved. AIO woodcutting is pretty danged difficult considering the absurd amount of tree patches throughout all of Runescape. That combined with banking (or firemaking) means days of hunting down bugs.

1 hour ago, Z3D said:

Have you got a progress thread I can follow at all? That'd be fun to see how you go about things :D

Last progress thread I had was posted on RSCA. I've considered posting one, but this project is still in it's infancy. Maybe once I finish up a bit more of Lumbridge =)

Share this post


Link to post
Share on other sites
1 hour ago, Z3D said:

Current project, AIO Miner!

Why don;t do something like AIO NMZ quester think out of the box there alot if AIO wc and AIO miner's and AIO rc etc

Share this post


Link to post
Share on other sites
11 hours ago, WYD said:

Why don;t do something like AIO NMZ quester think out of the box there alot if AIO wc and AIO miner's and AIO rc etc

Have you seen Tribot's webwalking? If someone made an 'AIO' Quester and didn't work for prem to sell it they'd need their head checked.

2 people like this

Share this post


Link to post
Share on other sites
55 minutes ago, HeyImJamie said:

Have you seen Tribot's webwalking? If someone made an 'AIO' Quester and didn't work for prem to sell it they'd need their head checked.

Just do it without webwalking with RSTile getPosition()

Share this post


Link to post
Share on other sites
2 minutes ago, WYD said:

Just do it without webwalking with RSTile getPosition()

I know your dumb as fuck but jesus.

Share this post


Link to post
Share on other sites
Just now, Deluxes said:

I know your dumb as fuck but jesus.

thx you for your input :-)

Share this post


Link to post
Share on other sites

Solely for the public to stand out it would be nice for a wintertodt script i can't believe one hasn't been made yet thats public/free/premium I went lurking in other bot forums and seen they have wintertodt scripts.

1 person likes this

Share this post


Link to post
Share on other sites
7 minutes ago, pietyy said:

Solely for the public to stand out it would be nice for a wintertodt script i can't believe one hasn't been made yet thats public/free/premium I went lurking in other bot forums and seen they have wintertodt scripts.

ikr it is a bit sad for tribot

Share this post


Link to post
Share on other sites
37 minutes ago, pietyy said:

Solely for the public to stand out it would be nice for a wintertodt script i can't believe one hasn't been made yet thats public/free/premium I went lurking in other bot forums and seen they have wintertodt scripts.

A premium script on tribot takes months to get approved, your best bet is a private one. I don't  think anyone will release a free wintertodt script. I only looked on the other site where Liam went and they only have one I believe and it isn't up yet, it's still testing.

Share this post


Link to post
Share on other sites
19 hours ago, WYD said:

Why don;t do something like AIO NMZ quester think out of the box there alot if AIO wc and AIO miner's and AIO rc etc

I've done quest bots in the past and I've just found them so awkward. Some of them have puzzles which I just can't fucking stand. Also getting what stage of the quest you're on isn't easy. AND testing is a pain too :P So that's not happening anytime soon, the reason I'm doing these simple scripts is because I want to slowly create a F2P bot that will level up all your skills to a certain point, make you look less botlike really. 

1 person likes this

Share this post


Link to post
Share on other sites
6 hours ago, pietyy said:

Solely for the public to stand out it would be nice for a wintertodt script i can't believe one hasn't been made yet thats public/free/premium I went lurking in other bot forums and seen they have wintertodt scripts.

I'd love to give it a go but I don't have any accounts that have access to the place so I can't really do much. If you're really desperate for a script and wouldn't mind Teamviewer or Skype or even lending me your acc so I could grab some info and test. 

Share this post


Link to post
Share on other sites
1 minute ago, Z3D said:

I've done quest bots in the past and I've just found them so awkward. Some of them have puzzles which I just can't fucking stand. Also getting what stage of the quest you're on isn't easy. AND testing is a pain too :P So that's not happening anytime soon, the reason I'm doing these simple scripts is because I want to slowly create a F2P bot that will level up all your skills to a certain point, make you look less botlike really. 

New Account Walker So it Walks until 24 hr trade limit is done for f2p noobs?

Share this post


Link to post
Share on other sites
6 hours ago, godspower33 said:

A premium script on tribot takes months to get approved, your best bet is a private one. I don't  think anyone will release a free wintertodt script. I only looked on the other site where Liam went and they only have one I believe and it isn't up yet, it's still testing.

Last I was here premium scripts are pretty quick to get approved, the reason they take so long to come out is because they have to be flawless. 

Share this post


Link to post
Share on other sites
1 minute ago, WYD said:

New Account Walker So it Walks until 24 hr trade limit is done for f2p noobs?

Well that just sounds boring :P I'd much rather the script do a bunch of productive things for 24 hours. Like get you combat up, and a bunch of you skills. This way you look less bot like when doing stuff :) 

Share this post


Link to post
Share on other sites
2 minutes ago, Z3D said:

Well that just sounds boring :P I'd much rather the script do a bunch of productive things for 24 hours. Like get you combat up, and a bunch of you skills. This way you look less bot like when doing stuff :) 

I love to see that tbh, lIke it do some wc and some fm and fishing etc

Share this post


Link to post
Share on other sites
1 minute ago, WYD said:

I love to see that tbh, lIke it do some wc and some fm and fishing etc

Ya exactly, just random skills that you can train around lumby :) 

Share this post


Link to post
Share on other sites
2 minutes ago, Z3D said:

Ya exactly, just random skills that you can train around lumby :) 


something like this but i think him give up on his

1 person likes this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.