Leaderboard
Popular Content
Showing content with the highest reputation on 11/28/19 in all areas
-
Hey all, this tutorial will teach you how to enable push notifications in your script using the Telegram platform. What is Telegram? Telegram (Wikipedia) is a massively popular, fast, secure and private messenger with 200 million monthly active users (as of March 2018). It provides a straightforward yet powerful chat bot API that rivals Discord and WhatsApp. (I'd argue it's way better than both -wink-) Oh, and it's free. Step 1: Telegram Client and Account Obviously, you'll need a Telegram to account to use it. Sign up for Telegram using your phone number (you cannot use email/password) via the Telegram Web client, or via the Android/iOS app (use the links on telegram.org). This should be a no-brainer. Concerned about privacy, or don't want to give out your actual phone number? That's good - you can use a Google Voice phone number instead of your own. They never call, text or sell your phone number - except once to verify ownership of the number. Other alternatives include freephonenum.com, but beware: if you lose a disposable number and get logged out it's game over. Here's a guide from TechJunkie on Telegram privacy and recommended settings you should use. Step 2: Getting a Telegram Bot Token and Your Chat ID The first thing you'll require is a Telegram chat bot. Every bot a single bot token used to control it. Start a conversation with the BotFather (@BotFather), who will guide you through the creation of your bot and provide you its token. First, type /start, then /newbot. The BotFather should guide you through the rest of the process of choosing a name and username. He'll end with providing the bot token. Optional: You can choose to upload a profile picture for your bot, or set the about text and description. Once you have this, you're ready to continue! Your bot token should look something like this: 1020719143:AAFy_Qq45y5bLmsZllUrsZ5yLkCvY6obNkk (FYI, this and all other tokens in this post have already been revoked, so they will not work) --> Open a chat with your bot the same way you did with BotFather - enter its username in the search bar. Type or tap /start to send your first message to your bot - don't miss this step! Nothing happens because there's no software listening on the other end. That's OK, we won't need any in order to send a message! --> Next, we're going to retrieve the chat ID between your Telegram account and the bot. By sending /start to your bot, you queue an update that contains the chat ID. To fetch this update, we'll use the getUpdates method of the bot API. Use your browser to visit the following URL and replace TOKEN with the entire bot token: The URL: https://api.telegram.org/botTOKEN/getUpdates Example: https://api.telegram.org/bot1020719143:AAGXuLpgav-feIwrQbJKYWGpwPXekeEcW0E/getUpdates The result should be a JSON object with an array of updates. One update should describe your /start message - and the chat it came from. I've highlighted mine below: 91741518. (Since this is a one-on-one chat between me and my bot, it's the same as my Telegram user ID. This similarity isn't guaranteed, though!) Don't see any updates? That means you need to send a message to your bot to produce one - see above. Once you have your Telegram bot token and the chat ID between you and your bot, continue on! Step 3: Sending a Message When you send a message on Telegram, you send it to a chat (not a user). The chat ID you got in the previous section is for a one-on-one chat between you and your bot. So how do we send a message to this chat? Good news: It's as easy as sending an HTTP request! (Baeldung has an OK-ish article on this topic) To keep the Java code simple, we send a POST to the sendMessage endpoint. Don't worry - I built a small Java class for you to use in your projects. No extra work necessary! Here it is: TelegramBot.java Below is an example script showing how to use the TelegramBot class. Be sure to open OSBot's Data directory (C:\Users\YOU\OSBot\Data or ~\OSBot\Data) and add two files - TelegramBotToken.txt and TelegramChatId.txt. Put your values from the previous section in these files. You could also paste your token and chat ID directly into your code, but this is highly discouraged. TelegramExample.java Run the script using OSBot. You should see... DING! A notification, and the message that triggered it in your Telegram client: --> Attention: NEVER put your bot token within your source code! EVER! This is a big security risk! Instead, you should load config info like this from a file located within OSBot's data directory (getDirectoryData). You can learn more at this other tutorial I wrote. The example bot script gives you a nice easy way of doing this - please use this. Bonus: Using a Telegram Channel or Group Chat If you're collaborating and would like your bot to post to a place where its messages are visible to more than just you, you can use the chat ID of a group chat or channel instead of a one-on-one conversation with the bot. In order to do this, first create a channel or group chat. Then add your bot to it via its username (Note: Make sure to add the bot as an admin if using a group chat) --> --> Using the same process as before: send a message to your group/channel. Then load /getUpdates and find the new "channel_post" or group chat message, then "chat": {"id": ... }. You might see the message from before (ignore it). This is the chat ID you want to use! Coming Soon: Uploading Screenshots If there is interest, I'll write about uploading OSBot screenshots to Telegram to view anywhere. This is more involved, so I'll only do it if there's significant interest! Conclusion Telegram is a great platform to use for messaging, even for automated scripts like OSBot's. If a bot gets a rare drop, gets PK'd or otherwise needs to get a hold of a human, this is a fantastic way to do it. Thanks for reading my guide!!7 points
-
βCzarScripts #1 Bots β Proven the #1 selling, most users, most replies Script Series on the market. Big THANK YOU to all our wonderful users and supporters over the 8 years, we couldn't have done it without you. Czar Bots have always been the Best and the most Feature-rich bots available with the most total sales in OSBot history. Come and find out why everyone is choosing Czar Bots today. β LATEST BOTS β If you want a trial - just post the script name and it will be activated after I hit 'like' on your post Requirements: hit 'like' on this thread2 points
-
*ChatGPT Supported via AltChat* Script Factory 2.0 has arrived! Now own Script Factory 2.0 forever as a one-time fee here Branched methods are now supported! Here are some key benefits of Script Factory 2.0's branched statements: - Improved code readability: Complex scripts become much simpler to read and understand. - Enhanced logic flow: Organize your code with a clear structure that makes it easier to follow the sequence of events. - Reduced redundancy: No more need for repetitive checks or excessive if-else statements. - Increased performance: Streamline your scripts for optimal efficiency and faster execution. ---------------------------------------------- Other features included in Script Factory 2.0: 1. Click to Script 2. Fatigue mode 3. Randomized mouse profiles 4. Advanced debugger 5. Ability to increase method numbers by 'X' 6. Method number debugger 7. Autosave 8. Failsafe auto logout 9. Method Number Formatter 10. Observer Mode 11. Stat Tracker Export CLICK HERE TO PAY WITH 07 GOLD! ---------------------------------------------- View Current Scripts In The Script Network: https://pposb.org/SDN/repository.php AltChat Support: Click here to find out more! Supports 95% of OSBot's Methods: Change Log Frequently Asked Questions Will I need to purchase Script Factory 2.0 if I already have Script Factory 1.0? - Just like the release of any new software, you will be required to purchase the new version. However, if you have previously purchased Script Factory 1.0, you will be able to upgrade for a discount! This new version comes packed with features and improvements that will revolutionize the way you create and run scripts! Will I lose access to Script Factory 1.0? - No! You will not lose access to the original Script Factory 1.0 if you already have purchased it; you will just no longer receive any future updates to it. Will Script Factory 1.0 still get updated? - While Script Factory 1.0 has been around since 2019, the new architecture for Script Factory 2.0 is not backwards compatible. Therefore, Script Factory 1.0 will no longer be receiving any future updates, only bug fixes. All new and future development will be strictly on Script Factory 2.0. Can I still use Script Factory Pro Edition? - Script Factory Pro Edition has been removed from the OSBot store. We have added in all Pro Edition features to Script Factory 2.0, so there is no longer a need for Pro Edition. Will my scripts I wrote on Script Factory 1.0 work on Script Factory 2.0? - Yes! All scripts created for Script Factory 1.0 will be able to be used with Script Factory 2.0. However, any scripts created on Script Factory 2.0 that contain branched statements will not be backwards compatible with Script Factory 1.0. Can I still use the Script Network on Script Factory 1.0? - Yes! The script network will still work and function the same. The only difference is now, any scripts uploaded with branched statements will have a new branch icon next to them. Those will be unavailable for download to any Script Factory 1.0 user. Do I have to use branched statements on Script Factory 2.0, or may I continue scripting how I do on Script Factory 1.0? - Branched statements are optional! You are not required to use them in your script, however I will say they make developing scripts much faster and more efficient. If I make a script on Script Factory 2.0 that does not contain any branched statements, can it be ran on Script Factory 1.0 still? - Yes! As long as you don't include any branched statements within your script, any Script Factory 1.0 user may still run it. Interested in making private Script Factory scripts to sell? Make sure you encrypt your work to protect your source! CLI Arguments: java -jar OSBOT_JAR_LOCATION -debug -login OSBOT_USERNAME:OSBOT_PASSWORD -bot RS_ACCOUNT_NAME:RS_ACCOUNT_PASSWORD:RS_ACCOUNT_BANK_PIN -script 1097:SCRIPT_NAME Script ID's: Script Factory 2.0: 1214 *Script Factory 1.0: 1097 *Script Factory Expansion: 1144 *Script Factory Pro Edition: 1163 Script Factory Encryptor: 1164 (anything with a '*' is no longer available for purchase) All scripts manually uploaded to Script Factory's Script Network will be open-sourced to all Script Factory users.2 points
-
2 points
-
Before opening the ge you should also check to see if you have the kebabs. Also the sleep you are doing when you open the ge will end before it is open since you are just waiting for the click. You should change it to wait until the ge is open. Example If (geClerk != null && geClerk.interact("Exchange") Sleep.sleepUntil(() -> getGrandExchange().isOpen()); Sorry for the formating, on my phone atm.2 points
-
And this sweet drop while testing the script for update v254.0... 52 HOUR RESULT! Hotkey List // F1 = set cannon tile // F2 = hide paint // F3 = Set afk tile // F4 = reset afk tile // F6 = Set safespot tile // F7 = activate tile selector // F8 = Reset tile selector // F9 and F10 used by the client, EDIT: will re-assign as they are no longer used by client // F11 = Set breaks tile // F12 = Reset breaks tile User Interface Banking Tab Demo (handles everything with banking) You can copy inventory (to avoid adding individual items...), you can insert item names which have Auto-Fill (for you lazy folk!) and you can choose whether to block an item and avoid depositing it in bank, ideal for runes and ammo. Looting Tab Demo (From looting to alchemy, noted/stackable items too) You can choose whether to alch an item after looting it simply by enabling a checkbox, with a visual representation. All items are saved upon exiting the bot, for your convenience! Tasking Demo (Not to be confused with sequence mode, this is an individual task for leveling) You can set stop conditions, for example to stop the bot after looting a visage, you can have a leveling streak by changing attack styles and training all combat stats, you can have windows alert bubbles when an event occurs and an expansive layout for misc. options! Prayer Flick Demo (Just example, I made it faster after recording this GIF) There are two settings: Safe mode and efficient mode, this is safe mode: Fight Bounds Demo Allows you to setup the fight bounds easily! Simplified NPC chooser Either choose nearby (local) NPCs or enter an NPC name to find the nearest fight location! Simple interface, just click! Level Task Switch Demo (Switching to attack combat style after getting 5 defence) You can choose how often to keep levels together! e.g. switch styles every 3 levels Cannon Demo (Cannon is still experimental, beta mode!) Choose to kill npcs with a cannon, recharges at a random revolution after around 20-24 hits to make sure the cannon never goes empty too! Results Caged Ogres: How does this bot know where to find NPCs? This bot will find far-away npcs by simply typing the NPC name. All NPCs in the game, including their spawn points have been documented, the bot knows where they are. You can type 'Hill giant' while your account is in Lumbridge, and the bot will find it's way to the edgeville dungeon Hill giants area! Here is a visual representation of the spawn system in action (this is just a visual tool, map mode is not added due to it requiring too much CPU) Fight Area Example (How the bot searches for the npc 'Wolf') Walking System The script has 2 main walking options which have distinctive effects on the script. The walking system is basically a map with points and connections linking each point. It tells the script where to go, and decides the routes to take when walking to fightzones. Walking system 1 This uses a custom walking API written by myself and is constantly being updated as new fightzones are added. Pros: - Updates are instant, no waiting times - More fightzones are supported Cons: - Sometimes if an object is altered, the changes are not instant - Restarting the script too many times requires loading this webwalker each time which adds unnecessary memory (there is no way to make it only load at client startup since I don't control the client) Walking system 2 This is the default OSBot webwalking API - it is relatively new and very stable since the developers have built it, but is currently lacking certain fightzones (e.g. stronghold) and other high level requirement zones. It is perfect for normal walking (no object interactions or stairs, entrances etc) and never fails. Pros: - Stable, works perfect for normal walking - All scripters are giving code to improve the client webwalker - More efficient when restarting the script since it is loaded upon client start Cons: - No stronghold support yet - Some new/rare fightzones not supported yet - If there is a game-breaking update or an unsupported fightzone, it may take some time to add/repair (less than 24 hours usually) So which system should I choose? Whichever one suits your chosen fightzone best! There really shouldn't be any problems - the sole purpose of these options are for backup and emergency purposes, if the script ever messes up there is always the next option to select. Note: If the script ever fails, there will be immediate updates to fix the walking systems! Script Queue/Bot Manager: Script ID is 758, and the parameters will be the profile name that you saved in the fighter setup! Bug Report templates: New feature request - What is the new feature - Basic description of what the script should do - Basic actions for the script: 'Use item on item' etc. For when the script gets stuck on a tile (or continuous loop): - Which exact tile does the script get stuck on? (exact tile, not 'near the draynor village') - Plugin or normal script? - Did you try all 3 walking options? Script has a logic bug (e.g. dies while safespotting) or (cannon mode doesn't pickup arrows) - What is the bug - How did you make the bug happen - (optional) recommendation for the bug, e.g. 'make the script walk back' or something - Tried client restart? - Normal script or a plugin? - Which exact setup options are enabled? Afk mode, cannon mode, etc etc.1 point
-
Want to buy with OSGP? Contact me on Discord! Detailed feature list: - Account builder mode to level your firemaking to level 50 or even higher. - Equips pyromancer gear option - Chopping and burning logs (base Option) - Relights brazier - Fletch option - Fix brazier option - Make potion and heal pyromancer when down option - Tons of food supported - Brazier swicthing when pyromancer is down - Advanced game settings to skip games, smart caluclate points, afk at certain points, ... - Bank or Open crates - Dragon axe special attack - Fletch at brazier option - Chop in safespot option - Worldhopping - CLI support for goldfarmers Custom Breakmanager: - Setup Bot and break times - Randomize your break times - Stop script on certain conditions (Stop on first break, Stop after X amount of minutes, Stop when skill level is reached) - Worldhopping - Crucial part to botting in 2023! Script queueing: - Support queueing multiple script in a row - All Khal scripts support flawless transitions in between scripts - Start creating your acc in a few clicks from scratch to multiple 99's - Flawless CLI support - Learn more here: How to use CLI parameters: - Example Usage: -script 909:ScriptFile.BreakFile.DiscordFile SAVEFILE = Saved Filename BREAKFILE = Breakmanager Filename - SAVEFILE: Save file can be created in the GUI. Navigate to the tab you want to run and press "Save As CLI file". Please choose your filename wisely (No special characters) - BREAKFILE (Optional): Breakfile can also be create in the GUI, set the breaksettings you wish to use and press "Save new CLI BreakFile". Please choose your filename wisely (No special characters) - Final form (Note that with some bot managers you do not need to specify -script 909): -script 909:TaskList1.4515breaks (With breaks) -script 909:TaskList1.4515breaks.discord1 (With breaks & discord) -script 909:TaskList1..discord1 (NO breaks & discord) Proggies:1 point
-
Buy here: Features: This script allows you to train early range levels as fast and efficient as possible or to create very strong low hp pures due to the cannon not giving hitpoints expierence! The script will setup your cannon at the desired location, refill when empty and repair it when it is broken. Once you run out of cannonballs it will pick up the cannon and end the script. You can choose from several popular preset locations (check below for a list) or set your own location via the GUI. You can save your custom locations and simply load them when starting the script again. You can choose a custom refill threshold to appear more humanlike (by default the script will refill the cannon when empty). This refers to how many cannonballs should be in the cannon to trigger the script to refill. The script will pick a random number between the boundaries you set and if your cannon has less cannonballs remaining than this number the script will refill your cannon. Script automatically upgrades ranged gear if you have them in your inventory: studded gear + coif -> snakeskin + boots and bandana -> green/blue/red/black d hides High alchemy support! NOTE: Alching makes the script interact with the game a lot more often than just refilling the cannon and waiting. So make sure you adjust your botting/breaking ratio to account for this change in activity to ensure minimal bans. Requirements: Dwarfcannon set + Cannonballs in inventory. Dwarfcannon quest completed. Start script at cannon location. 55 Magic and runes to Alch. Items that you want to alch should be put on the inventoryslot that lines up with the location of the high alch spell. How Cannoning works and why you dont need ranging pots: The Dwarf multicannon always has a maxhit of 30, regardless of your stats, equipment or boosts. This is why cannoning is so good to train early range levels. The accuracy of your cannon is based on the accuracy of your selected attackstyle (staves count as meele weapons and being unarmed counts as using a crush weapon). This means to maximize your accuracy it might be better to wear a 2H sword instead of wearing a ranged weapon, if your range level is not high enough to wear the higher level crossbows. This means that your range level/accuracy or any range boosts have zero impact on your cannons accuracy if you dont wear a ranged weapon. As mentioned your maxhit is always capped at 30 regardless of your stats, and since your succesful hits will always roll a random number between 0 and your max hit (in this case 30) using boosts only changes the accuracy of your cannon. The accuracy of your attacks is based on your attackroll (based on your equipment, stats and boosts) against the targets defense roll (which is going to be low for the monsters you cannon). Your accuracy starts off high and as a result increasing your accuracy gives you dminishing returns. Your average hit is calculated as: (Maxhit * accuracy) / 2. In practice this means using a ranging potion at 61 range with a rcb + pure setup your accuracy & exp/h will be increased by less than 1.7%. At 80 range with a light ballista and a pure setup your accuracy & exp/h will be increased by less than 1% when using a ranging potion. TLDR: Max hit of cannon is always the same, accuracy starts off high and has diminishing returns = pots are not worth it. More information can be found here: https://oldschool.runescape.wiki/w/Combat#Damage_calculating How to start this script using your own custom locations (step by step and Video guide in the spoiler): List of preset locations: Ogres east of Castle wars Ogres at the Combat Training Camp north of Ardougne Hill giants at the Shayzien graveyard on Zeah If you have any locations you would want to see added to this list just let me know! Trials: Like this post and comment to get a Trial! Trials only for VIP/Sponsor users Contact/Bug reports: If you have any specific questions or would like to report a bug please send me a detailed message on this forum. For bug reports please include details on how to reproduce the bug if possible. Pictures (post your own and I will add them here!): updates: - v1.1: added custom refill threshold - v1.2: Script automatically upgrades ranged gear if you have them in your inventory: studded gear + coif -> snakeskin + boots and bandana -> green/blue/red/black d hides - v1.3: Script will hop worlds if there is already another cannon in your world until it finds an open world (relevant when starting the script or when logging back in after a break) - v1.4: added some failsafes so script wont stop because the client loads the inventory to slow after logging in - v1.5: Added high alchemy support. - v1.6: Improved worldhopping - v1.7: small fix because of api changes1 point
-
Here's a very nice and easy to use Client/Server program. You must define you're own protocol and modify the onMessage functions to then support your protocol. MessageParser.java and Message.java must be altered to reflect your protocol (such that you can extract the required data). Note: Not fully tested, could be some problems. Let me know. https://gist.github.com/DreamLean/61b215bad3c8f839ac4c84536d67c8041 point
-
@Rick When making my Hosid Fav script I ran into this issue too. I believe what @FuryShark Said was correct but I just used. getNpcs().closestThatContains("Plough");1 point
-
1 point
-
haha, basically i figured out that it would enter the last else if statement, before running the previous one when using else if, rather than if. I will try using your snippet later and see if it works the same. Then probrably keep using that later. Only been messing with this since last night, and already made a functioning kebab buyer with GE selling1 point
-
I did something sort of like this, and that worked and i finally figured out how to work the GE too, so my script is fully working right now. Dont know if i should release it or whatever, its still lacking stuff that could be improved, but it works. Buys kebabs untill out of cash in inventory then sells it on the GE This is what i ended up doing. Else-ifs were causing some errors, due to later statements would be executed out of order if (!getBank().isOpen()) { getBank().open(); if(!getInventory().isEmpty()) getBank().depositAll(); getBank().enableMode(Bank.BankMode.WITHDRAW_NOTE); } if (getBank().contains("Kebab")) { getBank().withdrawAll("Kebab"); Sleep.sleepUntil(() -> !getBank().contains("Kebab"),5000); } if(getInventory().contains("Kebab")){ getBank().close(); } instasell("Kebab"); private void instasell(String item){ NPC geClerk = npcs.closest("Grand Exchange Clerk"); if (getInventory().contains(item) && geClerk != null && geClerk.interact("Exchange")) { Sleep.sleepUntil(() -> (getGrandExchange().isOpen()), 5000); } if (getInventory().contains(item) && getGrandExchange().isOpen()){ Sleep.sleepUntil(() -> getInventory().getItem(item).interact("Offer"), 5000); .....1 point
-
if (!getInventory().contains("Kebab")) { if (getBank().isOpen()) { getBank().enableMode(Bank.BankMode.WITHDRAW_NOTE); if (getBank().contains("Kebab")) { getBank().withdrawAll("Kebab"); if (getBank().close()) { Sleep.sleepUntil(() -> !getBank().isOpen(), 9000); } } } else { if (getBank().open()) { Sleep.sleepUntil(() -> getBank().isOpen(), 9000); } } } else { NPC n = npcs.closest("Grand Exchange Clerk"); if (n != null) { if (n.interact("Exchange")) { Sleep.sleepUntil(() -> getGrandExchange().isOpen(), 9000); } } } I'm sorry if its messy, dont got a IDE here to make it look clean CTRL + SHIFT + F on eclipse would clean this for u. U can wrap around another boolean for if the grand exchange is open on this Sleep.sleepUntil(() -> (geClerk.interact("Exchange")), 5000); Here u do a interact in a sleep, i dont think that is possible (or would be accepted as a good way of making scripts) U dont need this code either: Sleep.sleepUntil(() -> !getBank().contains("Kebab"),5000); OSBot's api will handle the wait with only the withdraw function getBank().withdraw("Kebab"); is all u need Best of luck buddy! -Rare.1 point
-
1 point
-
This is very intersting I like how you just show up on the forum and drop tutorials lol1 point
-
1 point
-
@xVirtus } else if (getBank().contains("Kebab")) { if (getBank().withdrawAll("Kebab")) { Sleep.sleepUntil(() -> (!getBank().contains("Kebab")), 5000); getBank().close(); } }1 point
-
Mod Weath hasn't tweeted anything in a while either, so I'm willing to agree with your suspicion.1 point
-
1 point
-
I've requested the script be hidden from sale temporarily, until I have enough free time to finish/release my new version1 point
-
1 point
-
Try using RS2Object instead of Entity. Entity is an interface.1 point
-
well consuming all the system resources could be flagged as a virus actually. If the bot just a null pointer exception and crashes the program. I would classify it as a virus.0 points
-
0 points
-
Well this sucks, I bought this last night then run the script for 2 hours and 57 mins with all the delays on and safety measures. I then turned it off and continued to mine in another area on my phone. This morning I tried to log on and I am perm banned.. I haven't used any other scripts before on the account.. Rip 120m bank0 points