- Removed the delay time between loot attempts.
This means that each time the Frame OnUpdate is called it will execute. The difference between having the delay and not having the delay is marginal, so it might as well be done without it.
- Changed the way the counter that determines when to stop attempting to force loot are incremented.
It is now incremented each time an iteration is done through each container item instead of each time the update happens that loops through the container. As the update will run several times faster than what the client does actually loot the item and the update is based on the OnUpdate script of the frame, which as far as I can tell is based on the clients frame rate as well as needing to factor in latency, it is hard to exactly pin point how many items will be looted or how many unique/duplicate loot attempts per item is made. This change is to attempt to prevent disconnects when looting after large pulls (20-30+ mobs).
- Added a limit to the amount of items that can be iterated on with each update.
Each time the update is run to force loot items, instead of iterating through all of the containers items it is limited to iterating through 50 items at max. On the next update it will redetermine the amount again limiting it. This will continue until the container is empty or the counter has reached it limit.
For most part, people should not notice a difference. Ones that has not been plagued by the disconnect of course. The ones that have been disconnecting will notice that on such massive pulls they will need to loot several times (determined by the amount of loot). Unfortunately this is something that can't be avoided with large quantities of loot that needs to be processed.
I am however looking at another method of processing container loot and will be testing the method over the next few weeks and should it prove to be more reliable and stable I will update the AddOn accordingly.
- Bug Fix.
- Removed the Ace3 library dependency.
This release is a re-written version of the AddOn that does not use any external libraries. The decision to drop Ace3 was made due to some features I was thinking about adding but eventually decided against it.
- Reduced the delay time between loot attempts.
The delay time between loot attempts has once again been reduced from the previous version which should make looting near instant.
- Decreased the counter that determines when to stop trying to loot a container.
After quite extensive testing the higher counter was working against the goal of the AddOn when it came to things such as quest items which could not be looted due to the amount of items needed. The reduced counter will ensure that you will not sit with an open loot window and the AddOn trying for to long to loot the item. With this revision of the counter and delay times, should any items become not loot-able, the counter limit will be reached at around 2.5 seconds.
- Added an additional check for Auto Loot handling.
The AddOn will now only loot when Auto Looting conditions are met as how it works in game. If you have Auto Loot enabled and holding down the modifier key (Loot Key) it will not loot the items and bring up the loot window and if you do not have Auto Loot enabled and holding down the modifier key (Loot Key) it will loot the items. This is done to make the system truly work as how looting in game works, but only faster.
- Added an additional check for when in groups with Master Loot. (This has not had extensive testing as I am not a constantly raiding)
When you are in a group that has the loot type set to Master Loot, any item that has a rarity of the Loot Threshold or higher will be skipped and no attempts to loot it will be made. Items below the Loot Threshold will still be looted.
- Added an additional check for "locked" loot.
If an item is for some reason locked no attempt will be made to loot it and it will just continue to the next item in the container.
- Added an additional check for completed looting.
When looting is completed, whether it is due to all the items being looted or the counter limit being reach, the Loot Window will automatically close. This is to ensure that quest items that are not loot-able does not cause any delays or timeouts.
- Several Bug Fixes addressed.
- Switch to Ace3 library to handle the LOOT_READY event.
This unfortunately does increase the run-time memory footprint, but it is still below the 10KB mark at this point.
- Decreased the delay time between loot attempts.
Depending on your latency you may now not even see the loot window.
- Increased the counter that is used to check whether looting attempts should be stopped.
In conjunction with the decreased delay time this will happen faster (in the amount of time before it happens), but less due to it allowing for more iterations before happening.
- Fixed a bug that caused a memory leak and FasterLoot to indefinitely allocate run-time memory.
- Decreased the delay time between loot attempts.
This will overall increase the speed at which you collect items.
- Added a check to stop looting after it has not been able to loot the container or corpse after several attempts.
This will stop the "hanging" effect that was caused with quest items that would have put you over the required amount that stays in the container or corpse.
- Added specific checks to not process loot in containers while certain actions are performed.
- While using TSM Destroying it will loot regularly instead of using FasterLoot.
- While using Easy Obliterate it will loot regularly instead of using FasterLoot.
- Initial Release