ExilebuddyBeta #814 has just been built. This version contains updates for 1.1.4.1 as well as some improvements based on trying to port the old bot to the new framework. Beta is still only for developers, but progress is continuing at a steady pace on the new bot.
Unfortunately, the old/new bot implementation cannot be included for users to tinker with. We still aim to provide some examples of various components for bot writers, but the bot we provide has to remain closed source, and modified through hooks/events for the time being.
From a dev standpoint, the biggest changes made were in relation to passing NetworkObjects around while in a coroutine. Basically, you can't do that. You need to pass ids around and re-lookup the object. This is because a coroutine will execute over multiple frames, and the objects have a lifetime of 1 frame. A lot of the old bot logic has issues with this, so it'll be changing to implement this design.
Spells got several updates as well. While there are no examples of using it, a SpellHelper class was added for managing skill names and available castable skills for the new routine logic. This was done to help address the issue of users having skill gems equipped to level, but no desire to use them. In addition, in the case of a chest breaking skill, it should not be used for normal logic, but still has to be present. Routines will be getting a new interface and a real structure, but more information will come from that once it's closer to being done.
You can use the Visual Studio object explorer to browse through the new stuff as always. This update took a lot longer than normal because of the changes from going from the old setup to the new setup. The old bot does not work well yet in the new setup, but the purpose of porting it was to find and fix any issues with the new setup using working code. Several issues were found and fixed, so it was very worthwhile.
Lastly, please do not beta test the ExilebuddyBot/Routine and report issues. It is broken and is just short term code for testing other aspects of the new setup!
Unfortunately, the old/new bot implementation cannot be included for users to tinker with. We still aim to provide some examples of various components for bot writers, but the bot we provide has to remain closed source, and modified through hooks/events for the time being.
From a dev standpoint, the biggest changes made were in relation to passing NetworkObjects around while in a coroutine. Basically, you can't do that. You need to pass ids around and re-lookup the object. This is because a coroutine will execute over multiple frames, and the objects have a lifetime of 1 frame. A lot of the old bot logic has issues with this, so it'll be changing to implement this design.
Spells got several updates as well. While there are no examples of using it, a SpellHelper class was added for managing skill names and available castable skills for the new routine logic. This was done to help address the issue of users having skill gems equipped to level, but no desire to use them. In addition, in the case of a chest breaking skill, it should not be used for normal logic, but still has to be present. Routines will be getting a new interface and a real structure, but more information will come from that once it's closer to being done.
You can use the Visual Studio object explorer to browse through the new stuff as always. This update took a lot longer than normal because of the changes from going from the old setup to the new setup. The old bot does not work well yet in the new setup, but the purpose of porting it was to find and fix any issues with the new setup using working code. Several issues were found and fixed, so it was very worthwhile.
Lastly, please do not beta test the ExilebuddyBot/Routine and report issues. It is broken and is just short term code for testing other aspects of the new setup!