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

Exilebuddy Release Thread (3.3+)

Status
Not open for further replies.

pushedx

Well-Known Member
Joined
Sep 24, 2013
Messages
4,252
Reaction score
290
Welcome to the Exilebuddy Release Thread for 3.3+!

[About]

This is the main Exilebuddy thread to find information for 3.3+. Due to how much information there is, it's usually spread out across multiple threads, due to post size limits, and how a lot of information post 3.0+ is still relevant for this 3.3 expansion. As a result, please refer to the linked threads for everything you need to know.

We'll be posting an updated roadmap for 3.3+ in the near future. With this 3.3 release, we've accomplished a good chunk of changes that have been on the todo list for a while now, but there's always still more to do. We hope as this league progresses, we'll be able to start finishing everything we've said we've wanted to do for a while now.


[Download]

NOTE: Due to breaking changes previously announced, a clean install is recommenced if you're using 3rd party content that no longer compiles or loads.

The static direct download link for builds are as follows (feel free to bookmark these):
Beta - updates.buddyauth.com/GetNewest?filter=ExilebuddyBETA
Release - updates.buddyauth.com/GetNewest?filter=Exilebuddy


[General Information]

Most general information users need to know can be found in the previous Exilebuddy 3.0+ Reference Thread.

There's a lot of information to be aware of when using Exilebuddy, so please read as much as possible for the smoothest botting experience.

If you want to get up and running as quickly as possible, then read the Exilebuddy Quick Start Guide.
 
Last edited:
Exilebuddy 3.3 Release Changelog

#374 [5 Jul 18 04:08] (3.3.1.2)
  • Please read the ban thread above before using this version: https://www.thebuddyforum.com/threads/6-28-2018-bans-unschedule-extended-downtime.420020/
  • Updates for 3.3.1.2
  • Updates for 3.3.1.1
  • ObjectMagicPropertiesComponent.ExplicitStatsEnumerable/ImplicitStatsEnumerable are now internal, use ExplicitStats/ImplicitStats instead (which now cache per-frame to improve performance).
  • GetStatFromCache now reloads its cache like the other Dat functions do. This was removed in the past to avoid a big frame stall, but by doing it again, it improves regular runtime performance.
  • Few optimizations in CombatAreaCache to cut down on API use to improve performance.

#372 [Next Version] (3.3.0.8)
  • Updates for 3.3.0.8.
  • [QuestBot/EXtensions]
    • QuestBot setting to use hideout for grinding added.
    • CachedItem.SkillGemLevel added.
  • Incursion updates to prevent exceptions when accessing rooms when the ggpk data isn't loaded yet.
  • NetworkObject.IsHighlightable added, as it was missing.
  • LabyrinthReturnPortal type added for the exiting lab portal, as it's a special object that can be used like a portal, but is not a Portal/AreaTransition.
  • Added a new 'Community' assembly.
    • It is dependent on the Default assembly.
    • This will contain some projects for the community showing off stuff possible with the API.
    • These projects are casual, and low-priority, and just meant to help people understand what can be done and give some ideas.
  • Added the Community.Follower plugin.
    • This is to show a simple following plugin (right now tested for Lab) for characters in the same party, that start in the same area.
  • OldRoutine.ClosedDoorBetween function updated to store door positions instead of network objects to avoid issues with leaving the frame.
  • OldRoutine.NumberOfMobsBetween function updated to store monster positions instead of network objects to avoid issues with leaving the frame.
  • OldRoutine updates to fix invalid object exceptions.
  • PythonExample updates to allow accessing ThirdPartyLoader loaded content namespaces. Before, it was not possible without editing the code.

#371 [15 Jun 18 02:14] (3.3.0.7)
  • Updates for 3.3.0.7.
  • [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.
  • OldCoroutinePlayerMover will now stop the bot if used. It is only meant as a developer example.

#370 [08 Jun 18 05:35] (3.3.0.6)
  • Updates for 3.3.0.6
  • The function RoutineManager.GetRoutineBlacklistedSkillIds has been added as a temp fix to allow MapBot to ignore blacklisted auras.
    • For the function to detect blacklisted skill ids, the Routine must have a "public string BlacklistedSkillIds" setting, like OldRoutine code does.
  • A replacement skill blacklist system will be coming soon to help all code work with that common data more easily.

#369 [07 Jun 18 15:06] (3.3.0.5)
  • OldRoutine minor updates to handle Vaal skill detection and blacklisting.
  • Incursion monster unwalkable spam should be fixed.
  • Skill.CurrentSouls updated to return the correct amount of souls.
  • 'close_panels' is no longer used to close the TempleUI because of a client bug when it's not spacebar. ESC is now used instead.
  • Updates for 3.3!
  • See "Changelog-Alpha.txt" for complete details
 
Last edited:
Exilebuddy 3.3 Beta Changelog

#1760 [5 Jul 18 03:37] (3.3.1.2)
  • Please read the ban thread above before using this version: https://www.thebuddyforum.com/threads/6-28-2018-bans-unschedule-extended-downtime.420020/
  • Updates for 3.3.1.2
  • Updates for 3.3.1.1
  • ObjectMagicPropertiesComponent.ExplicitStatsEnumerable/ImplicitStatsEnumerable are now internal, use ExplicitStats/ImplicitStats instead (which now cache per-frame to improve performance).
  • GetStatFromCache now reloads its cache like the other Dat functions do. This was removed in the past to avoid a big frame stall, but by doing it again, it improves regular runtime performance.
  • Few optimizations in CombatAreaCache to cut down on API use to improve performance.

#1754 [21 Jun 18 00:51] (3.3.0.8)
  • Updates for 3.3.0.8.

#1753 [19 Jun 18 21:12] (3.3.0.7)
  • [QuestBot/EXtensions]
    • QuestBot setting to use hideout for grinding added.
    • CachedItem.SkillGemLevel added.
  • Incursion updates to prevent exceptions when accessing rooms when the ggpk data isn't loaded yet.
  • NetworkObject.IsHighlightable added, as it was missing.
  • LabyrinthReturnPortal type added for the exiting lab portal, as it's a special object that can be used like a portal, but is not a Portal/AreaTransition.
  • Added a new 'Community' assembly.
    • It is dependent on the Default assembly.
    • This will contain some projects for the community showing off stuff possible with the API.
    • These projects are casual, and low-priority, and just meant to help people understand what can be done and give some ideas.
  • Added the Community.Follower plugin.
    • This is to show a simple following plugin (right now tested for Lab) for characters in the same party, that start in the same area.
  • OldRoutine.ClosedDoorBetween function updated to store door positions instead of network objects to avoid issues with leaving the frame.
  • OldRoutine.NumberOfMobsBetween function updated to store monster positions instead of network objects to avoid issues with leaving the frame.
  • OldRoutine updates to fix invalid object exceptions.
  • PythonExample updates to allow accessing ThirdPartyLoader loaded content namespaces. Before, it was not possible without editing the code.

#1748 [15 Jun 18 01:37] (3.3.0.7)
  • Updates for 3.3.0.7.
  • [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.
  • OldCoroutinePlayerMover will now stop the bot if used. It is only meant as a developer example.

#1739 [08 Jun 18 05:07] (3.3.0.6)
  • Bug fix for routines that do not have a BlacklistedSkillIds setting.

#1738 [08 Jun 18 04:18] (3.3.0.6)
  • Updates for 3.3.0.6
  • The function RoutineManager.GetRoutineBlacklistedSkillIds has been added as a temp fix to allow MapBot to ignore blacklisted auras.
    • For the function to detect blacklisted skill ids, the Routine must have a "public string BlacklistedSkillIds" setting, like OldRoutine code does.
  • A replacement skill blacklist system will be coming soon to help all code work with that common data more easily.

#1736 [07 Jun 18 05:15] (3.3.0.5)
  • OldRoutine minor updates to handle Vaal skill detection and blacklisting.
  • Incursion monster unwalkable spam should be fixed.

#1735 [06 Jun 18 07:08] (3.3.0.5)
  • Skill.CurrentSouls updated to return the correct amount of souls.

#1734 [06 Jun 18 02:14] (3.3.0.5)
  • 'close_panels' is no longer used to close the TempleUI because of a client bug when it's not spacebar. ESC is now used instead.

#1733 [05 Jun 18 23:32] (3.3.0.5)
  • Updates for 3.3!
  • See "Changelog-Alpha.txt" for complete details
 
Last edited:
Changelog-Alpha.txt

[103]
* Updates for 3.3.0.5
* 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 simple Incursion plugin has been added. It will be improved over the league.
** If you are using custom item filters, you'll need to add the Stone of Passage.
*** "Metadata/Items/Incursion/IncursionKey" / "Stone of Passage" / IncursionItem

* AtlasUi.MaxSextants added. The AtlasUi must be opened to obtain this value.

* DatWorldAreaWrapper.IsTempleOfAtzoatl added

* InstanceInfo.IsIncursionMonstersKilledOverlayShowing added.

* InstanceInfo.AlwaysAttackWithoutMovingFlags added to expose the bit array (0-based indices) of attack in place flags for skill slots

* SkillBarHud.IsSlotAlwaysAttackingWithoutMoving added to get the flag of a slot
* SkillBarHud.SetAlwaysAttackWithoutMoving added to be able to change the flag per slot.

* 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.

* Help/CommandLineArguments.txt has been added to explain the commandline arguments Exilebuddy supports.
* Help/ApplicationExitCodes.cs is now included

[92]
* Updates for 3.2.4.5
* PreGameState.IsRealmRestartingMessageShown and PreGameState.RealmRestartingMessage added.

[91]
* Updates for 3.2.4.4

[90]
* Updates for 3.2.4.3
* SelectCharacter update to try and handle a new client bug.

[89]
* Additional minor updates to catch out of memory issues inside the pathfinding library/wrapper.
* More internal pathfinding updates.
[MapBot]
- Added sextanting and zana mods support

[88]
* Updates for 3.2.4.2

[87]
(This update is for the new game patch + API updates from Beta/Release)
* Updates for 3.2.4.1

* Skill.Supports added. This returns a list of DatGrantedEffectsPerLevelWrapper of the supports this skill has.
* Skill.LinkedGems updated to only display the gems that support the skill. Before, all linked support gems were returned. Duplicate supports are not handled yet.

* Item.IsElderShaped added.
* Item.MapTier now handles IsElderShaped maps.

* AtlasUi implemented:
** GetSextantsAffectingArea added to return sextants affecting an area.
** ApplyCursorTo will click an area's gui control.
*** It assumes the Atlas has not been zoomed, will not check cursor contents, and will fail if there is a left or right side ui opened. This means users need to close InventoryUi after using currency before being able to apply it.

[86]
(The purpose of this Alpha build is to test the updated internal recast library to make sure nothing breaks)

* Alpha updated to Beta #1722 code branch for 3.2.3.5.

* Phase 1 of RecastManaged updates - internal recast library updated.

* Obsolete cleanups from Beta #1714 / Release #359 (In other words, stuff that has been marked obsolete for many, many months)
** BotManager.CurrentBot -> BotManager.Current
** RoutineManager.CurrentRoutine -> RoutineManager.Current
** LokiPoe.ClickPosition, LokiPoe.ClickCenterOfPosition removed (no replacements, as they were GUI related).
*** Use MouseManager.SetMousePos(string, int/float, int/float, bool) and then Input.PressLMB/Input.ReleaseLMB to simulate the old function.
** Input.ClickLMB -> Input.PressLMB
** Input.ClickRMB -> Input.PressRMB
** Input.ClickXB1 -> Input.PressXB1
** Input.ClickXB2 -> Input.PressXB2
** Input.SetMousePos
*** Use 'MouseManager.SetMousePos' outside of 'OnPreMove', or 'Input.SetMousePosRaw' if inside 'OnPreMove'.
** 'DefaultPlayerMover' and legacy 'IPlayerMover' removed.
** NotificationHud.HandleNotification removed. Use NotificationHud.HandleNotificationEx instead.
** LoginState.IsEnterUnlockCodeDialogVisible -> UnlockAccountUi.IsOpened
** 'PlayerMover' removed. Use 'PlayerMoverManager' instead.

* New player mover system final changes (pre-announced stuff that couldn't be done until Alpha)
** 'MoverManager' is now renamed to PlayerMoverManager
** 'IMover' is now renamed to 'IPlayerMover'
** 'ThirdPartyInstance.MoverInstances' is now renamed to 'ThirdPartyInstance.PlayerMoverInstances'
** 'ThirdPartyInstanceWrapper.Movers' is now renamed to 'ThirdPartyInstanceWrapper.PlayerMovers'
** 'PlayerMoverManager.Movers' is now renamed to 'PlayerMoverManager.PlayerMovers'
** 'PlayerMoverManager.MoverEvent' has been renamed to 'PlayerMoverManager.MoverEvent'
** 'PlayerMoverManager.OnMoverChanged' has been renamed to 'PlayerMoverManager.OnMoverChanged'
** 'MoverChangedEventArgs' has been renamed to 'PlayerMoverChangedEventArgs'
 
Last edited:
Exilebuddy Quick Start Guide

1. Read the "Path of Exile/Exilebuddy General Information" section at minimal. This covers important client settings that need to be set before being able to use Exilebuddy.

2. Configure OldRoutine: Settings -> Routines -> OldRoutine. You will want to set the first 5 slots to relevant skills. Skill slots are #1 - #8 as they are laid out in game, where LMB is #1 and T is #8 (assuming default keybinds). OldRoutine is a generic routine that facetanks and spam uses skills, so there's no in-depth guide for the best way to configure it. For most non-single target skills, you'll want to have AlwaysAttackInPlace set to avoid desync or mob highlighting issues. A new routine is planned for 3.3+, but users can also find community routines.

3a. Configure QuestBot if you plan on questing with your current character. Click on the "Guide" link on the GUI to bring up the guide.

3b. Configure MapBot if you plan on running maps with your current character. Click on the "Guide" link on the GUI to bring up the guide.

4. Configure Cross-bot Settings. Click on the "Guide" link on the GUI to bring up the guide.

5. Enable and configure any Plugins you wish to use. Most will have a "Guide" link you can read.

You're ready to start botting! You will have to tweak settings according to your build and depending on what your goals are with Exilebuddy, you might need to make use of community plugins or write your own.
 
Status
Not open for further replies.
Back
Top