Jump to content
View in the app

A better way to browse. Learn more.

OSBot :: 2007 OSRS Botting

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PolishCivil

Members
  • Joined

  • Last visited

Everything posted by PolishCivil

  1. Glad I made your life more interesting than it is.
  2. PolishCivil replied to Joseph's topic in Snippets
    Aint that just 1 config?
  3. oracle service bus
  4. .... Nice troll but... Changing my nickname WITHOUT my permissions is breaking the fucking rules am i right? He said YOU Will not someone on forums I will change i havent gave any perrmisions to change my nick. Jeez ban me or remove i dont want the be related with this shit, i wanted 1$ for my lunch ;( Im so poor
  5. omg... hide yourself in bush
  6. I WANT @^#*&!@#^!*&@#^(&*!@^#(!*&@^#(*@!^#(*&@!^#
  7. l2 bot i i've been banned once when i used free flax spinner from osbot for 23h. I really doubt u can get banned this fast lol.
  8. There is huge difference between botting and farming you noobs.
  9. System.currenttimemilis() returns current syste time in miliseconds So: onstart() -> startTime = System.currenttimemilis() onPaint() -> timeElapsed = System.currentTimeMilis() - startTime; Then u can do long second = (timeElapsed / 1000) % 60 long minute = (timeElapsed / (1000 * 60)) % 60 long hour = (timeElapsed / (1000 * 60 * 60)) % 24
  10. Yo mama is like toll gate.
  11. NUBS UNBAN ME<!@#!@<#
  12. Fucking morons. Rick roll is porn, gz.
  13. PolishCivil posted a topic in Spam/Off Topic
    Fuck you!
  14. It will search every interface which is slow.
  15. import dependencies.api.ATMethodProvider; import org.osbot.rs07.api.ui.MediaType; import org.osbot.rs07.api.ui.RS2Interface; import org.osbot.rs07.api.ui.RS2InterfaceChild; import org.osbot.rs07.utility.Condition; import java.util.Arrays; /** * Created by PolishCivil on 5/16/2014. */ public class Questions { private static final int[] ANSWER_INTERFACES = new int[]{230, 228}; private static final int[] QUESTION_INTERFACES = new int[]{243, 242, 244, 241}; private static final String[] CORRECT_ANSWERS = new String[] { "Nobody", "Don't tell them anything and ignore them.", "Talk to any banker in RuneScape.", "Nothing", "Memorable", "Politely tell them no and then use the 'Report Abuse' button.", "Don't tell them anything and inform Jagex through the game website.", "No, it might steal my password.", "Don't give him my password.", "To recover my account if i don't remember my password.", "Nowhere", "No", "To help me recover my password if I forget it or if it is stolen.", "Recovering your account if you forget your password.", "Game Inbox on the RuneScape website." }; public static Condition getAnySosQuestion(final ATMethodProvider methodProvider) { return new Condition() { @Override public boolean evaluate() { for (int interId : QUESTION_INTERFACES) { RS2Interface rs2Interface = methodProvider.interfaces.get(interId); if (rs2Interface != null && rs2Interface.isValid()) { RS2InterfaceChild child = rs2Interface.getChild(0); if (child != null && child.getDisabledMediaType() == MediaType.NPC_HEAD && child.getDisabledMediaId() > 0) { return true; } } } for (int interId : ANSWER_INTERFACES) { RS2Interface rs2Interface = methodProvider.interfaces.get(interId); if (rs2Interface != null && rs2Interface.isValid()) { return true; } } return false; } }; } public static boolean solve(ATMethodProvider methodProvider) { RS2Interface validInterface = null; for (int interId : QUESTION_INTERFACES) { RS2Interface rs2Interface = methodProvider.interfaces.get(interId); if (rs2Interface != null && rs2Interface.isValid()) { RS2InterfaceChild child = rs2Interface.getChild(0); if (child != null && child.getDisabledMediaType() == MediaType.NPC_HEAD && child.getDisabledMediaId() > 0) { validInterface = rs2Interface; break; } } } if (validInterface != null) { methodProvider.dialogues.clickContinue(); return solve(methodProvider); } else { for (int interId : ANSWER_INTERFACES) { RS2Interface rs2Interface = methodProvider.interfaces.get(interId); if (rs2Interface != null && rs2Interface.isValid()) { validInterface = rs2Interface; } } if (validInterface != null) { RS2InterfaceChild[] children = validInterface.getChildren(); for (RS2InterfaceChild child : children) { if (Arrays.asList(CORRECT_ANSWERS).contains(child.getMessage())) { methodProvider.clickOnChild(child); return solve(methodProvider); } } } else { return false; } } return true; } }
  16. PolishCivil replied to breefie's topic in Tutorials
    lel anyways this is an example : http://www.benf.org/other/cfr/
  17. PolishCivil replied to breefie's topic in Tutorials
    Please dont use JODE shit... there are many others better decompiles with built in some deobfuscation techniques.
  18. Jeez this is soo old.
  19. Its position's polygon. (bad)
  20. public static short[][] getScreenCoordinates(Client client, int gridX, int gridY, int gridZ, Model model) { int cameraX = client.getCameraX(); int cameraY = client.getCameraY(); int cameraZ = client.getCameraZ(); int sinP = Utilities.CAMERA_SIN[client.getCameraPitch()]; int cosP = Utilities.CAMERA_COS[client.getCameraPitch()]; int sinY = Utilities.CAMERA_SIN[client.getCameraYaw()]; int cosY = Utilities.CAMERA_COS[client.getCameraYaw()]; if (model.getTriangleCount() < 0) { return new short[0][]; } short[][] screenCoords = new short[model.getVerticeCount()][]; for (int n = 0; n < model.getVerticeCount(); n++) { int x0 = model.getVerticesX()[n] + gridX; int z0 = model.getVerticesZ()[n] + gridY; int y0 = model.getVerticesY()[n] + Utilities.getTileHeight(client.getBot(), x0, z0, gridZ) - cameraZ; int n15 = (z0 -= cameraY) * sinY + (x0 -= cameraX) * cosY >> 16; z0 = z0 * cosY - x0 * sinY >> 16; x0 = n15; n15 = y0 * cosP - z0 * sinP >> 16; z0 = y0 * sinP + z0 * cosP >> 16; y0 = n15; if (z0 >= 50) { x0 = 260 + (x0 << 9) / z0; y0 = 171 + (y0 << 9) / z0; if (x0 >= 0 && y0 >= 0) { screenCoords[n] = new short[2]; screenCoords[n][0] = (short) x0; screenCoords[n][1] = (short) y0; } } } return screenCoords; } + public static Polygon getBoundingBox(Client client, Model model, int gridX, int gridY) { short[][] screenCoordinates = Utilities.getScreenCoordinates(client.getBot(), gridX, gridY, client.getPlane(), model); Polygon temp = new Polygon(); int minX = Integer.MAX_VALUE; int minY = Integer.MAX_VALUE; int maxX = 0; int maxY = 0; for (int triangleId = 0; triangleId < model.getTriangleCount(); triangleId++) try { int triangleA = model.getTrianglesA()[triangleId]; int triangleB = model.getTrianglesB()[triangleId]; int triangleC = model.getTrianglesC()[triangleId]; short[] pointA = screenCoordinates[triangleA]; short[] pointB = screenCoordinates[triangleB]; short[] pointC = screenCoordinates[triangleC]; if (pointA != null && pointB != null && pointC != null) { int aX = pointA[0]; int aY = pointA[1]; int bX = pointB[0]; int bY = pointB[1]; int cX = pointB[0]; int cY = pointB[1]; if (aX < minX) { minX = aX; } if (bX < minX) { minX = bX; } if (cX < minX) { minX = cX; } if (aY < minY) { minY = aY; } if (bY < minY) { minY = bY; } if (cY < minY) { minY = cY; } //maxes if (aX > maxX) { maxX = aX; } if (bX > maxX) { maxX = bX; } if (cX > maxX) { maxX = cX; } if (aY > maxY) { maxY = aY; } if (bY > maxY) { maxY = bY; } if (cY > maxY) { maxY = cY; } } } catch (ArrayIndexOutOfBoundsException var13) { } temp.addPoint(minX, minY); temp.addPoint(minX + (maxX - minX), minY); temp.addPoint(maxX, maxY); temp.addPoint(minX, maxY); return temp; }

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.