Leaderboard
Popular Content
Showing content with the highest reputation on 09/10/22 in all areas
-
By Czar 99 in one go!!! Multiple 99s in 1 sitting!!!!! Features List - Supports 4 locations, with randomisation options (Randomise all, randomise north-only, randomise south-only) - Supports taking the axe for woodcutting, if not already equipped/held - Supports taking all equipment including Tinderbox, knife, unfinished potions from crates - Prepares for matches early, and waits around the brazier if you selected to light them (For +25 initial points) - Supports waiting at the safezone after winning the match (at 500 points) to preserve food - Supports training agility via the northern agility steppe - Knows exactly which external actions interrupt your current action, and plans accordingly - Identifies cold snaps and either avoids them completely, or randomises between avoiding and tolerating them - Allows you to fletch logs before burning them for a more balanced experience gain - Choose to optionally switch to other sectors if pyromancer is dying - Identifies pyromancer health, brazier repaired, brazier lit at all times - Knows exactly how many points our current inventory holds (in terms of burning logs) - Gets 1-50 firemaking: locked to maximum of 50 firemaking, and locked to Grand Exchange only. - Buys a player-owned-house via the Varrock Estate agent if you don't already own one (Optional) - Identifies if the account has visited Zeah before, and plans ahead. - Will travel to Zeah by ship to unlock it for newer accounts (Highly useful for goldfarming!) - Resupplies food, jewellery and teleports via the Grand Exchange - Teleports to Grand Exchange supported: Ring of wealth, Varrock teleport tab, Varrock spell (runes only!), Amulet of glory, Home teleport (Lumbridge/Edgeville) - Teleports to Wintertodt Camp supported: Games necklace, walking - Allows you to filter and join matches when a certain % of the game is already active, so wait for next match if below X% - Either holds onto crates, banks them or opens them - up to you! - Supports choosing your own food, choosing when to eat (eat %), choosing minimum to leave match for, and amount to withdraw - Upgrades to pyromancer gear when applicable - Identifies when you get a Phoenix pet - Buys warm clothing that your account is able to wear, filters by skill requirement. - Stop notifications tab (similar to Perfect Fighter): allows you to choose when to stop the bot, or when to alert/notify you - Stop the script at ANY moment in time, after X minutes/hours/seconds, after X wins, after X item gained (pet too!), after X experience gained & more! Buying Warm Clothing (4 missing pieces)! Results1 point
-
1. Follow this tutorial! Script Development Setup 2. Create your base class script inside of src directory @ScriptManifest(name = "Example", author = "Example", version = 1.0, info = "Example", logo = "") class OsbotScriptTemplate : Script() { override fun onLoop(): Int { TODO("Not yet implemented") } } 3. Build your project. (Build > Build Project) 4. You should see a lib folder with a bunch of kotlin library in it 5. Go back to File > Project Structure > Artifacts, assuming you followed step one correctly, you should already have an artifact. If not, go back to step 1! 6. On the right side under Available Elements you should see KotlinJavaRuntime , right click on this, and select extract into Output Root 7. Rebuild your project, and you should now be able to run your Kotlin based script!1 point
-
Found a bug in the "Task & Schedule" tab under "Settings". The "Delay attacks" and "Face Camera Upwards" check boxes are stacked on top of each other.1 point
-
1 point
-
I will take a look, yep it's experimental but I will try my best EDIT: Submitted v234.1 should work better, update automatically goes live within 24hr1 point
-
Hi man, I just tried the blackjack bonus plugin (I know its 'experimental') but it didn't do anything for me when I started it. Chose location, had a bandit trapped there but it just idled. Any idea why?1 point
-
I've noticed that sometimes it doesn't seem to handle restoration well or at all, just noticed it shut down in edge bank. said it was out of unpowered orbs ( its not i had 1k in bank) but it was like 5hp and 30 run. log only said shutting down cause no orbs left. also sometimes it seems to not replace glory, even if it pulls the new one out of bank. it will stop with just a new glory in inventory, and the uncharged one equipped. Either issue could be lag related, maybe an extra check for each could be implemented?1 point
-
1 point
-
@sexyrussian Probs some shit like this private GraphicsObject getGraphicsObjectOnPosition(final Position position) { final List<GraphicsObject> graphicsObjectList = getGraphicObjects().getAll(); if (position == null || graphicsObjectList == null || graphicsObjectList.isEmpty()) { return null; } return graphicsObjectList.stream().filter(g -> g != null && g.getPosition() == position) .findFirst().orElse(null); }1 point
-
https://osbot.org/forum/topic/170211-script-factory-request-if-string-is-not/1 point
-
Added trial gl sir Agility pyramid is finished, currently in testing stage I can't wait to release it publicly so we can all use it1 point
-
1 point
-
1 point
-
1 point
-
Hey @Czar Was just wondering if there are still plans to add support for the agility pyramid, or if that's on hold for now? Thanks, Spills1 point
-
1 point
-
1 point
-
[INFO][Bot #1][09/04 09:09:52 PM]: Script has been terminated! [INFO][Bot #1][09/04 09:09:52 PM]: [INFO][Bot #1][09/04 09:09:52 PM]: Reason: [INFO][Bot #1][09/04 09:09:52 PM]: (Withdraw-item): Your bank is missing your chosen withdraw-item: 5698 (Dragon dagger(p++)), please sort this out and re-run the script. Make sure not to include any junk items on your banking withdraw-list. [INFO][Bot #1][09/04 09:09:52 PM]: [INFO][Bot #1][09/04 09:09:52 PM]: Script Perfect Fighter has exited! [INFO][Bot #1][09/04 09:09:52 PM]: (Withdraw-item): Your bank is missing your chosen withdraw-item: 5698 (Dragon dagger(p++)), please sort this out and re-run the script. Make sure not to include any junk items on your banking withdraw-list. [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.4 on our list: Cannon barrels (10) x 1 [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.5 on our list: Cannon base (6) x 1 [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.6 on our list: Cannon stand (8) x 1 [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.7 on our list: Cannon furnace (12) x 1 [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.8 on our list: Cannonball (2) x 0 [INFO][Bot #1][09/04 09:09:52 PM]: Looking for item no.9 on our list: Teleport to house (8013) x 5 all of this was in my inventory already1 point
-
1 point
-
Hahaha, unfortunately I am not. Just a busy man trying to grind to the early game with a little external help. I am actually following that guide, its at ironman.guide now haha.1 point
-
If you've messed with OSBot's CLI, perhaps in creating a bot farm, you've probably messed with the -script CLI argument and using Script.getParameters() in your code. Or maybe you're just looking into automating your OSBot scripts; this guide will show you everything you need to know What are Script Parameters? Parameters are a single String sent to your script via the command line (shell) using the -script CLI argument. It is accessed using Script.getParameters, which may return null if no parameters were provided. You'll need to learn a little bit of String manipulation in Java in order to work with them effectively. Here's some basics to get you started: // To get multiple delimited parameters, use split: // (Warning: you cannot use the comma or pipe character!) String[] params = getParameters().split(";"); // To parse an integer or float from a String, use: int itemsToUse = Integer.parseInt(params[0]); float ratio = Float.parseFloat(params[1]); // Test string equality - use .equals() not == if (params[2].equals("foobar")) log("Foobar mode enabled"); Requirements In order to use -script you must: Provide your OSBot forum credentials via -login Specify an account to log in with via -bot. If your script logs in manually (i.e. you use -allow norandoms and/or disable the auto login random solver then implement your own login handler like Explv's LoginEvent) then you should provide dummy credentials here eg. -bot LOGIN:PASS:0000 Restrictions You cannot use a comma (,) or pipe (|) character within a script name or parameter at all. Doing so may cause various runtime errors like java.lang.NumberFormatException or java.lang.NullPointerException. Most shells have a length limit for commands. See the section below. Escaping Spaces, Double Quotes and Backslashes (with Example) If you are using either spaces ( ), double quotes (") or backslashes in your script name or parameters, you'll need to escape these, potentially twice: once for OSBot, and once for your shell. I'll give an example below for the a script named My "Test" Script with parameters My "Test" Parameters. The example content will be in blue and inserted content will be green. If your script name contains either spaces ( ), double quotes (") or backslashes (\): Insert a backslash (\) before all existing double quotes or backslashes. My \"Test\" Script Surround the whole thing with double quotes that are not escaped with a backslash. "My \"Test\" Script" Do the process above (1) for your script parameters if they contain spaces, double quotes, backslashes: "My \"Test\" Parameters" Combine the script name and parameters with a colon in the middle. "My \"Test\" Script":"My \"Test\" Parameters" This is the raw string to be passed via the command line. If you are using a shell utility or sub-process library that takes an array/list of CLI args, stop here! Such a utility or library should do the next escaping step for you. If you are writing your own .bat/.sh scripts manually, continue on. Before every double quote (") or backslash (\), insert another backslash. \"My \\\"Test\\\" Script\":\"My \\\"Test\\\" Parameters\" Surround the entire thing with double quotes again. "\"My \\\"Test\\\" Script\":\"My \\\"Test\\\" Parameters\"" You're done! Yes, it's ugly, but it should work! Put the result directly after -script in your shell and you're good to go. Here's a combined example: java -jar OSBot.jar -login username:password -bot login:password:bankpin -script "\"My \\\"Test\\\" Script\":\"My \\\"Test\\\" Parameters\"" Once again, this runs a script with the following ScriptManifest name My "Test" Script: @ScriptManifest(name = "My \"Test\" Script", ...) public class MyTestScript extends Script { // .. } Using Files Instead of Script Parameters Sometimes shells can have surprisingly low limits on command length. If you expect your script input to be long (such as JSON, CSV or XML), you should be loading these from file instead instead of stuffing them in script parameters! These data formats may also contain incompatible characters (comma and pipe). Here's a few short examples to get you started (this isn't a guide on reading text from files in Java...) String filePath = getDirectoryData() + File.separator + getParameters(); File fp = new File(filePath); BufferedReader in = new BufferedReader(new FileReader(fp)); String line; while ((line = in.readLine()) != null) { // Process one line of input. } in.close(); If you want the entire file contents read into a string, you can use Files.readAllBytes and Paths.get: String filePath = getDirectoryData() + File.separator + getParameters(); String fileContent = new String(Files.readAllBytes(Paths.get(filePath))); Finally, using files has an added benefit of being able to provide default input data when script parameters aren't available (ie. the script was run via the Script Selector window): String filePath = getDirectoryData() + File.separator + (getParameters() != null ? getParameters() : "myDefaultInput.txt")); // Use the filePath as above And as usual, catch FileNotFound and other IOExceptions as necessary. Using files is a much better way to load in data than a lengthy script parameter! Additional Tips If you're having trouble escaping things properly, perhaps it's better to question if including the escaped content is even necessary at all. In other words, if it's easier to not name scripts using spaces, quotes or backslashes, then do that instead of escaping. Simplicity is better than being smart. For a good user experience, provide sensible defaults if parameters aren't provided. If your script requires input and can't come up with defaults, try using the Java Swing framework to show a UI (see Explv's AIO if you need an example). DON'T USE COMMAS (,) OR PIPE CHARACTERS (|) AS DELIMITERS. They aren't allowed and will break OSBot! If you need to delimit a parameter string, try a healthy low-carb alternative of a semicolon.1 point