Hey everyone!
It's been a while since the last blog post. With everything going on in the past year, there hasn't been much room for development outside of just catching up. For a while, the biggest efforts have been largely experimental and exploratory as we work to revive the Looking Glass feature.
For those unaware, Looking Glass (LG) was originally Tribot's "mirror client" where Tribot ran by delegating all its functionality to a separate client (Runelite, OSBuddy, Vanilla client, and even the web browser at one point long ago). This feature has had many ups and downs until eventually Runelite became the only official Java client and they changed so much that Looking Glass as it was became quickly unviable.
During the experiments for a new Looking Glass, we started developing a way to run Tribot X inside Runelite instead of mirroring between processes. This was more stable and gave us more flexibility in how everything was implemented. However, it still had several pain points that I wasn't completely satisfied with. The thing is, both Tribot X and Runelite each have their own ways of getting certain data, doing calculations, and setting up what is essentially a runtime. Often times both components would be duplicating work, or worse, fighting with each other causing more inefficiencies than we want. Tribot X's Looking Glass was feasible, but I think we deserve something even better.
This led us to an idea where instead of trying to adapt Tribot X to Runelite's environment, we could port Tribot X's functionality into Runelite's standard ecosystem.
Introducing Project Echo
Project Echo is next-generation version of Looking Glass. It runs directly in vanilla Runelite - no custom builds, no dev mode, no modification whatsoever. But unlike Looking Glass, it's made for Runelite. Without going into too much detail, this means:
More efficient model calculations
Compatibility with the GPU and HD plugins, menu swappers, etc
More efficient input operations
Better UI/UX
Overall, way more stable
While this is a distinct project from Tribot X, there is still tremendous overlap. Pretty much everything we developed for Tribot X is being utilized for this project and by the end of it there will be complete parity.
Input Mechanisms
Project Echo will utilize human-mouse input in the exact same way as Tribot X. Every account will have its own unique profile, and all inputs will utilize actual mouse movements/clicks within the game environment.
Tribot Scripts
All current scripts will be compatible with project Echo. This is what is going to take us the longest amount of time to implement and test, but so far we think scripts will have to make little-to-no adjustments to ensure compatibility with Project Echo.
Spoofing
Project Echo makes very few adjustments to the overall environment and does not need much spoofing. What spoofing we do, we do without modifying Runelite or the game itself. Project Echo will include random.dat spoofing and HWID spoofing like Tribot X, ensuring that your accounts can't be linked with those methods.
A lot of the experiments in the past few months gave us insight into how little modification we can get away with. The goal here is to be as vanilla runelite as possible, and so far I'm very happy with where we've ended up on that goal.
Tribot Launcher / Bulk Launcher / CLI Integration
Project Echo will be fully supported by all of Tribot's ancillary tools, like CLI. You'll be able to easily spin up Echo clients the same as Tribot X clients, with full support for Jagex accounts, legacy accounts, etc. There will be no need to manually setup runelite or use the Jagex Launcher.
What about Tribot X?
Tribot X isn't going anywhere. The current plan is to offer Tribot X and Project Echo, both, as first-class products. Tribot Echo will likely be gated behind Tribot Premium, but will otherwise be available in the same way Tribot X is. New features that can be developed for both projects will be, and both will be maintained with the same high priority.
Project Echo Roadmap
The current plans are:
May (now): Finish concept and implement bot runtime, script loading, mouse/keyboard, and basic API for scripts (done)
June: Add Tribot Launcher support, repo connection, and port over Tribot X core APIs
July: Finish script API bridge. Alpha testing + scripter testing + potentially close-beta testing
August: Open beta release
With any luck, I may be able to get these milestones done sooner. Luckily, a lot of this work was already accomplished by Tribot X and just needs refactored such that we can use it in both projects.
Please let me know your thoughts in the comments. I'll be here to answer any questions.
Thank you and happy botting!