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

ScriptsForMains first attempt :)

Recommended Posts

Posted (edited)

Scripter Application Format

1) Snippets: 



2) Tutorials:  



3) Randoms/updates submitted:
I'm assuming this is for stuff like mouse data? I don't have anything like that.  


4) Scripts available to the public:

BirdHouseRun [Source] (Link to thread)

BotSplashing [Source] (Link to thread)

PotBuyer [Source] (Link to thread)



5) Short biography / Coding Experience: 

I started botting Runescape back in the original game right before they took away the wilderness. I really liked botting and took some AP programming classes to try to write my own scripts but lost interest in the game when they took the wilderness out... I went to college, got into the hard sciences, and continued learning to program since it would be useful to my research. I never took higher-level CS classes, but got through intro courses in a few different languages (Matlab, java, and C++) and took some "Problem Solving in Programming" classes.  My graduate school coursework included some machine learning type stuff.  This year I started thinking about alternative career paths outside of academia and computer sciences came up.  

I wasn't in too many classes this quarter and my work-life isn't super demanding. I decided to get back in to botting as a way of practicing coding and getting back in to Runescape. I chose to return to Tribot since the community was a good community when I started botting again a couple years back.    



6) Reasons why you feel you deserve Scripter: [1-3 short paragraphs]

I've put in a lot of time to learning the API and improving my coding.  I think I've improved incredibly fast with the help of @Einstein, @Naton@HeyImJamie, and the host of other incredible programmers in the Tribot community.  I know my code isn't perfect yet, but I figure I'm good enough to apply without it being insulting. If I get denied, I'll know what I need to work on.  

I use dynamic wait times + interface updating (thanks to Naton). I null check and properly check if the interfaces are substantiated (thanks to Einstein).  I'm new to scripting but I have over 100 users on my scripts.  While I have no way of knowing if all these users are happy with my scripts, I haven't gotten any complaints and am assuming that no news is good news.  


7) What you plan to provide the community with: [1-3 short Paragraphs]
I was inspired by the help I've received learning to script and am hoping to pay it forward.  I've put my api on Github so people don't have to struggle for as long as I did with simple stuff like JPanes or ABC2.  I know a lot of the scripting applications out there link to Github pages that are no longer available, or have their scripts taken off. I understand why people do this.  I understand that no one wants to put hours of work into something to have someone else come along and use it for free.  I however am using  too much that I haven't written myself to be selfish. I won't be removing my open source material and am hopeful that my Github can help push newbies in the right direction.  I know it isn't perfect, but I'll be updating it as I learn more.  

Along with open-sourcing my API, I plan on releasing a lot of free scripts.  My overall plan is to release a plethora of quality scripts that are good enough to trust using on your main account.  I'll be implementing "safe" strategies for leveling (like using birdhouses for hunter instead of competing for resources with players, training in areas with very low traffic and logging out at the first site of a player, etc etc).  These scripts will be available as a set of AIO premium packages that switch between my various scripts based off current levels, quest points, etc.  I'm hopeful that the scripts are good enough as free standalone scripts to entice people into buying the AIO packages.   

Of course, life happens and it's possible that I'll never get around to a bunch of AIO premium scripts...  If not, at least the community is left with a bunch of high-quality free scripts :)


8) Do you agree to continue to not only update, but provide more free, open sourced scripts to the community? [YES/NO]

Of course

Edited by ScriptsForMains

Share this post


Link to post
Share on other sites

As much as I love the enthusiasm and improvement you've shown, I cannot yet confidently vote yes with your current code. The main things that make me hesitant are lack of script framework and organization:

xjRbgfr.png

This could be replace by an enum and be much cleaner, expandable, and easier to understand.

 

 

incorrect OOP practices:

twgac6V.png

You need to store this Interface object from Interfaces#get, then substantiate check/use that object instead.

 

 

and just overall confusing/improperly structured code:

Uv7274i.png

Without reading your API I have no idea what this is supposed to do; passing around the same boolean object like this is not only confusing but can cause unintended bugs.

 

 

I do hope you'll decide to stick around and continue to learn, but for now I'm going to have to vote no.

  • Like 1

Share this post


Link to post
Share on other sites

I agree with @Netami about your enthusiasm, but our scripter standards are a bit higher than the code you've shown.

A few points:

  1. You need better separation of functionality. You should utilize the tools that object oriented programming gives you. Currently, you solve many problems with ifs and loops, when they could be better solved via classes, enums, polymorphism, or simply methods with return types.
  2. While clean code is less important for scripting, we would still like to see at least some demonstration of your knowledge in that domain. After all, if we know that you can produce clean code, we know that you'll be in a much better spot when your code breaks and you need to update it, therefore making you less of a liability if you have high-profile scripts.
  3. The scripts you've shown, while great, are too small. I currently don't know if you can handle a script with a lot of functionality. I consider that a requirement for scripter rank. Even if it's a simple AIO miner or WCer, as long as it reacts to various situations.
  4. I'd like to see at least some GUI code. It doesn't have to look pretty, but GUIs are important for scripts with any sort of complexity.

 

That being said, you're on the right track. If you need help, be sure to post in the TRibot Discord or in the relevant sections in the forums. If I see them, I'll try to respond when I can.

 

Good luck, and thank you for applying! :)

  • Like 1

Share this post


Link to post
Share on other sites

I completely agree with what Netami and Wastedbro have said. Your enthusiasm is great, and it would be nice to have a some new faces writing scripts. I hope to see you continue working on improving your skills.

Share this post


Link to post
Share on other sites

  • 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...