What's new
  • Visit Rebornbuddy
  • Visit Resources
  • Visit API Documentation
  • Visit Downloads
  • Visit Portal
  • Visit Panda Profiles
  • Visit LLamamMagic

Exilebuddy 3.3 Status Thread

Status
Not open for further replies.

pushedx

Well-Known Member
Joined
Sep 24, 2013
Messages
4,252
Reaction score
290
About

This thread will cover the status of the current downtime, and what to expect this week.

First, this expansion update is progressing better than expected. This is mostly due to there being more manageable client changes this time around vs. previous expansion changes. There were still quite a lot of client changes, but we'll be back up and running sooner rather than later compared to previous expansions.

As a result, we hope to have a testable Beta out around Tuesday or Wednesday, depending on additional patches after the weekend. Please remember every client patch breaks the bot and requires a new version to be deployed, so on days where multiple hotfixes get released, botting time is greatly affected

Alpha Changelog

As has been talked about for the past few months, the Exilebuddy 3.3 update contains numerous updates to some old legacy systems. Those changes can be found here. What was the previous Alpha version will now become the new Beta/Release version. An additional update about why some things we wanted to change weren't changed yet will follow below.

Incursion Changelog

In addition to the already mentioned alpha changes, these are the current Incursion specific changes.
  • Updates for 3.3.0.4
  • Updates for 3.3.0.3
  • Updates for 3.3.0.2
  • Updates for 3.3.0.1
  • A new AutoLoginEx plugin has been included in Default. This plugin will replace the legacy AutoLogin in the future.
    • It is currently disabled by default as to not brick everyone's settings.
    • Please disable "AutoLogin" if you wish to use "AutoLoginEx", as two auto-login plugins running at the same time is not a good idea.
  • InstanceInfo.Incursion API added:
    • Dat.IncursionRooms added. NOTE: This data is only loaded in the client once the TempleOfAtzoatlUi has been opened at least once, so users need to open the UI before using this API.
      • Id - the id of the room
      • Name - the name of the room
      • AreaId - the room area id
      • Description - description of what the room does
      • Lore - lore text
      • Tier - the room's tier
      • UpgradedRoom - A DatIncursionRoomsWrapper of what the room is upgraded into or null
      • IncursionArchitect - A DatIncursionArchitectWrapper of the architect or null
    • Dat.IncursionArchitect added.
      • Name - the name of the architect
      • Metadata - the metadata of the architect
      • MonsterId - the monster id of the architect
    • HasTemple returns a bool to see if Incursion data is present.
    • EntranceRoom, ApexRoom, Room1..Room11 return a DatIncursionRoomsWrapper to be able to access the room data of your current Temple. Rooms are numbered from left to right, bottom to top.
    • CurrentIncursionRoomId returns an int of the id of the current Incursion room.
    • CurrentIncursionRoom returns a DatIncursionRoomsWrapper for the current Incursion room.
    • IncursionsRemaining returns an int of the number of incursions remaining.
    • IncursionArchitect1/IncursionArchitect2 return a DatIncursionArchitectWrapper to expose the Incursion Architects for the current Incursion room.
    • IncursionArchitect1Room/IncursionArchitect2Room return a DatIncursionRoomsWrapper to expose the Incursion room associated with the architects.
  • InGameState.TempleOfAtzoatlUi added
    • EnterIncursion / OpenTemple can be used to click the buttons on this UI.
  • InGameState.CorruptionAltarUi added
    • WindowControl to work with the window
    • Inventory to work with the inventory
    • HasItem to know if there's an item to use
    • Pickup to pickup the item to the cursor to apply it to another item.
  • InGameState.TableOfSacrificeUi added
    • WindowControl to work with the window
    • InventoryControl to work with the inventory
    • Activate can be used to click the activate button
  • InGameState.LapidaryLensUi added
    • WindowControl to work with the window
    • Inventory to work with the inventory
    • HasItem to know if there's an item to use
    • Pickup to pickup the item to the cursor to apply it to another item.
  • ExilePather.BlockLockedTempleDoors added to be able to auto-block locked doors in the Temple.
  • ExilePather Ascendancy Door checking logic updated to only run in Labyrinth Trial Areas rather than all areas.
  • Added the 'global_override' parameter. This allows users to specify a new filename for "GlobalSettings.json" to avoid conflicts when running multiple bots from the same folder.
  • Settings window updated to include "-> Manager <-" tabs to be able to change the current Bot/Routine from the Settings window.
  • LokiPoe.Input.Binding.throw_net has been removed.
  • LokiPoe.Input.Binding.generic_league_key has been added.

As it stands, the only Incursion related data we do not have worked out is the connections between rooms, but other than that, everything users need to be able to work with the new league will be ready to go by our first Beta!

Roadmap - Testing

Due to the size of the game now, it's impossible for us to retest all content before we do our first Beta.

That means there's going to be things that we miss as a result. Numerous terrain generation changed this update due to the Incursion mechanics, so some areas might perform worse than before with movement, as we've seen Act 3 sewers seems worse than before. There's not much we can really do about those areas for now, so users will need to help their bots when they run into issues as usual.

Please keep in mind that new expansions = babysit your bots. There's too many subtle changes and things that can go wrong due to the randomness of the game to where users need to wait until the game stabilizes again and settles down with patches before even thinking about running unattended. This has always been the case for this game, and still is.

Roadmap - Incursion

Incursion is a very rewarding league, so we'll be providing a simple plugin for it that will get better over time. We still encourage the community to make their own versions that do exactly what they want though! However, once again with game changes like this, core systems we use in the bot aren't quite as suited for the changes this league brings, so we'll be looking at improvements to things.

Roadmap - Routines

A new generic routine is planned post 3.3 with all the new skill changes and trap mechanic changes. However, it's not possible to code something that will work better than OldRoutine, without adding substantial downtime which we already know people don't want. As a result, you'll get Beta earlier, but are still stuck using OldRoutine or whatever custom routine you're using until the future.

We'll still fix any new skill related bugs as they are reported, but as was previously mentioned, this game has too much content for us to retest everything ourselves. Basically, there's going to be issues with certain skills and the old code will not handle them nicely, so you can use skills that still work nicely, get community help to change the code yourself, or wait until we're able to handle the game changes better.

Roadmap - PlayerMover

The 3.3 update brings about a new PlayerMover system that was announced months ago. However, we'll still be including our own updated skill based player mover in the future. Until then, users can still use updated player movers from the community. Much like OldRoutine, it's either we go with testing Beta with what we've had or delay to make something better, and no one wants that, so users will have to bear with what's there still.

Roadmap - Item Filter


Same story as PlayerMover and Routines. Updates to the core item filter plugin will be post 3.3. Basically there's just not enough time to handle major changes to these systems alongside the expansion changes themselves, so what's there that has been there for years gets to live on a little longer before being replaced. We are sorry for the inconveniences some of this old code brings, but that's just the nature of this game and what happens when you have to deal with change so much.

Roadmap - Pathfinding Changes

3.3 contains updated core pathfinding code along with the changes Beta/Release already had. These changes have been tested for a month and have been seen to fix numerous issues, so that's good. However, there's still a lot of pathfinding related issues that aren't fixed by these changes, because they're related to the game design of PoE.

Unfortunately, there's not much we can do about those issues still because of how complicated the issue is. I know what the problems are, I know how to fix them, but the solution will result in worse performance and break any code that uses ExilePather, so that's why those changes did not happen for 3.3 as originally planned. Basically, it's a rare case of fixing the issues the right way would result in a worse product overall, which we can't justify at this point. So, we're stuck with what we have for the foreseeable future.

Roadmap - Performance

As the game continues to get more content crammed into it, more unoptimized gfx and effects get shown, more objects on screen in small spaces, performance will continue to go down. There's nothing we can do about this sadly. Botters need to upgrade their system to make sure they can handle the ever increasing requirements.

When playing by hand without the bot attached, I've noticed numerous performance issues this expansion, so as always, if you run into any severe problems, you'll just have to wait until the game addresses them. Certain skills being used in Incursions really hit the framerate hard, and there's reports of memory leaks and whatnot, so keep that in mind.

Conclusion

Alright, that's about it. I think that about covers everything people need to know for now. We hope to finish up testing over today and tomorrow, then we'll see if things are ready Tuesday for a Beta and if not, we'll go for Wednesday.

We'll post any other status updates in this thread as needed, but unless a new patch comes out that breaks everything again, the next status update will be the actual deployment of Beta.

Thanks for reading!
 
Beta #1733 has just been deployed! A new Release will be looked into being pushed tomorrow if everything seems good.

Downtime compensation will be given out soon as well, but due to timezones, it'll be in the next few days.
 
Known Issues

1. Skill.CurrentSouls always shows 0. This is due to 3.3 changes with how Vaal skills work in 3.3. Changes to the API will be done soon to account for this. For now, Vaal skills will not cast.

EDIT: Beta #1735, which was just deployed, fixes this issue!
 
Last edited:
Depending on final feedback in the next 24 hours, we'll deploy the Release version for the update as most things seem to be good enough. Beta has had a few updates to things, so be sure to use the latest #1736 version just deployed.
 
An update for tonight's hotfix was deployed an hour ago. In addition, another Beta is being built right now to fix a new issue with custom routines that were not based on OldRoutine introduced in the previous Beta.

A new Release will be built really soon as well.

The updates should fix another Vaal skill issue with MapBot, and we'll start revamping routine based stuff really soon.

This update tonight took longer than usual so we could double check client changes, and make sure everything still looked like it was as safe as possible.

Thank you for your patience and understanding!
 
Just as a heads up, another big patch is expected within the next few days as pre-announced by GGG.

In the next Beta/Release build, there will be a breaking change to OldRoutine's skill blacklist. Please read this thread ahead of time: https://www.thebuddyforum.com/threads/upcoming-oldroutine-setting-changes.419441/

In addition, some short term updates to OldPlayerMover are being made to help users avoid some wall stuck issues. However, there's no nice fix for those because of the nature of the problem. Play with the new changes though to see if you get better results.

The current patchnotes are as follows:
[Incursion]
- Added "Open portals before incursions (only in maps)" option.
- Added "Finish area after incursion (QuestBot grinding only)" option.
- Added incursion room settings where users can specify more precisely what bot should do in a certain room.
- Added bossroom support to the Temple of Atzoatl.
- Added "Exploration percent" option to the Temple of Atzoatl (works correctly only if all rooms are opened).

[MapBot]
- Fixed Malformation Map exploration (map type was changed to multilevel).
- Now bot should trigger Gorge and Underground River bosses faster.

* Inventory.GetTotalItemQuantityByMetadataFlags added.
* ItemFilterEditor updated to support only picking up Portal/Wisdom scrolls based on an inventory limit. This can be found in the new "Extra Settings" tab.

* RoutineManager.GetRoutineBlacklistedSkillIds has been removed.

* A new skill blacklist manager has been added: SkillBlacklist
** IsBlacklisted - function takes an int, string, or Skill to check for a user blacklisted skill
** Add - function to add an int/Skill/string to the blacklist
** Remove - function to remove an int/Skill/string from the blacklist
** SkillBlacklist is implemented as an IContent object, so it has settings/GUI accessible to users
** All community code should update to using this now, as it is the first of the new systems being revamped for our new routine.

* OldRoutine.BlacklistedSkillIds removed. Please re-add your blacklisted skills via the SkillBlacklist GUI.

* Removed InstanceInfo.IncursionRoomId to avoid confusion. Use InstanceInfo.Incursion.CurrentIncursionRoomId.

* GridExplorer.Tick updated to not recheck nearby tiles if the player hasn't moved from its current grid. Logic to find a new Location will still run. This is so users can call Tick multiple times in a frame to find the next Location to move to faster, but at the expense of performance.

* LocalPlayer.EquippedSkillGems added to expose a list of Items that represents the current player's equipped skill gems.

* OldPlayerMover short-term updates:
** Settings.DebugAdjustments added to log when adjustments are made to better understand what is going on.
** Settings.ForceAdjustCombatAreas added to allow adjustments to be made to all combat areas.
** Settings.PathRefreshRateMs added to allow users to change the path refresh rate. Users can play with this to reduce CPU for frequent pathfinds at the tradeoff of possibly falling off-course to desync more.
** Settings.ForcedAdjustmentAreas added to allow users to apply adjustments to specific areas.
** Adjustment logic updated to also perform in the Y-axis. Before, only the X-axis was modified.
** Adjustment value is hard-coded and set to 10, down from 15.
** GUI updates.

* ActionWrapper updates to fix an issue from the 3.3 update.
 
Last edited:
Status
Not open for further replies.
Back
Top