Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Rosed

Goldfarm Server Construction

Recommended Posts

In this thread I'll be reporting my progress in building servers used for goldfarming.

The goal of this thread is to keep a log for myself and others, in this thread you can feel free to post what system you are running yourself and let us know how many clients it is capable of running. It would also be helpful to mention the price you paid for your system, you don't have to own a server or desktop that was specifically built for botting to participate and share your experiences, if you are looking for advice regarding upgrades to improve your botting experience you should also feel free to do so.

A helpful tool to analyze your systems components is Speccy, you can find it by either simply typing "Speccy" into google or following the link I'll provide here: https://www.piriform.com/speccy
(Note: you don't need the pro version.)

In this thread there will also be free VPS environments available from time to time, so check in from time to time and when you see that space is available, send me a PM and I'll reserve a spot for you. Moving on, these servers are built specifically for botting OSRS, meaning the focus around these servers is mainly the processor. Servers are kept at the workplace during a period of testing and are later migrated to data-centers inside Amsterdam, where they remain until they either are replaced or get sold.

Now that we have introductions sorted, lets
move on to the current operational servers.

SuperMicro 1U X58 Single Socket Server ($165,-)

  • Motherboard: SuperMicro X8STi-F
  • Case: SuperMicro SuperChassis 811TQ-280B
  • Processor: Intel Core i7-950 (Total Cores: 8) ($45,-)
  • Memory: 6x2Gb 1333Mhz Hynix ECC ($20,-)
  • Storage: 2x500Gb Samsung Sata HDD (RAID 1)

Status: Environments Available

(HP ProLiant DL380 G7 Dual Socket Server

  • Motherboard: OEM*
  • Case: OEM*
  • Processor: 2x Xeon X5670 (Total Cores: 24)
  • Memory: 18x2Gb 1333Mhz Samsung ECC
  • Storage: 4x146Gb HP SAS (RAID 0)

Status: Under Construction

Dell PowerEdge C6100 Octa Socket Server (4 Nodes)

  • Motherboard: OEM*
  • Case: OEM*
  • Processor: 8x Xeon X5670 (Total Cores: 96)
  • Memory: Upwards of 128Gb
  • Storage: Upwards of 4TB

Status: Planned

Remarks: OEM* implies its model is specific to the original manufacturer, it is a non-modular component.

Home Server/Personal System (Total €865,-)

  • Motherboard: MSi X79A-GD45
  • Case: Sharkoon M25-V
  • Processor: E5-2695 v2 (Engineering Sample)
  • Memory: 32Gb, Crucial Ballistix Sport 1600Mhz (8x4Gb)
  • Storage: 1TB, 2x Samsung Evo 850 500GB SSD (RAID 0)

 

Edited by Rosed

Share this post


Link to post
Share on other sites
30 minutes ago, Rosed said:

In this thread I'll be reporting my progress in building servers used for goldfarming.

The goal of this thread is to keep a log for myself and others, in this thread you can feel free to post what system you are running yourself and let us know how many clients it is capable of running. It would also be helpful to mention the price you paid for your system, you don't have to own a server or desktop that was specifically built for botting to participate and share your experiences, if you are looking for advice regarding upgrades to improve your botting experience you should also feel free to do so.

A helpful tool to analyze your systems components is Speccy, you can find it by either simply typing "Speccy" into google or following the link I'll provide here: https://www.piriform.com/speccy
(Note: you don't need the pro version.)

In this thread there will also be free VPS environments available from time to time, so check in from time to time and when you see that space is available, send me a PM and I'll reserve a spot for you. Moving on, these servers are built specifically for botting OSRS, meaning the focus around these servers is mainly the processor. Servers are kept at the workplace during a period of testing and are later migrated to data-centers inside Amsterdam, where they remain until they either are replaced or get sold.

Now that we have introductions sorted, lets
move on to the current operational servers.

SuperMicro 1U X58 Single Socket Server

  • Motherboard: SuperMicro X8STi-F
  • Case: SuperMicro SuperChassis 811TQ-280B
  • Processor: Intel Core i7-950 (Total Cores: 8)
  • Memory: 6x2Gb 1333Mhz Hynix ECC
  • Storage: 2x500Gb Samsung Sata HDD (RAID 1)

Status: Environments Available

HP ProLiant DL380 G7 Dual Socket Server

  • Motherboard: OEM*
  • Case: OEM*
  • Processor: 2x Xeon X5670 (Total Cores: 24)
  • Memory: 18x2Gb 1333Mhz Samsung ECC
  • Storage: 4x146Gb HP SAS (RAID 0)

Status: Under Construction

Dell PowerEdge C6100 Octa Socket Server (4 Nodes)

  • Motherboard: OEM*
  • Case: OEM*
  • Processor: 8x Xeon X5670 (Total Cores: 96)
  • Memory: Upwards of 128Gb
  • Storage: Upwards of 4TB

Status: Planned

Remarks: OEM* implies its model is specific to the original manufacturer, it is a non-modular component.

Home Server/Personal System

  • Motherboard: MSi X79A-GD45
  • Case: Sharkoon M25-V
  • Processor: E5-2695 v2 (Engineering Sample)
  • Memory: 32Gb, Crucial Ballistix Sport 1600Mhz (8x4Gb)
  • Storage: 1TB, 2x Samsung Evo 850 500GB SSD (RAID 0)

 

Price breakdown would be nice *

 

Going asleep will read response later

Share this post


Link to post
Share on other sites

As someone with a dual xeon server, make sure to account for electricity costs in your builds. I'm not sure how your colocation setup will work, but I'm assuming they'll factor your kWh into the bill. Eight 95W processors could get interesting.

Edited by iNop

Share this post


Link to post
Share on other sites

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.


  • Similar Content

    • By wastedbro
      Wasted Chopper - AIO Woodcutter
       
      Description:
      Wasted Chopper is a woodcutting script designed to be greater than any other woodcutter. Made with the best antiban yet seen, this script has been completely rewritten and runs flawlessly.
      With a Task System, Auto-Axe Upgrading, and ABCv3 Antiban, Elite Chopper Pro is the best Woodcutting Bot you can find!
      Repository Link: https://tribot.org/repository/script/id/2653-elite-chopper-pro/
      Features:
      Best Antiban possible. ABCL 10 plus new antiban not seen in ANY OTHER SCRIPT via my Unofficial ABC Extension  Task System for completely automated 1-99 20+ locations (including Redwoods) (See second post for full list) Options to burn, fletch, and even plank the logs you chop! Customer location support! Infernal Axe Support Fast and efficient chopping Start from ANYWHERE Auto axe upgrading (bronze to dragon) Completely Customizable Antiban Control Mouse Speed, Reaction Times, and even play around with Tribot's built-in antiban! Profile System Save and Load custom Profiles! Script Arguments To use, just type in the name of one of your saved profiles, and the script will load those settings and run them without displaying the GUI!  
      Upcoming Features:
      Built-in Muling capabilities New Paint! Preset profiles for you to kick-start your massive goldfarm!  
      Pricing:
      Standard Packages
      Two-Weeks (15 instances) - $3.99 One Month (15 instances) - $5.99 Three Month (15 instances) - $7.99 Six Month (15 instances) - $11.99       <- Best deal! Goldfarming Packages
      One Month (100 instances) - $11.99 Casual Botting Packages
      Six Months (2 instances) - $8.99     <- Perfect for Mains Buy Here: https://tribot.org/repository/script/id/2653-elite-chopper-pro/
       
      GUI:
      Proggies:
       
      Vouches:
       
      Supported Locations:
      Custom Scan for trees in a certain radius. Allows you to scan for any tree name, including Teaks, etc. Supports Banking using Dax Webwalker or Tribot Webwalker Lumbridge Normals Oaks Willows Yews Draynor Oaks Willows Port Sarim Willows Varrock East Normals Oaks Varrock West Normals Oaks Falador Normals Oaks Yews Edgeville (beta) Yews Grand Exchange Yews Seers Village Willows Maples Yews Magics Catherby Oaks Willows Yews Castle Wars Teaks  WC Guild Willows Maples Yews Magics Redwoods  
      Antiban Settings
      The Reaction Modifier represents how much of the reaction time you want the bot to wait. So the lower this slider, the shorter the reaction times.  
      Misc Info:
      The task system loops. So once the final task is finished, it will run the first one again. If the Stop Condition is already met, the task will not run.  
      Common Tribot Fixes:
       

    • By dondo_supamida
      I am proposing the following action be taken as part of my feedback for tribot as I believe, if the following is acted upon, it could differentiate Tri-bot's service from its competitors (higher quality script writing & better education on using a particular script)  + Generate better botting/user satisfaction (through reduced ban rates, and minimising excessive breaking for increased botting efficiency in XP/GP attained throughout the botting day). 
      1) I think Tribot needs to allows its users to rate scripts so we can know which scripts are good quality scripts. This will allow botters (especially new members of the tribot community) to knowingly use poorly rated scripts at their own risk. To prevent people from giving scripts fake review, we could make the Rating System VIP or VIP-E members ONLY. Also the scripter must have paid/used the script in the past to be able to rate it once. I highly doubt someone is going to make tens/hundreds of VIP accounts + purchase the same scripts tens/hundreds of times over  just to give scripts bad reviews, even if they do, the scripter/tribot would have made a shit ton of money from it as the Rater must have previously have purchased the script to rate it in the first place --> Which makes it a win-win situation for both parties. Also TriLez can make it in a way that only VIP/VIP E can view the ratings, this might increase the demand of VIP services, profiting him much more in the long run. 
      2) All Scripters (especially premium scripters) should be required to stress test their scripts --> What I mean by this is scripter must sucide bot their script on a freshly made account (PROGGIES SCREENSHOTS PROVIDED) before releasing it to the public so the buyer/user of that script can understand how safe the script actually is, from the length of time it took the script to get bannned. This improves efficiency of the botting experience as total xp gained per day is higher, due to a decline in excessive breaking as it is simply just a form of  XP waste. 
      3) Also Scripters should be REQUIRED to list their own personal reccommendation of how long (roughly) to run the scripts before taking a breaks (this has to of course be based on the stress test results, and not be random falsified values given out with the purpose exploiting the sale the script to more users for a quick cash grab). What this means is that users are better edcuated on the scripts quality and its capability as they know roughly how long to run a script before placing breaks (this minimises ban rates significantly). 
      4) Scipters should be forced to do video tutorials on how to run the script before releasing a script (ESPECIALLY IF PREMIUM - We are not paying you to be lazy,  its only fair to provide users some education on how to set up the script if you are expecting to monetise from it) 
      I think the changes I have proposed are clearly fair since the previous benefits from lifetime script were taken away , its only fair we get compensated in other ways. I suggest this to be in the form of high accountability from scipters. I think quality measures like this would not only boost the script writing in the tribot community, but the users of Tribot software would be happier to pay more for such a high quality service/ platform. 
      The current rules seem more and more illogical to me on a daily basis, that as the users we are paying THE SAME (if not, HIGHER) Monetary Value for scripts that once had a SIGNIFICANTLY lower ban rate years ago (back when Jagex bot detection system sucked). Also do not give me the excuse that the improvement in Jagex Bot Detection System is not your problem, because we are paying you to make it your problem. The ban rate factor should definitely be reflected in a script's price. Something that is incapable of being run for more than 2 hours definitely should NOT be worth $7-10 especially since it has high banrate + cannot match human xp/gp rates + lack of education provided by scripters on how to use/set up the script. I'm okay with Scripters charging higher prices for the same scripts over time, BUT THIS SHOULD ONLY HAPPEN IF the script's has a stable ban rate extended periods of time, but if the script is simply not improving in quality at a similar rate at which Jagex Bot Detection system improves then the price inflation of the script should be cancelled out by the shitty ban-rate , OR EVEN be discounted in price rather severely.
       
      In conclusion I consider it absolute Robbery that Ban rates for most scripts seem to be going up yet the prices of these very same scripts carry on increasing #Facepalm.  Some Tribot scipters need to be accountable or even Banned, this is becoming some next level form of scamming. If this shit keeps going on, I wouldn't be surprised if we get to the stage where $20 or even $50 is acceptable for a script with a 50% ban rate (where 1 in every 2 users gets banned). I've been a loyal user of the TriBot service for more than 4 years now, even when some of your competitors offered similar quality scripts for cheaper prices I sticked with Tribot. I believe this entitles me to be allowed some level of expectations in the quality of service. 
       
      PS: If I posted this in the wrong section, please move it to the correct section. Apologies in Advance.
    • By Optimus
      Optimus AIO Tzhaar Fighter V2
      Tzhaars are a great method for training up your combat stats while making some good profit! All of the obsidian items are now worth a lot, and with the expansion of the Tzhaar caves they are now a very viable source of income! One of the best features of this script is that it can safe spot the Tzhaars using Ranged/Magic or Halberds so that you don't take damage, which means you don't need a high defence level or much food to kill them!
      Features:
      Kills all the Tzhaar monsters in all locations, including the new inferno area. Earns up to 1m/hour! Create your own fight area and select which monsters you want to target. Full safe spotting support, as well as face to face melee combat. Can fight with ranged / magic / melee ( Including halberds for safe spotting ). Advanced ABC2 antiban with a 10/10 rating. Custom looting & profit tracking Drinks all potions Can worldhop when certain conditions are met. Banks for more food / ammo / runes when required. Can navigate any player to the fight caves on foot, or via the minigames teleport if available.. And much more! Repository link:

       
    • By Fluffee
      Fluffee's Server Setup 3.0
      As some of you may know, I released an automated server setup script a little over a year ago. Albeit that script worked well, I was never fully satisfied with it, as I found it to be kind of messy to use. As a result, I rewrote the script, and restructured it, to add more, and stronger support for the different versions of Debian, the different versions of CentOS and the different versions of Ubuntu. However, with so many different Operating Systems being supported, and many different server providers having different setups, it's hard for me to test every possible scenario on my own. Which is why I've been privately handing this script out, and am now publicly looking for help.

      What does the script do?
      Similar to my previous setup script, this script changes the SSH port and creates a new user for connecting and using the server and disables root SSH connections; it installs the latest version of TightVNC Server (1.3.10) and sets that up with the desired port and password. It installs JDK 102 (32 or 64 bit depending on the OS), and installs TRiBot and OSBuddy and sets up the appropriate .jar file associations.
      What operating systems does it support?
      - CentOS (6.x and 7.x) (32 and 64 bit)
      - Debian (7.x and 8.x) (32 and 64 bit)
      - Ubuntu (12.x, 14.x and 16.x) (32 and 64 bit)
      Does it work?
      As far as I know, yes it does in fact work, and it works well if I might add. However, given that I can't test every possible setup, there is the potential for differences and issues
      How do I run the script?
      Login as root to a fresh VPS/dedi running one of the supported operating systems. From there run the commands listed below and follow the onscreen instructions. For those who would like to see the script's code, it can be found on my bitbucket here. The commands to run are as follows:
      wget --no-check-cert https://bitbucket.org/teamfluffee/fluffees-server-setup/raw/add-shared-functions/fluffees-server-setup.sh && chmod +x fluffees-server-setup.sh && bash fluffees-server-setup.sh -v Version History
       
    • By voidk5
      Hey guys, I'm facing some problems with my Debian 8 VPS, currently I'm not able to install Java 8, I was using this as reference https://tecadmin.net/install-java-8-on-debian/ but as it says "IMPORTANT: Java 8 is no longer available to download publically. You can use below link to install Java 11."  Java 8 can't be downloaded anymore, so I tried to use Java 11, but TRiBot doesn't work with it. 
      Anyone can have with this? 
      I'll give more info if required.
       
       
    • By jbean94
      *As no one knows how Jagex bans accounts, all opinion's are my own.
      **In response to comments, I've revised the post.
      This is meant to encourage/help people get into botting, as well as some tips to people who are not succeeding. I spent a lot of time making this because I think this information is useful.
      First, not only is it possible to make a living botting, but I make more now than at my "real" job! I do this by diversifying how I make my money and picking up as many streams of income as I can.
      I'll go into what a normal day looks like, but firstly you should learn the game. Runescape botting by far is where most of my money come in, and without some knowledge of the game you are going to struggle, so if your new looking to make an easy buck, it’s possible, but you’re going to need to do quite a bit of research. I'd play the game for at least a month before attempting to learn. There’s quite a few ways to bot, and you will have to figure out for yourself what works for you. For me, I like to run high requirement/high money bots, though riskier the rewards are also great.
      I have successfully botted the same accounts for 6+ months, each making over 1m/h. In these types of accounts, the most costly thing associated with it are the accounts getting banned. There are quite a few ways I get around this, and the more unique your personal bot farm is the less likely you are to be banned generally. Some things I follow religiously though are:
      -Not botting during Jagex hours, if you have botted enough I’m sure your aware 90% of bans happen during this time. Whether being logged in effects it we can’t be certain, but from my personal experience I would not risk it.
      -Looking Glass, Again, a bit of a controversial one. When botting high skill requirement activity's I like to give my accounts the best chance, I believe looking glass does help, but for suicide botting your CPU could be better used and i would not recommend Looking Glass for those types of Accounts.
      -Breaks, so far these should not be too crazy new to people, however I see questions all the time on here asking about breaks. You want your accounts to look human if they’re going to last, and humans got to take breaks!
      -Sleep! A lot of people want to bot on their main, and will do so during the time they would normally sleep. I strongly advise against this. We have suspensions that Jagex tracks your normal hour play time, and there are flags to be raised when you suddenly spend 8 hours alching from midnight to 8am. In fact, I always let my accounts get at least a 8-9 hour "sleep" to look more human.
      -Paid scripts, you got to spend money to make money! Not only will paid scripts almost always have better, more customization features. The developers usually care and update these scripts a lot more, and, the less users on a script, the better for ban rate. A lot of users don’t want to shell out a few dollars for their accounts. Again, strongly unadvised to use free scripts! 
      -Proxys. Same goes for proxies as paid scripts, generally the more expensive the less likely it will have been botted on in the past. Never use free proxies, you can have accounts banned before you ever bot for using a suspicious proxy! Personally i use residential proxies, and I believe that is why my ban rate seems so low compared to other users. Data center proxies are detectable whereas residential looks like just another home IP. I get mine from Yourprivateproxy as there one of the few sites that offer static, Socks5 residential proxies. You should also be aware of how many accounts you have on a certain proxy, i like to have 2 botting accounts on 1 proxy, with mules/gold traders on cheaper data center proxies.
      -Check the threads! Before getting into a new activity to bot, check the thread/forum to see what people are complaining about, but also keep in mind that people are more likely to go out of their way to complain vs complement.
      -Choose what you know! If your highest hunter level you’ve ever gotten in the game is 10, don’t bot hunter! Bot things that your familiar with, things that you've seen/identified people botting and do it in a way that isn’t as obvious as those people. If you jump into a skill you don’t know, you’re just going to be one of those obvious bots.
      -Don’t overdo it. Don’t quit your job tomorrow to start 100 accounts (yes people do this) without any experience expecting to make bank. Give it time and fell it out to see if this is something you want to learn, you should learn more and more every day from botting.
      How much money can you make off this? I Spend about an hour a day on my bots, ATM I make around $70 a day/ $2100 a month from the accounts I have and am working towards making more! One of the first things I bought after starting this was my car (image attached). I was a server before this, and as a guy finishing up college the freedom I have now is unreal.
       
      *Other ways I make money
      Honestly these are not for everyone, they can be tedious/annoying. This is not meant to be an add but as an actual discussion on the things I personally do. I realize not everyone will have an interest in these, so please just ignore this part if you fit into that category. 
      Besides botting, in my other free time i try to make money online in a few different ways, lots of websites can be used together to make an extra $
      -Swagbucks, This one is my favorite because once you figure it out you can make quite a bit. Especially if you sign up for free trials (I have enough free razors to last me forever) 
      -Perk, Another site though not as good as swagbucks. If you have a phone, tablet or even multiple you can make money on them just playing videos forever, i just set up the ipad and leave. People used to make "perk farms" with tons of phones and make $100's of dollars a day, but the golden age of perk has passed sadly. 
      -Ebates, For saving money this is the best one I know. When buying my new PC they actually gave me 20% back so i got around $200 I would have never seen anyway. I'm sure most people know about it but I thought id include it anyway
      -Smart Screen Panel- This one will pay you $1 a week per device you download it to up to 3 devices. Its hard to get in but if you catch it when its open you can download and forget about it, I usually forget I have this until Christmas hits then its actually a nice sack of change
      - Paribus, It will go though your amazon purchases from the last 30 days, and if prices drop give you the difference. I don't buy a lot of stuff off amazon, but you may find it useful.
      -Instagc, Another site for making money, I've heard great things about this site but i personally do not use it.
      -Other sites to try, Reddit/beermoney probably has the most of these types of sites if you interested, not something everyone is into but if you got the time check it out!
       If anyone has any other suggesting/other ways they make money there willing to share, let me know! I'm always trying to find new sites to try and make a buck
      ***Some of the links above are affiliated/refer links. You do not in anyway have to use these, fell free to google the different sites yourself if interested.  I will also attempt to show some verification of my claims.
    • By acezeps
      Hey tribot, just was looking for a bit of help with the whole vps goldfarming method. 
      Does anyone have any experience with connecting your screen to the vps desktop? I followed a tribot guide, and did everything correctly and still could not connect with no one to help me. 
      I am expecting to be able to run 2-3 accounts per vps, is that possible or should i stick to 1-2?
      Honestly, just looking for any sort of help on starting a vps based gold farm, and im tired of being promoted shit vps websites
       
    • By IceKontroI
      Overview
      A while back I had to create an implementation of a Server and Client communications system for a personal script of mine. My implementation was shit. Here's a much better one. It's still a bit unrefined so if you have an improvement, post it and I'll consider it for revision. The implementation for a lot of the class events is abstract, meaning the user determines what he wants to do when those events fire. Both Server and Client feature a heartbeat system, where after a certain time interval, the Client will send some info to the Server to let it know it's still alive. Likewise every time interval the Server does the same, but for each Client Connection it has saved. Servers and Clients both always have threads open which wait for Objects to be read. When an Object is read, an event will be fired as mentioned below. If the Object read is a Request (covered later on), then it will be displayed through a separate designated event. Implementations of the following events are not mandatory. If you don't want to handle certain events, simply create a constructor for the Server/Client, but leave the blocks for the unused event blank.
      Server events
      public abstract void onConnectionGain(Connection connection); Fired whenever a Client successfully connects to the Server, providing you the Connection that was just established. public abstract void onConnectionLoss(Connection connection, Exception e); Fired whenever a Connection is dropped, except when the Server closes a Connection manually when its shutdown() method is called. The Exception describes the circumstances that lead to the Connection being dropped. public abstract void onWrite(Serializable object); Fired whenever an Object is written to every Connection in the Server's list of current Connections. public abstract void onWrite(Serializable object, Connection connection); Same as above, but fires once for each Connection in the Server's Connection list at the time of writing the Object. public abstract void onRead(Object object, Connection connection); Fires whenever an Object is received on the Server's end from a Client Connection. Does not fire when a Request is received, the following event handles those cases. public abstract void onRequest(Request request, Connection connection); Fires whenever a Request is received on the Server's end from a Client. This class should handle implementation of how exactly you want to handle Requests. Requests will be covered in detail later on in the post. public abstract void onShutdown(); Fires at the end of Server#shutdown(). Client events
      public abstract void onConnectionGain(); Fired when the Client successfully established a Connection to the Server. public abstract void onConnectionLoss(Exception e); Fired when the Client's Connection to the Server drops. The Exception describes the circumstances that lead to the Connection being dropped. public abstract void onRead(Object object); Fires when the Client receives an Object from the Server. This again does not fire when a Request is received, that is handled by the event below. public abstract void onRequest(Request request); Fires when a Request is received on the Client's end, from the Server. public abstract void onShutdown(); Fires at the end of Client#shutdown(). Functionality
      The primary function of a Server/Client implementation like this is to facilitate communication between the Client and Server. Communication can happen across multiple scripts and even multiple computers. They must all be on the same network, however. Reading more than one Object at a time is unsupported (would corrupt underlying streams), and the same for writing. You can, however, read and write at the same time. To set this up, the user must specify which port the Server will be set up on, and then create Clients that attempt to connect to that port. You can do this through the constructors like so:
      Note  the implementations of each event in the example above do not need to contain any actual code, they just need to have their headers. Clients will automatically attempt to re-connect to the Server with their designated port number. If the Server connection is lost while a Client is still online, it will fire a onConnectionLoss(...) event and wait 1 second before reconnecting. If a Client connection drops while the Server is still online, the Server will simply fire onConnectionLoss(...) and do nothing special.
      When a Connection is dropped, either Server or Client, you won't know about it until you try to read/write to it. This is why both Server and Client implement a "heartbeat" system. Every time interval (0.5 seconds) the Server sends a null Object to each Client, and each Client does the same for its Server. This simply ensures a minimum read/write frequency between the Server and Client so that dropped connections can be handled properly. On read/write from a disconnected Connection, an error will be thrown, which will properly remove the Connection from the Server's list and fire onConnectionLoss(...).
      Writing
      Communication between Server and Client is two-way, meaning the Server can send Objects and Requests to any of its Connections and the Client can do the same to its designated Server. A Server can have as many Connections as your heap space allows, however a Client can only have 1 Server Connection. Reads happen automatically via their own threads, however writes must be handled directly by the user. Anything you want to write must be Serializable, otherwise you'll get an Exception. Here's how the write methods work:
      Server
      public void write(Serializable object) Simply writes the given Serializable to every Connection in the Server's current Connection list. Fires onWrite(Serializable object); public void write(Serializable object, Connection connection) Writes the Serializable to only the specified Connection. Fires onWrite(Serializable object, Connection connection); Client
      public void write(Serializable object) Writes the given object Fires onWrite(Serializable object); When writing Requests, if the Request is unfulfilled (see section below), it will appear in the recipient's onRequest(...) event.
      Requests
      Finally I'll get to Requests, which is one of the main things I built this system to handle. A Request is a specialized Object, sent to a recipient, with the expectation for it to be returned, but with some modification. A Client may want to send a Request containing a Point with coordinates (-1, -1), expecting it to be returned with different coordinates. Here's an example of what that might look like:
      Simply extend Request<T> where T is the type of Object you want to be able to modify and implement Serializable so that the Request can actually be sent. When you initialize the Request<Point>, it will contain a Point (or otherwise specified type) variable called "target" which will be null until the Request is fulfilled. To fulfill the Request, simply call Request#fulfill(Object ... args) with the proper argument parameters (in this case 2 ints). The Request will automatically process the parameters in the way specified by your abstract implementation of Request#execute(Object ... args), and update the "target" from null to whatever the result actually is. If Request#execute(...) throws an Exception at any point, the Request will simply be processed as unfulfilled and ignored, even if it is written back to the sender. Here's what Request fulfillment looks like:
      To send Requests, simply call the Client or Server's fulfill(...) method. It will write the specified Request to the target(s), wait for it to be returned as fulfilled, and then return it. If it doesn't receive the Request within a designated time frame, it'll throw a RequestTimeoutException. Requests use System.nanoTime() as an identifier to ensure the originally sent Request is returned at the end of the method call. This is a failsafe to ensure you don't accidentally return a different Request to the one that was originally sent out.
      Classes
      That's it. Here are the classes:
       
    • By rilumz
      so I have the bot training outside of relleka and every time it leaves the area to re-aggro the crabs it doesn't walk back up and start training again. kind of annoying seeing as i paid for the VIP and the optimus combat bot. would appreciate any help regarding this malfunction
       
  • Our picks

    • This update features:

      Fixed broken hooks from today's update


      Fix wilderness level with RuneLite (Thanks @Todd)


      Add support for Kotlin .class files in scripts (Thanks @wastedbro)


      Overhaul Inventory API (Thanks @wastedbro)


      Add List support for common methods


      Change method grouping to make more sense (by functionality)


      Refactor methods to utilize Java 8 streams instead of cumbersome loops




      Recognize chatbox minimization (Thanks @JoeDezzy1)


      Fix Screen#isInViewport when NPC chat is open (Thanks @JoeDezzy1)


      Fix login bot bugs (Thanks @erickho123)


      Fix hint arrow return values (Thanks @Encoded)


      Fix depositAllExcept functionality (Thanks @wastedbro)


      Change containing box interface bound and adjust for Y values (Thanks @erickho123)
        • Like
      • 151 replies
    • This release will:

      Fix prayers and world hopper API (Thanks @JoeDezzy1 and @erickho123)


      Improve banking API (Thanks @Encoded)


      Adds methods for returning and using Java Lists, rather than arrays


      Slightly randomizes some hardcoded behaviour


      Removes sleeps from waitConditions; the efficiency saving potential is negligible in these use-cases, therefore cleaner code is preferable


      Other back-end improvements





      Note: If you are using LG, please restart both the RS client and TRiBot.
        • Sad
        • Haha
        • Thanks
        • Like
      • 90 replies
    • This release will:

      Add new internal framework for capturing exceptions


      Fix issue with not selecting the last column in world hopper (Thanks @Todd)


      Add a message about pin usage in Banking#openBank (Thanks @Todd)


      Disable the firewall by default (Thanks @Todd)


      Fix handling of the welcome screen after login (Thanks @Encoded)


      Fix wrong amount bank withdrawal (Thanks @Encoded)


      Fix Screen#isInViewport


      Fix Game#isInViewport (Thanks @Encoded)


      Call onBreakEnd for ListenerManager Breaking Listeners (Thanks @Encoded)


      Fix Prayer#getPrayerPoints NumberFormatException (Thanks @JoeDezzy1)



      Note: If you are using LG, please restart both the RS client and TRiBot.
        • Thanks
        • Like
      • 28 replies
    • This release will:

      Fix LG for both OSBuddy and RuneLite


      Fix issue where the resizable client isn't able to be made smaller (Thanks @JoeDezzy1)


      Fix detection of the logout game tab when resizable mode and side panels are enabled (Thanks @JoeDezzy1)


      Add initial support for Sentry to allow us to identify and easily debug exceptions happening with all TRiBot users


      Add methods to determine if the bank is actually loaded, and not just the overarching interface (Thanks @wastedbro)



      Upcoming updates:

      Improved CLI support


      Full Sentry support


      Much more
        • Like
      • 64 replies
    • This release will:

      Fix NPE in Camera API (Thanks @wastedbro)


      Update deposit box interface ids (Thanks @Encoded)


      Add various bank methods (Thanks @wastedbro)


      Banking#getWithdrawXQuantity


      Banking#getDefaultWithdrawQuantity


      Banking#arePlaceholdersOn




      Fix resizeable minimap bug (Thanks @wastedbro)


      Remove Java 8 requirement


      Please note: TRiBot is not yet fully compatible with Java 10+




      Fix the break handler issues by ensuring the break handler thread never gets paused


      Fix broken settings hooks



      Upcoming updates:

      Improved CLI support


      Much more



      Note: If you are using LG, please restart both the RS client and TRiBot
        • Like
      • 68 replies
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...