Everything posted by PolishCivil
-
Reflection vs Injection
You can simply avoid this situation. Btw i remember back in days sending raw packets to fagex and this was my first bot i ever used and never got banned lol. (been using this like week tho xD) This is funny.
-
Reflection vs Injection
Reflection: ClassLoader.getClass(client).getField©; myPlayer = Classloader.getClass(client.cb): myPlayer.ds; myPlayer.dc; Injection: ByteCodeLibrary -> addMethod -> client -> getFieldC() return c; ByteCodeLibrary -> addWrapper -> Player -> getPositionX return cb.ds; getPositionY return cb.dc; Reflection security: ClassLoader checks,reflection disabling etc Injection security: Class code chec, method invoke checks, trace checks etc. Conclusion: Nowadays everything is simple to use and can be used 100% safe. Why nowadays? Because we know tons of fagex shit. New bot way: Deobfuscate client and live edit code : Awesomeness Guys please... not method matters the api matters how we actually use injection/reflection. How we move mouse, how fast we react etc.
-
Inventory Monitor [Keep live track of your items!]
Know that feel i havent sleep for 50h ;s When i code i have hallucinations about type parameters smoking weed with me.
-
Inventory Monitor [Keep live track of your items!]
Wait... @Override public int onLoop() throws InterruptedException { new Thread(new Runnable() { @Override public void run() { if (monitor != null && !client.getBank().isOpen() && monitor.hasChanged()) { monitor.onChange(); } } }).start(); return gRandom(800, 300); } ] new Thread(new Runnable() { @Override public void run() { if (monitor != null && !client.getBank().isOpen() && monitor.hasChanged()) { monitor.onChange(); } } }).start(); public void run() { if (monitor != null && !client.getBank().isOpen() && monitor.hasChanged()) { monitor.onChange(); } } What?
-
Can't see my local scripts?
What api you use? Do you add good annotation? You don't need to jar your scripts, you can move your build path to /scripts/ folder (classes)
-
Testing out new antiban method.
inb4 ban after 15min
-
Should i share my GUI api (JavaFX)?
ye, i just hooked pixel data.
- Who is gunna win world cup?
-
AIOFighter development, JAVAFX, WEBWalking, etc
- Should i share my GUI api (JavaFX)?
Im asking you guys cuz idk if someone actually need it. INFO: So basically you can make your gui in java fx which looks cool (alot better than awt imo). But at start there might be problem with syncing your gui with script/states because for example if you want to use fxml loader (the .fxml files) with controller class, each time you load your gui with fxloader it makes your controler unique (new instance) so if you for example want to make 1 controler for whole gui with all childs you wont succeed with JavaFX API (i think, I've been searching on google for solution - no results) So generally use of my api is : FXGUI - FXGUIContextBuilder: FXGUIContext: FXGUIController: This is your main controller, which you share between childs like: ^ this is main gui ^and exact one for gui childs Now, if you want to open new child u simply: "Region preview" is just new frame title. "regionview.fxml" is the fx design file for my region preview. So generally you can store FXGUIContext somewhere in your script, and after closing your main gui you can use it as settings holder like; fight(){ npc.getForName(script.context.choosedNpcName).interact("Attack"); }- OSBot 1.8.13 and 2.1.9
Wow, this won't change anything.- Quick Equipment Class for newest update
Nah, I bet fagex just simply sends actions and child's data with equipmeint interface request.- Quick Equipment Class for newest update
You can also check if you are wearing weapon w/o opening equip interface. But current api doesnt provide required thing : interface settings. int[] interfaceSettings = (int[]) Class.forName("es", false, client.instance.getClass().getClassLoader()).getField("a").get(null); interfaceSettings[843] != 0; Also i bet we can get everything else like cape, helm... Cuz model renderer must have this info.- PricedItem class - Track items gained, and their value.
Eclipse: Ctrl + a & Ctrl + Shift + F Intellij: Ctrl + Alt + L Also u can mix it with: package dependencies.api; import dependencies.api.listeners.ATInventoryListener; import org.osbot.script.Script; import java.util.ArrayList; import java.util.Arrays; /** * @author Xavier */ public class ATInventoryTracker implements Runnable { private Script script; private int[] ids, stacks; private int updateRate = 200; private final ArrayList<ATInventoryListener> listeners; private boolean running = true; private boolean ignoreName; public ATInventoryTracker(Script script) { super(); this.script = script; listeners = new ArrayList<>(); } public void start() { new Thread(this).start(); } public void addListener(ATInventoryListener listener) { if (listener != null) { listeners.add(listener); } } public ArrayList<ATInventoryListener> getListeners() { return listeners; } @Override public void run() { do { try { if (ids == null || stacks == null) { ids = script.client.getInterface(149).getChild(0).getInv(); stacks = script.client.getInterface(149).getChild(0).getInvStackSizes(); } else { int[] new_ids = script.client.getInterface(149).getChild(0).getInv(); int[] new_stacks = script.client.getInterface(149).getChild(0).getInvStackSizes(); //forgot about moved :p I just need added atm for (int i = 0; i < ids.length; i++) { if (new_ids[i] == ids[i] && new_stacks[i] == stacks[i]) { continue; } if (new_ids[i] != ids[i]) { if (ids[i] - 1 != -1) { dispatchRemoved(i, ids[i] - 1, stacks[i]); } if (new_ids[i] - 1 != -1) { dispatchAdded(i, new_ids[i] - 1, new_stacks[i]); } } else if (new_stacks[i] != stacks[i]) { int difference = new_stacks[i] - stacks[i]; if (difference > 0) { dispatchAdded(i, ids[i] - 1, Math.abs(difference)); } else { dispatchRemoved(i, ids[i] - 1, Math.abs(difference)); } } } ids = Arrays.copyOf(new_ids, new_ids.length); stacks = Arrays.copyOf(new_stacks, new_stacks.length); sleep(updateRate); } } catch (Exception e) { e.printStackTrace(); } } while (running); } public void stop() { running = false; } public void setIgnoreName(boolean ignoreNames){ ignoreName = ignoreNames; } private void sleep(int updateRate) { try { Thread.sleep(updateRate); } catch (InterruptedException ex) { //ignore } } private void dispatchRemoved(int slot, int id, int stack) { for (ATInventoryListener listener : listeners) { listener.itemRemoved(slot, id, stack); } } private void dispatchAdded(int slot, int id, int stack) { for (ATInventoryListener listener : listeners) { listener.itemAdded(slot, id, stack, ignoreName ? null : script.client.getInventory().getItemForId(id).getName()); } } private void dispatchMoved(int fromSlot, int toSlot, int id, int stack) { for (ATInventoryListener listener : listeners) { // listener.itemMoved(fromSlot, toSlot, id, stack); } } }- Show me your workstate.
Nice calc- Show me your workstate.
Attention to all users xavier is green hippo, because he use crt from nokia- what happens when you snort powdered alcohol
I snort powdered sugar.- Show me your workstate.
Yea lol... You thought I hold there water to drink? Jeez what a stupid question- Show me your workstate.
Bitch please.- Show me your workstate.
XD i bought everything from scripting ;3- Show me your workstate.
@deff very nice ;O\!- Show me your workstate.
Guess how my looked 15 min ago.- Show me your workstate.
^^ mine (inb4 picture iz bad)- Looking to learn something new / good book.
Buy atmega8 and make diode blink. (my first code ever created) There is book C for microcontrollers in my country so search for sth like this.- Scripting VS. Other Coding?
Cuz iOS is for rich ppl! - Should i share my GUI api (JavaFX)?