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
  • Search the Community

    Showing results for tags 'script'.

    • Search By Tags

      Type tags separated by commas.
    • Search By Author

    Content Type


    Forums

    • Requests
    • DreamBot
      • Announcements
      • Client Support
      • Site Support
    • Community
      • General Discussion
      • Runescape
      • Spam
      • Applications
    • Scripts
      • SDN Scripts
      • Local Scripts
      • Private Scripting Shops
      • Script Requests
      • Script Management
    • Development
      • Scripting
      • Programming
    • Market
      • Vouchers / Store Credit
      • Middleman Services
      • Gold Exchange
      • Membership Sales
      • Account Sales
      • Item Exchange
      • Services
      • Graphics
      • Other
    • Management
      • Disputes
      • Appeals
      • Archive

    Product Groups

    • Donator
    • VIP
    • Sponsor
    • Scripts
      • Agility
      • Combat
      • Construction
      • Cooking
      • Crafting
      • Fletching
      • Firemaking
      • Fishing
      • Herblore
      • Hunter
      • Magic
      • Mining
      • Farming
      • Prayer
      • Ranged
      • Runecrafting
      • Slayer
      • Smithing
      • Thieving
      • Woodcutting
      • Money Making
      • Mini-Games
      • Quests
      • Other

    Find results in...

    Find results that contain...


    Date Created

    • Start

      End


    Last Updated

    • Start

      End


    Filter by number of...

    Joined

    • Start

      End


    Group


    Website URL


    Discord


    Skype


    Location


    Interests

    Found 7 results

    1. KhalDrogonerr

      HELP!!!!

      hi, I need help, I've been going crazy for hours, I used AI and everything that could help me but I can't figure it out.....I made this simple script to mine and I wanted to implement delivery to the mule with the socket .....the problem that does not change state after 5 minutes does not activate the DELIVER _TO_GE state I don't understand why! import org.dreambot.api.methods.container.impl.Inventory; import org.dreambot.api.methods.container.impl.bank.Bank; import org.dreambot.api.methods.interactive.GameObjects; import org.dreambot.api.methods.interactive.Players; import org.dreambot.api.methods.map.Area; import org.dreambot.api.methods.walking.impl.Walking; import org.dreambot.api.script.AbstractScript; import org.dreambot.api.script.Category; import org.dreambot.api.script.ScriptManifest; import org.dreambot.api.wrappers.interactive.GameObject; import org.dreambot.api.utilities.Sleep; import org.dreambot.api.methods.map.Tile; import java.io.*; import java.net.Socket; import java.io.OutputStream; import java.io.Serializable; import org.dreambot.api.methods.container.impl.bank.BankMode; import org.dreambot.api.methods.trade.Trade; import org.dreambot.api.wrappers.interactive.Player; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.List; import java.util.stream.Collectors; @ScriptManifest(author = "KhalDrogonerr", name = "Iron", version = 1.0, description = "Simple Iron Miner", category = Category.MINING) public class Worker extends AbstractScript { private static final String MULE_IP = "localhost"; private static final int MULE_PORT = 55555; private long lastDeliveryTime=0; public static class DeliveryData implements Serializable { private int ironOreCount; private String playerName; private String muleName; public DeliveryData(int ironOreCount, String playerName, String muleName) { this.ironOreCount = ironOreCount; this.playerName = playerName; this.muleName = muleName; } public int getIronOreCount() { return ironOreCount; } public String getPlayerName() { return playerName; } public String getMuleName() { return muleName; } } State state; Area bankArea = new Area(3009, 3355, 3018, 3354); Area ironOre = new Area(2977, 3231, 2967, 3243); Area GE = new Area(3155, 3499, 3174, 3480); public enum State { WALKING_TO_BANK, USE_BANK, BANKING, TAKE_PICKAXE, FINDING_ORE, MINING_ORE, DELIVER_TO_GE, DELIVER_TO_MULE } public void onStart() { log("Welcome to Simple Mining Script."); log("If you experience any issues while running this script please report them to me on the forums."); log("Enjoy the script!."); } @Override public int onLoop() { switch (getState()) { case WALKING_TO_BANK: if (bankArea.distance(Players.getLocal().getTile()) > 1) Walking.walk(bankArea.getCenter().getRandomized()); break; case USE_BANK: if (!Bank.isOpen() || !Players.getLocal().isMoving()) { GameObject bankBooth = GameObjects.closest("Bank booth"); bankBooth.interact("Bank"); Sleep.sleepUntil(Bank::isOpen, 1000); return 1000; } break; case BANKING: if (Bank.isOpen()) { if (Inventory.isFull()) { Sleep.sleep(2000, 5000); Bank.depositAllExcept(item -> item.getName().equals("Bronze pickaxe")); if (!Inventory.contains("Iron ore")) { Bank.close(); } } } break; case TAKE_PICKAXE: if (!Inventory.contains("Bronze pickaxe")) { if (Bank.open()) { if (Bank.contains("Bronze pickaxe")) { Bank.withdraw("Bronze pickaxe", 1); Sleep.sleepUntil(() -> Inventory.contains("Bronze pickaxe"), 6000); } else { log("Bronze pickaxe not found in bank!"); } Bank.close(); } } break; case FINDING_ORE: if (ironOre.distance(Players.getLocal().getTile()) > 1) Walking.walk(ironOre.getCenter().getRandomized()); break; case MINING_ORE: if (!Players.getLocal().isAnimating() && !Players.getLocal().isMoving()) { GameObject ironRocks = GameObjects.closest(t -> t.getName().equalsIgnoreCase("iron rocks") && ironOre.contains(t.getTile())); if (ironRocks != null && ironRocks.interact("Mine")) { Sleep.sleepUntil(() -> Players.getLocal().isAnimating(), 4000); } } break; case DELIVER_TO_GE: log("Sto entrando nello stato DELIVER_TO_GE"); // Verifica se il bot è già arrivato al Grand Exchange if (!GE.contains(Players.getLocal().getTile())) { // Se il bot non è al GE, muovilo verso il GE Walking.walk(GE.getCenter().getRandomized()); break; // Esce dallo switch e attende il prossimo ciclo onLoop } // Se il bot è arrivato al GE, controlla se il mulo è presente if (muleIsAtGE()) { // Se il mulo è presente, passa allo stato di consegna al mulo state = State.DELIVER_TO_MULE; } else { // Se il mulo non è presente, rimane nello stato di consegna al GE log("Mulo non trovato al GE, rimango in attesa..."); } break; case DELIVER_TO_MULE: long currentTime = System.currentTimeMillis(); if (lastDeliveryTime == 0 ||currentTime - lastDeliveryTime >= 300000) { try (Socket socket = new Socket(MULE_IP, MULE_PORT)) { OutputStream outputStream = socket.getOutputStream(); ObjectOutputStream objectOutputStream = new ObjectOutputStream(outputStream); Bank.setWithdrawMode(BankMode.NOTE); Bank.withdrawAll("Iron ore"); int ironOreCount = getIronOreCount(); Player mule = getMuleName(); if (mule != null) { DeliveryData deliveryData = new DeliveryData(ironOreCount, Players.getLocal().getName(), mule.getName()); objectOutputStream.writeObject(deliveryData); objectOutputStream.close(); outputStream.close(); lastDeliveryTime = currentTime; mule.interact("Trade with"); Sleep.sleepUntil(() -> Trade.isOpen(), 5000); Trade.acceptTrade(); } else { state = State.DELIVER_TO_GE; } } catch (IOException e) { e.printStackTrace(); } } break; } return 500; } private State getState() { long currentTime = System.currentTimeMillis(); if (Inventory.isFull() && !bankArea.contains(Players.getLocal().getTile())) { return State.WALKING_TO_BANK; } else if (Inventory.isFull() && bankArea.contains(Players.getLocal().getTile()) && !Bank.isOpen()) { return State.USE_BANK; } else if (Bank.isOpen() && Inventory.isFull()) { return State.BANKING; } else if (!Inventory.contains("Bronze pickaxe")) { return State.TAKE_PICKAXE; } else if (!Inventory.isFull() && !ironOre.contains(Players.getLocal().getTile())) { return State.FINDING_ORE; } else if (!Inventory.isFull() && ironOre.contains(Players.getLocal().getTile())) { return State.MINING_ORE; } else if (lastDeliveryTime == 0 ||currentTime - lastDeliveryTime >= 300000) { if (muleIsAtGE()) { return State.DELIVER_TO_MULE; } else { return State.DELIVER_TO_GE; } } return state; } private int getIronOreCount() { return Inventory.count("Iron ore") + Bank.count("Iron ore"); } private boolean muleIsAtGE() { Tile botPosition = Players.getLocal().getTile(); return GE.contains(botPosition); } private String getLocalHostIPAddress() { try { InetAddress localHost = InetAddress.getLocalHost(); return localHost.getHostAddress(); } catch (UnknownHostException e) { log("Errore durante la ricerca dell'indirizzo IP locale: " + e.getMessage()); return null; } } private List<Player> getPlayers() { return Players.all().stream() .filter(p -> p != null && p.exists() && p.isOnScreen() && p.getTile().distance(Players.getLocal().getTile()) < 20) .collect(Collectors.toList()); } private Player getMuleName() { List<Player> players = getPlayers(); if (players != null) { for (Player player : players) { if (player.getName() != null && !player.getName().equals(Players.getLocal().getName())) { return player; } } } return null; } }
    2. Hi, I wonder if someone is able to make a script that is able to trade noted Marrentil in Rimmington to get them unnoted and light the Incense Burner in the Player Owned House. And ofcourse keep doing this. This is very handy for making double xp by offering bones to the Gilded Altar! I am also willing to pay for it
    3. Status: Currently unavailable. Reopened 11/30/2020. Hello, now that I have some more free time and with the release of DB3 I've decided to give this a try again. TOS: I can decline any order I don't like or want to work on. I will not use or resell your private script. I will work on all the features described by you. I will maintain your private script for 1 month for free. This only includes bug fixes, no additional features will be added. I will need an account to work on the script and test/maintain it. I will try to give you an accurate price before I start working on the script, based on the described features. In some cases, when I'm not too familiar with the method, I might charge more or less, depending on how long it takes me to finish the script. Most of the time I will require a payment in advance. If I fail to deliver the script for whatever reason, the full amount will be refunded to you. *If your script idea is related to quests: I will not work on custom quests, I'd rather add them to my SDN quester instead. However if my SDN quester supports the required quest and you own the SDN quester, I can work on your request. *I won't work on anything shady (selling off banks - phishing, scamming) or account creation (the process itself).
    4. It's been over for awhile but they just string you along thinking you need to change your methods, 'it's bc you don't have VIP, or a private script', when in reality those things barely matter and do nothing to stop bans. I came up with my own ideas from the get-go, implemented my own antiban, had a private script made for my method, residential IP's, reasonable hours--you name it. They'll try and blame it on something you did wrong, something you could have done better, "gotta keep trying and find what works", that's all BS and they know it. It really comes down to the fact that it's more profitable for them to sell people scripts who think they're about to run the next big botfarm than it ever will be for them to farm gold themselves, because the ban rates are so insanely high right now. Oh and once your IP is flagged it's over, you can't bot on that IP again, doesn't matter the account. This is why these forums are so dead-- most people have already figured this out a long time ago and given up. I paid almost $100 to a private scripter here from the site, Gastro, who subsequently made my script way faster than he said it would take prior to me paying (1 hour as opposed to 24), and then asked for more money to update it with a simple UI (this took him 5 mins) because it wasn't working as intended in it's current state. Script was rushed and very sloppy. I asked for one very minor thing to be changed to help speed the bot up immensely and scripter said he would add it then never responded again after that, I guess because I wasn't paying for a 3rd time to update the same script. They're friendly and helpful prior to you paying, afterwards they could care less, it's onto the next customer. Then you have people like this, who have realized even if they get one idiot to pay this price, it's covered half their rent for the month, and all they have to do is a few hours of work and a little copy pasting from previous scripts, and ta-da! Your private bot farm script is ready to go! This was one hilarious response I received when inquiring about an extremely simple script to grind superior dragon bones. He said he wasn't interested in the project if it wasn't going to include the extras (the extra $370). The only reason they contest these types of posts is to continue their business and keep you thinking you just need a newer script, a newer idea, or a better way to do what you're doing. This couldn't be further from the truth.
    5. Overview B14's Potato Farmer is a simple script that focuses on player and ban evasion using simple functions to increase the usage of this script and reduce the possibility of your bot account being detected or flagged. Features Player evasion functionality If a player comes near your while you are farming potatoes, you will automatically evade the player by swapping worlds. This is to reduce the chance of you being reported/detected. World hopping This script will automatically hop between 50 low activity worlds when necessary World limits This bot determines how many potatoes it will pick in a single world before it swaps worlds. Combined with the DreamBot break feature, this should help the evasion of detection quite a bit. Automatic Camera Movement The script will occasionally adjust the camera to help evade automatic bot detection Auto running Once you are over 5% running energy, the bot will toggle running on to help increase the efficiency of this bot Auto banking All potatoes collected will be ran and deposited to the nearest bank Dedicated farming area Currently the bot will automatically travel to a specific potato field and will only function there. This may change in the future. Detailed paint Your screen will display the current action of the script, the rough amount of total potatoes collected, the rough amount of potatoes collected in your current world, and the maximum amount of potatoes allowed to be collected in your current world This is my first script so in the script's current state (Version 1.0) most of the functionality is bare bones. I would like to eventually advance the logic in the script to improve it's evasion techniques as well as improve it's efficiency. Released for free on the SDN Repository
    6. Hi all. I've got an AutoClicking bot that I will send the code for for 07 gold. Created in Powershell. Easy as copy and pasting into PowerShell, entering the minimum second interval, and the maximum. Great code, ban-free. Great autoclicker. Let me know if you are interested.
    7. What is git? Git is a version control system for files. It can be used for an array of things but is most commonly used with programming. Some media companies use git as a way to revise, edit, and archive written articles before publishing them. Git allows for easy version control, feature management, and collaboration with other developers. Where to get git? You can download git from here -> https://git-scm.com/ download and install it for your desired operating system. If you are running linux sometimes it is preinstalled so I would check that. Getting Started Once installed open up a command line (I am using Git Bash) and type the command below to check that git was installed correclty. git --version Requesting an SDN Git Repo This part only applies if you are looking to publish scripts on the SDN. All of these commands will work with other services such as Github and GitLab. I personally use Github for personal projects and my private scripts. So now that we have git up and running in our development environment we need a way to store our SDN scripts so that they can be published. Head over to the Dreambot’s SDN page and you can find the request form under Scripter Panel -> Git Repo Request (or click this link) .https://sdn.dreambot.org/scripters/repo This page is where you request your git repository for the SDN. This process can take a couple of days so request it sooner rather than later. You can check the status of this by looking at Scripter Panel -> Requests and it should list the status of your repo there. Once it is created you will be sent a URL, and a password for the repository. Don’t lose them. Setting up the repository Navigate to where you want to place the repository Dreambot has provided you. In my case I have a folder on my desktop called mySDNScripts. Since this is an existing repository we will want to do what is called a “clone”. Which simply copies an existing git repository to another location. We will need that URL and password provided to us in the SDN request. The command will look like this. git clone [email protected]:yourOwnUsername.git Smash that enter key and it may ask a question about authenticity just type “yes”. You will then be prompted for the password you were assigned. Copy paste that into the password field. *Side note - Iif you don’t have a ton of linux experience password fields in linux will not show an * or dot while filling them out. It will be invisible. Just hit enter after you type/copy it.* And BOOM! We have cloned our repository from the Dreambot git server to our computer! Adding a script to your repository. Opening the repository (in my case Yeeter01) this is where you will create your scripts. Each script will be its own subfolder in Yeeter01. So in my case the only two scripts I have actively publish on the SDN at the moment are my AccountYEETER and YEETPicker AIO. These subfolders are referred to as “Modules”. *Side note - These modules do not have to match the name of the published script ex.) aiopicker is YEETPicker AIO. It is probably best practice to make those match tho.* *Second side note - Make sure your module names have no spaces or special characters.* So I wrote an example script called “YEETGitTut” that I would like published to the SDN. I create a folder (module) in my repository Yeeter01 called YEETGitTut. Inside this folder is my src folder. This is where my code will be stored. This script is a simple script consisting of one file in YEETGitTut/src called MyLeetScript.java. For larger scripts all your packages, resources would also be listed under your src/ folder. These changes however are not yet saved. Going back up to the root of your git directory (Yeeter01) and checking the status will return a list of created, deleted, and modified files or folders. git status So you can see everything under YEETGitTut/ needs “staged” or in other words selected to be added to the next commit. This is done in order to allow users to select the files they want to commit. If you are working on multiple scripts at once this prevents you from tying multiple scripts to a single commit. Super handy incase one of them breaks in the future and you need to rollback the changes. git add --all We have added the files to the staging area for our next commit so we must now commit these files. To our local git repository with a message we can refer to in the future using the -m param. git commit -m "Inital commit for YEETGitTut" After committing you can recheck the status of the repository and you will notice that we are 1 commit ahead of the git repository Dreambot host on their servers also referred to as the “Origin”. This means we need to provide them with the changes we made on our “master” by pushing the code back to them. git push origin master Checking git status afterwards we can see that both copies of our git repository are up to date! The hard part is now over! Publishing your script! So we wrote the script, committed and pushed the script the Dreambot’s git repository what's left?!?!?! Well now you need to make a forum post for the script you are wanting to publish. This is the place you should go into detail about what your script does, any features it has etc etc. Publish this forum thread under the sub section of the forum called “SDN Scripts” and find the section that your script falls under. Once completed hit publish. It will be hidden until approved. Now go to Dreambot’s SDN page -> Scripter Panel -> New Script (or click the link) https://sdn.dreambot.org/scripters/scripts/new This is the form for publishing your script. Script Form Name and Category - This should just match what you put in your ScriptManifest. Gallery - Lets users see a preview of your script. I just reuse the images I put in my forum thread for this. ThreadUrl - Copy paste the URL of the forum thread you just made and pate it here. This allows users to view the additional information and features of your script you wrote in the thread. Type - Unless you are ranked Scripter+ or above you can ONLY PUBLISH FREE SCRIPTS. Read more about the ranks and how to obtain them here -> https://dreambot.org/forums/index.php?/topic/4892-list-of-forum-ranks/ Repository Name - This is the name you requested it to be called. When you clone your repository it is that root folder we worked in. In my case Yeeter01. Module Name - This is the script you want to publish. In my examples case we created a script called “YEETGitTut” put that name exactly in that folder. Just like that we are DONE! SMASH that submit button! At this point you can check the progress of your script being published in the Scripter Panel -> Request area. This process can take a couple of days due to code review. While this might sound complicated once its set up the work flow is basically boiled down to -> Edit Script -> "git add" all the files you want to commit -> "git commit -m" all the files you added -> "git push origin master" to send your code to the Dreambot git server(origin). The biggest pro of git in my personal book is it allows me to transfer code from computer to computer with ease. Traveling for work and using multiple computers this can be a pain but with git and services such as Github/GitLab as well as Dreambot's SDN I can work on projects/code form anywhere on any machine I can install git on. More resources~ This was long winded and I really glanced over a lot of the capabilities of git. If you would like more in depth knowledge I HIGHLY suggest watching this crash course. It covers the fundamentals and breaks down things really well and gets into some cool git usages. Git Crash Course - YouTube video (30ish mins reallllllly good) https://www.youtube.com/watch?v=SWYqp7iY_Tc SDN Upload Guidelines Guide by apec using SmartGit GUI Git is a highly used tool if you need assistance or have any errors be sure to just google it first. Chances are 1000000000 other people have ran into the same error you are having. If you need any direct assistance feel free to hit me up on Discord (username can be found on my profile) or on the forum. * I wrote this in one go if I screwed anything up lmk will edit to correct it. *
    ×
    ×
    • 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.