Results 1 to 11 of 11

Thread: Is there no way to combine Reflection and AeroLib now?

  1. #1
    Join Date
    Jan 2014
    Posts
    58
    Mentioned
    1 Post(s)
    Quoted
    37 Post(s)

    Default Is there no way to combine Reflection and AeroLib now?

    I just came back from over a year of not playing.

    Last year, my scripts were running on a combination of Reflection and Aerolib.

    Now, I come to find out there is a Simba 1.2 which is the only version Aerolib runs on, while Reflection will only work on 1.1 .
    Not only this, but trying to use an older Aerolib include just breaks every time.
    Is there no way now to actually combine the two?

  2. #2
    Join Date
    Dec 2011
    Location
    East Coast, USA
    Posts
    4,231
    Mentioned
    112 Post(s)
    Quoted
    1869 Post(s)

    Default

    Things have changed since last year. The community is picking up speed again and things are moving quicker than they were previously.

    Reflection and AeroLib are both unmaintained includes. They were never official SRL includes, their developers are no longer active, and while the code might still (kinda) work, things are only going to break down and get worse over time. Any scripts you have written using AeroLib or Reflection are going to need rewritten at some point, the sooner the better.

    Hacking Reflection and AeroLib together was a terrible idea and only led to more convoluted, unmaintainable madness. Definitely work to undo this in your scripts.

    The best way to go about writing a script right now (especially for OSRS) is to use SRL. This include is feature-full, complete and standalone, and under active development. The current all-in-one tutorial can be found here: https://villavu.com/forum/showthread...39#post1391739

    Ping somebody in IRC or Discord if you need ondemand help, otherwise post here and I'll answer when I can.

    Good luck!
    Last edited by KeepBotting; 07-26-2018 at 04:47 PM.
    GitLab projects | Simba 1.4 | Find me on IRC or Discord | ScapeRune scripts | Come play bot ScapeRune!

    <BenLand100> we're just in the transitional phase where society reclassifies guns as Badâ„¢ before everyone gets laser pistols

  3. #3
    Join Date
    Oct 2012
    Posts
    1,258
    Mentioned
    40 Post(s)
    Quoted
    588 Post(s)

    Default

    Is there no way to combine Reflection and AeroLib now?
    Don't think so, should be very possible.

    Should you do this?
    Probably not. Reflection here afaik is often broken due to being slow to receiving updated hooks, so I can't imagine this being worth the effort. If you can update the hooks yourself I guess then it's fine, though if you can do that I doubt you'd be asking if it's possible to mix reflection + aerolib

    If you for some reason really wanted to combine the two, your best bet would probably be to go with the current reflection + an older aerolib that can work it. You'd then need to fix the older version of aerolib to work with the current game. After that it's just a matter of fixing the older aerolib yourself whenever any new include-breaking game updates come.

    srl/srl like keepbotting recommend is a quality alternative to a standalone aerolib. You could probably also use a third party client such as runelite/osbuddy for some of the reflection stuff. Alternatively, if you want full reflection powers in your scripts without updating hooks yourself...probably best to move to a popular java bot client.
    Last edited by acow; 07-26-2018 at 06:44 PM.

  4. #4
    Join Date
    Jan 2014
    Posts
    58
    Mentioned
    1 Post(s)
    Quoted
    37 Post(s)

    Default

    Honestly, the whole question I asked was meant to save me work.
    From what's described here, to use them together would mean I have to keep maintaining them myself, which is obviously way beyond the work I'm willing to put in for this. Saying it's possible like this isn't far for saying it's "possible" to write them all by yourself - that's obviously not the point.
    It's just a shame, because I have a while library written based on that mix, and while it's possible to rewrite the relevant parts, it's gonna be a pain in the ass as it is. Not to mention my own scripts, and some other people's scripts I modified, that are now in need of a rewrite as well. It feels I could manually get to 99 Runecrafting faster than doing all this work. I guess I better get to it..

    Just two more follow-up questions:

    1. What do you mean Aerolib is unmaintained now? I saw the latest build was 5 months ago, but slow releases aren't that uncommon in this community. Is it 100% confirmed that was the last update ever? Did no one else think about taking over that project?
    2. When I started using reflection, the other map-walking alternatives were pretty broken, as well as many other SRL functions. I even had (have) a folder called "SRL-OSR-Remnants" in the old Simba install that contains the working/useful functions from there and removed the broken ones (again, relevant to year+ ago). Does this mean they actually fixed all the broken stuff, and there is a good walker right now that isn't reflection? And, if for some scenarios color detection is unreliable (like a small object crowded by players, or roof edges in an unknown camera angle), and I can no longer use reflection, what other alternatives do I have to detect specific objects?

    A small sub question, which you can PM me the answer to if it's against the forum rules to post - which other client is there that both uses reflection, is open source, and has a good community around it like this one has {or had)?

  5. #5
    Join Date
    Dec 2011
    Location
    East Coast, USA
    Posts
    4,231
    Mentioned
    112 Post(s)
    Quoted
    1869 Post(s)

    Default

    Quote Originally Posted by lollol012 View Post
    Honestly, the whole question I asked was meant to save me work.
    From what's described here, to use them together would mean I have to keep maintaining them myself, which is obviously way beyond the work I'm willing to put in for this. Saying it's possible like this isn't far for saying it's "possible" to write them all by yourself - that's obviously not the point.
    It's just a shame, because I have a while library written based on that mix, and while it's possible to rewrite the relevant parts, it's gonna be a pain in the ass as it is. Not to mention my own scripts, and some other people's scripts I modified, that are now in need of a rewrite as well. It feels I could manually get to 99 Runecrafting faster than doing all this work. I guess I better get to it..

    Just two more follow-up questions:

    1. What do you mean Aerolib is unmaintained now? I saw the latest build was 5 months ago, but slow releases aren't that uncommon in this community. Is it 100% confirmed that was the last update ever? Did no one else think about taking over that project?
    2. When I started using reflection, the other map-walking alternatives were pretty broken, as well as many other SRL functions. I even had (have) a folder called "SRL-OSR-Remnants" in the old Simba install that contains the working/useful functions from there and removed the broken ones (again, relevant to year+ ago). Does this mean they actually fixed all the broken stuff, and there is a good walker right now that isn't reflection? And, if for some scenarios color detection is unreliable (like a small object crowded by players, or roof edges in an unknown camera angle), and I can no longer use reflection, what other alternatives do I have to detect specific objects?

    A small sub question, which you can PM me the answer to if it's against the forum rules to post - which other client is there that both uses reflection, is open source, and has a good community around it like this one has {or had)?
    This is a learning community. If you're not willing to put in a fair amount of work, you're not going to get very far. That has always been the attitude here, and it applies doubly what with the current state of things.

    Rewriting your scripts to use a supported, modern include will save you work in the long run. Obviously maintaining two includes yourself is not feasible, and was not what I was suggesting.

    Hacking together two disparate libraries to make them compatible was a mistake. AeroLib+Reflection never should have happened, people got dependent on it and now both projects are abandoned. Good luck untangling that.

    I'll clarify exactly what I mean, since you asked, and the answer is a bit complex. Functionally, Reflection has been abandoned for years. The code base has not changed, but it doesn't really need to because of the way Java reflection works. Updated hooks are posted once in a blue moon. If you already have the ability to generate new, up-to-date hooks yourself, you could probably get Reflection working with minimal effort.

    It is not 100% confirmed that AeroLib is abandoned, I'd like to stress that. The issue is that we haven't seen Flight in several months, which makes things very uncertain. AeroLib still technically functions but there has not been any development since the last release. Flight's infrastructure is crumbling, the file hosts he used for plugin and include updates have disappeared. There are unresolved issues that affect the software's ability to operate. AeroLib is succumbing to the death of a thousand cuts because its maintainer is MIA. This means that for the moment, AeroLib is bunk.

    I don't want to badmouth Flight since he's been around forever, is very knowledgeable, and has contributed loads to the community. He also has been known to disappear for half a year and then return with gigantic updates to AeroLib. But this sort of development style is unhealthy, and things break in the interim that nobody will (or can) fix.

    Nobody thought to take over AeroLib (which is an unofficial project) in the last 5 months because we have SRL which is functionally complete and is already actively being worked on. Development should be focused there, anything else is (for lack of a better phrase) a waste of time. I don't want to dissuade you from contributing fixes to projects like AeroLib, but without a consistent main developer to back you up, your progress is going to be mostly for naught.

    As far as walking, RSWalker is, again, feature-rich and actively developed. It's a color walking solution similar to SPS, but more accurate and easier to use. Existing SPS tools work with RSW, you chart and walk paths of points in much the same way. Object finding is also not hard, you search for colors on the screen like we have done since the beginning of time. SRL contains some very cool algorithms like MM2MS which make doing this quite easy.

    SRL (with RSWalker, if needed) is the de facto macroing suite for OSRS right now, and will continue to be until there is another shift in the game's ecosystem dramatic enough to shake things up. The last one was the release of OSRS itself. There will not be another change like this in the foreseeable future as long as people use SRL.

    If Flight shows up in this thread with some information about AeroLib, I will eat my shorts and rescind everything I've said about his include. But he has not logged into his forum account since April and I've not seen him in the IRC or Discord, so I am less than optimistic.

    The bottom line is that SRL is a community and we work on community projects. So, yeah, if you want to work on one dude's side project while the rest of the community is maintaining SRL, you've got a lot of work ahead of you. To get the best experience and avoid unnecessary duplication of effort, you should use an official include which is receiving community attention and maintenance. AeroLib/Reflection currently do not fall within those parameters.
    Last edited by KeepBotting; 07-26-2018 at 11:55 PM. Reason: added link to RSW forum thread
    GitLab projects | Simba 1.4 | Find me on IRC or Discord | ScapeRune scripts | Come play bot ScapeRune!

    <BenLand100> we're just in the transitional phase where society reclassifies guns as Badâ„¢ before everyone gets laser pistols

  6. #6
    Join Date
    Jan 2014
    Posts
    58
    Mentioned
    1 Post(s)
    Quoted
    37 Post(s)

    Default

    The Reflection library is said to be not working with Simba 1.2, which is required for some other things like RSWalker to work.
    This might be wrong, I didn't dig deep after the first compilation error, but honestly I don't even care enough to try to look for it at this point.

    This is just all around a bleak picture. I remember wasting hours working on this script, which was a great script by itself, only for it to be broken now with Reflection being in the state it's in.
    I got around 15 scripts and a library that were reliant on Reflection, and now some will have to be rewritten with a mix of walker/color, while a few will probably have to die due to specific objects being too hard to track by color.
    Not to mention I just wasted 3+ hours rewriting my library to use SRL functions (which got moved around hell knows where - why is TypeSend removed? Why was GetTextAtExWrap removed? All those changes created a mess which is probably multiplied by the numbers of scripts I haven't touched yet.

    Or just ignore this post, I might be a bit sour from all the compile errors.

  7. #7
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Quote Originally Posted by lollol012 View Post
    The Reflection library is said to be not working with Simba 1.2, which is required for some other things like RSWalker to work.
    This might be wrong, I didn't dig deep after the first compilation error, but honestly I don't even care enough to try to look for it at this point.

    This is just all around a bleak picture. I remember wasting hours working on this script, which was a great script by itself, only for it to be broken now with Reflection being in the state it's in.
    I got around 15 scripts and a library that were reliant on Reflection, and now some will have to be rewritten with a mix of walker/color, while a few will probably have to die due to specific objects being too hard to track by color.
    Not to mention I just wasted 3+ hours rewriting my library to use SRL functions (which got moved around hell knows where - why is TypeSend removed? Why was GetTextAtExWrap removed? All those changes created a mess which is probably multiplied by the numbers of scripts I haven't touched yet.

    Or just ignore this post, I might be a bit sour from all the compile errors.
    First of, RSWalker relies only on SRL from version 1 and up. Older versions than 1.X of RSWalker relies on nothing at all. RSWalker does not use reflection, never has. I Would NEVER sink that low.

    As for functions "removed" like `TypeSend` that's just not the case - that's an Aerolib function, the "new" SRL is a completely different library that basically reused absolutely nothing of old contents from previous SRL versions nor anything from Aerolib, just a full from scratch library that we spent years on tweaking and tuning before "releasing" it publicly. It's written using lape's offerings to a higher degree then previous existing libraries.

    SRL is wrapped up in structures of interfaces: MainScreen, Minimap, Mouse, Keyboard, Intentory, Skills, Chatbox, etc... as can be seen in the documentation:
    https://srldocs.github.io/SRL/

    SRL is structured to be used easily alongside the code completion in Simba, just type for example `Inventory.` and get a list of all the directly related functionality:

    Most function names should be self explanatory, but you have the docs to verify, and you have tutorials, as well as making a test script is also easy.


    As for specific functions like `TypeSend` you can use `Keyboard.Send('hello world')`, `Keyboard.Send('hello world', VK_ENTER)`.
    And then for `GetTextAtExWrap`, why use the old wrap function to begin with? Just use `GetTextAtEx` like normal people. The keyboard interface is not yet documented, but soon after midnight (EU) it will be.

    Finding objects can be done fairly reliably in many cases by using minimap to mainscreen provided in in SRL, then perhaps alongside some colorfinding just for accuracy's sake. But are also a ton of other ways to reliably find what may seem like tough cases to handle in color, just takes some training to get the hang of it.
    Last edited by slacky; 07-27-2018 at 07:07 PM.
    !No priv. messages please

  8. #8
    Join Date
    Jan 2014
    Posts
    58
    Mentioned
    1 Post(s)
    Quoted
    37 Post(s)

    Default

    Quote Originally Posted by slacky View Post
    First of, RSWalker relies only on SRL from version 1 and up. Older versions than 1.X of RSWalker relies on nothing at all. RSWalker does not use reflection, never has. I Would NEVER sink that low.
    I see now that my spelling earlier made it confusing - I did not say Reflection is needed for RSWalker to work - I said RSWalker (the latest one) depands on Simba 1.2, while Reflection doesn't work with Simba 1.2.


    Quote Originally Posted by slacky View Post
    As for functions "removed" like `TypeSend` that's just not the case - that's an Aerolib function, the "new" SRL is a completely different library that basically reused absolutely nothing of old contents from previous SRL versions nor anything from Aerolib, just a full from scratch library that we spent years on tweaking and tuning before "releasing" it publicly. It's written using lape's offerings to a higher degree then previous existing libraries.

    SRL is wrapped up in structures of interfaces: MainScreen, Minimap, Mouse, Keyboard, Intentory, Skills, Chatbox, etc... as can be seen in the documentation:
    https://srldocs.github.io/SRL/

    SRL is structured to be used easily alongside the code completion in Simba, just type for example `Inventory.` and get a list of all the directly related functionality:

    Most function names should be self explanatory, but you have the docs to verify, and you have tutorials, as well as making a test script is also easy.


    As for specific functions like `TypeSend` you can use `Keyboard.Send('hello world')`, `Keyboard.Send('hello world', VK_ENTER)`.
    And then for `GetTextAtExWrap`, why use the old wrap function to begin with? Just use `GetTextAtEx` like normal people. The keyboard interface is not yet documented, but soon after midnight (EU) it will be.
    In general, this post misses my point. It's not that I can't find the new SRL documentation, or that I can't look up the (pretty trivial) functionality from the files themselves. It's that it takes ages rewriting all the scripts I already had, that are written using Aerolib+Reflection.
    Oh and the autocomplete on Simba doesn't work 90% of the time:

    Quote Originally Posted by slacky View Post
    Finding objects can be done fairly reliably in many cases by using minimap to mainscreen provided in in SRL, then perhaps alongside some colorfinding just for accuracy's sake. But are also a ton of other ways to reliably find what may seem like tough cases to handle in color, just takes some training to get the hang of it.
    Can objects be found reliably? Sure, I can type a wall of code using rotated DTM's from multiple angles, that will find the objects with 100% reliability. Or I could write one line of code with maybe a bit of basic color checking after it using reflection.
    The problem isn't whether it's possible, but how hard one has to work using color/dtm/etc compared to reflection.
    There are cases where a ton of work could be saved, yet now that Reflection is toast it's work I'd have to do.
    Attached Images Attached Images

  9. #9
    Join Date
    Feb 2012
    Location
    Norway
    Posts
    995
    Mentioned
    145 Post(s)
    Quoted
    596 Post(s)

    Default

    Quote Originally Posted by lollol012 View Post
    *snip*
    I am personally rarely having problems with code completion, the few instances I have I know it's just a matter of restarting simba.

    Anyhow, seems to me that this place is probably not what you are interested in, considering you want to write scripts by just calling an API, rather than to spend your time solving challenges. There are better places which build around that, every single java bot out there for instance.

    And yes, it does indeed take a long time to rewrite scripts. It seems you have no released scripts anyway, so.. meh, why did I bother.
    I am out.


    PS: I dont think it's as simple as just using a wall of DTMs. Might get it to find what you want, but in that timespan used searching RS will no longer be a thing.
    !No priv. messages please

  10. #10
    Join Date
    Dec 2010
    Posts
    483
    Mentioned
    30 Post(s)
    Quoted
    328 Post(s)

    Default

    In your second picture you should probably try including something containing the Inventory object instead of expecting it to be built right into Simba. Might just explain your CC problems.

  11. #11
    Join Date
    Oct 2012
    Posts
    1,258
    Mentioned
    40 Post(s)
    Quoted
    588 Post(s)

    Default

    Quote Originally Posted by slacky View Post
    I am personally rarely having problems with code completion, the few instances I have I know it's just a matter of restarting simba.
    Look at his picture again

    @lollol012;
    Part of the motto here is literally "you're entitled to nothing". This community is more about helping those who're looking to help themselves, e.g. "hey I'm trying to get aerolib + reflection working together and I'm stuck on xyz error. I've tried blahblah and blahblah" might work better, especially if somebody else also is interested in getting that working. If you want a different attitude, I believe there's a more customer-oriented attitude in the closed source/paid for software communities.

    Try out multiple popular options and go with whatever works best for you, the grass literally may be greener. In the case of stand-alone reflection I'm sure it would be. If I was wanting to use an existing reflection api for making scripts, the one for simba would definitely not be my first choice.
    Last edited by acow; 07-29-2018 at 02:41 PM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •