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
  • Try asking for help in the chatbox
  • Batko

    • Posts

    • Joined

    • Last visited

    About Batko

    Recent Profile Visitors

    The recent visitors block is disabled and is not being shown to other users.

    Batko's Achievements

    1. Hey, thanks for the quick reply. I wouldn't say that it is wrong or broken. It did the stuff it was supposed to do. But I find it a bit tedious if you want to experiment with setups as you would have to manually enter all the settings again (loading the profile just starts the script immediately instead of populating the fields that were set before). It has a bunch of scripts that I havent tested all yet, but to me it feels a bit clunky to set up as I'm mostly running stuff through the GUI. When it comes to the agility and fighter scripts I tested, I was a bit disapointed with the behavior compared to how my local scripts perform. Again, not saying that the scripts are broken, just saying that I expected to see and "feel" a bit more "premium" from a 100$ script compared to my local ones. @ZawyIs it possible to get a refund, as I have barely used the product
    2. Date Purchased: 21 November 2022 Order #234969 Script Purchased: Dreamy AIO Skiller Elite Script Creator: @Zawy Reason for refund: Found the navigation of the scripts a bit chunky with the GUI. Also disliked that it wasn't possible to load the settings, change them and then start the script. I have a bunch of own local scripts that in comparison to this seems to be performing in a similar manner, so I wasn't really impressed by the scripts tested here (fighter and agility). Desired outcome: refund to the original payment method.
    3. I'm following the example in: to construct custom web nodes for dungeons. The example works fine for the Edgeville dungeon, but when I try to add it to Lumbridge castle basement or Wizard's tower basement, it doesn't work. The node gets added (seen through the debugger tool), but when I try to walk to a tile in the dungeon it does nothing (the execute method never triggers).. If i select the node and execute it, it works. Spent too many hours on this now, can't wrap my head around why Edgeville works but not this.. I only change the tiles... Minimum working example below: public class Quester extends AbstractScript { public Util u = null; // Define state to keep track of which part of the tutorial we are at int wip = 0; public void onStart() { NodeAdder a = new NodeAdder(this); if(a.addNodes()) log("Added"); } public void onExit() { log("Closing down."); } @Override public int onLoop() { log("..."); // This makes the player to execute the node which in my case is 6069... // AbstractWebNode wb = getWalking().getWebPathFinder().get(6069); // wb.execute(getClient().getMethodContext()); // This does nothing getWalking().walk(new Tile(3108,9576,0)); sleep(1000); return 0; } } class NodeAdder { private AbstractScript script; public NodeAdder(AbstractScript script){ this.script = script; } public boolean added(){ // Check tile inside wizards tower return script.getWalking().getWebPathFinder().getNearest(new Tile(3108,9576,0), 15) != null; } public boolean addNodes(){ if(added()) return true; //the node closest to the entrance to our dungeon (wizards tower) AbstractWebNode node = script.getWalking().getWebPathFinder().getNearest(new Tile(3108,3164,0), 15); //our dungeon entrance, which is the wizards tower AbstractWebNode entrance = new DungeonEntrance(3105, 3162, WebNodeType.BASIC_NODE); //the basic node after the entrance. AbstractWebNode insideDungeon = new BasicWebNode(3108,9576); CustomWebPath customPath = new CustomWebPath(false,entrance,insideDungeon); //give the custom path a start node, which is the node nearest to your entrance. customPath.connectToStart(script.getWalking().getWebPathFinder().getId(node)); script.getWalking().getWebPathFinder().addCustomWebPath(customPath); return added(); } } class DungeonEntrance extends AbstractWebNode { public DungeonEntrance(int x, int y, WebNodeType type) { super(x, y, type); } @Override public boolean isValid(){ return true; } @Override public boolean execute(MethodContext ctx){ ctx.log("Executing dungeon entrance"); if(ctx.getLocalPlayer().distance(super.getTile()) > 8){ return super.execute(ctx); } GameObject trapdoor = ctx.getGameObjects().closest("Ladder"); if(trapdoor != null){ if(trapdoor.interact("Climb-down")){ ctx.sleepUntil(()->ctx.getLocalPlayer().getY() > 9000, Calculations.random(2000,3000)); } } return ctx.getLocalPlayer().getY() > 9000; } @Override public boolean forceNext(){ return true; } @Override public String toString(){ return "Dungeon node"; } }
    4. Hi, I've learned that custom web nodes are quite powerful when writing your own script functionality, see e.g.: This is a very nice example to use if you want to extend your walking functionality to a dungeon since the Y position of all tiles jump across >9000 and you can add a node to become a bridge between the two. My question: Is it possible to extend this tool to also add nodes for different elevations? Examples are areas as e.g., Lumbridge mill (three floors for same X,Y area of tiles), Lumbridge castle/bank, etc... Since the thread above uses AbstractNode, the API only considers the X,Y positions of the tiles and not the Z position. I'm interested in knowing if it is possible to use Dreambot's walking functionalities and custom webnodes in a smart way to get these connections working? Or, does one simply need to write some own logic for accessing areas with similar X,Y tiles but varying Z tile. Hopefully my question is clear enough.
    5. Thread is old, but trying to revive it with a new question. Since the web nodes only accept the tile X and Y positions, this works well for dungeons who have their Y positions jump to >9000. How about if you want to do a custom web node for walking through different stories, e.g., different Z values but around the same X-Y tile areas.
    6. Let me know how much u want for it in USD/BTC
    7. Continuing on the answer above, I've figured out that the API should be able to take in arguments in the following way mg.start("test1", "arg1","arg2","arg3"); it compiles, runs, and starts the other script, however, the onStart method doesn't recognise the arguments I'm passing. Anyone else had this problem? Is it perhaps because I'm not VIP yet, and command line arguments/ starting scripts with arguments is for VIP and higher users?
    8. Just figured out it is possible to start the other script through ScriptManager mg = new ScriptManager(getClient().getInstance()); LocalLoader ll = new LocalLoader(); for (java.lang.Class<? extends AbstractScript> script : LocalLoader.getScripts()) { if (script.getName().equalsIgnoreCase("Woodcutter")) { mg.start(script); } } where this loops through the local scripts and find the specified script name to start. However, my next question is how to pass any arguments while starting it this way? Assuming the onStart method has been overridden to accept arguments.
    9. Sure, but this still forces you to manually start each script, unless you program a bash script to run send your command line arguments.
    10. Hi, Assume you have two scripts, e.g., a Woodcutting and a Mining script. Is it possible to write another class which uses these given however you want it? I've read around the API and it seems that it is possible, however, I'm unsure where to start. Example: @ScriptManifest(author = "You", name = "Selector", version = 1.0, description = "Execute script orders", category = Category.WOODCUTTING) public class Selector extends AbstractScript { public void onStart() { log("Starting up"); } public void onExit() { log("Closing down."); } @Override public int onLoop() { //1: Run WC script until custom termination //2: Run Mining script until custom termination //Kill the selector script return -1; } } The reason I want to do this is that it leaves modularity to the original scripts since they can run stand-alone, but also provide flexibility to run from a main controlling script.
    11. Ok, cool. Thanks for the feedback. I guess I'll set them up first and see if they get easily picked off while running. And maybe later consider adding simple anti-ban things like moving the mouse off screen etc.
    12. Hi, I'm currently working on a solo project to set up a very general bot with a lot of functionalities. I've already written a Tutorial island script from scratch that is general and can finish wherever the player starts. Q: Are anti-bans worth it / needed / useful at all while writing scripts? I've seen people say it's useless, while others say it's needed? Should I consider random mouse movement functionalities, rotating camera randomly with keys, etc., or just focus on having a more "realistic" interaction with the world. Meaning for instance not clicking on a rock/tree that re-spawned as soon as it appears on the screen. Is there any consensus about what to focus on to keep scripts undetectable? I'm not talking about being able to run the script for 24hrs straight ban-free, but X hrs a day for a longer period of time.
    13. Thanks Nezz. The widget solution worked just fine!
    • 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.