This update has a little bit of everything so I'll try to summarize a bit of each.
Entity Interaction:
This was a really nasty bug that persisted for quite some time in OSBot. For simplicity, interactions are essentially broken down into two steps. The first step checks to see if what we are interacting with is visible and if not, make it visible. The immediate thought is, "Simple! I'll just use object.isVisible()"; this turned out to be the completely wrong answer. It all boils down to getting a suitable point for a model which is not based on "visibility", but instead intersection with the main game screen and a point close to the center of the object (which typically has the most mass). So with this said, step one (visibility) and step two (interaction) weren't quite based on the same logic. This update actually checks to make sure that we have something tangible before we go ahead and attempt an interaction.
API Cleanup:
Simply put, old API was removed forcing scripters to use the most current methods. Not only will this help new scripters understand what we have to offer, but it will help the development team in debugging various bug reports. In a behind-the-scenes discussion in the Scripter's forum, this information was disclosed over a month ago in preparation for this update. If your script is suddenly inoperable, please report it as broken.
New Skin:
Although not a big update in terms of code that changed, it's a pretty big visual change. This is also the first time in a while where the community had such a large impact on whether or not a change to the client got accepted. The final result was 100 votes at a 76% pass rate. Thanks for the relatively large participation in a short period of time!
Changelog:
-Removed Bank.getAbsoluteSlotPosition
-Removed WorldHopper class
-Removed Spell class
-Removed Bank.getVirtualSlotPosition
-Removed Combat.activateAutoRetaliate
-Removed Combat.setSpecialAttack
-Removed Equipment.isLoaded
-Removed Trade.verifyTrade
-Removed InterfaceComparator class
-Removed RS2Interface class
-Removed RS2InterfaceChild class
-Removed Interfaces class
-Updated OSBot Skin
--Updated OSBot booter, more to come
-Updated MouseMoveEvent destination areas
-Updated InteractionEvent visibility checks
--EntityDestination gets transformed into PointDestination except for GroundItems
--Removed InteractionEvent Override debug
-Updated Worlds core hop method to handle disabled dialogue messages
API documentation has been updated