Jump to content

Fire&forget Botfarm


Nor3g

Recommended Posts

Intro: I recently joined the Osbot community with the intent of using my knowledge about Runescape to make IRL cash. I've played runescape for years since I was very young. The last time i logged into my main was when I by random chance stumbled upon some news of a 10 year veteran cape. I quit the game a long time before that and didn't give the game much thought until my cousin, who I've used to play with, told me he recently started playing again. We used to play the game for hours every day, but eventually, right before the bot nuke and everybody was botting, we both said goodbye to the game after getting some 99s purely from bots.

Needless to say, after you've botted, the grind becomes excruciatingly more painful, as you know there are more efficient ways to do all the menial tasks, so i looked around for bots. I was aware of the botnuke, and how it removed almost all the bots, but surely there must be some client somewhere. I stumbled upon a thread here, on these forums, about a zulrah bot farm. It was ran by mister Swedens, and after a while it became apparent that he was banking a lot. I thought to myself, I want in on this goldmine as well! So I took it upon myself to do research and learn about everything I could possibly need. I concluded that I wanted to make a fully fledged full auto bot farm. All I wanted to do in the end was the eventual bug-fixes and logging into the main mule to sell the gold for real world cash. And thus, this account, Nor3g, and my project was born.

Finished Semi-Finished Not Started

INFRASTRUCTURE GOALS

-These are goals that are paramount to a full auto experience.


1. Make an account creator that gets fed proxies, and makes a chosen amount of accounts on each IP before saving the login details to a database.

- fix database connection

- Long term, get gmails from list of gmails I own to be able to unlock the accounts instead of random generation.

- +? gmail trick option (This is now standard)

2. Make an account launcher code snippet that launches accounts from the database with a chosen script and it's respective configuration.

-Implement list of worlds and their type

3. Make universal client(read botpart-muling) code that can be added to any scripts Task system. The bot should mule every 1-2 hours to minimize losses on the inevitable ban.

4. Make a server that handles requests from clients and launches a mule from the appropriate database, with appropriate mulepart-muling script and configurations.

5. Make a mulepart-muling script that is compatible with  botpart-muling script.

           -Have the snippet update wealth to database

           -Make mulepart-muling script that is compatible with other mulepart-muling script for muleweb

 

6. Ban Checker

- Account replacement

7. Make a universal snippet that implements a connection to the DB directly from the script

 

 

TRAINING SCRIPT GOALS

1. Have script that completes Tut Island

2. Have script that does quests

3. Have script that trains to lvl 15+

4. Have script that trains to lvl 30+

5. Have script that trains to lvl 40+

6. Have script that trains to lvl 50+

7. Have script that trains to lvl 60+

8. Have script that trains to lvl 70+

 

 

MONEY MAKING SCRIPT GOALS (MMSG)

-I won't share my money makers, as that only increases competition, but for my scripts, these are all universal:

1. Making a script that has a satisfactory efficiency

2. Implementing the botpart-muling code into the script.

3. Satiate all worlds applicable (F2P and/or P2P depending on profitability. E.G If it generates more than a bonds worth before it is banned, it is ran on P2P world as well as F2P)

 

AUXILIARY GOALS (long term)

1. Simple bot-herding script that hangs around the botting spot and reports any accounts not listed in my database for botting to remove competition (Will see if this is profitable even if it is going to cost an additional proxy). 

2. Mule web that obfuscates where fund went to minimize mule ban rate. Will employ both trade to superior mule, drop at obscure location to superior mule, Duel arena to superior mule etc.

3. Strike deal with major OSRS gold arbitrage so that a server can ping the OSRS arbitrage website directly and sell the gold without my interference. Will check this every other day or so just to make sure I'm not getting scammed.

4. Mirror mode support 

5. Have the Farm Manager notify when a bot has been logged in for too long, indicating that something went wrong with it

-Have snippet that can change the title of the process to the name of the bot to be able to easily find it among the other bots

 

Money Maker #1

1. MMSG

2. 10m/day

3. 20m/day

4. 30m/day

5. 50m/day

6. 80m/day

7. 100m/day

 

OVER ARCHING GOALS:

Stored accounts:

1. Have 100 trained accounts in storage in the database

2. Have 500 trained accounts in storage in the database

3. Have 1000 accounts trained and in storage in the database

Amount of running money makers:

1. 1 MM

2. 2 MM

3. 5MM

4. 10MM

Income Every month in OSRSgp:

1. Earn 300m in a month

2. Earn 600m in a month

3. Earn 900m in a month

4. Earn 1500m in a month

5. Earn 2400m in a month

6. Earn 3b in a month

7. Earn 10b in a month

 

ANTI-BAN SYSTEM:
Randomized tasks:

This means that the bot will switch between different tasks at random (within the limits of it's configuration)

Randomized order of operations:

This means that the bot will randomize tasks within grouped limits. Example:

wrong:

if (!inventory has food || inventory is full of loot) {
run to bank and get more food
}else if (!location is correct) {
go to location
}else if (!attack style is correct) {
change to correct attack style
} else if (loot is nearby) {
pick that shit up
} else if (location is here) {
attack monster
} 

correct: 

group 1 {
bank and get more food
maybe switch attack style
}
group 2 {
go to location
maybe switch attack style
}
group 3 {
attack monster
pick that shit up
switch attack style
}
group 1 shuffle;
group 2 shuffle;
group 3 shuffle;

for ( int i = 0; group1.size; i++) {
group1
}
for ( int o = 0; group1.size; o++) {
group2
}
for ( int p = 0; group1.size; p++) {
group3
}

 

ROADMAP:

 

V 1.0
Can run tutisland script
Can run getname script
Can run two botscripts simulataneously
Can mule

V 1.1
-Implemented custom loginhandler, removed tutisland script & getname script.

V 1.2
-Implemented option to run unlimited script configurations.
-Statistics overview.
-Set maximum daily login hours.

V 1.3
-Combat script has ability to wear armour.

-Script updates it's stats between each task

V 1.4
-Scripts have random order of operation as antiban.

-Script bank and upload their gear, supplies and tools to database on script end

V 1.5
-Muling implemented as a task in the script rather than a separate script.

-Account replacement

V 1.6

-Can mule set items.

-Set trigger in database to set a role for bot after a certain lvl has been reached. Example, if a bot reaches 50 wc, it won't be assigned to train mining to become a clay miner

V 1.7

Mule-web to super mule & sell mule

01.02.19 REPORT:

Spoiler

The infrastructure is nearly completed and could be launched today under manual supervision, however this would only steal time from actually making it completely fully automatic. It won't be running besides small-scale testing until every feature is implemented. The muling script on both ends are complete, and the server can handle multiple requests at the same time. I'm considering implementing a list of muling locations chosen at random, however only one, hard coded location, is sufficient for now. Tomorrow I will give the account creator a proper GUI where the accounts created may be chosen to be stored in one of the databases; mulesdb, botsdb, TBDdb.

02.02.19 Report:

Spoiler

Unfortunately my girlfriend gave me a hard time because she said I was spending too much time with my computer, so I wasn't able to do the harder parts. However, I did clean up the training script, and the account launcher is sorta-finished now, because it is making accounts, and saving them to the db, but it fails a lot. After having taken a look at it, I can't figure out why it fails however this may change once I'm sober again. Yes, you read that right, I'm drunk af rn. Current state of the project is that I'm able to create accounts, assigned with IPs, train them with the training script so that they are "universal" and can be used for a number of Money Makers. However I won't be trying to amass these accounts yet, because I want the money maker finished before I start shelling out cash for proxies. Currently, I'm planning on running 10 bots per proxy, 1 mule per proxy and 10 bots per mule. This is with money maker #1, and can be changed depending on how much work the bot has to train through, before it is ready. Everything, except buying and feeding proxies is fully automated and requires no user input.

03.02.19

Spoiler

 

As per the last report, hangover from yesterday is making progress slow. As we all know programming requires a certain level of brain capacity, however some say that alcohol makes you more creative. Today, the latter effect made up for the first and I solved a problem with the account creator that had been bugging me for the bigger part of last week. It was a great relief that It now works as it is supposed to. It solves the captcha, generates a random everything and I can save the information to the database. A small problem is that after solving the previous problem, it won't properly save to the database anymore. I'll look into this in the coming days as it kind of is a crucial part to the full auto experience I need to be able to run a large farm efficiently.
I've dabbled with the money maker script, but it isn't anywhere near completed yet. I've decided to lay it off for now, focusing purely on the infrastructure.
I've also written a list of convenient information I may want to save to the database that I'm going to implement into the snippet that can write to the database.
The snippet should run on every bot script in the onExit() method, sending this information:
-All levels in all skills

-Add live runtime to existing runtime

-Amount of gp (or, given that I'm going to run multiple money makers, all applicable resources. I haven't yet decided if the bot is going to sell it's resources itself, or if this is a task for the mules. Either way, the snippet should be universal for both mules and bots for convenience so I might as well. Kind of like a bank statement of sorts)

-Names of the mules it traded to this session (Since the bot is going to be assigned a random mule from the muledb, it would be nice to know the mules that have traded banned bots so I can potentially assign them a banrisk factor that could be used to asses maximum allowed fund for it at a later stage)

-What money makers the bot has participated in today (All the bots are trained to be able to do multiple money makers, so they are not limited to just one skill.)

-How many trades it has done today (Useful for both mules and bots to see if a mule is maybe overactive and should rest more to avoid suspicion. Don't know if this will play any role at all given the high volume that I'm planning to operate in, but is easy to implement and could potentially be used at a later stage)

 

04.02.19 REPORT

 

Spoiler

Nothing on the programming side was done today. I decided to write down in detail what I need to do and when it needs to be done to get to a MVP, so I did it with a friend. I told him in exact detail what my plan was and afterwards I wrote it down into a cohesive list of things to do. I think it'll make it easier to tie it down together in the end if I have a sort of flowchart to go from. I'll of course add things to this list as I work through it, because problems do arise out of nowhere.

13.02.19

Spoiler

 

Account creator is now fully operational, database support implemented for both mules and bots with proxies.

image.png.b9ca7b06a7aaa97b417fd0c40b7ac952.png

 

15.02.19

Spoiler

 

Had some trouble with the way I wanted it to work and the fact that I'm very new to Java. I'm not confident enough in my skills to implement every aspect into a single script, but I am however, confident in my ability to make separate, simpler scripts. Here is the crude way I'm planning to get the bot farm operational and ready for the first launch. The Custom Login Handler Script is only going to log in to the email from it's respective database, then figure out it's in game username and write it back to the database.

image.png.42550a59a03eeb6b984b2afc2039bc4d.png

EDIT: Decided to write a flowchart of the entire farm, green is done, red is not done:

 

51890324_1149983455176184_3902636486075351040_n.png?_nc_cat=110&_nc_ht=scontent.fosl2-1.fna&oh=7f0ecbc5161492f9946bf8782f5fe364&oe=5CE2C04D

 

17.02.19

Spoiler

 

Minimum infrastructure has been completed and I have begun testing with 2 bots and 2 mules. The reason I have an equal amount of mules and bots is because I don't want to wait for a mule to be ready in the unlikely event that a mule is not available. The server is capable of handling multiple requests, and if a mule isn't available it will place the request in a que.

Account launcher, Account Creator and Mule Request Server have all been added into a singular program that I named the Farm Manager.

So far testing is revealing a lot of minor bugs. Scripts not updating properly to SQL being the main ones. I was relieved to see that the main functions are working properly though. The account is running flawlessly through tutorial island, then doing some tasks before it logs out, saves it's logintimestamp to the sql and is launched from the Farm Manager.

Also added some new goals:

-Statistics in the GUI

-Set max number of accounts on each money maker and training, the Farm Manager will stop trying to launch accounts if it reached maximum capacity, and will only launch a new account if another one updates it's loginstatus to null.

 

Here is an image of some of the data for two of my accounts:

image.thumb.png.2841e7ad0b35081d8f2bcacf9235df3f.png

Some of the stuff that is stored in the database:

image.png.ad199bd6abb2fd70034f48dd33460136.pngimage.png.64da19182f254e82c187fa88c1d3ba15.png

I'm going to calculate what the average loss on a ban is, and if it is unacceptable or suboptimal I will increase muling frequency.

 

Report 19.02.19

Spoiler

 

Added some more columns to the database to be able to store more relevant information about the bots. In the future, the farm manager will be able to draw any bot from the database and launch it with a script that is perfect for it's level and items.

image.png.233fbd8d8f276cfed49757c1f8faf607.png

I also cleaned the Farm Manager code, because to be honest it was a mess. After everything has been sorted, it was much easier to implement all the database connections I needed. 

10 bots and 2 mules have also been added to the farm and are currently running very efficiency-wise conservative scripts to try and avoid any bans. None so far.

 

21.02.19

Spoiler

I re-wrote the botpart-mulingscript so it could have more failsafes. The bots are coming along nice and steady, and only have had 2 bans so far. I haven't given much thought into how much money they are earning yet, partly because I'm enjoying the system just working, but mostly because this is just a test phase to see if everything works correctly.

Also I'm designing a new GUI for the account launcher because it's getting really tiresome to go into the code every time i'm going to add or edit the name/parameters of a script.

image.thumb.png.171b8b4c25d10ad25b3ec03bb1ec6f21.png

 

25.02.19

Spoiler

 


Going to implement a custom login handler into the main script so I can get rid off the getname script.

image.png.0e85e8603d4dc74bd75c95bd1cd15d7e.png

Also going to optimize the main script with randomize order of operation during a given task.

And working on a giant code snippet that will include most if not all wearable items in OSRS and their stat requirement so that my bots can gear up with the optimal gear they have.

Almost half of the bots on my home IP has been banned so far so i'm going to look into changing my home IP soon, and implement a jagex files deleter into the farm-manager.

Statistics panel have been started on.

Going to implement a warning system notifying if any bots have ran for longer than 12 hours, indicating that something went wrong and that there is most likely a bug in the script.

 

 

26.02.19
 

Spoiler

 


A custom login handler has been implemented into the script, making the getnamescript and the tutisland script obsolete. Some bugs still remain with the custom login handler, but all in all it works. 
I will start optimalizing the Farm Manager for the new script setup, remove legacy code etc. Before I take on adding new features.

 

Here are some pics of the account creator wich works flawlessly now:

image.thumb.png.87b7f1fb8eb7265e5585f850405ddc8d.png

For the account launcher I'm going to make it possible to add new panels dynamically, and new conditions dynamically, so that I can have for example, Select bots that have both more than 23 combat and less than 15 fletching and send them to fish yew in the Ardougne ocean. Currently, I've implemented a rudimentary system with only two panels and one condition, and they are both static. This allows me to train one skill, and then moneymake it after it's reached it's moneymakingable lvl. 

Account Launcher: 

image.thumb.png.5b205270647a07f2e28563e979ac29ba.png

 

28.02.19

Spoiler

 

The new account launcher GUI is taking form. It's not pretty, but it's dynamic, and more importantly, it's functional:

53055668_1988930397871156_8827831580689956864_n.png?_nc_cat=107&_nc_ht=scontent.fosl2-1.fna&oh=f0e35dd2785266b2eb962106c5263b66&oe=5CEBB774

Next I need to make a listunpacker that unpacks the lists inside the lists and outputs them into a String I can use to request an applicable account from the database.

 

01.03.19
 

Spoiler

 

One month has passed! The project is well underway, and so far I'm looking at a small profit of 1m/day in sub-optimal test conditions. I must say I'm impressed with myself and how far I've come with this. 

During the next few days I will do a lot of testing, since I finally had the time to implement the muling script fully, as a task, into the main script. However, before that I need to set up all the different configs I need, so I've made a spreadsheet that covers all requirements, and one that covers everything that the config is supposed to accomplish during it's time online. Here is the excel spreadsheet I'm using to keep track of it. The different configs will only have a number as a name:

image.thumb.png.fb3786656d300bffd302b71f8d889336.png

The farm manager account launcher, now with toggled editables to avoid user errors, fully dynamic add and remove script configs&tasks:

image.thumb.png.7080bd6b92b398673b52dd0648e53e05.png

Mules update their current wealth straight to the database making it easy to find one that is ready to sell, accounts are replaced immediately on ban:

image.png.a0b29f3299179c74a18187f69143f584.pngimage.png.41d4f71ba381a62ab7e288861c0f2456.png

 

02.03.19

Spoiler

 

10 mill muled successfully overnight with between 10-15 bots activated.

Only 65k where lost due to bans, allthough I don't know the value of the items lost. All bots where banned and immediately replaced, no mules where banned.

 

11.03.19
 

Spoiler

 

Successfully tested the farm so far. Account replacement is working flawlessly. I added some checks to the muling system to make sure the bot doesn't wait forever if a mule is banned. Somehow I managed to break the mule part of the script, so I'm currently attempting to fix it. In any case it was absolutely necessary to have this check in place so it isn't a big deal. During the test phase Everything has been running on one IP. Including the mules, and suprisingly only two mules have been banned. One with only 200k on it and one with absolutely nothing. Average actual profit every day is unclear because I have been adding in failsafes in all the scripts and softwares and that has taken some time from actual botting time. So far with 10 bots running 24/7 I have calculated, with the time online that I can make about 100$ every month. This is very promising because these numbers can then be extrapolated to 1000$ every month for 100 bots running 24/7. This is of course including training time for the bots and given that the current banrate stays the same. 
So I have decided to go ahead with building my very own server that hopefully can support this many bots. Here is the current setup I'm looking to buy:
2x Intel Xeon E5-2640 V4 CPU
8x Kingston 32GB DDR4 2400Mhz ECC Reg 

1x ATI 5870 GPU

 

For a total of 256GB RAM and 20 Cores at 2.4Ghz. I think my main bottleneck will be the CPU So I'll be looking into maybe splitting the RAM over 2 different computers/servers with 2x extra CPUs.

Everything will of course have a strong cooling system in place.

I have yet to calculate exactely when I'll break even but I'm counting on running about 320 bots 24/7 and I think it'll take me about 2-3 months before I break even on that investment.

As far as software goes my current goal is to implement a mule web that supports bond transfers so I can expand to members and partake in more lucrative money makers there. This is so that I can earn more per computing power unit, reducing the time it'll take to break even, make more money, or continue investing in additional servers. Long term I would like to leave F2P all together to focus purely on better moneymakers in the member worlds, but for now F2P botting is going to repay the hardware investment and fund the entrance into members.

 

 

Edited by Nor3g
Log
  • Like 2
Link to comment
Share on other sites

59 minutes ago, defil3d said:

very interesting project looking forward to the results!

 

1 hour ago, PerfectMoney said:

Amazing story

 

On 2/1/2019 at 1:42 PM, 194m said:

Nice project dude!

 

Thank you all!

 

02.02.19 Report:
Unfortunately my girlfriend gave me a hard time because she said I was spending too much time with my computer, so I wasn't able to do the harder parts. However, I did clean up the training script, and the account launcher is sorta-finished now, because it is making accounts, and saving them to the db, but it fails a lot. After having taken a look at it, I can't figure out why it fails however this may change once I'm sober again. Yes, you read that right, I'm drunk af rn. Current state of the project is that I'm able to create accounts, assigned with IPs, train them with the training script so that they are "universal" and can be used for a number of Money Makers. However I won't be trying to amass these accounts yet, because I want the money maker finished before I start shelling out cash for proxies. Currently, I'm planning on running 10 bots per proxy, 1 mule per proxy and 10 bots per mule. This is with money maker #1, and can be changed depending on how much work the bot has to train through, before it is ready. Everything, except buying and feeding proxies is fully automated and requires no user input.

Link to comment
Share on other sites

On 2/2/2019 at 9:09 PM, Rxd said:

Nice project!

Forget the girlfriend. Once you start making the Gp's she'll understand and will crawl to you mate

 

Thanks man! She's already crawling though ?

 

On 2/2/2019 at 9:24 PM, zwaffel said:

Looks promising goodluck.

Thanks!

 

03.02.19
As per the last report, hangover from yesterday is making progress slow. As we all know programming requires a certain level of brain capacity, however some say that alcohol makes you more creative. Today, the latter effect made up for the first and I solved a problem with the account creator that had been bugging me for the bigger part of last week. It was a great relief that It now works as it is supposed to. It solves the captcha, generates a random everything and I can save the information to the database. A small problem is that after solving the previous problem, it won't properly save to the database anymore. I'll look into this in the coming days as it kind of is a crucial part to the full auto experience I need to be able to run a large farm efficiently.
I've dabbled with the money maker script, but it isn't anywhere near completed yet. I've decided to lay it off for now, focusing purely on the infrastructure.
I've also written a list of convenient information I may want to save to the database that I'm going to implement into the snippet that can write to the database.
The snippet should run on every bot script in the onExit() method, sending this information:
-All levels in all skills

-Add live runtime to existing runtime

-Amount of gp (or, given that I'm going to run multiple money makers, all applicable resources. I haven't yet decided if the bot is going to sell it's resources itself, or if this is a task for the mules. Either way, the snippet should be universal for both mules and bots for convenience so I might as well. Kind of like a bank statement of sorts)

-Names of the mules it traded to this session (Since the bot is going to be assigned a random mule from the muledb, it would be nice to know the mules that have traded banned bots so I can potentially assign them a banrisk factor that could be used to asses maximum allowed fund for it at a later stage)

-What money makers the bot has participated in today (All the bots are trained to be able to do multiple money makers, so they are not limited to just one skill.)

-How many trades it has done today (Useful for both mules and bots to see if a mule is maybe overactive and should rest more to avoid suspicion. Don't know if this will play any role at all given the high volume that I'm planning to operate in, but is easy to implement and could potentially be used at a later stage)

 

Link to comment
Share on other sites

14 hours ago, NakedPotato said:

Auto-selling to gold sites seems interesting. I mean, you wouldn't want them to be like "well your bot agreed to sell for $0.5/m!" or something.

No I'm thinking more like a pre-agreed price and then just have they mules ping the gold site with a "I'm ready now at lumbridge with 5m at world 312 my usename is mulebot123!" and then It just hangs around lumbridge waiting for a response from the gold site with their in game name and just autotrades their player. I don't think it'll be feasable at low volumes, but once I get up to 10b a month it might be. Sure I risk getting scammed, but I plan on checking in on my accounts every other day or so to check if the dollars were received or not. I think it might be worth the risk of the gold site scamming me as opposed to either manually do it several times a day or doing it every week with the risk of the mule getting banned. In any case, this is much further down the line and not a priority to do right now. I need to get the infrastructure up, and then either code the moneymaking script or pay someone here to do it for me first! :)

04.02.19 REPORT

Nothing on the programming side was done today. I decided to write down in detail what I need to do and when it needs to be done to get to a MVP, so I did it with a friend. I told him in exact detail what my plan was and afterwards I wrote it down into a cohesive list of things to do. I think it'll make it easier to tie it down together in the end if I have a sort of flowchart to go from. I'll of course add things to this list as I work through it, because problems do arise out of nowhere.

Link to comment
Share on other sites

29 minutes ago, Nor3g said:

No I'm thinking more like a pre-agreed price and then just have they mules ping the gold site with a "I'm ready now at lumbridge with 5m at world 312 my usename is mulebot123!" and then It just hangs around lumbridge waiting for a response from the gold site with their in game name and just autotrades their player. I don't think it'll be feasable at low volumes, but once I get up to 10b a month it might be. Sure I risk getting scammed, but I plan on checking in on my accounts every other day or so to check if the dollars were received or not. I think it might be worth the risk of the gold site scamming me as opposed to either manually do it several times a day or doing it every week with the risk of the mule getting banned. In any case, this is much further down the line and not a priority to do right now. I need to get the infrastructure up, and then either code the moneymaking script or pay someone here to do it for me first! :)

04.02.19 REPORT

Nothing on the programming side was done today. I decided to write down in detail what I need to do and when it needs to be done to get to a MVP, so I did it with a friend. I told him in exact detail what my plan was and afterwards I wrote it down into a cohesive list of things to do. I think it'll make it easier to tie it down together in the end if I have a sort of flowchart to go from. I'll of course add things to this list as I work through it, because problems do arise out of nowhere.

Just my experience: it'll take twice as much time to debug and fix bugs than it will to actually write the scripts.

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...