Jump to content
Frequently Asked Questions
  • Are you not able to open the client? Try following our getting started guide
  • Still not working? Try downloading and running JarFix
  • Help! My bot doesn't do anything! Enable fresh start in client settings and restart the client
  • How to purchase with PayPal/OSRS/Crypto gold? You can purchase vouchers from other users
  • BotBuddy, Dreambot Manager SaaS [Jagex account support, True automation]


    lolwat

    Recommended Posts

    BotBuddy

    This thread is currently a work in progress.. please see the screenshots or visit the Discord listed at the bottom of the thread while I compose something accurate for the current state of this project. Now supporting Jagex account linking.

    v2.gif?ex=6607b315&is=65f53e15&hm=19a16e

    kCaNGkX.png

    image.png

    image.png

    image.png

    My Discord is here if you are interested by this project.

    Edited by lolwat
    Link to comment
    Share on other sites

    Tonight I crushed all the bugs that I've encountered..

    • dashboard will now correctly grab every instance that is running
      • windows server (all windows?) won't display the bot in Tasklist unless it's touched manually, so i've got a script to pop the client to ensure this happens
    • logs will now correctly take screenshots of the client, on demand (but with a 15 second cooldown)
    • due to so many clients running and being interacted with, bot windows were resizing themselves?
      • patched this by forcing the client to it's correct window resolution when a screenshot is requested
        • windows will be bugged out sometimes but the user will never notice as its always correctly sized when they need it to be
    • dashboard will now display if a bot needs a bond or is banned
    • suite is now fully mobile friendly, used it all day at work was quite fantastic

    Thank you for the comments. If any DB staff or reputable scripters want to give it a test out let me know..

    Link to comment
    Share on other sites

    On 11/1/2022 at 6:13 AM, lolwat said:

    Tonight I crushed all the bugs that I've encountered..

    • dashboard will now correctly grab every instance that is running
      • windows server (all windows?) won't display the bot in Tasklist unless it's touched manually, so i've got a script to pop the client to ensure this happens
    • logs will now correctly take screenshots of the client, on demand (but with a 15 second cooldown)
    • due to so many clients running and being interacted with, bot windows were resizing themselves?
      • patched this by forcing the client to it's correct window resolution when a screenshot is requested
        • windows will be bugged out sometimes but the user will never notice as its always correctly sized when they need it to be
    • dashboard will now display if a bot needs a bond or is banned
    • suite is now fully mobile friendly, used it all day at work was quite fantastic

    Thank you for the comments. If any DB staff or reputable scripters want to give it a test out let me know..

    I can test seems epic man legend.

    Link to comment
    Share on other sites

    Today I worked on some QOL and added bot/instance groups. I figured out that starting 20 bots, despite having nice dedicated hardware, will cause the CPU to go insane. Server sounded like a rocket ship for a couple minutes there.

    image.thumb.png.b5db4a21dd0247d7db5248bbe1a99352.png

    Can be stopped/started by group or as a whole. Both online and offline account sections will always have a category for "All accounts", for emergencies.

    Currently working on the page to add/modify/remove groups. They are fully customizable.

    Edited by lolwat
    Link to comment
    Share on other sites

    • 2 months later...

    I had nothing to do today but smoke up and have a party of one so I essentially completed the porting of this project from PHP to Golang.

    scheduler.thumb.png.7796a3df46588f07860e68dcf365490a.png

    proxies.thumb.png.a4a70b4d943ef0915e9fb2c08b2430c9.png

    groups.thumb.png.4863b8d9842142aaec091d0f632bbceb.png

    dash.thumb.png.1ccf21c8452d4027a1516ed0efcdf45f.png

    accounts.thumb.png.104a4dbbabb53c5af5b14b161184bd91.png

     

    nvm about this I finished it

    There is a background thread that runs and makes sure everything runs as it should, scheduling, etc.

    Example snippet

    func StartFromDbRows(rows *sql.Rows, userId int) {
    	go func() {
    		defer func(rows *sql.Rows) {
    			err := rows.Close()
    			if err != nil {
    
    			}
    		}(rows)
    
    		for rows.Next() {
    			var botId int
    			err := rows.Scan(&botId)
    			if err != nil {
    				fmt.Println(err)
    				return
    			}
    
    			botPid, logFile := StartBotFromId(userId, botId)
    			err = UpdateBotStatus(botId, botPid, logFile)
    			if err != nil {
    				fmt.Println(err)
    				return
    			}
    			time.Sleep(3 * time.Second) // mass starts wait an additional 3 seconds to make sure they get the logfile
    		}
    	}()
    }

     

    Edited by lolwat
    Link to comment
    Share on other sites

    • 3 weeks later...

    I have been upgrading the panel a little lately.

    • automatically replace banned accounts, on a per-script level
    • automatically replace finished accounts on AB's, if they report their success to logfile
    • staggering launching of instances is now possible

     

    image.png.470aee5b11a42372290fcd751e7bd650.png

    image.png.c1978620e2978cef1fd8f213361be98b.png

    image.png.7f477ca89fcf00b3e12a001fac6b7ee1.png

    Small example of the handiwork:

    if config.BannedAction != 0 {
    								Helpers.KillBot(id, customer)
    								if config.BannedAction == -1 {
    									_, err = Storage.GetDb().Exec("DELETE FROM accounts WHERE id = ?", id)
    									if err != nil {
    										fmt.Println("Daemon:", err)
    									}
    
    								} else if config.BannedAction == -2 {
    									// something but i forgot
    								} else if config.BannedAction > 0 {
    									_, err = Storage.GetDb().Exec("UPDATE accounts SET schedule = 0, proxy_id = 0, group_id = ? WHERE id = ?", config.BannedAction, id)
    									if err != nil {
    										fmt.Println("Daemon:", err)
    									}
    								}
    								fmt.Println("Daemon:", name, "has been tagged as banned")
    								botsClosed++
    							}
    
    							if Helpers.Replenish(scriptId, groupId, schedule, customer) {
    								botsStarted++
    							}

     

    Edited by lolwat
    Link to comment
    Share on other sites

    12 hours ago, lolwat said:

    I have been upgrading the panel a little lately.

    • automatically replace banned accounts, on a per-script level
    • automatically replace finished accounts on AB's, if they report their success to logfile
    • staggering launching of instances is now possible

     

    image.png.470aee5b11a42372290fcd751e7bd650.png

    image.png.c1978620e2978cef1fd8f213361be98b.png

    image.png.7f477ca89fcf00b3e12a001fac6b7ee1.png

    Small example of the handiwork:

    if config.BannedAction != 0 {
    								Helpers.KillBot(id, customer)
    								if config.BannedAction == -1 {
    									_, err = Storage.GetDb().Exec("DELETE FROM accounts WHERE id = ?", id)
    									if err != nil {
    										fmt.Println("Daemon:", err)
    									}
    
    								} else if config.BannedAction == -2 {
    									// something but i forgot
    								} else if config.BannedAction > 0 {
    									_, err = Storage.GetDb().Exec("UPDATE accounts SET schedule = 0, proxy_id = 0, group_id = ? WHERE id = ?", config.BannedAction, id)
    									if err != nil {
    										fmt.Println("Daemon:", err)
    									}
    								}
    								fmt.Println("Daemon:", name, "has been tagged as banned")
    								botsClosed++
    							}
    
    							if Helpers.Replenish(scriptId, groupId, schedule, customer) {
    								botsStarted++
    							}

     

    epic work! its cool seeing this being worked and updated still. provides inspiration. 

    Link to comment
    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
    ×
    ×
    • Create New...

    Important Information

    We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.