Developer Maxi Posted March 5, 2015 Developer Share Posted March 5, 2015 Dear community, This update took a while to round up. We have introduced a new interface system that gives full and correct access to all interfaces. We have called its class RS2Widget and its API can be accessed through the Script.widgets instance. The old system points to the new system and I hope we didn't break any scripts in the transformation, porting this wasn't easy as there are some major differences between the two systems. I can't say for sure that it has not broken any scripts. Never the less, the scripters will have to upgrade their scripts to use the new widget system, regardless of the fact whether this update affected their scripts. This update affected a rather large part of the client. It is possible that scripts using the old interface system possibly face problems. However the entire internal API is now mostly based on the new widget system. What is left of the interface system will get removed once there are no dependencies on the old system anymore in scripts on the SDN. Scripts that are broken by this update should be updated rather quickly as all developers have been notified of this update to come. I have also addressed the issues with banking. I haven't been able to reproduce any of the mentioned problems. However like I said, the scope of this release is so big that it is hard to say if we've missed something in the porting of the old interface system. So please report any bugs you come across with a detailed description of the bug and I will review them tomorrow. If everything is fine, I will rewrite the interface debugger to be useful again. This will most likely happen tomorrow or the day after. I will upload and update the javadocs af fast as possible for the script developers. I hope that you as a community understand that this might cause problems with certain scripts and I'm sure the script developers will update their scripts to the new system as soon as possible if this update affected their scripts. In that case we are sorry for your inconvenience. Sincerely, The OSBot team 2 Link to comment
Joseph Posted March 5, 2015 Share Posted March 5, 2015 (edited) firstie , oh shit i cant wait for the interface debugger Edited March 5, 2015 by josedpay Link to comment
iJodix Posted March 5, 2015 Share Posted March 5, 2015 (edited) isVisible() & interacting is broken ? It takes now like 2-3 minutes until it interacts with anything. Didn't have this problem until this update. EDIT:// It takes alot of time for bot to interact with anything, dialogues, objects etc.. Edited March 5, 2015 by iJodix 1 Link to comment
yoiaintkare Posted March 5, 2015 Share Posted March 5, 2015 isVisible() & interacting is broken ? It takes now like 2-3 minutes until it interacts with anything. Didn't have this problem until this update. ^This. Also, many of the scripts just won't run upon being started. Not complaining, I appreciate the hard work you guys do. Looking forward to a fix Link to comment
Developer Maxi Posted March 5, 2015 Author Developer Share Posted March 5, 2015 isVisible() & interacting is broken ? It takes now like 2-3 minutes until it interacts with anything. Didn't have this problem until this update. EDIT:// It takes alot of time for bot to interact with anything, dialogues, objects etc.. I'm running a non ported script from Divinity right now and I can't reproduce this issue. There is some new caching going though with interfaces that might slow down things at the start. The benefit though is that the bot should use less CPU because the callback we used is gone. But if you could specify your issue in more detail instead of just saying this, I could maybe investigate your issue. Interacting should not be different except for with interfaces. Interacts smooth and fast for me here. Link to comment
fenclanner Posted March 5, 2015 Share Posted March 5, 2015 My bot isnt working anymore Link to comment
Novak Posted March 5, 2015 Share Posted March 5, 2015 (edited) I'm running a non ported script from Divinity right now and I can't reproduce this issue. There is some new caching going though with interfaces that might slow down things at the start. The benefit though is that the bot should use less CPU because the callback we used is gone. But if you could specify your issue in more detail instead of just saying this, I could maybe investigate your issue. Interacting should not be different except for with interfaces. Interacts smooth and fast for me here. he is right, take a look at my fletching script, before even getting to the interface stuff, it takes like 2 minutes to interact with the knife and then the logs, something changed with inventory interactions, seems like with objects too EDIT: after like 5 minutes of letting it run, it seems back to normal Edited March 5, 2015 by Novak Link to comment
iJodix Posted March 5, 2015 Share Posted March 5, 2015 (edited) I'm running a non ported script from Divinity right now and I can't reproduce this issue. There is some new caching going though with interfaces that might slow down things at the start. The benefit though is that the bot should use less CPU because the callback we used is gone. But if you could specify your issue in more detail instead of just saying this, I could maybe investigate your issue. Interacting should not be different except for with interfaces. Interacts smooth and fast for me here. It hovers the tree for a while and then after 20-30 seconds, it clicks on it. Also, with dialogues, it takes around 5-10 seconds until it clicks on it. This is how my code looks; private void interactWithSeamanPay() throws InterruptedException { if(getInterfaces().getChild(548, 116).isVisible()) { sleep(random(600, 1000)); dialogues.clickContinue(); sleep(random(600, 1000)); dialogues.clickContinue(); sleep(random(600, 1000)); dialogues.selectOption("Yes please."); sleep(random(600, 1000)); dialogues.clickContinue(); sleep(random(600, 1000)); } } private void deposit() throws InterruptedException { RS2Object bankBooth = (RS2Object)objects.closest(new String[] { "Bank deposit box" }); if (inventory.isFull()) { if (bankBooth != null) { if(bankBooth.isVisible()){ if (bankBooth.interact(new String[] { "Deposit" })) sleep(random(800, 1200)); { while (depositBox.isOpen()) { sleep(random(800, 1200)); depositBox.depositAllExcept(new String[] { "Rune axe" }); log("Depositing willows..."); sleep(random(800, 1200)); depositBox.close(); sleep(random(800, 1200)); } } }else { getCamera().toEntity(bankBooth); } } } } private void chop() throws InterruptedException { Entity tree = objects.closestThatContains(TREE_NAME); if(!myPlayer().isAnimating() && (!myPlayer().isMoving())) if(tree != null) { if(WILLOWS_AREA.contains(tree)) if(tree.isVisible()){ if (tree.interact("Chop down")) { log("Chopping tree..."); sleep(random(600, 700)); while (myPlayer().isMoving()) { sleep(100); } sleep(random(600, 700)); } }else{ localWalker.walk(tree, true); } } } Edited March 5, 2015 by iJodix Link to comment
Lemons Posted March 5, 2015 Share Posted March 5, 2015 The issue currently seems to be its taking a long time to cache the info. Once the cache happens (takes my script like 2 mins to get fully going), it runs fine but this initial caching needs to be optimized if possible. 1 Link to comment
Vitanet Posted March 5, 2015 Share Posted March 5, 2015 for me bot dont work, i start a script and dont do nothing Link to comment
Novak Posted March 5, 2015 Share Posted March 5, 2015 the interface caching is taking too long. my script doesn't actually start working for like 3 minutes because it is caching the interfaces(I'm assuming thats why it just sits there and does nothing) Link to comment