Leaderboard
Popular Content
Showing content with the highest reputation on 06/17/14 in all areas
-
Maldesto Features: 16 Random Phrases Drops ALL inventory items 20 random Emotes Video: Download: http://up.ht/1pDFYtP8 points
-
Well. now thats weird. I have to say. Weirdest post I've ever seen.7 points
-
I've moved a few things and made a few new sections, so a few more things would be open and clear. I've moved the VIP/Sponsor/Donor down to the bottom of the forums. I've removed the pending section of the disputes, made 0 sense to have that instead of just 1 section for all disputes. I've made a few more adjustments, and more to come I'm open to any suggestions. Let me remind you, if you don't use a certain section for example, the market section, you can hover over the top right hand corner and click the - and hide it. So it will look like this, and hitting the + button will bring it back.4 points
-
be a man and jack off with your friends in the room3 points
-
3 points
-
Hey, before i start I've seen this one already on forums, as i remember our BrainFree mentioned it. Because my engrish is really bad, i will try to provide links instead writing how it works. So here it is one more time: Convex hull is generally tightest area of point set. So what we want to do is to calculate 2D points of our object, entity and make convex hull for it for perfect bounding polygon, it will be really helpfull on fighter scripts or any script that needs to interact alot, it will fail less time. Bounding box you were using: What we want to accomplish: As you see we have some blind spots on basic rect bounding box: Red - hulling will reduce them. Yellow - hulling will not reduce them (actually the one i want to show) It is not really necessary to remove yellow ones so w/e. The thing is we want to shink area a little bit to be more precise when interacting. So the algorithm is like this: /** * Making convex hull around points. * * @param points - the points * @return - the convex hull points points. */ public static short[][] hull(short[][] points) { int upperSize = 2; int lowerSize = 2; int pointsSize = points.length; short[][] lUpper = new short[pointsSize][2]; short[][] lLower = new short[pointsSize][2]; short[][] xSorted = points.clone(); Arrays.sort(xSorted, new Comparator<short[]>() { @Override public int compare(short[] o1, short[] o2) { return Integer.compare(o1[0], o2[0]); } }); lUpper[0] = xSorted[0]; lUpper[1] = xSorted[1]; lLower[0] = xSorted[pointsSize - 1]; lLower[1] = xSorted[pointsSize - 2]; for (int i = 2; i < pointsSize; i++) { lUpper[upperSize] = xSorted[i]; upperSize++; while (upperSize > 2 && !rightTurn(lUpper[upperSize - 3], lUpper[upperSize - 2], lUpper[upperSize - 1])) { lUpper[upperSize - 2] = lUpper[upperSize - 1]; upperSize--; } } for (int i = pointsSize - 3; i >= 0; i--) { lLower[lowerSize] = xSorted[i]; lowerSize++; while (lowerSize > 2 && !rightTurn(lLower[lowerSize - 3], lLower[lowerSize - 2], lLower[lowerSize - 1])) { lLower[lowerSize - 2] = lLower[lowerSize - 1]; lowerSize--; } } short[][] result = new short[upperSize + lowerSize - 1][2]; System.arraycopy(lUpper, 0, result, 0, upperSize); System.arraycopy(lLower, 0, result, upperSize, lowerSize - 1); return result; } /** * Checks if points turns right. * * @param a - the 'a' point. * @param b - the 'b' point. * @param c - the 'c' point. * @return */ private static boolean rightTurn(short[] a, short[] b, short[] c) { return (b[0] - a[0]) * (c[1] - a[1]) - (b[1] - a[1]) * (c[0] - a[0]) > 0; } (I ddnt made it as i remember but i cant find real author) What do you need to read to understand this algorithm: http://en.wikipedia.org/wiki/Convex_hull en.wikipedia.org/wiki/Graham_scan /** * Converting points to polygon. * * @param points - the - the points. * @return the polygon based on points. */ public static Polygon toPolygon(short[][] points) { Polygon result = new Polygon(); for (short[] point : points) { result.addPoint(point[0], point[1]); } return result; } How to implement : First we need to get screen coords: http://osbot.org/osbot2_api/org/osbot/rs07/api/util/GraphicUtilities.html#getScreenCoordinates%28org.osbot.rs07.Bot,%20int,%20int,%20int,%20org.osbot.rs07.api.model.Model%29 Then we make hull based on points: hull(screenCoordinates); Example for dumbs: Entity litara = npcs.closest("Litara"); short[][] screenCoordinates = Calculations.getScreenCoordinates(this, litara.getGridX(), litara.getGridY(), litara.getZ(), litara.getModel()); short[][] hull = Calculations.hull(screenCoordinates); g.draw(Calculations.toPolygon(hull));3 points
-
3 points
-
Going best case scenario isn't what should be done. Just do 1 account running shrooms for 5 hours a day = 6 dollars and run like 3 times in 30 days and you make your money back x2 - 2 bonds, so you still profit in 3 proggies 1% chance of ban botting 6 hours 3 times a month. Yet you still are acting as you aren't making money. One time scripts make the market crash faster, and everything. You paying a small fee is worth it in the long run. More scripter updates and dedication to fixing it because if they don't people won't renew.3 points
-
You just have to try it. You can play it with random people online too. If someone posts pictures of it ill put it in OP, but pictures don't really describe much to the game. http://team.forsvarsmakten.se/english/# Post your best times, with a list of your teammates ! Some teammates I found to be good in this game were to be: @Acerd @Caam @Catastrophe @Pain See if they'll play with you If you think you can make it to the list, Message me2 points
-
2 points
-
2 points
-
err wanking is completely normal infact its prob wierd that u don't... WIERDO2 points
-
Can confirm @Nick likes men with big dicks. Harasses me over Skype on a daily basis, very unprofessional.2 points
-
2 points
-
2 points
-
2 points
-
1 point
-
This may be the script to beat SSF. Guess it's time to quit while I'm ahead1 point
-
You are supposed to beat your meat a minimum of 5 times a hour... <-------- If you need help boobs.1 point
-
Possible solutions: Mulit area: A filter all npcs that are interacting with you, when you're not interacting any and you're under attack. A result - the npc you want to attack first. B filter all npcs that are interacting you, when you're attacking npc. B result - now you have npc that you want to attack next (after killing the current one) Single area A simply filter all npcs that are interacting with you when you're not interacting any and you're under attack. A result - the npc you want to attack, or run away from it. You want to make such things in other thread.1 point
-
1 point
-
Looks pretty nice, it's a little hard to tell that's corvo at first. Took me a little bit of looking at it to see what the render actually was. I like the color though1 point
-
If the client is not 100% flawless upon friday then I'm going to be extremly disappointed. Delay after delay is really annoying, when you say we have to delay it to make sure its flawless, then please live by your words because flawless is not just functional, its perfection.1 point
-
1 point
-
@Proryan thing: /** * Checks if we are hovering this entity. * * @param atMethodProvider - the atMethodProvider instance. * @param entity - the entity. * @return whether we are. */ public static boolean isHovering(ATMethodProvider atMethodProvider, Entity entity) { Model model = entity.getModel(); short[][] screenCoordinates = GraphicUtilities.getScreenCoordinates(atMethodProvider.bot, entity.getGridX(), entity.getGridY(), entity.getZ(), model); for (int triangleId = 0; triangleId < model.getTriangleCount(); triangleId++) { int triangleA = model.getVertexXIndices()[triangleId]; int triangleB = model.getVertexYIndices()[triangleId]; int triangleC = model.getVertexZIndices()[triangleId]; short[] pointA = screenCoordinates[triangleA]; short[] pointB = screenCoordinates[triangleB]; short[] pointC = screenCoordinates[triangleC]; short[][] points = new short[][]{pointA, pointB, pointC}; Point position = atMethodProvider.mouse.getPosition(); if (Calculations.contains(points, position.x, position.y)) { return true; } } return false; } @Contains is from Polygon.contains /** * Checks if point is inside polygon. * * @param points - the polygon points. * @param x - the point x to check. * @param y - the point y to check. * @return whether it is. */ public static boolean contains(short[][] points, double x, double y) { int hits = 0; int npoints = points.length; int lastx = points[npoints - 1][0]; int lasty = points[npoints - 1][1]; int curx, cury; // Walk the edges of the polygon for (int i = 0; i < npoints; lastx = curx, lasty = cury, i++) { curx = points[i][0]; cury = points[i][1]; if (cury == lasty) { continue; } int leftx; if (curx < lastx) { if (x >= lastx) { continue; } leftx = curx; } else { if (x >= curx) { continue; } leftx = lastx; } double test1, test2; if (cury < lasty) { if (y < cury || y >= lasty) { continue; } if (x < leftx) { hits++; continue; } test1 = x - curx; test2 = y - cury; } else { if (y < lasty || y >= cury) { continue; } if (x < leftx) { hits++; continue; } test1 = x - lastx; test2 = y - lasty; } if (test1 < (test2 / (lasty - cury) * (lastx - curx))) { hits++; } } return ((hits & 1) != 0); }1 point
-
Don't they also need a custom mouse handler? SInce osbot api mouse.move only goes to a rectangle.1 point
-
Current onetime-fee for Shrooms = 7.99$ 1 account running Shrooms for 10 hours will get the user around 12$. 1 account running Shrooms for 10 hours * 30 days * 10 = 3000$ You guys are making shitloads of money for running a script you didn't write on a client you didn't write. Don't bring up effort when all you do is buy and start scripts. Please. Edit: sorry if that sounded harsh1 point
-
You make a thread for your script request here: http://osbot.org/forum/forum/181-sdn-upload-requests/ Once you have your script on the SDN you will get the rank! After than you can apply to be a OSD, or just do really well and get it rewarded to you. Then you go for scholar when you really know your shit. That's the OSBot ranking system in a nutshell, hope it helps.1 point
-
1 point
-
1 point
-
1 point
-
1 point
-
1 point